blade-code 0.10.103 → 0.10.105
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/blade.js +2 -2
- package/dist/chunk-0pj7d25e.js +23 -0
- package/dist/{chunk-f945dzj6.js → chunk-139frcak.js} +1 -1
- package/dist/{chunk-ywarj5j9.js → chunk-151cz9k4.js} +1 -1
- package/dist/{chunk-a8x3xygs.js → chunk-1x13nzwe.js} +1 -1
- package/dist/chunk-25n07173.js +1 -0
- package/dist/{chunk-cpex23zk.js → chunk-26t2mg1v.js} +1 -1
- package/dist/{chunk-jaswqpe7.js → chunk-2mck84gx.js} +1 -1
- package/dist/{chunk-khtxprbv.js → chunk-3gf34fv5.js} +1 -1
- package/dist/{chunk-5sk7q6pw.js → chunk-3vqdyer3.js} +1 -1
- package/dist/{chunk-e1tt6b1w.js → chunk-48vc39mb.js} +2 -2
- package/dist/{chunk-14bs89sm.js → chunk-4bwr3rcj.js} +1 -1
- package/dist/chunk-4z79mh8y.js +1 -0
- package/dist/{chunk-q6eb20fz.js → chunk-5y38cfk9.js} +1 -1
- package/dist/{chunk-aa5zmwd9.js → chunk-6j482w6k.js} +1 -1
- package/dist/{chunk-gr80w0vh.js → chunk-7g984trn.js} +1 -1
- package/dist/{chunk-0aa40zbs.js → chunk-8hp650gn.js} +1 -1
- package/dist/{chunk-bx82y5ce.js → chunk-9dba1pyq.js} +1 -1
- package/dist/{chunk-c479s9v2.js → chunk-bcbssqsn.js} +1 -1
- package/dist/{chunk-s66fwx1p.js → chunk-brjjvs4d.js} +1 -1
- package/dist/{chunk-6v10cs0h.js → chunk-c0m2vw2q.js} +1 -1
- package/dist/{chunk-8zjn51fr.js → chunk-c133kq05.js} +1 -1
- package/dist/{chunk-a7ejfmtc.js → chunk-djqbqaxn.js} +1 -1
- package/dist/{chunk-42bcht8b.js → chunk-gz4h2y7j.js} +1 -1
- package/dist/{chunk-s6vzjear.js → chunk-jqqqg8kv.js} +1 -1
- package/dist/{chunk-0kdrgmyy.js → chunk-n1qxq9kv.js} +1 -1
- package/dist/{chunk-wzmqkam9.js → chunk-najk5ty4.js} +1 -1
- package/dist/{chunk-07w0qapm.js → chunk-p39mmmbt.js} +1 -1
- package/dist/{chunk-xtb84adp.js → chunk-p6prp8zc.js} +1 -1
- package/dist/{chunk-mgsvn9v4.js → chunk-pf4je2g7.js} +1 -1
- package/dist/{chunk-yr56ttgw.js → chunk-q0fv0efv.js} +1 -1
- package/dist/{chunk-rahch228.js → chunk-sy117k4g.js} +1 -1
- package/dist/{chunk-gxgq70gm.js → chunk-szdz1jmj.js} +1 -1
- package/dist/{chunk-03qymy9e.js → chunk-x6z05rfz.js} +1 -1
- package/dist/{chunk-k9fveqq6.js → chunk-xvg14dkr.js} +1 -1
- package/dist/{chunk-fw2x9p4c.js → chunk-xzjhfw7y.js} +1 -1
- package/dist/{chunk-b0j9v359.js → chunk-yeq7qzdb.js} +4 -4
- package/dist/{chunk-afa35v3f.js → chunk-zmfm07hj.js} +1 -1
- package/dist/web/assets/{ChatView-_4ut_-Jh.js → ChatView-p9tMKcFw.js} +4 -4
- package/dist/web/assets/{CodeBlockHighlighter-DkDr6wE9.js → CodeBlockHighlighter-DD7FIfcr.js} +1 -1
- package/dist/web/assets/{FilePreview-DCI-oqhJ.js → FilePreview-DDpZFwlq.js} +1 -1
- package/dist/web/assets/{KanbanBoard-CB5C4tJC.js → KanbanBoard-1Bkr6fIi.js} +1 -1
- package/dist/web/assets/{MarkdownRenderer-ychfmIQK.js → MarkdownRenderer-hkB9aVVA.js} +3 -3
- package/dist/web/assets/{SettingsModal-SSdk0Bjr.js → SettingsModal-KpvOJhBi.js} +1 -1
- package/dist/web/assets/{TaskSwitcher-EnaUhn3o.js → TaskSwitcher-2FU_n9lh.js} +1 -1
- package/dist/web/assets/{TerminalPanel-BcWxLSV3.js → TerminalPanel-C-LpIqOw.js} +1 -1
- package/dist/web/assets/{arrow-left-Ob5r20g7.js → arrow-left-Bf8UJl0b.js} +1 -1
- package/dist/web/assets/{calendar-clock-eOALT8DB.js → calendar-clock-BTAxrL8A.js} +1 -1
- package/dist/web/assets/{chevrons-up-down-BkZBwmbt.js → chevrons-up-down-CTzVylwH.js} +1 -1
- package/dist/web/assets/{clock-3-DQp9SzYc.js → clock-3-Cm6_vdYx.js} +1 -1
- package/dist/web/assets/{external-link-BuGUowPD.js → external-link-DJln2WFN.js} +1 -1
- package/dist/web/assets/{folder-c92kw1oI.js → folder-BXj3pohP.js} +1 -1
- package/dist/web/assets/{index-CS8jtO_A.js → index-DQL9otjm.js} +4 -4
- package/dist/web/assets/{pause-DP_CXoH7.js → pause-W092j5bW.js} +1 -1
- package/dist/web/assets/{play-DcRwtohz.js → play-OpsbZ_PE.js} +1 -1
- package/dist/web/assets/{session-events-CrAgnaj2.js → session-events-BuugneNw.js} +1 -1
- package/dist/web/assets/{teamService-JyVbGQhi.js → teamService-Aj-8ajEO.js} +1 -1
- package/dist/web/index.html +1 -2
- package/package.json +1 -1
- package/dist/chunk-4qfke0gd.js +0 -23
- package/dist/chunk-7ab7jcvn.js +0 -1
- package/dist/chunk-nz7kjzc0.js +0 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/teamService-
|
|
2
|
-
import{r as y,j as a,d as M0,R as $0}from"./vendor-react-DofNRwfy.js";import{S as F0,O as xp,P as L0,C as yp,a as D0,T as wp,D as vp,R as _0,b as Sp,V as U0,c as B0,d as jp,e as H0,f as q0,g as Ip,h as z0,i as K0}from"./vendor-radix-Bc1_Q9tz.js";import{c as Wn,g as G0,w as lu,u as V0,a as W0,b as J0,d as du,e as Qo,f as wo,h as uu,i as Ka,t as Cp,j as Q0,k as Y0,l as on}from"./session-events-
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/teamService-Aj-8ajEO.js","assets/vendor-react-DofNRwfy.js","assets/vendor-radix-Bc1_Q9tz.js","assets/session-events-BuugneNw.js","assets/SettingsModal-KpvOJhBi.js","assets/external-link-DJln2WFN.js","assets/calendar-clock-BTAxrL8A.js","assets/play-OpsbZ_PE.js","assets/team-QZ9byb3E.js","assets/arrow-left-Bf8UJl0b.js","assets/TaskSwitcher-2FU_n9lh.js","assets/folder-BXj3pohP.js","assets/clock-3-Cm6_vdYx.js","assets/FilePreview-DDpZFwlq.js","assets/chevrons-up-down-CTzVylwH.js","assets/TerminalPanel-C-LpIqOw.js","assets/vendor-xterm-DuYZoU4T.js","assets/vendor-xterm-9CEnUXvW.css","assets/ChatView-p9tMKcFw.js","assets/pause-W092j5bW.js","assets/KanbanBoard-1Bkr6fIi.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{r as y,j as a,d as M0,R as $0}from"./vendor-react-DofNRwfy.js";import{S as F0,O as xp,P as L0,C as yp,a as D0,T as wp,D as vp,R as _0,b as Sp,V as U0,c as B0,d as jp,e as H0,f as q0,g as Ip,h as z0,i as K0}from"./vendor-radix-Bc1_Q9tz.js";import{c as Wn,g as G0,w as lu,u as V0,a as W0,b as J0,d as du,e as Qo,f as wo,h as uu,i as Ka,t as Cp,j as Q0,k as Y0,l as on}from"./session-events-BuugneNw.js";(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const s of document.querySelectorAll('link[rel="modulepreload"]'))r(s);new MutationObserver(s=>{for(const i of s)if(i.type==="childList")for(const o of i.addedNodes)o.tagName==="LINK"&&o.rel==="modulepreload"&&r(o)}).observe(document,{childList:!0,subtree:!0});function n(s){const i={};return s.integrity&&(i.integrity=s.integrity),s.referrerPolicy&&(i.referrerPolicy=s.referrerPolicy),s.crossOrigin==="use-credentials"?i.credentials="include":s.crossOrigin==="anonymous"?i.credentials="omit":i.credentials="same-origin",i}function r(s){if(s.ep)return;s.ep=!0;const i=n(s);fetch(s.href,i)}})();const Z0="modulepreload",X0=function(e){return"/"+e},pu={},es=function(t,n,r){let s=Promise.resolve();if(n&&n.length>0){document.getElementsByTagName("link");const o=document.querySelector("meta[property=csp-nonce]"),d=(o==null?void 0:o.nonce)||(o==null?void 0:o.getAttribute("nonce"));s=Promise.allSettled(n.map(f=>{if(f=X0(f),f in pu)return;pu[f]=!0;const u=f.endsWith(".css"),m=u?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${f}"]${m}`))return;const p=document.createElement("link");if(p.rel=u?"stylesheet":Z0,u||(p.as="script"),p.crossOrigin="",p.href=f,d&&p.setAttribute("nonce",d),document.head.appendChild(p),u)return new Promise((h,b)=>{p.addEventListener("load",h),p.addEventListener("error",()=>b(new Error(`Unable to preload CSS for ${f}`)))})}))}function i(o){const d=new Event("vite:preloadError",{cancelable:!0});if(d.payload=o,window.dispatchEvent(d),!d.defaultPrevented)throw o}return s.then(o=>{for(const d of o||[])d.status==="rejected"&&i(d.reason);return t().catch(i)})};/**
|
|
3
3
|
* @license lucide-react v0.300.0 - ISC
|
|
4
4
|
*
|
|
5
5
|
* This source code is licensed under the ISC license.
|
|
@@ -266,10 +266,10 @@ import{r as y,j as a,d as M0,R as $0}from"./vendor-react-DofNRwfy.js";import{S a
|
|
|
266
266
|
`,e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>[]))))),([t,n])=>[t,n]),Lm=(e,t=[])=>l(l(ma(e),([n,r])=>l(Fm(r),([s,i])=>[[n,s],i])),([n,r])=>Lm(r,[...t,n]),()=>[t,e]),nC=e=>l(l(l(Fm(e),([t,n])=>l(Lm(n),([r,s])=>l(l(ma(s),([i,o])=>[[i],o],()=>[[],s]),([i,o])=>[[t,r,i],o]))),([t,n])=>[t,n],()=>l([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[B1(t),n]),Pl=e=>l(l(v("{",e),([t,n])=>l(nC(n),([r,s])=>l(v("}",s),([i,o])=>[[t,r,i],o]))),([t,n])=>[H1(t),n]),rC=e=>l(Pl(e),([t,n])=>[q1(t),n]),sC=e=>l(l(l(rt(e),([t,n])=>l(v("?",n),([r,s])=>l(v(":",s),([i,o])=>l(v("readonly",o),([d,f])=>l(ye(f),([u,m])=>[[t,r,i,d,u],m]))))),([t,n])=>[t,n],()=>l(l(rt(e),([t,n])=>l(v(":",n),([r,s])=>l(v("readonly",s),([i,o])=>l(ye(o),([d,f])=>[[t,r,i,d],f])))),([t,n])=>[t,n],()=>l(l(rt(e),([t,n])=>l(v("?",n),([r,s])=>l(v(":",s),([i,o])=>l(ye(o),([d,f])=>[[t,r,i,d],f])))),([t,n])=>[t,n],()=>l(l(rt(e),([t,n])=>l(v(":",n),([r,s])=>l(ye(s),([i,o])=>[[t,r,i],o]))),([t,n])=>[t,n],()=>[])))),([t,n])=>[z1(t),n]),Ru=e=>l(l(sC(e),([t,n])=>[t,n],()=>l(l(Mm(e),([t,n])=>l(ye(n),([r,s])=>l($m(s),([i,o])=>[[t,r,i],o]))),([t,n])=>[t,n],()=>[])),([t,n])=>[K1(t),n]),Dm=e=>l(l(l(v("...",e),([t,n])=>l(Ru(n),([r,s])=>[[t,r],s])),([t,n])=>[t,n],()=>l(l(Ru(e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>[])),([t,n])=>[G1(t),n]),_m=(e,t=[])=>l(l(v(",",e),([n,r])=>l(Dm(r),([s,i])=>[[n,s],i])),([n,r])=>_m(r,[...t,n]),()=>[t,e]),iC=e=>l(l(l(Dm(e),([t,n])=>l(_m(n),([r,s])=>l(l(v(",",s),([i,o])=>[[i],o],()=>[[],s]),([i,o])=>[[t,r,i],o]))),([t,n])=>[t,n],()=>l([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[V1(t),n]),oC=e=>l(l(v("[",e),([t,n])=>l(iC(n),([r,s])=>l(v("]",s),([i,o])=>[[t,r,i],o]))),([t,n])=>[W1(t),n]),aC=e=>l(l(rt(e),([t,n])=>l(v("?",n),([r,s])=>l(v(":",s),([i,o])=>l(v("readonly",o),([d,f])=>l(ye(f),([u,m])=>[[t,r,i,d,u],m]))))),([t,n])=>[J1(t),n]),cC=e=>l(l(rt(e),([t,n])=>l(v(":",n),([r,s])=>l(v("readonly",s),([i,o])=>l(ye(o),([d,f])=>[[t,r,i,d],f])))),([t,n])=>[Q1(t),n]),lC=e=>l(l(rt(e),([t,n])=>l(v("?",n),([r,s])=>l(v(":",s),([i,o])=>l(ye(o),([d,f])=>[[t,r,i,d],f])))),([t,n])=>[Y1(t),n]),dC=e=>l(l(rt(e),([t,n])=>l(v(":",n),([r,s])=>l(ye(s),([i,o])=>[[t,r,i],o]))),([t,n])=>[Z1(t),n]),Mu=e=>l(l(aC(e),([t,n])=>[t,n],()=>l(cC(e),([t,n])=>[t,n],()=>l(lC(e),([t,n])=>[t,n],()=>l(dC(e),([t,n])=>[t,n],()=>[])))),([t,n])=>[t,n]),Um=e=>l(l(l(v("...",e),([t,n])=>l(Mu(n),([r,s])=>[[t,r],s])),([t,n])=>[t,n],()=>l(l(Mu(e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>[])),([t,n])=>[X1(t),n]),Bm=(e,t=[])=>l(l(v(",",e),([n,r])=>l(Um(r),([s,i])=>[[n,s],i])),([n,r])=>Bm(r,[...t,n]),()=>[t,e]),Hm=e=>l(l(l(Um(e),([t,n])=>l(Bm(n),([r,s])=>l(l(v(",",s),([i,o])=>[[i],o],()=>[[],s]),([i,o])=>[[t,r,i],o]))),([t,n])=>[t,n],()=>l([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[ej(t),n]),uC=e=>l(l(v("(",e),([t,n])=>l(Hm(n),([r,s])=>l(v(")",s),([i,o])=>l(v("=>",o),([d,f])=>l(ye(f),([u,m])=>[[t,r,i,d,u],m]))))),([t,n])=>[tj(t),n]),pC=e=>l(l(v("new",e),([t,n])=>l(v("(",n),([r,s])=>l(Hm(s),([i,o])=>l(v(")",o),([d,f])=>l(v("=>",f),([u,m])=>l(ye(m),([p,h])=>[[t,r,i,d,u,p],h])))))),([t,n])=>[nj(t),n]),fC=e=>l(l(l(v("+",e),([t,n])=>l(v("readonly",n),([r,s])=>[[t,r],s])),([t,n])=>[t,n],()=>l(l(v("-",e),([t,n])=>l(v("readonly",n),([r,s])=>[[t,r],s])),([t,n])=>[t,n],()=>l(l(v("readonly",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>l([[],e],([t,n])=>[t,n],()=>[])))),([t,n])=>[rj(t),n]),mC=e=>l(l(l(v("+",e),([t,n])=>l(v("?",n),([r,s])=>[[t,r],s])),([t,n])=>[t,n],()=>l(l(v("-",e),([t,n])=>l(v("?",n),([r,s])=>[[t,r],s])),([t,n])=>[t,n],()=>l(l(v("?",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>l([[],e],([t,n])=>[t,n],()=>[])))),([t,n])=>[sj(t),n]),hC=e=>l(l(l(v("as",e),([t,n])=>l(ye(n),([r,s])=>[[t,r],s])),([t,n])=>[t,n],()=>l([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[ij(t),n]),gC=e=>l(l(v("{",e),([t,n])=>l(fC(n),([r,s])=>l(v("[",s),([i,o])=>l(rt(o),([d,f])=>l(v("in",f),([u,m])=>l(ye(m),([p,h])=>l(hC(h),([b,k])=>l(v("]",k),([S,C])=>l(mC(C),([x,N])=>l(v(":",N),([P,F])=>l(ye(F),([D,j])=>l(wm(j),([I,T])=>l(v("}",T),([M,$])=>[[t,r,i,d,u,p,b,S,x,P,D,I,M],$]))))))))))))),([t,n])=>[oj(t),n]),bC=e=>l(rt(e),([t,n])=>[aj(t),n]),kC=e=>l(fm(e),([t,n])=>[cj(t),n]),xC=e=>l(El(e),([t,n])=>[lj(t),n]),yC=e=>l(l(v("true",e),([t,n])=>[t,n],()=>l(v("false",e),([t,n])=>[t,n],()=>[])),([t,n])=>[dj(t),n]),wC=e=>l(Tl(['"',"'"],e),([t,n])=>[t,n]),vC=e=>l(v("null",e),([t,n])=>[uj(),n]),SC=e=>l(v("undefined",e),([t,n])=>[void 0,n]),qm=e=>l(l(Rm(e),([t,n])=>l(v(":",n),([r,s])=>l(Nl(s),([i,o])=>[[t,r,i],o]))),([t,n])=>[pj(t),n]),zm=(e,t=[])=>l(l(ma(e),([n,r])=>l(qm(r),([s,i])=>[[n,s],i])),([n,r])=>zm(r,[...t,n]),()=>[t,e]),jC=e=>l(l(l(qm(e),([t,n])=>l(zm(n),([r,s])=>l(l(ma(s),([i,o])=>[[i],o],()=>[[],s]),([i,o])=>[[t,r,i],o]))),([t,n])=>[t,n],()=>l([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[fj(t),n]),Km=e=>l(l(v("{",e),([t,n])=>l(jC(n),([r,s])=>l(v("}",s),([i,o])=>[[t,r,i],o]))),([t,n])=>[hj(t),n]),Gm=(e,t=[])=>l(l(v(",",e),([n,r])=>l(Nl(r),([s,i])=>[[n,s],i])),([n,r])=>Gm(r,[...t,n]),()=>[t,e]),IC=e=>l(l(l(Nl(e),([t,n])=>l(Gm(n),([r,s])=>l(l(v(",",s),([i,o])=>[[i],o],()=>[[],s]),([i,o])=>[[t,r,i],o]))),([t,n])=>[t,n],()=>l([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[gj(t),n]),CC=e=>l(l(v("[",e),([t,n])=>l(IC(n),([r,s])=>l(v("]",s),([i,o])=>[[t,r,i],o]))),([t,n])=>[bj(t),n]),Nl=e=>l(l(kC(e),([t,n])=>[t,n],()=>l(xC(e),([t,n])=>[t,n],()=>l(yC(e),([t,n])=>[t,n],()=>l(wC(e),([t,n])=>[t,n],()=>l(vC(e),([t,n])=>[t,n],()=>l(SC(e),([t,n])=>[t,n],()=>l(Km(e),([t,n])=>[t,n],()=>l(CC(e),([t,n])=>[t,n],()=>[])))))))),([t,n])=>[t,n]),EC=e=>l(v("-?(?:0|[1-9][0-9]*)n",e),([t,n])=>[kj(),n]),TC=e=>l(v(".*",e),([t,n])=>[xj(),n]),AC=e=>l(v("-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?",e),([t,n])=>[yj(),n]),PC=e=>l(v("-?(?:0|[1-9][0-9]*)",e),([t,n])=>[wj(),n]),NC=e=>l(v("(?!)",e),([t,n])=>[vj(),n]),OC=e=>l(bI(["-?(?:0|[1-9][0-9]*)n",".*","-?(?:0|[1-9][0-9]*)(?:\\.[0-9]+)?","-?(?:0|[1-9][0-9]*)","(?!)","(",")","$","|"],e),([t,n])=>[Sj(t),n]),RC=e=>l(l(EC(e),([t,n])=>[t,n],()=>l(TC(e),([t,n])=>[t,n],()=>l(AC(e),([t,n])=>[t,n],()=>l(PC(e),([t,n])=>[t,n],()=>l(NC(e),([t,n])=>[t,n],()=>l(MC(e),([t,n])=>[t,n],()=>l(OC(e),([t,n])=>[t,n],()=>[]))))))),([t,n])=>[t,n]),MC=e=>l(l(v("(",e),([t,n])=>l(Ol(n),([r,s])=>l(v(")",s),([i,o])=>[[t,r,i],o]))),([t,n])=>[jj(t),n]),Vm=e=>l(l(l(kc(e),([t,n])=>l(v("|",n),([r,s])=>l(Vm(s),([i,o])=>[[t,r,i],o]))),([t,n])=>[t,n],()=>l(l(kc(e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>l([[],e],([t,n])=>[t,n],()=>[]))),([t,n])=>[Ij(t),n]),kc=e=>l(l(RC(e),([t,n])=>l(Ol(n),([r,s])=>[[t,r],s])),([t,n])=>[Cj(t),n]),Ol=e=>l(l(Vm(e),([t,n])=>[t,n],()=>l(kc(e),([t,n])=>[t,n],()=>[])),([t,n])=>[t,n]),$C=e=>l(l(v("^",e),([t,n])=>l(Ol(n),([r,s])=>l(v("$",s),([i,o])=>[[t,r,i],o]))),([t,n])=>[Ej(t),n]),Wm=(e,t=[])=>l(l(v(",",e),([n,r])=>l(ye(r),([s,i])=>[[n,s],i])),([n,r])=>Wm(r,[...t,n]),()=>[t,e]),FC=e=>l(l(l(ye(e),([t,n])=>l(Wm(n),([r,s])=>l(l(v(",",s),([i,o])=>[[i],o],()=>[[],s]),([i,o])=>[[t,r,i],o]))),([t,n])=>[t,n],()=>l([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Tj(t),n]),Jm=e=>l(l(l(v("extends",e),([t,n])=>l(FC(n),([r,s])=>[[t,r],s])),([t,n])=>[t,n],()=>l([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Aj(t),n]),LC=e=>l(l(v("interface",e),([t,n])=>l(rt(n),([r,s])=>l(Al(s),([i,o])=>l(Jm(o),([d,f])=>l(Pl(f),([u,m])=>[[t,r,i,d,u],m]))))),([t,n])=>[Pj(t),n]),DC=e=>l(l(v("interface",e),([t,n])=>l(rt(n),([r,s])=>l(Jm(s),([i,o])=>l(Pl(o),([d,f])=>[[t,r,i,d],f])))),([t,n])=>[Nj(t),n]),_C=e=>l(l(v("type",e),([t,n])=>l(rt(n),([r,s])=>l(Al(s),([i,o])=>l(v("=",o),([d,f])=>l(ye(f),([u,m])=>[[t,r,i,d,u],m]))))),([t,n])=>[Oj(t),n]),UC=e=>l(l(v("type",e),([t,n])=>l(rt(n),([r,s])=>l(v("=",s),([i,o])=>l(ye(o),([d,f])=>[[t,r,i,d],f])))),([t,n])=>[Rj(t),n]),BC=e=>l(l(l(v("export",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>l([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[Mj(),n]),Qm=e=>l(l(l(v(";",e),([t,n])=>l(v(`
|
|
267
267
|
`,n),([r,s])=>[[t,r],s])),([t,n])=>[t,n],()=>l(l(v(";",e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>l(l(v(`
|
|
268
268
|
`,e),([t,n])=>[[t],n]),([t,n])=>[t,n],()=>[]))),([t,n])=>[t,n]),Ym=(e,t=[])=>l(l(Qm(e),([n,r])=>l(Rl(r),([s,i])=>[[n,s],i])),([n,r])=>Ym(r,[...t,n]),()=>[t,e]),HC=e=>l(l(l(Rl(e),([t,n])=>l(Ym(n),([r,s])=>l(l(Qm(s),([i,o])=>[[i],o],()=>[[],s]),([i,o])=>[[t,r,i],o]))),([t,n])=>[t,n],()=>l([[],e],([t,n])=>[t,n],()=>[])),([t,n])=>[$j(t),n]),Rl=e=>l(l(BC(e),([t,n])=>l(l(LC(n),([r,s])=>[r,s],()=>l(DC(n),([r,s])=>[r,s],()=>l(_C(n),([r,s])=>[r,s],()=>l(UC(n),([r,s])=>[r,s],()=>[])))),([r,s])=>l(wm(s),([i,o])=>[[t,r,i],o]))),([t,n])=>[Fj(t),n]),qC=e=>l(l(Rl(e),([t,n])=>l(HC(n),([r,s])=>[[t,r],s])),([t,n])=>[Lj(t),n]),zC=e=>l(l(qC(e),([t,n])=>[t,n],()=>l(QI(e),([t,n])=>[t,n],()=>l(ye(e),([t,n])=>[t,n],()=>[]))),([t,n])=>[t,n]);function KC(e){const t=Em(`\`${e}\``);return g(t.length,2)?t[0]:Ft()}function GC(e){return e.join("|")}function VC(e){return e.slice(1,e.length-1)}function WC(e,t,n){return Tr(t,`${n}${e}`)}function JC(e,t){return Tr(e,`${t}${Kv}`)}function QC(e,t){return Tr(e,`${t}${Tf}`)}function YC(e,t){return Tr(e,`${t}${Of}`)}function ZC(e,t){return Li(Je([De("false"),De("true")]),e,t)}function XC(e,t){return Tr(e,`${t}${Rf}`)}function e2(e,t,n){return Tr(t,`${n}${VC(e)}`)}function t2(e,t,n){const r=Ml(e,{});return Li(r,t,n)}function n2(e,t,n){const r=Er(e);return Li(r,t,n)}function Zm(e,t,n,r=[]){return Ae(e,(s,i)=>Zm(i,t,n,[...r,Li(s,[],"")]),()=>Tr(t,`${n}(${GC(r)})`))}function Li(e,t,n){return vn(e)?n2(e.enum,t,n):qn(e)?QC(t,n):Qe(e)?WC(e.const,t,n):is(e)?JC(t,n):Cr(e)?ZC(t,n):pn(e)?YC(t,n):Fn(e)?XC(t,n):Wt(e)?e2(e.pattern,t,n):o2(e)?t2(e.parameters[0],t,n):fe(e)?Zm(e.anyOf,t,n):iv}function Tr(e,t){return Ae(e,(n,r)=>Li(n,r,t),()=>t)}function r2(e){return`^${Tr(e,"")}$`}function s2(e){const t=r2(e);return Df(t)}function Ml(e,t){return Xe(e)?xe(s2(e),{},t):Xm(e,t)}function i2(e,t,n,r){const s=Xn(e,t,n);return Ml(s,r)}function Xm(e,t={}){return Oe("TemplateLiteral",[e],t)}function o2(e){return an(e)&&E(e,"action")&&g(e.action,"TemplateLiteral")}function eh(e){return Ml(e,{})}function a2(e){const t=KC(e);return eh(t)}function c2(e,t={}){const n=pe(e)?a2(e):eh(e);return xe(n,{},t)}function Wt(e){return Ce(e,"TemplateLiteral")}function th(e){return we({"~kind":"ExtendsUnion"},{inferred:e})}function $l(e){return re(e)&&E(e,"~kind")&&E(e,"inferred")&&g(e["~kind"],"ExtendsUnion")&&re(e.inferred)}function ee(e){return we({"~kind":"ExtendsTrue"},{inferred:e})}function Fl(e){return re(e)&&E(e,"~kind")&&E(e,"inferred")&&g(e["~kind"],"ExtendsTrue")&&re(e.inferred)}function je(){return we({"~kind":"ExtendsFalse"},{})}function xc(e){return re(e)&&E(e,"~kind")&&g(e["~kind"],"ExtendsFalse")}function Yt(e){return $l(e)||Fl(e)}function It(e,t,n){return Yt(e)?t(e.inferred):n()}const l2=Object.freeze(Object.defineProperty({__proto__:null,ExtendsFalse:je,ExtendsTrue:ee,ExtendsUnion:th,IsExtendsFalse:xc,IsExtendsTrue:Fl,IsExtendsTrueLike:Yt,IsExtendsUnion:$l,Match:It},Symbol.toStringTag,{value:"Module"}));function d2(e,t,n,r){return It(Ze(e,n,r),s=>ee(kt(kt(e,s),{[t]:n})),()=>je())}function u2(e,t){return ee(e)}function p2(e,t,n,r,s){return It(Ze(e,t,n),i=>It(Ze(i,t,r),o=>ee(o),()=>je()),()=>It(Ze(e,t,s),i=>ee(i),()=>je()))}function f2(e,t,n){const r=Er(n);return Ze(e,t,r)}function nh(e,t,n){return Ae(n,(r,s)=>It(Ze(e,t,r),i=>nh(i,t,s),()=>je()),()=>ee(e))}function m2(e,t,n){const r=or(n);return Ze(e,t,r)}function rh(e,t,n){return Ae(n,(r,s)=>It(Ze(e,t,r),i=>ee(i),()=>rh(e,t,s)),()=>je())}function jt(e,t,n){return $n(n)?u2(e):wn(n)?p2(e,t,n.if,n.then,n.else):vn(n)?f2(e,t,n.enum):ln(n)?d2(e,n.name,t,n.extends):Be(n)?nh(e,t,n.allOf):Wt(n)?m2(e,t,n.pattern):fe(n)?rh(e,t,n.anyOf):An(n)?ee(e):je()}function h2(e,t,n){return ln(n)?jt(e,t,n):$n(n)||An(n)?ee(e):th(e)}function g2(e,t){const n=Do(e),r=Do(t);return n&&r||!n&&r?!0:!(n&&!r)}function b2(e,t,n,r){return gt(r)?g2(t,r)?Ze(e,n,r.items):je():jt(e,t,r)}function k2(e,t,n){return is(n)?ee(e):jt(e,t,n)}function x2(e,t,n){return Cr(n)?ee(e):jt(e,t,n)}function y2(e,t,n,r,s){const i=ln(r)?t:r,o=ln(r)?r:t,d=cn(t),f=cn(r);return!d&&f?je():It(Ze(e,i,o),u=>Ll(u,n,s),()=>je())}function w2(e,t,n,r){return Ae(r,(s,i)=>y2(e,t,n,s,i),()=>cn(t)?ee(e):je())}function v2(e,t,n){return Ae(t,(r,s)=>w2(e,r,s,n),()=>ee(e))}function Ll(e,t,n){return v2(e,t,n)}function sh(e,t,n){return os(n)?ee(e):Ze(e,t,n)}function S2(e,t,n,r){return $n(r)||An(r)?ee(e):xn(r)?It(Ll(e,t,r.parameters),s=>sh(s,n,r.instanceType),()=>je()):je()}function j2(e,t,n,r,s){return It(Ze(e,t,s),()=>Ze(e,n,s),()=>Ze(e,r,s))}function I2(e,t,n){const r=Er(t);return Ze(e,r,n)}function C2(e,t,n,r){return $n(r)||An(r)?ee(e):yn(r)?It(Ll(e,t,r.parameters),s=>sh(s,n,r.returnType),()=>je()):je()}function E2(e,t,n){return qn(n)||pn(n)?ee(e):jt(e,t,n)}function T2(e,t,n){const r=fn(t);return Ze(e,r,n)}function ha(e,t,n){return t===n?ee(e):je()}function A2(e,t,n){return Qe(n)?ha(e,t,n.const):is(n)?ee(e):jt(e,De(t),n)}function P2(e,t,n){return Qe(n)?ha(e,t,n.const):Cr(n)?ee(e):jt(e,De(t),n)}function N2(e,t,n){return Qe(n)?ha(e,t,n.const):pn(n)?ee(e):jt(e,De(t),n)}function O2(e,t,n){return Qe(n)?ha(e,t,n.const):Fn(n)?ee(e):jt(e,De(t),n)}function R2(e,t,n){return st(t.const)?A2(e,t.const,n):xt(t.const)?P2(e,t.const,n):Ie(t.const)?N2(e,t.const,n):pe(t.const)?O2(e,t.const,n):Ft()}function M2(e,t,n){return ln(n)?jt(e,t,n):ee(e)}function $2(e,t,n){return Ni(n)?ee(e):jt(e,t,n)}function F2(e,t,n){return pn(n)?ee(e):jt(e,t,n)}function L2(e,t,n){return cn(t)?cn(n)?ee(e):je():ee(e)}function D2(e,t,n){return ln(n)&&Fs(n.extends)?je():It(Ze(e,t,n),r=>L2(r,t,n),()=>je())}function _2(e,t){return e.reduce((n,r)=>r in t&&Yt(t[r])?{...n,...t[r].inferred}:Ft(),{})}function U2(e,t,n){const r={};for(const o of U(n))r[o]=o in t?D2({},t[o],n[o]):cn(n[o])?ln(n[o])?ee(kt(e,{[n[o].name]:n[o].extends})):ee(e):je();const s=sl(r).every(o=>Yt(o)),i=s?_2(U(r),r):{};return s?ee(i):je()}function B2(e,t,n){const r=U2(e,t,n);return Yt(r)?ee(kt(e,r.inferred)):je()}function H2(e,t,n){return B2(e,t,n)}function q2(e,t){return U(t).reduce((n,r)=>({...n,[r]:E(e,r)?fe(n[r])?Je([...n[r].anyOf,t[r]]):Je([e[r],t[r]]):t[r]}),e)}function ih(e,t,n,r){return Ae(t,(s,i)=>It(Ze({},e[s],n),o=>ih(e,i,n,q2(r,o)),()=>je()),()=>ee(r))}function z2(e,t,n,r){const s=U(t);return ih(t,s,r,e)}function K2(e,t,n){return Ot(n)?z2(e,t,jn(n),Vt(n)):Ue(n)?H2(e,t,n.properties):jt(e,$e(t),n)}function G2(e,t){return g(U(t).length,0)?ee(e):je()}function V2(e,t,n,r,s){return Ze(e,n,s)}function W2(e,t,n,r){return Ot(r)?V2(e,hc(t),n,hc(jn(r)),Vt(r)):Ue(r)?G2(e,r.properties):$n(r)||An(r)?ee(e):je()}function J2(e,t,n){return Fn(n)?ee(e):jt(e,t,n)}function Q2(e,t,n){return Oi(n)?ee(e):jt(e,t,n)}function Y2(e,t,n){const r=or(t);return Ze(e,r,n)}function yc(e,t){return we({"~kind":"Inferrable"},{name:e,type:t},{})}function Dl(e){return re(e)&&E(e,"~kind")&&E(e,"name")&&E(e,"type")&&g(e["~kind"],"Inferrable")&&pe(e.name)&&re(e.type)}function oh(e){return pa(e)?ln(e.items)?gt(e.items.extends)?yc(e.items.name,e.items.extends.items):An(e.items.extends)?yc(e.items.name,e.items.extends):void 0:Ft():void 0}function ah(e){return ln(e)?yc(e.name,e.extends):void 0}function _l(e,t,n=[]){return Ae(e,(r,s)=>It(Ze({},r,t),()=>_l(s,t,[...n,r]),()=>{}),()=>n)}function Z2(e,t,n,r){const s=_l(n,r);return z(s)?ee(kt(e,{[t]:Sn(s)})):je()}function ch(e,t,n,r){const s=_l(n,r);return z(s)?ee(kt(e,{[t]:Je(s)})):je()}function X2(e){return[...e].reverse()}function wc(e,t){return t?X2(e):e}function eE(e){const t=e.length>0?e[0]:void 0,n=an(t)?oh(t):void 0;return an(n)}function tE(e,t,n,r,s,i){return It(Ze(e,n,s),o=>lh(o,t,r,i),()=>je())}function nE(e,t,n,r,s){const i=oh(r);return Dl(i)?Z2(e,i.name,wc(n,t),i.type):Ae(n,(o,d)=>tE(e,t,o,d,r,s),()=>je())}function rE(e,t,n,r){return Ae(r,(s,i)=>nE(e,t,n,s,i),()=>g(n.length,0)?ee(e):je())}function lh(e,t,n,r){return rE(e,t,n,r)}function sE(e,t,n){const r=Hi(e,_t([],[]),n),s=eE(r);return lh(e,s,wc(t,s),wc(r,s))}function dh(e,t,n){const r=ah(n);return Dl(r)?ch(e,r.name,t,r.type):Ae(t,(s,i)=>It(Ze(e,s,n),o=>dh(o,i,n),()=>je()),()=>ee(e))}function iE(e,t,n){const r=Hi(e,_t([],[]),t);return at(n)?sE(e,r,n.items):gt(n)?dh(e,r,n.items):jt(e,Sn(r),n)}function oE(e,t,n){return os(n)||_s(n)?ee(e):jt(e,t,n)}function uh(e,t,n){return Ae(n,(r,s)=>It(Ze(e,t,r),i=>ee(i),()=>uh(e,t,s)),()=>je())}function vc(e,t,n){return Ae(t,(r,s)=>It(uh(e,r,n),i=>vc(i,s,n),()=>je()),()=>ee(e))}function aE(e,t,n){const r=ah(n);return Dl(r)?ch(e,r.name,t,r.type):fe(n)?vc(e,t,n.anyOf):vc(e,t,[n])}function cE(e,t,n){return ln(n)?jt(e,t,n):$n(n)||An(n)?ee(e):je()}function lE(e,t,n){return os(n)?ee(e):jt(e,t,n)}function Ze(e,t,n){return $n(t)?h2(e,t,n):gt(t)?b2(e,t,t.items,n):is(t)?k2(e,t,n):Cr(t)?x2(e,t,n):xn(t)?S2(e,t.parameters,t.instanceType,n):wn(t)?j2(e,t.if,t.then,t.else,n):vn(t)?I2(e,t.enum,n):yn(t)?C2(e,t.parameters,t.returnType,n):qn(t)?E2(e,t,n):Be(t)?T2(e,t.allOf,n):Qe(t)?R2(e,t,n):Fs(t)?M2(e,t,n):Ni(t)?$2(e,t,n):pn(t)?F2(e,t,n):Ue(t)?K2(e,t.properties,n):Ot(t)?W2(e,jn(t),Vt(t),n):Fn(t)?J2(e,t,n):Oi(t)?Q2(e,t,n):Wt(t)?Y2(e,t.pattern,n):at(t)?iE(e,t.items,n):_s(t)?oE(e,t,n):fe(t)?aE(e,t.anyOf,n):An(t)?cE(e,t,n):os(t)?lE(e,t,n):je()}function dE(e,t){return fn([...e,$e(t)])}function ph(e,t,n){return Xe(e)?xe(dE(e,t),{},n):Ul(e,t,n)}function uE(e,t,n,r,s){const i=Xn(e,t,n),o=ed(e,t,r);return ph(i,o,s)}function Ul(e,t,n={}){return Oe("Interface",[e,t],n)}function Bl(e){return an(e)&&E(e,"action")&&g(e.action,"Interface")}function pE(e,t,n={}){return ph(e,t,n)}function fE(e,t,n){return e.includes(n)?!0:ki([...e,n],t,t[n])}function $u(e,t,n){const r=bf(n);return Ur(e,t,r)}function Ur(e,t,n){return Ae(n,(r,s)=>ki(e,t,r)?!0:Ur(e,t,s),()=>!1)}function ki(e,t,n){return vt(n)?fE(e,t,n.$ref):gt(n)?ki(e,t,n.items):xn(n)?Ur(e,t,[...n.parameters,n.instanceType]):yn(n)?Ur(e,t,[...n.parameters,n.returnType]):Bl(n)?$u(e,t,n.parameters[1]):Be(n)?Ur(e,t,n.allOf):Ue(n)?$u(e,t,n.properties):fe(n)?Ur(e,t,n.anyOf):at(n)?Ur(e,t,n.items):Ot(n)?ki(e,t,Vt(n)):!1}function mE(e,t,n){return ki(e,t,n)}function hE(e,t){return t.reduce((n,r)=>mE([r],e,e[r])?[...n,r]:n,[])}function gE(e){const t=gf(e);return hE(e,t)}function bE(e,t,n){return n.includes(t)?n:t in e?xi(e,e[t],[...n,t]):Ft()}function Fu(e,t,n){const r=bf(t);return Is(e,r,n)}function Is(e,t,n){return t.reduce((r,s)=>xi(e,s,r),n)}function xi(e,t,n){return vt(t)?bE(e,t.$ref,n):gt(t)?xi(e,t.items,n):xn(t)?Is(e,[...t.parameters,t.instanceType],n):yn(t)?Is(e,[...t.parameters,t.returnType],n):Bl(t)?Fu(e,t.parameters[1],n):Be(t)?Is(e,t.allOf,n):Ue(t)?Fu(e,t.properties,n):fe(t)?Is(e,t.anyOf,n):at(t)?Is(e,t.items,n):Ot(t)?xi(e,Vt(t),n):n}function kE(e,t,n){return xi(e,n,[t])}function xE(e){return fl()}function yE(e){return U(e).reduce((t,n)=>({...t,[n]:Hr(e[n])}),{})}function ii(e){return e.reduce((t,n)=>[...t,Hr(n)],[])}function Hr(e){return vt(e)?xE(e.$ref):gt(e)?Ir(Hr(e.items),ul(e)):xn(e)?Ei(ii(e.parameters),Hr(e.instanceType)):yn(e)?Ti(ii(e.parameters),Hr(e.returnType)):Be(e)?Bn(ii(e.allOf)):Ue(e)?$e(yE(e.properties)):Ot(e)?yl(da(e),Hr(Vt(e))):fe(e)?Je(ii(e.anyOf)):at(e)?Sn(ii(e.items)):e}function wE(e,t){return t in e?Hr(e[t]):Kt()}function vE(e){return wE(e.$defs,e.$ref)}function SE(e,t,n){const r=Xn(e,_t([],[]),t),s=ed({},_t([],[]),n);return fn([...r,$e(s)])}function jE(e,t){return U(e).filter(r=>t.includes(r)).reduce((r,s)=>{const i=e[s],o=Bl(i)?SE(e,i.parameters[0],i.parameters[1]):i;return{...r,[s]:o}},{})}function IE(e,t,n){const r=kE(e,t,n),s=jE(e,r);return Pi(s,t)}function fh(e,t){return t in e?vt(e[t])?fh(e,e[t].$ref):e[t]:Nt()}function Di(e,t){return fh(e,t)}function Lu(e){return Gt(e)?vE(e):kf(e)?Kt():e}function sr(e,t,n){const r=Lu(t),s=Lu(n);return Ze(e,r,s)}const Hl="equal",CE="disjoint",ql="left-inside",zl="right-inside";function ga(e,t){const n=[An(e)?je():sr({},e,t),An(e)?ee({}):sr({},t,e)];return Yt(n[0])&&Yt(n[1])?Hl:Yt(n[0])&&xc(n[1])?ql:xc(n[0])&&Yt(n[1])?zl:CE}function EE(e,t){return t.filter(n=>ga(e,n)!==zl)}function TE(e,t){const n=t.some(r=>{const s=ga(e,r);return g(s,ql)||g(s,Hl)});return g(n,!1)}function AE(e,t){const n=Jr(e);return $n(n)?[n]:TE(n,t)?[...EE(n,t),n]:t}function PE(e){return e.reduce((t,n)=>Ue(n)?[...t,n]:Fs(n)?t:AE(n,t),[])}function mh(e){const t=PE(e);return aa(t)}function hh(e,t){return xe(Jr(e),{},t)}function NE(e,t,n,r){const s=W(e,t,n);return hh(s,r)}function ai(e,t=[]){return Ps(e)&&g(e.action,"Conditional")?vt(e.parameters[0])?ai(e.parameters[2],ai(e.parameters[3],[...t,e.parameters[0].$ref])):ai(e.parameters[2],ai(e.parameters[3],t)):Ps(e)&&g(e.action,"Mapped")&&Ps(e.parameters[1])&&g(e.parameters[1].action,"KeyOf")&&vt(e.parameters[1].parameters[0])?[...t,e.parameters[1].parameters[0].$ref]:t}function OE(e,t){return e.reduce((n,r)=>[...n,t.includes(r.name)],[])}function gh(e,t,n=[]){return Ae(e,(r,s)=>Ae(t,(i,o)=>gh(s,o,[...n,[i,r]]),()=>n),()=>n)}function RE(e){return Wt(e)?or(e.pattern):vn(e)?Er(e.enum):e}function ME(e){const t=RE(e);return fe(t)?[...t.anyOf]:[t]}function $E(e,t){return e.reduce((n,r)=>[...n,[...r,t]],[])}function Du(e,t){return t.reduce((n,r)=>[...n,...$E(e,r)],[])}function _u(e){return e.reduce((t,n)=>g(n[0],!0)?Du(t,ME(n[1])):Du(t,[n[1]]),[[]])}function FE(e,t,n){const r=ai(n),s=OE(e,r),i=gh(t,s);return Ps(n)&&g(n.action,"Conditional")||Ps(n)&&g(n.action,"Mapped")?_u(i):[t]}function LE(){return["(not-resolvable)",Nt()]}function DE(){return["(not-generic)",Nt()]}function _E(e,t,n){return[e,Ai(t,n)]}function UE(e,t,n){return t in e?bh(e,t,e[t]):LE()}function bh(e,t,n,r){return pl(n)?_E(t,n.parameters,n.expression):vt(n)?UE(e,n.$ref):DE()}function BE(e,t,n){return bh(e,"(anonymous)",t)}function HE(e,t,n){if(ln(t)||Gl(t)||Yt(sr({},t,n)))return;const r={parameter:e,expect:n,actual:t};throw new Error(`Argument for parameter ${e} does not satisfy constraint`,{cause:r})}function Uu(e,t,n,r,s){const i=W(e,t,s);return HE(n,i,r),kt(e,{[n]:i})}function qE(e,t,n,r,s){const i=W(e,t,n.extends),o=W(e,t,n.equals);return Ae(s,(d,f)=>Sc(Uu(e,t,n.name,i,d),t,r,f),()=>Sc(Uu(e,t,n.name,i,o),t,r,[]))}function Sc(e,t,n,r){return Ae(n,(s,i)=>qE(e,t,s,i,r),()=>e)}function zE(e,t,n,r){return Sc(e,t,n,r)}let jc=0,Kl=0;function KE(){if(!Si(Kl,Ci().maxInstantiationCount))throw Error("Type instantiation is excessively deep and possibly infinite")}function GE(){KE(),Kl++,jc++}function VE(){jc--,g(jc,0)&&(Kl=0)}function WE(e){return ts(e.callstack.length,0)?e.callstack[e.callstack.length-1]:""}function JE(e,t){return g(WE(e),t)}function QE(e,t,n,r,s,i){GE();try{const o=zE(e,t,r,i),d=W(o,_t([...t.callstack,n.$ref],t.visited),s);return W(o,_t([],[]),d)}finally{VE()}}function YE(e,t,n,r,s,i){return i.reduce((o,d)=>{const f=QE(e,t,n,r,s,d);return[...o,f]},[])}function ZE(e,t,n,r,s,i){const o=FE(r,i,s),d=YE(e,t,n,r,s,o);return g(d.length,1)?d[0]:ar(d)}function kh(e,t,n,r){const s=Xn(e,t,r),i=BE(e,n),o=i[0],d=i[1];return pl(d)?JE(t,o)?Ic(gn(o),s):ZE(e,t,gn(o),d.parameters,d.expression,s):Ic(n,s)}function Ic(e,t){return we({"~kind":"Call"},{type:"call",target:e,arguments:t},{})}function XE(e,t){return kh({},_t([],[]),e,t)}function Gl(e){return Ce(e,"Call")}function eT(e){return Mn(e,["~immutable"])}function tT(e,t){return xe(eT(e),{},t)}function nT(e,t,n,r){const s=W(e,t,n);return tT(s,r)}function rT(e,t){return e(t)}function sT(e,t){return pe(t)?De(rT(e,t)):De(t)}function iT(e,t){const n=or(t);return Us(e,n)}function oT(e,t){const n=t.map(r=>Us(e,r));return Je(n)}function Us(e,t){return Qe(t)?sT(e,t.const):Wt(t)?iT(e,t.pattern):fe(t)?oT(e,t.anyOf):t}function xh(e,t={}){return Oe("Capitalize",[e],t)}function aT(e,t={}){return Sh(e,t)}function yh(e,t={}){return Oe("Lowercase",[e],t)}function cT(e,t={}){return jh(e,t)}function wh(e,t={}){return Oe("Uncapitalize",[e],t)}function lT(e,t={}){return Ih(e,t)}function vh(e,t={}){return Oe("Uppercase",[e],t)}function dT(e,t={}){return Ch(e,t)}const uT=e=>e[0].toUpperCase()+e.slice(1),pT=e=>e.toLowerCase(),fT=e=>e[0].toLowerCase()+e.slice(1),mT=e=>e.toUpperCase();function Sh(e,t){return Xe([e])?xe(Us(uT,e),{},t):xh(e,t)}function jh(e,t){return Xe([e])?xe(Us(pT,e),{},t):yh(e,t)}function Ih(e,t){return Xe([e])?xe(Us(fT,e),{},t):wh(e,t)}function Ch(e,t){return Xe([e])?xe(Us(mT,e),{},t):vh(e,t)}function hT(e,t,n,r){const s=W(e,t,n);return Sh(s,r)}function gT(e,t,n,r){const s=W(e,t,n);return jh(s,r)}function bT(e,t,n,r){const s=W(e,t,n);return Ih(s,r)}function kT(e,t,n,r){const s=W(e,t,n);return Ch(s,r)}function Eh(e,t,n,r,s={}){return Oe("Conditional",[e,t,n,r],s)}function xT(e,t,n,r,s={}){return Th({},_t([],[]),e,t,n,r,s)}function yT(e,t,n,r,s,i){const o=sr(e,n,r);return $l(o)?Je([W(o.inferred,t,s),W(e,t,i)]):Fl(o)?W(o.inferred,t,s):W(e,t,i)}function Th(e,t,n,r,s,i,o){return Xe([n,r])?xe(yT(e,t,n,r,s,i),{},o):Eh(n,r,s,i,o)}function wT(e,t,n,r,s,i,o){const d=W(e,t,n),f=W(e,t,r);return Th(e,t,d,f,s,i,o)}function Ah(e,t={}){return Oe("ConstructorParameters",[e],t)}function vT(e,t={}){return Ph(e,t)}function ST(e){const t=xn(e)?e.parameters:[],n=Hi({},_t([],[]),t);return Sn(n)}function Ph(e,t){return Xe([e])?xe(ST(e),{},t):Ah(e,t)}function jT(e,t,n,r){const s=W(e,t,n);return Ph(s,r)}function Nh(e,t,n={}){return Oe("Exclude",[e,t],n)}function IT(e,t,n={}){return Vl(e,t,n)}function Vl(e,t,n){return Xe([e,t])?xe(Qf(e,t),{},n):Nh(e,t,n)}function CT(e,t,n,r,s){const i=W(e,t,n),o=W(e,t,r);return Vl(i,o,s)}function Oh(e,t,n={}){return Oe("Extract",[e,t],n)}function ET(e,t,n={}){return Rh(e,t,n)}function TT(e,t){const n=sr({},e,t);return Yt(n)?[e]:[]}function AT(e,t){return e.reduce((n,r)=>[...n,...TT(r,t)],[])}function PT(e,t){const n=Jr(e),r=fe(n)?n.anyOf:[n],s=AT(r,t);return ar(s)}function Rh(e,t,n){return Xe([e,t])?xe(PT(e,t),{},n):Oh(e,t,n)}function NT(e,t,n,r,s){const i=W(e,t,n),o=W(e,t,r);return Rh(i,o,s)}function OT(e){return e.reduce((t,n)=>Af(n)?[...t,De(n)]:t,[])}function Wl(e){const t=OT(e);return Je(t)}function Jl(e,t,n={}){return Oe("Index",[e,t],n)}function RT(e,t,n={}){const r=z(t)?Wl(t):t;return Dh(e,r,n)}function MT(e,t){const n=Di(e,t);return cs(n)}function $T(e,t,n){const r=Ls(e,t,n);return cs(r)}function FT(e,t){const n=U(e).filter(m=>!E(t,m)),r=U(t).filter(m=>!E(e,m)),s=U(e).filter(m=>E(t,m)),i=n.reduce((m,p)=>({...m,[p]:e[p]}),{}),o=r.reduce((m,p)=>({...m,[p]:t[p]}),{}),d=s.reduce((m,p)=>({...m,[p]:fn([e[p],t[p]])}),{}),f=kt(i,o);return kt(f,d)}function LT(e){return e.reduce((t,n)=>FT(t,cs(n)),{})}function DT(e){const t=hS(Sn(e));return cs(t)}function _T(e,t){return U(e).filter(s=>s in t).reduce((s,i)=>({...s,[i]:ar([e[i],t[i]])}),{})}function Mh(e,t){return Ae(e,(n,r)=>Mh(r,_T(t,cs(n))),()=>t)}function UT(e){return Ae(e,(t,n)=>Mh(n,cs(t)),()=>Ft())}function cs(e){return Gt(e)?MT(e.$defs,e.$ref):wn(e)?$T(e.if,e.then,e.else):Be(e)?LT(e.allOf):fe(e)?UT(e.anyOf):at(e)?DT(e.items):Ue(e)?e.properties:{}}function Ql(e){const t=cs(e);return $e(t)}const BT=new RegExp("^(?:0|[1-9][0-9]*)$");function Yl(e){const t=`${e}`;return BT.test(t)?parseInt(t):e}function HT(e){return De(Yl(e))}function Bu(e){return e.map(t=>$h(t))}function $h(e){return Be(e)?Bn(Bu(e.allOf)):fe(e)?Je(Bu(e.anyOf)):Qe(e)?HT(e.const):e}function qT(e,t){const n=$h(t),r=sr({},n,wr());return Yt(r)?e:Qe(t)&&g(t.const,"length")?wr():Nt()}function zT(e,t){const n=Di(e,t);return ls(n)}function KT(e,t,n){const r=Ls(e,t,n);return ls(r)}function GT(e){const t=Er(e);return ls(t)}function VT(e){const t=fn(e);return ls(t)}function WT(e){return[`${e}`]}function JT(e){const t=or(e);return ls(t)}function QT(e){return e.reduce((t,n)=>[...t,...ls(n)],[])}function ls(e){return Gt(e)?zT(e.$defs,e.$ref):wn(e)?KT(e.if,e.then,e.else):vn(e)?GT(e.enum):Be(e)?VT(e.allOf):Qe(e)?WT(e.const):Wt(e)?JT(e.pattern):fe(e)?QT(e.anyOf):[]}function Zl(e){return ls(e)}function oi(e,t){return t.map(n=>pi(e,n))}function pi(e,t){return gt(t)?Ir(pi(e,t.items)):xn(t)?Ei(oi(e,t.parameters),pi(e,t.instanceType)):yn(t)?Ti(oi(e,t.parameters),pi(e,t.returnType)):at(t)?Sn(oi(e,t.items)):fe(t)?Je(oi(e,t.anyOf)):Be(t)?Bn(oi(e,t.allOf)):em(t)?$e(e):t}function YT(e,t){return pi(e,t)}function ZT(e,t){const n=t in e?e[t]:Nt();return YT(e,n)}function Fh(e,t){return t.reduce((n,r)=>[...n,ZT(e,r)],[])}function XT(e,t){const n=Zl(t),r=Fh(e,n);return ar(r)}const eA=new RegExp(Mi);function tA(e){return e.filter(n=>eA.test(n))}function nA(e){const t=gf(e),n=tA(t),r=Fh(e,n);return ar(r)}function rA(e,t){return pn(t)?nA(e):XT(e,t)}function sA(e){return De(Yl(e))}function Hu(e){return e.map(t=>Lh(t))}function Lh(e){return Be(e)?Bn(Hu(e.allOf)):fe(e)?Je(Hu(e.anyOf)):Qe(e)?sA(e.const):e}function iA(e,t){return e.reduceRight((n,r,s)=>{const i=sr({},De(s),t);return Yt(i)?[r,...n]:n},[])}function oA(e,t){const n=Lh(t),r=iA(e,n);return Ds(r)}function aA(e){return Ds(e)}function cA(e,t){return Qe(t)&&g(t.const,"length")?De(e.length):pn(t)||qn(t)?aA(e):oA(e,t)}function lA(e,t){return gt(e)?qT(e.items,t):Ue(e)?rA(e.properties,t):at(e)?cA(e.items,t):Nt()}function dA(e){return Gt(e)||wn(e)||Be(e)||fe(e)?Ql(e):e}function Dh(e,t,n){return Xe([e,t])?xe(lA(dA(e),t),{},n):Jl(e,t,n)}function uA(e,t,n,r,s){const i=W(e,t,n),o=W(e,t,r);return Dh(i,o,s)}function _h(e,t={}){return Oe("InstanceType",[e],t)}function pA(e,t={}){return Uh(e,t)}function fA(e){return xn(e)?e.instanceType:Nt()}function Uh(e,t){return Xe([e])?xe(fA(e),{},t):_h(e,t)}function mA(e,t,n,r={}){const s=W(e,t,n);return Uh(s,r)}function Xl(e,t={}){return Oe("KeyOf",[e],t)}function hA(e,t={}){return Bh(e,t)}function gA(){return Je([wr(),zn(),kl()])}function bA(e){return wr()}function kA(e){return e.reduce((n,r)=>Af(r)?[...n,De(Yl(r))]:Ft(),[])}function xA(e){const t=U(e),n=kA(t);return Ds(n)}function yA(e){return da(e)}function wA(e){const t=e.map((n,r)=>De(r));return Ds(t)}function vA(e){return $n(e)?gA():gt(e)?bA(e.items):Ue(e)?xA(e.properties):Ot(e)?yA(e):at(e)?wA(e.items):Nt()}function SA(e){return Gt(e)||wn(e)||Be(e)||fe(e)?Ql(e):e}function Bh(e,t){return Xe([e])?xe(vA(SA(e)),{},t):Xl(e,t)}function jA(e,t,n,r){const s=W(e,t,n);return Bh(s,r)}function Cc(e,t,n,r,s={}){return Oe("Mapped",[e,t,n,r],s)}function IA(e,t,n,r,s={}){return Hh({},_t([],[]),e,t,n,r,s)}function CA(e){const t=or(e);return ba(t)}function EA(e){return e.reduce((t,n)=>[...t,...ba(n)],[])}function TA(e){const t=Er(e);return ba(t)}function AA(e){return Ie(e)?[De(`${e}`)]:[De(e)]}function ba(e){return vn(e)?TA(e.enum):Qe(e)?AA(e.const):Wt(e)?CA(e.pattern):fe(e)?EA(e.anyOf):[e]}function PA(e){return ba(e)}function NA(e){return Wt(e)?or(e.pattern):e}function OA(e,t,n,r,s,i){const o=kt(e,{[n.name]:r}),d=W(o,t,s),f=NA(d),u=W(o,t,i);return Pf(f)||Nf(f)?{[f.const]:u}:{}}function RA(e,t,n,r,s,i){return r.reduce((o,d)=>[...o,OA(e,t,n,d,s,i)],[])}function MA(e){return e.reduce((t,n)=>[...t,$e(n)],[])}function $A(e,t,n,r,s,i){const o=PA(r),d=RA(e,t,n,o,s,i),f=MA(d);return fn(f)}function Hh(e,t,n,r,s,i,o){return Xe([r])?xe($A(e,t,n,r,s,i),{},o):Cc(n,r,s,i,o)}function FA(e,t,n,r,s,i,o){const d=W(e,t,r);return Hh(e,t,n,d,s,i,o)}function LA(e,t,n){const r=kt(e,t);return U(t).filter(i=>n.includes(i)).reduce((i,o)=>({...i,[o]:IE(r,o,t[o])}),{})}function DA(e,t,n){const r=kt(e,t);return U(t).filter(i=>!n.includes(i)).reduce((i,o)=>({...i,[o]:W(r,_t([],[]),t[o])}),{})}function _A(e,t,n){const r=gE(t),s=LA(e,t,r),i=DA(e,t,r),o={...s,...i};return xe(o,{},n)}function qh(e,t,n,r){return _A(e,n,r)}function zh(e,t={}){return Oe("NonNullable",[e],t)}function UA(e,t={}){return Kh(e,t)}function BA(e){const t=Je([bl(),wl()]);return Vl(e,t,{})}function Kh(e,t){return Xe([e])?xe(BA(e),{},t):zh(e,t)}function HA(e,t,n,r){const s=W(e,t,n);return Kh(s,r)}function Gh(e,t,n={}){return Oe("Omit",[e,t],n)}function qA(e,t,n={}){const r=z(t)?Wl(t):t;return Wh(e,r,n)}function Vh(e){const t=Ql(e);return Ue(t)?t.properties:Ft()}function zA(e,t){return U(e).reduce((r,s)=>t.includes(s)?r:{...r,[s]:e[s]},{})}function KA(e,t){const n=Vh(e),r=Zl(t),s=zA(n,r);return $e(s)}function Wh(e,t,n){return Xe([e,t])?xe(KA(e,t),{},n):Gh(e,t,n)}function GA(e,t,n,r,s){const i=W(e,t,n),o=W(e,t,r);return Wh(i,o,s)}function Jh(e,t={}){return Oe("Parameters",[e],t)}function VA(e,t={}){return Qh(e,t)}function WA(e){const t=yn(e)?e.parameters:[],n=Hi({},_t([],[]),t);return Sn(n)}function Qh(e,t){return Xe([e])?xe(WA(e),{},t):Jh(e,t)}function JA(e,t,n,r){const s=W(e,t,n);return Qh(s,r)}function Yh(e,t={}){return Oe("Partial",[e],t)}function QA(e,t={}){return Zh(e,t)}function YA(e,t){const n=Di(e,t),r=_i(n);return Pi(kt(e,{[t]:r}),t)}function ZA(e,t,n){const r=Ls(e,t,n);return _i(r)}function XA(e){const t=fn(e);return _i(t)}function eP(e){const t=e.map(n=>_i(n));return Je(t)}function tP(e){const t=U(e).reduce((r,s)=>({...r,[s]:Fo(e[s])}),{});return $e(t)}function _i(e){return Gt(e)?YA(e.$defs,e.$ref):wn(e)?ZA(e.if,e.then,e.else):Be(e)?XA(e.allOf):fe(e)?eP(e.anyOf):Ue(e)?tP(e.properties):$e({})}function Zh(e,t){return Xe([e])?xe(_i(e),{},t):Yh(e,t)}function nP(e,t,n,r){const s=W(e,t,n);return Zh(s,r)}function Xh(e,t,n={}){return Oe("Pick",[e,t],n)}function rP(e,t,n={}){const r=z(t)?Wl(t):t;return eg(e,r,n)}function sP(e,t){return U(e).reduce((r,s)=>t.includes(s)?kt(r,{[s]:e[s]}):r,{})}function iP(e,t){const n=Vh(e),r=Zl(t),s=sP(n,r);return $e(s)}function eg(e,t,n){return Xe([e,t])?xe(iP(e,t),{},n):Xh(e,t,n)}function oP(e,t,n,r,s){const i=W(e,t,n),o=W(e,t,r);return eg(i,o,s)}function tg(e,t={}){return Oe("ReadonlyObject",[e],t)}function ng(e,t={}){return rg(e,t)}const aP=ng;function cP(e){return nd(Ir(e))}function lP(e,t){const n=Di(e,t),r=Ui(n);return Pi(kt(e,{[t]:r}),t)}function dP(e,t,n){const r=Ls(e,t,n);return Ui(r)}function uP(e){const t=fn(e);return Ui(t)}function pP(e){const t=U(e).reduce((r,s)=>({...r,[s]:_o(e[s])}),{});return $e(t)}function fP(e){return nd(Sn(e))}function mP(e){const t=e.map(n=>Ui(n));return Je(t)}function Ui(e){return gt(e)?cP(e.items):Gt(e)?lP(e.$defs,e.$ref):wn(e)?dP(e.if,e.then,e.else):Be(e)?uP(e.allOf):Ue(e)?pP(e.properties):at(e)?fP(e.items):fe(e)?mP(e.anyOf):e}function rg(e,t){return Xe([e])?xe(Ui(e),{},t):tg(e)}function hP(e,t,n,r){const s=W(e,t,n);return rg(s,r)}function gP(e,t,n,r){return t.visited.includes(r)?n:r in e?W(e,_t(t.callstack,[...t.visited,r]),e[r]):n}function bP(e,t){const n=Di(e,t),r=Bi(n);return Pi(kt(e,{[t]:r}),t)}function kP(e,t,n){const r=Ls(e,t,n);return Bi(r)}function xP(e){const t=fn(e);return Bi(t)}function yP(e){const t=e.map(n=>Bi(n));return Je(t)}function wP(e){const t=U(e).reduce((r,s)=>({...r,[s]:Gf(e[s])}),{});return $e(t)}function Bi(e){return Gt(e)?bP(e.$defs,e.$ref):wn(e)?kP(e.if,e.then,e.else):Be(e)?xP(e.allOf):fe(e)?yP(e.anyOf):Ue(e)?wP(e.properties):$e({})}function sg(e,t={}){return Oe("Required",[e],t)}function vP(e,t={}){return ig(e,t)}function ig(e,t){return Xe([e])?xe(Bi(e),{},t):sg(e,t)}function SP(e,t,n,r){const s=W(e,t,n);return ig(s,r)}function og(e,t={}){return Oe("ReturnType",[e],t)}function jP(e,t={}){return ag(e,t)}function IP(e){return yn(e)?e.returnType:Nt()}function ag(e,t){return Xe([e])?xe(IP(e),{},t):og(e,t)}function CP(e,t,n,r={}){const s=W(e,t,n);return ag(s,r)}function cg(e,t){return Oe("With",[e,t],{})}function lg(e,t){return dg(e,t)}function dg(e,t){return Xe([e])?xe(e,{},t):cg(e,t)}function EP(e,t,n,r){const s=W(e,t,n);return dg(s,r)}function TP(e){return pa(e)?at(e.items)?ug(e.items.items):ln(e.items)?[e]:vt(e.items)?[e]:[Nt()]:[e]}function ug(e){return e.reduce((n,r)=>[...n,...TP(r)],[])}function _t(e,t){return{callstack:e,visited:t}}function Xe(e){return Ae(e,(t,n)=>vt(t)?!1:Xe(n),()=>!0)}function ed(e,t,n){return U(n).reduce((r,s)=>({...r,[s]:W(e,t,n[s])}),{})}function Hi(e,t,n){const r=Xn(e,t,n);return ug(r)}function Xn(e,t,n){return n.map(r=>W(e,t,r))}function AP(e,t){const n=cn(e)?dl(t,{}):t,r=Uo(e)?ll(n,{}):n;return Do(e)?td(r,{}):r}function PP(e,t,n,r,s){return g(n,"AddImmutable")?RP(e,t,r[0],s):g(n,"RemoveImmutable")?nT(e,t,r[0],s):g(n,"AddReadonly")?ev(e,t,r[0],s):g(n,"RemoveReadonly")?lS(e,t,r[0],s):g(n,"AddOptional")?nv(e,t,r[0],s):g(n,"RemoveOptional")?fS(e,t,r[0],s):g(n,"Capitalize")?hT(e,t,r[0],s):g(n,"Conditional")?wT(e,t,r[0],r[1],r[2],r[3],s):g(n,"ConstructorParameters")?jT(e,t,r[0],s):g(n,"Evaluate")?NE(e,t,r[0],s):g(n,"Exclude")?CT(e,t,r[0],r[1],s):g(n,"Extract")?NT(e,t,r[0],r[1],s):g(n,"Index")?uA(e,t,r[0],r[1],s):g(n,"InstanceType")?mA(e,t,r[0],s):g(n,"Interface")?uE(e,t,r[0],r[1],s):g(n,"KeyOf")?jA(e,t,r[0],s):g(n,"Lowercase")?gT(e,t,r[0],s):g(n,"Mapped")?FA(e,t,r[0],r[1],r[2],r[3],s):g(n,"Module")?qh(e,t,r[0],s):g(n,"NonNullable")?HA(e,t,r[0],s):g(n,"Pick")?oP(e,t,r[0],r[1],s):g(n,"Parameters")?JA(e,t,r[0],s):g(n,"Partial")?nP(e,t,r[0],s):g(n,"Omit")?GA(e,t,r[0],r[1],s):g(n,"ReadonlyObject")?hP(e,t,r[0],s):g(n,"Record")?US(e,t,r[0],r[1],s):g(n,"Required")?SP(e,t,r[0],s):g(n,"ReturnType")?CP(e,t,r[0],s):g(n,"TemplateLiteral")?i2(e,t,r[0],s):g(n,"Uncapitalize")?bT(e,t,r[0],s):g(n,"Uppercase")?kT(e,t,r[0],s):g(n,"With")?EP(e,t,r[0],r[1]):Oe(n,r,s)}function NP(e,t,n){const r=vt(n)?gP(e,t,n,n.$ref):gt(n)?Ir(W(e,t,n.items),ul(n)):Gl(n)?kh(e,t,n.target,n.arguments):xn(n)?Ei(Xn(e,t,n.parameters),W(e,t,n.instanceType),rv(n)):yn(n)?Ti(Xn(e,t,n.parameters),W(e,t,n.returnType),sv(n)):wn(n)?Lo(W(e,t,n.if),W(e,t,n.then),W(e,t,n.else),dv(n)):Be(n)?Bn(Xn(e,t,n.allOf),hv(n)):Ue(n)?$e(ed(e,t,n.properties),cv(n)):Ot(n)?BS(jn(n),W(e,t,Vt(n))):pa(n)?ua(W(e,t,n.items)):at(n)?Sn(Hi(e,t,n.items),aS(n)):fe(n)?Je(Xn(e,t,n.anyOf),Zv(n)):n;return AP(n,r)}function W(e,t,n){return Ps(n)?PP(e,t,n.action,n.parameters,n.options):NP(e,t,n)}function Bs(e,t){return W(e,_t([],[]),t)}function OP(e){return xe(e,{"~immutable":!0},{})}function td(e,t){return xe(OP(e),{},t)}function RP(e,t,n,r){const s=W(e,t,n);return td(s,r)}function MP(e,t={}){return Oe("AddImmutable",[e],t)}function nd(e,t={}){return td(e,t)}function $P(e,t={}){return Oe("Evaluate",[e],t)}function Kn(e,t={}){return hh(e,t)}function FP(e,t={}){return Oe("Module",[e],t)}function LP(e,t={}){return qh({},_t([],[]),e,t)}function DP(e,t){const n=ga(e,t);return g(n,"right-inside")||g(n,"disjoint")?1:0}function pg(e,t,n=[]){return Ae(t,(r,s)=>g(DP(e,r),1)?pg(e,s,[...n,r]):[...n,e,...t],()=>[...n,e])}function fg(e,t=[]){return Ae(e,(n,r)=>fg(r,pg(n,t)),()=>t)}function _P(e){return fg(e)}function UP(...e){const[t,n,r]=ut(e,{2:(o,d)=>pe(o)?[{},o,d]:[o,d,{}],3:(o,d,f)=>[o,d,f],1:o=>[{},o,{}]}),s=zC(n),i=z(s)&&g(s.length,2)?W(t,_t([],[]),s[0]):Nt();return xe(i,{},r)}const c=Object.freeze(Object.defineProperty({__proto__:null,Any:fl,Array:Ir,BigInt:gl,Boolean:Ef,Call:XE,Capitalize:aT,Codec:ml,Conditional:xT,Constructor:Ei,ConstructorParameters:vT,Cyclic:Pi,Decode:Dv,DecodeBuilder:Cf,Dependent:Lo,Encode:_v,EncodeBuilder:If,Enum:mv,Evaluate:Kn,Exclude:IT,Extends:sr,ExtendsResult:l2,Extract:ET,Function:Ti,Generic:Ai,Identifier:mc,Immutable:Uv,Index:RT,Infer:pc,InstanceType:pA,Instantiate:Bs,Integer:oa,Interface:pE,Intersect:Bn,IsAny:$n,IsArray:gt,IsBigInt:is,IsBoolean:Cr,IsCall:Gl,IsCodec:dn,IsConstructor:xn,IsCyclic:Gt,IsDependent:wn,IsEnum:vn,IsEnumValue:fv,IsFunction:yn,IsGeneric:pl,IsIdentifier:Gv,IsImmutable:Do,IsInfer:ln,IsInteger:qn,IsIntersect:Be,IsKind:Ce,IsLiteral:Qe,IsNever:Fs,IsNull:Ni,IsNumber:pn,IsObject:Ue,IsOptional:cn,IsParameter:Yv,IsReadonly:Uo,IsRecord:Ot,IsRef:vt,IsRefine:hl,IsRest:pa,IsSchema:an,IsString:Fn,IsSymbol:Oi,IsTemplateLiteral:Wt,IsThis:em,IsTuple:at,IsUndefined:_s,IsUnion:fe,IsUnknown:An,IsUnsafe:kf,IsVoid:os,KeyOf:hA,Literal:De,Lowercase:cT,Mapped:IA,Module:LP,Never:Nt,NonNullable:UA,Null:bl,Number:wr,Object:$e,Omit:qA,Optional:ov,Parameter:Ri,Parameters:VA,Partial:QA,Pick:rP,Readonly:Bv,ReadonlyObject:ng,ReadonlyType:aP,Record:yl,RecordKey:da,RecordPattern:jn,RecordValue:Vt,Ref:gn,Refine:qv,Required:vP,Rest:ua,ReturnType:jP,Script:UP,String:zn,Symbol:kl,TemplateLiteral:c2,This:Xf,Tuple:Sn,Uncapitalize:lT,Undefined:wl,Union:Je,Unknown:Kt,Unsafe:lv,Uppercase:dT,Void:tm,With:lg},Symbol.toStringTag,{value:"Module"}));function ka(e){return E(e,"~refine")&&z(e["~refine"])&&ht(e["~refine"],0,t=>re(t)&&E(t,"check")&&E(t,"error")&&Tn(t.check)&&Tn(t.error))}function un(e){return re(e)&&!z(e)}function qi(e){return xt(e)}function _e(e){return un(e)||qi(e)}function zi(e){return E(e,"additionalItems")&&_e(e.additionalItems)}function lr(e){return E(e,"additionalProperties")&&_e(e.additionalProperties)}function xa(e){return E(e,"allOf")&&z(e.allOf)&&e.allOf.every(t=>_e(t))}function qo(e){return E(e,"$anchor")&&pe(e.$anchor)}function ya(e){return E(e,"anyOf")&&z(e.anyOf)&&e.anyOf.every(t=>_e(t))}function wa(e){return E(e,"const")}function ds(e){return E(e,"contains")&&_e(e.contains)}function BP(e){return E(e,"contentEncoding")&&pe(e.contentEncoding)}function HP(e){return E(e,"contentMediaType")&&pe(e.contentMediaType)}function Ar(e){return E(e,"default")}function qP(e){return E(e,"$defs")&&re(e.$defs)&&Object.values(e.$defs).every(t=>_e(t))}function Ki(e){return E(e,"dependencies")&&re(e.dependencies)&&Object.values(e.dependencies).every(t=>_e(t)||z(t)&&t.every(n=>pe(n)))}function Gi(e){return E(e,"dependentRequired")&&re(e.dependentRequired)&&Object.values(e.dependentRequired).every(t=>z(t)&&t.every(n=>pe(n)))}function Vi(e){return E(e,"dependentSchemas")&&re(e.dependentSchemas)&&Object.values(e.dependentSchemas).every(t=>_e(t))}function Yr(e){return E(e,"$dynamicAnchor")&&pe(e.$dynamicAnchor)}function va(e){return E(e,"$dynamicRef")&&pe(e.$dynamicRef)}function Sa(e){return E(e,"else")&&_e(e.else)}function ja(e){return E(e,"enum")&&z(e.enum)}function Wi(e){return E(e,"exclusiveMaximum")&&(Ie(e.exclusiveMaximum)||st(e.exclusiveMaximum))}function Pr(e){return E(e,"exclusiveMinimum")&&(Ie(e.exclusiveMinimum)||st(e.exclusiveMinimum))}function Hs(e){return E(e,"format")&&pe(e.format)}function Sr(e){return E(e,"$id")&&pe(e.$id)}function Ia(e){return E(e,"if")&&_e(e.if)}function Nr(e){return E(e,"items")&&(_e(e.items)||z(e.items)&&e.items.every(t=>_e(t)))}function Ca(e){return Nr(e)&&z(e.items)}function zP(e){return Nr(e)&&!z(e.items)}function Ji(e){return E(e,"maximum")&&(Ie(e.maximum)||st(e.maximum))}function Qi(e){return E(e,"maxContains")&&Ie(e.maxContains)}function qs(e){return E(e,"maxItems")&&Ie(e.maxItems)}function Yi(e){return E(e,"maxLength")&&Ie(e.maxLength)}function Zi(e){return E(e,"maxProperties")&&Ie(e.maxProperties)}function Or(e){return E(e,"minimum")&&(Ie(e.minimum)||st(e.minimum))}function us(e){return E(e,"minContains")&&Ie(e.minContains)}function ps(e){return E(e,"minItems")&&Ie(e.minItems)}function zs(e){return E(e,"minLength")&&Ie(e.minLength)}function Ks(e){return E(e,"minProperties")&&Ie(e.minProperties)}function Xi(e){return E(e,"multipleOf")&&(Ie(e.multipleOf)||st(e.multipleOf))}function Ea(e){return E(e,"not")&&_e(e.not)}function Ta(e){return E(e,"oneOf")&&z(e.oneOf)&&e.oneOf.every(t=>_e(t))}function Gs(e){return E(e,"pattern")&&(pe(e.pattern)||e.pattern instanceof RegExp)}function fs(e){return E(e,"patternProperties")&&re(e.patternProperties)&&Object.values(e.patternProperties).every(t=>_e(t))}function dr(e){return E(e,"prefixItems")&&z(e.prefixItems)&&e.prefixItems.every(t=>_e(t))}function ms(e){return E(e,"properties")&&re(e.properties)&&Object.values(e.properties).every(t=>_e(t))}function eo(e){return E(e,"propertyNames")&&(re(e.propertyNames)||_e(e.propertyNames))}function mg(e){return E(e,"$recursiveAnchor")&&xt(e.$recursiveAnchor)}function Eo(e){return mg(e)&&g(e.$recursiveAnchor,!0)}function Aa(e){return E(e,"$recursiveRef")&&pe(e.$recursiveRef)}function Pa(e){return E(e,"$ref")&&pe(e.$ref)}function ur(e){return E(e,"required")&&z(e.required)&&e.required.every(t=>pe(t))}function Na(e){return E(e,"then")&&_e(e.then)}function to(e){return E(e,"type")&&(pe(e.type)||z(e.type)&&e.type.every(t=>pe(t)))}function jr(e){return E(e,"uniqueItems")&&xt(e.uniqueItems)}function Vs(e){return E(e,"unevaluatedItems")&&_e(e.unevaluatedItems)}function Ws(e){return E(e,"unevaluatedProperties")&&_e(e.unevaluatedProperties)}function KP(e){return Vs(e)||Ws(e)||$s(U(e),t=>zo(e[t]))}function GP(e){return $s(e,t=>zo(t))}function zo(e){return z(e)?GP(e):re(e)?KP(e):!1}function hg(e,t){return zo(t)||$s(U(e),n=>zo(e[n]))}class gg{constructor(t){this.hasUnevaluated=t}UseUnevaluated(){return this.hasUnevaluated}Push(){return Ve(ke("context","Push"),[])}Pop(){return Ve(ke("context","Pop"),[])}AddIndex(t){return Ve(ke("context","AddIndex"),[t])}AddKey(t){return Ve(ke("context","AddKey"),[t])}Merge(t){return Ve(ke("context","Merge"),[t])}}class Gn{constructor(){const t=new Set,n=new Set;this.stack=[{indices:t,keys:n}]}Push(){const t=new Set,n=new Set;return this.stack.push({indices:t,keys:n}),!0}Pop(){return this.stack.pop(),!0}AddIndex(t){return this.GetIndices().add(t),!0}AddKey(t){return this.GetKeys().add(t),!0}GetIndices(){return this.stack[this.stack.length-1].indices}GetKeys(){return this.stack[this.stack.length-1].keys}Merge(t){for(const n of t)n.GetIndices().forEach(r=>this.GetIndices().add(r)),n.GetKeys().forEach(r=>this.GetKeys().add(r));return!0}}class rd extends Gn{constructor(t){super(),this.callback=t}AddError(t){return this.callback(t),!1}}class Vn extends rd{constructor(){super(t=>this.errors.push(t)),this.errors=[]}AddError(t){return this.errors.push(t),!1}GetErrors(){return this.errors}}const Ko={identifier:"External",variables:[]};function hs(e){const t=`External[${Ko.variables.length}]`;return Ko.variables.push(e),t}function bg(){Ko.variables=[]}function kg(){return{...Ko}}function xg(e,t,n,r){const s=hs(n["~refine"].map(i=>i));return Hn(s,V(0),["refinement","_"],Ve(ke("refinement","check"),[r]))}function yg(e,t,n,r){return ht(n["~refine"],0,(s,i)=>s.check(r))}function wg(e,t,n,r,s,i){return Pt(s["~refine"],0,(o,d)=>o.check(i)||t.AddError({keyword:"~refine",schemaPath:n,instancePath:r,params:{index:d,message:o.error(i)}}))}let VP=0;function dt(){return`var_${VP++}`}function sd(e){return Nr(e)&&z(e.items)}function WP(e,t,n,r){const[s,i]=[dt(),dt()],o=Ln(e,t,n.additionalItems,s),d=il(i,V(n.items.length)),f=t.AddIndex(i);return Hn(r,V(0),[s,i],Ge(d,Ct(o,f)))}function JP(e,t,n,r){const[s,i]=[dt(),dt()],o=Ln(e,t,n.additionalItems,s),d=il(i,V(n.items.length));return Hn(r,V(0),[s,i],Ge(d,o))}function vg(e,t,n,r){return sd(n)?t.UseUnevaluated()?WP(e,t,n,r):JP(e,t,n,r):V(!0)}function Sg(e,t,n,r){return sd(n)?ht(r,0,(i,o)=>Si(o,n.items.length)||Rr(e,t,n.additionalItems,i)&&t.AddIndex(o)):!0}function jg(e,t,n,r,s,i){return sd(s)?ht(i,0,(d,f)=>{const u=`${n}/additionalItems`,m=`${r}/${f}`;return Si(f,s.items.length)||Mr(e,t,u,m,s.additionalItems,d)&&t.AddIndex(f)}):!0}function QP(e){return`^${e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}$`}function id(e){const t=[];return fs(e)&&t.push(...U(e.patternProperties)),ms(e)&&t.push(...U(e.properties).map(QP)),g(t.length,0)?"(?!)":`(${t.join("|")})`}function Ig(e,t,n){return ur(t)&&ms(t)&&!fs(t)&&g(t.additionalProperties,!1)&&g(U(t.properties).length,t.required.length)}function Cg(e,t,n){return Zt(ke(Ve(ke("Object","getOwnPropertyNames"),[n]),"length"),V(t.required.length))}function Eg(e,t,n,r){const[s,i]=[dt(),dt()],o=hs(new RegExp(id(n))),d=Ln(e,t,n.additionalProperties,`${r}[${s}]`),f=Ve(ke(o,"test"),[s]),u=t.AddKey(s),m=t.UseUnevaluated()?Ge(f,Ct(d,u)):Ge(f,d);return Hn(ss(r),V(0),[s,i],m)}function Tg(e,t,n,r){return Ig(t,n)?Cg(t,n,r):Eg(e,t,n,r)}function Ag(e,t,n,r){const s=new RegExp(id(n));return ht(U(r),0,(o,d)=>s.test(o)||Rr(e,t,n.additionalProperties,r[o])&&t.AddKey(o))}function Pg(e,t,n,r,s,i){const o=new RegExp(id(s)),d=[];return Pt(U(i),0,(u,m)=>{const p=`${n}/additionalProperties`,h=`${r}/${u}`,b=new Vn,k=o.test(u)||Mr(e,b,p,h,s.additionalProperties,i[u])&&t.AddKey(u);return k||d.push(u),k})||t.AddError({keyword:"additionalProperties",schemaPath:n,instancePath:r,params:{additionalProperties:d}})}function no(e,t,n,r,s){const i=tr("results","[]"),o=n.map((m,p)=>tr(`context_${p}`,ol("CheckContext",[]))),d=n.map((m,p)=>tr(`condition_${p}`,Ve(xr(["context"],ct(e,t,m,r)),[`context_${p}`]))),f=n.map((m,p)=>uf(`condition_${p}`,Ve(ke("results","push"),[`context_${p}`]))),u=sa(Ct(s,t.Merge("results")));return Ve(xr([],ra([i,...o,...d,...f,u])),[])}function YP(e,t,n,r){return no(e,t,n.allOf,r,Zt(ke("results","length"),V(n.allOf.length)))}function ZP(e,t,n,r){return Tt(n.allOf.map(s=>ct(e,t,s,r)))}function Ng(e,t,n,r){return t.UseUnevaluated()?YP(e,t,n,r):ZP(e,t,n,r)}function Og(e,t,n,r){const s=n.allOf.reduce((i,o)=>{const d=new Gn;return lt(e,d,o,r)?[...i,d]:i},[]);return g(s.length,n.allOf.length)&&t.Merge(s)}function Rg(e,t,n,r,s,i){const o=[],d=s.allOf.reduce((u,m,p)=>{const h=`${n}/allOf/${p}`,b=new Vn,k=At(e,b,h,r,m,i);return k||o.push(b),k?[...u,b]:u},[]),f=g(d.length,s.allOf.length)&&t.Merge(d);return f||o.forEach(u=>u.GetErrors().forEach(m=>t.AddError(m))),f}function XP(e,t,n,r){return no(e,t,n.anyOf,r,cf(ke("results","length"),V(0)))}function eN(e,t,n,r){return al(n.anyOf.map(s=>ct(e,t,s,r)))}function Mg(e,t,n,r){return t.UseUnevaluated()?XP(e,t,n,r):eN(e,t,n,r)}function $g(e,t,n,r){const s=n.anyOf.reduce((i,o)=>{const d=new Gn;return lt(e,d,o,r)?[...i,d]:i},[]);return ts(s.length,0)&&t.Merge(s)}function Fg(e,t,n,r,s,i){const o=[],d=s.anyOf.reduce((u,m,p)=>{const h=new Vn,b=`${n}/anyOf/${p}`,k=At(e,h,b,r,m,i);return k||o.push(h),k?[...u,h]:u},[]),f=ts(d.length,0)&&t.Merge(d);return f||o.forEach(u=>u.GetErrors().forEach(m=>t.AddError(m))),f||t.AddError({keyword:"anyOf",schemaPath:n,instancePath:r,params:{}})}function Lg(e,t,n,r){return V(!!n)}function od(e,t,n,r){return n}function Dg(e,t,n,r,s,i){return od(e,t,s)||t.AddError({keyword:"boolean",schemaPath:n,instancePath:r,params:{}})}function _g(e,t,n,r){return Ms(n.const)?Zt(r,V(n.const)):df(r,hs(n.const))}function ad(e,t,n,r){return Ms(n.const)?g(r,n.const):ns(r,n.const)}function Ug(e,t,n,r,s,i){return ad(e,t,s,i)||t.AddError({keyword:"const",schemaPath:n,instancePath:r,params:{allowedValue:s.const}})}function Bg(e){return!(us(e)&&g(e.minContains,0))}function tN(e,t,n,r){const[s,i]=[dt(),dt()],o=$t(Zt(ke(r,"length"),V(0))),d=Mw(r,[s,i],Ct(ct(e,t,n.contains,s),t.AddIndex(i)));return Ct(o,d)}function nN(e,t,n,r){const[s]=[dt()],i=$t(Zt(ke(r,"length"),V(0))),o=Rw(r,[s,"_"],ct(e,t,n.contains,s));return Ct(i,o)}function Hg(e,t,n,r){return Bg(n)?t.UseUnevaluated()?tN(e,t,n,r):nN(e,t,n,r):V(!0)}function cd(e,t,n,r){return Bg(n)?!g(r.length,0)&&tf(r,(s,i)=>lt(e,t,n.contains,s)&&t.AddIndex(i)):!0}function qg(e,t,n,r,s,i){return cd(e,t,s,i)||t.AddError({keyword:"contains",schemaPath:n,instancePath:r,params:{minContains:1}})}function zg(e,t,n,r){const s=Zt(ke(ss(r),"length"),V(0)),i=Tt(it(n.dependencies).map(([o,d])=>{const f=$t(Vr(r,V(o))),u=ct(e,t,d,r),m=p=>Tt(p.map(h=>Vr(r,V(h))));return Ge(f,z(d)?m(d):u)}));return Ge(s,i)}function Kg(e,t,n,r){const s=g(U(r).length,0),i=ht(it(n.dependencies),0,([o,d])=>!E(r,o)||(z(d)?d.every(f=>E(r,f)):lt(e,t,d,r)));return s||i}function Gg(e,t,n,r,s,i){const o=g(U(i).length,0),d=Pt(it(s.dependencies),0,([f,u])=>{const m=`${n}/dependencies/${f}`;return!E(i,f)||(z(u)?u.every(p=>E(i,p)||t.AddError({keyword:"dependencies",schemaPath:n,instancePath:r,params:{property:f,dependencies:u}})):At(e,t,m,r,u,i))});return o||d}function Vg(e,t,n,r){const s=Zt(ke(ss(r),"length"),V(0)),i=Tt(it(n.dependentRequired).map(([o,d])=>{const f=$t(Vr(r,V(o))),u=Tt(d.map(m=>Vr(r,V(m))));return Ge(f,u)}));return Ge(s,i)}function Wg(e,t,n,r){const s=g(U(r).length,0),i=ht(it(n.dependentRequired),0,([o,d])=>!E(r,o)||d.every(f=>E(r,f)));return s||i}function Jg(e,t,n,r,s,i){const o=g(U(i).length,0),d=Pt(it(s.dependentRequired),0,([f,u])=>!E(i,f)||Pt(u,0,m=>E(i,m)||t.AddError({keyword:"dependentRequired",schemaPath:n,instancePath:r,params:{property:f,dependencies:u}})));return o||d}function Qg(e,t,n,r){const s=Zt(ke(ss(r),"length"),V(0)),i=Tt(it(n.dependentSchemas).map(([o,d])=>{const f=$t(Vr(r,V(o))),u=ct(e,t,d,r);return Ge(f,u)}));return Ge(s,i)}function Yg(e,t,n,r){const s=g(U(r).length,0),i=ht(it(n.dependentSchemas),0,([o,d])=>!E(r,o)||lt(e,t,d,r));return s||i}function Zg(e,t,n,r,s,i){const o=g(U(i).length,0),d=Pt(it(s.dependentSchemas),0,([f,u])=>{const m=`${n}/dependentSchemas/${f}`;return!E(i,f)||At(e,t,m,r,u,i)});return o||d}function rN(e,t,n,r){const s=e.DynamicRef(n)??!1;return Js(e,t,s,r)}function sN(e,t,n,r){const s=e.DynamicRef(n)??!1;return _e(s)&<(e,t,s,r)}function iN(e,t,n,r,s,i){const o=e.DynamicRef(s)??!1;return _e(o)&&At(e,t,"#",r,o,i)}function Xg(e,t,n,r){return al(n.enum.map(s=>{if(Ms(s))return Zt(r,V(s));const i=hs(s);return df(r,i)}))}function ld(e,t,n,r){return $s(n.enum,s=>Ms(s)?g(r,s):ns(r,s))}function eb(e,t,n,r,s,i){return ld(e,t,s,i)||t.AddError({keyword:"enum",schemaPath:n,instancePath:r,params:{allowedValues:s.enum}})}function tb(e,t,n,r){return il(r,V(n.exclusiveMaximum))}function dd(e,t,n,r){return Si(r,n.exclusiveMaximum)}function nb(e,t,n,r,s,i){return dd(e,t,s,i)||t.AddError({keyword:"exclusiveMaximum",schemaPath:n,instancePath:r,params:{comparison:"<",limit:s.exclusiveMaximum}})}function rb(e,t,n,r){return cf(r,V(n.exclusiveMinimum))}function ud(e,t,n,r){return ts(r,n.exclusiveMinimum)}function sb(e,t,n,r,s,i){return ud(e,t,s,i)||t.AddError({keyword:"exclusiveMinimum",schemaPath:n,instancePath:r,params:{comparison:">",limit:s.exclusiveMinimum}})}const oN=[0,31,28,31,30,31,30,31,31,30,31,30,31],aN=/^(\d\d\d\d)-(\d\d)-(\d\d)$/;function cN(e){return e%4===0&&(e%100!==0||e%400===0)}function pd(e){const t=aN.exec(e);if(!t)return!1;const n=+t[1],r=+t[2],s=+t[3];return r>=1&&r<=12&&s>=1&&s<=(r===2&&cN(n)?29:oN[r])}const lN=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(?:Z|([+-])(\d\d):(\d\d))?$/i;function fd(e,t=!0){const n=lN.exec(e);if(!n)return!1;const r=+n[1],s=+n[2],i=+n[3],o=n[4]==="-"?-1:1,d=+(n[5]||0),f=+(n[6]||0);if(d>23||f>59||t&&!n[4]&&e.toLowerCase().indexOf("z")===-1)return!1;if(r<=23&&s<=59&&i<60)return!0;const u=s-f*o,m=r-d*o-(u<0?1:0);return(m===23||m===-1)&&(u===59||u===-1)&&i<61}function ib(e,t=!0){const n=e.split(/T/i);return n.length===2&&pd(n[0])&&fd(n[1],t)}const dN=/^P((\d+Y(\d+M(\d+D)?)?|\d+M(\d+D)?|\d+D)(T(\d+H(\d+M(\d+S)?)?|\d+M(\d+S)?|\d+S))?|T(\d+H(\d+M(\d+S)?)?|\d+M(\d+S)?|\d+S)|\d+W)$/;function ob(e){return dN.test(e)}const uN=/^(?!.*\.\.)[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i;function ab(e){return uN.test(e)}const qr=36,To=1,Ec=26,pN=38,fN=700,mN=72,hN=128;function gN(e,t,n){e=n?Math.floor(e/fN):e>>1,e+=Math.floor(e/t);let r=0;for(;e>(qr-To)*Ec>>1;)e=Math.floor(e/(qr-To)),r+=qr;return r+Math.floor((qr-To+1)*e/(e+pN))}function bN(e){const t=[];let n=hN,r=0,s=mN;const i=e.lastIndexOf("-");if(i>0)for(let d=0;d<i;d++){const f=e.charCodeAt(d);if(f>=128)throw new Error("Invalid punycode: non-basic before delimiter");t.push(f)}let o=i<0?0:i+1;for(;o<e.length;){const d=r;let f=1,u=qr;for(;;){if(o>=e.length)throw new Error("Invalid punycode: unexpected end of input");const p=e.charCodeAt(o++);let h;if(p>=97&&p<=122)h=p-97;else if(p>=48&&p<=57)h=p-48+26;else if(p>=65&&p<=90)Ft();else throw new Error("Invalid punycode: bad digit character");r+=h*f;const b=u<=s?To:u>=s+Ec?Ec:u-s;if(h<b)break;f*=qr-b,u+=qr}const m=t.length+1;s=gN(r-d,m,d===0),n+=Math.floor(r/m),r%=m,t.splice(r,0,n),r++}return globalThis.String.fromCodePoint(...t)}function kN(e){return new RegExp("\\p{Mn}","u").test(String.fromCodePoint(e))}function xN(e){return new RegExp("\\p{Mc}","u").test(String.fromCodePoint(e))}function yN(e){return new RegExp("\\p{Me}","u").test(String.fromCodePoint(e))}function wN(e){return kN(e)||xN(e)||yN(e)}const vN=new Set([1600,2042,12334,12335,12337,12338,12339,12340,12341,12347]),SN=new Set([2381,2509,2637,2765,2893,3021,3149,3277,3387,3388,3405,3530,6980,7082,7083,43456,69702,69759,69817,69939,69940,70080,70197,70477,70722,70850,71103,71231,71350,72767,73028,73029]);function jN(e){return new RegExp("\\p{Script=Greek}","u").test(String.fromCodePoint(e))}function IN(e){return new RegExp("\\p{Script=Hebrew}","u").test(String.fromCodePoint(e))}function CN(e){return new RegExp("\\p{Script=Hiragana}","u").test(String.fromCodePoint(e))}function EN(e){return new RegExp("\\p{Script=Katakana}","u").test(String.fromCodePoint(e))}function TN(e){return new RegExp("\\p{Script=Han}","u").test(String.fromCodePoint(e))}function AN(e){return e>=1632&&e<=1641}function PN(e){return e>=1776&&e<=1785}function qu(e){return SN.has(e)}function cb(e){if(e.length===0)return Ft();const t=[...e].map(o=>o.codePointAt(0)),n=t.length;if(t[0]===45||t[n-1]===45||n>=4&&t[2]===45&&t[3]===45||wN(t[0]))return!1;let r=!1,s=!1,i=!1;for(let o=0;o<n;o++){const d=t[o];if(vN.has(d))return!1;(CN(d)||EN(d)||TN(d))&&(r=!0),AN(d)&&(s=!0),PN(d)&&(i=!0);const f=t[o-1],u=t[o+1];switch(d){case 183:if(f!==108||u!==108)return!1;break;case 885:if(u===void 0||!jN(u))return!1;break;case 1523:case 1524:if(f===void 0||!IN(f))return!1;break;case 8204:if(f===void 0||f<128&&!qu(f))return!1;break;case 8205:if(f===void 0||!qu(f))return!1;break}}return!(e.includes("・")&&!r||s&&i)}function NN(e){if(e.charCodeAt(0)===45||e.charCodeAt(e.length-1)===45||e.length>=4&&e.charCodeAt(2)===45&&e.charCodeAt(3)===45)return!1;for(let t=0;t<e.length;t++){const n=e.charCodeAt(t);if(!(n>=97&&n<=122||n>=65&&n<=90||n>=48&&n<=57||n===45))return!1}return!0}function lb(e){return e.toLowerCase().startsWith("xn--")}function db(e){try{const t=e.slice(4).toLowerCase();if(t.lastIndexOf("-")===0)return!1;const r=bN(t);return r?cb(r):!1}catch{return!1}}function ON(e){return e.length===0||e.length>63?!1:lb(e)?db(e):cb(e)}function RN(e){return e.length===0||e.length>63?!1:lb(e)?db(e):NN(e)}function ub(e){if(e.length===0||e.length>253||e.charCodeAt(e.length-1)===46)return!1;for(const t of e.split("."))if(!RN(t))return!1;return!0}const MN=/^(?!.*\.\.)[\p{L}\p{N}!#$%&'*+/=?^_`{|}~-]+(?:\.[\p{L}\p{N}!#$%&'*+/=?^_`{|}~-]+)*@[\p{L}\p{N}](?:[\p{L}\p{N}-]{0,61}[\p{L}\p{N}])?(?:\.[\p{L}\p{N}](?:[\p{L}\p{N}-]{0,61}[\p{L}\p{N}])?)*$/iu;function pb(e){return MN.test(e)}function fb(e){if(e.length===0||e.includes(" "))return!1;const t=e.normalize("NFC").replace(/[\u002E\u3002\uFF0E\uFF61]/g,".");if(t.length>253)return!1;for(const n of t.split("."))if(!ON(n))return!1;return!0}function mb(e,t,n){let r=0,s=0,i=0,o=0;for(let d=t;d<n;d++){const f=e.charCodeAt(d);if(f===46){if(i===0||s>255||o===48&&i>1)return!1;r++,s=0,i=0,o=0}else if(f>=48&&f<=57)i===0&&(o=f),s=s*10+(f-48),i++;else return!1}return r===3&&i>0&&s<=255&&!(o===48&&i>1)}function hb(e){return mb(e,0,e.length)}function $N(e){return e>=48&&e<=57||e>=65&&e<=70||e>=97&&e<=102}function gb(e){const t=e.length;if(t===0)return!1;let n=0,r=!1,s=0;if(e.charCodeAt(0)===58&&e.charCodeAt(1)===58){if(t===2)return!0;r=!0,s=2}for(;s<t;){let i=0;const o=s;for(;s<t&&$N(e.charCodeAt(s));)s++,i++;if(i===0)return!1;const d=e.charCodeAt(s);if(d===46){if(!mb(e,o,t))return!1;n+=2,s=t;break}if(i>4)return!1;if(n++,s===t)break;if(d!==58)return!1;if(s++,e.charCodeAt(s)===58){if(r||e.charCodeAt(s+1)===58)return!1;if(r=!0,s++,s===t)break}}return r?n<=7:n===8}function zu(e){try{return new URL(e,"http://example.com"),!0}catch{return!1}}function bb(e){if(e.includes(" ")||e.includes("\\")||/[\x00-\x1F\x7F]/.test(e)||/%(?![0-9a-fA-F]{2})/.test(e))return!1;if(e==="")return!0;const t=e.indexOf(":");return t>0&&/^[a-zA-Z][a-zA-Z0-9+\-.]*$/.test(e.substring(0,t))?zu(e):e.match(/^([a-zA-Z][a-zA-Z0-9+\-.]*)(\/\/)/)&&t===-1?!1:zu(e)}function kb(e){try{return new URL(e),!0}catch{return!1}}const FN=/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i;function xb(e){return FN.test(e)}const LN=/^(?:\/(?:[^~/]|~0|~1)*)*$/;function yb(e){return LN.test(e)}function wb(e){if(e.length===0)return!1;try{return new RegExp(e),!0}catch{return!1}}const DN=/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/;function vb(e){return DN.test(e)}const _N=/^(?!.*[^\x00-\x7F])(?!.*\\)(?:(?:[a-z][a-z0-9+\-.]*:)?(?:\/\/[^\s[\]{}<>^`|]*)?|[^\s[\]{}<>^`|]*)(?:\?[^\s[\]{}<>^`|]*)?(?:#[^\s[\]{}<>^`|]*)?$/i;function Sb(e){return _N.test(e)}const UN=/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i;function jb(e){return UN.test(e)}function Ib(e){return e>=97&&e<=122||e>=65&&e<=90}function Cb(e){return Ib(e)||e>=48&&e<=57}function vo(e){return e>=48&&e<=57||e>=65&&e<=70||e>=97&&e<=102}function BN(e){return Cb(e)||e===43||e===45||e===46}function Tc(e){return Cb(e)||e===45||e===46||e===95||e===126}function Ac(e){return e===33||e===36||e===38||e===39||e===40||e===41||e===42||e===43||e===44||e===59||e===61}function HN(e){return Tc(e)||Ac(e)||e===58||e===64}function Eb(e){const t=e.length;if(t===0||!Ib(e.charCodeAt(0)))return!1;let n=1;for(;n<t;){const r=e.charCodeAt(n);if(r===58)break;if(!BN(r))return!1;n++}if(e.charCodeAt(n)!==58)return!1;if(n++,e.charCodeAt(n)===47&&e.charCodeAt(n+1)===47){n+=2;const r=n;let s=-1;for(let i=n;i<t;i++){const o=e.charCodeAt(i);if(o===64){s=i;break}if(o===47||o===63||o===35)break}if(s!==-1){for(let i=r;i<s;i++){const o=e.charCodeAt(i);if(o===91||o===93)return!1;if(o===37){if(i+2>=s||!vo(e.charCodeAt(i+1))||!vo(e.charCodeAt(i+2)))return!1;i+=2}else if(!Tc(o)&&!Ac(o)&&o!==58)return!1}n=s+1}if(e.charCodeAt(n)===91){for(n++;n<t&&e.charCodeAt(n)!==93;)n++;if(e.charCodeAt(n)!==93)return!1;n++}else for(;n<t;){const i=e.charCodeAt(n);if(i===47||i===63||i===35||i===58)break;if(i<128&&!Tc(i)&&!Ac(i))return!1;n++}if(e.charCodeAt(n)===58)for(n++;n<t;){const i=e.charCodeAt(n);if(i===47||i===63||i===35)break;if(i<48||i>57)return!1;n++}}for(;n<t;){const r=e.charCodeAt(n);if(r===37){if(n+2>=t||!vo(e.charCodeAt(n+1))||!vo(e.charCodeAt(n+2)))return!1;n+=2}else{if(r>127)return!1;if(!(HN(r)||r===47||r===63||r===35))return!1}n++}return!0}const qN=/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu;function Tb(e){return qN.test(e)}const zN=/^[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i;function Ab(e){return zN.test(e)}const ze=new Map;function Pb(){ze.clear()}function KN(){return[...ze.entries()]}function GN(e,t){ze.set(e,t)}function VN(e){return ze.has(e)}function WN(e){return ze.get(e)}function Nb(e,t){var n;return((n=ze.get(e))==null?void 0:n(t))??!0}function Ob(){Pb(),ze.set("date-time",ib),ze.set("date",pd),ze.set("duration",ob),ze.set("email",ab),ze.set("hostname",ub),ze.set("idn-email",pb),ze.set("idn-hostname",fb),ze.set("ipv4",hb),ze.set("ipv6",gb),ze.set("iri-reference",bb),ze.set("iri",kb),ze.set("json-pointer-uri-fragment",xb),ze.set("json-pointer",yb),ze.set("regex",wb),ze.set("relative-json-pointer",vb),ze.set("time",fd),ze.set("uri-reference",Sb),ze.set("uri-template",jb),ze.set("uri",Eb),ze.set("url",Tb),ze.set("uuid",Ab)}Ob();const JN=Object.freeze(Object.defineProperty({__proto__:null,Clear:Pb,Entries:KN,Get:WN,Has:VN,IsDate:pd,IsDateTime:ib,IsDuration:ob,IsEmail:ab,IsHostname:ub,IsIPv4:hb,IsIPv6:gb,IsIdnEmail:pb,IsIdnHostname:fb,IsIri:kb,IsIriReference:bb,IsJsonPointer:yb,IsJsonPointerUriFragment:xb,IsRegex:wb,IsRelativeJsonPointer:vb,IsTime:fd,IsUri:Eb,IsUriReference:Sb,IsUriTemplate:jb,IsUrl:Tb,IsUuid:Ab,Reset:Ob,Set:GN,Test:Nb},Symbol.toStringTag,{value:"Module"}));function Rb(e,t,n,r){return Ve(ke("Format","Test"),[V(n.format),r])}function md(e,t,n,r){return Nb(n.format,r)}function Mb(e,t,n,r,s,i){return md(e,t,s,i)||t.AddError({keyword:"format",schemaPath:n,instancePath:r,params:{format:s.format}})}function $b(e,t,n,r){const s=Na(n)?n.then:!0,i=Sa(n)?n.else:!0;return Fw(ct(e,t,n.if,r),ct(e,t,s,r),ct(e,t,i,r))}function Fb(e,t,n,r){const s=Na(n)?n.then:!0,i=Sa(n)?n.else:!0;return lt(e,t,n.if,r)?lt(e,t,s,r):lt(e,t,i,r)}function Lb(e,t,n,r,s,i){const o=Na(s)?s.then:!0,d=Sa(s)?s.else:!0,f=new Vn,u=At(e,f,`${n}/if`,r,s.if,i)?At(e,f,`${n}/then`,r,o,i)||t.AddError({keyword:"if",schemaPath:n,instancePath:r,params:{failingKeyword:"then"}}):At(e,t,`${n}/else`,r,d,i)||t.AddError({keyword:"if",schemaPath:n,instancePath:r,params:{failingKeyword:"else"}});return u&&t.Merge([f]),u}function QN(e,t,n,r){return Tt(n.items.map((s,i)=>{const o=rs(ke(r,"length"),V(i)),d=Ln(e,t,s,`${r}[${i}]`),f=t.AddIndex(V(i));return Ge(o,Ct(d,f))}))}function YN(e,t,n,r){return Tt(n.items.map((s,i)=>{const o=rs(ke(r,"length"),V(i)),d=Ln(e,t,s,`${r}[${i}]`);return Ge(o,d)}))}function ZN(e,t,n,r){return t.UseUnevaluated()?QN(e,t,n,r):YN(e,t,n,r)}function XN(e,t,n,r){return ht(n.items,0,(s,i)=>ir(r.length,i)||Rr(e,t,s,r[i])&&t.AddIndex(i))}function eO(e,t,n,r,s,i){return Pt(s.items,0,(o,d)=>{const f=`${n}/items/${d}`,u=`${r}/${d}`;return ir(i.length,d)||Mr(e,t,f,u,o,i[d])&&t.AddIndex(d)})}function tO(e,t,n,r){const s=dr(n)?n.prefixItems.length:0,i=Ln(e,t,n.items,"element"),o=t.AddIndex("index");return Hn(r,V(s),["element","index"],Ct(i,o))}function nO(e,t,n,r){const s=dr(n)?n.prefixItems.length:0,i=Ln(e,t,n.items,"element");return Hn(r,V(s),["element","index"],i)}function rO(e,t,n,r){return t.UseUnevaluated()?tO(e,t,n,r):nO(e,t,n,r)}function sO(e,t,n,r){const s=dr(n)?n.prefixItems.length:0;return ht(r,s,(i,o)=>Rr(e,t,n.items,i)&&t.AddIndex(o))}function iO(e,t,n,r,s,i){const o=dr(s)?s.prefixItems.length:0;return Pt(i,o,(d,f)=>{const u=`${n}/items`,m=`${r}/${f}`;return Mr(e,t,u,m,s.items,d)&&t.AddIndex(f)})}function Db(e,t,n,r){return Ca(n)?ZN(e,t,n,r):rO(e,t,n,r)}function _b(e,t,n,r){return Ca(n)?XN(e,t,n,r):sO(e,t,n,r)}function Ub(e,t,n,r,s,i){return Ca(s)?eO(e,t,n,r,s,i):iO(e,t,n,r,s,i)}function Bb(e){return ds(e)}function Hb(e,t,n,r){if(!Bb(n))return V(!0);const[s]=[dt()],i=na(r,[s,"_"],ct(e,t,n.contains,s));return rs(i,V(n.maxContains))}function hd(e,t,n,r){if(!Bb(n))return!0;const s=tl(r,i=>lt(e,t,n.contains,i));return ir(s,n.maxContains)}function qb(e,t,n,r,s,i){const o=us(s)?s.minContains:1;return hd(e,t,s,i)||t.AddError({keyword:"contains",schemaPath:n,instancePath:r,params:{minContains:o,maxContains:s.maxContains}})}function zb(e,t,n,r){return rs(r,V(n.maximum))}function gd(e,t,n,r){return ir(r,n.maximum)}function Kb(e,t,n,r,s,i){return gd(e,t,s,i)||t.AddError({keyword:"maximum",schemaPath:n,instancePath:r,params:{comparison:"<=",limit:s.maximum}})}function Gb(e,t,n,r){return rs(ke(r,"length"),V(n.maxItems))}function bd(e,t,n,r){return ir(r.length,n.maxItems)}function Vb(e,t,n,r,s,i){return bd(e,t,s,i)||t.AddError({keyword:"maxItems",schemaPath:n,instancePath:r,params:{limit:s.maxItems}})}function Wb(e,t,n,r){return Ow(r,V(n.maxLength))}function kd(e,t,n,r){return Xp(r,n.maxLength)}function Jb(e,t,n,r,s,i){return kd(e,t,s,i)||t.AddError({keyword:"maxLength",schemaPath:n,instancePath:r,params:{limit:s.maxLength}})}function Qb(e,t,n,r){return rs(ke(ss(r),"length"),V(n.maxProperties))}function xd(e,t,n,r){return ir(U(r).length,n.maxProperties)}function Yb(e,t,n,r,s,i){return xd(e,t,s,i)||t.AddError({keyword:"maxProperties",schemaPath:n,instancePath:r,params:{limit:s.maxProperties}})}function Zb(e){return ds(e)}function oO(e,t,n,r){const[s,i]=[dt(),dt()],o=na(r,[s,i],Ct(ct(e,t,n.contains,s),t.AddIndex(i)));return ji(o,V(n.minContains))}function aO(e,t,n,r){const[s]=[dt()],i=na(r,[s,"_"],ct(e,t,n.contains,s));return ji(i,V(n.minContains))}function Xb(e,t,n,r){return Zb(n)?t.UseUnevaluated()?oO(e,t,n,r):aO(e,t,n,r):V(!0)}function yd(e,t,n,r){if(!Zb(n))return!0;const s=tl(r,(i,o)=>lt(e,t,n.contains,i)&&t.AddIndex(o));return Rs(s,n.minContains)}function ek(e,t,n,r,s,i){return yd(e,t,s,i)||t.AddError({keyword:"contains",schemaPath:n,instancePath:r,params:{minContains:s.minContains}})}function tk(e,t,n,r){return ji(r,V(n.minimum))}function wd(e,t,n,r){return Rs(r,n.minimum)}function nk(e,t,n,r,s,i){return wd(e,t,s,i)||t.AddError({keyword:"minimum",schemaPath:n,instancePath:r,params:{comparison:">=",limit:s.minimum}})}function rk(e,t,n,r){return ji(ke(r,"length"),V(n.minItems))}function vd(e,t,n,r){return Rs(r.length,n.minItems)}function sk(e,t,n,r,s,i){return vd(e,t,s,i)||t.AddError({keyword:"minItems",schemaPath:n,instancePath:r,params:{limit:s.minItems}})}function ik(e,t,n,r){return Nw(r,V(n.minLength))}function Sd(e,t,n,r){return ef(r,n.minLength)}function ok(e,t,n,r,s,i){return Sd(e,t,s,i)||t.AddError({keyword:"minLength",schemaPath:n,instancePath:r,params:{limit:s.minLength}})}function ak(e,t,n,r){return ji(ke(ss(r),"length"),V(n.minProperties))}function jd(e,t,n,r){return Rs(U(r).length,n.minProperties)}function ck(e,t,n,r,s,i){return jd(e,t,s,i)||t.AddError({keyword:"minProperties",schemaPath:n,instancePath:r,params:{limit:s.minProperties}})}function lk(e,t,n,r){return Lw(r,V(n.multipleOf))}function Id(e,t,n,r){return Yp(r,n.multipleOf)}function dk(e,t,n,r,s,i){return Id(e,t,s,i)||t.AddError({keyword:"multipleOf",schemaPath:n,instancePath:r,params:{multipleOf:s.multipleOf}})}function cO(e,t,n,r){return no(e,t,[n.not],r,$t(Zt(ke("results","length"),V(1))))}function lO(e,t,n,r){return $t(ct(e,t,n.not,r))}function uk(e,t,n,r){return t.UseUnevaluated()?cO(e,t,n,r):lO(e,t,n,r)}function Cd(e,t,n,r){const s=new Gn;return!lt(e,s,n.not,r)&&t.Merge([s])}function pk(e,t,n,r,s,i){return Cd(e,t,s,i)||t.AddError({keyword:"not",schemaPath:n,instancePath:r,params:{}})}function dO(e,t,n,r){return no(e,t,n.oneOf,r,Zt(ke("results","length"),V(1)))}function uO(e,t,n,r){const[s]=[dt()],i=$w(n.oneOf.map(d=>ct(e,t,d,r))),o=na(i,[s,"_"],Zt(s,V(!0)));return Zt(o,V(1))}function fk(e,t,n,r){return t.UseUnevaluated()?dO(e,t,n,r):uO(e,t,n,r)}function mk(e,t,n,r){const s=n.oneOf.reduce((i,o)=>{const d=new Gn;return lt(e,d,o,r)?[...i,d]:i},[]);return g(s.length,1)&&t.Merge(s)}function hk(e,t,n,r,s,i){const o=[],d=[],f=s.oneOf.reduce((m,p,h)=>{const b=new Vn,k=`${n}/oneOf/${h}`,S=At(e,b,k,r,p,i);return S&&d.push(h),S||o.push(b),S?[...m,b]:m},[]),u=g(f.length,1)&&t.Merge(f);return!u&&g(d.length,0)&&o.forEach(m=>m.GetErrors().forEach(p=>t.AddError(p))),u||t.AddError({keyword:"oneOf",schemaPath:n,instancePath:r,params:{passingSchemas:d}})}function gk(e,t,n,r){const s=hs(pe(n.pattern)?new RegExp(n.pattern,"u"):n.pattern);return Ve(ke(s,"test"),[r])}function Ed(e,t,n,r){return(pe(n.pattern)?new RegExp(n.pattern,"u"):n.pattern).test(r)}function bk(e,t,n,r,s,i){return Ed(e,t,s,i)||t.AddError({keyword:"pattern",schemaPath:n,instancePath:r,params:{pattern:s.pattern}})}function kk(e,t,n,r){return Tt(it(n.patternProperties).map(([s,i])=>{const[o,d]=[dt(),dt()],f=hs(new RegExp(s,"u")),u=$t(Ve(ke(f,"test"),[o])),m=Ln(e,t,i,d),p=t.AddKey(o),h=t.UseUnevaluated()?Ge(u,Ct(m,p)):Ge(u,m);return Hn(lf(r),V(0),[`[${o}, ${d}]`,"_"],h)}))}function xk(e,t,n,r){return ht(it(n.patternProperties),0,([s,i])=>{const o=new RegExp(s,"u");return ht(it(r),0,([d,f])=>!o.test(d)||Rr(e,t,i,f)&&t.AddKey(d))})}function yk(e,t,n,r,s,i){return Pt(it(s.patternProperties),0,([o,d])=>{const f=`${n}/patternProperties/${o}`,u=new RegExp(o,"u");return Pt(it(i),0,([m,p])=>{const h=`${r}/${m}`;return!u.test(m)||Mr(e,t,f,h,d,p)&&t.AddKey(m)})})}function wk(e,t,n,r){return Tt(n.prefixItems.map((s,i)=>{const o=rs(ke(r,"length"),V(i)),d=Ln(e,t,s,`${r}[${i}]`),f=t.AddIndex(V(i)),u=t.UseUnevaluated()?Ct(d,f):d;return Ge(o,u)}))}function vk(e,t,n,r){return g(r.length,0)||ht(n.prefixItems,0,(s,i)=>ir(r.length,i)||Rr(e,t,s,r[i])&&t.AddIndex(i))}function Sk(e,t,n,r,s,i){return g(i.length,0)||Pt(s.prefixItems,0,(o,d)=>{const f=`${n}/prefixItems/${d}`,u=`${r}/${d}`;return ir(i.length,d)||Mr(e,t,f,u,o,i[d])&&t.AddIndex(d)})}function Td(e,t){return e.includes(t)||Ci().exactOptionalPropertyTypes}function pO(e,t){return uc(ke(e,t))}function jk(e,t){return Fe(e[t])}function Ik(e,t,n,r){const s=ur(n)?n.required:[],i=it(n.properties).map(([o,d])=>{const f=$t(Vr(r,V(o))),u=Ln(e,t,d,ke(r,o)),m=t.AddKey(V(o)),p=t.UseUnevaluated()?Ct(u,m):u,h=s.includes(o)?p:Ge(f,p);return Td(s,o)?h:Ge(pO(r,o),h)});return Tt(i)}function Ck(e,t,n,r){const s=ur(n)?n.required:[];return ht(it(n.properties),0,([o,d])=>{const f=!E(r,o)||Rr(e,t,d,r[o])&&t.AddKey(o);return Td(s,o)?f:jk(r,o)||f})}function Ek(e,t,n,r,s,i){const o=ur(s)?s.required:[];return Pt(it(s.properties),0,([f,u])=>{const m=`${n}/properties/${f}`,p=`${r}/${f}`,h=()=>!E(i,f)||Mr(e,t,m,p,u,i[f])&&t.AddKey(f);return Td(o,f)?h():jk(i,f)||h()})}function Tk(e,t,n,r){const[s,i]=[dt(),dt()];return Hn(ss(r),V(0),[s,i],ct(e,t,n.propertyNames,s))}function Ak(e,t,n,r){return ht(U(r),0,(s,i)=>lt(e,t,n.propertyNames,s))}function Pk(e,t,n,r,s,i){const o=[];return Pt(U(i),0,(f,u)=>{const m=`${r}/${f}`,p=`${n}/propertyNames`,h=new Vn,b=At(e,h,p,m,s.propertyNames,f);return b||o.push(f),b})||t.AddError({keyword:"propertyNames",schemaPath:n,instancePath:r,params:{propertyNames:o}})}function Nk(e,t,n,r){const s=e.RecursiveRef(n)??!1;return Js(e,t,s,r)}function Ok(e,t,n,r){const s=e.RecursiveRef(n)??!1;return _e(s)&<(e,t,s,r)}function Rk(e,t,n,r,s,i){const o=e.RecursiveRef(s)??!1;return _e(o)&&At(e,t,"#",r,o,i)}function fO(e,t,n,r){const s=xr(["context","value"],Js(e,t,n,"value")),i=xr(["context","value"],ra([tr("nextContext",ol("CheckContext",[])),tr("result",Ve(s,["nextContext","value"])),uf("result",t.Merge("[nextContext]")),sa("result")]));return Ve(i,["context",r])}function mO(e,t,n,r){return Js(e,t,n,r)}function Mk(e,t,n,r){const s=e.Ref(n)??!1;return t.UseUnevaluated()?fO(e,t,s,r):mO(e,t,s,r)}function $k(e,t,n,r){const s=e.Ref(n)??!1,i=new Gn,o=_e(s)&<(e,i,s,r);return o&&t.Merge([i]),o}function Fk(e,t,n,r,s,i){const o=e.Ref(s)??!1,d=new Vn,f=_e(o)&&At(e,d,"#",r,o,i);return f&&t.Merge([d]),f||d.GetErrors().forEach(u=>t.AddError(u)),f}function Lk(e,t,n,r){return Tt(n.required.map(s=>Vr(r,V(s))))}function Dk(e,t,n,r){return ht(n.required,0,s=>E(r,s))}function _k(e,t,n,r,s,i){const o=[];return Pt(s.required,0,f=>{const u=E(i,f);return u||o.push(f),u})||t.AddError({keyword:"required",schemaPath:n,instancePath:r,params:{requiredProperties:o}})}function Uk(e,t,n,r){return g(n,"object")?sf(r):g(n,"array")?$o(r):g(n,"boolean")?Iw(r):g(n,"integer")?Cw(r):g(n,"number")?rf(r):g(n,"null")?Ew(r):g(n,"string")?af(r):g(n,"bigint")?nf(r):g(n,"constructor")?Pw(r):g(n,"function")?Aw(r):g(n,"symbol")?Tw(r):g(n,"undefined")||g(n,"void")?uc(r):V(!0)}function Ad(e,t,n,r,s){return g(n,"object")?kn(s):g(n,"array")?z(s):g(n,"boolean")?xt(s):g(n,"integer")?Xc(s):g(n,"number")?Ie(s):g(n,"null")?Xt(s):g(n,"string")?pe(s):g(n,"bigint")?st(s):g(n,"constructor")?ta(s):g(n,"function")?Tn(s):g(n,"symbol")?el(s):g(n,"undefined")||g(n,"void")?Fe(s):!0}function hO(e,t,n,r){return al(n.map(s=>Uk(e,t,s,r)))}function Bk(e,t,n,r,s){return $s(n,i=>Ad(e,t,i,r,s))}function Hk(e,t,n,r){return z(n.type)?hO(e,t,n.type,r):Uk(e,t,n.type,r)}function qk(e,t,n,r){return z(n.type)?Bk(e,t,n.type,n,r):Ad(e,t,n.type,n,r)}function zk(e,t,n,r,s,i){return(z(s.type)?Bk(e,t,s.type,s,i):Ad(e,t,s.type,s,i))||t.AddError({keyword:"type",schemaPath:n,instancePath:r,params:{type:s.type}})}function Kk(e,t,n,r){const[s,i]=[dt(),dt()],o=Ve(ke("context","GetIndices"),[]),d=Ve(ke("indices","has"),[s]),f=ct(e,t,n.unevaluatedItems,i),u=Ve(ke("context","AddIndex"),[s]),m=Hn(r,V(0),[i,s],Ct(Ge(d,f),u));return Ve(xr(["context"],ra([tr("indices",o),sa(m)])),["context"])}function Gk(e,t,n,r){const s=t.GetIndices();return ht(r,0,(i,o)=>(s.has(o)||lt(e,t,n.unevaluatedItems,i))&&t.AddIndex(o))}function Vk(e,t,n,r,s,i){const o=t.GetIndices(),d=[];return Pt(i,0,(u,m)=>{const p=new Vn,h=(o.has(m)||At(e,p,n,r,s.unevaluatedItems,u))&&t.AddIndex(m);return h||d.push(m),h})||t.AddError({keyword:"unevaluatedItems",schemaPath:n,instancePath:r,params:{unevaluatedItems:d}})}function Wk(e,t,n,r){const[s,i]=[dt(),dt()],o=Ve(ke("context","GetKeys"),[]),d=Ve(ke("keys","has"),[s]),f=Ve(ke("context","AddKey"),[s]),u=ct(e,t,n.unevaluatedProperties,i),m=Hn(lf(r),V(0),[`[${s}, ${i}]`,"_"],Ge(d,Ct(u,f)));return Ve(xr(["context"],ra([tr("keys",o),sa(m)])),["context"])}function Jk(e,t,n,r){const s=t.GetKeys();return ht(it(r),0,([i,o])=>s.has(i)||lt(e,t,n.unevaluatedProperties,o)&&t.AddKey(i))}function Qk(e,t,n,r,s,i){const o=t.GetKeys(),d=[];return Pt(it(i),0,([u,m])=>{const p=new Vn,h=o.has(u)||At(e,p,n,r,s.unevaluatedProperties,m)&&t.AddKey(u);return h||d.push(u),h})||t.AddError({keyword:"unevaluatedProperties",schemaPath:n,instancePath:r,params:{unevaluatedProperties:d}})}function Pd(e){return!g(e.uniqueItems,!1)}function Yk(e,t,n,r){if(!Pd(n))return V(!0);const s=ke(ol("Set",[Ve(ke(r,"map"),[ke("Hashing","Hash")])]),"size"),i=ke(r,"length");return Zt(s,i)}function Zk(e,t,n,r){if(!Pd(n))return!0;const s=new Set(r.map(ia)).size,i=r.length;return g(s,i)}function Xk(e,t,n,r,s,i){if(!Pd(s))return!0;const o=new Set,d=i.reduce((u,m,p)=>{const h=ia(m);return o.has(h)?[...u,p]:(o.add(h),u)},[]);return g(d.length,0)||t.AddError({keyword:"uniqueItems",schemaPath:n,instancePath:r,params:{duplicateItems:d}})}function yi(e,t){return to(e)&&(z(e.type)&&ts(e.type.length,0)&&ht(e.type,0,n=>g(n,t))||g(e.type,t))}function gO(e){return yi(e,"object")}function bO(e){return un(e)&&(lr(e)||Ki(e)||Gi(e)||Vi(e)||ms(e)||fs(e)||eo(e)||Ks(e)||Zi(e)||ur(e)||Ws(e))}function kO(e){return yi(e,"array")}function xO(e){return un(e)&&(zi(e)||Nr(e)||ds(e)||Qi(e)||qs(e)||us(e)||ps(e)||dr(e)||Vs(e)||jr(e))}function yO(e){return yi(e,"string")}function wO(e){return un(e)&&(zs(e)||Yi(e)||Hs(e)||Gs(e))}function vO(e){return yi(e,"number")||yi(e,"bigint")}function SO(e){return un(e)&&(Or(e)||Ji(e)||Wi(e)||Pr(e)||Xi(e))}function Ln(e,t,n,r){return t.UseUnevaluated()?Ct(Ct(t.Push(),ct(e,t,n,r)),t.Pop()):ct(e,t,n,r)}function ct(e,t,n,r){e.Push(n);const s=[];if(qi(n))return Lg(e,t,n);if(to(n)&&s.push(Hk(e,t,n,r)),bO(n)){const o=[];ur(n)&&o.push(Lk(e,t,n,r)),lr(n)&&o.push(Tg(e,t,n,r)),Ki(n)&&o.push(zg(e,t,n,r)),Gi(n)&&o.push(Vg(e,t,n,r)),Vi(n)&&o.push(Qg(e,t,n,r)),fs(n)&&o.push(kk(e,t,n,r)),ms(n)&&o.push(Ik(e,t,n,r)),eo(n)&&o.push(Tk(e,t,n,r)),Ks(n)&&o.push(ak(e,t,n,r)),Zi(n)&&o.push(Qb(e,t,n,r));const d=Tt(o),f=Ge($t(sf(r)),d);s.push(gO(n)?d:f)}if(xO(n)){const o=[];zi(n)&&o.push(vg(e,t,n,r)),ds(n)&&o.push(Hg(e,t,n,r)),Nr(n)&&o.push(Db(e,t,n,r)),Qi(n)&&o.push(Hb(e,t,n,r)),qs(n)&&o.push(Gb(e,t,n,r)),us(n)&&o.push(Xb(e,t,n,r)),ps(n)&&o.push(rk(e,t,n,r)),dr(n)&&o.push(wk(e,t,n,r)),jr(n)&&o.push(Yk(e,t,n,r));const d=Tt(o),f=Ge($t($o(r)),d);s.push(kO(n)?d:f)}if(wO(n)){const o=[];Yi(n)&&o.push(Wb(e,t,n,r)),zs(n)&&o.push(ik(e,t,n,r)),Hs(n)&&o.push(Rb(e,t,n,r)),Gs(n)&&o.push(gk(e,t,n,r));const d=Tt(o),f=Ge($t(af(r)),d);s.push(yO(n)?d:f)}if(SO(n)){const o=[];Wi(n)&&o.push(tb(e,t,n,r)),Pr(n)&&o.push(rb(e,t,n,r)),Ji(n)&&o.push(zb(e,t,n,r)),Or(n)&&o.push(tk(e,t,n,r)),Xi(n)&&o.push(lk(e,t,n,r));const d=Tt(o),f=Ge($t(Ge(rf(r),nf(r))),d);s.push(vO(n)?d:f)}Pa(n)&&s.push(Mk(e,t,n,r)),Aa(n)&&s.push(Nk(e,t,n,r)),va(n)&&s.push(rN(e,t,n,r)),wa(n)&&s.push(_g(e,t,n,r)),ja(n)&&s.push(Xg(e,t,n,r)),Ia(n)&&s.push($b(e,t,n,r)),Ea(n)&&s.push(uk(e,t,n,r)),xa(n)&&s.push(Ng(e,t,n,r)),ya(n)&&s.push(Mg(e,t,n,r)),Ta(n)&&s.push(fk(e,t,n,r)),Vs(n)&&s.push(Ge($t($o(r)),Kk(e,t,n,r))),Ws(n)&&s.push(Ge($t(of(r)),Wk(e,t,n,r))),ka(n)&&s.push(xg(e,t,n,r));const i=Tt(s);return e.Pop(n),i}function Rr(e,t,n,r){return t.Push()&<(e,t,n,r)&&t.Pop()}function lt(e,t,n,r){e.Push(n);const s=qi(n)?od(e,t,n):(!to(n)||qk(e,t,n,r))&&(!(re(r)&&!z(r))||(!ur(n)||Dk(e,t,n,r))&&(!lr(n)||Ag(e,t,n,r))&&(!Ki(n)||Kg(e,t,n,r))&&(!Gi(n)||Wg(e,t,n,r))&&(!Vi(n)||Yg(e,t,n,r))&&(!fs(n)||xk(e,t,n,r))&&(!ms(n)||Ck(e,t,n,r))&&(!eo(n)||Ak(e,t,n,r))&&(!Ks(n)||jd(e,t,n,r))&&(!Zi(n)||xd(e,t,n,r)))&&(!z(r)||(!zi(n)||Sg(e,t,n,r))&&(!ds(n)||cd(e,t,n,r))&&(!Nr(n)||_b(e,t,n,r))&&(!Qi(n)||hd(e,t,n,r))&&(!qs(n)||bd(e,t,n,r))&&(!us(n)||yd(e,t,n,r))&&(!ps(n)||vd(e,t,n,r))&&(!dr(n)||vk(e,t,n,r))&&(!jr(n)||Zk(e,t,n,r)))&&(!pe(r)||(!Yi(n)||kd(e,t,n,r))&&(!zs(n)||Sd(e,t,n,r))&&(!Hs(n)||md(e,t,n,r))&&(!Gs(n)||Ed(e,t,n,r)))&&(!(Ie(r)||st(r))||(!Wi(n)||dd(e,t,n,r))&&(!Pr(n)||ud(e,t,n,r))&&(!Ji(n)||gd(e,t,n,r))&&(!Or(n)||wd(e,t,n,r))&&(!Xi(n)||Id(e,t,n,r)))&&(!Pa(n)||$k(e,t,n,r))&&(!Aa(n)||Ok(e,t,n,r))&&(!va(n)||sN(e,t,n,r))&&(!wa(n)||ad(e,t,n,r))&&(!ja(n)||ld(e,t,n,r))&&(!Ia(n)||Fb(e,t,n,r))&&(!Ea(n)||Cd(e,t,n,r))&&(!xa(n)||Og(e,t,n,r))&&(!ya(n)||$g(e,t,n,r))&&(!Ta(n)||mk(e,t,n,r))&&(!Vs(n)||!z(r)||Gk(e,t,n,r))&&(!Ws(n)||!re(r)||Jk(e,t,n,r))&&(!ka(n)||yg(e,t,n,r));return e.Pop(n),s}function Mr(e,t,n,r,s,i){return t.Push()&&At(e,t,n,r,s,i)&&t.Pop()}function At(e,t,n,r,s,i){e.Push(s);const o=qi(s)?Dg(e,t,n,r,s):!!(+(!to(s)||zk(e,t,n,r,s,i))&+(!(re(i)&&!z(i))||!!(+(!ur(s)||_k(e,t,n,r,s,i))&+(!lr(s)||Pg(e,t,n,r,s,i))&+(!Ki(s)||Gg(e,t,n,r,s,i))&+(!Gi(s)||Jg(e,t,n,r,s,i))&+(!Vi(s)||Zg(e,t,n,r,s,i))&+(!fs(s)||yk(e,t,n,r,s,i))&+(!ms(s)||Ek(e,t,n,r,s,i))&+(!eo(s)||Pk(e,t,n,r,s,i))&+(!Ks(s)||ck(e,t,n,r,s,i))&+(!Zi(s)||Yb(e,t,n,r,s,i))))&+(!z(i)||!!(+(!zi(s)||jg(e,t,n,r,s,i))&+(!ds(s)||qg(e,t,n,r,s,i))&+(!Nr(s)||Ub(e,t,n,r,s,i))&+(!Qi(s)||qb(e,t,n,r,s,i))&+(!qs(s)||Vb(e,t,n,r,s,i))&+(!us(s)||ek(e,t,n,r,s,i))&+(!ps(s)||sk(e,t,n,r,s,i))&+(!dr(s)||Sk(e,t,n,r,s,i))&+(!jr(s)||Xk(e,t,n,r,s,i))))&+(!pe(i)||!!(+(!Yi(s)||Jb(e,t,n,r,s,i))&+(!zs(s)||ok(e,t,n,r,s,i))&+(!Hs(s)||Mb(e,t,n,r,s,i))&+(!Gs(s)||bk(e,t,n,r,s,i))))&+(!(Ie(i)||st(i))||!!(+(!Wi(s)||nb(e,t,n,r,s,i))&+(!Pr(s)||sb(e,t,n,r,s,i))&+(!Ji(s)||Kb(e,t,n,r,s,i))&+(!Or(s)||nk(e,t,n,r,s,i))&+(!Xi(s)||dk(e,t,n,r,s,i))))&+(!Pa(s)||Fk(e,t,n,r,s,i))&+(!Aa(s)||Rk(e,t,n,r,s,i))&+(!va(s)||iN(e,t,n,r,s,i))&+(!wa(s)||Ug(e,t,n,r,s,i))&+(!ja(s)||eb(e,t,n,r,s,i))&+(!Ia(s)||Lb(e,t,n,r,s,i))&+(!Ea(s)||pk(e,t,n,r,s,i))&+(!xa(s)||Rg(e,t,n,r,s,i))&+(!ya(s)||Fg(e,t,n,r,s,i))&+(!Ta(s)||hk(e,t,n,r,s,i))&+(!Vs(s)||!z(i)||Vk(e,t,n,r,s,i))&+(!Ws(s)||!re(i)||Qk(e,t,n,r,s,i)))&&(!ka(s)||wg(e,t,n,r,s,i));return e.Pop(s),o}const ex=[0],Ao=new Map,fi=new Map;function jO(){return`${ex[0]++}`}function IO(e,t){Ao.has(e)||Ao.set(e,new Map);const n=Ao.get(e);if(n.has(t))return n.get(t);const r=jO();return n.set(t,r),r}function CO(e,t,n,r){return e.UseUnevaluated()?Ve(`check_${n}`,["context",r]):Ve(`check_${n}`,[r])}function EO(e,t,n,r){const s=ct(e,t,n,"value");return t.UseUnevaluated()?tr(`check_${r}`,xr(["context","value"],s)):tr(`check_${r}`,xr(["value"],s))}function tx(){ex[0]=0,Ao.clear(),fi.clear()}function nx(){return[...fi.values()]}function Js(e,t,n,r){const s=IO(n,e.BaseURL().href),i=CO(t,n,s,r);return fi.has(s)||(fi.set(s,""),fi.set(s,EO(e,t,n,s))),i}function rx(e){if(e.length===0)throw Error("Cannot set root")}function sx(e){if(!re(e))throw Error("Cannot set value")}function TO(e){if(er(e))throw Error("Pointer contains unsafe property key")}function ix(e){for(const t of e)TO(t)}function AO(e){return/^(0|[1-9]\d*)$/.test(e)}function ox(e){return[e.slice(0,e.length-1),e.slice(e.length-1)[0]]}function PO(e,t){return re(t)&&E(t,e)}function NO(e,t){return re(t)&&!er(e)?t[e]:void 0}function Nd(e,t){return e.reduce((n,r)=>NO(r,n),t)}function ro(e){if(g(e.length,0))return[];const t=e.split("/").map(n=>n.replace(/~1/g,"/").replace(/~0/g,"~"));return t.length>0&&t[0]===""?t.slice(1):t}function OO(e,t){let n=e;return ro(t).every(r=>PO(r,n)?(n=n[r],!0):!1)}function ax(e,t){const n=ro(t);return Nd(n,e)}function Pc(e,t,n){const r=ro(t);rx(r),ix(r);const[s,i]=ox(r),o=Nd(s,e);return sx(o),o[i]=n,e}function cx(e,t){const n=ro(t);rx(n),ix(n);const[r,s]=ox(n),i=Nd(r,e);return sx(i),z(i)&&AO(s)?i.splice(+s,1):delete i[s],e}const lx=Object.freeze(Object.defineProperty({__proto__:null,Delete:cx,Get:ax,Has:OO,Indices:ro,Set:Pc},Symbol.toStringTag,{value:"Module"}));function RO(e,t,n){if(e.$id===n.hash)return e;const r=new URL(e.$id,t.href),s=new URL(n.href,t.href);if(g(r.pathname,s.pathname))return n.hash.startsWith("#")?dx(e,t,n):e}function MO(e,t,n){const r=new URL(`#${e.$anchor}`,t.href),s=new URL(n.href,t.href);return g(r.href,s.href)?e:void 0}function $O(e,t,n){const r=new URL(`#${e.$dynamicAnchor}`,t.href),s=new URL(n.href,t.href);return g(r.href,s.href)?e:void 0}function dx(e,t,n){if(n.href.endsWith("#"))return e;if(!n.hash.startsWith("#"))return;const r=decodeURIComponent(n.hash.slice(1));if(r.startsWith("/"))return ax(e,r)}function FO(e,t,n){if(Sr(e)){const r=RO(e,t,n);if(!Fe(r))return r}if(qo(e)){const r=MO(e,t,n);if(!Fe(r))return r}if(Yr(e)){const r=$O(e,t,n);if(!Fe(r))return r}return dx(e,t,n)}function LO(e,t,n){return e.reduce((r,s)=>{const i=Od(s,t,n);return Fe(i)?r:i},void 0)}function DO(e,t,n){return U(e).reduce((r,s)=>{const i=Od(e[s],t,n);return Fe(i)?r:i},void 0)}function Od(e,t,n){const r=un(e)&&Sr(e)?new URL(e.$id,t.href):t;if(un(e)){const s=FO(e,r,n);if(!Fe(s))return s}if(z(e))return LO(e,r,n);if(re(e))return DO(e,r,n)}function Zr(e,t){const n=new URL("http://unknown/"),r=Sr(e)?new URL(e.$id,n.href):n,s=new URL(t,r.href);return Od(e,r,s)}function ux(e,t,n,r){const s=n.$dynamicRef.startsWith("#")?Zr(t,n.$dynamicRef):Zr(e,n.$dynamicRef);return Fe(s)?void 0:!un(s)||!Yr(s)||new URL(n.$dynamicRef,"http://unknown/").hash.startsWith("#/")?s:r.find(d=>d.$dynamicAnchor===s.$dynamicAnchor)??s}const _O=Object.freeze(Object.defineProperty({__proto__:null,DynamicRef:ux,Ref:Zr},Symbol.toStringTag,{value:"Module"}));var Ts=function(e,t,n,r){if(n==="a"&&!r)throw new TypeError("Private accessor was defined without a getter");if(typeof t=="function"?e!==t||!r:!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return n==="m"?r:n==="a"?r.call(e):r?r.value:t.get(e)},br,px,fx,mx,hx;class so{constructor(t,n){br.add(this),this.context=t,this.schema=n,this.ids=[],this.anchors=[],this.recursiveAnchors=[],this.dynamicAnchors=[]}BaseURL(){return this.ids.reduce((t,n)=>new URL(n.$id,t),new URL("http://unknown"))}Base(){return this.ids[this.ids.length-1]??this.schema}Push(t){un(t)&&(Sr(t)&&(this.ids.push(t),Ts(this,br,"m",px).call(this,t)),qo(t)&&this.anchors.push(t),Eo(t)&&this.recursiveAnchors.push(t),Yr(t)&&this.dynamicAnchors.push(t))}Pop(t){un(t)&&(Sr(t)&&(this.ids.pop(),Ts(this,br,"m",fx).call(this,t)),qo(t)&&this.anchors.pop(),Eo(t)&&this.recursiveAnchors.pop(),Yr(t)&&this.dynamicAnchors.pop())}Ref(t){return Ts(this,br,"m",mx).call(this,t)??Ts(this,br,"m",hx).call(this,t)}RecursiveRef(t){return Eo(this.Base())?Zr(this.recursiveAnchors[0],t.$recursiveRef):Zr(this.Base(),t.$recursiveRef)}DynamicRef(t){const n=this.schema;return ux(n,this.Base(),t,this.dynamicAnchors)}}br=new WeakSet,px=function e(t,n=!0){if(!un(t))return;const r=t;if(!(!n&&Sr(r))){!n&&Yr(r)&&this.dynamicAnchors.push(r);for(const s of U(r))Ts(this,br,"m",e).call(this,r[s],!1)}},fx=function e(t,n=!0){if(!un(t))return;const r=t;if(!(!n&&Sr(r))){!n&&Yr(r)&&this.dynamicAnchors.pop();for(const s of U(r))Ts(this,br,"m",e).call(this,r[s],!1)}},mx=function(t){return E(this.context,t.$ref)?this.context[t.$ref]:void 0},hx=function(t){const n=this.schema;return t.$ref.startsWith("#")?Zr(this.Base(),t.$ref):Zr(n,t.$ref)};function UO(e){const t=e.Functions().join(`;
|
|
269
|
-
`),n=e.UseUnevaluated()?["const context = new CheckContext({}, {})",`return ${e.Entry()}`]:[`return ${e.Entry()}`];return`${t}; return (value) => { ${n.join("; ")} }`}function BO(e,t){return yf("CheckContext","Guard","Format","Hashing",e.External().identifier,t)(Gn,Mo,JN,Mv,e.External().variables)}function HO(e){const t=new so(e.Context(),e.Schema()),n=new Gn;return r=>lt(t,n,e.Schema(),r)}function qO(e,t){return xf()?BO(e,t):HO(e)}class gx{constructor(t,n,r){this.isAccelerated=t,this.code=n,this.check=r}IsAccelerated(){return this.isAccelerated}Code(){return this.code}Check(t){return this.check(t)}}class bx{constructor(t,n,r,s,i,o){this.context=t,this.schema=n,this.external=r,this.functions=s,this.entry=i,this.useUnevaluated=o}Context(){return this.context}Schema(){return this.schema}UseUnevaluated(){return this.useUnevaluated}External(){return this.external}Functions(){return this.functions}Entry(){return this.entry}Evaluate(){const t=UO(this),n=qO(this,t);return new gx(xf(),t,n)}}function kx(...e){const[t,n]=ut(e,{2:(f,u)=>[f,u],1:f=>[{},f]});bg(),tx();const r=new so(t,n),s=new gg(hg(t,n)),i=Js(r,s,n,"value"),o=nx(),d=kg();return new bx(t,n,d,o,i,s.UseUnevaluated())}function wi(...e){const[t,n,r]=ut(e,{3:(m,p,h)=>[m,p,h],2:(m,p)=>[{},m,p]}),s=Ci(),i=Lv(),o=[],d=new so(t,n),f=new rd(m=>{if(!Rs(o.length,s.maxErrors))return o.push({...m,message:i(m)})});return[At(d,f,"#","",n,r),o]}function Rd(...e){const[t,n,r]=ut(e,{3:(o,d,f)=>[o,d,f],2:(o,d)=>[{},o,d]}),s=new so(t,n),i=new Gn;return lt(s,i,n,r)}let Md=class{constructor(t,n,r){this.schema=t,this.value=n,this.errors=r}};function zO(...e){const[t,n,r]=ut(e,{3:(s,i,o)=>[s,i,o],2:(s,i)=>[{},s,i]});if(!Rd(t,n,r)){const[s,i]=wi(t,n,r);throw new Md(n,r,i)}return r}class xx{constructor(t,n){this.buildResult=kx(t,n),this.evaluateResult=this.buildResult.Evaluate()}IsAccelerated(){return this.evaluateResult.IsAccelerated()}Schema(){return this.buildResult.Schema()}Check(t){return this.evaluateResult.Check(t)}Parse(t){if(this.evaluateResult.Check(t))return t;const[n,r]=wi(this.buildResult.Context(),this.buildResult.Schema(),t);throw new Md(this.buildResult.Schema(),t,r)}Errors(t){return wi(this.buildResult.Context(),this.buildResult.Schema(),t)}}function KO(...e){const[t,n]=ut(e,{2:(r,s)=>[r,s],1:r=>[{},r]});return new xx(t,n)}const GO=Object.freeze(Object.defineProperty({__proto__:null,AccumulatedErrorContext:Vn,Build:kx,BuildAdditionalItems:vg,BuildAdditionalProperties:Tg,BuildAdditionalPropertiesFast:Cg,BuildAdditionalPropertiesStandard:Eg,BuildAllOf:Ng,BuildAnyOf:Mg,BuildConst:_g,BuildContains:Hg,BuildContext:gg,BuildDependencies:zg,BuildDependentRequired:Vg,BuildDependentSchemas:Qg,BuildEnum:Xg,BuildExclusiveMaximum:tb,BuildExclusiveMinimum:rb,BuildFormat:Rb,BuildIf:$b,BuildItems:Db,BuildMaxContains:Hb,BuildMaxItems:Gb,BuildMaxLength:Wb,BuildMaxProperties:Qb,BuildMaximum:zb,BuildMinContains:Xb,BuildMinItems:rk,BuildMinLength:ik,BuildMinProperties:ak,BuildMinimum:tk,BuildMultipleOf:lk,BuildNot:uk,BuildOneOf:fk,BuildPattern:gk,BuildPatternProperties:kk,BuildPrefixItems:wk,BuildProperties:Ik,BuildPropertyNames:Tk,BuildRecursiveRef:Nk,BuildRef:Mk,BuildRefine:xg,BuildRequired:Lk,BuildResult:bx,BuildSchema:ct,BuildSchemaBoolean:Lg,BuildSchemaPushStack:Ln,BuildType:Hk,BuildUnevaluatedItems:Kk,BuildUnevaluatedProperties:Wk,BuildUniqueItems:Yk,CanAdditionalPropertiesFast:Ig,Check:Rd,CheckAdditionalItems:Sg,CheckAdditionalProperties:Ag,CheckAllOf:Og,CheckAnyOf:$g,CheckConst:ad,CheckContains:cd,CheckContext:Gn,CheckDependencies:Kg,CheckDependentRequired:Wg,CheckDependentSchemas:Yg,CheckEnum:ld,CheckExclusiveMaximum:dd,CheckExclusiveMinimum:ud,CheckFormat:md,CheckIf:Fb,CheckItems:_b,CheckMaxContains:hd,CheckMaxItems:bd,CheckMaxLength:kd,CheckMaxProperties:xd,CheckMaximum:gd,CheckMinContains:yd,CheckMinItems:vd,CheckMinLength:Sd,CheckMinProperties:jd,CheckMinimum:wd,CheckMultipleOf:Id,CheckNot:Cd,CheckOneOf:mk,CheckPattern:Ed,CheckPatternProperties:xk,CheckPrefixItems:vk,CheckProperties:Ck,CheckPropertyNames:Ak,CheckRecursiveRef:Ok,CheckRef:$k,CheckRefine:yg,CheckRequired:Dk,CheckSchema:lt,CheckSchemaBoolean:od,CheckSchemaPushStack:Rr,CheckType:qk,CheckUnevaluatedItems:Gk,CheckUnevaluatedProperties:Jk,CheckUniqueItems:Zk,Compile:KO,CreateFunction:Js,CreateVariable:hs,ErrorAdditionalItems:jg,ErrorAdditionalProperties:Pg,ErrorAllOf:Rg,ErrorAnyOf:Fg,ErrorConst:Ug,ErrorContains:qg,ErrorContext:rd,ErrorDependencies:Gg,ErrorDependentRequired:Jg,ErrorDependentSchemas:Zg,ErrorEnum:eb,ErrorExclusiveMaximum:nb,ErrorExclusiveMinimum:sb,ErrorFormat:Mb,ErrorIf:Lb,ErrorItems:Ub,ErrorMaxContains:qb,ErrorMaxItems:Vb,ErrorMaxLength:Jb,ErrorMaxProperties:Yb,ErrorMaximum:Kb,ErrorMinContains:ek,ErrorMinItems:sk,ErrorMinLength:ok,ErrorMinProperties:ck,ErrorMinimum:nk,ErrorMultipleOf:dk,ErrorNot:pk,ErrorOneOf:hk,ErrorPattern:bk,ErrorPatternProperties:yk,ErrorPrefixItems:Sk,ErrorProperties:Ek,ErrorPropertyNames:Pk,ErrorRecursiveRef:Rk,ErrorRef:Fk,ErrorRefine:wg,ErrorRequired:_k,ErrorSchema:At,ErrorSchemaBoolean:Dg,ErrorSchemaPushStack:Mr,ErrorType:zk,ErrorUnevaluatedItems:Vk,ErrorUnevaluatedProperties:Qk,ErrorUniqueItems:Xk,Errors:wi,EvaluateResult:gx,GetExternal:kg,GetFunctions:nx,HasUnevaluated:hg,IsAdditionalItems:zi,IsAdditionalProperties:lr,IsAllOf:xa,IsAnchor:qo,IsAnyOf:ya,IsConst:wa,IsContains:ds,IsContentEncoding:BP,IsContentMediaType:HP,IsDefault:Ar,IsDefs:qP,IsDependencies:Ki,IsDependentRequired:Gi,IsDependentSchemas:Vi,IsDynamicAnchor:Yr,IsDynamicRef:va,IsElse:Sa,IsEnum:ja,IsExclusiveMaximum:Wi,IsExclusiveMinimum:Pr,IsFormat:Hs,IsId:Sr,IsIf:Ia,IsItems:Nr,IsItemsSized:Ca,IsItemsUnsized:zP,IsMaxContains:Qi,IsMaxItems:qs,IsMaxLength:Yi,IsMaxProperties:Zi,IsMaximum:Ji,IsMinContains:us,IsMinItems:ps,IsMinLength:zs,IsMinProperties:Ks,IsMinimum:Or,IsMultipleOf:Xi,IsNot:Ea,IsOneOf:Ta,IsPattern:Gs,IsPatternProperties:fs,IsPrefixItems:dr,IsProperties:ms,IsPropertyNames:eo,IsRecursiveAnchor:mg,IsRecursiveAnchorTrue:Eo,IsRecursiveRef:Aa,IsRef:Pa,IsRefine:ka,IsRequired:ur,IsSchema:_e,IsSchemaBoolean:qi,IsSchemaObject:un,IsThen:Na,IsType:to,IsUnevaluatedItems:Vs,IsUnevaluatedProperties:Ws,IsUniqueItems:jr,Parse:zO,ParseError:Md,Pointer:lx,Reducer:no,ResetExternal:bg,ResetFunctions:tx,Resolve:_O,Stack:so,Validator:xx},Symbol.toStringTag,{value:"Module"}));function ot(...e){const[t,n,r]=ut(e,{3:(s,i,o)=>[s,i,o],2:(s,i)=>[{},s,i]});return Rd(t,n,r)}function io(...e){const[t,n,r]=ut(e,{3:(o,d,f)=>[o,d,f],2:(o,d)=>[{},o,d]}),[s,i]=wi(t,n,r);return i}class Oa extends Error{constructor(t,n,r){super(t),Object.defineProperty(this,"cause",{value:{source:t,errors:r,value:n},writable:!1,configurable:!1,enumerable:!1})}}function yx(...e){const[t,n,r]=ut(e,{3:(i,o,d)=>[i,o,d],2:(i,o)=>[{},i,o]});if(!ot(t,n,r))throw new Oa("Assert",r,io(t,n,r))}function VO(e,t,n){return z(n)?n.map(r=>Nn(e,t.items,r)):n}function WO(e,t,n){return Nn({...e,...t.$defs},gn(t.$ref),n)}function JO(e,t){const n=E(t,"unevaluatedProperties")?{additionalProperties:t.unevaluatedProperties}:{},r=Bs(e,t),s=Kn(r);return Ue(s)?lg(s,n):s}function QO(e,t,n){const r=JO(e,t);return Nn(e,r,n)}function wx(e){return E(e,"additionalProperties")?e.additionalProperties:void 0}function YO(e,t,n){if(!re(n)||z(n))return n;const r=wx(t);for(const s of U(n)){if(E(t.properties,s)){n[s]=Nn(e,t.properties[s],n[s]);continue}if(xt(r)&&g(r,!0)||an(r)&&ot(e,r,n[s])){n[s]=Nn(e,r,n[s]);continue}delete n[s]}return n}function ZO(e,t,n){if(!re(n))return n;const r=wx(t),[s,i]=[new RegExp(jn(t)),Vt(t)];for(const o of U(n)){if(s.test(o)){n[o]=Nn(e,i,n[o]);continue}if(xt(r)&&g(r,!0)||an(r)&&ot(e,r,n[o])){n[o]=Nn(e,r,n[o]);continue}delete n[o]}return n}function XO(e,t,n){return E(e,t.$ref)?Nn(e,e[t.$ref],n):n}function eR(e,t,n){if(!z(n))return n;const r=Math.min(n.length,t.items.length);for(let s=0;s<r;s++)n[s]=Nn(e,t.items[s],n[s]);return ts(n.length,r)?n.slice(0,r):n}function zt(e){return cl(e)}function tR(e,t,n){for(const r of t.anyOf){const s=Nn(e,r,zt(n));if(ot(e,r,s))return s}return n}function Nn(e,t,n){return gt(t)?VO(e,t,n):Gt(t)?WO(e,t,n):Be(t)?QO(e,t,n):Ue(t)?YO(e,t,n):Ot(t)?ZO(e,t,n):vt(t)?XO(e,t,n):at(t)?eR(e,t,n):fe(t)?tR(e,t,n):n}function nR(e,t){for(const n of Mo.Keys(e))Mo.HasPropertyKey(t,n)||(t[n]=e[n]);return t}function rR(e){const t={};for(const n of Mo.Keys(e))t[n]=vi(e[n]);return t}function sR(e){return Nc(_P(e))}function Nc(e){return e.map(t=>vi(t))}function vi(e){const t=gt(e)?Ir(vi(e.items),ul(e)):Be(e)?Bn(Nc(e.allOf)):fe(e)?Je(sR(e.anyOf)):Ue(e)?$e(rR(e.properties)):Ot(e)?yl(da(e),vi(Vt(e))):at(e)?Sn(Nc(e.items)):e;return nR(e,t)}function $d(e){return vi(e)}function oo(...e){const[t,n,r]=ut(e,{3:(i,o,d)=>[i,o,d],2:(i,o)=>[{},i,o]}),s=$d(n);return Nn(t,s,r)}function mn(e){return re(e)&&E(e,"value")}function ne(e){return{value:e}}function iR(e){return z(e)?ne(e):ne([e])}function oR(e){return g(e,!0)?ne(BigInt(1)):ne(BigInt(0))}const aR=/^-?(0|[1-9]\d*)n$/,cR=/^-?(0|[1-9]\d*)\.\d+$/,lR=/^-?(0|[1-9]\d*)$/;function dR(e){return aR.test(e)}function uR(e){return cR.test(e)}function pR(e){return lR.test(e)}function fR(e){const t=e.toLowerCase();return dR(e)?ne(BigInt(e.slice(0,e.length-1))):uR(e)?ne(BigInt(e.split(".")[0])):pR(e)?ne(BigInt(e)):g(t,"false")?ne(BigInt(0)):g(t,"true")?ne(BigInt(1)):void 0}function Fd(e){return st(e)?ne(e):xt(e)?oR(e):Ie(e)?ne(BigInt(Math.trunc(e))):Xt(e)?ne(BigInt(0)):pe(e)?fR(e):Fe(e)?ne(BigInt(0)):void 0}function mR(e){return g(e,BigInt(0))?ne(!1):g(e,BigInt(1))?ne(!0):void 0}function hR(e){return g(e,0)?ne(!1):g(e,1)?ne(!0):void 0}function gR(e){return g(e.toLowerCase(),"false")?ne(!1):g(e.toLowerCase(),"true")?ne(!0):g(e,"0")?ne(!1):g(e,"1")?ne(!0):void 0}function vx(e){return st(e)?mR(e):xt(e)?ne(e):Ie(e)?hR(e):Xt(e)?ne(!1):pe(e)?gR(e):Fe(e)?ne(!1):void 0}function bR(e){return g(e,BigInt(0))?ne(null):void 0}function kR(e){return g(e,!1)?ne(null):void 0}function xR(e){return g(e,0)?ne(null):void 0}function yR(e){const t=e.toLowerCase();return g(t,"undefined")||g(t,"null")||g(e,"")||g(e,"0")?ne(null):void 0}function wR(e){return st(e)?bR(e):xt(e)?kR(e):Ie(e)?xR(e):Xt(e)?ne(null):pe(e)?yR(e):Fe(e)?ne(null):void 0}const Sx=BigInt(Number.MAX_SAFE_INTEGER),jx=BigInt(Number.MIN_SAFE_INTEGER);function vR(e){return e<=Sx&&e>=jx?ne(Number(e)):void 0}function SR(e){return ne(e?1:0)}function jR(e){const t=+e;if(Ie(t))return ne(t);const n=e.toLowerCase();if(g(n,"false"))return ne(0);if(g(n,"true"))return ne(1);const r=Fd(e);return mn(r)&&r.value<=Sx&&r.value>=jx?ne(Number(r.value)):void 0}function Ld(e){return st(e)?vR(e):xt(e)?SR(e):Ie(e)?ne(e):Xt(e)?ne(0):pe(e)?jR(e):Fe(e)?ne(0):void 0}function Ix(e){return st(e)||xt(e)||Ie(e)?ne(e.toString()):Xt(e)?ne("null"):pe(e)?ne(e):Fe(e)?ne(""):void 0}function IR(e){return g(e,BigInt(0))?ne(void 0):void 0}function CR(e){return g(e,!1)?ne(void 0):void 0}function ER(e){return g(e,0)?ne(void 0):void 0}function TR(e){const t=e.toLowerCase();return g(t,"undefined")||g(t,"null")||g(e,"")||g(e,"0")?ne(void 0):void 0}function Cx(e){return st(e)?IR(e):xt(e)?CR(e):Ie(e)?ER(e):Xt(e)?ne(void 0):pe(e)?TR(e):Fe(e)?ne(e):void 0}function AR(e,t,n){return iR(n).value.map(s=>In(e,t.items,s))}function PR(e,t,n){const r=Fd(n);return mn(r)?r.value:n}function NR(e,t,n){const r=vx(n);return mn(r)?r.value:n}function OR(e,t,n){return In({...e,...t.$defs},gn(t.$ref),n)}function RR(e,t,n){return In(e,Kn(t),n)}function MR(e,t,n){const r=Ld(n);return mn(r)?Math.trunc(r.value):n}function $R(e,t,n){const r=Bs(e,t),s=Kn(r);return In(e,s,n)}function FR(e,t,n){const r=Fd(n);return mn(r)&&g(t.const,r.value)?r.value:n}function LR(e,t,n){const r=vx(n);return mn(r)&&g(t.const,r.value)?r.value:n}function DR(e,t,n){const r=Ld(n);return mn(r)&&g(t.const,r.value)?r.value:n}function _R(e,t,n){const r=Ix(n);return mn(r)&&g(t.const,r.value)?r.value:n}function UR(e,t,n){return g(t.const,n)?n:Jv(t)?FR(e,t,n):Qv(t)?LR(e,t,n):Pf(t)?DR(e,t,n):Nf(t)?_R(e,t,n):Ft()}function BR(e,t,n){const r=wR(n);return mn(r)?r.value:n}function HR(e,t,n){const r=Ld(n);return mn(r)?r.value:n}function Ex(e,t,n,r){const s=U(r);for(const[i,o]of t)for(const d of s)i.test(d)||(r[d]=In(e,n,r[d]));return r}function Dd(e,t,n){return cn(e)&&Fe(n[t])}function qR(e,t,n){const r=nl(t.properties),s=U(n);for(const[i,o]of r)for(const d of s)!i.test(d)||Dd(o,d,n)||(n[d]=In(e,o,n[d]));return E(t,"additionalProperties")&&re(t.additionalProperties)?Ex(e,r,t.additionalProperties,n):n}function zR(e,t,n){return kn(n)?qR(e,t,n):n}function KR(e,t,n){const r=nl(t.patternProperties),s=U(n);for(const[i,o]of r)for(const d of s)i.test(d)&&(n[d]=In(e,o,n[d]));return E(t,"additionalProperties")&&re(t.additionalProperties)?Ex(e,r,t.additionalProperties,n):n}function GR(e,t,n){return kn(n)?KR(e,t,n):n}function VR(e,t,n){return E(e,t.$ref)?In(e,e[t.$ref],n):n}function WR(e,t,n){const r=Ix(n);return mn(r)?r.value:n}function JR(e,t,n){return In(e,Kn(t),n)}function QR(e,t,n){if(!z(n))return n;for(let r=0;r<Math.min(t.items.length,n.length);r++)n[r]=In(e,t.items[r],n[r]);return n}function YR(e,t,n){const r=Cx(n);return mn(r)?r.value:n}function ZR(e,t,n){if(t.anyOf.some(o=>ot(e,o,n)))return n;const i=t.anyOf.map(o=>In(e,o,zt(n))).find(o=>ot(e,t,o));return Fe(i)?n:i}function XR(e,t,n){const r=Cx(n);return mn(r)?void 0:n}function In(e,t,n){return gt(t)?AR(e,t,n):is(t)?PR(e,t,n):Cr(t)?NR(e,t,n):Gt(t)?OR(e,t,n):vn(t)?RR(e,t,n):qn(t)?MR(e,t,n):Be(t)?$R(e,t,n):Qe(t)?UR(e,t,n):Ni(t)?BR(e,t,n):pn(t)?HR(e,t,n):Ue(t)?zR(e,t,n):Ot(t)?GR(e,t,n):vt(t)?VR(e,t,n):Fn(t)?WR(e,t,n):Wt(t)?JR(e,t,n):at(t)?QR(e,t,n):_s(t)?YR(e,t,n):fe(t)?ZR(e,t,n):os(t)?XR(e,t,n):n}function Ra(...e){const[t,n,r]=ut(e,{3:(s,i,o)=>[s,i,o],2:(s,i)=>[{},s,i]});return In(t,n,r)}function eM(e,t,n){if(!z(n))return n;for(let r=0;r<n.length;r++)n[r]=On(e,t.items,n[r]);return n}function tM(e,t,n){return On({...e,...t.$defs},gn(t.$ref),n)}function nM(e,t){return Fe(t)?Tn(e.default)?e.default():zt(e.default):t}function rM(e,t,n){const r=Bs(e,t),s=Kn(r);return On(e,s,n)}function sM(e,t,n){if(!re(n))return n;const r=U(t.properties);for(const s of r){const i=On(e,t.properties[s],n[s]);Fe(i)&&(cn(t.properties[s])||!E(t.properties[s],"default"))||(n[s]=i)}if(!lr(t)||xt(t.additionalProperties))return n;for(const s of U(n))r.includes(s)||(n[s]=On(e,t.additionalProperties,n[s]));return n}function iM(e,t,n){if(!re(n))return n;const[r,s]=[new RegExp(jn(t)),Vt(t)];for(const i of U(n))r.test(i)&&Ar(s)&&(n[i]=On(e,s,n[i]));if(!lr(t))return n;for(const i of U(n))r.test(i)||(n[i]=On(e,t.additionalProperties,n[i]));return n}function oM(e,t,n){return E(e,t.$ref)?On(e,e[t.$ref],n):n}function aM(e,t,n){if(!z(n))return n;const[r,s]=[t.items,Math.max(t.items.length,n.length)];for(let i=0;i<s;i++)i<r.length&&(n[i]=On(e,r[i],n[i]));return n}function cM(e,t,n){for(const r of t.anyOf){const s=On(e,r,zt(n));if(ot(e,r,s))return s}return n}function On(e,t,n){const r=Ar(t)?nM(t,n):n;return gt(t)?eM(e,t,r):Gt(t)?tM(e,t,r):Be(t)?rM(e,t,r):Ue(t)?sM(e,t,r):Ot(t)?iM(e,t,r):vt(t)?oM(e,t,r):at(t)?aM(e,t,r):fe(t)?cM(e,t,r):r}function _d(...e){const[t,n,r]=ut(e,{3:(s,i,o)=>[s,i,o],2:(s,i)=>[{},s,i]});return On(t,n,r)}function Tx(e){return(...t)=>{const[n,r,s]=ut(t,{3:(i,o,d)=>[i,o,d],2:(i,o)=>[{},i,o]});return e.reduce((i,o)=>o(n,r,i),s)}}function lM(e,t,n){return t["~codec"].decode(n)}function dM(e,t,n){return t["~codec"].encode(n)}function Et(e,t,n,r){return dn(n)?g(e,"Decode")?lM(t,n,r):dM(t,n,r):r}function uM(e,t,n,r){if(!z(r))return r;for(let s=0;s<r.length;s++)r[s]=Bt(e,t,n.items,r[s]);return Et(e,t,n,r)}function pM(e,t,n,r){const s=Et(e,t,n,r);if(!z(s))return s;for(let i=0;i<s.length;i++)s[i]=Bt(e,t,n.items,s[i]);return s}function fM(e,t,n,r){return g(e,"Decode")?uM(e,t,n,r):pM(e,t,n,r)}function mM(e,t,n,r){return r=Bt(e,{...t,...n.$defs},gn(n.$ref),r),Et(e,t,n,r)}function Ax(e){return e.reduce((t,n)=>({...t,...n}),{})}function Px(e,t){for(const n of t)if(!ns(e,n))return n;return e}function hM(e,t,n,r){if(g(n.allOf.length,0))return Et(e,t,n,r);const s=n.allOf.map(d=>Bt(e,t,d,oo(d,zt(r)))),o=s.every(d=>re(d))?Ax(s):Px(r,s);return Et(e,t,n,o)}function gM(e,t,n,r){if(g(n.allOf.length,0))return Et(e,t,n,r);const s=Et(e,t,n,r),i=n.allOf.map(d=>Bt(e,t,d,oo(d,zt(s))));return i.every(d=>re(d))?Ax(i):Px(s,i)}function bM(e,t,n,r){return g(e,"Decode")?hM(e,t,n,r):gM(e,t,n,r)}function kM(e,t,n,r){if(!kn(r))return r;for(const s of U(n.properties))!E(r,s)||Dd(n.properties[s],s,r)||(r[s]=Bt(e,t,n.properties[s],r[s]));return Et(e,t,n,r)}function xM(e,t,n,r){const s=Et(e,t,n,r);if(!kn(s))return s;for(const i of U(n.properties))!E(s,i)||Dd(n.properties[i],i,s)||(s[i]=Bt(e,t,n.properties[i],s[i]));return s}function yM(e,t,n,r){return g(e,"Decode")?kM(e,t,n,r):xM(e,t,n,r)}function wM(e,t,n,r){if(!kn(r))return r;const s=new RegExp(jn(n));for(const i of U(r))s.test(i)&&(r[i]=Bt(e,t,Vt(n),r[i]));return Et(e,t,n,r)}function vM(e,t,n,r){const s=Et(e,t,n,r);if(!kn(s))return s;const i=new RegExp(jn(n));for(const o of U(s))i.test(o)&&(s[o]=Bt(e,t,Vt(n),s[o]));return s}function SM(e,t,n,r){return g(e,"Decode")?wM(e,t,n,r):vM(e,t,n,r)}function Ku(e,t,n,r){return E(t,n.$ref)?Bt(e,t,t[n.$ref],r):r}function jM(e,t,n,r){return g(e,"Decode")?Et(e,t,n,Ku(e,t,n,r)):Ku(e,t,n,Et(e,t,n,r))}function IM(e,t,n,r){if(!z(r))return r;for(let s=0;s<Math.min(n.items.length,r.length);s++)r[s]=Bt(e,t,n.items[s],r[s]);return Et(e,t,n,r)}function CM(e,t,n,r){const s=Et(e,t,n,r);if(!z(s))return r;for(let i=0;i<Math.min(n.items.length,s.length);i++)s[i]=Bt(e,t,n.items[i],s[i]);return s}function EM(e,t,n,r){return g(e,"Decode")?IM(e,t,n,r):CM(e,t,n,r)}function TM(e,t,n,r){for(const s of n.anyOf){if(!ot(t,s,r))continue;const i=Bt(e,t,s,r);return Et(e,t,n,i)}return r}function AM(e,t,n,r){const s=Et(e,t,n,r);for(const i of n.anyOf){const o=Bt(e,t,i,zt(s));if(ot(t,i,o))return o}return s}function PM(e,t,n,r){return g(e,"Decode")?TM(e,t,n,r):AM(e,t,n,r)}function Bt(e,t,n,r){return gt(n)?fM(e,t,n,r):Gt(n)?mM(e,t,n,r):Be(n)?bM(e,t,n,r):Ue(n)?yM(e,t,n,r):Ot(n)?SM(e,t,n,r):vt(n)?jM(e,t,n,r):at(n)?EM(e,t,n,r):fe(n)?PM(e,t,n,r):Et(e,t,n,r)}class NM extends Oa{constructor(t,n){super("Decode",t,n)}}function OM(e,t,n){if(!ot(e,t,n))throw new NM(n,io(e,t,n));return n}function RM(e,t,n){const r=$d(t);return Bt("Decode",e,r,n)}const MM=Tx([(e,t,n)=>zt(n),(e,t,n)=>_d(e,t,n),(e,t,n)=>Ra(e,t,n),(e,t,n)=>oo(e,t,n),(e,t,n)=>OM(e,t,n),(e,t,n)=>RM(e,t,n)]);function $M(...e){const[t,n,r]=ut(e,{3:(s,i,o)=>[s,i,o],2:(s,i)=>[{},s,i]});return MM(t,n,r)}class FM extends Oa{constructor(t,n){super("Encode",t,n)}}function LM(e,t,n){if(!ot(e,t,n))throw new FM(n,io(e,t,n));return n}function DM(e,t,n){const r=$d(t);return Bt("Encode",e,r,n)}const _M=Tx([(e,t,n)=>zt(n),(e,t,n)=>DM(e,t,n),(e,t,n)=>_d(e,t,n),(e,t,n)=>Ra(e,t,n),(e,t,n)=>oo(e,t,n),(e,t,n)=>LM(e,t,n)]);function UM(...e){const[t,n,r]=ut(e,{3:(s,i,o)=>[s,i,o],2:(s,i)=>[{},s,i]});return _M(t,n,r)}function BM(e,t){return dn(t)||$r(e,t.items)}function HM(e,t){return dn(t)||Nx({...e,...t.$defs},gn(t.$ref))}function qM(e,t){return dn(t)||t.allOf.some(n=>$r(e,n))}function zM(e,t){return dn(t)||U(t.properties).some(n=>$r(e,t.properties[n]))}function KM(e,t){return dn(t)||$r(e,Vt(t))}function Nx(e,t){return Oc.has(t.$ref)?!1:(Oc.add(t.$ref),dn(t)||E(e,t.$ref)&&$r(e,e[t.$ref]))}function GM(e,t){return dn(t)||t.items.some(n=>$r(e,n))}function VM(e,t){return dn(t)||t.anyOf.some(n=>$r(e,n))}function $r(e,t){return gt(t)?BM(e,t):Gt(t)?HM(e,t):Be(t)?qM(e,t):Ue(t)?zM(e,t):Ot(t)?KM(e,t):vt(t)?Nx(e,t):at(t)?GM(e,t):fe(t)?VM(e,t):dn(t)}const Oc=new Set;function WM(...e){const[t,n]=ut(e,{2:(r,s)=>[r,s],1:r=>[{},r]});return Oc.clear(),$r(t,n)}class ao extends Error{constructor(t,n){super(n),this.type=t}}function JM(e,t){return Tn(t.default)?t.default(t):re(t.default)?zt(t.default):t.default}function QM(e,t){if(jr(t)&&!Ar(t))throw new ao(t,"Arrays with uniqueItems constraints must specify a default annotation");const n=ps(t)?t.minItems:0;return Array.from({length:n},()=>Cn(e,t.items))}function YM(e,t){return Pr(t)?BigInt(t.exclusiveMinimum)+BigInt(1):Or(t)?BigInt(t.minimum):BigInt(0)}function ZM(e,t){return!1}function XM(e,t){const n=Cn(e,t.instanceType);return class{constructor(){Object.assign(this,n)}}}function e$(e,t){return Cn({...e,...t.$defs},gn(t.$ref))}function t$(e,t){return Cn(e,Kn(t))}function n$(e,t){const n=Cn(e,t.returnType);return()=>n}function r$(e,t){return Pr(t)&&Ie(t.exclusiveMinimum)?t.exclusiveMinimum+1:Or(t)?t.minimum:0}function s$(e,t){const n=Bs(e,t),r=Kn(n);return Cn(e,r)}function i$(e,t){return t.const}function o$(e,t){throw new ao(t,"Cannot create TNever types")}function a$(e,t){return null}function c$(e,t){return Pr(t)&&Ie(t.exclusiveMinimum)?t.exclusiveMinimum+1:Or(t)?t.minimum:0}function l$(e,t){return(Fe(t.required)?[]:t.required).reduce((r,s)=>({...r,[s]:Cn(e,t.properties[s])}),{})}function d$(e,t){if(Ks(t)&&!Ar(t))throw new ao(t,"Record with the minProperties constraint must have a default annotation");return{}}function u$(e,t){return E(e,t.$ref)?Cn(e,e[t.$ref]):(()=>{throw new ao(t,"Unable to deref Ref")})()}function p$(e,t){if((Gs(t)||Hs(t))&&!Ar(t))throw Error("Strings with format or pattern constraints must specify default");const r=zs(t)?t.minLength:0;return"".padEnd(r)}function f$(e,t){return Symbol()}function m$(e,t){const n=xl(t.pattern);if(Fn(n))throw new ao(t,"Unable to create TemplateLiteral due to infinite type expansion");return Cn(e,n)}function h$(e,t){return Array.from({length:t.minItems},(n,r)=>Cn(e,t.items[r]))}function g$(e,t){if(g(t.anyOf.length,0))throw Error("Unable to create Union with no variants");return Cn(e,t.anyOf[0])}function Cn(e,t){return Ar(t)?JM(e,t):gt(t)?QM(e,t):is(t)?YM(e,t):Cr(t)?ZM():xn(t)?XM(e,t):Gt(t)?e$(e,t):vn(t)?t$(e,t):yn(t)?n$(e,t):qn(t)?r$(e,t):Be(t)?s$(e,t):Qe(t)?i$(e,t):Fs(t)?o$(e,t):Ni(t)?a$():pn(t)?c$(e,t):Ue(t)?l$(e,t):Ot(t)?d$(e,t):vt(t)?u$(e,t):Fn(t)?p$(e,t):Oi(t)?f$():Wt(t)?m$(e,t):at(t)?h$(e,t):_s(t)?void 0:fe(t)?g$(e,t):os(t)?void 0:void 0}function Rn(...e){const[t,n]=ut(e,{2:(r,s)=>[r,s],1:r=>[{},r]});return Cn(t,n)}function Ox(e,t){return ns(e,t)}function Rx(e){return ia(e)}class b$ extends Oa{constructor(t,n){super("Parse",t,n)}}function k$(...e){const[t,n,r]=ut(e,{3:(i,o,d)=>[i,o,d],2:(i,o)=>[{},i,o]});if(ot(t,n,r))return r;throw new b$(r,io(t,n,r))}function Ma(e,t){return{type:"update",path:e,value:t}}function Mx(e,t){return{type:"insert",path:e,value:t}}function $x(e){return{type:"delete",path:e}}function Gu(e){if(!(re(e)&&g(rl(e).length,0)))throw new Error("Cannot create diffs for objects with symbols keys")}function*x$(e,t,n){if(!re(n)||z(n))return yield Ma(e,n);Gu(t),Gu(n);const r=U(t),s=U(n);for(const i of s)E(t,i)||er(i)||(yield Mx(`${e}/${i}`,n[i]));for(const i of r)E(n,i)&&(er(i)||Ox(t,n)||(yield*$a(`${e}/${i}`,t[i],n[i])));for(const i of r)E(n,i)||er(i)||(yield $x(`${e}/${i}`))}function*y$(e,t,n){if(!z(n))return yield Ma(e,n);for(let r=0;r<Math.min(t.length,n.length);r++)yield*$a(`${e}/${r}`,t[r],n[r]);for(let r=0;r<n.length;r++)r<t.length||(yield Mx(`${e}/${r}`,n[r]));for(let r=t.length-1;r>=0;r--)r<n.length||(yield $x(`${e}/${r}`))}function*w$(e,t,n){const r=globalThis.Object.getPrototypeOf(t).constructor.name,s=globalThis.Object.getPrototypeOf(n).constructor.name;if(Ii(n)&&g(t.length,n.length)&&g(r,s))for(let o=0;o<Math.min(t.length,n.length);o++)yield*$a(`${e}/${o}`,t[o],n[o]);else return yield Ma(e,n)}function*v$(e,t,n){t!==n&&(yield Ma(e,n))}function*$a(e,t,n){return Ii(t)?yield*w$(e,t,n):z(t)?yield*y$(e,t,n):re(t)?yield*x$(e,t,n):yield*v$(e,t,n)}function S$(e,t){return[...$a("",e,t)]}const j$=$e({type:De("insert"),path:zn(),value:Kt()}),I$=Object({type:De("update"),path:zn(),value:Kt()}),C$=$e({type:De("delete"),path:zn()});Je([j$,I$,C$]);function E$(e){return e.length>0&&e[0].path===""&&e[0].type==="update"}function T$(e){return e.length===0}function A$(e,t){if(E$(t))return zt(t[0].value);if(T$(t))return zt(e);const n=zt(e);for(const r of t)switch(r.type){case"insert":{Pc(n,r.path,r.value);break}case"update":{Pc(n,r.path,r.value);break}case"delete":{cx(n,r.path);break}}return n}class Fa extends Error{constructor(t,n,r,s){super(s),this.context=t,this.type=n,this.value=r}}function P$(e){const[t,n]=[new Set,[]];for(const r of e){const s=Rx(r);t.has(s)||(t.add(s),n.push(r))}return n}function N$(e,t,n){if(ot(e,t,n))return n;const r=z(n)?n:Rn(e,t),s=ps(t)&&r.length<t.minItems?[...r,...Array.from({length:t.minItems-r.length},()=>Rn(e,t))]:r,o=(qs(t)&&s.length>t.maxItems?s.slice(0,t.maxItems):s).map(f=>bn(e,t.items,f));if(!jr(t)||jr(t)&&!g(t.uniqueItems,!0))return o;const d=P$(o);if(!ot(e,t,d))throw new Fa(e,t,n,"Failed to repair Array due to uniqueItems constraint");return d}function O$(e,t,n){return bn(e,Kn(t),n)}function R$(e,t,n){const r=Bs(e,t),s=Kn(r);return bn(e,s,n)}function M$(e,t,n){if(ot(e,t,n))return n;if(!kn(n))return Rn(e,t);const r=new Set(Fe(t.required)?[]:t.required),s={};for(const[o,d]of it(t.properties))!r.has(o)&&Fe(n[o])||(s[o]=o in n?bn(e,d,n[o]):Rn(e,d));const i=U(t.properties);if(lr(t)&&re(t.additionalProperties))for(const o of U(n))i.includes(o)||(s[o]=bn(e,t.additionalProperties,n[o]));return s}function $$(e,t,n){if(ot(e,t,n))return n;if(Xt(n)||!re(n)||z(n))return Rn(e,t);const r=new RegExp(jn(t)),s=Vt(t),i=new Set,o={};for(const[d,f]of it(n))r.test(d)&&(o[d]=bn(e,s,f),i.add(d));if(lr(t))for(const d of U(n))i.has(d)||(o[d]=bn(e,t.additionalProperties,n[d]));return o}function F$(e,t,n){return E(e,t.$ref)?bn(e,e[t.$ref],n):(()=>{throw new Fa(e,t,n,"Unable to de-reference target type")})()}function L$(e,t,n){const r=xl(t.pattern);return bn(e,r,n)}function D$(e,t,n){return ot(e,t,n)?n:z(n)?t.items.map((r,s)=>bn(e,r,n[s])):Rn(e,t)}function Fx(e,t,n){return vt(t)?E(e,t.$ref)?Fx(e,e[t.$ref]):(()=>{throw new Error("Unable to Deref target")})():t}function _$(e,t,n){if(!(Ue(t)&&re(n)))return 0;const r=U(n);return it(t.properties).reduce((i,[o,d])=>{const f=Qe(d)&&g(d.const,n[o])?100:0,u=ot(e,d,n[o])?10:0,m=r.includes(o)?1:0;return i+(f+u+m)},0)}function U$(e,t,n){const r=t.anyOf.map(o=>Fx(e,o));let[s,i]=[r[0],0];for(const o of r){const d=_$(e,o,n);d>i&&(s=o,i=d)}return s}function B$(e,t,n){const r=Je(aa(t.anyOf)),s=U$(e,r,n);return bn(e,s,n)}function H$(e,t,n){return ot(e,t,n)?zt(n):Ar(t)?Rn(e,t):B$(e,t,n)}function q$(e,t,n){if(ot(e,t,n))return n;const r=Ra(e,t,n);return ot(e,t,r)?r:Rn(e,t)}function z$(e,t,n){if(ff(n)||hf(n)||mf(n)||Ii(n)||ta(n)||Tn(n))throw new Fa(e,t,n,"Value is not repairable")}function K$(e,t,n){if(xn(t)||yn(t)||Fs(t))throw new Fa(e,t,n,"Type is not repairable")}function G$(e,t,n){return Fe(n)&&!_s(t)?Rn(e,t):n}function V$(e,t,n){return hl(t)?ot(e,t,n)?n:Rn(e,t):n}function bn(e,t,n){z$(e,t,n),K$(e,t,n);const r=G$(e,t,n),s=gt(t)?N$(e,t,r):vn(t)?O$(e,t,r):Be(t)?R$(e,t,r):Ue(t)?M$(e,t,r):Ot(t)?$$(e,t,r):vt(t)?F$(e,t,r):Wt(t)?L$(e,t,r):at(t)?D$(e,t,r):fe(t)?H$(e,t,r):q$(e,t,r);return V$(e,t,s)}function W$(...e){const[t,n,r]=ut(e,{3:(i,o,d)=>[i,o,d],2:(i,o)=>[{},i,o]}),s=bn(t,n,r);return yx(t,n,s),s}const Ya=Object.freeze(Object.defineProperty({__proto__:null,Assert:yx,Check:ot,Clean:oo,Clone:zt,Convert:Ra,Create:Rn,Decode:$M,Default:_d,Diff:S$,Encode:UM,Equal:Ox,Errors:io,HasCodec:WM,Hash:Rx,Parse:k$,Patch:A$,Pointer:lx,Repair:W$},Symbol.toStringTag,{value:"Module"}));class Vu extends Error{constructor(t){super(t.map(n=>`${n.path.length>0?n.path.join("."):"root"}: ${n.message}`).join("; ")),this.issues=t,this.name="SchemaValidationError"}}function J$(e){return e?e.split("/").slice(1).map(t=>t.replace(/~1/g,"/").replace(/~0/g,"~")).map(t=>/^(0|[1-9]\d*)$/.test(t)?Number(t):t):[]}function Q$(e,t){let n=e;for(const r of t){if(n===null||typeof n!="object")return;n=n[r]}return n}function Wu(e,t){const[,n]=GO.Errors(e,t);return n.map(r=>{const s=J$(r.instancePath);return{code:r.keyword,path:s,message:r.message,value:Q$(t,s)}})}function Lx(e,t){const n=Ya.Default(e,Ya.Clone(t)),r=Wu(e,n);if(r.length>0)return{success:!1,error:new Vu(r)};const s=Ya.Clean(e,n),i=Wu(e,s);return i.length>0?{success:!1,error:new Vu(i)}:{success:!0,data:s}}function Qn(e,t){const n=Lx(e,t);if(!n.success)throw n.error;return n.data}function K(e){return Object.defineProperties(e,{parse:{value:t=>Qn(e,t),enumerable:!1},safeParse:{value:t=>Lx(e,t),enumerable:!1}}),e}function En(e,t){return c.Optional({...e,default:t})}function ue(e,t={}){return c.Unsafe({type:"string",enum:[...e],...t})}const zr=20,mi=5*1024*1024,Y$=1e6,Z$=16*1024;function X$(e){const t=/^\s*\/btw(?:\s+([\s\S]*))?\s*$/iu.exec(e);if(t)return{question:(t[1]??"").trim()}}const gs=K(ue(["default","autoEdit","yolo","plan"])),kr={DEFAULT:"default",AUTO_EDIT:"autoEdit",YOLO:"yolo",PLAN:"plan"},Ud=K(ue(["user","assistant","system","tool"])),eF=K(c.Union([c.Object({type:c.Literal("text"),text:c.String()}),c.Object({type:c.Literal("image_url"),image_url:c.Object({url:c.String()})})])),Dx=c.Union([c.String(),c.Array(eF)]);K(c.Object({id:c.String(),role:Ud,content:Dx,timestamp:c.Number(),metadata:c.Optional(c.Record(c.String(),c.Unknown())),thinkingContent:c.Optional(c.String()),tool_call_id:c.Optional(c.String()),name:c.Optional(c.String()),tool_calls:c.Optional(c.Unknown())}));const tF=K(ue(["queued","running","completed","failed","cancelled","interrupted"])),co=K(ue(["local","worktree"])),Bd=K(ue(["high","medium","low"])),Hd=K(ue(["feature","bug","maintenance","research"])),nF=K(ue(["applied","discarded","conflicted"])),rF=K(c.Object({status:nF,updatedAt:c.String(),sourceCommit:c.Optional(c.String()),changedFiles:c.Optional(c.Integer({minimum:0})),message:c.Optional(c.String())})),sF=K(c.Object({changedFiles:c.Integer({minimum:0}),additions:c.Integer({minimum:0}),deletions:c.Integer({minimum:0}),commits:c.Integer({minimum:0})})),iF=K(c.Object({path:c.String({minLength:1}),patch:c.String({maxLength:2*1024*1024}),additions:c.Integer({minimum:0}),deletions:c.Integer({minimum:0}),binary:c.Boolean(),truncated:c.Boolean()})),oF=K(c.Object({sessionId:c.String(),projectPath:c.String(),baseCommit:c.String(),files:c.Array(iF,{maxItems:100}),truncated:c.Boolean()})),aF=c.Union([c.String(),c.Number(),c.Boolean(),c.Array(c.String())]),cF=K(c.Object({name:c.String(),type:ue(["string","number","integer","boolean","select","multi-select"]),title:c.String(),description:c.Optional(c.String()),required:c.Boolean(),defaultValue:c.Optional(aF),options:c.Optional(c.Array(c.Object({value:c.String(),label:c.String()}))),format:c.Optional(ue(["date","uri","email","date-time"])),minimum:c.Optional(c.Number()),maximum:c.Optional(c.Number()),minLength:c.Optional(c.Number()),maxLength:c.Optional(c.Number()),minItems:c.Optional(c.Number()),maxItems:c.Optional(c.Number())}));K(c.Object({serverName:c.String(),mode:ue(["form","url"]),message:c.String(),fields:c.Optional(c.Array(cF)),requestedSchema:c.Optional(c.Record(c.String(),c.Unknown())),url:c.Optional(c.String()),domain:c.Optional(c.String()),elicitationId:c.Optional(c.String())}));const lF=K(c.Object({type:ue(["permission","question","elicitation"]),requestId:c.String()})),dF=K(c.Object({code:ue(["authentication","permission","rate_limit","timeout","network","model_unavailable","context_limit","unsupported_input","workspace_unavailable","capacity","runtime"]),message:c.String({minLength:1,maxLength:500}),retryable:c.Boolean(),resource:c.Optional(ue(["pending_count","pending_bytes","resident_runtimes"]))})),Qs=K(ue(["auto","off","minimal","low","medium","high","xhigh","max"])),Ys=K(ue(["auto","standard","fast","flex"])),Zs=K(ue(["auto","low","medium","high"])),Fr=K(c.Union([ue(["auto","pragmatic","friendly","explanatory"]),c.String({minLength:7,maxLength:300,pattern:"^(?:(?:user|project):[a-z0-9][a-z0-9._-]{0,63}(?::[a-z0-9][a-z0-9._-]{0,63}){0,3}|plugin:[a-z0-9][a-z0-9._-]{0,63}:[a-z0-9][a-z0-9._-]{0,63}(?::[a-z0-9][a-z0-9._-]{0,63}){0,3})$"})])),Un=K(c.Object({sessionId:c.String(),projectPath:c.String(),title:c.Optional(c.String()),gitBranch:c.Optional(c.String()),rootId:c.String(),parentId:c.Optional(c.String()),relationType:c.Optional(ue(["subagent","fork"])),resumedFrom:c.Optional(c.String()),rootAgentId:c.Optional(c.String()),resumeDepth:c.Optional(c.Integer({minimum:0})),taskStatus:En(tF,"completed"),taskStatusReason:c.Optional(c.String()),taskFailure:c.Optional(dF),taskStartedAt:c.Optional(c.String()),taskCompletedAt:c.Optional(c.String()),taskPromptSummary:c.Optional(c.String()),taskPriority:c.Optional(Bd),taskKind:c.Optional(Hd),taskDueAt:c.Optional(c.String()),taskModelId:c.Optional(c.String()),selectedModelId:c.Optional(c.String()),permissionMode:c.Optional(gs),reasoningEffort:c.Optional(Qs),serviceTier:c.Optional(Ys),responseVerbosity:c.Optional(Zs),communicationStyle:c.Optional(Fr),communicationStyleDigest:c.Optional(c.String({pattern:"^[a-f0-9]{64}$"})),projectInstructionsDigest:c.Optional(c.String({pattern:"^[a-f0-9]{64}$"})),taskRetryAvailable:c.Optional(c.Boolean()),taskRetriedFrom:c.Optional(c.Object({sessionId:c.String(),projectPath:c.String()})),taskDelivery:c.Optional(rF),taskIsolation:c.Optional(co),taskSourceProjectPath:c.Optional(c.String()),taskWorktreePath:c.Optional(c.String()),taskWorktreeBranch:c.Optional(c.String()),taskBaseCommit:c.Optional(c.String()),taskDiffStat:c.Optional(sF),taskQueuePosition:c.Optional(c.Integer({minimum:1})),taskQueueDepth:c.Optional(c.Integer({minimum:0})),taskConcurrencyLimit:c.Optional(c.Integer({minimum:1})),archivedAt:c.Optional(c.String()),archivedBySessionId:c.Optional(c.String()),pendingInteraction:c.Optional(lF),messageCount:c.Number(),firstMessageTime:c.String(),lastMessageTime:c.String(),hasErrors:c.Boolean()})),uF=K(c.Object({sessions:c.Array(Un),nextCursor:c.Optional(c.String())})),pF=K(c.Object({session:Un,archivedSessionIds:c.Array(c.String())})),fF=K(c.Object({session:Un,restoredSessionIds:c.Array(c.String())}));K(c.Object({version:c.Union([c.Literal(1),c.Literal(2)]),sessionId:c.String(),goalId:c.String(),objective:c.String(),status:ue(["active","verifying","paused","blocked","usage_limited","budget_limited","complete"]),tokenBudget:c.Optional(c.Number()),tokensUsed:c.Number(),timeUsedSeconds:c.Number(),continuationCount:c.Number(),statusReason:c.Optional(c.String()),completionVerification:c.Optional(c.Object({attempt:c.Integer({minimum:1}),status:ue(["pending","pass","fail","partial"]),requestedAt:c.String(),completedAt:c.Optional(c.String()),verifierSessionId:c.Optional(c.String()),summary:c.Optional(c.String()),evidenceSha256:c.Optional(c.String({pattern:"^[a-f0-9]{64}$"}))})),prematureStop:c.Optional(c.Object({pattern:c.Unsafe({type:"string"}),consecutiveCount:c.Integer({minimum:1}),detectedAt:c.String()})),verificationStall:c.Optional(c.Unsafe({type:"object"})),executionFrontier:c.Optional(c.Object({taskListId:c.String({minLength:1,maxLength:256}),total:c.Integer({minimum:0}),completed:c.Integer({minimum:0}),inProgress:c.Integer({minimum:0}),pending:c.Integer({minimum:0}),blocked:c.Integer({minimum:0}),nextTask:c.Optional(c.Object({id:c.String({minLength:1}),subject:c.String({minLength:1,maxLength:512}),priority:ue(["high","medium","low"])})),digestSha256:c.String({pattern:"^[a-f0-9]{64}$"}),observedAt:c.String()})),frontierStall:c.Optional(c.Object({category:ue(["waiting_dependency","same_task_no_effect","repeated_deferral"]),consecutiveCount:c.Integer({minimum:1,maximum:3}),digestSha256:c.String({pattern:"^[a-f0-9]{64}$"}),detectedAt:c.String()})),createdAt:c.String(),updatedAt:c.String()}));const qd=K(c.Object({role:Ud,content:Dx,metadata:c.Optional(c.Unknown()),reasoningContent:c.Optional(c.String()),thinkingContent:c.Optional(c.String()),tool_call_id:c.Optional(c.String()),name:c.Optional(c.String()),tool_calls:c.Optional(c.Unknown())})),mF=K(c.Object({session:Un,messages:c.Array(qd)})),_x=K(ue(["conversation","code","both"])),Ux=K(c.Object({messageId:c.String(),preview:c.String(),createdAt:c.String(),fileCount:c.Integer({minimum:0})}));K(c.Object({targetMessageId:c.String({minLength:1}),mode:En(_x,"conversation")}));const hF=K(c.Object({checkpoint:Ux,mode:_x,removedTurns:c.Integer({minimum:1}),restoredFiles:c.Array(c.String()),messages:c.Array(qd)})),gF=ue(["running","completed","failed","cancelled"]),Rc=K(c.Object({id:c.String(),subagentType:c.String(),description:c.String(),status:gF,background:c.Boolean(),rootAgentId:c.String(),resumedFrom:c.Optional(c.String()),resumeDepth:c.Integer({minimum:0}),createdAt:c.Number(),lastActiveAt:c.Number(),completedAt:c.Optional(c.Number()),restartRecovery:c.Optional(c.Object({outcome:ue(["completed","interrupted","failed"]),recoveredAt:c.Number()})),result:c.Optional(c.Object({success:c.Boolean(),message:c.String(),error:c.Optional(c.String()),verificationCommands:c.Optional(c.Array(c.String())),verificationVerdict:c.Optional(ue(["pass","fail","partial"])),modifiedFiles:c.Optional(c.Array(c.String()))})),stats:c.Optional(c.Object({tokens:c.Optional(c.Number()),toolCalls:c.Optional(c.Number()),duration:c.Optional(c.Number())}))}));K(c.Object({prompt:c.String({minLength:1,maxLength:32e3,pattern:"\\S"})}));const bF=K(c.Object({source:Rc,session:Rc})),Bx=K(c.Object({sessionId:c.String(),projectPath:c.String()})),Hx=K(c.Object({path:c.String(),name:c.String(),gitBranch:c.Optional(c.String()),available:c.Boolean(),isCurrent:c.Boolean(),boundAt:c.String()})),kF=K(c.Union([c.Object({cancelled:c.Literal(!0)}),c.Object({cancelled:c.Literal(!1),path:c.String({minLength:1})})])),Ju=K(c.Object({type:c.String(),seq:c.Optional(c.Number()),properties:c.Record(c.String(),c.Unknown())})),qx=c.Object({type:ue(["file","image","url"]),path:c.Optional(c.String()),url:c.Optional(c.String()),content:c.Optional(c.String({maxLength:mi})),mimeType:c.Optional(c.String()),name:c.Optional(c.String())}),zx=c.Record(c.String(),c.Unknown());K(c.Object({prompt:c.String({minLength:1,maxLength:32e3,pattern:"\\S"}),title:c.Optional(c.String({minLength:1,maxLength:200})),taskPriority:En(Bd,"medium"),taskKind:En(Hd,"feature"),taskDueAt:c.Optional(c.String({minLength:1,maxLength:64})),projectPath:c.Optional(c.String()),modelId:c.Optional(c.String({minLength:1,maxLength:500})),reasoningEffort:c.Optional(Qs),serviceTier:c.Optional(Ys),responseVerbosity:c.Optional(Zs),communicationStyle:c.Optional(Fr),isolation:En(co,"worktree"),permissionMode:En(gs,"default"),attachments:c.Optional(c.Array(qx,{maxItems:zr})),outputSchema:c.Optional(zx)}));K(c.Object({title:c.Optional(c.String({minLength:1,maxLength:200})),taskPriority:c.Optional(Bd),taskKind:c.Optional(Hd),taskDueAt:c.Optional(c.Union([c.String({minLength:1,maxLength:64}),c.Null()]))}));const Qu=K(c.Object({session:Un,runId:c.String(),messageId:c.String(),status:ue(["queued","running"]),queuePosition:c.Optional(c.Integer({minimum:1})),queueDepth:c.Optional(c.Integer({minimum:0})),maxConcurrentTasks:c.Optional(c.Integer({minimum:1}))}));K(c.Object({action:ue(["apply","discard"])}));const zd=K(c.Object({kind:ue(["cron","interval","once"]),cron:c.Optional(c.String({minLength:1,maxLength:120})),intervalMs:c.Optional(c.Integer({minimum:6e4})),runAt:c.Optional(c.String({minLength:1,maxLength:40})),timezone:c.Optional(c.String({minLength:1,maxLength:80}))})),xF=K(c.Object({modelId:c.Optional(c.String({minLength:1,maxLength:500})),reasoningEffort:c.Optional(Qs),serviceTier:c.Optional(Ys),responseVerbosity:c.Optional(Zs),communicationStyle:c.Optional(Fr),isolation:En(co,"worktree"),permissionMode:En(gs,"default")})),Cs=K(c.Object({id:c.String(),title:c.Optional(c.String({minLength:1,maxLength:200})),prompt:c.String({minLength:1,maxLength:32e3,pattern:"\\S"}),projectPath:c.String({minLength:1}),trigger:zd,dispatch:xF,enabled:c.Boolean(),createdAt:c.String(),updatedAt:c.String(),nextRunAt:c.Union([c.String(),c.Null()]),expiresAt:c.Union([c.String(),c.Null()]),lastRunAt:c.Optional(c.String()),lastRunSessionId:c.Optional(c.String()),lastStatus:c.Optional(ue(["queued","running","completed","failed","cancelled","interrupted","error"])),lastError:c.Optional(c.String()),runCount:c.Integer({minimum:0})}));K(c.Object({title:c.Optional(c.String({minLength:1,maxLength:200})),prompt:c.String({minLength:1,maxLength:32e3,pattern:"\\S"}),projectPath:c.String({minLength:1}),trigger:zd,modelId:c.Optional(c.String({minLength:1,maxLength:500})),reasoningEffort:c.Optional(Qs),serviceTier:c.Optional(Ys),responseVerbosity:c.Optional(Zs),communicationStyle:c.Optional(Fr),isolation:En(co,"worktree"),permissionMode:En(gs,"default"),enabled:En(c.Boolean(),!0)}));K(c.Object({title:c.Optional(c.String({minLength:1,maxLength:200})),prompt:c.Optional(c.String({minLength:1,maxLength:32e3,pattern:"\\S"})),trigger:c.Optional(zd),modelId:c.Optional(c.String({minLength:1,maxLength:500})),reasoningEffort:c.Optional(Qs),serviceTier:c.Optional(Ys),responseVerbosity:c.Optional(Zs),communicationStyle:c.Optional(Fr),isolation:c.Optional(co),permissionMode:c.Optional(gs),enabled:c.Optional(c.Boolean())}));const yF=K(c.Object({schedules:c.Array(Cs)}));K(c.Object({content:c.String({maxLength:Y$}),projectPath:c.Optional(c.String()),modelId:c.Optional(c.String({minLength:1,maxLength:500})),reasoningEffort:c.Optional(Qs),serviceTier:c.Optional(Ys),responseVerbosity:c.Optional(Zs),communicationStyle:c.Optional(Fr),permissionMode:c.Optional(gs),attachments:c.Optional(c.Array(qx,{maxItems:zr})),outputSchema:c.Optional(zx)}));const wF=ue(["completed","failed","aborted","timed_out","spawn_error"]),vF=K(c.Object({version:c.Literal(1),command:c.String(),status:wF,exitCode:c.Union([c.Integer(),c.Null()]),durationMs:c.Number({minimum:0}),stdout:c.String(),stderr:c.String(),stdoutOmittedBytes:c.Integer({minimum:0}),stderrOmittedBytes:c.Integer({minimum:0}),binaryOutput:c.Boolean(),truncated:c.Boolean()}));K(c.Object({command:c.String({minLength:1,maxLength:32*1024,pattern:"^(?![\\s\\S]*\\u0000)(?=[\\s\\S]*\\S)[\\s\\S]*$"}),projectPath:c.Optional(c.String())}));const SF=K(c.Object({executionId:c.String(),messageId:c.String(),record:vF,auxiliary:c.Boolean(),delivery:c.Optional(ue(["current_turn","next_turn"])),queued:c.Optional(c.Integer({minimum:0}))}));K(c.Object({question:c.String({minLength:1,maxLength:Z$,pattern:"^(?![\\s\\S]*\\x00)(?=[\\s\\S]*\\S)[\\s\\S]*$"}),projectPath:c.Optional(c.String())}));const jF=K(c.Object({response:c.String({minLength:1}),durationMs:c.Number({minimum:0}),modelId:c.Optional(c.String()),usage:c.Optional(c.Object({promptTokens:c.Number({minimum:0}),completionTokens:c.Number({minimum:0}),totalTokens:c.Number({minimum:0}),reasoningTokens:c.Optional(c.Number({minimum:0})),cacheCreationInputTokens:c.Optional(c.Number({minimum:0})),cacheReadInputTokens:c.Optional(c.Number({minimum:0})),costUsd:c.Optional(c.Number({minimum:0}))}))}));K(c.Object({projectPath:c.String(),kind:ue(["uncommitted","base","commit"]),ref:c.Optional(c.String({maxLength:200})),instructions:c.Optional(c.String({maxLength:4e3})),modelId:c.Optional(c.String({minLength:1,maxLength:200}))}));const IF=K(c.Object({reviewId:c.String(),status:c.Literal("running")}));K(c.Object({messageId:c.String(),role:Ud,content:c.String(),timestamp:c.String()}));K(c.Object({approved:c.Boolean(),remember:c.Optional(c.Boolean()),scope:c.Optional(ue(["once","session","project"])),targetMode:c.Optional(gs),feedback:c.Optional(c.String()),answers:c.Optional(c.Record(c.String(),c.Union([c.String(),c.Array(c.String())]))),elicitation:c.Optional(c.Object({action:ue(["accept","decline","cancel"]),content:c.Optional(c.Record(c.String(),c.Union([c.String({maxLength:4e3}),c.Number(),c.Boolean(),c.Array(c.String({maxLength:1e3}),{maxItems:100})]),{maxProperties:32}))}))}));const CF=K(c.Object({id:Fr,name:c.String({minLength:1,maxLength:80}),description:c.String({minLength:1,maxLength:256}),source:ue(["built-in","user","project","plugin"]),contentSha256:c.Optional(c.String({pattern:"^[a-f0-9]{64}$"}))}));K(c.Object({id:c.String(),displayName:c.Optional(c.String()),provider:c.String(),model:c.String(),contextWindow:c.Optional(c.Number()),maxTokens:c.Optional(c.Number()),reasoning:c.Optional(c.Boolean()),supportedReasoningEfforts:c.Optional(c.Array(ue(["off","minimal","low","medium","high","xhigh","max"]))),supportedServiceTiers:c.Optional(c.Array(ue(["standard","fast","flex"]))),supportedResponseVerbosities:c.Optional(c.Array(ue(["low","medium","high"]))),communicationStyles:c.Optional(c.Array(CF,{maxItems:36})),input:c.Optional(c.Array(ue(["text","image"]))),overrides:c.Optional(c.Object({baseUrl:c.Optional(c.String()),temperature:c.Optional(c.Number()),maxOutputTokens:c.Optional(c.Number()),timeout:c.Optional(c.Number()),streamIdleTimeout:c.Optional(c.Number({minimum:1e3}))}))}));K(ue(["vs-dark","vs-light","hc-black"]));const EF=K(ue(["light","dark","system"])),TF=K(c.Object({language:c.String(),codeTheme:c.String(),uiTheme:EF,autoSaveSessions:c.Boolean(),notifyBuild:c.Boolean(),notifyErrors:c.Boolean(),notifySounds:c.Boolean(),privacyTelemetry:c.Boolean(),privacyCrash:c.Boolean(),agentTeamsEnabled:c.Boolean(),communicationStyle:c.Optional(Fr)}));K(c.Partial(TF));class Kd extends Error{constructor(t,n,r){super(t),this.status=n,this.code=r,this.name="HttpResponseError"}}function Yu(e){return e instanceof Kd}async function Dn(e,t){const n=await fetch(e,t),r=await n.json().catch(()=>{});if(!n.ok){const s=r,i=s!=null&&s.error&&typeof s.error=="object"&&!Array.isArray(s.error)?s.error:void 0,o=typeof(s==null?void 0:s.error)=="string"?s.error:typeof(i==null?void 0:i.message)=="string"?i.message:typeof(s==null?void 0:s.message)=="string"?s.message:n.statusText||`Request failed (${n.status})`;throw new Kd(o,n.status,typeof(i==null?void 0:i.code)=="string"?i.code:typeof(s==null?void 0:s.code)=="string"?s.code:void 0)}return r}const ie="",Zu=1e4,AF=c.Array(Un),PF=c.Array(Hx),NF=c.Array(qd),OF=c.Array(Ux),RF=c.Array(Rc),Xu=c.Object({cwd:c.String(),gitBranch:c.Optional(c.String()),taskAdmission:c.Optional(c.Object({inFlight:c.Integer({minimum:0}),queued:c.Integer({minimum:0}),maxConcurrent:c.Integer({minimum:1}),maxQueued:c.Integer({minimum:1}),paused:c.Optional(c.Boolean())}))}),MF=e=>Array.isArray(e)?e:e==null?"":typeof e=="string"?e:JSON.stringify(e),$F=()=>{const e=new Date,t=String(e.getFullYear()).slice(-2),n=String(e.getMonth()+1).padStart(2,"0"),r=String(e.getDate()).padStart(2,"0"),s=String(e.getHours()).padStart(2,"0"),i=String(e.getMinutes()).padStart(2,"0");return`Session ${t}-${n}-${r} ${s}:${i}`};function FF(e){const t=Bx.parse(e);return`projectPath=${encodeURIComponent(t.projectPath)}`}function ft(e,t){const n=FF(t);return`${e}${e.includes("?")?"&":"?"}${n}`}function ep(e){return{"x-blade-directory":Bx.parse(e).projectPath}}const Za=(e,t,n)=>({id:`history-${t}-${n}`,role:e.role,content:MF(e.content),timestamp:n,metadata:e.metadata&&typeof e.metadata=="object"?e.metadata:void 0,tool_call_id:e.tool_call_id,name:e.name,tool_calls:e.tool_calls,thinkingContent:e.thinkingContent??e.reasoningContent}),X={listProjects:async()=>{const e=await fetch(`${ie}/projects`);if(!e.ok)throw new Error("Failed to load projects");return Qn(PF,await e.json())},bindProject:async e=>{var n;const t=await fetch(`${ie}/projects`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:e})});if(!t.ok){const r=await t.json().catch(()=>{});throw new Error(((n=r==null?void 0:r.error)==null?void 0:n.message)||"Failed to bind project")}return Hx.parse(await t.json())},pickProjectDirectory:async()=>Qn(kF,await Dn(`${ie}/projects/pick`,{method:"POST"})),unbindProject:async e=>{if(!(await fetch(`${ie}/projects?path=${encodeURIComponent(e)}`,{method:"DELETE"})).ok)throw new Error("Failed to unbind project")},listSessions:async()=>{const e=await fetch(`${ie}/sessions`);if(!e.ok)throw new Error("Failed to load sessions");return Qn(AF,await e.json())},listSessionPage:async(e,t=50,n=!1)=>{const r=new URLSearchParams({limit:String(t)});e&&r.set("cursor",e),n&&r.set("archived","true");const s=await fetch(`${ie}/sessions/catalog?${r.toString()}`);if(!s.ok)throw new Error("Failed to load session catalog");return uF.parse(await s.json())},getSession:async e=>Un.parse(await Dn(ft(`${ie}/sessions/${e.sessionId}`,e))),createSession:async(e,t)=>{const n=await fetch(`${ie}/sessions`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({projectPath:e,title:t||$F()})});if(!n.ok)throw new Error("Failed to create session");return Un.parse(await n.json())},startCodeReview:async(e,t)=>{var r,s;const n=await fetch(`${ie}/sessions/${e.sessionId}/review`,{method:"POST",headers:{"Content-Type":"application/json",...ep(e)},body:JSON.stringify({projectPath:e.projectPath,...t})});if(!n.ok){const i=await n.json().catch(()=>{}),o=((r=i==null?void 0:i.error)==null?void 0:r.code)==="CONFLICT"?Ke("taskHome.review.conflict"):((s=i==null?void 0:i.error)==null?void 0:s.code)==="BAD_REQUEST"?Ke("taskHome.review.invalidTarget"):Ke("taskHome.review.startFailed");throw new Error(o)}return IF.parse(await n.json())},getWorkspaceInfo:async()=>Qn(Xu,await Dn(`${ie}/global/info`)),createTask:async e=>{var n;const t=await fetch(`${ie}/tasks`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)});if(!t.ok){const r=await t.json().catch(()=>{});throw new Error(((n=r==null?void 0:r.error)==null?void 0:n.message)||"Failed to dispatch task")}return Qu.parse(await t.json())},updateTask:async(e,t)=>{var r;const n=await fetch(ft(`${ie}/tasks/${e.sessionId}`,e),{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)});if(!n.ok){const s=await n.json().catch(()=>{});throw new Error(((r=s==null?void 0:s.error)==null?void 0:r.message)||"Failed to update task")}return Un.parse(await n.json())},setTaskAdmissionPaused:async e=>Qn(Xu.properties.taskAdmission,await Dn(`${ie}/global/task-admission`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({paused:e})})),retryTask:async e=>{var n;const t=await fetch(ft(`${ie}/tasks/${e.sessionId}/retry`,e),{method:"POST"});if(!t.ok){const r=await t.json().catch(()=>{});throw new Error(((n=r==null?void 0:r.error)==null?void 0:n.message)||"Failed to retry task")}return Qu.parse(await t.json())},deliverTask:async(e,t)=>{var r;const n=await fetch(ft(`${ie}/tasks/${e.sessionId}/delivery`,e),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:t})});if(!n.ok){const s=await n.json().catch(()=>{});throw new Error(((r=s==null?void 0:s.error)==null?void 0:r.message)||"Failed to deliver task changes")}return Un.parse(await n.json())},getTaskDiff:async e=>{var n;const t=await fetch(ft(`${ie}/tasks/${e.sessionId}/diff`,e));if(!t.ok){const r=await t.json().catch(()=>{});throw new Error(((n=r==null?void 0:r.error)==null?void 0:n.message)||"Failed to load task diff")}return oF.parse(await t.json())},deleteSession:async e=>{if(!(await fetch(ft(`${ie}/sessions/${e.sessionId}`,e),{method:"DELETE"})).ok)throw new Error("Failed to delete session")},archiveSession:async e=>pF.parse(await Dn(ft(`${ie}/sessions/${e.sessionId}/archive`,e),{method:"POST"})),unarchiveSession:async e=>fF.parse(await Dn(ft(`${ie}/sessions/${e.sessionId}/unarchive`,e),{method:"POST"})),exportSessionMarkdown:async(e,t=!1)=>{var u,m;const n=ft(`${ie}/sessions/${e.sessionId}/export`,e),r=t?`${n}&includeReasoning=true`:n,s=await fetch(r);if(!s.ok){const p=await s.json().catch(()=>{});throw new Error(((u=p==null?void 0:p.error)==null?void 0:u.message)||"Failed to export session")}const i=s.headers.get("content-disposition")??"",o=((m=/filename="([A-Za-z0-9._-]+)"/.exec(i))==null?void 0:m[1])??`blade-session-${e.sessionId.slice(0,12)}.md`,d=s.headers.get("x-blade-content-sha256")??"";if(!/^[a-f0-9]{64}$/.test(d))throw new Error("Session export is missing its integrity hash");const f=p=>{const h=s.headers.get(p);if(h===null)throw new Error(`Session export is missing its ${p} header`);const b=Number(h);if(!Number.isInteger(b)||b<0)throw new Error(`Session export has an invalid ${p} header`);return b};return{filename:o,markdown:await s.text(),contentSha256:d,messageCount:f("x-blade-export-messages"),activityCount:f("x-blade-export-activities"),redactionCount:f("x-blade-export-redactions")}},updateSession:async(e,t)=>{if(!(await fetch(`${ie}/sessions/${e.sessionId}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({title:t,projectPath:e.projectPath})})).ok)throw new Error("Failed to update session")},getMessages:async e=>{const t=await fetch(ft(`${ie}/sessions/${e.sessionId}/message`,e));if(!t.ok)throw new Error("Failed to load messages");const n=Qn(NF,await t.json()),r=Date.now();return n.map((s,i)=>Za(s,i,r))},sendMessage:async(e,t,n)=>{var s,i;const r=await fetch(`${ie}/sessions/${e.sessionId}/message`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({...t,permissionMode:n,projectPath:e.projectPath})});if(!r.ok){const o=await r.json().catch(()=>{}),d=((s=o==null?void 0:o.error)==null?void 0:s.message)??(o==null?void 0:o.reason);throw new Kd(d||"Failed to send message",r.status,(i=o==null?void 0:o.error)==null?void 0:i.code)}return r.json()},askSideQuestion:async(e,t,n)=>jF.parse(await Dn(`${ie}/sessions/${e.sessionId}/side-question`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({question:t,projectPath:e.projectPath}),signal:n})),executeUserShellCommand:async(e,t)=>SF.parse(await Dn(`${ie}/sessions/${e.sessionId}/shell`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({command:t,projectPath:e.projectPath})})),abortSession:async e=>{var n;const t=await fetch(ft(`${ie}/sessions/${e.sessionId}/abort`,e),{method:"POST"});if(!t.ok){const r=await t.json().catch(()=>{});throw new Error(((n=r==null?void 0:r.error)==null?void 0:n.message)||"Failed to stop task")}},getGoal:async e=>{const t=await fetch(ft(`${ie}/sessions/${e.sessionId}/goal`,e));if(!t.ok)throw new Error("Failed to load goal");return(await t.json()).goal},createGoal:async(e,t,n,r)=>{const s=await fetch(ft(`${ie}/sessions/${e.sessionId}/goal`,e),{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({objective:t,tokenBudget:n,permissionMode:r})});if(!s.ok)throw new Error("Failed to create goal");return s.json()},updateGoal:async(e,t)=>{const n=await fetch(ft(`${ie}/sessions/${e.sessionId}/goal`,e),{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)});if(!n.ok)throw new Error("Failed to update goal");return n.json()},clearGoal:async e=>{if(!(await fetch(ft(`${ie}/sessions/${e.sessionId}/goal`,e),{method:"DELETE"})).ok)throw new Error("Failed to clear goal")},listRewindCheckpoints:async e=>{const t=await fetch(ft(`${ie}/sessions/${e.sessionId}/rewind`,e));if(!t.ok)throw new Error("Failed to load rewind checkpoints");const n=await t.json();return Qn(OF,n.checkpoints)},rewindSession:async(e,t,n)=>{const r=await fetch(ft(`${ie}/sessions/${e.sessionId}/rewind`,e),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({targetMessageId:t,mode:n})});if(!r.ok)throw new Error("Failed to rewind session");const s=hF.parse(await r.json()),i=Date.now();return{...s,messages:s.messages.map((o,d)=>Za(o,d,i))}},listSubagents:async e=>{const t=await fetch(ft(`${ie}/sessions/${e.sessionId}/subagents`,e));if(!t.ok)throw new Error("Failed to load subagents");const n=await t.json();return Qn(RF,n.subagents)},resumeSubagent:async(e,t,n)=>{const r=await fetch(ft(`${ie}/sessions/${e.sessionId}/subagents/${encodeURIComponent(t)}/resume`,e),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({prompt:n})});if(!r.ok){const s=await r.json().catch(()=>{});throw new Error((s==null?void 0:s.message)||"Failed to resume subagent")}return bF.parse(await r.json())},forkSession:async e=>{const t=await fetch(`${ie}/sessions/${e.sessionId}/fork`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({projectPath:e.projectPath})});if(!t.ok)throw new Error("Failed to fork session");const n=mF.parse(await t.json()),r=Date.now();return{session:n.session,messages:n.messages.map((s,i)=>Za(s,i,r))}},openEventSubscription:async(e,t,n)=>{const r=(n==null?void 0:n.maxRetries)??5,s=n==null?void 0:n.onConnectionChange,i=n==null?void 0:n.onConnectionStateChange;let o=null,d=0,f=null,u=Date.now(),m=null,p=null,h=!1,b=!1,k=0,S,C,x=!1;const N=new Promise((O,Q)=>{S=O,C=Q}),P=()=>{m&&(clearInterval(m),m=null)},F=()=>{p&&(clearTimeout(p),p=null)},D=()=>{o==null||o.close(),o=null},j=()=>{f&&(clearTimeout(f),f=null),P(),F(),D()},I=()=>{x||(x=!0,F(),S())},T=O=>{x||(x=!0,j(),C(O))},M=()=>{if(h||d>=r){d>=r&&(console.error(`SSE max retries (${r}) reached, giving up`),i==null||i("offline"));return}d++,i==null||i("reconnecting");const O=Math.min(1e3*Math.pow(2,d-1),3e4);console.log(`SSE reconnecting in ${O}ms (attempt ${d}/${r})`),f=setTimeout(()=>{te().catch(Q=>{console.error("SSE reconnect failed",Q),s==null||s(!1),M()})},O)},$=()=>{d=0,u=Date.now(),s==null||s(!0),i==null||i("connected"),P(),m=setInterval(()=>{Date.now()-u>45e3&&(console.warn("SSE heartbeat timeout, reconnecting..."),P(),D(),s==null||s(!1),i==null||i("reconnecting"),M())},15e3),b||(b=!0,I())},te=async()=>{if(h)return;D();const O=ft(`${ie}/sessions/${e.sessionId}/events`,e),Q=k>0?`${O}${O.includes("?")?"&":"?"}lastEventId=${k}`:O;o=new EventSource(Q),b||(F(),p=setTimeout(()=>{i==null||i("offline"),T(new Error("Timed out waiting for event subscription readiness"))},Zu)),o.onmessage=ae=>{try{const le=JSON.parse(ae.data);typeof le.seq=="number"&&le.seq>k&&(k=le.seq);const de=Ju.parse(le);if(u=Date.now(),de.type==="connected"){de.properties.sessionId===e.sessionId&&de.properties.projectPath===e.projectPath&&(typeof de.properties.status=="string"&&t({type:"session.status",properties:de.properties}),$());return}if(de.type==="heartbeat")return;t(de)}catch(le){console.error("Failed to parse SSE event:",ae.data,le)}},o.onerror=()=>{if(h)return;const ae=(o==null?void 0:o.readyState)===EventSource.CLOSED;if(P(),D(),ae){s==null||s(!1),i==null||i("offline"),b||T(new Error("Event subscription closed before it was ready"));return}if(!b){i==null||i("offline"),T(new Error("Failed to open event subscription"));return}s==null||s(!1),M()}};return i==null||i("connecting"),te().catch(O=>{i==null||i("offline"),T(O instanceof Error?O:new Error("Failed to open event subscription"))}),await N,()=>{h=!0,f&&(clearTimeout(f),f=null),j(),s==null||s(!1)}},openTaskEventSubscription:async(e,t)=>{const n=t==null?void 0:t.onConnectionChange,r=t==null?void 0:t.onConnectionStateChange,s=new EventSource(`${ie}/events`);let i=!1,o=!1,d,f,u;const m=new Promise((h,b)=>{f=h,u=b}),p=()=>{i||(i=!0,d!==void 0&&(clearTimeout(d),d=void 0),s.close(),n==null||n(!1),r==null||r("offline"))};return r==null||r("connecting"),d=setTimeout(()=>{o||i||(p(),u(new Error("Timed out waiting for global task events")))},Zu),s.onmessage=h=>{try{const b=Ju.parse(JSON.parse(h.data));if(b.type==="connected"){o||(o=!0,d!==void 0&&(clearTimeout(d),d=void 0),f()),n==null||n(!0),r==null||r("connected");return}if(b.type==="heartbeat")return;e(b)}catch(b){console.error("Failed to parse global task event:",h.data,b)}},s.onerror=()=>{n==null||n(!1),r==null||r(o?"reconnecting":"offline"),!o&&!i&&(p(),u(new Error("Failed to open global task events")))},await m,p},respondPermission:async(e,t,n)=>{var i;const r=new URLSearchParams({sessionId:e.sessionId,projectPath:e.projectPath}),s=await fetch(`${ie}/permissions/${t}?${r.toString()}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(n)});if(!s.ok){const o=await s.json().catch(()=>{});throw new Error(((i=o==null?void 0:o.error)==null?void 0:i.message)||"Failed to respond to permission")}},respondToConfirmation:async(e,t,n)=>{if(!(await fetch(ft(`${ie}/sessions/${e.sessionId}/confirmation/${t}`,e),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({approved:n})})).ok)throw new Error("Failed to respond to confirmation")},respondToQuestion:async(e,t,n)=>{var i;const r=new URLSearchParams({sessionId:e.sessionId,projectPath:e.projectPath}),s=await fetch(`${ie}/permissions/${t}?${r}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({approved:!0,answers:n})});if(!s.ok){const o=await s.json().catch(()=>{});throw new Error(((i=o==null?void 0:o.error)==null?void 0:i.message)||"Failed to respond to question")}},respondToElicitation:async(e,t,n)=>{var i;const r=new URLSearchParams({sessionId:e.sessionId,projectPath:e.projectPath}),s=await fetch(`${ie}/permissions/${t}?${r}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({approved:n.action==="accept",elicitation:n})});if(!s.ok){const o=await s.json().catch(()=>{});throw new Error(((i=o==null?void 0:o.error)==null?void 0:i.message)||"Failed to respond to MCP elicitation")}},getGitInfo:async e=>{const t=await fetch(`${ie}/suggestions/git-info`,{headers:ep(e)});if(!t.ok)throw new Error("Failed to get git info");return t.json()},listSchedules:async()=>{var n;const e=await fetch(`${ie}/schedules`);if(!e.ok){const r=await e.json().catch(()=>{});throw new Error(((n=r==null?void 0:r.error)==null?void 0:n.message)||Ke("schedule.error.loadFailed"))}return yF.parse(await e.json()).schedules},createSchedule:async e=>{var n;const t=await fetch(`${ie}/schedules`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)});if(!t.ok){const r=await t.json().catch(()=>{});throw new Error(((n=r==null?void 0:r.error)==null?void 0:n.message)||Ke("schedule.error.createFailed"))}return Cs.parse(await t.json())},updateSchedule:async(e,t)=>{var r;const n=await fetch(`${ie}/schedules/${encodeURIComponent(e)}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)});if(!n.ok){const s=await n.json().catch(()=>{});throw new Error(((r=s==null?void 0:s.error)==null?void 0:r.message)||Ke("schedule.error.updateFailed"))}return Cs.parse(await n.json())},deleteSchedule:async e=>{var n;const t=await fetch(`${ie}/schedules/${encodeURIComponent(e)}`,{method:"DELETE"});if(!t.ok){const r=await t.json().catch(()=>{});throw new Error(((n=r==null?void 0:r.error)==null?void 0:n.message)||Ke("schedule.error.deleteFailed"))}},enableSchedule:async e=>{var n;const t=await fetch(`${ie}/schedules/${encodeURIComponent(e)}/enable`,{method:"POST"});if(!t.ok){const r=await t.json().catch(()=>{});throw new Error(((n=r==null?void 0:r.error)==null?void 0:n.message)||Ke("schedule.error.toggleFailed"))}return Cs.parse(await t.json())},disableSchedule:async e=>{var n;const t=await fetch(`${ie}/schedules/${encodeURIComponent(e)}/disable`,{method:"POST"});if(!t.ok){const r=await t.json().catch(()=>{});throw new Error(((n=r==null?void 0:r.error)==null?void 0:n.message)||Ke("schedule.error.toggleFailed"))}return Cs.parse(await t.json())},runSchedule:async e=>{var n;const t=await fetch(`${ie}/schedules/${encodeURIComponent(e)}/run`,{method:"POST"});if(!t.ok){const r=await t.json().catch(()=>{});throw new Error(((n=r==null?void 0:r.error)==null?void 0:n.message)||Ke("schedule.error.runFailed"))}return Cs.parse(await t.json())}},LF=(e,t)=>({messages:[],setMessages:n=>e({messages:n}),addMessage:n=>e(r=>({messages:[...r.messages,n]})),updateMessage:(n,r)=>e(s=>({messages:s.messages.map(i=>i.id===n?{...i,...r}:i)})),appendDelta:(n,r,s)=>e(i=>({messages:i.messages.map(o=>{if(o.id!==n)return o;const d=o.agentContent||Wn();return s==="before"?{...o,agentContent:{...du(d,r),textBefore:d.textBefore+r}}:{...o,agentContent:{...du(d,r),textAfter:d.textAfter+r}}})})),appendToolCall:(n,r)=>e(s=>({messages:s.messages.map(i=>{if(i.id!==n)return i;const o=i.agentContent||Wn();return{...i,agentContent:J0(o,r)}})})),updateToolCall:(n,r,s)=>e(i=>({messages:i.messages.map(o=>{if(o.id!==n)return o;const d=o.agentContent;return d?{...o,agentContent:{...d,toolCalls:d.toolCalls.map(f=>f.toolCallId===r?{...f,...s}:f)}}:o})})),appendThinking:(n,r)=>e(s=>({messages:s.messages.map(i=>{if(i.id!==n)return i;const o=i.agentContent||Wn();return{...i,agentContent:{...W0(o,r),thinkingContent:o.thinkingContent+r}}})})),setConfirmation:(n,r)=>e(s=>({messages:s.messages.map(i=>{if(i.id!==n)return i;const o=i.agentContent||Wn();return{...i,agentContent:{...o,confirmation:r}}})})),setQuestion:(n,r)=>e(s=>({messages:s.messages.map(i=>{if(i.id!==n)return i;const o=i.agentContent||Wn();return{...i,agentContent:{...o,question:r}}})})),setElicitation:(n,r)=>e(s=>({messages:s.messages.map(i=>{if(i.id!==n)return i;const o=i.agentContent||Wn();return{...i,agentContent:{...o,elicitation:r}}})})),setSubagent:(n,r)=>e(s=>({messages:s.messages.map(i=>{if(i.id!==n)return i;const o=i.agentContent||Wn();return{...i,agentContent:r?V0(o,r):lu(o,[])}})})),updateSubagent:(n,r,s)=>e(i=>({messages:i.messages.map(o=>{if(o.id!==n)return o;const d=o.agentContent||Wn(),f=[...G0(d)],u=f.findIndex(h=>h.id===r||h.sessionId===r);if(u===-1)return o;const m=f[u],p=typeof s=="function"?s(m):s;return f[u]={...m,...p,id:m.id},{...o,agentContent:lu(d,f,f[u].id)}})})),setTasks:(n,r)=>e(s=>({messages:s.messages.map(i=>{if(i.id!==n)return i;const o=i.agentContent||Wn();return{...i,agentContent:{...o,tasks:r}}})})),replaceTemp:(n,r)=>e(s=>{const i=s.messages.findIndex(d=>d.content===n&&d.role==="user");if(i===-1)return s;const o=[...s.messages];return o[i]=r,{messages:o}})}),Xa=60,DF=[/<system-reminder>[\s\S]*?<\/system-reminder>/gi,/<file[^>]*>[\s\S]*?<\/file>/gi,/<hooks_context>[\s\S]*?<\/hooks_context>/gi,/<[^>]+>/g];function _F(e){let t=e;for(const f of DF)t=t.replace(f," ");t=t.replace(/^\s*\/[a-zA-Z][\w-]*\s+/,"");const n=t.replace(/\s+/g," ").trim();if(!n)return"";const r=n.match(/^(.+?)(?:[.!?]\s|[。!?](?=\S|$)|$)/);let s=r&&r[1].length>=6?r[1]:n;if(s=s.trim().replace(/[\s.。!!??,,;;::-]+$/,""),s.length<=Xa)return s;const i=s.slice(0,Xa),o=i.lastIndexOf(" ");return`${(o>Xa*.6?i.slice(0,o):i).trimEnd()}…`}const Po="/.blade/worktrees/",UF=/-[a-f0-9]{8,}$/i,BF=/^(.+?(?:test|config))-[a-z0-9]{6,}$/i;function HF(e){const t=e.indexOf(Po);if(t<0)return null;const n=e.slice(t+Po.length).split("/")[0];return n?`${e.slice(0,t+Po.length)}${n}`:null}function qF(e){if(!e.includes("/tmp/")&&!e.includes("/T/"))return null;const t=e.split("/"),n=t.at(-1),r=n==null?void 0:n.match(BF);return r!=null&&r[1]?(t[t.length-1]=r[1],t.join("/")):null}function Mc(e){const t=e.split("/").filter(Boolean).at(-1)||e;return e.includes(Po)?t.replace(UF,""):t}function lo(e,t=null){const n=e.taskSourceProjectPath,r=qF(n||e.projectPath);if(r)return r;if(n)return n;const s=HF(e.projectPath);if(!s)return e.projectPath;const i=Mc(s);return t&&i===Mc(t)?t:s}function zF(e,t,n=null){return t?e.filter(r=>lo(r,n)===t):e}const $c=kr.AUTO_EDIT;let ec=0;const Mt=Qo((e,t)=>({currentModelId:null,currentMode:$c,configuredModels:[],availableModels:[],isLoading:!1,hasLoaded:!1,loadedWorkspacePath:null,error:null,loadModels:async n=>{const r=n??null;if(t().isLoading&&t().loadedWorkspacePath===r)return;const s=++ec;e({isLoading:!0,hasLoaded:!1,loadedWorkspacePath:r,error:null});try{const i=await Dn("/models",n?{headers:{"x-blade-directory":n}}:void 0);if(s!==ec||t().loadedWorkspacePath!==r)return;const o=i.current;e({currentModelId:(o==null?void 0:o.id)||null,configuredModels:i.configured||[],availableModels:i.available||[],isLoading:!1,hasLoaded:!0})}catch(i){if(s!==ec||t().loadedWorkspacePath!==r)return;e({error:i instanceof Error?i.message:"Failed to load models",isLoading:!1,hasLoaded:!0})}},setCurrentModel:async(n,r)=>{if(e({error:null}),r){e({currentModelId:n});return}try{await Dn("/configs",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({updates:{currentModelId:n},options:{scope:"global"}})}),e({currentModelId:n})}catch(s){throw e({error:s instanceof Error?s.message:"Failed to set model"}),s}},setMode:n=>e({currentMode:n}),resetMode:()=>e({currentMode:$c})})),KF=e=>e==="system"?typeof window<"u"&&typeof window.matchMedia=="function"&&window.matchMedia("(prefers-color-scheme: dark)").matches:e==="dark",No=e=>{if(typeof document>"u")return;const t=document.documentElement;if(t.classList.remove("light","dark"),e==="system"){const r=typeof window<"u"&&typeof window.matchMedia=="function"&&window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light";t.classList.add(r)}else t.classList.add(e)},rn={language:"zh-CN",codeTheme:"dracula",uiTheme:"system",autoSaveSessions:!0,notifyBuild:!0,notifyErrors:!1,notifySounds:!1,privacyTelemetry:!1,privacyCrash:!0,agentTeamsEnabled:!1,communicationStyle:"auto"},Xr=Qo((e,t)=>({...rn,isLoading:!1,error:null,loadSettings:async()=>{e({isLoading:!0,error:null});try{const n=await fetch("/configs");if(!n.ok)throw new Error(Ke("settings.general.loadError"));const r=await n.json(),s=r.uiTheme??rn.uiTheme;e({language:r.language??rn.language,codeTheme:r.codeTheme??rn.codeTheme,uiTheme:s,autoSaveSessions:r.autoSaveSessions??rn.autoSaveSessions,notifyBuild:r.notifyBuild??rn.notifyBuild,notifyErrors:r.notifyErrors??rn.notifyErrors,notifySounds:r.notifySounds??rn.notifySounds,privacyTelemetry:r.privacyTelemetry??rn.privacyTelemetry,privacyCrash:r.privacyCrash??rn.privacyCrash,agentTeamsEnabled:r.agentTeamsEnabled??rn.agentTeamsEnabled,communicationStyle:r.communicationStyle??rn.communicationStyle,isLoading:!1}),No(s)}catch(n){e({error:n.message,isLoading:!1})}},updateSettings:async n=>{const r=t();e({...n,error:null}),n.uiTheme&&No(n.uiTheme);try{if(!(await fetch("/configs",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({updates:n,options:{scope:"global"}})})).ok)throw new Error(Ke("settings.general.saveError"))}catch(s){e({language:r.language,codeTheme:r.codeTheme,uiTheme:r.uiTheme,autoSaveSessions:r.autoSaveSessions,notifyBuild:r.notifyBuild,notifyErrors:r.notifyErrors,notifySounds:r.notifySounds,privacyTelemetry:r.privacyTelemetry,privacyCrash:r.privacyCrash,agentTeamsEnabled:r.agentTeamsEnabled,communicationStyle:r.communicationStyle,error:s.message}),n.uiTheme&&No(r.uiTheme)}}}));No(rn.uiTheme);const I3=()=>Xr(e=>KF(e.uiTheme)),tc="__temp__",ci={inputTokens:0,outputTokens:0,totalTokens:0,maxContextTokens:0,isDefaultMaxTokens:!0,totalInputTokens:0,totalOutputTokens:0,cacheReadTokens:0,cacheWriteTokens:0,estimatedCostUsd:0};function be(e){return{sessionId:e.sessionId,projectPath:e.projectPath}}function Me(e){return JSON.stringify([e.projectPath,e.sessionId])}function oe(e,t){return!e||!t?e===t:e.sessionId===t.sessionId&&e.projectPath===t.projectPath}function Gd(e,t){return e.find(n=>oe(be(n),t))}function hn(e,t){const n=be(t),r=e.findIndex(i=>oe(be(i),n));if(r===-1)return[...e,t];const s=[...e];return s[r]=t,s}function tp(e,t){return e.filter(n=>!oe(be(n),t))}const Kx="blade.tasks.unread",Go="blade:open-session";function Gx(e){return e==="completed"||e==="failed"||e==="interrupted"}function GF(e,t,n){return!Gx(t)||n?!1:e!==t&&!(e==="completed"||e==="failed"||e==="interrupted"||e==="cancelled")}function VF(e=typeof localStorage>"u"?null:localStorage){if(!e)return[];try{const t=JSON.parse(e.getItem(Kx)??"[]");return Array.isArray(t)?[...new Set(t.filter(n=>typeof n=="string"))]:[]}catch{return[]}}function hi(e,t=typeof localStorage>"u"?null:localStorage){if(t)try{t.setItem(Kx,JSON.stringify([...new Set(e)]))}catch{}}function np(e,t){const n=new Set(t.map(r=>Me({sessionId:r.sessionId,projectPath:r.projectPath})));return e.filter(r=>n.has(r))}function rp(e){if(typeof document>"u"||document.visibilityState!=="hidden"||typeof Notification>"u"||Notification.permission!=="granted")return!1;const t=new Notification(e.title,{body:e.body,icon:"/favicon.svg",tag:`blade-task-${Me(e.ref)}`});return t.onclick=()=>e.onOpen(e.ref),!0}function WF(e){if(typeof window>"u")return!1;const t=window.AudioContext??window.webkitAudioContext;if(!t)return!1;try{const n=new t,r=n.createOscillator(),s=n.createGain();return r.type="sine",r.frequency.value=e==="completed"?660:330,s.gain.setValueAtTime(1e-4,n.currentTime),s.gain.exponentialRampToValueAtTime(.045,n.currentTime+.015),s.gain.exponentialRampToValueAtTime(1e-4,n.currentTime+.18),r.connect(s),s.connect(n.destination),r.start(),r.stop(n.currentTime+.2),r.onended=()=>void n.close(),!0}catch{return!1}}const JF=e=>{var n;const t=[];e.content.trim()&&t.push({type:"text",text:e.content});for(const r of e.attachments??[])r.type==="image"&&t.push({type:"image_url",image_url:{url:r.content}});return t.length===0?e.content:t.length===1&&((n=t[0])==null?void 0:n.type)==="text"?t[0].text:t},So=()=>({eventUnsubscribe:null,sessionEventConnectionState:"idle",isStreaming:!1,isStopping:!1,agentPhase:"idle",providerAdmission:null,providerCircuit:null,providerRetry:null,providerStall:null,actionStationarity:null,turnRecovery:null,currentRunId:null,pendingSteeringCount:0,pendingInputDelivery:null,recoveredSteeringCount:0,pendingSubagentCompletions:{},currentAssistantMessageId:null,hasToolCalls:!1}),sp=()=>new Promise(e=>{globalThis.setTimeout(()=>{if(typeof window<"u"&&typeof window.requestIdleCallback=="function"){window.requestIdleCallback(()=>e(),{timeout:750});return}e()},350)}),ip=async e=>(await es(async()=>{const{teamService:t}=await import("./teamService-JyVbGQhi.js");return{teamService:t}},__vite__mapDeps([0,1,2,3]))).teamService.list(e),QF=(e,t)=>{let n=0,r=0,s=0;const i=new Map,o=new Map;let d=null;const f=()=>(d==null||d.abort("session-navigation"),d=null,n+=1,n),u=p=>p===n,m=p=>{try{p()}catch(h){console.warn("Failed to clean up stale event subscription",h)}};return{sessions:[],archivedSessions:[],currentSessionId:null,currentSessionRef:null,forkingSessionRef:null,isTemporarySession:!1,isLoading:!1,catalogLoadState:"idle",catalogError:null,archivedCatalogLoadState:"idle",archivedCatalogError:null,error:null,errorContext:null,goal:null,sideConversation:null,teams:[],setSessions:p=>e({sessions:p}),addSession:p=>e(h=>({sessions:hn(h.sessions,p)})),removeSession:p=>{const h=t();h.markTaskRead(p);const b=oe(h.currentSessionRef,p),k=oe(h.forkingSessionRef,p);(b||k)&&f(),b&&h.unsubscribeFromEvents(),e(S=>({sessions:tp(S.sessions,p),currentSessionId:b?null:S.currentSessionId,currentSessionRef:b?null:S.currentSessionRef,messages:b?[]:S.messages,goal:b?null:S.goal,sideConversation:b?null:S.sideConversation,teams:b?[]:S.teams,forkingSessionRef:k?null:S.forkingSessionRef,...b?So():{}}))},setCurrentSession:p=>{f(),e({currentSessionId:(p==null?void 0:p.sessionId)??null,currentSessionRef:p,isTemporarySession:!1,sideConversation:null,teams:[]})},setTemporarySession:p=>e({isTemporarySession:p}),setLoading:p=>e({isLoading:p}),setError:p=>e({error:p,errorContext:null}),getNavigationVersion:()=>n,clearError:()=>e({error:null,errorContext:null}),setGoal:p=>e({goal:p}),startTemporarySession:p=>{f(),t().unsubscribeFromEvents(),Mt.getState().resetMode(),p&&t().selectProject(p),e({currentSessionId:tc,currentSessionRef:null,isTemporarySession:!0,forkingSessionRef:null,isLoading:!1,messages:[],goal:null,sideConversation:null,teams:[],tokenUsage:{...ci},error:null,errorContext:null,...So()})},loadSessions:async()=>{const p=++r,h=new Set(t().sessions.map(k=>Me(be(k)))),b=new Set;e({catalogLoadState:"loading",catalogError:null});try{let k,S=!0;do{const N=await X.listSessionPage(k);if(p!==r)return;for(const P of N.sessions)b.add(Me(be(P)));if(e(P=>{const F=new Set(N.sessions.map(j=>Me(be(j))));return{sessions:S?[...N.sessions,...P.sessions.filter(j=>!F.has(Me(be(j))))]:N.sessions.reduce((j,I)=>hn(j,I),P.sessions),catalogLoadState:N.nextCursor?"hydrating":"ready"}}),S=!1,k=N.nextCursor,k&&(await sp(),p!==r))return}while(k);if(p!==r)return;const C=t().sessions.filter(N=>{const P=Me(be(N));return b.has(P)||!h.has(P)}),x=np(t().unreadTaskKeys,C);hi(x),e({sessions:C,unreadTaskKeys:x,catalogLoadState:"ready",catalogError:null})}catch(k){if(p!==r)return;e({catalogLoadState:"error",catalogError:k.message})}},loadArchivedSessions:async()=>{const p=++s;e({archivedCatalogLoadState:"loading",archivedCatalogError:null});try{let h;const b=[];do{const k=await X.listSessionPage(h,50,!0);if(p!==s)return;for(const S of k.sessions){const C=b.findIndex(x=>oe(be(x),be(S)));C===-1?b.push(S):b[C]=S}h=k.nextCursor,h&&(e({archivedCatalogLoadState:"hydrating"}),await sp())}while(h);if(p!==s)return;e({archivedSessions:b,archivedCatalogLoadState:"ready",archivedCatalogError:null})}catch(h){if(p!==s)return;e({archivedCatalogLoadState:"error",archivedCatalogError:h.message})}},selectSession:async p=>{var k;const h=f();e({isLoading:!0,error:null,errorContext:null,forkingSessionRef:null});let b=null;try{const S=Gd(t().sessions,p),C=[];let x=!1;if(b=await t().prepareEventSubscription(p,T=>{x?t().handleEvent(T):C.push(T)}),!u(h)){m(b),b=null;return}const[N,P,F,D]=await Promise.all([X.getMessages(p),X.getGoal(p).catch(()=>null),S?Promise.resolve(S):X.getSession(p),Xr.getState().agentTeamsEnabled?ip(p).catch(()=>[]):Promise.resolve([])]);if(!u(h)){m(b),b=null;return}const j=wo(N),I=lo(F,t().selectedProjectPath??((k=t().taskWorkspaceInfo)==null?void 0:k.cwd)??null);t().boundProjects.some(T=>T.available&&T.path===I)&&t().selectProject(I),Mt.getState().setMode(F.permissionMode??$c),e(T=>{var M;return{currentSessionId:p.sessionId,currentSessionRef:p,isTemporarySession:!1,messages:j,goal:P,teams:D,isLoading:!1,tokenUsage:{...ci},isStreaming:!1,isStopping:!1,agentPhase:"idle",providerAdmission:null,providerCircuit:null,providerRetry:null,providerStall:null,actionStationarity:null,turnRecovery:null,currentRunId:null,pendingSteeringCount:0,pendingInputDelivery:null,recoveredSteeringCount:0,pendingSubagentCompletions:{},currentAssistantMessageId:null,hasToolCalls:!1,error:F.taskStatus==="failed"?((M=F.taskFailure)==null?void 0:M.message)??null:null,errorContext:F.taskStatus==="failed"&&F.taskFailure?{kind:"execution",sessionRef:p,failureCode:F.taskFailure.code}:null,sessions:hn(T.sessions,F)}}),t().markTaskRead(p),x=!0,t().replaceEventSubscription(b),b=null;for(const T of C)t().handleEvent(T)}catch(S){if(b&&m(b),!u(h))return;e({error:S.message,errorContext:{kind:"navigation",sessionRef:p},isLoading:!1})}},resyncSessionMessages:async p=>{const h=Me(p),b=i.get(h);if(b)return b;const k=n,S=Promise.resolve().then(async()=>{try{const C=await X.getMessages(p);if(!u(k)||!oe(t().currentSessionRef,p))return;const x=wo(C);e(N=>({messages:x,sessions:N.sessions.map(P=>oe(be(P),p)?{...P,messageCount:x.length}:P)}))}catch(C){console.warn("Failed to resync terminal session messages",C)}finally{i.get(h)===S&&i.delete(h)}});return i.set(h,S),S},archiveSession:async p=>{var h;try{const b=await X.archiveSession(p),k=new Set(b.archivedSessionIds),S=t(),C=((h=S.currentSessionRef)==null?void 0:h.projectPath)===p.projectPath&&k.has(S.currentSessionRef.sessionId);C&&(f(),S.unsubscribeFromEvents()),e(x=>{const N=x.sessions.filter(F=>F.projectPath!==p.projectPath||!k.has(F.sessionId)),P=np(x.unreadTaskKeys,N);return hi(P),{sessions:N,archivedSessions:hn(x.archivedSessions,b.session),unreadTaskKeys:P,currentSessionId:C?null:x.currentSessionId,currentSessionRef:C?null:x.currentSessionRef,messages:C?[]:x.messages,goal:C?null:x.goal,...C?So():{}}}),await t().loadArchivedSessions()}catch(b){e({error:b.message,errorContext:{kind:"task_action",sessionRef:p}})}},unarchiveSession:async p=>{try{const h=await X.unarchiveSession(p),b=new Set(h.restoredSessionIds);e(k=>({archivedSessions:k.archivedSessions.filter(S=>S.projectPath!==p.projectPath||!b.has(S.sessionId)),sessions:hn(k.sessions,h.session)})),await Promise.all([t().loadSessions(),t().loadArchivedSessions()])}catch(h){e({error:h.message,errorContext:{kind:"task_action",sessionRef:p}})}},deleteSession:async p=>{const h=t(),b=oe(h.currentSessionRef,p),k=oe(h.forkingSessionRef,p),S=b||k?f():null,C=b?S:null;k&&e({forkingSessionRef:null});try{await X.deleteSession(p),t().markTaskRead(p);const x=t(),N=oe(x.currentSessionRef,p)&&(C===null||u(C));N&&(f(),x.unsubscribeFromEvents()),e(P=>({sessions:tp(P.sessions,p),currentSessionId:N?null:P.currentSessionId,currentSessionRef:N?null:P.currentSessionRef,messages:N?[]:P.messages,goal:N?null:P.goal,...N?So():{}}))}catch(x){if(C!==null&&(!u(C)||!oe(t().currentSessionRef,p)))return;e({error:x.message})}},updateSession:async(p,h)=>{try{await X.updateSession(p,h),e(b=>({sessions:b.sessions.map(k=>k.sessionId===p.sessionId&&k.projectPath===p.projectPath?{...k,title:h}:k)}))}catch(b){e({error:b.message})}},forkSession:async p=>{const h=f(),b=be(p);e({forkingSessionRef:b,isLoading:!1,error:null});let k=null;try{const S=await X.forkSession(p),C=be(S.session),x=wo(S.messages);if(e(N=>({sessions:hn(N.sessions,S.session)})),!u(h))return;if(k=await t().prepareEventSubscription(C),!u(h)){m(k),k=null;return}e({currentSessionId:C.sessionId,currentSessionRef:C,isTemporarySession:!1,messages:x,goal:null,tokenUsage:{...ci},error:null,forkingSessionRef:null}),t().replaceEventSubscription(k),k=null}catch(S){if(k&&m(k),!u(h))return;e({error:S.message,forkingSessionRef:null})}},rewindSession:async(p,h)=>{const{currentSessionRef:b,isTemporarySession:k,isStreaming:S}=t();if(!b||k)return e({error:"No persisted session is available for rewind"}),!1;if(S)return e({error:"Stop the active run before rewinding"}),!1;const C=n;try{const x=await X.rewindSession(b,p,h);if(!u(C)||!oe(t().currentSessionRef,b))return!1;const N=wo(x.messages);return e(P=>({messages:N,tokenUsage:{...ci},error:null,currentRunId:null,agentPhase:"idle",providerAdmission:null,providerCircuit:null,providerRetry:null,providerStall:null,actionStationarity:null,turnRecovery:null,pendingSteeringCount:0,pendingInputDelivery:null,recoveredSteeringCount:0,pendingSubagentCompletions:{},currentAssistantMessageId:null,hasToolCalls:!1,sessions:P.sessions.map(F=>F.sessionId===b.sessionId&&F.projectPath===b.projectPath?{...F,messageCount:N.length}:F)})),!0}catch(x){return!u(C)||!oe(t().currentSessionRef,b)||e({error:x.message}),!1}},sendMessage:async p=>{var O,Q,ae,le,de,me;const{currentSessionId:h,currentSessionRef:b,isTemporarySession:k,isStreaming:S,addSession:C,addMessage:x}=t(),N=n,P=b,F={isStreaming:S,agentPhase:t().agentPhase,currentRunId:t().currentRunId};let D=b,j=h,I=P,T=null,M=null;const $=()=>u(N)&&oe(t().currentSessionRef,I),te=X$(p.content);if(te){if((((O=p.attachments)==null?void 0:O.length)??0)>0)return e({error:"Side conversations do not accept image attachments"}),!1;if(!te.question)return e({error:"Usage: /btw <question>"}),!1;if(k||!D||!j)return e({error:"Start or select a Session before using /btw"}),!1;d==null||d.abort("side-conversation-replaced");const Y=new AbortController;d=Y;const he=`${Date.now()}-${Math.random().toString(36).slice(2,8)}`;e({sideConversation:{requestId:he,sessionRef:D,question:te.question,status:"loading"},error:null,errorContext:null});try{const R=await X.askSideQuestion(D,te.question,Y.signal);return Y.signal.aborted||!$()||((Q=t().sideConversation)==null?void 0:Q.requestId)!==he?!1:(e({sideConversation:{requestId:he,sessionRef:D,question:te.question,status:"completed",response:R.response,durationMs:R.durationMs,modelId:R.modelId}}),R.usage&&t().updateTokenUsage({inputTokens:R.usage.promptTokens,outputTokens:R.usage.completionTokens,totalTokens:R.usage.totalTokens,cacheReadTokens:R.usage.cacheReadInputTokens??0,cacheWriteTokens:R.usage.cacheCreationInputTokens??0,costUsd:R.usage.costUsd}),!0)}catch(R){return Y.signal.aborted||!$()||e({sideConversation:{requestId:he,sessionRef:D,question:te.question,status:"error",error:R instanceof Error?R.message:String(R)}}),!1}finally{d===Y&&(d=null)}}if(d==null||d.abort("main-conversation-submitted"),d=null,t().sideConversation&&e({sideConversation:null}),k||!j||j===tc)try{const Y=_F(p.content),he=await X.createSession(t().selectedProjectPath??((ae=t().taskWorkspaceInfo)==null?void 0:ae.cwd)??void 0,Y||void 0);if(C(he),!$())return!1;D=be(he),j=he.sessionId,e({currentSessionId:he.sessionId,currentSessionRef:D,isTemporarySession:!1}),I=D}catch(Y){return $()&&e({error:Y.message}),!1}if(!D||!j||j===tc)return $()&&e({error:"Failed to create session"}),!1;try{if(!S){if(T=await t().prepareEventSubscription(D),!$())return m(T),T=null,!1;t().replaceEventSubscription(T),T=null}if(!$())return!1;const Y=p.content.trim();if(Y.startsWith("!")){if((((le=p.attachments)==null?void 0:le.length)??0)>0)throw new Error("User shell commands do not accept image attachments");const B=Y.slice(1).trim();if(!B)throw new Error("User shell command cannot be empty");S||e({isStreaming:!0,agentPhase:"running",error:null,errorContext:null});const Se=await X.executeUserShellCommand(D,B);return $()?(Se.auxiliary||e({isStreaming:!1,agentPhase:"idle"}),Se.delivery&&e({pendingSteeringCount:Se.queued??0,pendingInputDelivery:Se.delivery==="current_turn"?"current_turn":"next_turn"}),!0):!1}if((((de=p.attachments)==null?void 0:de.length)??0)===0&&(Y==="/goal"||Y.startsWith("/goal "))){M=`goal-command-${Date.now()}`,x({id:M,role:"user",content:Y,timestamp:Date.now()});const B=Y.slice(5).trim().split(/\s+/).filter(Boolean),Se=(me=B[0])==null?void 0:me.toLowerCase();if(!Se||Se==="status"){const Pe=await X.getGoal(D);return $()&&e({goal:Pe}),$()}if(Se==="clear")return await X.clearGoal(D),$()&&e({goal:null}),$();let qe;if(Se==="pause")qe=await X.updateGoal(D,{action:"pause"});else if(Se==="resume")qe=await X.updateGoal(D,{action:"resume"});else if(Se==="edit"){const Pe=B.slice(1).join(" ").trim();if(!Pe)throw new Error("Usage: /goal edit <objective>");qe=await X.updateGoal(D,{action:"edit",objective:Pe})}else{const Pe=B.lastIndexOf("--budget");let Jt;if(Pe>=0){const Qt=B[Pe+1];if(!Qt||!/^[1-9]\d*$/.test(Qt))throw new Error("--budget requires a positive integer");Jt=Number(Qt),B.splice(Pe,2)}const et=B.join(" ").trim();if(!et)throw new Error("Usage: /goal <objective>");const{currentMode:Ht}=Mt.getState();qe=await X.createGoal(D,et,Jt,Ht)}return $()?(e({goal:qe.goal,...qe.runId?{currentRunId:qe.runId,isStreaming:!0,agentPhase:"running"}:{}}),!0):!1}M=`temp-${Date.now()}-${Math.random().toString(36).slice(2,8)}`,x({id:M,role:"user",content:JF(p),timestamp:Date.now()}),e({isStreaming:!0,error:null,errorContext:null,recoveredSteeringCount:S?t().recoveredSteeringCount:0});const{currentMode:he,currentModelId:R}=Mt.getState(),{modelId:ce,...ve}=p,He=ce??R??void 0,yt=p.reasoningEffort,We=p.serviceTier,tt=p.responseVerbosity,Z=p.communicationStyle,pt=He&&!S?{...ve,modelId:He}:ve,L=await X.sendMessage(D,pt,he);return $()?(e({currentRunId:L.runId,pendingSteeringCount:L.status==="steering_queued"||L.status==="follow_up_queued"?Math.max(0,L.queued??1):t().pendingSteeringCount,pendingInputDelivery:L.status==="steering_queued"?"current_turn":L.status==="follow_up_queued"?"next_turn":t().pendingInputDelivery,sessions:(He||yt||We||tt||Z)&&!S?t().sessions.map(B=>B.sessionId===D.sessionId&&B.projectPath===D.projectPath?{...B,...He?{selectedModelId:He}:{},...yt?{reasoningEffort:yt}:{},...We?{serviceTier:We}:{},...tt?{responseVerbosity:tt}:{},...Z?{communicationStyle:Z}:{}}:B):t().sessions}),!0):!1}catch(Y){if(T&&m(T),!$())return!1;if(M&&!t().messages.some(R=>R.id===M)&&!Yu(Y))return!0;const he=Yu(Y)&&Y.code==="SESSION_WORKSPACE_UNAVAILABLE"?"workspace_unavailable":void 0;return e(R=>({error:Y.message,errorContext:{kind:"submission",sessionRef:D,...he?{failureCode:he}:{}},messages:M?R.messages.filter(ce=>ce.id!==M):R.messages,...F})),!1}},dismissSideConversation:()=>{d==null||d.abort("side-conversation-dismissed"),d=null,e({sideConversation:null})},loadTeams:async p=>{const h=p??t().currentSessionRef;if(!h||!Xr.getState().agentTeamsEnabled){e({teams:[]});return}const b=Me(h),k=o.get(b);if(k)return k;let S;S=(async()=>{try{const C=await ip(h);if(!oe(t().currentSessionRef,h))return;e({teams:C})}catch{oe(t().currentSessionRef,h)&&e({teams:[]})}finally{o.get(b)===S&&o.delete(b)}})(),o.set(b,S),await S},abortSession:async()=>{const{currentSessionRef:p,isStopping:h}=t();if(!p||h)return!1;e({isStopping:!0,error:null,errorContext:null});try{return await X.abortSession(p),!oe(t().currentSessionRef,p)||(await t().resyncSessionMessages(p),!oe(t().currentSessionRef,p))?!1:(t().unsubscribeFromEvents(),e({isStreaming:!1,isStopping:!1,agentPhase:"idle",providerAdmission:null,providerCircuit:null,providerRetry:null,providerStall:null,actionStationarity:null,turnRecovery:null,currentRunId:null,pendingSteeringCount:0,pendingInputDelivery:null,recoveredSteeringCount:0,pendingSubagentCompletions:{},currentAssistantMessageId:null,hasToolCalls:!1}),!0)}catch(b){return oe(t().currentSessionRef,p)&&e({isStopping:!1,error:b instanceof Error?b.message:"Failed to stop task",errorContext:{kind:"task_action",sessionRef:p}}),!1}},pauseGoal:async()=>{const{currentSessionRef:p,isTemporarySession:h}=t();if(!p||h){e({error:"No persisted session is available for this goal"});return}try{const b=await X.updateGoal(p,{action:"pause"});if(!oe(t().currentSessionRef,p))return;e({goal:b.goal,error:null})}catch(b){if(!oe(t().currentSessionRef,p))return;e({error:b.message})}},resumeGoal:async()=>{const{currentSessionRef:p,isTemporarySession:h}=t();if(!p||h){e({error:"No persisted session is available for this goal"});return}try{const b=await X.updateGoal(p,{action:"resume"});if(!oe(t().currentSessionRef,p))return;e({goal:b.goal,error:null,...b.runId?{currentRunId:b.runId,isStreaming:!0,agentPhase:"running"}:{}})}catch(b){if(!oe(t().currentSessionRef,p))return;e({error:b.message})}},editGoal:async p=>{const{currentSessionRef:h,isTemporarySession:b}=t();if(!h||b){e({error:"No persisted session is available for this goal"});return}try{const k=await X.updateGoal(h,{action:"edit",objective:p});if(!oe(t().currentSessionRef,h))return;e({goal:k.goal,error:null,...k.runId?{currentRunId:k.runId,isStreaming:!0,agentPhase:"running"}:{}})}catch(k){if(!oe(t().currentSessionRef,h))return;e({error:k.message})}},clearGoal:async()=>{const{currentSessionRef:p,isTemporarySession:h}=t();if(!p||h){e({error:"No persisted session is available for this goal"});return}try{if(await X.clearGoal(p),!oe(t().currentSessionRef,p))return;e({goal:null,error:null})}catch(b){if(!oe(t().currentSessionRef,p))return;e({error:b.message})}}}},YF=(e,t)=>{const n=new WeakMap;let r=null;return{isStreaming:!1,isStopping:!1,agentPhase:"idle",providerAdmission:null,providerCircuit:null,providerRetry:null,providerStall:null,actionStationarity:null,turnRecovery:null,sessionEventConnectionState:"idle",currentRunId:null,pendingSteeringCount:0,pendingInputDelivery:null,recoveredSteeringCount:0,pendingSubagentCompletions:{},eventUnsubscribe:null,currentAssistantMessageId:null,hasToolCalls:!1,setStreaming:s=>e({isStreaming:s}),setAgentPhase:s=>e({agentPhase:s}),setRunId:s=>e({currentRunId:s}),prepareEventSubscription:async(s,i)=>{const o=i??uu(t,e);let d=null,f="connecting";return d=await X.openEventSubscription(s,o,{onConnectionStateChange:u=>{f=u,d&&r===d&&e({sessionEventConnectionState:u})}}),n.set(d,f),d},replaceEventSubscription:s=>{const i=t().eventUnsubscribe;if(r=s,e({eventUnsubscribe:s,sessionEventConnectionState:s?n.get(s)??"connected":"idle"}),Ka.reset(),i&&i!==s)try{i()}catch(o){console.warn("Failed to clean up previous event subscription",o)}},setCurrentAssistantMessageId:s=>e({currentAssistantMessageId:s}),setHasToolCalls:s=>e({hasToolCalls:s}),startAgentResponse:s=>{e({currentAssistantMessageId:s,hasToolCalls:!1,isStreaming:!0,agentPhase:"running",providerAdmission:null,providerCircuit:null,providerRetry:null,providerStall:null,actionStationarity:null,turnRecovery:null})},endAgentResponse:()=>{Ka.drainAll(),e({currentAssistantMessageId:null,hasToolCalls:!1,isStreaming:!1,isStopping:!1,agentPhase:"idle",providerAdmission:null,providerCircuit:null,providerRetry:null,providerStall:null,actionStationarity:null,currentRunId:null,pendingSteeringCount:0,pendingInputDelivery:null})},subscribeToEvents:async s=>{const i=await t().prepareEventSubscription(s);t().replaceEventSubscription(i)},reconnectSessionEvents:async()=>{const s=t().currentSessionRef;if(s){t().unsubscribeFromEvents(),e({sessionEventConnectionState:"connecting"});try{await t().subscribeToEvents(s)}catch(i){throw e({sessionEventConnectionState:"offline"}),i}}},unsubscribeFromEvents:()=>{const{eventUnsubscribe:s}=t();r=null,e({eventUnsubscribe:null,sessionEventConnectionState:"idle"});try{s==null||s()}catch(i){console.warn("Failed to clean up event subscription",i)}finally{Ka.reset()}},handleEvent:s=>{uu(t,e)(s)}}};function ZF(e){var t;return((t=e.taskPromptSummary)==null?void 0:t.trimStart().startsWith("/review"))===!0}function Vd(e,t){var r;const n=(r=e.taskStatusReason)==null?void 0:r.trim();if(ZF(e)){if(e.taskStatus==="running")return t("taskHome.review.running");if(n!=null&&n.startsWith("Code review stale:"))return t("taskHome.review.stale");if(n==="Code review aborted")return t("taskHome.review.aborted");if(n==="Code review interrupted by process restart")return t("taskHome.review.interrupted");if(e.taskStatus==="failed")return t("taskHome.review.failed")}return e.taskFailure?t(Cp(e.taskFailure.code)):n==="user-cancel"?t("session.reason.cancelledByUser"):n||void 0}let nc=0;function jo(e,t){const n=e.findIndex(s=>s.id===t.id);if(n===-1)return[...e,t];const r=e.slice();return r[n]=t,r}const XF=Qo(e=>({schedules:[],isLoading:!1,hasLoaded:!1,error:null,loadSchedules:async()=>{const t=++nc;e({isLoading:!0,error:null});try{const n=await X.listSchedules();if(t!==nc)return;e({schedules:n,isLoading:!1,hasLoaded:!0})}catch(n){if(t!==nc)return;e({error:n instanceof Error?n.message:Ke("schedule.error.loadFailed"),isLoading:!1,hasLoaded:!0})}},createSchedule:async t=>{e({error:null});try{const n=await X.createSchedule(t);return e(r=>({schedules:jo(r.schedules,n)})),n}catch(n){throw e({error:n instanceof Error?n.message:Ke("schedule.error.createFailed")}),n}},updateSchedule:async(t,n)=>{e({error:null});try{const r=await X.updateSchedule(t,n);return e(s=>({schedules:jo(s.schedules,r)})),r}catch(r){throw e({error:r instanceof Error?r.message:Ke("schedule.error.updateFailed")}),r}},deleteSchedule:async t=>{e({error:null});try{await X.deleteSchedule(t),e(n=>({schedules:n.schedules.filter(r=>r.id!==t)}))}catch(n){throw e({error:n instanceof Error?n.message:Ke("schedule.error.deleteFailed")}),n}},toggleSchedule:async(t,n)=>{e({error:null});try{const r=n?await X.enableSchedule(t):await X.disableSchedule(t);return e(s=>({schedules:jo(s.schedules,r)})),r}catch(r){throw e({error:r instanceof Error?r.message:Ke("schedule.error.toggleFailed")}),r}},runSchedule:async t=>{e({error:null});try{const n=await X.runSchedule(t);return e(r=>({schedules:jo(r.schedules,n)})),n}catch(n){throw e({error:n instanceof Error?n.message:Ke("schedule.error.runFailed")}),n}}})),Vx="blade.projects.selected";function op(){return typeof localStorage>"u"?null:localStorage.getItem(Vx)}function Io(e){typeof localStorage<"u"&&localStorage.setItem(Vx,e)}const e5=new Set(["queued","running","completed","failed","cancelled","interrupted"]),rc=new Set(["default","autoEdit","yolo","plan"]),ap=new Set(["auto","off","minimal","low","medium","high","xhigh","max"]),cp=new Set(["auto","standard","fast","flex"]),lp=new Set(["auto","low","medium","high"]),dp=new Set(["auto","pragmatic","friendly","explanatory"]),up=new Set(["high","medium","low"]),pp=new Set(["feature","bug","maintenance","research"]);function t5(e){return typeof e=="string"&&e5.has(e)}function n5(e){if(!e||typeof e!="object"||Array.isArray(e))return;const t=e;if(!["changedFiles","additions","deletions","commits"].some(r=>typeof t[r]!="number"||!Number.isInteger(t[r])||t[r]<0))return{changedFiles:t.changedFiles,additions:t.additions,deletions:t.deletions,commits:t.commits}}function fp(e){if(!e||typeof e!="object"||Array.isArray(e))return;const t=e,n=Q0(t.code);if(!(!n||typeof t.message!="string"||typeof t.retryable!="boolean"))return{code:n,message:Ke(Cp(n)),retryable:Y0(n)}}function r5(e){if(!e||typeof e!="object"||Array.isArray(e))return;const t=e;if(!(!["applied","discarded","conflicted"].includes(String(t.status))||typeof t.updatedAt!="string"))return{status:t.status,updatedAt:t.updatedAt,...typeof t.sourceCommit=="string"?{sourceCommit:t.sourceCommit}:{},...typeof t.changedFiles=="number"&&Number.isInteger(t.changedFiles)&&t.changedFiles>=0?{changedFiles:t.changedFiles}:{},...typeof t.message=="string"?{message:t.message}:{}}}function vs(e,t){return typeof e=="number"&&Number.isInteger(e)&&e>=t?e:void 0}const s5=(e,t)=>{let n=null,r=!1,s=!1,i=0;const o=new Map,d=u=>{const m=Me(u),p=++i;o.set(m,p),X.getSession(u).then(h=>{o.get(m)===p&&e(b=>({sessions:hn(b.sessions,h)}))}).catch(()=>{o.get(m)===p&&t().loadSessions()}).finally(()=>{o.get(m)===p&&o.delete(m)})},f=u=>{const m=Me(u),p=++i;o.set(m,p),queueMicrotask(()=>{o.get(m)===p&&o.delete(m)})};return{taskEventsConnected:!1,taskEventConnectionState:"connecting",taskEventUnsubscribe:null,taskWorkspaceInfo:null,isTaskWorkspaceLoading:!1,taskWorkspaceError:null,boundProjects:[],selectedProjectPath:op(),isDispatchingTask:!1,isUpdatingTaskAdmission:!1,isBindingProject:!1,cancellingTaskKeys:[],retryingTaskKeys:[],updatingTaskKeys:[],taskDeliveryActions:{},unreadTaskKeys:VF(),handleTaskEvent:u=>{if(u.type==="session.created"){const I=u.properties.sessionId,T=u.properties.projectPath;if(typeof I!="string"||typeof T!="string")return;d({sessionId:I,projectPath:T});return}if(u.type==="session.deleted"){const I=u.properties.sessionId,T=u.properties.projectPath;if(typeof I!="string"||typeof T!="string")return;const M={sessionId:I,projectPath:T};f(M),t().removeSession(M);return}if(u.type==="session.archived"){const I=u.properties.sessionId,T=u.properties.projectPath;if(typeof I!="string"||typeof T!="string")return;const M={sessionId:I,projectPath:T};f(M),t().removeSession(M),t().loadArchivedSessions();return}if(u.type==="session.unarchived"){const I=u.properties.sessionId,T=u.properties.projectPath;if(typeof I!="string"||typeof T!="string")return;d({sessionId:I,projectPath:T}),t().loadArchivedSessions();return}if(u.type==="session.updated"){const I=u.properties.sessionId,T=u.properties.projectPath,M=u.properties.title,$=u.properties.selectedModelId,te=u.properties.permissionMode,O=u.properties.reasoningEffort,Q=u.properties.serviceTier,ae=u.properties.responseVerbosity,le=u.properties.communicationStyle,de=u.properties.taskPriority,me=u.properties.taskKind,Y=u.properties.taskDueAt;if(typeof I!="string"||typeof T!="string"||!(typeof M=="string"&&M.trim()||typeof $=="string"&&$.trim()||rc.has(te)||ap.has(O)||cp.has(Q)||lp.has(ae)||dp.has(le)||up.has(de)||pp.has(me)||Y===null||typeof Y=="string"&&Number.isFinite(Date.parse(Y))))return;const he={sessionId:I,projectPath:T};if(oe(t().currentSessionRef,he)&&rc.has(te)&&Mt.getState().setMode(te),!t().sessions.some(ce=>oe(be(ce),he))){d(he);return}e(ce=>({sessions:ce.sessions.map(ve=>oe({sessionId:ve.sessionId,projectPath:ve.projectPath},he)?{...ve,...typeof M=="string"&&M.trim()?{title:M}:{},...typeof $=="string"&&$.trim()?{selectedModelId:$}:{},...rc.has(te)?{permissionMode:te}:{},...ap.has(O)?{reasoningEffort:O}:{},...cp.has(Q)?{serviceTier:Q}:{},...lp.has(ae)?{responseVerbosity:ae}:{},...dp.has(le)?{communicationStyle:le}:{},...up.has(de)?{taskPriority:de}:{},...pp.has(me)?{taskKind:me}:{},...Y===null?{taskDueAt:void 0}:typeof Y=="string"&&Number.isFinite(Date.parse(Y))?{taskDueAt:Y}:{}}:ve)}));return}if(u.type==="task.delivery"){const I=u.properties.sessionId,T=u.properties.projectPath,M=r5(u.properties.taskDelivery);if(typeof I!="string"||typeof T!="string"||!M)return;const $={sessionId:I,projectPath:T},te=u.properties.taskWorktreeRemoved===!0;e(O=>({sessions:O.sessions.map(Q=>oe(be(Q),$)?{...Q,taskDelivery:M,...te?{taskWorktreePath:void 0,taskWorktreeBranch:void 0}:{},lastMessageTime:typeof u.properties.updatedAt=="string"?u.properties.updatedAt:Q.lastMessageTime}:Q)}));return}if(u.type==="interaction.pending"){const I=u.properties.sessionId,T=u.properties.projectPath,M=u.properties.interactionType,$=u.properties.requestId;if(typeof I!="string"||typeof T!="string"||M!=="permission"&&M!=="question"&&M!=="elicitation"||typeof $!="string"||!$)return;const te={sessionId:I,projectPath:T},O=t().sessions.find(ae=>oe(be(ae),te));if(!O){t().loadSessions();return}if(e(ae=>({sessions:ae.sessions.map(le=>oe(be(le),te)?{...le,pendingInteraction:{type:M,requestId:$}}:le)})),!(typeof document<"u"&&document.visibilityState==="visible"&&oe(t().currentSessionRef,te))&&Xr.getState().notifyErrors){const le=O.title??O.sessionId??I;rp({ref:te,title:`Blade · ${Ke(M==="question"?"attention.notification.question":M==="elicitation"?"attention.notification.elicitation":"attention.notification.permission")}`,body:le,onOpen:de=>{typeof window>"u"||(window.focus(),window.dispatchEvent(new CustomEvent(Go,{detail:de})))}})}return}if(u.type==="interaction.resolved"){const I=u.properties.sessionId,T=u.properties.projectPath,M=u.properties.requestId;if(typeof I!="string"||typeof T!="string"||typeof M!="string")return;const $={sessionId:I,projectPath:T};e(te=>({sessions:te.sessions.map(O=>{var Q;return oe(be(O),$)&&((Q=O.pendingInteraction)==null?void 0:Q.requestId)===M?{...O,pendingInteraction:void 0}:O})}));return}if(u.type==="schedule.fired"){XF.getState().loadSchedules();return}if(u.type!=="task.status")return;const m=u.properties.sessionId,p=u.properties.projectPath,h=u.properties.taskStatus;if(typeof m!="string"||typeof p!="string"||!t5(h))return;const b={sessionId:m,projectPath:p},k=vs(u.properties.taskInFlight,0),S=vs(u.properties.taskQueueDepth,0),C=vs(u.properties.taskConcurrencyLimit,1),x=typeof u.properties.taskAdmissionPaused=="boolean"?u.properties.taskAdmissionPaused:void 0;k!==void 0&&S!==void 0&&C!==void 0&&e(I=>{var T,M;return{taskWorkspaceInfo:I.taskWorkspaceInfo?{...I.taskWorkspaceInfo,taskAdmission:{inFlight:k,queued:S,maxConcurrent:C,maxQueued:((T=I.taskWorkspaceInfo.taskAdmission)==null?void 0:T.maxQueued)??100,paused:x??((M=I.taskWorkspaceInfo.taskAdmission)==null?void 0:M.paused)??!1}}:null}});const N=t().sessions.find(I=>oe(be(I),b)),P=typeof document<"u"&&document.visibilityState==="visible"&&oe(t().currentSessionRef,b),F=GF(N==null?void 0:N.taskStatus,h,P),D=Me(b),j=!t().unreadTaskKeys.includes(D);if(F&&j){e(M=>{const $=[...M.unreadTaskKeys,D];return hi($),{unreadTaskKeys:$}});const I=Xr.getState();if(I.notifySounds&&Gx(h)&&WF(h),h==="completed"?I.notifyBuild:I.notifyErrors){const M=Ke(h==="completed"?"attention.notification.completed":h==="failed"?"attention.notification.failed":"attention.notification.interrupted"),$=fp(u.properties.taskFailure),te=N?Vd({...N,taskStatus:h,taskFailure:$??N.taskFailure,taskStatusReason:typeof u.properties.taskStatusReason=="string"?u.properties.taskStatusReason:N.taskStatusReason,taskPromptSummary:typeof u.properties.taskPromptSummary=="string"?u.properties.taskPromptSummary:N.taskPromptSummary},Ke):($==null?void 0:$.message)??(typeof u.properties.taskStatusReason=="string"?u.properties.taskStatusReason:void 0),O=(N==null?void 0:N.title)??(N==null?void 0:N.sessionId)??m;rp({ref:b,title:`Blade · ${M}`,body:te?`${O} · ${te}`:O,onOpen:Q=>{typeof window>"u"||(window.focus(),window.dispatchEvent(new CustomEvent(Go,{detail:Q})))}})}}if(!N){d(b);return}e(I=>({sessions:I.sessions.map(T=>oe({sessionId:T.sessionId,projectPath:T.projectPath},b)?{...T,taskStatus:h,taskStatusReason:typeof u.properties.taskStatusReason=="string"?u.properties.taskStatusReason:void 0,taskFailure:h==="failed"?fp(u.properties.taskFailure)??T.taskFailure:void 0,taskPromptSummary:typeof u.properties.taskPromptSummary=="string"?u.properties.taskPromptSummary:T.taskPromptSummary,taskStartedAt:typeof u.properties.taskStartedAt=="string"?u.properties.taskStartedAt:h==="queued"?void 0:T.taskStartedAt,taskCompletedAt:typeof u.properties.taskCompletedAt=="string"?u.properties.taskCompletedAt:h==="queued"||h==="running"?void 0:T.taskCompletedAt,taskDiffStat:n5(u.properties.taskDiffStat)??T.taskDiffStat,taskQueuePosition:h==="queued"?vs(u.properties.taskQueuePosition,1)??T.taskQueuePosition:void 0,taskQueueDepth:h==="queued"?vs(u.properties.taskQueueDepth,0)??T.taskQueueDepth:void 0,taskConcurrencyLimit:vs(u.properties.taskConcurrencyLimit,1)??T.taskConcurrencyLimit,lastMessageTime:typeof u.properties.updatedAt=="string"?u.properties.updatedAt:T.lastMessageTime}:T)}))},subscribeToTaskEvents:async()=>{if(r=!0,!t().taskEventUnsubscribe){if(n)return n;e({taskEventsConnected:!1,taskEventConnectionState:"connecting"}),n=(async()=>{try{const u=await X.openTaskEventSubscription(m=>t().handleTaskEvent(m),{onConnectionChange:m=>{e({taskEventsConnected:m})},onConnectionStateChange:m=>{r&&(m==="reconnecting"||m==="offline")&&(s=!0),e({taskEventsConnected:m==="connected",taskEventConnectionState:m}),m==="connected"&&s&&(s=!1,Promise.all([t().loadSessions(),t().loadTaskWorkspaceInfo(),t().loadBoundProjects(),Mt.getState().loadModels()]))}});if(!r||t().taskEventUnsubscribe){u();return}e({taskEventUnsubscribe:u})}catch(u){throw s=!0,e({taskEventsConnected:!1,taskEventConnectionState:"offline"}),u}})();try{await n}finally{n=null}}},reconnectTaskEvents:async()=>{s=!0,t().unsubscribeFromTaskEvents(),await t().subscribeToTaskEvents()},unsubscribeFromTaskEvents:()=>{var u,m;r=!1,(m=(u=t()).taskEventUnsubscribe)==null||m.call(u),e({taskEventUnsubscribe:null,taskEventsConnected:!1,taskEventConnectionState:"offline"})},loadTaskWorkspaceInfo:async()=>{e({isTaskWorkspaceLoading:!0,taskWorkspaceError:null});try{const u=await X.getWorkspaceInfo();e({taskWorkspaceInfo:u,isTaskWorkspaceLoading:!1})}catch(u){e({isTaskWorkspaceLoading:!1,taskWorkspaceError:u instanceof Error?u.message:"Failed to load task workspace"})}},loadBoundProjects:async()=>{try{const u=await X.listProjects(),m=op(),p=u.find(h=>h.available&&h.path===m)??u.find(h=>h.isCurrent)??u.find(h=>h.available);p&&Io(p.path),e({boundProjects:u,selectedProjectPath:(p==null?void 0:p.path)??null})}catch(u){e({error:u instanceof Error?u.message:"Failed to load projects"})}},bindProject:async u=>{e({isBindingProject:!0,error:null});try{const m=await X.bindProject(u);Io(m.path),e(p=>({boundProjects:[...p.boundProjects.filter(h=>h.path!==m.path),m].sort((h,b)=>h.isCurrent!==b.isCurrent?h.isCurrent?-1:1:h.name.localeCompare(b.name)),selectedProjectPath:m.path,isBindingProject:!1}))}catch(m){throw e({isBindingProject:!1,error:m instanceof Error?m.message:"Failed to bind project"}),m}},unbindProject:async u=>{try{await X.unbindProject(u),e(m=>{const p=m.boundProjects.filter(b=>b.path!==u||b.isCurrent),h=m.selectedProjectPath===u?p.find(b=>b.isCurrent)??p.find(b=>b.available):void 0;return h&&Io(h.path),{boundProjects:p,...h?{selectedProjectPath:h.path}:{}}})}catch(m){throw e({error:m instanceof Error?m.message:"Failed to unbind project"}),m}},selectProject:u=>{Io(u),e({selectedProjectPath:u})},markTaskRead:u=>{const m=Me(u);e(p=>{const h=p.unreadTaskKeys.filter(b=>b!==m);return hi(h),{unreadTaskKeys:h}})},clearUnreadTasks:()=>{hi([]),e({unreadTaskKeys:[]})},setTaskAdmissionPaused:async u=>{if(!t().isUpdatingTaskAdmission){e({isUpdatingTaskAdmission:!0,error:null,errorContext:null});try{const m=await X.setTaskAdmissionPaused(u);e(p=>({taskWorkspaceInfo:p.taskWorkspaceInfo?{...p.taskWorkspaceInfo,taskAdmission:m}:p.taskWorkspaceInfo}))}catch(m){throw e({error:m instanceof Error?m.message:"Failed to update task admission",errorContext:{kind:"task_action"}}),m}finally{e({isUpdatingTaskAdmission:!1})}}},updateTask:async(u,m)=>{const p=Me(u);if(!t().updatingTaskKeys.includes(p)){e(h=>({updatingTaskKeys:[...h.updatingTaskKeys,p],error:null,errorContext:null}));try{const h=await X.updateTask(u,m);e(b=>({sessions:hn(b.sessions,h)}))}catch(h){throw e({error:h instanceof Error?h.message:"Failed to update task",errorContext:{kind:"task_action",sessionRef:u}}),h}finally{e(h=>({updatingTaskKeys:h.updatingTaskKeys.filter(b=>b!==p)}))}}},cancelTask:async u=>{const m=Me(u);if(!t().cancellingTaskKeys.includes(m)){e(p=>({cancellingTaskKeys:[...p.cancellingTaskKeys,m],error:null,errorContext:null}));try{await X.abortSession(u);const p=oe(t().currentSessionRef,u);p&&(await t().resyncSessionMessages(u),oe(t().currentSessionRef,u)&&t().unsubscribeFromEvents()),e(h=>({sessions:h.sessions.map(b=>oe(be(b),u)?{...b,taskStatus:"cancelled",taskQueuePosition:void 0,taskQueueDepth:void 0,taskCompletedAt:b.taskCompletedAt??new Date().toISOString()}:b),...p?{isStreaming:!1,isStopping:!1,agentPhase:"idle",providerAdmission:null,providerCircuit:null,providerRetry:null,providerStall:null,actionStationarity:null,turnRecovery:null,currentRunId:null,pendingSteeringCount:0,pendingInputDelivery:null,recoveredSteeringCount:0,currentAssistantMessageId:null,hasToolCalls:!1,eventUnsubscribe:null}:{}}))}catch(p){throw e({error:p instanceof Error?p.message:"Failed to stop task",errorContext:{kind:"task_action",sessionRef:u}}),p}finally{e(p=>({cancellingTaskKeys:p.cancellingTaskKeys.filter(h=>h!==m)}))}}},retryTask:async u=>{const m=Me(u);if(t().retryingTaskKeys.includes(m))return;const p=t().getNavigationVersion(),h=t().selectedProjectPath,b=()=>t().getNavigationVersion()===p&&t().selectedProjectPath===h;e(k=>({retryingTaskKeys:[...k.retryingTaskKeys,m],error:null,errorContext:null}));try{const k=await X.retryTask(u);e(S=>({sessions:hn(S.sessions,k.session)})),t().markTaskRead(u),b()&&await t().selectSession(be(k.session))}catch(k){throw b()&&e({error:k instanceof Error?k.message:"Failed to retry task",errorContext:{kind:"task_action",sessionRef:u}}),k}finally{e(k=>({retryingTaskKeys:k.retryingTaskKeys.filter(S=>S!==m)}))}},deliverTask:async(u,m)=>{const p=Me(u);if(!t().taskDeliveryActions[p]){e(h=>({taskDeliveryActions:{...h.taskDeliveryActions,[p]:m},error:null,errorContext:null}));try{const h=await X.deliverTask(u,m);e(b=>({sessions:hn(b.sessions,h)})),t().markTaskRead(u)}catch(h){throw e({error:h instanceof Error?h.message:"Failed to deliver task changes",errorContext:{kind:"task_action",sessionRef:u}}),h}finally{e(h=>{const{[p]:b,...k}=h.taskDeliveryActions;return{taskDeliveryActions:k}})}}},dispatchTask:async(u,m)=>{const p=t().getNavigationVersion(),h=t().selectedProjectPath,b=u.projectPath??h??void 0,k=()=>t().getNavigationVersion()===p&&t().selectedProjectPath===h;e({isDispatchingTask:!0,error:null,errorContext:null});try{const S=await X.createTask({...u,projectPath:b});e(C=>({sessions:hn(C.sessions,S.session),isDispatchingTask:!1})),(m==null?void 0:m.selectSession)!==!1&&k()&&await t().selectSession(be(S.session))}catch(S){throw e({isDispatchingTask:!1,...k()?{error:S instanceof Error?S.message:"Failed to dispatch task"}:{}}),S}},startCodeReview:async u=>{const m=t().getNavigationVersion(),p=t().selectedProjectPath,h=u.projectPath??p??void 0,b=()=>t().getNavigationVersion()===m&&t().selectedProjectPath===p;e({isDispatchingTask:!0,error:null,errorContext:null});let k,S=!1;try{k=await X.createSession(h,"Code Review");const C=be(k);await X.startCodeReview(C,{kind:u.kind,...u.ref?{ref:u.ref}:{},...u.instructions?{instructions:u.instructions}:{},...u.modelId?{modelId:u.modelId}:{}}),S=!0;const x={...k,taskStatus:"running",taskStatusReason:Ke("taskHome.review.running"),taskPromptSummary:`/review ${u.kind}${u.ref?` ${u.ref}`:""}`};e(N=>({sessions:hn(N.sessions,x),isDispatchingTask:!1})),b()&&await t().selectSession(C)}catch(C){throw k&&!S&&await X.deleteSession(be(k)).catch(()=>{}),e({isDispatchingTask:!1,...b()?{error:C instanceof Error?C.message:Ke("taskHome.review.startFailed")}:{}}),C}}}},i5=e=>({tokenUsage:ci,updateTokenUsage:t=>e(n=>{const{costUsd:r,...s}=t;return{tokenUsage:{...n.tokenUsage,...s,totalInputTokens:n.tokenUsage.totalInputTokens+Math.max(0,t.inputTokens??0),totalOutputTokens:n.tokenUsage.totalOutputTokens+Math.max(0,t.outputTokens??0),cacheReadTokens:n.tokenUsage.cacheReadTokens+Math.max(0,t.cacheReadTokens??0),cacheWriteTokens:n.tokenUsage.cacheWriteTokens+Math.max(0,t.cacheWriteTokens??0),estimatedCostUsd:n.tokenUsage.estimatedCostUsd+Math.max(0,r??0)}}}),resetContextUsage:()=>e(t=>({tokenUsage:{...t.tokenUsage,inputTokens:0,outputTokens:0,totalTokens:0}})),setMaxContextTokens:(t,n=!1)=>e(r=>({tokenUsage:{...r.tokenUsage,maxContextTokens:t,isDefaultMaxTokens:n}}))}),H=Qo()((...e)=>({...QF(...e),...s5(...e),...LF(...e),...YF(...e),...i5(...e)}));function o5(e){const t=new Date(e);return Number.isNaN(t.getTime())?"":t.toLocaleString([],{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"})}function a5({open:e,onOpenChange:t}){const n=Ut(),r=H(j=>j.currentSessionRef),s=H(j=>j.isStreaming),i=H(j=>j.isTemporarySession),o=H(j=>j.rewindSession),[d,f]=y.useState([]),[u,m]=y.useState(null),[p,h]=y.useState(!1),[b,k]=y.useState(!1),[S,C]=y.useState(!1),[x,N]=y.useState(null);y.useEffect(()=>{if(!e||!r)return;let j=!1;return k(!0),N(null),f([]),m(null),h(!1),X.listRewindCheckpoints(r).then(I=>{var T;j||(f(I),m(((T=I[0])==null?void 0:T.messageId)??null))}).catch(I=>{j||N(I instanceof Error?I.message:n("chat.rewind.loadFailed"))}).finally(()=>{j||k(!1)}),()=>{j=!0}},[r,e]);const P=y.useMemo(()=>d.find(j=>j.messageId===u)??null,[d,u]),F=!!P&&!b&&!S&&!s&&!i,D=async()=>{if(!P||!F)return;C(!0),N(null);const j=await o(P.messageId,p?"both":"conversation");C(!1),j?t(!1):N(n("chat.rewind.failed"))};return a.jsx(Jc,{open:e,onOpenChange:t,children:a.jsxs(Zo,{className:"max-w-[620px] gap-0 overflow-hidden border-[#E5E7EB] bg-white p-0 dark:border-zinc-800 dark:bg-[#09090b]",children:[a.jsx(Qc,{className:"border-b border-[#E5E7EB] px-6 py-5 dark:border-zinc-800",children:a.jsxs("div",{className:"flex items-center gap-3",children:[a.jsx("div",{className:"flex h-9 w-9 items-center justify-center rounded-md bg-[#F3F4F6] text-[#4B5563] dark:bg-zinc-800 dark:text-zinc-300",children:a.jsx(gu,{className:"h-4 w-4"})}),a.jsxs("div",{children:[a.jsx(Xo,{className:"text-[15px] font-semibold text-[#111827] dark:text-zinc-100",children:n("chat.rewind.title")}),a.jsx(ea,{className:"mt-1 text-[12px] text-[#6B7280] dark:text-zinc-400",children:n("chat.rewind.description")})]})]})}),a.jsxs("div",{className:"min-h-[260px] px-6 py-4",children:[b&&a.jsxs("div",{className:"flex h-[220px] items-center justify-center text-[#6B7280] dark:text-zinc-400",children:[a.jsx(mt,{className:"mr-2 h-4 w-4 animate-spin"}),a.jsx("span",{className:"text-xs font-mono",children:n("chat.rewind.loading")})]}),!b&&x&&a.jsx("div",{role:"alert",className:"rounded-md border border-rose-200 bg-rose-50 px-4 py-3 text-xs text-rose-700 dark:border-rose-900/60 dark:bg-rose-950/30 dark:text-rose-300",children:x}),!b&&!x&&d.length===0&&a.jsxs("div",{className:"flex h-[220px] flex-col items-center justify-center text-center",children:[a.jsx(gu,{className:"mb-3 h-5 w-5 text-[#9CA3AF] dark:text-zinc-600"}),a.jsx("p",{className:"text-sm text-[#4B5563] dark:text-zinc-300",children:n("chat.rewind.empty")})]}),!b&&d.length>0&&a.jsx("div",{role:"radiogroup","aria-label":n("chat.rewind.checkpointAria"),className:"max-h-[310px] space-y-1 overflow-y-auto",children:d.map(j=>{const I=j.messageId===u;return a.jsxs("button",{type:"button",role:"radio","aria-checked":I,onClick:()=>m(j.messageId),className:J("w-full rounded-md border px-4 py-3 text-left transition-colors",I?"border-[#22C55E] bg-[#F0FDF4] dark:border-[#22C55E] dark:bg-[#052E16]/50":"border-transparent hover:bg-[#F9FAFB] dark:hover:bg-zinc-900"),children:[a.jsxs("div",{className:"flex items-start justify-between gap-4",children:[a.jsx("p",{className:"line-clamp-2 text-[13px] leading-5 text-[#111827] dark:text-zinc-100",children:j.preview||n("chat.rewind.userMessage")}),a.jsx("span",{className:"shrink-0 text-[10px] font-mono text-[#9CA3AF] dark:text-zinc-500",children:o5(j.createdAt)})]}),a.jsxs("div",{className:"mt-2 flex items-center gap-3 text-[10px] font-mono text-[#6B7280] dark:text-zinc-500",children:[a.jsx("span",{children:j.messageId.slice(0,10)}),j.fileCount>0&&a.jsxs("span",{className:"inline-flex items-center gap-1",children:[a.jsx(cy,{className:"h-3 w-3"}),j.fileCount===1?n("chat.rewind.fileCountOne",{count:j.fileCount}):n("chat.rewind.fileCountMany",{count:j.fileCount})]})]})]},j.messageId)})})]}),a.jsx("div",{className:"border-t border-[#E5E7EB] px-6 py-4 dark:border-zinc-800",children:a.jsxs("label",{className:"flex cursor-pointer items-start gap-3",children:[a.jsx("input",{type:"checkbox",checked:p,disabled:!P||P.fileCount===0,onChange:j=>h(j.target.checked),className:"mt-0.5 h-4 w-4 accent-[#16A34A] disabled:opacity-40"}),a.jsxs("span",{children:[a.jsx("span",{className:"block text-[12px] font-medium text-[#374151] dark:text-zinc-200",children:n("chat.rewind.restoreCode")}),a.jsx("span",{className:"mt-0.5 block text-[11px] text-[#6B7280] dark:text-zinc-500",children:n("chat.rewind.restoreCodeHint")})]})]})}),a.jsxs(Kp,{className:"border-t border-[#E5E7EB] px-6 py-4 dark:border-zinc-800",children:[a.jsx(Kr,{variant:"ghost",onClick:()=>t(!1),disabled:S,children:n("chat.rewind.cancel")}),a.jsxs(Kr,{onClick:()=>void D(),disabled:!F,className:"bg-[#16A34A] text-white hover:bg-[#15803D]",children:[S?a.jsx(mt,{className:"mr-2 h-4 w-4 animate-spin"}):a.jsx(Yo,{className:"mr-2 h-4 w-4"}),n("chat.rewind.confirm")]})]})]})})}function Wx({inFlight:e,queued:t,maxConcurrent:n,compact:r=!1,className:s}){const i=Ut(),o=Math.max(1,n),d=Array.from({length:Math.min(o,12)}),f=Math.min(e,o);return a.jsxs("div",{className:J("inline-flex items-center gap-2 font-mono",r?"text-[10.5px]":"text-[11px]",s),title:i("capacity.title",{inFlight:e,queued:t,max:n}),children:[a.jsx("span",{className:J("inline-flex items-center gap-[3px] rounded-sm",r?"px-0":"px-0.5"),children:d.map((u,m)=>{const p=m<f;return a.jsx("span",{className:J("block",r?"h-2.5 w-[3px] rounded-[1px]":"h-3 w-[3px] rounded-[1px]",p?"bg-[hsl(var(--deck-accent))] shadow-[0_0_4px_hsl(var(--deck-accent)/0.65)]":"bg-[hsl(var(--deck-border-strong))]/60")},m)})}),a.jsxs("span",{className:"tabular-nums text-[hsl(var(--deck-ink-muted))]",children:[a.jsx("span",{className:"text-[hsl(var(--deck-ink))]",children:e}),a.jsx("span",{className:"mx-[2px] opacity-40",children:"/"}),a.jsx("span",{children:n}),a.jsx("span",{className:"opacity-60",children:i("capacity.suffix.running")})]}),t>0&&a.jsxs("span",{className:"inline-flex items-center gap-1 rounded-sm border border-amber-300/60 bg-amber-50 px-1.5 py-[1px] text-[10px] text-amber-800 dark:border-amber-800/60 dark:bg-amber-950/40 dark:text-amber-300",children:[a.jsx("span",{className:"h-1 w-1 rounded-full bg-amber-500"}),i("capacity.queued",{queued:t})]})]})}function mp(){const e=document.querySelector("textarea[data-blade-composer]:not(:disabled)");if(!e)return!1;e.focus();const t=e.value.length;return e.setSelectionRange(t,t),!0}const Jx=[{id:"searchTasks",key:"k",primaryModifier:!0,scope:"Global"},{id:"openCommands",key:"p",primaryModifier:!0,shiftKey:!0,scope:"Global"},{id:"newTask",key:"n",primaryModifier:!1,scope:"Global"},{id:"focusComposer",key:"/",primaryModifier:!1,scope:"Chat"},{id:"toggleSidebar",key:"b",primaryModifier:!0,scope:"Layout"}];function c5(e){const t=e.key.toLocaleLowerCase();return Jx.find(n=>{if(n.key!==t||e.altKey||e.shiftKey!==!!n.shiftKey)return!1;const r=e.metaKey||e.ctrlKey;return n.primaryModifier?r:!r})??null}function l5(e){return e instanceof Element?!!e.closest('input, textarea, select, [contenteditable="true"], [role="textbox"], [role="combobox"]'):!1}function d5(e){var r;const t=typeof navigator>"u"?null:navigator,n=((r=t==null?void 0:t.userAgentData)==null?void 0:r.platform)??(t==null?void 0:t.platform)??"";return/mac|iphone|ipad|ipod/i.test(n)}function u5(e,t){const n=e.key==="/"?"/":e.key.toLocaleUpperCase(),r=d5();return[...e.primaryModifier?[r?"⌘":"Ctrl"]:[],...e.shiftKey?[r?"⇧":"Shift"]:[],n]}function Fc(e,t){const n=Jx.find(r=>r.id===e);return n?u5(n).join(""):""}function p5(){const e=on(s=>s.setTaskSwitcherOpen),t=on(s=>s.setMainView),n=on(s=>s.toggleSidebar),r=H(s=>s.startTemporarySession);y.useEffect(()=>{const s=i=>{if(i.repeat)return;const o=c5(i);if(!o)return;const d=on.getState(),f=d.isTaskSwitcherOpen,u=l5(i.target),m=!!document.querySelector('[role="dialog"]');if(o.id==="searchTasks"||o.id==="openCommands"){if(m&&!f)return;i.preventDefault();const p=o.id==="searchTasks"?"tasks":"commands",h=f&&d.taskSwitcherMode===p;e(!h,p);return}if(!(u||m)){if(o.id==="newTask"){i.preventDefault(),t("workspace"),r(),requestAnimationFrame(()=>mp());return}if(o.id==="focusComposer"){mp()&&i.preventDefault();return}o.id==="toggleSidebar"&&(i.preventDefault(),n())}};return window.addEventListener("keydown",s),()=>window.removeEventListener("keydown",s)},[t,e,r,n])}const Wd=y.forwardRef(({className:e,children:t,...n},r)=>a.jsxs(Sp,{ref:r,className:J("overflow-hidden relative",e),...n,children:[a.jsx(U0,{className:"h-full w-full rounded-[inherit] [&>div]:!block !overflow-auto",children:t}),a.jsx(Qx,{}),a.jsx(B0,{})]}));Wd.displayName=Sp.displayName;const Qx=y.forwardRef(({className:e,orientation:t="vertical",...n},r)=>a.jsx(jp,{ref:r,orientation:t,className:J("flex touch-none select-none transition-colors",t==="vertical"&&"h-full w-2.5 border-l border-l-transparent p-[1px]",t==="horizontal"&&"h-2.5 flex-col border-t border-t-transparent p-[1px]",e),...n,children:a.jsx(H0,{className:"relative flex-1 rounded-full bg-border"})}));Qx.displayName=jp.displayName;function gi(e,t){var s;const n=(s=e.title)==null?void 0:s.trim();if(n==="Code Review")return t("session.title.codeReview");if(n)return n;const r=e.firstMessageTime||e.lastMessageTime;if(r){const i=new Date(r);if(!Number.isNaN(i.getTime()))return t("recent.session.fallbackDated",{y:String(i.getFullYear()).slice(-2),m:String(i.getMonth()+1).padStart(2,"0"),d:String(i.getDate()).padStart(2,"0"),hh:String(i.getHours()).padStart(2,"0"),mm:String(i.getMinutes()).padStart(2,"0")})}return t("recent.session.fallbackShort",{id:e.sessionId.slice(0,6)})}async function Yx(e,t=!1){const n=await X.exportSessionMarkdown(e,t),r=new Blob([n.markdown],{type:"text/markdown;charset=utf-8"}),s=URL.createObjectURL(r),i=document.createElement("a");i.href=s,i.download=n.filename,i.hidden=!0,document.body.appendChild(i);try{i.click()}finally{i.remove(),await new Promise(o=>{window.setTimeout(()=>{URL.revokeObjectURL(s),o()},0)})}return n}const Yn=z0,Zn=K0,_n=y.forwardRef(({className:e,align:t="center",sideOffset:n=4,...r},s)=>a.jsx(q0,{children:a.jsx(Ip,{ref:s,align:t,sideOffset:n,className:J("z-50 w-72 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 origin-[--radix-popover-content-transform-origin]",e),...r})}));_n.displayName=Ip.displayName;function f5(){const e=Ut(),t=H(k=>k.archivedSessions),n=H(k=>k.archivedCatalogLoadState),r=H(k=>k.archivedCatalogError),s=H(k=>k.loadArchivedSessions),i=H(k=>k.unarchiveSession),o=H(k=>k.setError),[d,f]=y.useState(!1),[u,m]=y.useState(null),[p,h]=y.useState(null),b=k=>{f(k),k&&s()};return a.jsxs(Yn,{open:d,onOpenChange:b,children:[a.jsx(Zn,{asChild:!0,children:a.jsxs("button",{type:"button",className:"flex h-8 w-full items-center justify-between rounded-md px-2.5 font-mono text-[12.5px] text-[hsl(var(--deck-ink-muted))] transition-colors hover:bg-[hsl(var(--deck-surface))] hover:text-[hsl(var(--deck-ink))] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))]","aria-label":e("archive.open"),children:[a.jsxs("span",{className:"flex items-center gap-2.5",children:[a.jsx(Ep,{className:"h-3.5 w-3.5 text-[hsl(var(--deck-ink-faint))]"}),e("archive.title")]}),t.length>0&&a.jsx("span",{className:"rounded-sm bg-[hsl(var(--deck-surface))] px-1.5 py-0.5 text-[9px] text-[hsl(var(--deck-ink-faint))]",children:t.length})]})}),a.jsxs(_n,{role:"dialog","aria-label":e("archive.title"),side:"right",align:"end",sideOffset:8,className:"w-[340px] overflow-hidden p-0",children:[a.jsxs("div",{className:"flex h-10 items-center justify-between border-b border-[hsl(var(--deck-hairline))] px-3",children:[a.jsxs("div",{children:[a.jsx("div",{className:"font-mono text-[11px] font-medium uppercase tracking-[0.08em] text-[hsl(var(--deck-ink))]",children:e("archive.title")}),a.jsx("div",{className:"text-[9.5px] text-[hsl(var(--deck-ink-faint))]",children:e("archive.subtitle")})]}),a.jsx("button",{type:"button",onClick:()=>void s(),"aria-label":e("archive.refresh"),className:"flex h-6 w-6 items-center justify-center rounded text-[hsl(var(--deck-ink-faint))] hover:bg-[hsl(var(--deck-surface))] hover:text-[hsl(var(--deck-ink))] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))]",children:a.jsx(di,{className:J("h-3 w-3",(n==="loading"||n==="hydrating")&&"animate-spin")})})]}),r?a.jsxs("div",{className:"px-3 py-4 text-[11px] text-red-600 dark:text-red-400",children:[a.jsx("div",{children:r}),a.jsx("button",{type:"button",onClick:()=>void s(),className:"mt-2 font-mono text-[10px] text-[hsl(var(--deck-accent))] focus-visible:outline-none focus-visible:underline",children:e("archive.retry")})]}):t.length===0&&(n==="loading"||n==="hydrating")?a.jsxs("div",{className:"flex h-24 items-center justify-center gap-2 font-mono text-[10px] text-[hsl(var(--deck-ink-faint))]",children:[a.jsx(mt,{className:"h-3 w-3 animate-spin"}),e("archive.loading")]}):t.length===0?a.jsx("div",{className:"flex h-24 items-center justify-center px-6 text-center text-[10.5px] text-[hsl(var(--deck-ink-faint))]",children:e("archive.empty")}):a.jsx(Wd,{className:"max-h-[340px]",children:a.jsx("div",{className:"divide-y divide-[hsl(var(--deck-hairline))]",children:t.map(k=>{var P;const S=be(k),C=Me(S),x=u===C,N=k.projectPath.split("/").filter(Boolean).at(-1)??k.projectPath;return a.jsxs("div",{className:"flex min-h-[58px] items-center gap-2 px-3 py-2",children:[a.jsxs("div",{className:"min-w-0 flex-1",children:[a.jsx("div",{className:"truncate font-mono text-[11.5px] text-[hsl(var(--deck-ink))]",children:gi(k,e)}),a.jsxs("div",{className:"mt-0.5 flex items-center gap-1.5 truncate font-mono text-[9px] text-[hsl(var(--deck-ink-faint))]",children:[a.jsx("span",{className:"truncate",children:N}),k.archivedAt&&a.jsxs(a.Fragment,{children:[a.jsx("span",{"aria-hidden":!0,children:"·"}),a.jsx("span",{children:new Date(k.archivedAt).toLocaleString()})]})]}),k.archivedBySessionId!==k.sessionId&&a.jsx("div",{className:"mt-0.5 truncate text-[9px] text-[hsl(var(--deck-accent))]",children:e("archive.inherited",{id:((P=k.archivedBySessionId)==null?void 0:P.slice(0,8))??""})})]}),a.jsxs("div",{className:"flex shrink-0 items-center gap-0.5",children:[a.jsx("button",{type:"button",disabled:p!==null,onClick:async()=>{h(C);try{await Yx(S)}catch(F){o(F instanceof Error?F.message:"Session export failed")}finally{h(null)}},"aria-label":e("session.action.export",{title:gi(k,e)}),title:e("session.action.exportShort"),className:"flex h-7 w-7 items-center justify-center rounded text-[hsl(var(--deck-ink-faint))] transition-colors hover:bg-[hsl(var(--deck-surface))] hover:text-[hsl(var(--deck-ink))] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))] disabled:cursor-wait disabled:opacity-35",children:p===C?a.jsx(mt,{className:"h-3.5 w-3.5 animate-spin"}):a.jsx(Pp,{className:"h-3.5 w-3.5"})}),a.jsx("button",{type:"button",disabled:x||k.archivedBySessionId!==k.sessionId,onClick:async()=>{m(C);try{await i(S)}finally{m(null)}},"aria-label":e("archive.restore",{title:gi(k,e)}),title:k.archivedBySessionId!==k.sessionId?e("archive.restoreAncestor"):e("archive.restoreShort"),className:"flex h-7 w-7 items-center justify-center rounded text-[hsl(var(--deck-accent))] transition-colors hover:bg-[hsl(var(--deck-accent-soft))] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))] disabled:cursor-not-allowed disabled:opacity-35",children:x?a.jsx(mt,{className:"h-3.5 w-3.5 animate-spin"}):a.jsx(ny,{className:"h-3.5 w-3.5"})})]})]},C)})})})]})]})}function Jd({className:e,size:t=28,pulse:n=!0}){return a.jsxs("span",{className:J("inline-flex relative justify-center items-center","text-[hsl(var(--deck-ink))]",e),style:{width:t,height:t},"aria-hidden":"true",children:[a.jsxs("svg",{viewBox:"0 0 32 32",width:t,height:t,fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[a.jsx("path",{d:"M16 3 L28 16 L16 29 L4 16 Z",stroke:"currentColor",strokeWidth:"1.5",strokeLinejoin:"round"}),a.jsx("path",{d:"M16 8 L24 16 L16 24",stroke:"currentColor",strokeWidth:"1.5",strokeLinejoin:"round",strokeLinecap:"round",opacity:"0.55"}),a.jsx("path",{d:"M16 3 L20 7",stroke:"hsl(var(--deck-accent))",strokeWidth:"2",strokeLinecap:"round"})]}),n&&a.jsx("span",{className:"absolute top-[3px] right-[3px] h-1.5 w-1.5 rounded-full",style:{background:"hsl(var(--deck-accent-glow))",boxShadow:"0 0 6px hsl(var(--deck-accent-glow) / 0.9)"}})]})}const hp={en:"sidebar.language.en",zh:"sidebar.language.zh"};function Zx({className:e,variant:t="pill"}){const{locale:n,setLocale:r}=pw(),s=Ut();if(t==="compact"){const i=n==="en"?"zh":"en";return a.jsx("button",{type:"button",onClick:()=>r(i),"aria-label":s("sidebar.language.aria"),title:s("sidebar.language.label"),className:J("flex justify-center items-center w-10 h-10 font-mono font-medium rounded-md transition-colors text-[11px] text-[hsl(var(--deck-ink-faint))] hover:bg-[hsl(var(--deck-surface))] hover:text-[hsl(var(--deck-ink))]",e),children:s(hp[n])})}return a.jsx("div",{role:"group","aria-label":s("sidebar.language.aria"),className:J("inline-flex h-8 items-center rounded-md border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface))] p-[2px] font-mono text-[11px]",e),children:aw.map(i=>{const o=i===n;return a.jsx("button",{type:"button",onClick:()=>r(i),"aria-pressed":o,className:J("flex justify-center items-center px-2 h-full transition-colors min-w-[28px] rounded-[4px]",o?"bg-[hsl(var(--deck-ink))] text-[hsl(var(--deck-canvas))]":"text-[hsl(var(--deck-ink-muted))] hover:text-[hsl(var(--deck-ink))]"),children:s(hp[i])},i)})})}const m5="[data-mobile-navigation-trigger]";function C3(e){return Xx(m5,e)}function Xx(e,t){const n=document.querySelector(e);return!n||n.getClientRects().length===0?!1:(t.preventDefault(),n.focus({preventScroll:!0}),!0)}function e0({open:e,onOpenChange:t}){const n=Ut(),{boundProjects:r,selectedProjectPath:s,isBindingProject:i,loadBoundProjects:o,bindProject:d,unbindProject:f,selectProject:u,startTemporarySession:m}=H(),[p,h]=y.useState(""),[b,k]=y.useState(null),[S,C]=y.useState(!1),x=y.useRef(0);y.useEffect(()=>{if(e){o();return}x.current+=1,C(!1)},[o,e]);const N=async j=>{await d(j),h(""),m(),t(!1)},P=async j=>{if(j.preventDefault(),!(!p.trim()||i||S)){k(null);try{await N(p.trim())}catch(I){k(I instanceof Error?I.message:n("projects.bind.failed"))}}},F=async()=>{if(S||i)return;const j=++x.current;k(null),C(!0);try{const I=await X.pickProjectDirectory();if(j!==x.current||I.cancelled)return;h(I.path),await N(I.path)}catch(I){if(j!==x.current)return;k(I instanceof Error?I.message:n("projects.pick.failed"))}finally{j===x.current&&C(!1)}},D=j=>{u(j),m(),t(!1)};return e?a.jsx(Jc,{open:e,onOpenChange:t,children:a.jsxs(Zo,{onCloseAutoFocus:j=>Xx("[data-project-setup-trigger]",j),className:"border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-canvas))] text-[hsl(var(--deck-ink))] sm:max-w-xl",children:[a.jsxs(Qc,{children:[a.jsxs(Xo,{className:"flex items-center gap-2 font-mono text-[16px]",children:[a.jsx(Ro,{className:"h-4 w-4 text-[hsl(var(--deck-accent))]"}),n("projects.dialog.title")]}),a.jsx(ea,{className:"text-[12px] text-[hsl(var(--deck-ink-muted))]",children:n("projects.dialog.description")})]}),a.jsxs("form",{onSubmit:P,className:"flex gap-2",children:[a.jsx("input",{value:p,onChange:j=>h(j.target.value),disabled:i,placeholder:n("projects.bind.placeholder"),"aria-label":n("projects.bind.pathLabel"),className:"h-9 min-w-0 flex-1 rounded-md border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface))] px-3 font-mono text-[12px] outline-none placeholder:text-[hsl(var(--deck-ink-faint))] focus:border-[hsl(var(--deck-accent)/0.65)]"}),a.jsxs("button",{type:"button",onClick:()=>void F(),disabled:S||i,title:n("projects.pick.action"),"aria-label":n("projects.pick.action"),className:"inline-flex h-9 shrink-0 items-center gap-2 rounded-md border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface))] px-2.5 font-mono text-[12px] text-[hsl(var(--deck-ink-muted))] transition-colors hover:border-[hsl(var(--deck-border-strong))] hover:text-[hsl(var(--deck-ink))] disabled:cursor-wait disabled:opacity-50",children:[S?a.jsx(mt,{className:"h-3.5 w-3.5 animate-spin"}):a.jsx(ly,{className:"h-3.5 w-3.5"}),a.jsx("span",{className:"hidden sm:inline",children:n(S?"projects.pick.picking":"projects.pick.actionShort")})]}),a.jsxs("button",{type:"submit",disabled:!p.trim()||i||S,className:"inline-flex h-9 items-center gap-2 rounded-md bg-[hsl(var(--deck-ink))] px-3 font-mono text-[12px] text-[hsl(var(--deck-canvas))] transition-opacity disabled:opacity-40",children:[i?a.jsx(mt,{className:"h-3.5 w-3.5 animate-spin"}):a.jsx(Ro,{className:"h-3.5 w-3.5"}),n("projects.bind.action")]})]}),b&&a.jsx("div",{role:"alert",className:"rounded-md border border-red-200 bg-red-50 px-3 py-2 font-mono text-[11px] text-red-700 dark:border-red-900/60 dark:bg-red-950/30 dark:text-red-300",children:b}),a.jsx("div",{className:"max-h-72 space-y-1 overflow-y-auto",children:r.map(j=>{const I=j.path===s;return a.jsxs("div",{className:J("group flex items-center gap-3 rounded-md border px-3 py-2",I?"border-[hsl(var(--deck-accent)/0.55)] bg-[hsl(var(--deck-accent-soft))]":"border-transparent hover:border-[hsl(var(--deck-border))] hover:bg-[hsl(var(--deck-surface))]"),children:[a.jsx(li,{className:J("h-4 w-4 shrink-0",I?"text-[hsl(var(--deck-accent))]":"text-[hsl(var(--deck-ink-faint))]")}),a.jsxs("button",{type:"button",disabled:!j.available,onClick:()=>D(j.path),className:"min-w-0 flex-1 text-left disabled:cursor-not-allowed disabled:opacity-50",children:[a.jsx("span",{className:"block truncate font-mono text-[12px] text-[hsl(var(--deck-ink))]",children:j.name}),a.jsxs("span",{className:"mt-0.5 flex items-center gap-1.5 truncate font-mono text-[10px] text-[hsl(var(--deck-ink-faint))]",children:[j.gitBranch&&a.jsxs(a.Fragment,{children:[a.jsx(zc,{className:"h-2.5 w-2.5"}),a.jsx("span",{children:j.gitBranch}),a.jsx("span",{children:"·"})]}),a.jsx("span",{className:"truncate",children:j.path}),!j.available&&a.jsxs("span",{className:"shrink-0 text-red-500",children:["· ",n("projects.unavailable")]})]})]}),!j.isCurrent&&a.jsx("button",{type:"button",onClick:()=>void f(j.path).catch(()=>{}),title:n("projects.unbind.action"),"aria-label":n("projects.unbind.action"),className:"rounded p-1.5 text-[hsl(var(--deck-ink-faint))] opacity-0 transition group-hover:opacity-100 hover:bg-red-50 hover:text-red-600 focus-visible:opacity-100 dark:hover:bg-red-950/30",children:a.jsx(Fp,{className:"h-3.5 w-3.5"})})]},j.path)})})]})}):null}const h5={running:"bg-blue-500 dark:bg-blue-400 shadow-[0_0_5px_rgba(59,130,246,0.7)] animate-pulse",queued:"bg-amber-400 dark:bg-amber-300",interrupted:"bg-orange-500 dark:bg-orange-400",failed:"bg-red-500 dark:bg-red-400",cancelled:"bg-zinc-400 dark:bg-zinc-500",completed:"bg-[hsl(var(--deck-accent))]"};function g5({session:e,isActive:t,isForking:n,isUnread:r,anyForking:s,isEditing:i,editingTitle:o,title:d,context:f,isCancelling:u,isRetrying:m,isExporting:p,onSelect:h,onCancelTask:b,onRetryTask:k,onFork:S,onArchive:C,onExport:x,onStartRename:N,onDelete:P,onEditingTitleChange:F,onSaveRename:D,onCancelRename:j}){const I=Ut(),[T,M]=y.useState(!1),$=y.useRef(null),te=y.useRef(null);return i?a.jsxs("div",{className:"flex h-9 w-full items-center gap-2 bg-[hsl(var(--deck-surface))] px-3",children:[a.jsx("input",{type:"text",value:o,onChange:O=>F(O.target.value),onKeyDown:O=>{O.key==="Enter"&&D(),O.key==="Escape"&&j()},autoFocus:!0,className:"flex-1 rounded bg-[hsl(var(--deck-canvas))] px-2 py-1 font-mono text-[13px] text-[hsl(var(--deck-ink))] outline-none focus:ring-1 focus:ring-[hsl(var(--deck-accent))]"}),a.jsx("button",{"aria-label":I("session.action.save",{title:d}),onClick:D,className:"flex h-6 w-6 items-center justify-center rounded text-[hsl(var(--deck-accent))] hover:bg-[hsl(var(--deck-canvas))]",children:a.jsx(Tp,{className:"w-3 h-3"})}),a.jsx("button",{"aria-label":I("session.action.cancel",{title:d}),onClick:j,className:"flex h-6 w-6 items-center justify-center rounded text-[hsl(var(--deck-ink-faint))] hover:bg-[hsl(var(--deck-canvas))]",children:a.jsx(ui,{className:"w-3 h-3"})})]}):a.jsxs("div",{className:J("flex relative items-center w-full transition-colors group min-h-[54px]",t?"bg-[hsl(var(--deck-surface))]":"hover:bg-[hsl(var(--deck-surface))]/60"),children:[t&&a.jsx("span",{className:"absolute left-0 top-1/2 h-6 w-[2px] -translate-y-1/2 rounded-r bg-[hsl(var(--deck-accent))]"}),a.jsxs("button",{type:"button","aria-label":I("session.action.select",{title:d}),"aria-current":t?"true":void 0,"aria-busy":n?"true":void 0,onClick:h,className:"flex min-h-[54px] min-w-0 flex-1 cursor-pointer items-center gap-2 py-1.5 pl-4 pr-2 text-left focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-inset focus-visible:ring-[hsl(var(--deck-accent))]",children:[a.jsx("span",{className:J("h-1.5 w-1.5 shrink-0 rounded-full",e.pendingInteraction?"animate-pulse bg-amber-500 shadow-[0_0_5px_rgba(245,158,11,0.75)]":h5[e.taskStatus]),title:e.pendingInteraction?I(e.pendingInteraction.type==="question"?"interaction.badge.question":e.pendingInteraction.type==="elicitation"?"interaction.badge.elicitation":"interaction.badge.permission"):e.taskStatus}),a.jsxs("span",{className:"flex-1 min-w-0 font-mono",children:[a.jsxs("span",{className:J("flex gap-2 items-center text-left truncate text-[12px]",t?"text-[hsl(var(--deck-ink))]":"text-[hsl(var(--deck-ink-muted))]"),children:[a.jsx("span",{className:"truncate",children:d}),r&&a.jsx("span",{title:I("taskSwitcher.new"),className:"h-1.5 w-1.5 shrink-0 rounded-full bg-[hsl(var(--deck-accent))] shadow-[0_0_5px_hsl(var(--deck-accent-glow)/0.75)]"}),e.pendingInteraction&&a.jsxs("span",{className:"inline-flex shrink-0 items-center gap-1 rounded bg-amber-100 px-1.5 py-0.5 text-[8.5px] text-amber-800 dark:bg-amber-950/60 dark:text-amber-300",title:I(e.pendingInteraction.type==="question"?"interaction.badge.question":e.pendingInteraction.type==="elicitation"?"interaction.badge.elicitation":"interaction.badge.permission"),children:[a.jsx(Ns,{className:"h-2.5 w-2.5"}),I(e.pendingInteraction.type==="question"?"interaction.badge.question":e.pendingInteraction.type==="elicitation"?"interaction.badge.elicitation":"interaction.badge.permission")]}),e.relationType==="fork"&&e.parentId&&a.jsxs("span",{title:`${I("session.forkedFrom")} ${e.parentId.slice(0,6)}`,"aria-label":`${I("session.forkedFrom")} ${e.parentId.slice(0,6)}`,className:"shrink-0 text-[9px] text-[hsl(var(--deck-accent))]",children:[I("session.forkedFrom")," ",e.parentId.slice(0,6)]}),e.taskRetriedFrom&&a.jsx("span",{title:`${I("session.retriedFrom")} ${e.taskRetriedFrom.sessionId.slice(0,6)}`,className:"shrink-0 text-[9px] text-[hsl(var(--deck-accent))]",children:I("session.retryShort")})]}),a.jsxs("span",{className:"mt-0.5 flex min-w-0 items-center gap-1.5 truncate text-[9.5px] text-[hsl(var(--deck-ink-faint))]",children:[a.jsx("span",{className:"truncate",children:f.project}),a.jsx("span",{className:"opacity-50",children:"·"}),a.jsx("span",{className:"truncate",children:f.environment}),f.queue&&a.jsxs(a.Fragment,{children:[a.jsx("span",{className:"opacity-50",children:"·"}),a.jsx("span",{className:"text-amber-700 truncate dark:text-amber-400",children:f.queue})]}),f.diff&&a.jsxs(a.Fragment,{children:[a.jsx("span",{className:"opacity-50",children:"·"}),a.jsx("span",{className:"truncate text-[hsl(var(--deck-accent))]",children:f.diff})]})]}),f.reason&&a.jsx("span",{title:f.reason,className:"mt-0.5 block truncate text-[9.5px] text-red-600 dark:text-red-400",children:f.reason})]}),n&&a.jsx(mt,{className:"h-3 w-3 shrink-0 animate-spin text-[hsl(var(--deck-accent))]"})]}),a.jsxs("div",{className:J("flex items-center gap-0.5 pr-2 transition-opacity group-focus-within:opacity-100",e.taskStatus==="running"||e.taskStatus==="queued"||e.taskRetryAvailable&&(e.taskStatus==="failed"||e.taskStatus==="interrupted"||e.taskStatus==="cancelled")?"opacity-100":"opacity-50 group-hover:opacity-100"),children:[(e.taskStatus==="running"||e.taskStatus==="queued")&&a.jsx("button",{type:"button","aria-label":I(u?"session.action.stopping":"session.action.stop",{title:d}),disabled:u,onClick:O=>{O.stopPropagation(),b()},className:"flex h-6 w-6 items-center justify-center rounded text-red-500 transition-colors hover:bg-red-500/10 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-red-500 disabled:cursor-wait disabled:opacity-60",children:u?a.jsx(mt,{className:"h-3 w-3 animate-spin"}):a.jsx(Vc,{className:"h-3 w-3"})}),e.taskRetryAvailable&&(e.taskStatus==="failed"||e.taskStatus==="interrupted"||e.taskStatus==="cancelled")&&a.jsx("button",{ref:$,type:"button","aria-label":I(m?"session.action.retrying":"session.action.retry",{title:d}),disabled:m,onClick:O=>{O.stopPropagation(),k()},className:"flex h-6 w-6 items-center justify-center rounded text-[hsl(var(--deck-accent))] transition-colors hover:bg-[hsl(var(--deck-accent-soft))] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))] disabled:cursor-wait disabled:opacity-60",children:m?a.jsx(mt,{className:"h-3 w-3 animate-spin"}):a.jsx(Yo,{className:"h-3 w-3"})}),a.jsxs(Yn,{open:T,onOpenChange:M,children:[a.jsx(Zn,{asChild:!0,children:a.jsx("button",{type:"button","aria-label":I("session.action.more",{title:d}),"aria-expanded":T,className:"flex h-6 w-6 items-center justify-center rounded text-[hsl(var(--deck-ink-faint))] transition-colors hover:bg-[hsl(var(--deck-canvas))] hover:text-[hsl(var(--deck-ink))] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))]",children:a.jsx(by,{className:"h-3.5 w-3.5"})})}),a.jsxs(_n,{ref:te,role:"menu","aria-label":I("session.action.more",{title:d}),side:"right",align:"start",sideOffset:6,className:"w-40 p-1",onOpenAutoFocus:O=>{var Q,ae;O.preventDefault(),(ae=(Q=te.current)==null?void 0:Q.querySelector('[role="menuitem"]:not([disabled])'))==null||ae.focus()},onKeyDown:O=>{O.key==="Escape"&&(O.preventDefault(),O.stopPropagation(),M(!1),window.setTimeout(()=>{var Q;return(Q=$.current)==null?void 0:Q.focus()},0))},children:[a.jsxs("button",{type:"button",role:"menuitem","aria-label":I("session.action.fork",{title:d}),disabled:s,onClick:O=>{O.stopPropagation(),S(),M(!1)},className:"flex w-full items-center gap-2 rounded px-2 py-1.5 text-left font-mono text-[11px] text-[hsl(var(--deck-ink-muted))] transition-colors hover:bg-[hsl(var(--deck-surface))] hover:text-[hsl(var(--deck-ink))] focus-visible:bg-[hsl(var(--deck-surface))] focus-visible:text-[hsl(var(--deck-ink))] focus-visible:outline-none disabled:cursor-not-allowed disabled:opacity-45",children:[a.jsx(dy,{className:"h-3 w-3","aria-hidden":!0}),I("session.action.forkShort")]}),a.jsxs("button",{type:"button",role:"menuitem","aria-label":I("session.action.rename",{title:d}),onClick:O=>{N(O),M(!1)},className:"flex w-full items-center gap-2 rounded px-2 py-1.5 text-left font-mono text-[11px] text-[hsl(var(--deck-ink-muted))] transition-colors hover:bg-[hsl(var(--deck-surface))] hover:text-[hsl(var(--deck-ink))] focus-visible:bg-[hsl(var(--deck-surface))] focus-visible:text-[hsl(var(--deck-ink))] focus-visible:outline-none",children:[a.jsx(xy,{className:"h-3 w-3","aria-hidden":!0}),I("session.action.renameShort")]}),a.jsxs("button",{type:"button",role:"menuitem","aria-label":I("session.action.archive",{title:d}),disabled:e.taskStatus==="running"||e.taskStatus==="queued",onClick:O=>{O.stopPropagation(),C(),M(!1)},className:"flex w-full items-center gap-2 rounded px-2 py-1.5 text-left font-mono text-[11px] text-[hsl(var(--deck-ink-muted))] transition-colors hover:bg-[hsl(var(--deck-surface))] hover:text-[hsl(var(--deck-ink))] focus-visible:bg-[hsl(var(--deck-surface))] focus-visible:text-[hsl(var(--deck-ink))] focus-visible:outline-none disabled:cursor-not-allowed disabled:opacity-35",children:[a.jsx(Ep,{className:"h-3 w-3","aria-hidden":!0}),I("session.action.archiveShort")]}),a.jsxs("button",{type:"button",role:"menuitem","aria-label":I("session.action.export",{title:d}),disabled:p,onClick:O=>{O.stopPropagation(),x(),M(!1)},className:"flex w-full items-center gap-2 rounded px-2 py-1.5 text-left font-mono text-[11px] text-[hsl(var(--deck-ink-muted))] transition-colors hover:bg-[hsl(var(--deck-surface))] hover:text-[hsl(var(--deck-ink))] focus-visible:bg-[hsl(var(--deck-surface))] focus-visible:text-[hsl(var(--deck-ink))] focus-visible:outline-none disabled:cursor-wait disabled:opacity-45",children:[p?a.jsx(mt,{className:"h-3 w-3 animate-spin","aria-hidden":!0}):a.jsx(Pp,{className:"h-3 w-3","aria-hidden":!0}),I(p?"session.action.exportingShort":"session.action.exportShort")]}),a.jsxs("button",{type:"button",role:"menuitem","aria-label":I("session.action.delete",{title:d}),onClick:O=>{P(O),M(!1)},className:"flex w-full items-center gap-2 rounded px-2 py-1.5 text-left font-mono text-[11px] text-red-600 transition-colors hover:bg-red-500/10 focus-visible:bg-red-500/10 focus-visible:outline-none dark:text-red-400",children:[a.jsx(Fp,{className:"h-3 w-3","aria-hidden":!0}),I("session.action.deleteShort")]})]})]})]})]})}function b5({onExpand:e,onNewChat:t,onOpenBoard:n,onOpenTaskSwitcher:r,onToggleTerminal:s,onToggleSettings:i,isTerminalOpen:o,taskEventsConnected:d,unreadCount:f,boardActive:u,className:m}){const p=Ut(),h=[{icon:Op,action:i,labelKey:"sidebar.section.settings"}];return a.jsxs("div",{className:J("flex flex-col gap-2 items-center py-5 h-screen border-r w-[64px] border-[hsl(var(--deck-hairline))] bg-[hsl(var(--deck-canvas-veil))]",m),children:[a.jsx("button",{onClick:e,className:"rounded-md p-1 transition-colors hover:bg-[hsl(var(--deck-surface))]","aria-label":p("sidebar.action.expand"),children:a.jsx(Jd,{size:28})}),a.jsx("button",{onClick:t,"aria-label":p("sidebar.action.newTaskShort"),title:p("sidebar.action.newTaskShort"),className:"mt-6 flex h-10 w-10 items-center justify-center rounded-md bg-[hsl(var(--deck-ink))] text-[hsl(var(--deck-canvas))] transition-colors hover:bg-[hsl(var(--deck-ink))]/85",children:a.jsx(Kc,{className:"h-4 w-4 stroke-[2.5]"})}),a.jsx("button",{type:"button",onClick:n,"aria-label":p("sidebar.action.taskBoard"),"aria-current":u?"page":void 0,title:p("sidebar.action.taskBoard"),className:J("flex h-10 w-10 items-center justify-center rounded-md border transition-colors",u?"border-[hsl(var(--deck-accent)/0.55)] bg-[hsl(var(--deck-accent-soft))] text-[hsl(var(--deck-accent))]":"border-transparent text-[hsl(var(--deck-ink-muted))] hover:bg-[hsl(var(--deck-surface))] hover:text-[hsl(var(--deck-ink))]"),children:a.jsx(Np,{className:"h-4 w-4"})}),a.jsx("button",{onClick:s,"aria-label":p("sidebar.action.terminalToggle"),title:p("sidebar.action.terminal"),className:J("flex h-10 w-10 items-center justify-center rounded-md border transition-colors",o?"border-[hsl(var(--deck-accent)/0.55)] bg-[hsl(var(--deck-accent-soft))] text-[hsl(var(--deck-accent))]":"border-transparent text-[hsl(var(--deck-ink-muted))] hover:bg-[hsl(var(--deck-surface))] hover:text-[hsl(var(--deck-ink))]"),children:a.jsx($p,{className:"w-4 h-4"})}),a.jsxs("button",{onClick:r,"aria-label":p("sidebar.action.searchTasks"),title:`${p("sidebar.action.searchTasks")} (${Fc("searchTasks")})`,className:"relative flex h-10 w-10 items-center justify-center rounded-md border border-transparent text-[hsl(var(--deck-ink-muted))] transition-colors hover:bg-[hsl(var(--deck-surface))] hover:text-[hsl(var(--deck-ink))]",children:[a.jsx(Gc,{className:"h-4 w-4"}),f>0&&a.jsx("span",{"aria-label":p("sidebar.unreadTasks",{count:f}),className:"absolute right-0.5 top-0.5 flex min-h-4 min-w-4 items-center justify-center rounded-full bg-[hsl(var(--deck-accent))] px-1 font-mono text-[8px] font-semibold text-white",children:f>99?"99+":f})]}),a.jsx("div",{className:"flex-1"}),a.jsx("div",{className:"my-2 h-px w-6 bg-[hsl(var(--deck-hairline))]"}),h.map(({icon:b,action:k,labelKey:S})=>a.jsx("button",{"data-settings-trigger":!0,onClick:k,"aria-label":p(S),title:p(S),className:"flex h-10 w-10 items-center justify-center rounded-md text-[hsl(var(--deck-ink-faint))] transition-colors hover:bg-[hsl(var(--deck-surface))] hover:text-[hsl(var(--deck-ink))]",children:a.jsx(b,{className:"w-4 h-4"})},S)),a.jsx(Zx,{variant:"compact"}),a.jsx("div",{className:"mt-1",children:a.jsx("div",{role:"status","aria-label":p(d?"sidebar.status.feedLive":"sidebar.status.feedOffline"),className:J("h-2 w-2 rounded-full",d?"bg-[hsl(var(--deck-accent))] shadow-[0_0_6px_hsl(var(--deck-accent-glow)/0.9)]":"bg-[hsl(var(--deck-ink-faint))]/60"),title:p(d?"sidebar.status.feedLive":"sidebar.status.feedOffline")})})]})}const t0="blade.sidebar.project-order.v1";function uo(e){const t=new Set,n=[];for(const r of e)typeof r!="string"||!r||t.has(r)||(t.add(r),n.push(r));return n}function k5(){if(typeof window>"u")return[];try{const e=JSON.parse(window.localStorage.getItem(t0)??"[]");return Array.isArray(e)?uo(e):[]}catch{return[]}}function x5(e){if(!(typeof window>"u"))try{window.localStorage.setItem(t0,JSON.stringify(uo(e)))}catch{}}function y5(e,t){const n=new Map(uo(t).map((s,i)=>[s,i])),r=n.size;return e.map((s,i)=>({project:s,rank:n.get(s.path)??r+i})).sort((s,i)=>s.rank-i.rank).map(({project:s})=>s)}function w5(e,t,n){const r=uo(e),s=r.indexOf(t),i=r.indexOf(n);if(s<0||i<0||s===i)return r;const[o]=r.splice(s,1);return r.splice(i,0,o),r}function v5(e,t,n){const r=uo(e),s=r.indexOf(t),i=s+n;return s<0||i<0||i>=r.length||([r[s],r[i]]=[r[i],r[s]]),r}function S5({name:e,path:t,count:n,countIsPartial:r=!1,isActive:s,hasRunning:i,unreadCount:o,collapsed:d,onToggle:f,onSelect:u,onCreateTask:m,reorderPosition:p,reorderCount:h,isDragging:b=!1,onDragStart:k,onDragEnd:S,onReorderKeyDown:C}){const x=Ut();return a.jsxs("div",{className:J("group/proj flex w-full items-center gap-2 px-5 pb-1.5 pt-3 text-left transition-colors","hover:bg-[hsl(var(--deck-surface))]/40"),children:[a.jsx("button",{type:"button",draggable:!0,"data-project-drag-handle":t,onDragStart:k,onDragEnd:S,onKeyDown:C,"aria-label":x("sidebar.project.reorder",{name:e,position:p,count:h}),title:x("sidebar.project.reorderHint"),className:J("-ml-2 flex h-6 w-4 shrink-0 cursor-grab items-center justify-center rounded-sm text-[hsl(var(--deck-ink-faint))] opacity-45 transition-[opacity,color,background-color] hover:bg-[hsl(var(--deck-surface-2))] hover:text-[hsl(var(--deck-ink-muted))] hover:opacity-100 focus-visible:opacity-100 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))] active:cursor-grabbing group-hover/proj:opacity-100",b&&"cursor-grabbing opacity-100 text-[hsl(var(--deck-accent))]"),children:a.jsx(uy,{className:"h-3.5 w-3.5"})}),a.jsx("button",{type:"button",onClick:f,"aria-expanded":!d,"aria-label":x(d?"sidebar.project.expand":"sidebar.project.collapse",{name:e}),className:"flex h-6 w-6 shrink-0 items-center justify-center rounded-sm focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))]",children:a.jsx(oy,{className:J("h-3 w-3 text-[hsl(var(--deck-ink-faint))] transition-transform duration-150",!d&&"rotate-90")})}),a.jsxs("button",{type:"button",onClick:u??f,title:t,"aria-current":s?"true":void 0,className:"flex min-h-6 min-w-0 flex-1 items-center gap-2 rounded-sm text-left focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))]",children:[a.jsx(li,{className:J("h-3.5 w-3.5 shrink-0",s?"text-[hsl(var(--deck-accent))]":"text-[hsl(var(--deck-ink-faint))]")}),a.jsx("span",{className:J("flex-1 truncate font-mono text-[11.5px] font-medium tracking-[-0.01em]",s?"text-[hsl(var(--deck-ink))]":"text-[hsl(var(--deck-ink-muted))]"),children:e}),i&&a.jsx("span",{className:"h-1.5 w-1.5 shrink-0 rounded-full bg-blue-500 shadow-[0_0_5px_rgba(59,130,246,0.7)] animate-pulse dark:bg-blue-400","aria-hidden":!0}),o>0&&a.jsx("span",{"aria-label":x("sidebar.unreadTasks",{count:o}),className:"shrink-0 rounded-full bg-[hsl(var(--deck-accent))] px-1.5 py-0.5 font-mono text-[8px] font-semibold text-white",children:o}),a.jsxs("span",{className:"shrink-0 font-mono text-[10px] text-[hsl(var(--deck-ink-faint))]",children:[n.toString().padStart(2,"0"),r?"+":""]})]}),m&&a.jsx("button",{type:"button",onClick:m,title:x("sidebar.project.newTask",{name:e}),"aria-label":x("sidebar.project.newTask",{name:e}),className:"flex h-6 w-6 shrink-0 items-center justify-center rounded-sm text-[hsl(var(--deck-ink-faint))] opacity-0 transition-[opacity,color,background-color] hover:bg-[hsl(var(--deck-surface-2))] hover:text-[hsl(var(--deck-accent))] focus-visible:opacity-100 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))] group-hover/proj:opacity-100",children:a.jsx(Kc,{className:"h-3.5 w-3.5"})})]})}function Lc(e){const t=e.lastMessageTime||e.firstMessageTime;if(!t)return 0;const n=new Date(t).getTime();return Number.isNaN(n)?0:n}function gp(e){return e.pendingInteraction?0:e.taskStatus==="running"?1:e.taskStatus==="queued"?2:3}function Qd(e,t){return gp(e)-gp(t)||Lc(t)-Lc(e)}const j5=["running","queued","interrupted","failed","cancelled","completed"],I5={running:"RUNNING",queued:"QUEUED",interrupted:"INTERRUPTED",failed:"FAILED",cancelled:"CANCELLED",completed:"DONE"},Ss=e=>e.length>1?e.replace(/\/+$/,""):e;function n0(e){const t=new Map;for(const n of e){if(!n)continue;const r=Me(be(n));t.has(r)||t.set(r,n)}return Array.from(t.values())}function C5(e){const t=n0(e),n=[];for(const r of j5){const s=t.filter(i=>i.taskStatus===r).sort(Qd);s.length>0&&n.push({code:I5[r],status:r,sessions:s})}return n}function E5(e,t,n=[]){const r=n0(e),s=new Map,i=n.map(Ss),o=new Map(i.map((u,m)=>[u,m]));for(const u of i)s.set(u,[]);for(const u of r){const m=lo(u,t),p=s.get(m);p?p.push(u):s.set(m,[u])}const d=t?Ss(t):null,f=Array.from(s.entries()).map(([u,m])=>{const p=[...m].sort(Qd),h=m.reduce((b,k)=>Math.max(b,Lc(k)),0);return{path:u,name:Mc(u),isActive:d?Ss(u)===d:!1,isBound:o.has(Ss(u)),hasRunning:m.some(b=>b.taskStatus==="running"),lastActivity:h,sessions:p}});return f.sort((u,m)=>u.isBound!==m.isBound?u.isBound?-1:1:u.isBound&&m.isBound?(o.get(Ss(u.path))??Number.MAX_SAFE_INTEGER)-(o.get(Ss(m.path))??Number.MAX_SAFE_INTEGER):m.lastActivity-u.lastActivity),f}const bp=12,T5={RUNNING:"sidebar.group.running",QUEUED:"sidebar.group.queued",INTERRUPTED:"sidebar.group.interrupted",FAILED:"sidebar.group.failed",CANCELLED:"sidebar.group.cancelled",DONE:"sidebar.group.done"},A5={RUNNING:"text-blue-700 dark:text-blue-400",QUEUED:"text-amber-700 dark:text-amber-400",INTERRUPTED:"text-orange-700 dark:text-orange-400",FAILED:"text-red-700 dark:text-red-400",CANCELLED:"text-[hsl(var(--deck-ink-faint))]",DONE:"text-[hsl(var(--deck-accent))]"};function P5({view:e,sessions:t,activeProjectPath:n,boundProjects:r,currentSessionRef:s,unreadTaskKeys:i,catalogLoadState:o,catalogError:d,onSelectProject:f,onCreateTask:u,onRetryCatalog:m,renderRow:p}){const h=Ut(),[b,k]=y.useState({}),[S,C]=y.useState({}),[x,N]=y.useState(k5),[P,F]=y.useState(null),[D,j]=y.useState(null),[I,T]=y.useState(""),M=o==="loading"||o==="hydrating",$=M||o==="error",te=y.useMemo(()=>e==="status"?C5(t):[],[t,e]),O=y.useMemo(()=>e==="project"?E5(t,n,r.map(R=>R.path)):[],[n,r,t,e]),Q=y.useMemo(()=>y5(O,x),[O,x]),ae=(R,ce)=>{const ve=S[R]??!1,He=ve?ce:ce.filter((tt,Z)=>{if(Z<bp)return!0;const pt=be(tt);return!!tt.pendingInteraction||i.includes(Me(pt))||!!(s&&oe(pt,s))}),yt=ce.length-He.length,We=ve?ce.length>bp:yt>0;return a.jsxs(a.Fragment,{children:[He.map(p),We&&a.jsx("button",{type:"button",onClick:()=>C(tt=>({...tt,[R]:!ve})),className:"mx-4 my-1 rounded-md px-3 py-1.5 text-left font-mono text-[10.5px] text-[hsl(var(--deck-ink-faint))] transition-colors hover:bg-[hsl(var(--deck-surface))] hover:text-[hsl(var(--deck-ink-muted))]",children:ve?h("sidebar.group.showLess"):h("sidebar.group.showMore",{count:yt})})]})},le=M?a.jsxs("div",{role:"status","aria-live":"polite",className:"mx-4 mt-2 flex items-center gap-2 rounded-md bg-[hsl(var(--deck-surface))]/55 px-3 py-2 font-mono text-[9.5px] text-[hsl(var(--deck-ink-faint))]",children:[a.jsx(mt,{className:"h-3 w-3 shrink-0 animate-spin text-[hsl(var(--deck-accent))]"}),a.jsx("span",{className:"flex-1 min-w-0",children:h("sidebar.catalog.syncing")}),a.jsx("span",{className:"tabular-nums shrink-0",children:h("sidebar.catalog.loaded",{count:t.length})})]}):o==="error"?a.jsxs("div",{role:"alert",title:d??void 0,className:"mx-4 mt-2 flex items-center gap-2 rounded-md bg-amber-50/80 px-3 py-2 font-mono text-[9.5px] text-amber-800 dark:bg-amber-950/35 dark:text-amber-300",children:[a.jsx(Ns,{className:"w-3 h-3 shrink-0"}),a.jsx("span",{className:"flex-1 min-w-0",children:h("sidebar.catalog.incomplete")}),a.jsxs("button",{type:"button",onClick:m,className:"inline-flex min-h-6 shrink-0 items-center gap-1 rounded px-1.5 font-medium hover:bg-amber-100 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-amber-500 dark:hover:bg-amber-900/50",children:[a.jsx(di,{className:"h-2.5 w-2.5"}),h("sidebar.catalog.retry")]})]}):null;if(e==="status")return a.jsxs("div",{className:"flex flex-col",children:[le,te.map((R,ce)=>a.jsxs("div",{children:[a.jsxs("div",{className:J("flex items-center justify-between px-5 pb-2 pt-3 font-mono text-[10px] tracking-[0.16em]",A5[R.code]??"text-[hsl(var(--deck-ink-faint))]",ce===0&&"pt-2"),children:[a.jsx("span",{children:h(T5[R.code])}),a.jsxs("span",{className:"text-[hsl(var(--deck-ink-faint))]",children:[R.sessions.length.toString().padStart(2,"0"),$?"+":""]})]}),ae(`status:${R.code}`,R.sessions)]},R.code))]});const de=Q.some(R=>R.isActive),me=R=>!!(s&&R.sessions.some(ce=>oe(be(ce),s))),Y=(R,ce)=>{if(R.join("\0")===Q.map(He=>He.path).join("\0"))return;N(R),x5(R);const ve=Q.find(He=>He.path===ce);T(h("sidebar.project.reordered",{name:(ve==null?void 0:ve.name)??ce,position:R.indexOf(ce)+1}))},he=(R,ce)=>{const ve=R.sessions.filter(Z=>i.includes(Me(be(Z)))).length,He=me(R),yt=ve>0,We=R.sessions.some(Z=>!!Z.pendingInteraction),tt=b[R.path]??(de&&!R.isActive&&!(He||R.hasRunning||yt||We));return a.jsxs("div",{"data-project-group":R.path,onDragEnter:Z=>{!P||P===R.path||(Z.preventDefault(),j(R.path))},onDragOver:Z=>{!P||P===R.path||(Z.preventDefault(),Z.dataTransfer.dropEffect="move")},onDrop:Z=>{Z.preventDefault();const pt=P||Z.dataTransfer.getData("text/plain");pt&&pt!==R.path&&Y(w5(Q.map(L=>L.path),pt,R.path),pt),F(null),j(null)},className:J("relative transition-colors",D===R.path&&P!==R.path&&"bg-[hsl(var(--deck-accent-soft))]/55 before:absolute before:inset-y-1 before:left-0 before:w-0.5 before:rounded-full before:bg-[hsl(var(--deck-accent))]"),children:[a.jsx(S5,{name:R.name,path:R.path,count:R.sessions.length,countIsPartial:$,isActive:R.isActive,hasRunning:R.hasRunning,unreadCount:ve,collapsed:tt,onSelect:()=>f(R.path),onCreateTask:()=>u(R.path),reorderPosition:ce+1,reorderCount:Q.length,isDragging:P===R.path,onDragStart:Z=>{Z.dataTransfer.effectAllowed="move",Z.dataTransfer.setData("text/plain",R.path),F(R.path)},onDragEnd:()=>{F(null),j(null)},onReorderKeyDown:Z=>{if(Z.key!=="ArrowUp"&&Z.key!=="ArrowDown")return;Z.preventDefault();const pt=v5(Q.map(L=>L.path),R.path,Z.key==="ArrowUp"?-1:1);Y(pt,R.path)},onToggle:()=>k(Z=>({...Z,[R.path]:!tt}))}),!tt&&ae(`project:${R.path}`,R.sessions)]},R.path)};return a.jsxs("div",{className:"flex flex-col",children:[a.jsx("span",{className:"sr-only","aria-live":"polite",children:I}),le,Q.length>0&&a.jsxs(a.Fragment,{children:[a.jsx("div",{className:"px-5 pb-0.5 pt-2 font-mono text-[9px] uppercase tracking-[0.16em] text-[hsl(var(--deck-ink-faint))]",children:h("sidebar.project.projects")}),Q.map(he)]})]})}function N5({className:e,onNavigate:t}){const n=Ut(),{toggleSettings:r,toggleSidebar:s,isSidebarOpen:i,isTerminalOpen:o,toggleTerminal:d,sidebarView:f,setSidebarView:u,setTaskSwitcherOpen:m,mainView:p,setMainView:h,setBoardProjectPath:b,setFilePreviewOpen:k}=on(),S=H(A=>A.sessions),C=H(A=>A.catalogLoadState),x=H(A=>A.catalogError),N=H(A=>A.currentSessionRef),P=H(A=>A.forkingSessionRef),F=H(A=>A.selectSession),D=H(A=>A.startTemporarySession),j=H(A=>A.deleteSession),I=H(A=>A.archiveSession),T=H(A=>A.forkSession),M=H(A=>A.updateSession),$=H(A=>A.loadSessions),te=H(A=>A.setError),O=H(A=>A.taskEventsConnected),Q=H(A=>A.taskWorkspaceInfo),ae=H(A=>A.boundProjects),le=H(A=>A.selectedProjectPath),de=H(A=>A.bindProject),me=H(A=>A.selectProject),Y=H(A=>A.cancelTask),he=H(A=>A.cancellingTaskKeys),R=H(A=>A.retryTask),ce=H(A=>A.retryingTaskKeys),ve=H(A=>A.unreadTaskKeys),[He,yt]=y.useState(null),[We,tt]=y.useState(""),[Z,pt]=y.useState(null),[L,B]=y.useState(!1),Se=le??(Q==null?void 0:Q.cwd)??null,qe=A=>gi(A,n),Pe=A=>{const Ee=A.taskSourceProjectPath||A.projectPath,en=Ee.split("/").filter(Boolean).at(-1)||Ee,pr=A.taskIsolation==="worktree"?A.taskWorktreeBranch||n("session.env.worktree"):n("session.env.local"),fr=A.taskDiffStat?`+${A.taskDiffStat.additions} −${A.taskDiffStat.deletions}`:void 0,bs=A.taskStatus==="queued"&&A.taskQueuePosition?n("session.queued",{position:A.taskQueuePosition,depth:A.taskQueueDepth??A.taskQueuePosition}):void 0,ks=Vd(A,n);return{project:en,environment:pr,diff:fr,queue:bs,reason:ks}},Jt=()=>{h("workspace"),D(Se??void 0),t==null||t()},et=()=>{k(!1),b(Se),h("board"),t==null||t()},Ht=async A=>{ae.some(Ee=>Ee.path===A)?me(A):await de(A),h("workspace"),D(A),t==null||t()},Qt=async A=>{ae.some(Ee=>Ee.path===A)?me(A):await de(A),h("workspace"),D(A),t==null||t()},bt=A=>{A(),t==null||t()},_=async(A,Ee)=>{A.stopPropagation(),await j(be(Ee))},Re=async A=>{const Ee=be(A),en=Me(Ee);if(!Z){pt(en);try{await Yx(Ee)}catch(pr){te(pr instanceof Error?pr.message:"Session export failed")}finally{pt(null)}}},wt=(A,Ee)=>{A.stopPropagation(),yt(Me(be(Ee))),tt(qe(Ee))},qt=async A=>{if(!We.trim()){yt(null);return}try{await M(be(A),We.trim()),yt(null),await $()}catch(Ee){console.error("Failed to rename session:",Ee)}},Lr=()=>{yt(null),tt("")};return i?a.jsxs("div",{className:J("flex flex-col h-screen border-r w-[260px] border-[hsl(var(--deck-hairline))] bg-[hsl(var(--deck-canvas-veil))]",e),children:[a.jsxs("div",{className:"flex flex-col gap-6 px-5 pt-5 pb-5",children:[a.jsxs("div",{className:"flex justify-between items-center",children:[a.jsxs("div",{className:"flex items-center gap-2.5",children:[a.jsx(Jd,{size:26}),a.jsx("span",{className:"font-mono text-[15px] font-semibold tracking-[-0.01em] text-[hsl(var(--deck-ink))]",children:"Blade"}),a.jsx("span",{className:"ml-1 rounded-sm border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface))] px-1 py-[1px] font-mono text-[9px] text-[hsl(var(--deck-ink-faint))]",children:n("sidebar.brand.badge")})]}),a.jsx("button",{onClick:s,"aria-label":n("sidebar.action.collapse"),className:"flex h-8 w-8 items-center justify-center rounded transition-colors hover:bg-[hsl(var(--deck-surface))]",children:a.jsx(iy,{className:"h-3 w-3 text-[hsl(var(--deck-ink-muted))]"})})]}),a.jsxs("div",{className:"flex flex-col gap-1.5",children:[a.jsxs("button",{onClick:Jt,className:"flex h-9 w-full items-center justify-between rounded-md bg-[hsl(var(--deck-ink))] px-3 font-mono text-[13px] font-medium text-[hsl(var(--deck-canvas))] transition-colors hover:bg-[hsl(var(--deck-ink))]/88",children:[a.jsxs("span",{className:"flex gap-2 items-center",children:[a.jsx(Kc,{className:"h-3.5 w-3.5 stroke-[2.5]"}),n("sidebar.action.newTask")]}),a.jsx("span",{className:"rounded-sm bg-white/10 px-1.5 py-[1px] font-mono text-[10px] text-white/80",children:Fc("newTask")})]}),a.jsxs("button",{type:"button",onClick:et,"aria-current":p==="board"?"page":void 0,className:J("flex h-9 w-full items-center gap-2 rounded-md border px-3 font-mono text-[12.5px] transition-colors",p==="board"?"border-[hsl(var(--deck-accent)/0.45)] bg-[hsl(var(--deck-accent-soft))] text-[hsl(var(--deck-accent))]":"border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface))] text-[hsl(var(--deck-ink-muted))] hover:border-[hsl(var(--deck-border-strong))] hover:text-[hsl(var(--deck-ink))]"),children:[a.jsx(Np,{className:"h-3.5 w-3.5"}),n("sidebar.action.taskBoard")]}),a.jsxs("button",{onClick:()=>bt(d),className:J("flex h-9 w-full items-center gap-2 rounded-md border px-3 font-mono text-[12.5px] transition-colors",o?"border-[hsl(var(--deck-accent)/0.55)] bg-[hsl(var(--deck-accent-soft))] text-[hsl(var(--deck-accent))]":"border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface))] text-[hsl(var(--deck-ink-muted))] hover:border-[hsl(var(--deck-border-strong))] hover:text-[hsl(var(--deck-ink))]"),children:[a.jsx($p,{className:"h-3.5 w-3.5"}),n("sidebar.action.terminal")]}),a.jsxs("button",{type:"button",onClick:()=>bt(()=>m(!0)),className:"flex h-9 w-full items-center justify-between rounded-md border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface))] px-3 font-mono text-[12.5px] text-[hsl(var(--deck-ink-muted))] transition-colors hover:border-[hsl(var(--deck-border-strong))] hover:text-[hsl(var(--deck-ink))]",children:[a.jsxs("span",{className:"flex items-center gap-2",children:[a.jsx(Gc,{className:"h-3.5 w-3.5"}),n("sidebar.action.searchTasks")]}),a.jsx("span",{className:"rounded-sm border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-canvas))] px-1.5 py-[1px] font-mono text-[9px] text-[hsl(var(--deck-ink-faint))]",children:ve.length>0?ve.length:Fc("searchTasks")})]})]}),a.jsxs("div",{className:"flex items-center gap-1",children:[a.jsx("div",{className:"flex flex-1 items-center gap-0.5 rounded-md border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface))] p-0.5",children:["project","status"].map(A=>a.jsx("button",{type:"button",onClick:()=>u(A),"aria-pressed":f===A,"aria-label":n(A==="project"?"sidebar.view.projectAria":"sidebar.view.statusAria"),className:J("flex-1 rounded-[5px] py-1 font-mono text-[11px] tracking-[0.02em] transition-colors",f===A?"bg-[hsl(var(--deck-canvas))] text-[hsl(var(--deck-ink))] shadow-sm":"text-[hsl(var(--deck-ink-faint))] hover:text-[hsl(var(--deck-ink-muted))]"),children:n(A==="project"?"sidebar.view.project":"sidebar.view.status")},A))}),a.jsx("button",{type:"button",onClick:()=>B(!0),title:n("projects.bind.action"),"aria-label":n("projects.bind.action"),className:"flex h-7 w-7 shrink-0 items-center justify-center rounded-md border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface))] text-[hsl(var(--deck-ink-faint))] transition-colors hover:border-[hsl(var(--deck-border-strong))] hover:text-[hsl(var(--deck-accent))]",children:a.jsx(Ro,{className:"h-3.5 w-3.5"})})]})]}),a.jsx(Wd,{className:"flex-1 px-0",children:a.jsxs("div",{className:"flex flex-col",children:[(S.length>0||ae.length>0||C==="loading"||C==="hydrating"||C==="error")&&a.jsx(P5,{view:f,sessions:S,activeProjectPath:Se,boundProjects:ae,currentSessionRef:N,unreadTaskKeys:ve,catalogLoadState:C,catalogError:x,onRetryCatalog:$,onSelectProject:A=>void Ht(A).catch(()=>{}),onCreateTask:A=>void Qt(A).catch(()=>{}),renderRow:A=>{const Ee=be(A),en=Me(Ee),pr=oe(Ee,N),fr=He===en,bs=oe(Ee,P),ks=!!P;return a.jsx(g5,{session:A,sessionRef:Ee,isActive:pr,isForking:bs,isUnread:ve.includes(Me(Ee)),anyForking:ks,isEditing:fr,editingTitle:We,title:qe(A),context:Pe(A),isCancelling:he.includes(Me(Ee)),isRetrying:ce.includes(Me(Ee)),isExporting:Z===en,onSelect:()=>(t==null||t(),h("workspace"),F(Ee)),onCancelTask:()=>{Y(Ee).catch(()=>{})},onRetryTask:()=>{R(Ee).catch(()=>{})},onFork:()=>void T(A),onArchive:()=>void I(Ee),onExport:()=>void Re(A),onStartRename:Xs=>wt(Xs,A),onDelete:Xs=>_(Xs,A),onEditingTitleChange:tt,onSaveRename:()=>qt(A),onCancelRename:Lr},en)}}),S.length===0&&a.jsx("div",{className:"px-5 mt-6",children:a.jsxs("div",{className:"rounded-md border border-dashed border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface))]/60 px-4 py-6 text-center",children:[a.jsx("div",{className:"mx-auto mb-2 inline-flex h-8 w-8 items-center justify-center rounded-md border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-canvas))]",children:a.jsx(Mp,{className:"h-3.5 w-3.5 text-[hsl(var(--deck-ink-faint))]"})}),a.jsx("div",{className:"font-mono text-[12px] text-[hsl(var(--deck-ink-muted))]",children:n("sidebar.empty.title")}),a.jsx("div",{className:"mt-1 text-[10.5px] text-[hsl(var(--deck-ink-faint))]",children:n("sidebar.empty.hint")})]})})]})}),a.jsxs("div",{className:"flex flex-col gap-3 px-5 pt-3 pb-5",children:[a.jsxs("div",{className:"flex flex-col gap-0.5 border-t border-[hsl(var(--deck-hairline))] pt-3",children:[a.jsx(f5,{}),[{icon:Op,action:()=>bt(r),labelKey:"sidebar.section.settings"}].map(({icon:A,action:Ee,labelKey:en})=>a.jsxs("button",{"data-settings-trigger":!0,onClick:Ee,className:"flex h-8 w-full items-center gap-2.5 rounded-md px-2.5 font-mono text-[12.5px] text-[hsl(var(--deck-ink-muted))] transition-colors hover:bg-[hsl(var(--deck-surface))] hover:text-[hsl(var(--deck-ink))]",children:[a.jsx(A,{className:"h-3.5 w-3.5 text-[hsl(var(--deck-ink-faint))]"}),n(en)]},en))]}),a.jsxs("div",{className:"flex gap-2 justify-between items-center",children:[a.jsx("span",{className:"font-mono text-[10px] uppercase tracking-[0.14em] text-[hsl(var(--deck-ink-faint))]",children:n("sidebar.language.label")}),a.jsx(Zx,{})]}),a.jsxs("div",{className:"flex items-center gap-2.5 rounded-md border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface))] px-3 py-2",children:[a.jsx("div",{className:"flex h-7 w-7 items-center justify-center rounded-md bg-[hsl(var(--deck-canvas-veil))]",children:a.jsx("div",{className:"h-2 w-2 rounded-full bg-[hsl(var(--deck-ink))]"})}),a.jsxs("div",{className:"flex flex-1 flex-col gap-[1px]",children:[a.jsx("span",{className:"font-mono text-[12px] text-[hsl(var(--deck-ink))]",children:n("sidebar.status.user")}),a.jsxs("span",{className:J("flex gap-1 items-center font-mono text-[10px]",O?"text-[hsl(var(--deck-accent))]":"text-[hsl(var(--deck-ink-faint))]"),children:[a.jsx("span",{className:J("h-1 w-1 rounded-full",O?"bg-[hsl(var(--deck-accent))] shadow-[0_0_5px_hsl(var(--deck-accent-glow)/0.9)]":"bg-[hsl(var(--deck-ink-faint))]/60")}),n(O?"sidebar.status.feedLive":"sidebar.status.feedOffline")]})]})]})]}),a.jsx(e0,{open:L,onOpenChange:B})]}):a.jsx(b5,{className:e,onExpand:s,onNewChat:Jt,onOpenBoard:et,onOpenTaskSwitcher:()=>bt(()=>m(!0)),onToggleTerminal:()=>bt(d),onToggleSettings:()=>bt(r),isTerminalOpen:o,taskEventsConnected:O,unreadCount:ve.length,boardActive:p==="board"})}const O5=y.lazy(()=>es(()=>import("./SettingsModal-SSdk0Bjr.js"),__vite__mapDeps([4,1,2,5,6,7,8,3,9])).then(e=>({default:e.SettingsModal}))),r0=()=>es(()=>import("./TaskSwitcher-EnaUhn3o.js"),__vite__mapDeps([10,1,3,11,12,2])).then(e=>({default:e.TaskSwitcher})),R5=y.lazy(r0),s0=()=>es(()=>import("./FilePreview-DCI-oqhJ.js"),__vite__mapDeps([13,1,3,14,5,9,11,2])),M5=y.lazy(()=>s0().then(e=>({default:e.FilePreview}))),$5=y.lazy(()=>s0().then(e=>({default:e.PreviewControls}))),F5=y.lazy(()=>es(()=>import("./TerminalPanel-BcWxLSV3.js"),__vite__mapDeps([15,1,16,17,3,2])).then(e=>({default:e.TerminalPanel}))),sc=e=>{if(e.startsWith("/Users/")){const t=e.split("/");if(t.length>=3)return"~/"+t.slice(3).join("/")}return e},L5=e=>e.replace(/^~\//,"~/§").split("/").filter(Boolean).map((t,n,r)=>{var s;return n===0&&((s=r[0])!=null&&s.startsWith("~"))?"~":t.replace(/^§/,"")});function D5({children:e}){var Z,pt;const t=Ut();p5();const{isSidebarOpen:n,isFilePreviewOpen:r,isSettingsOpen:s,isTerminalOpen:i,isTaskSwitcherOpen:o,toggleFilePreview:d,openFilePreview:f,previewRequestId:u,setSidebarOpen:m,mainView:p}=on();y.useEffect(()=>{const L=window.setTimeout(()=>{r0()},1500);return()=>window.clearTimeout(L)},[]);const h=H(L=>L.currentSessionId),b=H(L=>L.currentSessionRef),k=H(L=>L.sessions),S=H(L=>L.isStreaming),C=H(L=>L.isTemporarySession),x=H(L=>L.taskWorkspaceInfo),N=H(L=>L.boundProjects),P=H(L=>L.selectedProjectPath),[F,D]=y.useState(null),[j,I]=y.useState(!1),[T,M]=y.useState(),[$,te]=y.useState(()=>typeof window<"u"&&typeof window.matchMedia=="function"&&window.matchMedia("(max-width: 639px)").matches),[O,Q]=y.useState(()=>typeof window<"u"&&typeof window.matchMedia=="function"&&window.matchMedia("(max-width: 1023px)").matches),ae=y.useRef(null),le=y.useRef(null),de=y.useRef(null),me=y.useMemo(()=>k.find(L=>oe({sessionId:L.sessionId,projectPath:L.projectPath},b)),[b,k]),Y=(me==null?void 0:me.taskIsolation)==="worktree"&&me.taskSourceProjectPath&&(((Z=me.taskDelivery)==null?void 0:Z.status)==="applied"||((pt=me.taskDelivery)==null?void 0:pt.status)==="discarded")?me.taskSourceProjectPath:b==null?void 0:b.projectPath;y.useEffect(()=>{if(typeof window.matchMedia!="function")return;const L=window.matchMedia("(max-width: 900px)"),B=()=>{L.matches&&m(!1)};return B(),L.addEventListener("change",B),()=>L.removeEventListener("change",B)},[m]),y.useEffect(()=>{if(typeof window.matchMedia!="function")return;const L=window.matchMedia("(max-width: 639px)"),B=()=>te(L.matches);return B(),L.addEventListener("change",B),()=>L.removeEventListener("change",B)},[]),y.useEffect(()=>{if(typeof window.matchMedia!="function")return;const L=window.matchMedia("(max-width: 1023px)"),B=()=>Q(L.matches);return B(),L.addEventListener("change",B),()=>L.removeEventListener("change",B)},[]),y.useEffect(()=>{if(!$||!n)return;const L=requestAnimationFrame(()=>{var B,Se;(Se=(B=ae.current)==null?void 0:B.querySelector("button"))==null||Se.focus()});return()=>{var B;cancelAnimationFrame(L),(B=le.current)==null||B.focus({preventScroll:!0})}},[$,n]);const he=L=>{var Pe;if(!$||!n)return;if(L.key==="Escape"){L.preventDefault(),m(!1);return}if(L.key!=="Tab")return;const B=Array.from(((Pe=ae.current)==null?void 0:Pe.querySelectorAll('button:not([disabled]), input:not([disabled]), select:not([disabled]), [href], [tabindex]:not([tabindex="-1"])'))??[]);if(B.length===0)return;const Se=B[0],qe=B[B.length-1];L.shiftKey&&document.activeElement===Se?(L.preventDefault(),qe==null||qe.focus()):!L.shiftKey&&document.activeElement===qe&&(L.preventDefault(),Se==null||Se.focus())},R=y.useMemo(()=>p==="board"||!h||C?P?sc(P):null:me!=null&&me.projectPath?sc(me.taskSourceProjectPath||me.projectPath):null,[h,me,C,p,P]),ce=y.useMemo(()=>R?L5(R):[],[R]);y.useEffect(()=>{var B;if(!b){D(((B=N.find(Se=>Se.path===P))==null?void 0:B.gitBranch)??null);return}(async()=>{try{const Se=await X.getGitInfo({sessionId:b.sessionId,projectPath:Y??b.projectPath});D(Se.branch)}catch{D(null)}})()},[N,b,Y,P]);const ve=x==null?void 0:x.taskAdmission,He=p==="board"?P??(x==null?void 0:x.cwd)??null:Y??P??(x==null?void 0:x.cwd)??null,yt=b&&p==="workspace"?Me(b):`project:${P??"none"}`,We=r&&O,tt=r&&T;return a.jsxs("div",{className:"flex h-screen overflow-hidden bg-[hsl(var(--deck-canvas))]",children:[$&&n&&!We&&a.jsx("button",{type:"button","aria-label":t("sidebar.action.collapse"),onClick:()=>m(!1),className:"fixed inset-0 z-40 bg-black/25 backdrop-blur-[1px]"}),a.jsx("div",{ref:ae,role:$&&n&&!We?"dialog":void 0,"aria-modal":$&&n&&!We?!0:void 0,"aria-label":$&&n&&!We?t("sidebar.navigationAria"):void 0,inert:We||$&&!n?!0:void 0,onKeyDown:he,className:J("overflow-hidden",n?"w-[260px]":"w-[64px]",$?"fixed inset-y-0 left-0 z-50 shadow-2xl transition-none":"shrink-0 transition-[width] duration-300 ease-in-out",$&&!n&&"-translate-x-full"),children:a.jsx("div",{className:J("transition-all duration-300 ease-in-out",n?"w-[260px]":"w-[64px]"),children:a.jsx(N5,{onNavigate:()=>{$&&m(!1)}})})}),a.jsxs("div",{className:"flex flex-col flex-1 min-w-0",children:[a.jsxs("header",{inert:We,className:"relative z-10 flex h-14 items-center gap-2 border-b border-[hsl(var(--deck-hairline))] bg-[hsl(var(--deck-canvas))]/90 px-3 backdrop-blur-md sm:gap-4 sm:px-6",children:[$&&a.jsx(Kr,{ref:le,"data-mobile-navigation-trigger":!0,variant:"ghost",size:"icon",onClick:()=>m(!0),"aria-label":t("layout.action.openNavigation"),title:t("layout.action.openNavigation"),className:"h-9 w-9 shrink-0 rounded-md text-[hsl(var(--deck-ink-muted))] hover:bg-[hsl(var(--deck-surface))] hover:text-[hsl(var(--deck-ink))]",children:a.jsx(gy,{className:"h-4 w-4"})}),a.jsxs("div",{className:"flex gap-2 items-center min-w-0",children:[ce.length>0?a.jsx("nav",{"aria-label":t("layout.workspace.pathAria"),title:R??void 0,className:"flex min-w-0 items-center font-mono text-[12px] text-[hsl(var(--deck-ink-muted))]",children:ce.map((L,B)=>{const Se=B===ce.length-1,qe=B===0&&L==="~";return a.jsxs("span",{className:"flex items-center min-w-0",children:[B>0&&a.jsx("span",{className:"mx-1 text-[hsl(var(--deck-ink-faint))]/70",children:"/"}),B===0&&!qe&&a.jsx("span",{className:"mr-1 text-[hsl(var(--deck-ink-faint))]/70",children:"/"}),a.jsx("span",{className:J("truncate",Se?"font-medium text-[hsl(var(--deck-ink))]":"text-[hsl(var(--deck-ink-muted))]"),children:L})]},B)})}):a.jsx("span",{className:"font-mono text-[12px] text-[hsl(var(--deck-ink-faint))]",children:x!=null&&x.cwd?sc(x.cwd):t("layout.workspace.empty")}),F&&a.jsxs("span",{className:"ml-2 inline-flex items-center gap-1 rounded-md border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface))] px-2 py-0.5 font-mono text-[10.5px] text-[hsl(var(--deck-ink-muted))]",children:[a.jsx(zc,{className:"h-3 w-3 text-[hsl(var(--deck-accent))]"}),F]})]}),a.jsxs("div",{className:"flex gap-3 items-center ml-auto",children:[ve&&a.jsx("span",{className:"hidden items-center rounded-md border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface))] px-2.5 py-1 md:inline-flex",children:a.jsx(Wx,{inFlight:ve.inFlight,queued:ve.queued,maxConcurrent:ve.maxConcurrent,compact:!0})}),a.jsxs("div",{className:"flex items-center gap-0.5",children:[a.jsx(Kr,{variant:"ghost",size:"icon","aria-label":t("layout.action.rewind"),title:t("layout.action.rewind"),disabled:p==="board"||!b||C||S,onClick:()=>I(!0),className:"h-8 w-8 rounded-md text-[hsl(var(--deck-ink-faint))] hover:bg-[hsl(var(--deck-surface))] hover:text-[hsl(var(--deck-ink))] disabled:opacity-35",children:a.jsx(Yo,{className:"w-4 h-4"})}),a.jsx(y.Suspense,{fallback:null,children:a.jsx($5,{ref:de,open:r,maximized:T,disabled:p==="board",onToggleMaximized:()=>M(L=>!L),onTogglePreview:()=>{if(r){M(!1),d();return}f((!b||C)&&u===0?{tab:"files"}:void 0)}})})]})]})]}),a.jsxs("main",{className:"flex-1 overflow-hidden relative flex bg-[hsl(var(--deck-canvas))]",children:[a.jsx("div",{"data-preview-background":"content","data-preview-maximized":tt,inert:We,className:"relative flex min-w-0 flex-1 flex-col",children:s?a.jsx(y.Suspense,{fallback:null,children:a.jsx(O5,{})}):e}),r&&a.jsx(y.Suspense,{fallback:null,children:a.jsx(M5,{returnFocusElement:de.current,maximized:tt},yt)})]})]}),i&&a.jsx(y.Suspense,{fallback:null,children:a.jsx(F5,{workspacePath:He},He??"default-workspace")}),o&&a.jsx(y.Suspense,{fallback:null,children:a.jsx(R5,{})}),a.jsx(a5,{open:j,onOpenChange:I})]})}const ic="BladeCode";function _5(){const e=Ut(),t=H(o=>o.unreadTaskKeys),n=H(o=>o.sessions),r=H(o=>o.selectSession),s=H(o=>o.selectProject),i=y.useMemo(()=>{const o=new Set(t);for(const d of n)d.pendingInteraction&&o.add(Me(be(d)));return o.size},[n,t]);return y.useEffect(()=>(document.title=i>0?`(${i}) ${ic}`:ic,()=>{document.title=ic}),[i]),y.useEffect(()=>{const o=d=>{var h;const f=d.detail;if(!(f!=null&&f.sessionId)||!f.projectPath)return;const u=H.getState(),m=Gd(u.sessions,f),p=m?lo(m,u.selectedProjectPath??((h=u.taskWorkspaceInfo)==null?void 0:h.cwd)??null):f.projectPath;u.boundProjects.some(b=>b.available&&b.path===p)&&s(p),r(f)};return window.addEventListener(Go,o),()=>window.removeEventListener(Go,o)},[s,r]),a.jsx("div",{className:"sr-only",role:"status","aria-live":"polite",children:i>0?e("attention.unreadAnnouncement",{count:i}):""})}const Dc=y.forwardRef(({className:e,...t},n)=>a.jsx("textarea",{className:J("flex min-h-[80px] w-full rounded-md border border-input bg-background px-3 py-2 text-base ring-offset-background placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",e),ref:n,...t}));Dc.displayName="Textarea";const U5=(e,t)=>{const n=[...e.matchAll(/(?:^|\s)(@(?:"[^"]*"|(?:[^\\ ]|\\ )*))/g)];for(const r of n){const s=r[1],i=r.index+(r[0].length-s.length),o=i+s.length;if(t>=i&&t<=o){let d=s.slice(1),f=!1;return d.startsWith('"')&&(f=!0,d=d.slice(1),d.endsWith('"')&&(d=d.slice(0,-1))),{hasQuery:!0,query:d,startIndex:i,endIndex:o,quoted:f}}}return{hasQuery:!1,query:"",startIndex:-1,endIndex:-1,quoted:!1}},B5=(e,t,n={})=>{const{debounceDelay:r=200,maxSuggestions:s=15,workspacePath:i}=n,[o,d]=y.useState([]),[f,u]=y.useState(0),[m,p]=y.useState(!1),h=y.useMemo(()=>t===void 0?{hasQuery:!1,query:"",startIndex:-1,endIndex:-1,quoted:!1}:U5(e,t),[e,t]);y.useEffect(()=>{if(!h.hasQuery){d([]),p(!1);return}let S=!1;p(!0);const x=setTimeout(async()=>{try{const N=await fetch(`/suggestions/files?q=${encodeURIComponent(h.query)}&limit=${s}`,i?{headers:{"x-blade-directory":i}}:void 0);if(!N.ok)throw new Error("Failed to fetch suggestions");const P=await N.json();S||d(P)}catch(N){console.error("Failed to fetch file suggestions:",N),S||d([])}finally{S||p(!1)}},r);return()=>{S=!0,clearTimeout(x)}},[h.hasQuery,h.query,r,s,i]),y.useEffect(()=>{u(0)},[o]);const b=y.useCallback(()=>{u(S=>(S+1)%Math.max(o.length,1))},[o.length]),k=y.useCallback(()=>{u(S=>(S-1+o.length)%Math.max(o.length,1))},[o.length]);return{...h,suggestions:o,selectedIndex:f,loading:m,setSelectedIndex:u,selectNext:b,selectPrevious:k}},H5=(e,t=!1)=>e.includes(" ")||t?`@"${e}"`:`@${e}`,q5=(e,t,n)=>{if(!t.hasQuery)return{newInput:e,newCursorPos:e.length};const r=H5(n,t.quoted),s=e.slice(0,t.startIndex),i=e.slice(t.endIndex),o=s+r+" "+i,d=t.startIndex+r.length+1;return{newInput:o,newCursorPos:d}};function z5(){const[e,t]=y.useState([]),[n,r]=y.useState(-1),s=y.useRef(""),i=y.useCallback(u=>{u.trim()&&(t(m=>m[m.length-1]===u?m:[...m,u]),r(-1),s.current="")},[]),o=y.useCallback(u=>{if(e.length===0)return null;n===-1&&(s.current=u);const m=n===-1?e.length-1:Math.max(0,n-1);return r(m),e[m]??null},[e,n]),d=y.useCallback(()=>{if(n===-1)return null;const u=n+1;return u>=e.length?(r(-1),s.current):(r(u),e[u]??null)},[e,n]),f=y.useCallback(()=>{r(-1),s.current=""},[]);return{addToHistory:i,getPrevious:o,getNext:d,reset:f,historyIndex:n}}const K5=(e,t)=>{if(!e.startsWith("/"))return{hasQuery:!1,query:"",startIndex:-1,endIndex:-1};const n=e.indexOf(" "),r=n===-1?e.length:n;return t<=r?{hasQuery:!0,query:e.slice(1,t),startIndex:0,endIndex:t}:{hasQuery:!1,query:"",startIndex:-1,endIndex:-1}},G5=(e,t,n={})=>{const{debounceDelay:r=150,workspacePath:s}=n,[i,o]=y.useState([]),[d,f]=y.useState(0),[u,m]=y.useState(!1),p=y.useMemo(()=>t===void 0?{hasQuery:!1,query:"",startIndex:-1,endIndex:-1}:K5(e,t),[e,t]);y.useEffect(()=>{if(!p.hasQuery){o([]),m(!1);return}let k=!1;m(!0);const C=setTimeout(async()=>{try{const x=await fetch(`/suggestions/commands?q=${encodeURIComponent(p.query)}`,s?{headers:{"x-blade-directory":s}}:void 0);if(!x.ok)throw new Error("Failed to fetch suggestions");const N=await x.json();k||o(N)}catch(x){console.error("Failed to fetch command suggestions:",x),k||o([])}finally{k||m(!1)}},r);return()=>{k=!0,clearTimeout(C)}},[p.hasQuery,p.query,r,s]),y.useEffect(()=>{f(0)},[i]);const h=y.useCallback(()=>{f(k=>(k+1)%Math.max(i.length,1))},[i.length]),b=y.useCallback(()=>{f(k=>(k-1+i.length)%Math.max(i.length,1))},[i.length]);return{...p,suggestions:i,selectedIndex:d,loading:u,setSelectedIndex:f,selectNext:h,selectPrevious:b}},V5=(e,t,n)=>{if(!t.hasQuery)return{newInput:e,newCursorPos:e.length};const r=e.slice(t.endIndex),s=n.command+" "+r.trimStart(),i=n.command.length+1;return{newInput:s,newCursorPos:i}},W5="blade.composer.draft.",Vo=new Map,_c=new Set,i0=1;function Wo(){return typeof sessionStorage>"u"?null:sessionStorage}function Jo(e){return`${W5}${e}`}function o0(e){var n;if(!e)return{content:"",attachments:[],outputSchema:void 0};const t=Vo.get(e);if(t)return{content:t.content,attachments:[...t.attachments],outputSchema:t.outputSchema};try{const r=((n=Wo())==null?void 0:n.getItem(Jo(e)))??"";if(!r)return{content:"",attachments:[],outputSchema:void 0};try{const s=JSON.parse(r);if(s.version===i0&&typeof s.content=="string"&&(s.outputSchema===void 0||typeof s.outputSchema=="string"))return{content:s.content,attachments:[],outputSchema:s.outputSchema}}catch{}return{content:r,attachments:[],outputSchema:void 0}}catch{return{content:"",attachments:[],outputSchema:void 0}}}function sn(e,t){var s,i;if(!e)return;const n=Vo.get(e),r=t.outputSchema??(n==null?void 0:n.outputSchema);if(!t.content&&t.attachments.length===0&&!r){a0(e);return}Vo.set(e,{content:t.content,attachments:[...t.attachments],outputSchema:r});try{t.content||r?(s=Wo())==null||s.setItem(Jo(e),JSON.stringify({version:i0,content:t.content,...r?{outputSchema:r}:{}})):(i=Wo())==null||i.removeItem(Jo(e))}catch{}}function a0(e){var t;if(e){Vo.delete(e);try{(t=Wo())==null||t.removeItem(Jo(e))}catch{}}}function E3(e,t){const n=t.trim();if(!e||!n)return!1;const r=o0(e),s=r.content.length===0?"":r.content.endsWith(`
|
|
269
|
+
`),n=e.UseUnevaluated()?["const context = new CheckContext({}, {})",`return ${e.Entry()}`]:[`return ${e.Entry()}`];return`${t}; return (value) => { ${n.join("; ")} }`}function BO(e,t){return yf("CheckContext","Guard","Format","Hashing",e.External().identifier,t)(Gn,Mo,JN,Mv,e.External().variables)}function HO(e){const t=new so(e.Context(),e.Schema()),n=new Gn;return r=>lt(t,n,e.Schema(),r)}function qO(e,t){return xf()?BO(e,t):HO(e)}class gx{constructor(t,n,r){this.isAccelerated=t,this.code=n,this.check=r}IsAccelerated(){return this.isAccelerated}Code(){return this.code}Check(t){return this.check(t)}}class bx{constructor(t,n,r,s,i,o){this.context=t,this.schema=n,this.external=r,this.functions=s,this.entry=i,this.useUnevaluated=o}Context(){return this.context}Schema(){return this.schema}UseUnevaluated(){return this.useUnevaluated}External(){return this.external}Functions(){return this.functions}Entry(){return this.entry}Evaluate(){const t=UO(this),n=qO(this,t);return new gx(xf(),t,n)}}function kx(...e){const[t,n]=ut(e,{2:(f,u)=>[f,u],1:f=>[{},f]});bg(),tx();const r=new so(t,n),s=new gg(hg(t,n)),i=Js(r,s,n,"value"),o=nx(),d=kg();return new bx(t,n,d,o,i,s.UseUnevaluated())}function wi(...e){const[t,n,r]=ut(e,{3:(m,p,h)=>[m,p,h],2:(m,p)=>[{},m,p]}),s=Ci(),i=Lv(),o=[],d=new so(t,n),f=new rd(m=>{if(!Rs(o.length,s.maxErrors))return o.push({...m,message:i(m)})});return[At(d,f,"#","",n,r),o]}function Rd(...e){const[t,n,r]=ut(e,{3:(o,d,f)=>[o,d,f],2:(o,d)=>[{},o,d]}),s=new so(t,n),i=new Gn;return lt(s,i,n,r)}let Md=class{constructor(t,n,r){this.schema=t,this.value=n,this.errors=r}};function zO(...e){const[t,n,r]=ut(e,{3:(s,i,o)=>[s,i,o],2:(s,i)=>[{},s,i]});if(!Rd(t,n,r)){const[s,i]=wi(t,n,r);throw new Md(n,r,i)}return r}class xx{constructor(t,n){this.buildResult=kx(t,n),this.evaluateResult=this.buildResult.Evaluate()}IsAccelerated(){return this.evaluateResult.IsAccelerated()}Schema(){return this.buildResult.Schema()}Check(t){return this.evaluateResult.Check(t)}Parse(t){if(this.evaluateResult.Check(t))return t;const[n,r]=wi(this.buildResult.Context(),this.buildResult.Schema(),t);throw new Md(this.buildResult.Schema(),t,r)}Errors(t){return wi(this.buildResult.Context(),this.buildResult.Schema(),t)}}function KO(...e){const[t,n]=ut(e,{2:(r,s)=>[r,s],1:r=>[{},r]});return new xx(t,n)}const GO=Object.freeze(Object.defineProperty({__proto__:null,AccumulatedErrorContext:Vn,Build:kx,BuildAdditionalItems:vg,BuildAdditionalProperties:Tg,BuildAdditionalPropertiesFast:Cg,BuildAdditionalPropertiesStandard:Eg,BuildAllOf:Ng,BuildAnyOf:Mg,BuildConst:_g,BuildContains:Hg,BuildContext:gg,BuildDependencies:zg,BuildDependentRequired:Vg,BuildDependentSchemas:Qg,BuildEnum:Xg,BuildExclusiveMaximum:tb,BuildExclusiveMinimum:rb,BuildFormat:Rb,BuildIf:$b,BuildItems:Db,BuildMaxContains:Hb,BuildMaxItems:Gb,BuildMaxLength:Wb,BuildMaxProperties:Qb,BuildMaximum:zb,BuildMinContains:Xb,BuildMinItems:rk,BuildMinLength:ik,BuildMinProperties:ak,BuildMinimum:tk,BuildMultipleOf:lk,BuildNot:uk,BuildOneOf:fk,BuildPattern:gk,BuildPatternProperties:kk,BuildPrefixItems:wk,BuildProperties:Ik,BuildPropertyNames:Tk,BuildRecursiveRef:Nk,BuildRef:Mk,BuildRefine:xg,BuildRequired:Lk,BuildResult:bx,BuildSchema:ct,BuildSchemaBoolean:Lg,BuildSchemaPushStack:Ln,BuildType:Hk,BuildUnevaluatedItems:Kk,BuildUnevaluatedProperties:Wk,BuildUniqueItems:Yk,CanAdditionalPropertiesFast:Ig,Check:Rd,CheckAdditionalItems:Sg,CheckAdditionalProperties:Ag,CheckAllOf:Og,CheckAnyOf:$g,CheckConst:ad,CheckContains:cd,CheckContext:Gn,CheckDependencies:Kg,CheckDependentRequired:Wg,CheckDependentSchemas:Yg,CheckEnum:ld,CheckExclusiveMaximum:dd,CheckExclusiveMinimum:ud,CheckFormat:md,CheckIf:Fb,CheckItems:_b,CheckMaxContains:hd,CheckMaxItems:bd,CheckMaxLength:kd,CheckMaxProperties:xd,CheckMaximum:gd,CheckMinContains:yd,CheckMinItems:vd,CheckMinLength:Sd,CheckMinProperties:jd,CheckMinimum:wd,CheckMultipleOf:Id,CheckNot:Cd,CheckOneOf:mk,CheckPattern:Ed,CheckPatternProperties:xk,CheckPrefixItems:vk,CheckProperties:Ck,CheckPropertyNames:Ak,CheckRecursiveRef:Ok,CheckRef:$k,CheckRefine:yg,CheckRequired:Dk,CheckSchema:lt,CheckSchemaBoolean:od,CheckSchemaPushStack:Rr,CheckType:qk,CheckUnevaluatedItems:Gk,CheckUnevaluatedProperties:Jk,CheckUniqueItems:Zk,Compile:KO,CreateFunction:Js,CreateVariable:hs,ErrorAdditionalItems:jg,ErrorAdditionalProperties:Pg,ErrorAllOf:Rg,ErrorAnyOf:Fg,ErrorConst:Ug,ErrorContains:qg,ErrorContext:rd,ErrorDependencies:Gg,ErrorDependentRequired:Jg,ErrorDependentSchemas:Zg,ErrorEnum:eb,ErrorExclusiveMaximum:nb,ErrorExclusiveMinimum:sb,ErrorFormat:Mb,ErrorIf:Lb,ErrorItems:Ub,ErrorMaxContains:qb,ErrorMaxItems:Vb,ErrorMaxLength:Jb,ErrorMaxProperties:Yb,ErrorMaximum:Kb,ErrorMinContains:ek,ErrorMinItems:sk,ErrorMinLength:ok,ErrorMinProperties:ck,ErrorMinimum:nk,ErrorMultipleOf:dk,ErrorNot:pk,ErrorOneOf:hk,ErrorPattern:bk,ErrorPatternProperties:yk,ErrorPrefixItems:Sk,ErrorProperties:Ek,ErrorPropertyNames:Pk,ErrorRecursiveRef:Rk,ErrorRef:Fk,ErrorRefine:wg,ErrorRequired:_k,ErrorSchema:At,ErrorSchemaBoolean:Dg,ErrorSchemaPushStack:Mr,ErrorType:zk,ErrorUnevaluatedItems:Vk,ErrorUnevaluatedProperties:Qk,ErrorUniqueItems:Xk,Errors:wi,EvaluateResult:gx,GetExternal:kg,GetFunctions:nx,HasUnevaluated:hg,IsAdditionalItems:zi,IsAdditionalProperties:lr,IsAllOf:xa,IsAnchor:qo,IsAnyOf:ya,IsConst:wa,IsContains:ds,IsContentEncoding:BP,IsContentMediaType:HP,IsDefault:Ar,IsDefs:qP,IsDependencies:Ki,IsDependentRequired:Gi,IsDependentSchemas:Vi,IsDynamicAnchor:Yr,IsDynamicRef:va,IsElse:Sa,IsEnum:ja,IsExclusiveMaximum:Wi,IsExclusiveMinimum:Pr,IsFormat:Hs,IsId:Sr,IsIf:Ia,IsItems:Nr,IsItemsSized:Ca,IsItemsUnsized:zP,IsMaxContains:Qi,IsMaxItems:qs,IsMaxLength:Yi,IsMaxProperties:Zi,IsMaximum:Ji,IsMinContains:us,IsMinItems:ps,IsMinLength:zs,IsMinProperties:Ks,IsMinimum:Or,IsMultipleOf:Xi,IsNot:Ea,IsOneOf:Ta,IsPattern:Gs,IsPatternProperties:fs,IsPrefixItems:dr,IsProperties:ms,IsPropertyNames:eo,IsRecursiveAnchor:mg,IsRecursiveAnchorTrue:Eo,IsRecursiveRef:Aa,IsRef:Pa,IsRefine:ka,IsRequired:ur,IsSchema:_e,IsSchemaBoolean:qi,IsSchemaObject:un,IsThen:Na,IsType:to,IsUnevaluatedItems:Vs,IsUnevaluatedProperties:Ws,IsUniqueItems:jr,Parse:zO,ParseError:Md,Pointer:lx,Reducer:no,ResetExternal:bg,ResetFunctions:tx,Resolve:_O,Stack:so,Validator:xx},Symbol.toStringTag,{value:"Module"}));function ot(...e){const[t,n,r]=ut(e,{3:(s,i,o)=>[s,i,o],2:(s,i)=>[{},s,i]});return Rd(t,n,r)}function io(...e){const[t,n,r]=ut(e,{3:(o,d,f)=>[o,d,f],2:(o,d)=>[{},o,d]}),[s,i]=wi(t,n,r);return i}class Oa extends Error{constructor(t,n,r){super(t),Object.defineProperty(this,"cause",{value:{source:t,errors:r,value:n},writable:!1,configurable:!1,enumerable:!1})}}function yx(...e){const[t,n,r]=ut(e,{3:(i,o,d)=>[i,o,d],2:(i,o)=>[{},i,o]});if(!ot(t,n,r))throw new Oa("Assert",r,io(t,n,r))}function VO(e,t,n){return z(n)?n.map(r=>Nn(e,t.items,r)):n}function WO(e,t,n){return Nn({...e,...t.$defs},gn(t.$ref),n)}function JO(e,t){const n=E(t,"unevaluatedProperties")?{additionalProperties:t.unevaluatedProperties}:{},r=Bs(e,t),s=Kn(r);return Ue(s)?lg(s,n):s}function QO(e,t,n){const r=JO(e,t);return Nn(e,r,n)}function wx(e){return E(e,"additionalProperties")?e.additionalProperties:void 0}function YO(e,t,n){if(!re(n)||z(n))return n;const r=wx(t);for(const s of U(n)){if(E(t.properties,s)){n[s]=Nn(e,t.properties[s],n[s]);continue}if(xt(r)&&g(r,!0)||an(r)&&ot(e,r,n[s])){n[s]=Nn(e,r,n[s]);continue}delete n[s]}return n}function ZO(e,t,n){if(!re(n))return n;const r=wx(t),[s,i]=[new RegExp(jn(t)),Vt(t)];for(const o of U(n)){if(s.test(o)){n[o]=Nn(e,i,n[o]);continue}if(xt(r)&&g(r,!0)||an(r)&&ot(e,r,n[o])){n[o]=Nn(e,r,n[o]);continue}delete n[o]}return n}function XO(e,t,n){return E(e,t.$ref)?Nn(e,e[t.$ref],n):n}function eR(e,t,n){if(!z(n))return n;const r=Math.min(n.length,t.items.length);for(let s=0;s<r;s++)n[s]=Nn(e,t.items[s],n[s]);return ts(n.length,r)?n.slice(0,r):n}function zt(e){return cl(e)}function tR(e,t,n){for(const r of t.anyOf){const s=Nn(e,r,zt(n));if(ot(e,r,s))return s}return n}function Nn(e,t,n){return gt(t)?VO(e,t,n):Gt(t)?WO(e,t,n):Be(t)?QO(e,t,n):Ue(t)?YO(e,t,n):Ot(t)?ZO(e,t,n):vt(t)?XO(e,t,n):at(t)?eR(e,t,n):fe(t)?tR(e,t,n):n}function nR(e,t){for(const n of Mo.Keys(e))Mo.HasPropertyKey(t,n)||(t[n]=e[n]);return t}function rR(e){const t={};for(const n of Mo.Keys(e))t[n]=vi(e[n]);return t}function sR(e){return Nc(_P(e))}function Nc(e){return e.map(t=>vi(t))}function vi(e){const t=gt(e)?Ir(vi(e.items),ul(e)):Be(e)?Bn(Nc(e.allOf)):fe(e)?Je(sR(e.anyOf)):Ue(e)?$e(rR(e.properties)):Ot(e)?yl(da(e),vi(Vt(e))):at(e)?Sn(Nc(e.items)):e;return nR(e,t)}function $d(e){return vi(e)}function oo(...e){const[t,n,r]=ut(e,{3:(i,o,d)=>[i,o,d],2:(i,o)=>[{},i,o]}),s=$d(n);return Nn(t,s,r)}function mn(e){return re(e)&&E(e,"value")}function ne(e){return{value:e}}function iR(e){return z(e)?ne(e):ne([e])}function oR(e){return g(e,!0)?ne(BigInt(1)):ne(BigInt(0))}const aR=/^-?(0|[1-9]\d*)n$/,cR=/^-?(0|[1-9]\d*)\.\d+$/,lR=/^-?(0|[1-9]\d*)$/;function dR(e){return aR.test(e)}function uR(e){return cR.test(e)}function pR(e){return lR.test(e)}function fR(e){const t=e.toLowerCase();return dR(e)?ne(BigInt(e.slice(0,e.length-1))):uR(e)?ne(BigInt(e.split(".")[0])):pR(e)?ne(BigInt(e)):g(t,"false")?ne(BigInt(0)):g(t,"true")?ne(BigInt(1)):void 0}function Fd(e){return st(e)?ne(e):xt(e)?oR(e):Ie(e)?ne(BigInt(Math.trunc(e))):Xt(e)?ne(BigInt(0)):pe(e)?fR(e):Fe(e)?ne(BigInt(0)):void 0}function mR(e){return g(e,BigInt(0))?ne(!1):g(e,BigInt(1))?ne(!0):void 0}function hR(e){return g(e,0)?ne(!1):g(e,1)?ne(!0):void 0}function gR(e){return g(e.toLowerCase(),"false")?ne(!1):g(e.toLowerCase(),"true")?ne(!0):g(e,"0")?ne(!1):g(e,"1")?ne(!0):void 0}function vx(e){return st(e)?mR(e):xt(e)?ne(e):Ie(e)?hR(e):Xt(e)?ne(!1):pe(e)?gR(e):Fe(e)?ne(!1):void 0}function bR(e){return g(e,BigInt(0))?ne(null):void 0}function kR(e){return g(e,!1)?ne(null):void 0}function xR(e){return g(e,0)?ne(null):void 0}function yR(e){const t=e.toLowerCase();return g(t,"undefined")||g(t,"null")||g(e,"")||g(e,"0")?ne(null):void 0}function wR(e){return st(e)?bR(e):xt(e)?kR(e):Ie(e)?xR(e):Xt(e)?ne(null):pe(e)?yR(e):Fe(e)?ne(null):void 0}const Sx=BigInt(Number.MAX_SAFE_INTEGER),jx=BigInt(Number.MIN_SAFE_INTEGER);function vR(e){return e<=Sx&&e>=jx?ne(Number(e)):void 0}function SR(e){return ne(e?1:0)}function jR(e){const t=+e;if(Ie(t))return ne(t);const n=e.toLowerCase();if(g(n,"false"))return ne(0);if(g(n,"true"))return ne(1);const r=Fd(e);return mn(r)&&r.value<=Sx&&r.value>=jx?ne(Number(r.value)):void 0}function Ld(e){return st(e)?vR(e):xt(e)?SR(e):Ie(e)?ne(e):Xt(e)?ne(0):pe(e)?jR(e):Fe(e)?ne(0):void 0}function Ix(e){return st(e)||xt(e)||Ie(e)?ne(e.toString()):Xt(e)?ne("null"):pe(e)?ne(e):Fe(e)?ne(""):void 0}function IR(e){return g(e,BigInt(0))?ne(void 0):void 0}function CR(e){return g(e,!1)?ne(void 0):void 0}function ER(e){return g(e,0)?ne(void 0):void 0}function TR(e){const t=e.toLowerCase();return g(t,"undefined")||g(t,"null")||g(e,"")||g(e,"0")?ne(void 0):void 0}function Cx(e){return st(e)?IR(e):xt(e)?CR(e):Ie(e)?ER(e):Xt(e)?ne(void 0):pe(e)?TR(e):Fe(e)?ne(e):void 0}function AR(e,t,n){return iR(n).value.map(s=>In(e,t.items,s))}function PR(e,t,n){const r=Fd(n);return mn(r)?r.value:n}function NR(e,t,n){const r=vx(n);return mn(r)?r.value:n}function OR(e,t,n){return In({...e,...t.$defs},gn(t.$ref),n)}function RR(e,t,n){return In(e,Kn(t),n)}function MR(e,t,n){const r=Ld(n);return mn(r)?Math.trunc(r.value):n}function $R(e,t,n){const r=Bs(e,t),s=Kn(r);return In(e,s,n)}function FR(e,t,n){const r=Fd(n);return mn(r)&&g(t.const,r.value)?r.value:n}function LR(e,t,n){const r=vx(n);return mn(r)&&g(t.const,r.value)?r.value:n}function DR(e,t,n){const r=Ld(n);return mn(r)&&g(t.const,r.value)?r.value:n}function _R(e,t,n){const r=Ix(n);return mn(r)&&g(t.const,r.value)?r.value:n}function UR(e,t,n){return g(t.const,n)?n:Jv(t)?FR(e,t,n):Qv(t)?LR(e,t,n):Pf(t)?DR(e,t,n):Nf(t)?_R(e,t,n):Ft()}function BR(e,t,n){const r=wR(n);return mn(r)?r.value:n}function HR(e,t,n){const r=Ld(n);return mn(r)?r.value:n}function Ex(e,t,n,r){const s=U(r);for(const[i,o]of t)for(const d of s)i.test(d)||(r[d]=In(e,n,r[d]));return r}function Dd(e,t,n){return cn(e)&&Fe(n[t])}function qR(e,t,n){const r=nl(t.properties),s=U(n);for(const[i,o]of r)for(const d of s)!i.test(d)||Dd(o,d,n)||(n[d]=In(e,o,n[d]));return E(t,"additionalProperties")&&re(t.additionalProperties)?Ex(e,r,t.additionalProperties,n):n}function zR(e,t,n){return kn(n)?qR(e,t,n):n}function KR(e,t,n){const r=nl(t.patternProperties),s=U(n);for(const[i,o]of r)for(const d of s)i.test(d)&&(n[d]=In(e,o,n[d]));return E(t,"additionalProperties")&&re(t.additionalProperties)?Ex(e,r,t.additionalProperties,n):n}function GR(e,t,n){return kn(n)?KR(e,t,n):n}function VR(e,t,n){return E(e,t.$ref)?In(e,e[t.$ref],n):n}function WR(e,t,n){const r=Ix(n);return mn(r)?r.value:n}function JR(e,t,n){return In(e,Kn(t),n)}function QR(e,t,n){if(!z(n))return n;for(let r=0;r<Math.min(t.items.length,n.length);r++)n[r]=In(e,t.items[r],n[r]);return n}function YR(e,t,n){const r=Cx(n);return mn(r)?r.value:n}function ZR(e,t,n){if(t.anyOf.some(o=>ot(e,o,n)))return n;const i=t.anyOf.map(o=>In(e,o,zt(n))).find(o=>ot(e,t,o));return Fe(i)?n:i}function XR(e,t,n){const r=Cx(n);return mn(r)?void 0:n}function In(e,t,n){return gt(t)?AR(e,t,n):is(t)?PR(e,t,n):Cr(t)?NR(e,t,n):Gt(t)?OR(e,t,n):vn(t)?RR(e,t,n):qn(t)?MR(e,t,n):Be(t)?$R(e,t,n):Qe(t)?UR(e,t,n):Ni(t)?BR(e,t,n):pn(t)?HR(e,t,n):Ue(t)?zR(e,t,n):Ot(t)?GR(e,t,n):vt(t)?VR(e,t,n):Fn(t)?WR(e,t,n):Wt(t)?JR(e,t,n):at(t)?QR(e,t,n):_s(t)?YR(e,t,n):fe(t)?ZR(e,t,n):os(t)?XR(e,t,n):n}function Ra(...e){const[t,n,r]=ut(e,{3:(s,i,o)=>[s,i,o],2:(s,i)=>[{},s,i]});return In(t,n,r)}function eM(e,t,n){if(!z(n))return n;for(let r=0;r<n.length;r++)n[r]=On(e,t.items,n[r]);return n}function tM(e,t,n){return On({...e,...t.$defs},gn(t.$ref),n)}function nM(e,t){return Fe(t)?Tn(e.default)?e.default():zt(e.default):t}function rM(e,t,n){const r=Bs(e,t),s=Kn(r);return On(e,s,n)}function sM(e,t,n){if(!re(n))return n;const r=U(t.properties);for(const s of r){const i=On(e,t.properties[s],n[s]);Fe(i)&&(cn(t.properties[s])||!E(t.properties[s],"default"))||(n[s]=i)}if(!lr(t)||xt(t.additionalProperties))return n;for(const s of U(n))r.includes(s)||(n[s]=On(e,t.additionalProperties,n[s]));return n}function iM(e,t,n){if(!re(n))return n;const[r,s]=[new RegExp(jn(t)),Vt(t)];for(const i of U(n))r.test(i)&&Ar(s)&&(n[i]=On(e,s,n[i]));if(!lr(t))return n;for(const i of U(n))r.test(i)||(n[i]=On(e,t.additionalProperties,n[i]));return n}function oM(e,t,n){return E(e,t.$ref)?On(e,e[t.$ref],n):n}function aM(e,t,n){if(!z(n))return n;const[r,s]=[t.items,Math.max(t.items.length,n.length)];for(let i=0;i<s;i++)i<r.length&&(n[i]=On(e,r[i],n[i]));return n}function cM(e,t,n){for(const r of t.anyOf){const s=On(e,r,zt(n));if(ot(e,r,s))return s}return n}function On(e,t,n){const r=Ar(t)?nM(t,n):n;return gt(t)?eM(e,t,r):Gt(t)?tM(e,t,r):Be(t)?rM(e,t,r):Ue(t)?sM(e,t,r):Ot(t)?iM(e,t,r):vt(t)?oM(e,t,r):at(t)?aM(e,t,r):fe(t)?cM(e,t,r):r}function _d(...e){const[t,n,r]=ut(e,{3:(s,i,o)=>[s,i,o],2:(s,i)=>[{},s,i]});return On(t,n,r)}function Tx(e){return(...t)=>{const[n,r,s]=ut(t,{3:(i,o,d)=>[i,o,d],2:(i,o)=>[{},i,o]});return e.reduce((i,o)=>o(n,r,i),s)}}function lM(e,t,n){return t["~codec"].decode(n)}function dM(e,t,n){return t["~codec"].encode(n)}function Et(e,t,n,r){return dn(n)?g(e,"Decode")?lM(t,n,r):dM(t,n,r):r}function uM(e,t,n,r){if(!z(r))return r;for(let s=0;s<r.length;s++)r[s]=Bt(e,t,n.items,r[s]);return Et(e,t,n,r)}function pM(e,t,n,r){const s=Et(e,t,n,r);if(!z(s))return s;for(let i=0;i<s.length;i++)s[i]=Bt(e,t,n.items,s[i]);return s}function fM(e,t,n,r){return g(e,"Decode")?uM(e,t,n,r):pM(e,t,n,r)}function mM(e,t,n,r){return r=Bt(e,{...t,...n.$defs},gn(n.$ref),r),Et(e,t,n,r)}function Ax(e){return e.reduce((t,n)=>({...t,...n}),{})}function Px(e,t){for(const n of t)if(!ns(e,n))return n;return e}function hM(e,t,n,r){if(g(n.allOf.length,0))return Et(e,t,n,r);const s=n.allOf.map(d=>Bt(e,t,d,oo(d,zt(r)))),o=s.every(d=>re(d))?Ax(s):Px(r,s);return Et(e,t,n,o)}function gM(e,t,n,r){if(g(n.allOf.length,0))return Et(e,t,n,r);const s=Et(e,t,n,r),i=n.allOf.map(d=>Bt(e,t,d,oo(d,zt(s))));return i.every(d=>re(d))?Ax(i):Px(s,i)}function bM(e,t,n,r){return g(e,"Decode")?hM(e,t,n,r):gM(e,t,n,r)}function kM(e,t,n,r){if(!kn(r))return r;for(const s of U(n.properties))!E(r,s)||Dd(n.properties[s],s,r)||(r[s]=Bt(e,t,n.properties[s],r[s]));return Et(e,t,n,r)}function xM(e,t,n,r){const s=Et(e,t,n,r);if(!kn(s))return s;for(const i of U(n.properties))!E(s,i)||Dd(n.properties[i],i,s)||(s[i]=Bt(e,t,n.properties[i],s[i]));return s}function yM(e,t,n,r){return g(e,"Decode")?kM(e,t,n,r):xM(e,t,n,r)}function wM(e,t,n,r){if(!kn(r))return r;const s=new RegExp(jn(n));for(const i of U(r))s.test(i)&&(r[i]=Bt(e,t,Vt(n),r[i]));return Et(e,t,n,r)}function vM(e,t,n,r){const s=Et(e,t,n,r);if(!kn(s))return s;const i=new RegExp(jn(n));for(const o of U(s))i.test(o)&&(s[o]=Bt(e,t,Vt(n),s[o]));return s}function SM(e,t,n,r){return g(e,"Decode")?wM(e,t,n,r):vM(e,t,n,r)}function Ku(e,t,n,r){return E(t,n.$ref)?Bt(e,t,t[n.$ref],r):r}function jM(e,t,n,r){return g(e,"Decode")?Et(e,t,n,Ku(e,t,n,r)):Ku(e,t,n,Et(e,t,n,r))}function IM(e,t,n,r){if(!z(r))return r;for(let s=0;s<Math.min(n.items.length,r.length);s++)r[s]=Bt(e,t,n.items[s],r[s]);return Et(e,t,n,r)}function CM(e,t,n,r){const s=Et(e,t,n,r);if(!z(s))return r;for(let i=0;i<Math.min(n.items.length,s.length);i++)s[i]=Bt(e,t,n.items[i],s[i]);return s}function EM(e,t,n,r){return g(e,"Decode")?IM(e,t,n,r):CM(e,t,n,r)}function TM(e,t,n,r){for(const s of n.anyOf){if(!ot(t,s,r))continue;const i=Bt(e,t,s,r);return Et(e,t,n,i)}return r}function AM(e,t,n,r){const s=Et(e,t,n,r);for(const i of n.anyOf){const o=Bt(e,t,i,zt(s));if(ot(t,i,o))return o}return s}function PM(e,t,n,r){return g(e,"Decode")?TM(e,t,n,r):AM(e,t,n,r)}function Bt(e,t,n,r){return gt(n)?fM(e,t,n,r):Gt(n)?mM(e,t,n,r):Be(n)?bM(e,t,n,r):Ue(n)?yM(e,t,n,r):Ot(n)?SM(e,t,n,r):vt(n)?jM(e,t,n,r):at(n)?EM(e,t,n,r):fe(n)?PM(e,t,n,r):Et(e,t,n,r)}class NM extends Oa{constructor(t,n){super("Decode",t,n)}}function OM(e,t,n){if(!ot(e,t,n))throw new NM(n,io(e,t,n));return n}function RM(e,t,n){const r=$d(t);return Bt("Decode",e,r,n)}const MM=Tx([(e,t,n)=>zt(n),(e,t,n)=>_d(e,t,n),(e,t,n)=>Ra(e,t,n),(e,t,n)=>oo(e,t,n),(e,t,n)=>OM(e,t,n),(e,t,n)=>RM(e,t,n)]);function $M(...e){const[t,n,r]=ut(e,{3:(s,i,o)=>[s,i,o],2:(s,i)=>[{},s,i]});return MM(t,n,r)}class FM extends Oa{constructor(t,n){super("Encode",t,n)}}function LM(e,t,n){if(!ot(e,t,n))throw new FM(n,io(e,t,n));return n}function DM(e,t,n){const r=$d(t);return Bt("Encode",e,r,n)}const _M=Tx([(e,t,n)=>zt(n),(e,t,n)=>DM(e,t,n),(e,t,n)=>_d(e,t,n),(e,t,n)=>Ra(e,t,n),(e,t,n)=>oo(e,t,n),(e,t,n)=>LM(e,t,n)]);function UM(...e){const[t,n,r]=ut(e,{3:(s,i,o)=>[s,i,o],2:(s,i)=>[{},s,i]});return _M(t,n,r)}function BM(e,t){return dn(t)||$r(e,t.items)}function HM(e,t){return dn(t)||Nx({...e,...t.$defs},gn(t.$ref))}function qM(e,t){return dn(t)||t.allOf.some(n=>$r(e,n))}function zM(e,t){return dn(t)||U(t.properties).some(n=>$r(e,t.properties[n]))}function KM(e,t){return dn(t)||$r(e,Vt(t))}function Nx(e,t){return Oc.has(t.$ref)?!1:(Oc.add(t.$ref),dn(t)||E(e,t.$ref)&&$r(e,e[t.$ref]))}function GM(e,t){return dn(t)||t.items.some(n=>$r(e,n))}function VM(e,t){return dn(t)||t.anyOf.some(n=>$r(e,n))}function $r(e,t){return gt(t)?BM(e,t):Gt(t)?HM(e,t):Be(t)?qM(e,t):Ue(t)?zM(e,t):Ot(t)?KM(e,t):vt(t)?Nx(e,t):at(t)?GM(e,t):fe(t)?VM(e,t):dn(t)}const Oc=new Set;function WM(...e){const[t,n]=ut(e,{2:(r,s)=>[r,s],1:r=>[{},r]});return Oc.clear(),$r(t,n)}class ao extends Error{constructor(t,n){super(n),this.type=t}}function JM(e,t){return Tn(t.default)?t.default(t):re(t.default)?zt(t.default):t.default}function QM(e,t){if(jr(t)&&!Ar(t))throw new ao(t,"Arrays with uniqueItems constraints must specify a default annotation");const n=ps(t)?t.minItems:0;return Array.from({length:n},()=>Cn(e,t.items))}function YM(e,t){return Pr(t)?BigInt(t.exclusiveMinimum)+BigInt(1):Or(t)?BigInt(t.minimum):BigInt(0)}function ZM(e,t){return!1}function XM(e,t){const n=Cn(e,t.instanceType);return class{constructor(){Object.assign(this,n)}}}function e$(e,t){return Cn({...e,...t.$defs},gn(t.$ref))}function t$(e,t){return Cn(e,Kn(t))}function n$(e,t){const n=Cn(e,t.returnType);return()=>n}function r$(e,t){return Pr(t)&&Ie(t.exclusiveMinimum)?t.exclusiveMinimum+1:Or(t)?t.minimum:0}function s$(e,t){const n=Bs(e,t),r=Kn(n);return Cn(e,r)}function i$(e,t){return t.const}function o$(e,t){throw new ao(t,"Cannot create TNever types")}function a$(e,t){return null}function c$(e,t){return Pr(t)&&Ie(t.exclusiveMinimum)?t.exclusiveMinimum+1:Or(t)?t.minimum:0}function l$(e,t){return(Fe(t.required)?[]:t.required).reduce((r,s)=>({...r,[s]:Cn(e,t.properties[s])}),{})}function d$(e,t){if(Ks(t)&&!Ar(t))throw new ao(t,"Record with the minProperties constraint must have a default annotation");return{}}function u$(e,t){return E(e,t.$ref)?Cn(e,e[t.$ref]):(()=>{throw new ao(t,"Unable to deref Ref")})()}function p$(e,t){if((Gs(t)||Hs(t))&&!Ar(t))throw Error("Strings with format or pattern constraints must specify default");const r=zs(t)?t.minLength:0;return"".padEnd(r)}function f$(e,t){return Symbol()}function m$(e,t){const n=xl(t.pattern);if(Fn(n))throw new ao(t,"Unable to create TemplateLiteral due to infinite type expansion");return Cn(e,n)}function h$(e,t){return Array.from({length:t.minItems},(n,r)=>Cn(e,t.items[r]))}function g$(e,t){if(g(t.anyOf.length,0))throw Error("Unable to create Union with no variants");return Cn(e,t.anyOf[0])}function Cn(e,t){return Ar(t)?JM(e,t):gt(t)?QM(e,t):is(t)?YM(e,t):Cr(t)?ZM():xn(t)?XM(e,t):Gt(t)?e$(e,t):vn(t)?t$(e,t):yn(t)?n$(e,t):qn(t)?r$(e,t):Be(t)?s$(e,t):Qe(t)?i$(e,t):Fs(t)?o$(e,t):Ni(t)?a$():pn(t)?c$(e,t):Ue(t)?l$(e,t):Ot(t)?d$(e,t):vt(t)?u$(e,t):Fn(t)?p$(e,t):Oi(t)?f$():Wt(t)?m$(e,t):at(t)?h$(e,t):_s(t)?void 0:fe(t)?g$(e,t):os(t)?void 0:void 0}function Rn(...e){const[t,n]=ut(e,{2:(r,s)=>[r,s],1:r=>[{},r]});return Cn(t,n)}function Ox(e,t){return ns(e,t)}function Rx(e){return ia(e)}class b$ extends Oa{constructor(t,n){super("Parse",t,n)}}function k$(...e){const[t,n,r]=ut(e,{3:(i,o,d)=>[i,o,d],2:(i,o)=>[{},i,o]});if(ot(t,n,r))return r;throw new b$(r,io(t,n,r))}function Ma(e,t){return{type:"update",path:e,value:t}}function Mx(e,t){return{type:"insert",path:e,value:t}}function $x(e){return{type:"delete",path:e}}function Gu(e){if(!(re(e)&&g(rl(e).length,0)))throw new Error("Cannot create diffs for objects with symbols keys")}function*x$(e,t,n){if(!re(n)||z(n))return yield Ma(e,n);Gu(t),Gu(n);const r=U(t),s=U(n);for(const i of s)E(t,i)||er(i)||(yield Mx(`${e}/${i}`,n[i]));for(const i of r)E(n,i)&&(er(i)||Ox(t,n)||(yield*$a(`${e}/${i}`,t[i],n[i])));for(const i of r)E(n,i)||er(i)||(yield $x(`${e}/${i}`))}function*y$(e,t,n){if(!z(n))return yield Ma(e,n);for(let r=0;r<Math.min(t.length,n.length);r++)yield*$a(`${e}/${r}`,t[r],n[r]);for(let r=0;r<n.length;r++)r<t.length||(yield Mx(`${e}/${r}`,n[r]));for(let r=t.length-1;r>=0;r--)r<n.length||(yield $x(`${e}/${r}`))}function*w$(e,t,n){const r=globalThis.Object.getPrototypeOf(t).constructor.name,s=globalThis.Object.getPrototypeOf(n).constructor.name;if(Ii(n)&&g(t.length,n.length)&&g(r,s))for(let o=0;o<Math.min(t.length,n.length);o++)yield*$a(`${e}/${o}`,t[o],n[o]);else return yield Ma(e,n)}function*v$(e,t,n){t!==n&&(yield Ma(e,n))}function*$a(e,t,n){return Ii(t)?yield*w$(e,t,n):z(t)?yield*y$(e,t,n):re(t)?yield*x$(e,t,n):yield*v$(e,t,n)}function S$(e,t){return[...$a("",e,t)]}const j$=$e({type:De("insert"),path:zn(),value:Kt()}),I$=Object({type:De("update"),path:zn(),value:Kt()}),C$=$e({type:De("delete"),path:zn()});Je([j$,I$,C$]);function E$(e){return e.length>0&&e[0].path===""&&e[0].type==="update"}function T$(e){return e.length===0}function A$(e,t){if(E$(t))return zt(t[0].value);if(T$(t))return zt(e);const n=zt(e);for(const r of t)switch(r.type){case"insert":{Pc(n,r.path,r.value);break}case"update":{Pc(n,r.path,r.value);break}case"delete":{cx(n,r.path);break}}return n}class Fa extends Error{constructor(t,n,r,s){super(s),this.context=t,this.type=n,this.value=r}}function P$(e){const[t,n]=[new Set,[]];for(const r of e){const s=Rx(r);t.has(s)||(t.add(s),n.push(r))}return n}function N$(e,t,n){if(ot(e,t,n))return n;const r=z(n)?n:Rn(e,t),s=ps(t)&&r.length<t.minItems?[...r,...Array.from({length:t.minItems-r.length},()=>Rn(e,t))]:r,o=(qs(t)&&s.length>t.maxItems?s.slice(0,t.maxItems):s).map(f=>bn(e,t.items,f));if(!jr(t)||jr(t)&&!g(t.uniqueItems,!0))return o;const d=P$(o);if(!ot(e,t,d))throw new Fa(e,t,n,"Failed to repair Array due to uniqueItems constraint");return d}function O$(e,t,n){return bn(e,Kn(t),n)}function R$(e,t,n){const r=Bs(e,t),s=Kn(r);return bn(e,s,n)}function M$(e,t,n){if(ot(e,t,n))return n;if(!kn(n))return Rn(e,t);const r=new Set(Fe(t.required)?[]:t.required),s={};for(const[o,d]of it(t.properties))!r.has(o)&&Fe(n[o])||(s[o]=o in n?bn(e,d,n[o]):Rn(e,d));const i=U(t.properties);if(lr(t)&&re(t.additionalProperties))for(const o of U(n))i.includes(o)||(s[o]=bn(e,t.additionalProperties,n[o]));return s}function $$(e,t,n){if(ot(e,t,n))return n;if(Xt(n)||!re(n)||z(n))return Rn(e,t);const r=new RegExp(jn(t)),s=Vt(t),i=new Set,o={};for(const[d,f]of it(n))r.test(d)&&(o[d]=bn(e,s,f),i.add(d));if(lr(t))for(const d of U(n))i.has(d)||(o[d]=bn(e,t.additionalProperties,n[d]));return o}function F$(e,t,n){return E(e,t.$ref)?bn(e,e[t.$ref],n):(()=>{throw new Fa(e,t,n,"Unable to de-reference target type")})()}function L$(e,t,n){const r=xl(t.pattern);return bn(e,r,n)}function D$(e,t,n){return ot(e,t,n)?n:z(n)?t.items.map((r,s)=>bn(e,r,n[s])):Rn(e,t)}function Fx(e,t,n){return vt(t)?E(e,t.$ref)?Fx(e,e[t.$ref]):(()=>{throw new Error("Unable to Deref target")})():t}function _$(e,t,n){if(!(Ue(t)&&re(n)))return 0;const r=U(n);return it(t.properties).reduce((i,[o,d])=>{const f=Qe(d)&&g(d.const,n[o])?100:0,u=ot(e,d,n[o])?10:0,m=r.includes(o)?1:0;return i+(f+u+m)},0)}function U$(e,t,n){const r=t.anyOf.map(o=>Fx(e,o));let[s,i]=[r[0],0];for(const o of r){const d=_$(e,o,n);d>i&&(s=o,i=d)}return s}function B$(e,t,n){const r=Je(aa(t.anyOf)),s=U$(e,r,n);return bn(e,s,n)}function H$(e,t,n){return ot(e,t,n)?zt(n):Ar(t)?Rn(e,t):B$(e,t,n)}function q$(e,t,n){if(ot(e,t,n))return n;const r=Ra(e,t,n);return ot(e,t,r)?r:Rn(e,t)}function z$(e,t,n){if(ff(n)||hf(n)||mf(n)||Ii(n)||ta(n)||Tn(n))throw new Fa(e,t,n,"Value is not repairable")}function K$(e,t,n){if(xn(t)||yn(t)||Fs(t))throw new Fa(e,t,n,"Type is not repairable")}function G$(e,t,n){return Fe(n)&&!_s(t)?Rn(e,t):n}function V$(e,t,n){return hl(t)?ot(e,t,n)?n:Rn(e,t):n}function bn(e,t,n){z$(e,t,n),K$(e,t,n);const r=G$(e,t,n),s=gt(t)?N$(e,t,r):vn(t)?O$(e,t,r):Be(t)?R$(e,t,r):Ue(t)?M$(e,t,r):Ot(t)?$$(e,t,r):vt(t)?F$(e,t,r):Wt(t)?L$(e,t,r):at(t)?D$(e,t,r):fe(t)?H$(e,t,r):q$(e,t,r);return V$(e,t,s)}function W$(...e){const[t,n,r]=ut(e,{3:(i,o,d)=>[i,o,d],2:(i,o)=>[{},i,o]}),s=bn(t,n,r);return yx(t,n,s),s}const Ya=Object.freeze(Object.defineProperty({__proto__:null,Assert:yx,Check:ot,Clean:oo,Clone:zt,Convert:Ra,Create:Rn,Decode:$M,Default:_d,Diff:S$,Encode:UM,Equal:Ox,Errors:io,HasCodec:WM,Hash:Rx,Parse:k$,Patch:A$,Pointer:lx,Repair:W$},Symbol.toStringTag,{value:"Module"}));class Vu extends Error{constructor(t){super(t.map(n=>`${n.path.length>0?n.path.join("."):"root"}: ${n.message}`).join("; ")),this.issues=t,this.name="SchemaValidationError"}}function J$(e){return e?e.split("/").slice(1).map(t=>t.replace(/~1/g,"/").replace(/~0/g,"~")).map(t=>/^(0|[1-9]\d*)$/.test(t)?Number(t):t):[]}function Q$(e,t){let n=e;for(const r of t){if(n===null||typeof n!="object")return;n=n[r]}return n}function Wu(e,t){const[,n]=GO.Errors(e,t);return n.map(r=>{const s=J$(r.instancePath);return{code:r.keyword,path:s,message:r.message,value:Q$(t,s)}})}function Lx(e,t){const n=Ya.Default(e,Ya.Clone(t)),r=Wu(e,n);if(r.length>0)return{success:!1,error:new Vu(r)};const s=Ya.Clean(e,n),i=Wu(e,s);return i.length>0?{success:!1,error:new Vu(i)}:{success:!0,data:s}}function Qn(e,t){const n=Lx(e,t);if(!n.success)throw n.error;return n.data}function K(e){return Object.defineProperties(e,{parse:{value:t=>Qn(e,t),enumerable:!1},safeParse:{value:t=>Lx(e,t),enumerable:!1}}),e}function En(e,t){return c.Optional({...e,default:t})}function ue(e,t={}){return c.Unsafe({type:"string",enum:[...e],...t})}const zr=20,mi=5*1024*1024,Y$=1e6,Z$=16*1024;function X$(e){const t=/^\s*\/btw(?:\s+([\s\S]*))?\s*$/iu.exec(e);if(t)return{question:(t[1]??"").trim()}}const gs=K(ue(["default","autoEdit","yolo","plan"])),kr={DEFAULT:"default",AUTO_EDIT:"autoEdit",YOLO:"yolo",PLAN:"plan"},Ud=K(ue(["user","assistant","system","tool"])),eF=K(c.Union([c.Object({type:c.Literal("text"),text:c.String()}),c.Object({type:c.Literal("image_url"),image_url:c.Object({url:c.String()})})])),Dx=c.Union([c.String(),c.Array(eF)]);K(c.Object({id:c.String(),role:Ud,content:Dx,timestamp:c.Number(),metadata:c.Optional(c.Record(c.String(),c.Unknown())),thinkingContent:c.Optional(c.String()),tool_call_id:c.Optional(c.String()),name:c.Optional(c.String()),tool_calls:c.Optional(c.Unknown())}));const tF=K(ue(["queued","running","completed","failed","cancelled","interrupted"])),co=K(ue(["local","worktree"])),Bd=K(ue(["high","medium","low"])),Hd=K(ue(["feature","bug","maintenance","research"])),nF=K(ue(["applied","discarded","conflicted"])),rF=K(c.Object({status:nF,updatedAt:c.String(),sourceCommit:c.Optional(c.String()),changedFiles:c.Optional(c.Integer({minimum:0})),message:c.Optional(c.String())})),sF=K(c.Object({changedFiles:c.Integer({minimum:0}),additions:c.Integer({minimum:0}),deletions:c.Integer({minimum:0}),commits:c.Integer({minimum:0})})),iF=K(c.Object({path:c.String({minLength:1}),patch:c.String({maxLength:2*1024*1024}),additions:c.Integer({minimum:0}),deletions:c.Integer({minimum:0}),binary:c.Boolean(),truncated:c.Boolean()})),oF=K(c.Object({sessionId:c.String(),projectPath:c.String(),baseCommit:c.String(),files:c.Array(iF,{maxItems:100}),truncated:c.Boolean()})),aF=c.Union([c.String(),c.Number(),c.Boolean(),c.Array(c.String())]),cF=K(c.Object({name:c.String(),type:ue(["string","number","integer","boolean","select","multi-select"]),title:c.String(),description:c.Optional(c.String()),required:c.Boolean(),defaultValue:c.Optional(aF),options:c.Optional(c.Array(c.Object({value:c.String(),label:c.String()}))),format:c.Optional(ue(["date","uri","email","date-time"])),minimum:c.Optional(c.Number()),maximum:c.Optional(c.Number()),minLength:c.Optional(c.Number()),maxLength:c.Optional(c.Number()),minItems:c.Optional(c.Number()),maxItems:c.Optional(c.Number())}));K(c.Object({serverName:c.String(),mode:ue(["form","url"]),message:c.String(),fields:c.Optional(c.Array(cF)),requestedSchema:c.Optional(c.Record(c.String(),c.Unknown())),url:c.Optional(c.String()),domain:c.Optional(c.String()),elicitationId:c.Optional(c.String())}));const lF=K(c.Object({type:ue(["permission","question","elicitation"]),requestId:c.String()})),dF=K(c.Object({code:ue(["authentication","permission","rate_limit","timeout","network","model_unavailable","context_limit","unsupported_input","workspace_unavailable","capacity","runtime"]),message:c.String({minLength:1,maxLength:500}),retryable:c.Boolean(),resource:c.Optional(ue(["pending_count","pending_bytes","resident_runtimes"]))})),Qs=K(ue(["auto","off","minimal","low","medium","high","xhigh","max"])),Ys=K(ue(["auto","standard","fast","flex"])),Zs=K(ue(["auto","low","medium","high"])),Fr=K(c.Union([ue(["auto","pragmatic","friendly","explanatory"]),c.String({minLength:7,maxLength:300,pattern:"^(?:(?:user|project):[a-z0-9][a-z0-9._-]{0,63}(?::[a-z0-9][a-z0-9._-]{0,63}){0,3}|plugin:[a-z0-9][a-z0-9._-]{0,63}:[a-z0-9][a-z0-9._-]{0,63}(?::[a-z0-9][a-z0-9._-]{0,63}){0,3})$"})])),Un=K(c.Object({sessionId:c.String(),projectPath:c.String(),title:c.Optional(c.String()),gitBranch:c.Optional(c.String()),rootId:c.String(),parentId:c.Optional(c.String()),relationType:c.Optional(ue(["subagent","fork"])),resumedFrom:c.Optional(c.String()),rootAgentId:c.Optional(c.String()),resumeDepth:c.Optional(c.Integer({minimum:0})),taskStatus:En(tF,"completed"),taskStatusReason:c.Optional(c.String()),taskFailure:c.Optional(dF),taskStartedAt:c.Optional(c.String()),taskCompletedAt:c.Optional(c.String()),taskPromptSummary:c.Optional(c.String()),taskPriority:c.Optional(Bd),taskKind:c.Optional(Hd),taskDueAt:c.Optional(c.String()),taskModelId:c.Optional(c.String()),selectedModelId:c.Optional(c.String()),permissionMode:c.Optional(gs),reasoningEffort:c.Optional(Qs),serviceTier:c.Optional(Ys),responseVerbosity:c.Optional(Zs),communicationStyle:c.Optional(Fr),communicationStyleDigest:c.Optional(c.String({pattern:"^[a-f0-9]{64}$"})),projectInstructionsDigest:c.Optional(c.String({pattern:"^[a-f0-9]{64}$"})),taskRetryAvailable:c.Optional(c.Boolean()),taskRetriedFrom:c.Optional(c.Object({sessionId:c.String(),projectPath:c.String()})),taskDelivery:c.Optional(rF),taskIsolation:c.Optional(co),taskSourceProjectPath:c.Optional(c.String()),taskWorktreePath:c.Optional(c.String()),taskWorktreeBranch:c.Optional(c.String()),taskBaseCommit:c.Optional(c.String()),taskDiffStat:c.Optional(sF),taskQueuePosition:c.Optional(c.Integer({minimum:1})),taskQueueDepth:c.Optional(c.Integer({minimum:0})),taskConcurrencyLimit:c.Optional(c.Integer({minimum:1})),archivedAt:c.Optional(c.String()),archivedBySessionId:c.Optional(c.String()),pendingInteraction:c.Optional(lF),messageCount:c.Number(),firstMessageTime:c.String(),lastMessageTime:c.String(),hasErrors:c.Boolean()})),uF=K(c.Object({sessions:c.Array(Un),nextCursor:c.Optional(c.String())})),pF=K(c.Object({session:Un,archivedSessionIds:c.Array(c.String())})),fF=K(c.Object({session:Un,restoredSessionIds:c.Array(c.String())}));K(c.Object({version:c.Union([c.Literal(1),c.Literal(2)]),sessionId:c.String(),goalId:c.String(),objective:c.String(),status:ue(["active","verifying","paused","blocked","usage_limited","budget_limited","complete"]),tokenBudget:c.Optional(c.Number()),tokensUsed:c.Number(),timeUsedSeconds:c.Number(),continuationCount:c.Number(),statusReason:c.Optional(c.String()),completionVerification:c.Optional(c.Object({attempt:c.Integer({minimum:1}),status:ue(["pending","pass","fail","partial"]),requestedAt:c.String(),completedAt:c.Optional(c.String()),verifierSessionId:c.Optional(c.String()),summary:c.Optional(c.String()),evidenceSha256:c.Optional(c.String({pattern:"^[a-f0-9]{64}$"}))})),prematureStop:c.Optional(c.Object({pattern:c.Unsafe({type:"string"}),consecutiveCount:c.Integer({minimum:1}),detectedAt:c.String()})),verificationStall:c.Optional(c.Unsafe({type:"object"})),executionFrontier:c.Optional(c.Object({taskListId:c.String({minLength:1,maxLength:256}),total:c.Integer({minimum:0}),completed:c.Integer({minimum:0}),inProgress:c.Integer({minimum:0}),pending:c.Integer({minimum:0}),blocked:c.Integer({minimum:0}),nextTask:c.Optional(c.Object({id:c.String({minLength:1}),subject:c.String({minLength:1,maxLength:512}),priority:ue(["high","medium","low"])})),digestSha256:c.String({pattern:"^[a-f0-9]{64}$"}),observedAt:c.String()})),frontierStall:c.Optional(c.Object({category:ue(["waiting_dependency","same_task_no_effect","repeated_deferral"]),consecutiveCount:c.Integer({minimum:1,maximum:3}),digestSha256:c.String({pattern:"^[a-f0-9]{64}$"}),detectedAt:c.String()})),createdAt:c.String(),updatedAt:c.String()}));const qd=K(c.Object({role:Ud,content:Dx,metadata:c.Optional(c.Unknown()),reasoningContent:c.Optional(c.String()),thinkingContent:c.Optional(c.String()),tool_call_id:c.Optional(c.String()),name:c.Optional(c.String()),tool_calls:c.Optional(c.Unknown())})),mF=K(c.Object({session:Un,messages:c.Array(qd)})),_x=K(ue(["conversation","code","both"])),Ux=K(c.Object({messageId:c.String(),preview:c.String(),createdAt:c.String(),fileCount:c.Integer({minimum:0})}));K(c.Object({targetMessageId:c.String({minLength:1}),mode:En(_x,"conversation")}));const hF=K(c.Object({checkpoint:Ux,mode:_x,removedTurns:c.Integer({minimum:1}),restoredFiles:c.Array(c.String()),messages:c.Array(qd)})),gF=ue(["running","completed","failed","cancelled"]),Rc=K(c.Object({id:c.String(),subagentType:c.String(),description:c.String(),status:gF,background:c.Boolean(),rootAgentId:c.String(),resumedFrom:c.Optional(c.String()),resumeDepth:c.Integer({minimum:0}),createdAt:c.Number(),lastActiveAt:c.Number(),completedAt:c.Optional(c.Number()),restartRecovery:c.Optional(c.Object({outcome:ue(["completed","interrupted","failed"]),recoveredAt:c.Number()})),result:c.Optional(c.Object({success:c.Boolean(),message:c.String(),error:c.Optional(c.String()),verificationCommands:c.Optional(c.Array(c.String())),verificationVerdict:c.Optional(ue(["pass","fail","partial"])),modifiedFiles:c.Optional(c.Array(c.String()))})),stats:c.Optional(c.Object({tokens:c.Optional(c.Number()),toolCalls:c.Optional(c.Number()),duration:c.Optional(c.Number())}))}));K(c.Object({prompt:c.String({minLength:1,maxLength:32e3,pattern:"\\S"})}));const bF=K(c.Object({source:Rc,session:Rc})),Bx=K(c.Object({sessionId:c.String(),projectPath:c.String()})),Hx=K(c.Object({path:c.String(),name:c.String(),gitBranch:c.Optional(c.String()),available:c.Boolean(),isCurrent:c.Boolean(),boundAt:c.String()})),kF=K(c.Union([c.Object({cancelled:c.Literal(!0)}),c.Object({cancelled:c.Literal(!1),path:c.String({minLength:1})})])),Ju=K(c.Object({type:c.String(),seq:c.Optional(c.Number()),properties:c.Record(c.String(),c.Unknown())})),qx=c.Object({type:ue(["file","image","url"]),path:c.Optional(c.String()),url:c.Optional(c.String()),content:c.Optional(c.String({maxLength:mi})),mimeType:c.Optional(c.String()),name:c.Optional(c.String())}),zx=c.Record(c.String(),c.Unknown());K(c.Object({prompt:c.String({minLength:1,maxLength:32e3,pattern:"\\S"}),title:c.Optional(c.String({minLength:1,maxLength:200})),taskPriority:En(Bd,"medium"),taskKind:En(Hd,"feature"),taskDueAt:c.Optional(c.String({minLength:1,maxLength:64})),projectPath:c.Optional(c.String()),modelId:c.Optional(c.String({minLength:1,maxLength:500})),reasoningEffort:c.Optional(Qs),serviceTier:c.Optional(Ys),responseVerbosity:c.Optional(Zs),communicationStyle:c.Optional(Fr),isolation:En(co,"worktree"),permissionMode:En(gs,"default"),attachments:c.Optional(c.Array(qx,{maxItems:zr})),outputSchema:c.Optional(zx)}));K(c.Object({title:c.Optional(c.String({minLength:1,maxLength:200})),taskPriority:c.Optional(Bd),taskKind:c.Optional(Hd),taskDueAt:c.Optional(c.Union([c.String({minLength:1,maxLength:64}),c.Null()]))}));const Qu=K(c.Object({session:Un,runId:c.String(),messageId:c.String(),status:ue(["queued","running"]),queuePosition:c.Optional(c.Integer({minimum:1})),queueDepth:c.Optional(c.Integer({minimum:0})),maxConcurrentTasks:c.Optional(c.Integer({minimum:1}))}));K(c.Object({action:ue(["apply","discard"])}));const zd=K(c.Object({kind:ue(["cron","interval","once"]),cron:c.Optional(c.String({minLength:1,maxLength:120})),intervalMs:c.Optional(c.Integer({minimum:6e4})),runAt:c.Optional(c.String({minLength:1,maxLength:40})),timezone:c.Optional(c.String({minLength:1,maxLength:80}))})),xF=K(c.Object({modelId:c.Optional(c.String({minLength:1,maxLength:500})),reasoningEffort:c.Optional(Qs),serviceTier:c.Optional(Ys),responseVerbosity:c.Optional(Zs),communicationStyle:c.Optional(Fr),isolation:En(co,"worktree"),permissionMode:En(gs,"default")})),Cs=K(c.Object({id:c.String(),title:c.Optional(c.String({minLength:1,maxLength:200})),prompt:c.String({minLength:1,maxLength:32e3,pattern:"\\S"}),projectPath:c.String({minLength:1}),trigger:zd,dispatch:xF,enabled:c.Boolean(),createdAt:c.String(),updatedAt:c.String(),nextRunAt:c.Union([c.String(),c.Null()]),expiresAt:c.Union([c.String(),c.Null()]),lastRunAt:c.Optional(c.String()),lastRunSessionId:c.Optional(c.String()),lastStatus:c.Optional(ue(["queued","running","completed","failed","cancelled","interrupted","error"])),lastError:c.Optional(c.String()),runCount:c.Integer({minimum:0})}));K(c.Object({title:c.Optional(c.String({minLength:1,maxLength:200})),prompt:c.String({minLength:1,maxLength:32e3,pattern:"\\S"}),projectPath:c.String({minLength:1}),trigger:zd,modelId:c.Optional(c.String({minLength:1,maxLength:500})),reasoningEffort:c.Optional(Qs),serviceTier:c.Optional(Ys),responseVerbosity:c.Optional(Zs),communicationStyle:c.Optional(Fr),isolation:En(co,"worktree"),permissionMode:En(gs,"default"),enabled:En(c.Boolean(),!0)}));K(c.Object({title:c.Optional(c.String({minLength:1,maxLength:200})),prompt:c.Optional(c.String({minLength:1,maxLength:32e3,pattern:"\\S"})),trigger:c.Optional(zd),modelId:c.Optional(c.String({minLength:1,maxLength:500})),reasoningEffort:c.Optional(Qs),serviceTier:c.Optional(Ys),responseVerbosity:c.Optional(Zs),communicationStyle:c.Optional(Fr),isolation:c.Optional(co),permissionMode:c.Optional(gs),enabled:c.Optional(c.Boolean())}));const yF=K(c.Object({schedules:c.Array(Cs)}));K(c.Object({content:c.String({maxLength:Y$}),projectPath:c.Optional(c.String()),modelId:c.Optional(c.String({minLength:1,maxLength:500})),reasoningEffort:c.Optional(Qs),serviceTier:c.Optional(Ys),responseVerbosity:c.Optional(Zs),communicationStyle:c.Optional(Fr),permissionMode:c.Optional(gs),attachments:c.Optional(c.Array(qx,{maxItems:zr})),outputSchema:c.Optional(zx)}));const wF=ue(["completed","failed","aborted","timed_out","spawn_error"]),vF=K(c.Object({version:c.Literal(1),command:c.String(),status:wF,exitCode:c.Union([c.Integer(),c.Null()]),durationMs:c.Number({minimum:0}),stdout:c.String(),stderr:c.String(),stdoutOmittedBytes:c.Integer({minimum:0}),stderrOmittedBytes:c.Integer({minimum:0}),binaryOutput:c.Boolean(),truncated:c.Boolean()}));K(c.Object({command:c.String({minLength:1,maxLength:32*1024,pattern:"^(?![\\s\\S]*\\u0000)(?=[\\s\\S]*\\S)[\\s\\S]*$"}),projectPath:c.Optional(c.String())}));const SF=K(c.Object({executionId:c.String(),messageId:c.String(),record:vF,auxiliary:c.Boolean(),delivery:c.Optional(ue(["current_turn","next_turn"])),queued:c.Optional(c.Integer({minimum:0}))}));K(c.Object({question:c.String({minLength:1,maxLength:Z$,pattern:"^(?![\\s\\S]*\\x00)(?=[\\s\\S]*\\S)[\\s\\S]*$"}),projectPath:c.Optional(c.String())}));const jF=K(c.Object({response:c.String({minLength:1}),durationMs:c.Number({minimum:0}),modelId:c.Optional(c.String()),usage:c.Optional(c.Object({promptTokens:c.Number({minimum:0}),completionTokens:c.Number({minimum:0}),totalTokens:c.Number({minimum:0}),reasoningTokens:c.Optional(c.Number({minimum:0})),cacheCreationInputTokens:c.Optional(c.Number({minimum:0})),cacheReadInputTokens:c.Optional(c.Number({minimum:0})),costUsd:c.Optional(c.Number({minimum:0}))}))}));K(c.Object({projectPath:c.String(),kind:ue(["uncommitted","base","commit"]),ref:c.Optional(c.String({maxLength:200})),instructions:c.Optional(c.String({maxLength:4e3})),modelId:c.Optional(c.String({minLength:1,maxLength:200}))}));const IF=K(c.Object({reviewId:c.String(),status:c.Literal("running")}));K(c.Object({messageId:c.String(),role:Ud,content:c.String(),timestamp:c.String()}));K(c.Object({approved:c.Boolean(),remember:c.Optional(c.Boolean()),scope:c.Optional(ue(["once","session","project"])),targetMode:c.Optional(gs),feedback:c.Optional(c.String()),answers:c.Optional(c.Record(c.String(),c.Union([c.String(),c.Array(c.String())]))),elicitation:c.Optional(c.Object({action:ue(["accept","decline","cancel"]),content:c.Optional(c.Record(c.String(),c.Union([c.String({maxLength:4e3}),c.Number(),c.Boolean(),c.Array(c.String({maxLength:1e3}),{maxItems:100})]),{maxProperties:32}))}))}));const CF=K(c.Object({id:Fr,name:c.String({minLength:1,maxLength:80}),description:c.String({minLength:1,maxLength:256}),source:ue(["built-in","user","project","plugin"]),contentSha256:c.Optional(c.String({pattern:"^[a-f0-9]{64}$"}))}));K(c.Object({id:c.String(),displayName:c.Optional(c.String()),provider:c.String(),model:c.String(),contextWindow:c.Optional(c.Number()),maxTokens:c.Optional(c.Number()),reasoning:c.Optional(c.Boolean()),supportedReasoningEfforts:c.Optional(c.Array(ue(["off","minimal","low","medium","high","xhigh","max"]))),supportedServiceTiers:c.Optional(c.Array(ue(["standard","fast","flex"]))),supportedResponseVerbosities:c.Optional(c.Array(ue(["low","medium","high"]))),communicationStyles:c.Optional(c.Array(CF,{maxItems:36})),input:c.Optional(c.Array(ue(["text","image"]))),overrides:c.Optional(c.Object({baseUrl:c.Optional(c.String()),temperature:c.Optional(c.Number()),maxOutputTokens:c.Optional(c.Number()),timeout:c.Optional(c.Number()),streamIdleTimeout:c.Optional(c.Number({minimum:1e3}))}))}));K(ue(["vs-dark","vs-light","hc-black"]));const EF=K(ue(["light","dark","system"])),TF=K(c.Object({language:c.String(),codeTheme:c.String(),uiTheme:EF,autoSaveSessions:c.Boolean(),notifyBuild:c.Boolean(),notifyErrors:c.Boolean(),notifySounds:c.Boolean(),privacyTelemetry:c.Boolean(),privacyCrash:c.Boolean(),agentTeamsEnabled:c.Boolean(),communicationStyle:c.Optional(Fr)}));K(c.Partial(TF));class Kd extends Error{constructor(t,n,r){super(t),this.status=n,this.code=r,this.name="HttpResponseError"}}function Yu(e){return e instanceof Kd}async function Dn(e,t){const n=await fetch(e,t),r=await n.json().catch(()=>{});if(!n.ok){const s=r,i=s!=null&&s.error&&typeof s.error=="object"&&!Array.isArray(s.error)?s.error:void 0,o=typeof(s==null?void 0:s.error)=="string"?s.error:typeof(i==null?void 0:i.message)=="string"?i.message:typeof(s==null?void 0:s.message)=="string"?s.message:n.statusText||`Request failed (${n.status})`;throw new Kd(o,n.status,typeof(i==null?void 0:i.code)=="string"?i.code:typeof(s==null?void 0:s.code)=="string"?s.code:void 0)}return r}const ie="",Zu=1e4,AF=c.Array(Un),PF=c.Array(Hx),NF=c.Array(qd),OF=c.Array(Ux),RF=c.Array(Rc),Xu=c.Object({cwd:c.String(),gitBranch:c.Optional(c.String()),taskAdmission:c.Optional(c.Object({inFlight:c.Integer({minimum:0}),queued:c.Integer({minimum:0}),maxConcurrent:c.Integer({minimum:1}),maxQueued:c.Integer({minimum:1}),paused:c.Optional(c.Boolean())}))}),MF=e=>Array.isArray(e)?e:e==null?"":typeof e=="string"?e:JSON.stringify(e),$F=()=>{const e=new Date,t=String(e.getFullYear()).slice(-2),n=String(e.getMonth()+1).padStart(2,"0"),r=String(e.getDate()).padStart(2,"0"),s=String(e.getHours()).padStart(2,"0"),i=String(e.getMinutes()).padStart(2,"0");return`Session ${t}-${n}-${r} ${s}:${i}`};function FF(e){const t=Bx.parse(e);return`projectPath=${encodeURIComponent(t.projectPath)}`}function ft(e,t){const n=FF(t);return`${e}${e.includes("?")?"&":"?"}${n}`}function ep(e){return{"x-blade-directory":Bx.parse(e).projectPath}}const Za=(e,t,n)=>({id:`history-${t}-${n}`,role:e.role,content:MF(e.content),timestamp:n,metadata:e.metadata&&typeof e.metadata=="object"?e.metadata:void 0,tool_call_id:e.tool_call_id,name:e.name,tool_calls:e.tool_calls,thinkingContent:e.thinkingContent??e.reasoningContent}),X={listProjects:async()=>{const e=await fetch(`${ie}/projects`);if(!e.ok)throw new Error("Failed to load projects");return Qn(PF,await e.json())},bindProject:async e=>{var n;const t=await fetch(`${ie}/projects`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:e})});if(!t.ok){const r=await t.json().catch(()=>{});throw new Error(((n=r==null?void 0:r.error)==null?void 0:n.message)||"Failed to bind project")}return Hx.parse(await t.json())},pickProjectDirectory:async()=>Qn(kF,await Dn(`${ie}/projects/pick`,{method:"POST"})),unbindProject:async e=>{if(!(await fetch(`${ie}/projects?path=${encodeURIComponent(e)}`,{method:"DELETE"})).ok)throw new Error("Failed to unbind project")},listSessions:async()=>{const e=await fetch(`${ie}/sessions`);if(!e.ok)throw new Error("Failed to load sessions");return Qn(AF,await e.json())},listSessionPage:async(e,t=50,n=!1)=>{const r=new URLSearchParams({limit:String(t)});e&&r.set("cursor",e),n&&r.set("archived","true");const s=await fetch(`${ie}/sessions/catalog?${r.toString()}`);if(!s.ok)throw new Error("Failed to load session catalog");return uF.parse(await s.json())},getSession:async e=>Un.parse(await Dn(ft(`${ie}/sessions/${e.sessionId}`,e))),createSession:async(e,t)=>{const n=await fetch(`${ie}/sessions`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({projectPath:e,title:t||$F()})});if(!n.ok)throw new Error("Failed to create session");return Un.parse(await n.json())},startCodeReview:async(e,t)=>{var r,s;const n=await fetch(`${ie}/sessions/${e.sessionId}/review`,{method:"POST",headers:{"Content-Type":"application/json",...ep(e)},body:JSON.stringify({projectPath:e.projectPath,...t})});if(!n.ok){const i=await n.json().catch(()=>{}),o=((r=i==null?void 0:i.error)==null?void 0:r.code)==="CONFLICT"?Ke("taskHome.review.conflict"):((s=i==null?void 0:i.error)==null?void 0:s.code)==="BAD_REQUEST"?Ke("taskHome.review.invalidTarget"):Ke("taskHome.review.startFailed");throw new Error(o)}return IF.parse(await n.json())},getWorkspaceInfo:async()=>Qn(Xu,await Dn(`${ie}/global/info`)),createTask:async e=>{var n;const t=await fetch(`${ie}/tasks`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)});if(!t.ok){const r=await t.json().catch(()=>{});throw new Error(((n=r==null?void 0:r.error)==null?void 0:n.message)||"Failed to dispatch task")}return Qu.parse(await t.json())},updateTask:async(e,t)=>{var r;const n=await fetch(ft(`${ie}/tasks/${e.sessionId}`,e),{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)});if(!n.ok){const s=await n.json().catch(()=>{});throw new Error(((r=s==null?void 0:s.error)==null?void 0:r.message)||"Failed to update task")}return Un.parse(await n.json())},setTaskAdmissionPaused:async e=>Qn(Xu.properties.taskAdmission,await Dn(`${ie}/global/task-admission`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({paused:e})})),retryTask:async e=>{var n;const t=await fetch(ft(`${ie}/tasks/${e.sessionId}/retry`,e),{method:"POST"});if(!t.ok){const r=await t.json().catch(()=>{});throw new Error(((n=r==null?void 0:r.error)==null?void 0:n.message)||"Failed to retry task")}return Qu.parse(await t.json())},deliverTask:async(e,t)=>{var r;const n=await fetch(ft(`${ie}/tasks/${e.sessionId}/delivery`,e),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:t})});if(!n.ok){const s=await n.json().catch(()=>{});throw new Error(((r=s==null?void 0:s.error)==null?void 0:r.message)||"Failed to deliver task changes")}return Un.parse(await n.json())},getTaskDiff:async e=>{var n;const t=await fetch(ft(`${ie}/tasks/${e.sessionId}/diff`,e));if(!t.ok){const r=await t.json().catch(()=>{});throw new Error(((n=r==null?void 0:r.error)==null?void 0:n.message)||"Failed to load task diff")}return oF.parse(await t.json())},deleteSession:async e=>{if(!(await fetch(ft(`${ie}/sessions/${e.sessionId}`,e),{method:"DELETE"})).ok)throw new Error("Failed to delete session")},archiveSession:async e=>pF.parse(await Dn(ft(`${ie}/sessions/${e.sessionId}/archive`,e),{method:"POST"})),unarchiveSession:async e=>fF.parse(await Dn(ft(`${ie}/sessions/${e.sessionId}/unarchive`,e),{method:"POST"})),exportSessionMarkdown:async(e,t=!1)=>{var u,m;const n=ft(`${ie}/sessions/${e.sessionId}/export`,e),r=t?`${n}&includeReasoning=true`:n,s=await fetch(r);if(!s.ok){const p=await s.json().catch(()=>{});throw new Error(((u=p==null?void 0:p.error)==null?void 0:u.message)||"Failed to export session")}const i=s.headers.get("content-disposition")??"",o=((m=/filename="([A-Za-z0-9._-]+)"/.exec(i))==null?void 0:m[1])??`blade-session-${e.sessionId.slice(0,12)}.md`,d=s.headers.get("x-blade-content-sha256")??"";if(!/^[a-f0-9]{64}$/.test(d))throw new Error("Session export is missing its integrity hash");const f=p=>{const h=s.headers.get(p);if(h===null)throw new Error(`Session export is missing its ${p} header`);const b=Number(h);if(!Number.isInteger(b)||b<0)throw new Error(`Session export has an invalid ${p} header`);return b};return{filename:o,markdown:await s.text(),contentSha256:d,messageCount:f("x-blade-export-messages"),activityCount:f("x-blade-export-activities"),redactionCount:f("x-blade-export-redactions")}},updateSession:async(e,t)=>{if(!(await fetch(`${ie}/sessions/${e.sessionId}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({title:t,projectPath:e.projectPath})})).ok)throw new Error("Failed to update session")},getMessages:async e=>{const t=await fetch(ft(`${ie}/sessions/${e.sessionId}/message`,e));if(!t.ok)throw new Error("Failed to load messages");const n=Qn(NF,await t.json()),r=Date.now();return n.map((s,i)=>Za(s,i,r))},sendMessage:async(e,t,n)=>{var s,i;const r=await fetch(`${ie}/sessions/${e.sessionId}/message`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({...t,permissionMode:n,projectPath:e.projectPath})});if(!r.ok){const o=await r.json().catch(()=>{}),d=((s=o==null?void 0:o.error)==null?void 0:s.message)??(o==null?void 0:o.reason);throw new Kd(d||"Failed to send message",r.status,(i=o==null?void 0:o.error)==null?void 0:i.code)}return r.json()},askSideQuestion:async(e,t,n)=>jF.parse(await Dn(`${ie}/sessions/${e.sessionId}/side-question`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({question:t,projectPath:e.projectPath}),signal:n})),executeUserShellCommand:async(e,t)=>SF.parse(await Dn(`${ie}/sessions/${e.sessionId}/shell`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({command:t,projectPath:e.projectPath})})),abortSession:async e=>{var n;const t=await fetch(ft(`${ie}/sessions/${e.sessionId}/abort`,e),{method:"POST"});if(!t.ok){const r=await t.json().catch(()=>{});throw new Error(((n=r==null?void 0:r.error)==null?void 0:n.message)||"Failed to stop task")}},getGoal:async e=>{const t=await fetch(ft(`${ie}/sessions/${e.sessionId}/goal`,e));if(!t.ok)throw new Error("Failed to load goal");return(await t.json()).goal},createGoal:async(e,t,n,r)=>{const s=await fetch(ft(`${ie}/sessions/${e.sessionId}/goal`,e),{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({objective:t,tokenBudget:n,permissionMode:r})});if(!s.ok)throw new Error("Failed to create goal");return s.json()},updateGoal:async(e,t)=>{const n=await fetch(ft(`${ie}/sessions/${e.sessionId}/goal`,e),{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)});if(!n.ok)throw new Error("Failed to update goal");return n.json()},clearGoal:async e=>{if(!(await fetch(ft(`${ie}/sessions/${e.sessionId}/goal`,e),{method:"DELETE"})).ok)throw new Error("Failed to clear goal")},listRewindCheckpoints:async e=>{const t=await fetch(ft(`${ie}/sessions/${e.sessionId}/rewind`,e));if(!t.ok)throw new Error("Failed to load rewind checkpoints");const n=await t.json();return Qn(OF,n.checkpoints)},rewindSession:async(e,t,n)=>{const r=await fetch(ft(`${ie}/sessions/${e.sessionId}/rewind`,e),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({targetMessageId:t,mode:n})});if(!r.ok)throw new Error("Failed to rewind session");const s=hF.parse(await r.json()),i=Date.now();return{...s,messages:s.messages.map((o,d)=>Za(o,d,i))}},listSubagents:async e=>{const t=await fetch(ft(`${ie}/sessions/${e.sessionId}/subagents`,e));if(!t.ok)throw new Error("Failed to load subagents");const n=await t.json();return Qn(RF,n.subagents)},resumeSubagent:async(e,t,n)=>{const r=await fetch(ft(`${ie}/sessions/${e.sessionId}/subagents/${encodeURIComponent(t)}/resume`,e),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({prompt:n})});if(!r.ok){const s=await r.json().catch(()=>{});throw new Error((s==null?void 0:s.message)||"Failed to resume subagent")}return bF.parse(await r.json())},forkSession:async e=>{const t=await fetch(`${ie}/sessions/${e.sessionId}/fork`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({projectPath:e.projectPath})});if(!t.ok)throw new Error("Failed to fork session");const n=mF.parse(await t.json()),r=Date.now();return{session:n.session,messages:n.messages.map((s,i)=>Za(s,i,r))}},openEventSubscription:async(e,t,n)=>{const r=(n==null?void 0:n.maxRetries)??5,s=n==null?void 0:n.onConnectionChange,i=n==null?void 0:n.onConnectionStateChange;let o=null,d=0,f=null,u=Date.now(),m=null,p=null,h=!1,b=!1,k=0,S,C,x=!1;const N=new Promise((O,Q)=>{S=O,C=Q}),P=()=>{m&&(clearInterval(m),m=null)},F=()=>{p&&(clearTimeout(p),p=null)},D=()=>{o==null||o.close(),o=null},j=()=>{f&&(clearTimeout(f),f=null),P(),F(),D()},I=()=>{x||(x=!0,F(),S())},T=O=>{x||(x=!0,j(),C(O))},M=()=>{if(h||d>=r){d>=r&&(console.error(`SSE max retries (${r}) reached, giving up`),i==null||i("offline"));return}d++,i==null||i("reconnecting");const O=Math.min(1e3*Math.pow(2,d-1),3e4);console.log(`SSE reconnecting in ${O}ms (attempt ${d}/${r})`),f=setTimeout(()=>{te().catch(Q=>{console.error("SSE reconnect failed",Q),s==null||s(!1),M()})},O)},$=()=>{d=0,u=Date.now(),s==null||s(!0),i==null||i("connected"),P(),m=setInterval(()=>{Date.now()-u>45e3&&(console.warn("SSE heartbeat timeout, reconnecting..."),P(),D(),s==null||s(!1),i==null||i("reconnecting"),M())},15e3),b||(b=!0,I())},te=async()=>{if(h)return;D();const O=ft(`${ie}/sessions/${e.sessionId}/events`,e),Q=k>0?`${O}${O.includes("?")?"&":"?"}lastEventId=${k}`:O;o=new EventSource(Q),b||(F(),p=setTimeout(()=>{i==null||i("offline"),T(new Error("Timed out waiting for event subscription readiness"))},Zu)),o.onmessage=ae=>{try{const le=JSON.parse(ae.data);typeof le.seq=="number"&&le.seq>k&&(k=le.seq);const de=Ju.parse(le);if(u=Date.now(),de.type==="connected"){de.properties.sessionId===e.sessionId&&de.properties.projectPath===e.projectPath&&(typeof de.properties.status=="string"&&t({type:"session.status",properties:de.properties}),$());return}if(de.type==="heartbeat")return;t(de)}catch(le){console.error("Failed to parse SSE event:",ae.data,le)}},o.onerror=()=>{if(h)return;const ae=(o==null?void 0:o.readyState)===EventSource.CLOSED;if(P(),D(),ae){s==null||s(!1),i==null||i("offline"),b||T(new Error("Event subscription closed before it was ready"));return}if(!b){i==null||i("offline"),T(new Error("Failed to open event subscription"));return}s==null||s(!1),M()}};return i==null||i("connecting"),te().catch(O=>{i==null||i("offline"),T(O instanceof Error?O:new Error("Failed to open event subscription"))}),await N,()=>{h=!0,f&&(clearTimeout(f),f=null),j(),s==null||s(!1)}},openTaskEventSubscription:async(e,t)=>{const n=t==null?void 0:t.onConnectionChange,r=t==null?void 0:t.onConnectionStateChange,s=new EventSource(`${ie}/events`);let i=!1,o=!1,d,f,u;const m=new Promise((h,b)=>{f=h,u=b}),p=()=>{i||(i=!0,d!==void 0&&(clearTimeout(d),d=void 0),s.close(),n==null||n(!1),r==null||r("offline"))};return r==null||r("connecting"),d=setTimeout(()=>{o||i||(p(),u(new Error("Timed out waiting for global task events")))},Zu),s.onmessage=h=>{try{const b=Ju.parse(JSON.parse(h.data));if(b.type==="connected"){o||(o=!0,d!==void 0&&(clearTimeout(d),d=void 0),f()),n==null||n(!0),r==null||r("connected");return}if(b.type==="heartbeat")return;e(b)}catch(b){console.error("Failed to parse global task event:",h.data,b)}},s.onerror=()=>{n==null||n(!1),r==null||r(o?"reconnecting":"offline"),!o&&!i&&(p(),u(new Error("Failed to open global task events")))},await m,p},respondPermission:async(e,t,n)=>{var i;const r=new URLSearchParams({sessionId:e.sessionId,projectPath:e.projectPath}),s=await fetch(`${ie}/permissions/${t}?${r.toString()}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(n)});if(!s.ok){const o=await s.json().catch(()=>{});throw new Error(((i=o==null?void 0:o.error)==null?void 0:i.message)||"Failed to respond to permission")}},respondToConfirmation:async(e,t,n)=>{if(!(await fetch(ft(`${ie}/sessions/${e.sessionId}/confirmation/${t}`,e),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({approved:n})})).ok)throw new Error("Failed to respond to confirmation")},respondToQuestion:async(e,t,n)=>{var i;const r=new URLSearchParams({sessionId:e.sessionId,projectPath:e.projectPath}),s=await fetch(`${ie}/permissions/${t}?${r}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({approved:!0,answers:n})});if(!s.ok){const o=await s.json().catch(()=>{});throw new Error(((i=o==null?void 0:o.error)==null?void 0:i.message)||"Failed to respond to question")}},respondToElicitation:async(e,t,n)=>{var i;const r=new URLSearchParams({sessionId:e.sessionId,projectPath:e.projectPath}),s=await fetch(`${ie}/permissions/${t}?${r}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({approved:n.action==="accept",elicitation:n})});if(!s.ok){const o=await s.json().catch(()=>{});throw new Error(((i=o==null?void 0:o.error)==null?void 0:i.message)||"Failed to respond to MCP elicitation")}},getGitInfo:async e=>{const t=await fetch(`${ie}/suggestions/git-info`,{headers:ep(e)});if(!t.ok)throw new Error("Failed to get git info");return t.json()},listSchedules:async()=>{var n;const e=await fetch(`${ie}/schedules`);if(!e.ok){const r=await e.json().catch(()=>{});throw new Error(((n=r==null?void 0:r.error)==null?void 0:n.message)||Ke("schedule.error.loadFailed"))}return yF.parse(await e.json()).schedules},createSchedule:async e=>{var n;const t=await fetch(`${ie}/schedules`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)});if(!t.ok){const r=await t.json().catch(()=>{});throw new Error(((n=r==null?void 0:r.error)==null?void 0:n.message)||Ke("schedule.error.createFailed"))}return Cs.parse(await t.json())},updateSchedule:async(e,t)=>{var r;const n=await fetch(`${ie}/schedules/${encodeURIComponent(e)}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)});if(!n.ok){const s=await n.json().catch(()=>{});throw new Error(((r=s==null?void 0:s.error)==null?void 0:r.message)||Ke("schedule.error.updateFailed"))}return Cs.parse(await n.json())},deleteSchedule:async e=>{var n;const t=await fetch(`${ie}/schedules/${encodeURIComponent(e)}`,{method:"DELETE"});if(!t.ok){const r=await t.json().catch(()=>{});throw new Error(((n=r==null?void 0:r.error)==null?void 0:n.message)||Ke("schedule.error.deleteFailed"))}},enableSchedule:async e=>{var n;const t=await fetch(`${ie}/schedules/${encodeURIComponent(e)}/enable`,{method:"POST"});if(!t.ok){const r=await t.json().catch(()=>{});throw new Error(((n=r==null?void 0:r.error)==null?void 0:n.message)||Ke("schedule.error.toggleFailed"))}return Cs.parse(await t.json())},disableSchedule:async e=>{var n;const t=await fetch(`${ie}/schedules/${encodeURIComponent(e)}/disable`,{method:"POST"});if(!t.ok){const r=await t.json().catch(()=>{});throw new Error(((n=r==null?void 0:r.error)==null?void 0:n.message)||Ke("schedule.error.toggleFailed"))}return Cs.parse(await t.json())},runSchedule:async e=>{var n;const t=await fetch(`${ie}/schedules/${encodeURIComponent(e)}/run`,{method:"POST"});if(!t.ok){const r=await t.json().catch(()=>{});throw new Error(((n=r==null?void 0:r.error)==null?void 0:n.message)||Ke("schedule.error.runFailed"))}return Cs.parse(await t.json())}},LF=(e,t)=>({messages:[],setMessages:n=>e({messages:n}),addMessage:n=>e(r=>({messages:[...r.messages,n]})),updateMessage:(n,r)=>e(s=>({messages:s.messages.map(i=>i.id===n?{...i,...r}:i)})),appendDelta:(n,r,s)=>e(i=>({messages:i.messages.map(o=>{if(o.id!==n)return o;const d=o.agentContent||Wn();return s==="before"?{...o,agentContent:{...du(d,r),textBefore:d.textBefore+r}}:{...o,agentContent:{...du(d,r),textAfter:d.textAfter+r}}})})),appendToolCall:(n,r)=>e(s=>({messages:s.messages.map(i=>{if(i.id!==n)return i;const o=i.agentContent||Wn();return{...i,agentContent:J0(o,r)}})})),updateToolCall:(n,r,s)=>e(i=>({messages:i.messages.map(o=>{if(o.id!==n)return o;const d=o.agentContent;return d?{...o,agentContent:{...d,toolCalls:d.toolCalls.map(f=>f.toolCallId===r?{...f,...s}:f)}}:o})})),appendThinking:(n,r)=>e(s=>({messages:s.messages.map(i=>{if(i.id!==n)return i;const o=i.agentContent||Wn();return{...i,agentContent:{...W0(o,r),thinkingContent:o.thinkingContent+r}}})})),setConfirmation:(n,r)=>e(s=>({messages:s.messages.map(i=>{if(i.id!==n)return i;const o=i.agentContent||Wn();return{...i,agentContent:{...o,confirmation:r}}})})),setQuestion:(n,r)=>e(s=>({messages:s.messages.map(i=>{if(i.id!==n)return i;const o=i.agentContent||Wn();return{...i,agentContent:{...o,question:r}}})})),setElicitation:(n,r)=>e(s=>({messages:s.messages.map(i=>{if(i.id!==n)return i;const o=i.agentContent||Wn();return{...i,agentContent:{...o,elicitation:r}}})})),setSubagent:(n,r)=>e(s=>({messages:s.messages.map(i=>{if(i.id!==n)return i;const o=i.agentContent||Wn();return{...i,agentContent:r?V0(o,r):lu(o,[])}})})),updateSubagent:(n,r,s)=>e(i=>({messages:i.messages.map(o=>{if(o.id!==n)return o;const d=o.agentContent||Wn(),f=[...G0(d)],u=f.findIndex(h=>h.id===r||h.sessionId===r);if(u===-1)return o;const m=f[u],p=typeof s=="function"?s(m):s;return f[u]={...m,...p,id:m.id},{...o,agentContent:lu(d,f,f[u].id)}})})),setTasks:(n,r)=>e(s=>({messages:s.messages.map(i=>{if(i.id!==n)return i;const o=i.agentContent||Wn();return{...i,agentContent:{...o,tasks:r}}})})),replaceTemp:(n,r)=>e(s=>{const i=s.messages.findIndex(d=>d.content===n&&d.role==="user");if(i===-1)return s;const o=[...s.messages];return o[i]=r,{messages:o}})}),Xa=60,DF=[/<system-reminder>[\s\S]*?<\/system-reminder>/gi,/<file[^>]*>[\s\S]*?<\/file>/gi,/<hooks_context>[\s\S]*?<\/hooks_context>/gi,/<[^>]+>/g];function _F(e){let t=e;for(const f of DF)t=t.replace(f," ");t=t.replace(/^\s*\/[a-zA-Z][\w-]*\s+/,"");const n=t.replace(/\s+/g," ").trim();if(!n)return"";const r=n.match(/^(.+?)(?:[.!?]\s|[。!?](?=\S|$)|$)/);let s=r&&r[1].length>=6?r[1]:n;if(s=s.trim().replace(/[\s.。!!??,,;;::-]+$/,""),s.length<=Xa)return s;const i=s.slice(0,Xa),o=i.lastIndexOf(" ");return`${(o>Xa*.6?i.slice(0,o):i).trimEnd()}…`}const Po="/.blade/worktrees/",UF=/-[a-f0-9]{8,}$/i,BF=/^(.+?(?:test|config))-[a-z0-9]{6,}$/i;function HF(e){const t=e.indexOf(Po);if(t<0)return null;const n=e.slice(t+Po.length).split("/")[0];return n?`${e.slice(0,t+Po.length)}${n}`:null}function qF(e){if(!e.includes("/tmp/")&&!e.includes("/T/"))return null;const t=e.split("/"),n=t.at(-1),r=n==null?void 0:n.match(BF);return r!=null&&r[1]?(t[t.length-1]=r[1],t.join("/")):null}function Mc(e){const t=e.split("/").filter(Boolean).at(-1)||e;return e.includes(Po)?t.replace(UF,""):t}function lo(e,t=null){const n=e.taskSourceProjectPath,r=qF(n||e.projectPath);if(r)return r;if(n)return n;const s=HF(e.projectPath);if(!s)return e.projectPath;const i=Mc(s);return t&&i===Mc(t)?t:s}function zF(e,t,n=null){return t?e.filter(r=>lo(r,n)===t):e}const $c=kr.AUTO_EDIT;let ec=0;const Mt=Qo((e,t)=>({currentModelId:null,currentMode:$c,configuredModels:[],availableModels:[],isLoading:!1,hasLoaded:!1,loadedWorkspacePath:null,error:null,loadModels:async n=>{const r=n??null;if(t().isLoading&&t().loadedWorkspacePath===r)return;const s=++ec;e({isLoading:!0,hasLoaded:!1,loadedWorkspacePath:r,error:null});try{const i=await Dn("/models",n?{headers:{"x-blade-directory":n}}:void 0);if(s!==ec||t().loadedWorkspacePath!==r)return;const o=i.current;e({currentModelId:(o==null?void 0:o.id)||null,configuredModels:i.configured||[],availableModels:i.available||[],isLoading:!1,hasLoaded:!0})}catch(i){if(s!==ec||t().loadedWorkspacePath!==r)return;e({error:i instanceof Error?i.message:"Failed to load models",isLoading:!1,hasLoaded:!0})}},setCurrentModel:async(n,r)=>{if(e({error:null}),r){e({currentModelId:n});return}try{await Dn("/configs",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({updates:{currentModelId:n},options:{scope:"global"}})}),e({currentModelId:n})}catch(s){throw e({error:s instanceof Error?s.message:"Failed to set model"}),s}},setMode:n=>e({currentMode:n}),resetMode:()=>e({currentMode:$c})})),KF=e=>e==="system"?typeof window<"u"&&typeof window.matchMedia=="function"&&window.matchMedia("(prefers-color-scheme: dark)").matches:e==="dark",No=e=>{if(typeof document>"u")return;const t=document.documentElement;if(t.classList.remove("light","dark"),e==="system"){const r=typeof window<"u"&&typeof window.matchMedia=="function"&&window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light";t.classList.add(r)}else t.classList.add(e)},rn={language:"zh-CN",codeTheme:"dracula",uiTheme:"system",autoSaveSessions:!0,notifyBuild:!0,notifyErrors:!1,notifySounds:!1,privacyTelemetry:!1,privacyCrash:!0,agentTeamsEnabled:!1,communicationStyle:"auto"},Xr=Qo((e,t)=>({...rn,isLoading:!1,error:null,loadSettings:async()=>{e({isLoading:!0,error:null});try{const n=await fetch("/configs");if(!n.ok)throw new Error(Ke("settings.general.loadError"));const r=await n.json(),s=r.uiTheme??rn.uiTheme;e({language:r.language??rn.language,codeTheme:r.codeTheme??rn.codeTheme,uiTheme:s,autoSaveSessions:r.autoSaveSessions??rn.autoSaveSessions,notifyBuild:r.notifyBuild??rn.notifyBuild,notifyErrors:r.notifyErrors??rn.notifyErrors,notifySounds:r.notifySounds??rn.notifySounds,privacyTelemetry:r.privacyTelemetry??rn.privacyTelemetry,privacyCrash:r.privacyCrash??rn.privacyCrash,agentTeamsEnabled:r.agentTeamsEnabled??rn.agentTeamsEnabled,communicationStyle:r.communicationStyle??rn.communicationStyle,isLoading:!1}),No(s)}catch(n){e({error:n.message,isLoading:!1})}},updateSettings:async n=>{const r=t();e({...n,error:null}),n.uiTheme&&No(n.uiTheme);try{if(!(await fetch("/configs",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({updates:n,options:{scope:"global"}})})).ok)throw new Error(Ke("settings.general.saveError"))}catch(s){e({language:r.language,codeTheme:r.codeTheme,uiTheme:r.uiTheme,autoSaveSessions:r.autoSaveSessions,notifyBuild:r.notifyBuild,notifyErrors:r.notifyErrors,notifySounds:r.notifySounds,privacyTelemetry:r.privacyTelemetry,privacyCrash:r.privacyCrash,agentTeamsEnabled:r.agentTeamsEnabled,communicationStyle:r.communicationStyle,error:s.message}),n.uiTheme&&No(r.uiTheme)}}}));No(rn.uiTheme);const I3=()=>Xr(e=>KF(e.uiTheme)),tc="__temp__",ci={inputTokens:0,outputTokens:0,totalTokens:0,maxContextTokens:0,isDefaultMaxTokens:!0,totalInputTokens:0,totalOutputTokens:0,cacheReadTokens:0,cacheWriteTokens:0,estimatedCostUsd:0};function be(e){return{sessionId:e.sessionId,projectPath:e.projectPath}}function Me(e){return JSON.stringify([e.projectPath,e.sessionId])}function oe(e,t){return!e||!t?e===t:e.sessionId===t.sessionId&&e.projectPath===t.projectPath}function Gd(e,t){return e.find(n=>oe(be(n),t))}function hn(e,t){const n=be(t),r=e.findIndex(i=>oe(be(i),n));if(r===-1)return[...e,t];const s=[...e];return s[r]=t,s}function tp(e,t){return e.filter(n=>!oe(be(n),t))}const Kx="blade.tasks.unread",Go="blade:open-session";function Gx(e){return e==="completed"||e==="failed"||e==="interrupted"}function GF(e,t,n){return!Gx(t)||n?!1:e!==t&&!(e==="completed"||e==="failed"||e==="interrupted"||e==="cancelled")}function VF(e=typeof localStorage>"u"?null:localStorage){if(!e)return[];try{const t=JSON.parse(e.getItem(Kx)??"[]");return Array.isArray(t)?[...new Set(t.filter(n=>typeof n=="string"))]:[]}catch{return[]}}function hi(e,t=typeof localStorage>"u"?null:localStorage){if(t)try{t.setItem(Kx,JSON.stringify([...new Set(e)]))}catch{}}function np(e,t){const n=new Set(t.map(r=>Me({sessionId:r.sessionId,projectPath:r.projectPath})));return e.filter(r=>n.has(r))}function rp(e){if(typeof document>"u"||document.visibilityState!=="hidden"||typeof Notification>"u"||Notification.permission!=="granted")return!1;const t=new Notification(e.title,{body:e.body,icon:"/favicon.svg",tag:`blade-task-${Me(e.ref)}`});return t.onclick=()=>e.onOpen(e.ref),!0}function WF(e){if(typeof window>"u")return!1;const t=window.AudioContext??window.webkitAudioContext;if(!t)return!1;try{const n=new t,r=n.createOscillator(),s=n.createGain();return r.type="sine",r.frequency.value=e==="completed"?660:330,s.gain.setValueAtTime(1e-4,n.currentTime),s.gain.exponentialRampToValueAtTime(.045,n.currentTime+.015),s.gain.exponentialRampToValueAtTime(1e-4,n.currentTime+.18),r.connect(s),s.connect(n.destination),r.start(),r.stop(n.currentTime+.2),r.onended=()=>void n.close(),!0}catch{return!1}}const JF=e=>{var n;const t=[];e.content.trim()&&t.push({type:"text",text:e.content});for(const r of e.attachments??[])r.type==="image"&&t.push({type:"image_url",image_url:{url:r.content}});return t.length===0?e.content:t.length===1&&((n=t[0])==null?void 0:n.type)==="text"?t[0].text:t},So=()=>({eventUnsubscribe:null,sessionEventConnectionState:"idle",isStreaming:!1,isStopping:!1,agentPhase:"idle",providerAdmission:null,providerCircuit:null,providerRetry:null,providerStall:null,actionStationarity:null,turnRecovery:null,currentRunId:null,pendingSteeringCount:0,pendingInputDelivery:null,recoveredSteeringCount:0,pendingSubagentCompletions:{},currentAssistantMessageId:null,hasToolCalls:!1}),sp=()=>new Promise(e=>{globalThis.setTimeout(()=>{if(typeof window<"u"&&typeof window.requestIdleCallback=="function"){window.requestIdleCallback(()=>e(),{timeout:750});return}e()},350)}),ip=async e=>(await es(async()=>{const{teamService:t}=await import("./teamService-Aj-8ajEO.js");return{teamService:t}},__vite__mapDeps([0,1,2,3]))).teamService.list(e),QF=(e,t)=>{let n=0,r=0,s=0;const i=new Map,o=new Map;let d=null;const f=()=>(d==null||d.abort("session-navigation"),d=null,n+=1,n),u=p=>p===n,m=p=>{try{p()}catch(h){console.warn("Failed to clean up stale event subscription",h)}};return{sessions:[],archivedSessions:[],currentSessionId:null,currentSessionRef:null,forkingSessionRef:null,isTemporarySession:!1,isLoading:!1,catalogLoadState:"idle",catalogError:null,archivedCatalogLoadState:"idle",archivedCatalogError:null,error:null,errorContext:null,goal:null,sideConversation:null,teams:[],setSessions:p=>e({sessions:p}),addSession:p=>e(h=>({sessions:hn(h.sessions,p)})),removeSession:p=>{const h=t();h.markTaskRead(p);const b=oe(h.currentSessionRef,p),k=oe(h.forkingSessionRef,p);(b||k)&&f(),b&&h.unsubscribeFromEvents(),e(S=>({sessions:tp(S.sessions,p),currentSessionId:b?null:S.currentSessionId,currentSessionRef:b?null:S.currentSessionRef,messages:b?[]:S.messages,goal:b?null:S.goal,sideConversation:b?null:S.sideConversation,teams:b?[]:S.teams,forkingSessionRef:k?null:S.forkingSessionRef,...b?So():{}}))},setCurrentSession:p=>{f(),e({currentSessionId:(p==null?void 0:p.sessionId)??null,currentSessionRef:p,isTemporarySession:!1,sideConversation:null,teams:[]})},setTemporarySession:p=>e({isTemporarySession:p}),setLoading:p=>e({isLoading:p}),setError:p=>e({error:p,errorContext:null}),getNavigationVersion:()=>n,clearError:()=>e({error:null,errorContext:null}),setGoal:p=>e({goal:p}),startTemporarySession:p=>{f(),t().unsubscribeFromEvents(),Mt.getState().resetMode(),p&&t().selectProject(p),e({currentSessionId:tc,currentSessionRef:null,isTemporarySession:!0,forkingSessionRef:null,isLoading:!1,messages:[],goal:null,sideConversation:null,teams:[],tokenUsage:{...ci},error:null,errorContext:null,...So()})},loadSessions:async()=>{const p=++r,h=new Set(t().sessions.map(k=>Me(be(k)))),b=new Set;e({catalogLoadState:"loading",catalogError:null});try{let k,S=!0;do{const N=await X.listSessionPage(k);if(p!==r)return;for(const P of N.sessions)b.add(Me(be(P)));if(e(P=>{const F=new Set(N.sessions.map(j=>Me(be(j))));return{sessions:S?[...N.sessions,...P.sessions.filter(j=>!F.has(Me(be(j))))]:N.sessions.reduce((j,I)=>hn(j,I),P.sessions),catalogLoadState:N.nextCursor?"hydrating":"ready"}}),S=!1,k=N.nextCursor,k&&(await sp(),p!==r))return}while(k);if(p!==r)return;const C=t().sessions.filter(N=>{const P=Me(be(N));return b.has(P)||!h.has(P)}),x=np(t().unreadTaskKeys,C);hi(x),e({sessions:C,unreadTaskKeys:x,catalogLoadState:"ready",catalogError:null})}catch(k){if(p!==r)return;e({catalogLoadState:"error",catalogError:k.message})}},loadArchivedSessions:async()=>{const p=++s;e({archivedCatalogLoadState:"loading",archivedCatalogError:null});try{let h;const b=[];do{const k=await X.listSessionPage(h,50,!0);if(p!==s)return;for(const S of k.sessions){const C=b.findIndex(x=>oe(be(x),be(S)));C===-1?b.push(S):b[C]=S}h=k.nextCursor,h&&(e({archivedCatalogLoadState:"hydrating"}),await sp())}while(h);if(p!==s)return;e({archivedSessions:b,archivedCatalogLoadState:"ready",archivedCatalogError:null})}catch(h){if(p!==s)return;e({archivedCatalogLoadState:"error",archivedCatalogError:h.message})}},selectSession:async p=>{var k;const h=f();e({isLoading:!0,error:null,errorContext:null,forkingSessionRef:null});let b=null;try{const S=Gd(t().sessions,p),C=[];let x=!1;if(b=await t().prepareEventSubscription(p,T=>{x?t().handleEvent(T):C.push(T)}),!u(h)){m(b),b=null;return}const[N,P,F,D]=await Promise.all([X.getMessages(p),X.getGoal(p).catch(()=>null),S?Promise.resolve(S):X.getSession(p),Xr.getState().agentTeamsEnabled?ip(p).catch(()=>[]):Promise.resolve([])]);if(!u(h)){m(b),b=null;return}const j=wo(N),I=lo(F,t().selectedProjectPath??((k=t().taskWorkspaceInfo)==null?void 0:k.cwd)??null);t().boundProjects.some(T=>T.available&&T.path===I)&&t().selectProject(I),Mt.getState().setMode(F.permissionMode??$c),e(T=>{var M;return{currentSessionId:p.sessionId,currentSessionRef:p,isTemporarySession:!1,messages:j,goal:P,teams:D,isLoading:!1,tokenUsage:{...ci},isStreaming:!1,isStopping:!1,agentPhase:"idle",providerAdmission:null,providerCircuit:null,providerRetry:null,providerStall:null,actionStationarity:null,turnRecovery:null,currentRunId:null,pendingSteeringCount:0,pendingInputDelivery:null,recoveredSteeringCount:0,pendingSubagentCompletions:{},currentAssistantMessageId:null,hasToolCalls:!1,error:F.taskStatus==="failed"?((M=F.taskFailure)==null?void 0:M.message)??null:null,errorContext:F.taskStatus==="failed"&&F.taskFailure?{kind:"execution",sessionRef:p,failureCode:F.taskFailure.code}:null,sessions:hn(T.sessions,F)}}),t().markTaskRead(p),x=!0,t().replaceEventSubscription(b),b=null;for(const T of C)t().handleEvent(T)}catch(S){if(b&&m(b),!u(h))return;e({error:S.message,errorContext:{kind:"navigation",sessionRef:p},isLoading:!1})}},resyncSessionMessages:async p=>{const h=Me(p),b=i.get(h);if(b)return b;const k=n,S=Promise.resolve().then(async()=>{try{const C=await X.getMessages(p);if(!u(k)||!oe(t().currentSessionRef,p))return;const x=wo(C);e(N=>({messages:x,sessions:N.sessions.map(P=>oe(be(P),p)?{...P,messageCount:x.length}:P)}))}catch(C){console.warn("Failed to resync terminal session messages",C)}finally{i.get(h)===S&&i.delete(h)}});return i.set(h,S),S},archiveSession:async p=>{var h;try{const b=await X.archiveSession(p),k=new Set(b.archivedSessionIds),S=t(),C=((h=S.currentSessionRef)==null?void 0:h.projectPath)===p.projectPath&&k.has(S.currentSessionRef.sessionId);C&&(f(),S.unsubscribeFromEvents()),e(x=>{const N=x.sessions.filter(F=>F.projectPath!==p.projectPath||!k.has(F.sessionId)),P=np(x.unreadTaskKeys,N);return hi(P),{sessions:N,archivedSessions:hn(x.archivedSessions,b.session),unreadTaskKeys:P,currentSessionId:C?null:x.currentSessionId,currentSessionRef:C?null:x.currentSessionRef,messages:C?[]:x.messages,goal:C?null:x.goal,...C?So():{}}}),await t().loadArchivedSessions()}catch(b){e({error:b.message,errorContext:{kind:"task_action",sessionRef:p}})}},unarchiveSession:async p=>{try{const h=await X.unarchiveSession(p),b=new Set(h.restoredSessionIds);e(k=>({archivedSessions:k.archivedSessions.filter(S=>S.projectPath!==p.projectPath||!b.has(S.sessionId)),sessions:hn(k.sessions,h.session)})),await Promise.all([t().loadSessions(),t().loadArchivedSessions()])}catch(h){e({error:h.message,errorContext:{kind:"task_action",sessionRef:p}})}},deleteSession:async p=>{const h=t(),b=oe(h.currentSessionRef,p),k=oe(h.forkingSessionRef,p),S=b||k?f():null,C=b?S:null;k&&e({forkingSessionRef:null});try{await X.deleteSession(p),t().markTaskRead(p);const x=t(),N=oe(x.currentSessionRef,p)&&(C===null||u(C));N&&(f(),x.unsubscribeFromEvents()),e(P=>({sessions:tp(P.sessions,p),currentSessionId:N?null:P.currentSessionId,currentSessionRef:N?null:P.currentSessionRef,messages:N?[]:P.messages,goal:N?null:P.goal,...N?So():{}}))}catch(x){if(C!==null&&(!u(C)||!oe(t().currentSessionRef,p)))return;e({error:x.message})}},updateSession:async(p,h)=>{try{await X.updateSession(p,h),e(b=>({sessions:b.sessions.map(k=>k.sessionId===p.sessionId&&k.projectPath===p.projectPath?{...k,title:h}:k)}))}catch(b){e({error:b.message})}},forkSession:async p=>{const h=f(),b=be(p);e({forkingSessionRef:b,isLoading:!1,error:null});let k=null;try{const S=await X.forkSession(p),C=be(S.session),x=wo(S.messages);if(e(N=>({sessions:hn(N.sessions,S.session)})),!u(h))return;if(k=await t().prepareEventSubscription(C),!u(h)){m(k),k=null;return}e({currentSessionId:C.sessionId,currentSessionRef:C,isTemporarySession:!1,messages:x,goal:null,tokenUsage:{...ci},error:null,forkingSessionRef:null}),t().replaceEventSubscription(k),k=null}catch(S){if(k&&m(k),!u(h))return;e({error:S.message,forkingSessionRef:null})}},rewindSession:async(p,h)=>{const{currentSessionRef:b,isTemporarySession:k,isStreaming:S}=t();if(!b||k)return e({error:"No persisted session is available for rewind"}),!1;if(S)return e({error:"Stop the active run before rewinding"}),!1;const C=n;try{const x=await X.rewindSession(b,p,h);if(!u(C)||!oe(t().currentSessionRef,b))return!1;const N=wo(x.messages);return e(P=>({messages:N,tokenUsage:{...ci},error:null,currentRunId:null,agentPhase:"idle",providerAdmission:null,providerCircuit:null,providerRetry:null,providerStall:null,actionStationarity:null,turnRecovery:null,pendingSteeringCount:0,pendingInputDelivery:null,recoveredSteeringCount:0,pendingSubagentCompletions:{},currentAssistantMessageId:null,hasToolCalls:!1,sessions:P.sessions.map(F=>F.sessionId===b.sessionId&&F.projectPath===b.projectPath?{...F,messageCount:N.length}:F)})),!0}catch(x){return!u(C)||!oe(t().currentSessionRef,b)||e({error:x.message}),!1}},sendMessage:async p=>{var O,Q,ae,le,de,me;const{currentSessionId:h,currentSessionRef:b,isTemporarySession:k,isStreaming:S,addSession:C,addMessage:x}=t(),N=n,P=b,F={isStreaming:S,agentPhase:t().agentPhase,currentRunId:t().currentRunId};let D=b,j=h,I=P,T=null,M=null;const $=()=>u(N)&&oe(t().currentSessionRef,I),te=X$(p.content);if(te){if((((O=p.attachments)==null?void 0:O.length)??0)>0)return e({error:"Side conversations do not accept image attachments"}),!1;if(!te.question)return e({error:"Usage: /btw <question>"}),!1;if(k||!D||!j)return e({error:"Start or select a Session before using /btw"}),!1;d==null||d.abort("side-conversation-replaced");const Y=new AbortController;d=Y;const he=`${Date.now()}-${Math.random().toString(36).slice(2,8)}`;e({sideConversation:{requestId:he,sessionRef:D,question:te.question,status:"loading"},error:null,errorContext:null});try{const R=await X.askSideQuestion(D,te.question,Y.signal);return Y.signal.aborted||!$()||((Q=t().sideConversation)==null?void 0:Q.requestId)!==he?!1:(e({sideConversation:{requestId:he,sessionRef:D,question:te.question,status:"completed",response:R.response,durationMs:R.durationMs,modelId:R.modelId}}),R.usage&&t().updateTokenUsage({inputTokens:R.usage.promptTokens,outputTokens:R.usage.completionTokens,totalTokens:R.usage.totalTokens,cacheReadTokens:R.usage.cacheReadInputTokens??0,cacheWriteTokens:R.usage.cacheCreationInputTokens??0,costUsd:R.usage.costUsd}),!0)}catch(R){return Y.signal.aborted||!$()||e({sideConversation:{requestId:he,sessionRef:D,question:te.question,status:"error",error:R instanceof Error?R.message:String(R)}}),!1}finally{d===Y&&(d=null)}}if(d==null||d.abort("main-conversation-submitted"),d=null,t().sideConversation&&e({sideConversation:null}),k||!j||j===tc)try{const Y=_F(p.content),he=await X.createSession(t().selectedProjectPath??((ae=t().taskWorkspaceInfo)==null?void 0:ae.cwd)??void 0,Y||void 0);if(C(he),!$())return!1;D=be(he),j=he.sessionId,e({currentSessionId:he.sessionId,currentSessionRef:D,isTemporarySession:!1}),I=D}catch(Y){return $()&&e({error:Y.message}),!1}if(!D||!j||j===tc)return $()&&e({error:"Failed to create session"}),!1;try{if(!S){if(T=await t().prepareEventSubscription(D),!$())return m(T),T=null,!1;t().replaceEventSubscription(T),T=null}if(!$())return!1;const Y=p.content.trim();if(Y.startsWith("!")){if((((le=p.attachments)==null?void 0:le.length)??0)>0)throw new Error("User shell commands do not accept image attachments");const B=Y.slice(1).trim();if(!B)throw new Error("User shell command cannot be empty");S||e({isStreaming:!0,agentPhase:"running",error:null,errorContext:null});const Se=await X.executeUserShellCommand(D,B);return $()?(Se.auxiliary||e({isStreaming:!1,agentPhase:"idle"}),Se.delivery&&e({pendingSteeringCount:Se.queued??0,pendingInputDelivery:Se.delivery==="current_turn"?"current_turn":"next_turn"}),!0):!1}if((((de=p.attachments)==null?void 0:de.length)??0)===0&&(Y==="/goal"||Y.startsWith("/goal "))){M=`goal-command-${Date.now()}`,x({id:M,role:"user",content:Y,timestamp:Date.now()});const B=Y.slice(5).trim().split(/\s+/).filter(Boolean),Se=(me=B[0])==null?void 0:me.toLowerCase();if(!Se||Se==="status"){const Pe=await X.getGoal(D);return $()&&e({goal:Pe}),$()}if(Se==="clear")return await X.clearGoal(D),$()&&e({goal:null}),$();let qe;if(Se==="pause")qe=await X.updateGoal(D,{action:"pause"});else if(Se==="resume")qe=await X.updateGoal(D,{action:"resume"});else if(Se==="edit"){const Pe=B.slice(1).join(" ").trim();if(!Pe)throw new Error("Usage: /goal edit <objective>");qe=await X.updateGoal(D,{action:"edit",objective:Pe})}else{const Pe=B.lastIndexOf("--budget");let Jt;if(Pe>=0){const Qt=B[Pe+1];if(!Qt||!/^[1-9]\d*$/.test(Qt))throw new Error("--budget requires a positive integer");Jt=Number(Qt),B.splice(Pe,2)}const et=B.join(" ").trim();if(!et)throw new Error("Usage: /goal <objective>");const{currentMode:Ht}=Mt.getState();qe=await X.createGoal(D,et,Jt,Ht)}return $()?(e({goal:qe.goal,...qe.runId?{currentRunId:qe.runId,isStreaming:!0,agentPhase:"running"}:{}}),!0):!1}M=`temp-${Date.now()}-${Math.random().toString(36).slice(2,8)}`,x({id:M,role:"user",content:JF(p),timestamp:Date.now()}),e({isStreaming:!0,error:null,errorContext:null,recoveredSteeringCount:S?t().recoveredSteeringCount:0});const{currentMode:he,currentModelId:R}=Mt.getState(),{modelId:ce,...ve}=p,He=ce??R??void 0,yt=p.reasoningEffort,We=p.serviceTier,tt=p.responseVerbosity,Z=p.communicationStyle,pt=He&&!S?{...ve,modelId:He}:ve,L=await X.sendMessage(D,pt,he);return $()?(e({currentRunId:L.runId,pendingSteeringCount:L.status==="steering_queued"||L.status==="follow_up_queued"?Math.max(0,L.queued??1):t().pendingSteeringCount,pendingInputDelivery:L.status==="steering_queued"?"current_turn":L.status==="follow_up_queued"?"next_turn":t().pendingInputDelivery,sessions:(He||yt||We||tt||Z)&&!S?t().sessions.map(B=>B.sessionId===D.sessionId&&B.projectPath===D.projectPath?{...B,...He?{selectedModelId:He}:{},...yt?{reasoningEffort:yt}:{},...We?{serviceTier:We}:{},...tt?{responseVerbosity:tt}:{},...Z?{communicationStyle:Z}:{}}:B):t().sessions}),!0):!1}catch(Y){if(T&&m(T),!$())return!1;if(M&&!t().messages.some(R=>R.id===M)&&!Yu(Y))return!0;const he=Yu(Y)&&Y.code==="SESSION_WORKSPACE_UNAVAILABLE"?"workspace_unavailable":void 0;return e(R=>({error:Y.message,errorContext:{kind:"submission",sessionRef:D,...he?{failureCode:he}:{}},messages:M?R.messages.filter(ce=>ce.id!==M):R.messages,...F})),!1}},dismissSideConversation:()=>{d==null||d.abort("side-conversation-dismissed"),d=null,e({sideConversation:null})},loadTeams:async p=>{const h=p??t().currentSessionRef;if(!h||!Xr.getState().agentTeamsEnabled){e({teams:[]});return}const b=Me(h),k=o.get(b);if(k)return k;let S;S=(async()=>{try{const C=await ip(h);if(!oe(t().currentSessionRef,h))return;e({teams:C})}catch{oe(t().currentSessionRef,h)&&e({teams:[]})}finally{o.get(b)===S&&o.delete(b)}})(),o.set(b,S),await S},abortSession:async()=>{const{currentSessionRef:p,isStopping:h}=t();if(!p||h)return!1;e({isStopping:!0,error:null,errorContext:null});try{return await X.abortSession(p),!oe(t().currentSessionRef,p)||(await t().resyncSessionMessages(p),!oe(t().currentSessionRef,p))?!1:(t().unsubscribeFromEvents(),e({isStreaming:!1,isStopping:!1,agentPhase:"idle",providerAdmission:null,providerCircuit:null,providerRetry:null,providerStall:null,actionStationarity:null,turnRecovery:null,currentRunId:null,pendingSteeringCount:0,pendingInputDelivery:null,recoveredSteeringCount:0,pendingSubagentCompletions:{},currentAssistantMessageId:null,hasToolCalls:!1}),!0)}catch(b){return oe(t().currentSessionRef,p)&&e({isStopping:!1,error:b instanceof Error?b.message:"Failed to stop task",errorContext:{kind:"task_action",sessionRef:p}}),!1}},pauseGoal:async()=>{const{currentSessionRef:p,isTemporarySession:h}=t();if(!p||h){e({error:"No persisted session is available for this goal"});return}try{const b=await X.updateGoal(p,{action:"pause"});if(!oe(t().currentSessionRef,p))return;e({goal:b.goal,error:null})}catch(b){if(!oe(t().currentSessionRef,p))return;e({error:b.message})}},resumeGoal:async()=>{const{currentSessionRef:p,isTemporarySession:h}=t();if(!p||h){e({error:"No persisted session is available for this goal"});return}try{const b=await X.updateGoal(p,{action:"resume"});if(!oe(t().currentSessionRef,p))return;e({goal:b.goal,error:null,...b.runId?{currentRunId:b.runId,isStreaming:!0,agentPhase:"running"}:{}})}catch(b){if(!oe(t().currentSessionRef,p))return;e({error:b.message})}},editGoal:async p=>{const{currentSessionRef:h,isTemporarySession:b}=t();if(!h||b){e({error:"No persisted session is available for this goal"});return}try{const k=await X.updateGoal(h,{action:"edit",objective:p});if(!oe(t().currentSessionRef,h))return;e({goal:k.goal,error:null,...k.runId?{currentRunId:k.runId,isStreaming:!0,agentPhase:"running"}:{}})}catch(k){if(!oe(t().currentSessionRef,h))return;e({error:k.message})}},clearGoal:async()=>{const{currentSessionRef:p,isTemporarySession:h}=t();if(!p||h){e({error:"No persisted session is available for this goal"});return}try{if(await X.clearGoal(p),!oe(t().currentSessionRef,p))return;e({goal:null,error:null})}catch(b){if(!oe(t().currentSessionRef,p))return;e({error:b.message})}}}},YF=(e,t)=>{const n=new WeakMap;let r=null;return{isStreaming:!1,isStopping:!1,agentPhase:"idle",providerAdmission:null,providerCircuit:null,providerRetry:null,providerStall:null,actionStationarity:null,turnRecovery:null,sessionEventConnectionState:"idle",currentRunId:null,pendingSteeringCount:0,pendingInputDelivery:null,recoveredSteeringCount:0,pendingSubagentCompletions:{},eventUnsubscribe:null,currentAssistantMessageId:null,hasToolCalls:!1,setStreaming:s=>e({isStreaming:s}),setAgentPhase:s=>e({agentPhase:s}),setRunId:s=>e({currentRunId:s}),prepareEventSubscription:async(s,i)=>{const o=i??uu(t,e);let d=null,f="connecting";return d=await X.openEventSubscription(s,o,{onConnectionStateChange:u=>{f=u,d&&r===d&&e({sessionEventConnectionState:u})}}),n.set(d,f),d},replaceEventSubscription:s=>{const i=t().eventUnsubscribe;if(r=s,e({eventUnsubscribe:s,sessionEventConnectionState:s?n.get(s)??"connected":"idle"}),Ka.reset(),i&&i!==s)try{i()}catch(o){console.warn("Failed to clean up previous event subscription",o)}},setCurrentAssistantMessageId:s=>e({currentAssistantMessageId:s}),setHasToolCalls:s=>e({hasToolCalls:s}),startAgentResponse:s=>{e({currentAssistantMessageId:s,hasToolCalls:!1,isStreaming:!0,agentPhase:"running",providerAdmission:null,providerCircuit:null,providerRetry:null,providerStall:null,actionStationarity:null,turnRecovery:null})},endAgentResponse:()=>{Ka.drainAll(),e({currentAssistantMessageId:null,hasToolCalls:!1,isStreaming:!1,isStopping:!1,agentPhase:"idle",providerAdmission:null,providerCircuit:null,providerRetry:null,providerStall:null,actionStationarity:null,currentRunId:null,pendingSteeringCount:0,pendingInputDelivery:null})},subscribeToEvents:async s=>{const i=await t().prepareEventSubscription(s);t().replaceEventSubscription(i)},reconnectSessionEvents:async()=>{const s=t().currentSessionRef;if(s){t().unsubscribeFromEvents(),e({sessionEventConnectionState:"connecting"});try{await t().subscribeToEvents(s)}catch(i){throw e({sessionEventConnectionState:"offline"}),i}}},unsubscribeFromEvents:()=>{const{eventUnsubscribe:s}=t();r=null,e({eventUnsubscribe:null,sessionEventConnectionState:"idle"});try{s==null||s()}catch(i){console.warn("Failed to clean up event subscription",i)}finally{Ka.reset()}},handleEvent:s=>{uu(t,e)(s)}}};function ZF(e){var t;return((t=e.taskPromptSummary)==null?void 0:t.trimStart().startsWith("/review"))===!0}function Vd(e,t){var r;const n=(r=e.taskStatusReason)==null?void 0:r.trim();if(ZF(e)){if(e.taskStatus==="running")return t("taskHome.review.running");if(n!=null&&n.startsWith("Code review stale:"))return t("taskHome.review.stale");if(n==="Code review aborted")return t("taskHome.review.aborted");if(n==="Code review interrupted by process restart")return t("taskHome.review.interrupted");if(e.taskStatus==="failed")return t("taskHome.review.failed")}return e.taskFailure?t(Cp(e.taskFailure.code)):n==="user-cancel"?t("session.reason.cancelledByUser"):n||void 0}let nc=0;function jo(e,t){const n=e.findIndex(s=>s.id===t.id);if(n===-1)return[...e,t];const r=e.slice();return r[n]=t,r}const XF=Qo(e=>({schedules:[],isLoading:!1,hasLoaded:!1,error:null,loadSchedules:async()=>{const t=++nc;e({isLoading:!0,error:null});try{const n=await X.listSchedules();if(t!==nc)return;e({schedules:n,isLoading:!1,hasLoaded:!0})}catch(n){if(t!==nc)return;e({error:n instanceof Error?n.message:Ke("schedule.error.loadFailed"),isLoading:!1,hasLoaded:!0})}},createSchedule:async t=>{e({error:null});try{const n=await X.createSchedule(t);return e(r=>({schedules:jo(r.schedules,n)})),n}catch(n){throw e({error:n instanceof Error?n.message:Ke("schedule.error.createFailed")}),n}},updateSchedule:async(t,n)=>{e({error:null});try{const r=await X.updateSchedule(t,n);return e(s=>({schedules:jo(s.schedules,r)})),r}catch(r){throw e({error:r instanceof Error?r.message:Ke("schedule.error.updateFailed")}),r}},deleteSchedule:async t=>{e({error:null});try{await X.deleteSchedule(t),e(n=>({schedules:n.schedules.filter(r=>r.id!==t)}))}catch(n){throw e({error:n instanceof Error?n.message:Ke("schedule.error.deleteFailed")}),n}},toggleSchedule:async(t,n)=>{e({error:null});try{const r=n?await X.enableSchedule(t):await X.disableSchedule(t);return e(s=>({schedules:jo(s.schedules,r)})),r}catch(r){throw e({error:r instanceof Error?r.message:Ke("schedule.error.toggleFailed")}),r}},runSchedule:async t=>{e({error:null});try{const n=await X.runSchedule(t);return e(r=>({schedules:jo(r.schedules,n)})),n}catch(n){throw e({error:n instanceof Error?n.message:Ke("schedule.error.runFailed")}),n}}})),Vx="blade.projects.selected";function op(){return typeof localStorage>"u"?null:localStorage.getItem(Vx)}function Io(e){typeof localStorage<"u"&&localStorage.setItem(Vx,e)}const e5=new Set(["queued","running","completed","failed","cancelled","interrupted"]),rc=new Set(["default","autoEdit","yolo","plan"]),ap=new Set(["auto","off","minimal","low","medium","high","xhigh","max"]),cp=new Set(["auto","standard","fast","flex"]),lp=new Set(["auto","low","medium","high"]),dp=new Set(["auto","pragmatic","friendly","explanatory"]),up=new Set(["high","medium","low"]),pp=new Set(["feature","bug","maintenance","research"]);function t5(e){return typeof e=="string"&&e5.has(e)}function n5(e){if(!e||typeof e!="object"||Array.isArray(e))return;const t=e;if(!["changedFiles","additions","deletions","commits"].some(r=>typeof t[r]!="number"||!Number.isInteger(t[r])||t[r]<0))return{changedFiles:t.changedFiles,additions:t.additions,deletions:t.deletions,commits:t.commits}}function fp(e){if(!e||typeof e!="object"||Array.isArray(e))return;const t=e,n=Q0(t.code);if(!(!n||typeof t.message!="string"||typeof t.retryable!="boolean"))return{code:n,message:Ke(Cp(n)),retryable:Y0(n)}}function r5(e){if(!e||typeof e!="object"||Array.isArray(e))return;const t=e;if(!(!["applied","discarded","conflicted"].includes(String(t.status))||typeof t.updatedAt!="string"))return{status:t.status,updatedAt:t.updatedAt,...typeof t.sourceCommit=="string"?{sourceCommit:t.sourceCommit}:{},...typeof t.changedFiles=="number"&&Number.isInteger(t.changedFiles)&&t.changedFiles>=0?{changedFiles:t.changedFiles}:{},...typeof t.message=="string"?{message:t.message}:{}}}function vs(e,t){return typeof e=="number"&&Number.isInteger(e)&&e>=t?e:void 0}const s5=(e,t)=>{let n=null,r=!1,s=!1,i=0;const o=new Map,d=u=>{const m=Me(u),p=++i;o.set(m,p),X.getSession(u).then(h=>{o.get(m)===p&&e(b=>({sessions:hn(b.sessions,h)}))}).catch(()=>{o.get(m)===p&&t().loadSessions()}).finally(()=>{o.get(m)===p&&o.delete(m)})},f=u=>{const m=Me(u),p=++i;o.set(m,p),queueMicrotask(()=>{o.get(m)===p&&o.delete(m)})};return{taskEventsConnected:!1,taskEventConnectionState:"connecting",taskEventUnsubscribe:null,taskWorkspaceInfo:null,isTaskWorkspaceLoading:!1,taskWorkspaceError:null,boundProjects:[],selectedProjectPath:op(),isDispatchingTask:!1,isUpdatingTaskAdmission:!1,isBindingProject:!1,cancellingTaskKeys:[],retryingTaskKeys:[],updatingTaskKeys:[],taskDeliveryActions:{},unreadTaskKeys:VF(),handleTaskEvent:u=>{if(u.type==="session.created"){const I=u.properties.sessionId,T=u.properties.projectPath;if(typeof I!="string"||typeof T!="string")return;d({sessionId:I,projectPath:T});return}if(u.type==="session.deleted"){const I=u.properties.sessionId,T=u.properties.projectPath;if(typeof I!="string"||typeof T!="string")return;const M={sessionId:I,projectPath:T};f(M),t().removeSession(M);return}if(u.type==="session.archived"){const I=u.properties.sessionId,T=u.properties.projectPath;if(typeof I!="string"||typeof T!="string")return;const M={sessionId:I,projectPath:T};f(M),t().removeSession(M),t().loadArchivedSessions();return}if(u.type==="session.unarchived"){const I=u.properties.sessionId,T=u.properties.projectPath;if(typeof I!="string"||typeof T!="string")return;d({sessionId:I,projectPath:T}),t().loadArchivedSessions();return}if(u.type==="session.updated"){const I=u.properties.sessionId,T=u.properties.projectPath,M=u.properties.title,$=u.properties.selectedModelId,te=u.properties.permissionMode,O=u.properties.reasoningEffort,Q=u.properties.serviceTier,ae=u.properties.responseVerbosity,le=u.properties.communicationStyle,de=u.properties.taskPriority,me=u.properties.taskKind,Y=u.properties.taskDueAt;if(typeof I!="string"||typeof T!="string"||!(typeof M=="string"&&M.trim()||typeof $=="string"&&$.trim()||rc.has(te)||ap.has(O)||cp.has(Q)||lp.has(ae)||dp.has(le)||up.has(de)||pp.has(me)||Y===null||typeof Y=="string"&&Number.isFinite(Date.parse(Y))))return;const he={sessionId:I,projectPath:T};if(oe(t().currentSessionRef,he)&&rc.has(te)&&Mt.getState().setMode(te),!t().sessions.some(ce=>oe(be(ce),he))){d(he);return}e(ce=>({sessions:ce.sessions.map(ve=>oe({sessionId:ve.sessionId,projectPath:ve.projectPath},he)?{...ve,...typeof M=="string"&&M.trim()?{title:M}:{},...typeof $=="string"&&$.trim()?{selectedModelId:$}:{},...rc.has(te)?{permissionMode:te}:{},...ap.has(O)?{reasoningEffort:O}:{},...cp.has(Q)?{serviceTier:Q}:{},...lp.has(ae)?{responseVerbosity:ae}:{},...dp.has(le)?{communicationStyle:le}:{},...up.has(de)?{taskPriority:de}:{},...pp.has(me)?{taskKind:me}:{},...Y===null?{taskDueAt:void 0}:typeof Y=="string"&&Number.isFinite(Date.parse(Y))?{taskDueAt:Y}:{}}:ve)}));return}if(u.type==="task.delivery"){const I=u.properties.sessionId,T=u.properties.projectPath,M=r5(u.properties.taskDelivery);if(typeof I!="string"||typeof T!="string"||!M)return;const $={sessionId:I,projectPath:T},te=u.properties.taskWorktreeRemoved===!0;e(O=>({sessions:O.sessions.map(Q=>oe(be(Q),$)?{...Q,taskDelivery:M,...te?{taskWorktreePath:void 0,taskWorktreeBranch:void 0}:{},lastMessageTime:typeof u.properties.updatedAt=="string"?u.properties.updatedAt:Q.lastMessageTime}:Q)}));return}if(u.type==="interaction.pending"){const I=u.properties.sessionId,T=u.properties.projectPath,M=u.properties.interactionType,$=u.properties.requestId;if(typeof I!="string"||typeof T!="string"||M!=="permission"&&M!=="question"&&M!=="elicitation"||typeof $!="string"||!$)return;const te={sessionId:I,projectPath:T},O=t().sessions.find(ae=>oe(be(ae),te));if(!O){t().loadSessions();return}if(e(ae=>({sessions:ae.sessions.map(le=>oe(be(le),te)?{...le,pendingInteraction:{type:M,requestId:$}}:le)})),!(typeof document<"u"&&document.visibilityState==="visible"&&oe(t().currentSessionRef,te))&&Xr.getState().notifyErrors){const le=O.title??O.sessionId??I;rp({ref:te,title:`Blade · ${Ke(M==="question"?"attention.notification.question":M==="elicitation"?"attention.notification.elicitation":"attention.notification.permission")}`,body:le,onOpen:de=>{typeof window>"u"||(window.focus(),window.dispatchEvent(new CustomEvent(Go,{detail:de})))}})}return}if(u.type==="interaction.resolved"){const I=u.properties.sessionId,T=u.properties.projectPath,M=u.properties.requestId;if(typeof I!="string"||typeof T!="string"||typeof M!="string")return;const $={sessionId:I,projectPath:T};e(te=>({sessions:te.sessions.map(O=>{var Q;return oe(be(O),$)&&((Q=O.pendingInteraction)==null?void 0:Q.requestId)===M?{...O,pendingInteraction:void 0}:O})}));return}if(u.type==="schedule.fired"){XF.getState().loadSchedules();return}if(u.type!=="task.status")return;const m=u.properties.sessionId,p=u.properties.projectPath,h=u.properties.taskStatus;if(typeof m!="string"||typeof p!="string"||!t5(h))return;const b={sessionId:m,projectPath:p},k=vs(u.properties.taskInFlight,0),S=vs(u.properties.taskQueueDepth,0),C=vs(u.properties.taskConcurrencyLimit,1),x=typeof u.properties.taskAdmissionPaused=="boolean"?u.properties.taskAdmissionPaused:void 0;k!==void 0&&S!==void 0&&C!==void 0&&e(I=>{var T,M;return{taskWorkspaceInfo:I.taskWorkspaceInfo?{...I.taskWorkspaceInfo,taskAdmission:{inFlight:k,queued:S,maxConcurrent:C,maxQueued:((T=I.taskWorkspaceInfo.taskAdmission)==null?void 0:T.maxQueued)??100,paused:x??((M=I.taskWorkspaceInfo.taskAdmission)==null?void 0:M.paused)??!1}}:null}});const N=t().sessions.find(I=>oe(be(I),b)),P=typeof document<"u"&&document.visibilityState==="visible"&&oe(t().currentSessionRef,b),F=GF(N==null?void 0:N.taskStatus,h,P),D=Me(b),j=!t().unreadTaskKeys.includes(D);if(F&&j){e(M=>{const $=[...M.unreadTaskKeys,D];return hi($),{unreadTaskKeys:$}});const I=Xr.getState();if(I.notifySounds&&Gx(h)&&WF(h),h==="completed"?I.notifyBuild:I.notifyErrors){const M=Ke(h==="completed"?"attention.notification.completed":h==="failed"?"attention.notification.failed":"attention.notification.interrupted"),$=fp(u.properties.taskFailure),te=N?Vd({...N,taskStatus:h,taskFailure:$??N.taskFailure,taskStatusReason:typeof u.properties.taskStatusReason=="string"?u.properties.taskStatusReason:N.taskStatusReason,taskPromptSummary:typeof u.properties.taskPromptSummary=="string"?u.properties.taskPromptSummary:N.taskPromptSummary},Ke):($==null?void 0:$.message)??(typeof u.properties.taskStatusReason=="string"?u.properties.taskStatusReason:void 0),O=(N==null?void 0:N.title)??(N==null?void 0:N.sessionId)??m;rp({ref:b,title:`Blade · ${M}`,body:te?`${O} · ${te}`:O,onOpen:Q=>{typeof window>"u"||(window.focus(),window.dispatchEvent(new CustomEvent(Go,{detail:Q})))}})}}if(!N){d(b);return}e(I=>({sessions:I.sessions.map(T=>oe({sessionId:T.sessionId,projectPath:T.projectPath},b)?{...T,taskStatus:h,taskStatusReason:typeof u.properties.taskStatusReason=="string"?u.properties.taskStatusReason:void 0,taskFailure:h==="failed"?fp(u.properties.taskFailure)??T.taskFailure:void 0,taskPromptSummary:typeof u.properties.taskPromptSummary=="string"?u.properties.taskPromptSummary:T.taskPromptSummary,taskStartedAt:typeof u.properties.taskStartedAt=="string"?u.properties.taskStartedAt:h==="queued"?void 0:T.taskStartedAt,taskCompletedAt:typeof u.properties.taskCompletedAt=="string"?u.properties.taskCompletedAt:h==="queued"||h==="running"?void 0:T.taskCompletedAt,taskDiffStat:n5(u.properties.taskDiffStat)??T.taskDiffStat,taskQueuePosition:h==="queued"?vs(u.properties.taskQueuePosition,1)??T.taskQueuePosition:void 0,taskQueueDepth:h==="queued"?vs(u.properties.taskQueueDepth,0)??T.taskQueueDepth:void 0,taskConcurrencyLimit:vs(u.properties.taskConcurrencyLimit,1)??T.taskConcurrencyLimit,lastMessageTime:typeof u.properties.updatedAt=="string"?u.properties.updatedAt:T.lastMessageTime}:T)}))},subscribeToTaskEvents:async()=>{if(r=!0,!t().taskEventUnsubscribe){if(n)return n;e({taskEventsConnected:!1,taskEventConnectionState:"connecting"}),n=(async()=>{try{const u=await X.openTaskEventSubscription(m=>t().handleTaskEvent(m),{onConnectionChange:m=>{e({taskEventsConnected:m})},onConnectionStateChange:m=>{r&&(m==="reconnecting"||m==="offline")&&(s=!0),e({taskEventsConnected:m==="connected",taskEventConnectionState:m}),m==="connected"&&s&&(s=!1,Promise.all([t().loadSessions(),t().loadTaskWorkspaceInfo(),t().loadBoundProjects(),Mt.getState().loadModels()]))}});if(!r||t().taskEventUnsubscribe){u();return}e({taskEventUnsubscribe:u})}catch(u){throw s=!0,e({taskEventsConnected:!1,taskEventConnectionState:"offline"}),u}})();try{await n}finally{n=null}}},reconnectTaskEvents:async()=>{s=!0,t().unsubscribeFromTaskEvents(),await t().subscribeToTaskEvents()},unsubscribeFromTaskEvents:()=>{var u,m;r=!1,(m=(u=t()).taskEventUnsubscribe)==null||m.call(u),e({taskEventUnsubscribe:null,taskEventsConnected:!1,taskEventConnectionState:"offline"})},loadTaskWorkspaceInfo:async()=>{e({isTaskWorkspaceLoading:!0,taskWorkspaceError:null});try{const u=await X.getWorkspaceInfo();e({taskWorkspaceInfo:u,isTaskWorkspaceLoading:!1})}catch(u){e({isTaskWorkspaceLoading:!1,taskWorkspaceError:u instanceof Error?u.message:"Failed to load task workspace"})}},loadBoundProjects:async()=>{try{const u=await X.listProjects(),m=op(),p=u.find(h=>h.available&&h.path===m)??u.find(h=>h.isCurrent)??u.find(h=>h.available);p&&Io(p.path),e({boundProjects:u,selectedProjectPath:(p==null?void 0:p.path)??null})}catch(u){e({error:u instanceof Error?u.message:"Failed to load projects"})}},bindProject:async u=>{e({isBindingProject:!0,error:null});try{const m=await X.bindProject(u);Io(m.path),e(p=>({boundProjects:[...p.boundProjects.filter(h=>h.path!==m.path),m].sort((h,b)=>h.isCurrent!==b.isCurrent?h.isCurrent?-1:1:h.name.localeCompare(b.name)),selectedProjectPath:m.path,isBindingProject:!1}))}catch(m){throw e({isBindingProject:!1,error:m instanceof Error?m.message:"Failed to bind project"}),m}},unbindProject:async u=>{try{await X.unbindProject(u),e(m=>{const p=m.boundProjects.filter(b=>b.path!==u||b.isCurrent),h=m.selectedProjectPath===u?p.find(b=>b.isCurrent)??p.find(b=>b.available):void 0;return h&&Io(h.path),{boundProjects:p,...h?{selectedProjectPath:h.path}:{}}})}catch(m){throw e({error:m instanceof Error?m.message:"Failed to unbind project"}),m}},selectProject:u=>{Io(u),e({selectedProjectPath:u})},markTaskRead:u=>{const m=Me(u);e(p=>{const h=p.unreadTaskKeys.filter(b=>b!==m);return hi(h),{unreadTaskKeys:h}})},clearUnreadTasks:()=>{hi([]),e({unreadTaskKeys:[]})},setTaskAdmissionPaused:async u=>{if(!t().isUpdatingTaskAdmission){e({isUpdatingTaskAdmission:!0,error:null,errorContext:null});try{const m=await X.setTaskAdmissionPaused(u);e(p=>({taskWorkspaceInfo:p.taskWorkspaceInfo?{...p.taskWorkspaceInfo,taskAdmission:m}:p.taskWorkspaceInfo}))}catch(m){throw e({error:m instanceof Error?m.message:"Failed to update task admission",errorContext:{kind:"task_action"}}),m}finally{e({isUpdatingTaskAdmission:!1})}}},updateTask:async(u,m)=>{const p=Me(u);if(!t().updatingTaskKeys.includes(p)){e(h=>({updatingTaskKeys:[...h.updatingTaskKeys,p],error:null,errorContext:null}));try{const h=await X.updateTask(u,m);e(b=>({sessions:hn(b.sessions,h)}))}catch(h){throw e({error:h instanceof Error?h.message:"Failed to update task",errorContext:{kind:"task_action",sessionRef:u}}),h}finally{e(h=>({updatingTaskKeys:h.updatingTaskKeys.filter(b=>b!==p)}))}}},cancelTask:async u=>{const m=Me(u);if(!t().cancellingTaskKeys.includes(m)){e(p=>({cancellingTaskKeys:[...p.cancellingTaskKeys,m],error:null,errorContext:null}));try{await X.abortSession(u);const p=oe(t().currentSessionRef,u);p&&(await t().resyncSessionMessages(u),oe(t().currentSessionRef,u)&&t().unsubscribeFromEvents()),e(h=>({sessions:h.sessions.map(b=>oe(be(b),u)?{...b,taskStatus:"cancelled",taskQueuePosition:void 0,taskQueueDepth:void 0,taskCompletedAt:b.taskCompletedAt??new Date().toISOString()}:b),...p?{isStreaming:!1,isStopping:!1,agentPhase:"idle",providerAdmission:null,providerCircuit:null,providerRetry:null,providerStall:null,actionStationarity:null,turnRecovery:null,currentRunId:null,pendingSteeringCount:0,pendingInputDelivery:null,recoveredSteeringCount:0,currentAssistantMessageId:null,hasToolCalls:!1,eventUnsubscribe:null}:{}}))}catch(p){throw e({error:p instanceof Error?p.message:"Failed to stop task",errorContext:{kind:"task_action",sessionRef:u}}),p}finally{e(p=>({cancellingTaskKeys:p.cancellingTaskKeys.filter(h=>h!==m)}))}}},retryTask:async u=>{const m=Me(u);if(t().retryingTaskKeys.includes(m))return;const p=t().getNavigationVersion(),h=t().selectedProjectPath,b=()=>t().getNavigationVersion()===p&&t().selectedProjectPath===h;e(k=>({retryingTaskKeys:[...k.retryingTaskKeys,m],error:null,errorContext:null}));try{const k=await X.retryTask(u);e(S=>({sessions:hn(S.sessions,k.session)})),t().markTaskRead(u),b()&&await t().selectSession(be(k.session))}catch(k){throw b()&&e({error:k instanceof Error?k.message:"Failed to retry task",errorContext:{kind:"task_action",sessionRef:u}}),k}finally{e(k=>({retryingTaskKeys:k.retryingTaskKeys.filter(S=>S!==m)}))}},deliverTask:async(u,m)=>{const p=Me(u);if(!t().taskDeliveryActions[p]){e(h=>({taskDeliveryActions:{...h.taskDeliveryActions,[p]:m},error:null,errorContext:null}));try{const h=await X.deliverTask(u,m);e(b=>({sessions:hn(b.sessions,h)})),t().markTaskRead(u)}catch(h){throw e({error:h instanceof Error?h.message:"Failed to deliver task changes",errorContext:{kind:"task_action",sessionRef:u}}),h}finally{e(h=>{const{[p]:b,...k}=h.taskDeliveryActions;return{taskDeliveryActions:k}})}}},dispatchTask:async(u,m)=>{const p=t().getNavigationVersion(),h=t().selectedProjectPath,b=u.projectPath??h??void 0,k=()=>t().getNavigationVersion()===p&&t().selectedProjectPath===h;e({isDispatchingTask:!0,error:null,errorContext:null});try{const S=await X.createTask({...u,projectPath:b});e(C=>({sessions:hn(C.sessions,S.session),isDispatchingTask:!1})),(m==null?void 0:m.selectSession)!==!1&&k()&&await t().selectSession(be(S.session))}catch(S){throw e({isDispatchingTask:!1,...k()?{error:S instanceof Error?S.message:"Failed to dispatch task"}:{}}),S}},startCodeReview:async u=>{const m=t().getNavigationVersion(),p=t().selectedProjectPath,h=u.projectPath??p??void 0,b=()=>t().getNavigationVersion()===m&&t().selectedProjectPath===p;e({isDispatchingTask:!0,error:null,errorContext:null});let k,S=!1;try{k=await X.createSession(h,"Code Review");const C=be(k);await X.startCodeReview(C,{kind:u.kind,...u.ref?{ref:u.ref}:{},...u.instructions?{instructions:u.instructions}:{},...u.modelId?{modelId:u.modelId}:{}}),S=!0;const x={...k,taskStatus:"running",taskStatusReason:Ke("taskHome.review.running"),taskPromptSummary:`/review ${u.kind}${u.ref?` ${u.ref}`:""}`};e(N=>({sessions:hn(N.sessions,x),isDispatchingTask:!1})),b()&&await t().selectSession(C)}catch(C){throw k&&!S&&await X.deleteSession(be(k)).catch(()=>{}),e({isDispatchingTask:!1,...b()?{error:C instanceof Error?C.message:Ke("taskHome.review.startFailed")}:{}}),C}}}},i5=e=>({tokenUsage:ci,updateTokenUsage:t=>e(n=>{const{costUsd:r,...s}=t;return{tokenUsage:{...n.tokenUsage,...s,totalInputTokens:n.tokenUsage.totalInputTokens+Math.max(0,t.inputTokens??0),totalOutputTokens:n.tokenUsage.totalOutputTokens+Math.max(0,t.outputTokens??0),cacheReadTokens:n.tokenUsage.cacheReadTokens+Math.max(0,t.cacheReadTokens??0),cacheWriteTokens:n.tokenUsage.cacheWriteTokens+Math.max(0,t.cacheWriteTokens??0),estimatedCostUsd:n.tokenUsage.estimatedCostUsd+Math.max(0,r??0)}}}),resetContextUsage:()=>e(t=>({tokenUsage:{...t.tokenUsage,inputTokens:0,outputTokens:0,totalTokens:0}})),setMaxContextTokens:(t,n=!1)=>e(r=>({tokenUsage:{...r.tokenUsage,maxContextTokens:t,isDefaultMaxTokens:n}}))}),H=Qo()((...e)=>({...QF(...e),...s5(...e),...LF(...e),...YF(...e),...i5(...e)}));function o5(e){const t=new Date(e);return Number.isNaN(t.getTime())?"":t.toLocaleString([],{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"})}function a5({open:e,onOpenChange:t}){const n=Ut(),r=H(j=>j.currentSessionRef),s=H(j=>j.isStreaming),i=H(j=>j.isTemporarySession),o=H(j=>j.rewindSession),[d,f]=y.useState([]),[u,m]=y.useState(null),[p,h]=y.useState(!1),[b,k]=y.useState(!1),[S,C]=y.useState(!1),[x,N]=y.useState(null);y.useEffect(()=>{if(!e||!r)return;let j=!1;return k(!0),N(null),f([]),m(null),h(!1),X.listRewindCheckpoints(r).then(I=>{var T;j||(f(I),m(((T=I[0])==null?void 0:T.messageId)??null))}).catch(I=>{j||N(I instanceof Error?I.message:n("chat.rewind.loadFailed"))}).finally(()=>{j||k(!1)}),()=>{j=!0}},[r,e]);const P=y.useMemo(()=>d.find(j=>j.messageId===u)??null,[d,u]),F=!!P&&!b&&!S&&!s&&!i,D=async()=>{if(!P||!F)return;C(!0),N(null);const j=await o(P.messageId,p?"both":"conversation");C(!1),j?t(!1):N(n("chat.rewind.failed"))};return a.jsx(Jc,{open:e,onOpenChange:t,children:a.jsxs(Zo,{className:"max-w-[620px] gap-0 overflow-hidden border-[#E5E7EB] bg-white p-0 dark:border-zinc-800 dark:bg-[#09090b]",children:[a.jsx(Qc,{className:"border-b border-[#E5E7EB] px-6 py-5 dark:border-zinc-800",children:a.jsxs("div",{className:"flex items-center gap-3",children:[a.jsx("div",{className:"flex h-9 w-9 items-center justify-center rounded-md bg-[#F3F4F6] text-[#4B5563] dark:bg-zinc-800 dark:text-zinc-300",children:a.jsx(gu,{className:"h-4 w-4"})}),a.jsxs("div",{children:[a.jsx(Xo,{className:"text-[15px] font-semibold text-[#111827] dark:text-zinc-100",children:n("chat.rewind.title")}),a.jsx(ea,{className:"mt-1 text-[12px] text-[#6B7280] dark:text-zinc-400",children:n("chat.rewind.description")})]})]})}),a.jsxs("div",{className:"min-h-[260px] px-6 py-4",children:[b&&a.jsxs("div",{className:"flex h-[220px] items-center justify-center text-[#6B7280] dark:text-zinc-400",children:[a.jsx(mt,{className:"mr-2 h-4 w-4 animate-spin"}),a.jsx("span",{className:"text-xs font-mono",children:n("chat.rewind.loading")})]}),!b&&x&&a.jsx("div",{role:"alert",className:"rounded-md border border-rose-200 bg-rose-50 px-4 py-3 text-xs text-rose-700 dark:border-rose-900/60 dark:bg-rose-950/30 dark:text-rose-300",children:x}),!b&&!x&&d.length===0&&a.jsxs("div",{className:"flex h-[220px] flex-col items-center justify-center text-center",children:[a.jsx(gu,{className:"mb-3 h-5 w-5 text-[#9CA3AF] dark:text-zinc-600"}),a.jsx("p",{className:"text-sm text-[#4B5563] dark:text-zinc-300",children:n("chat.rewind.empty")})]}),!b&&d.length>0&&a.jsx("div",{role:"radiogroup","aria-label":n("chat.rewind.checkpointAria"),className:"max-h-[310px] space-y-1 overflow-y-auto",children:d.map(j=>{const I=j.messageId===u;return a.jsxs("button",{type:"button",role:"radio","aria-checked":I,onClick:()=>m(j.messageId),className:J("w-full rounded-md border px-4 py-3 text-left transition-colors",I?"border-[#22C55E] bg-[#F0FDF4] dark:border-[#22C55E] dark:bg-[#052E16]/50":"border-transparent hover:bg-[#F9FAFB] dark:hover:bg-zinc-900"),children:[a.jsxs("div",{className:"flex items-start justify-between gap-4",children:[a.jsx("p",{className:"line-clamp-2 text-[13px] leading-5 text-[#111827] dark:text-zinc-100",children:j.preview||n("chat.rewind.userMessage")}),a.jsx("span",{className:"shrink-0 text-[10px] font-mono text-[#9CA3AF] dark:text-zinc-500",children:o5(j.createdAt)})]}),a.jsxs("div",{className:"mt-2 flex items-center gap-3 text-[10px] font-mono text-[#6B7280] dark:text-zinc-500",children:[a.jsx("span",{children:j.messageId.slice(0,10)}),j.fileCount>0&&a.jsxs("span",{className:"inline-flex items-center gap-1",children:[a.jsx(cy,{className:"h-3 w-3"}),j.fileCount===1?n("chat.rewind.fileCountOne",{count:j.fileCount}):n("chat.rewind.fileCountMany",{count:j.fileCount})]})]})]},j.messageId)})})]}),a.jsx("div",{className:"border-t border-[#E5E7EB] px-6 py-4 dark:border-zinc-800",children:a.jsxs("label",{className:"flex cursor-pointer items-start gap-3",children:[a.jsx("input",{type:"checkbox",checked:p,disabled:!P||P.fileCount===0,onChange:j=>h(j.target.checked),className:"mt-0.5 h-4 w-4 accent-[#16A34A] disabled:opacity-40"}),a.jsxs("span",{children:[a.jsx("span",{className:"block text-[12px] font-medium text-[#374151] dark:text-zinc-200",children:n("chat.rewind.restoreCode")}),a.jsx("span",{className:"mt-0.5 block text-[11px] text-[#6B7280] dark:text-zinc-500",children:n("chat.rewind.restoreCodeHint")})]})]})}),a.jsxs(Kp,{className:"border-t border-[#E5E7EB] px-6 py-4 dark:border-zinc-800",children:[a.jsx(Kr,{variant:"ghost",onClick:()=>t(!1),disabled:S,children:n("chat.rewind.cancel")}),a.jsxs(Kr,{onClick:()=>void D(),disabled:!F,className:"bg-[#16A34A] text-white hover:bg-[#15803D]",children:[S?a.jsx(mt,{className:"mr-2 h-4 w-4 animate-spin"}):a.jsx(Yo,{className:"mr-2 h-4 w-4"}),n("chat.rewind.confirm")]})]})]})})}function Wx({inFlight:e,queued:t,maxConcurrent:n,compact:r=!1,className:s}){const i=Ut(),o=Math.max(1,n),d=Array.from({length:Math.min(o,12)}),f=Math.min(e,o);return a.jsxs("div",{className:J("inline-flex items-center gap-2 font-mono",r?"text-[10.5px]":"text-[11px]",s),title:i("capacity.title",{inFlight:e,queued:t,max:n}),children:[a.jsx("span",{className:J("inline-flex items-center gap-[3px] rounded-sm",r?"px-0":"px-0.5"),children:d.map((u,m)=>{const p=m<f;return a.jsx("span",{className:J("block",r?"h-2.5 w-[3px] rounded-[1px]":"h-3 w-[3px] rounded-[1px]",p?"bg-[hsl(var(--deck-accent))] shadow-[0_0_4px_hsl(var(--deck-accent)/0.65)]":"bg-[hsl(var(--deck-border-strong))]/60")},m)})}),a.jsxs("span",{className:"tabular-nums text-[hsl(var(--deck-ink-muted))]",children:[a.jsx("span",{className:"text-[hsl(var(--deck-ink))]",children:e}),a.jsx("span",{className:"mx-[2px] opacity-40",children:"/"}),a.jsx("span",{children:n}),a.jsx("span",{className:"opacity-60",children:i("capacity.suffix.running")})]}),t>0&&a.jsxs("span",{className:"inline-flex items-center gap-1 rounded-sm border border-amber-300/60 bg-amber-50 px-1.5 py-[1px] text-[10px] text-amber-800 dark:border-amber-800/60 dark:bg-amber-950/40 dark:text-amber-300",children:[a.jsx("span",{className:"h-1 w-1 rounded-full bg-amber-500"}),i("capacity.queued",{queued:t})]})]})}function mp(){const e=document.querySelector("textarea[data-blade-composer]:not(:disabled)");if(!e)return!1;e.focus();const t=e.value.length;return e.setSelectionRange(t,t),!0}const Jx=[{id:"searchTasks",key:"k",primaryModifier:!0,scope:"Global"},{id:"openCommands",key:"p",primaryModifier:!0,shiftKey:!0,scope:"Global"},{id:"newTask",key:"n",primaryModifier:!1,scope:"Global"},{id:"focusComposer",key:"/",primaryModifier:!1,scope:"Chat"},{id:"toggleSidebar",key:"b",primaryModifier:!0,scope:"Layout"}];function c5(e){const t=e.key.toLocaleLowerCase();return Jx.find(n=>{if(n.key!==t||e.altKey||e.shiftKey!==!!n.shiftKey)return!1;const r=e.metaKey||e.ctrlKey;return n.primaryModifier?r:!r})??null}function l5(e){return e instanceof Element?!!e.closest('input, textarea, select, [contenteditable="true"], [role="textbox"], [role="combobox"]'):!1}function d5(e){var r;const t=typeof navigator>"u"?null:navigator,n=((r=t==null?void 0:t.userAgentData)==null?void 0:r.platform)??(t==null?void 0:t.platform)??"";return/mac|iphone|ipad|ipod/i.test(n)}function u5(e,t){const n=e.key==="/"?"/":e.key.toLocaleUpperCase(),r=d5();return[...e.primaryModifier?[r?"⌘":"Ctrl"]:[],...e.shiftKey?[r?"⇧":"Shift"]:[],n]}function Fc(e,t){const n=Jx.find(r=>r.id===e);return n?u5(n).join(""):""}function p5(){const e=on(s=>s.setTaskSwitcherOpen),t=on(s=>s.setMainView),n=on(s=>s.toggleSidebar),r=H(s=>s.startTemporarySession);y.useEffect(()=>{const s=i=>{if(i.repeat)return;const o=c5(i);if(!o)return;const d=on.getState(),f=d.isTaskSwitcherOpen,u=l5(i.target),m=!!document.querySelector('[role="dialog"]');if(o.id==="searchTasks"||o.id==="openCommands"){if(m&&!f)return;i.preventDefault();const p=o.id==="searchTasks"?"tasks":"commands",h=f&&d.taskSwitcherMode===p;e(!h,p);return}if(!(u||m)){if(o.id==="newTask"){i.preventDefault(),t("workspace"),r(),requestAnimationFrame(()=>mp());return}if(o.id==="focusComposer"){mp()&&i.preventDefault();return}o.id==="toggleSidebar"&&(i.preventDefault(),n())}};return window.addEventListener("keydown",s),()=>window.removeEventListener("keydown",s)},[t,e,r,n])}const Wd=y.forwardRef(({className:e,children:t,...n},r)=>a.jsxs(Sp,{ref:r,className:J("overflow-hidden relative",e),...n,children:[a.jsx(U0,{className:"h-full w-full rounded-[inherit] [&>div]:!block !overflow-auto",children:t}),a.jsx(Qx,{}),a.jsx(B0,{})]}));Wd.displayName=Sp.displayName;const Qx=y.forwardRef(({className:e,orientation:t="vertical",...n},r)=>a.jsx(jp,{ref:r,orientation:t,className:J("flex touch-none select-none transition-colors",t==="vertical"&&"h-full w-2.5 border-l border-l-transparent p-[1px]",t==="horizontal"&&"h-2.5 flex-col border-t border-t-transparent p-[1px]",e),...n,children:a.jsx(H0,{className:"relative flex-1 rounded-full bg-border"})}));Qx.displayName=jp.displayName;function gi(e,t){var s;const n=(s=e.title)==null?void 0:s.trim();if(n==="Code Review")return t("session.title.codeReview");if(n)return n;const r=e.firstMessageTime||e.lastMessageTime;if(r){const i=new Date(r);if(!Number.isNaN(i.getTime()))return t("recent.session.fallbackDated",{y:String(i.getFullYear()).slice(-2),m:String(i.getMonth()+1).padStart(2,"0"),d:String(i.getDate()).padStart(2,"0"),hh:String(i.getHours()).padStart(2,"0"),mm:String(i.getMinutes()).padStart(2,"0")})}return t("recent.session.fallbackShort",{id:e.sessionId.slice(0,6)})}async function Yx(e,t=!1){const n=await X.exportSessionMarkdown(e,t),r=new Blob([n.markdown],{type:"text/markdown;charset=utf-8"}),s=URL.createObjectURL(r),i=document.createElement("a");i.href=s,i.download=n.filename,i.hidden=!0,document.body.appendChild(i);try{i.click()}finally{i.remove(),await new Promise(o=>{window.setTimeout(()=>{URL.revokeObjectURL(s),o()},0)})}return n}const Yn=z0,Zn=K0,_n=y.forwardRef(({className:e,align:t="center",sideOffset:n=4,...r},s)=>a.jsx(q0,{children:a.jsx(Ip,{ref:s,align:t,sideOffset:n,className:J("z-50 w-72 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 origin-[--radix-popover-content-transform-origin]",e),...r})}));_n.displayName=Ip.displayName;function f5(){const e=Ut(),t=H(k=>k.archivedSessions),n=H(k=>k.archivedCatalogLoadState),r=H(k=>k.archivedCatalogError),s=H(k=>k.loadArchivedSessions),i=H(k=>k.unarchiveSession),o=H(k=>k.setError),[d,f]=y.useState(!1),[u,m]=y.useState(null),[p,h]=y.useState(null),b=k=>{f(k),k&&s()};return a.jsxs(Yn,{open:d,onOpenChange:b,children:[a.jsx(Zn,{asChild:!0,children:a.jsxs("button",{type:"button",className:"flex h-8 w-full items-center justify-between rounded-md px-2.5 font-mono text-[12.5px] text-[hsl(var(--deck-ink-muted))] transition-colors hover:bg-[hsl(var(--deck-surface))] hover:text-[hsl(var(--deck-ink))] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))]","aria-label":e("archive.open"),children:[a.jsxs("span",{className:"flex items-center gap-2.5",children:[a.jsx(Ep,{className:"h-3.5 w-3.5 text-[hsl(var(--deck-ink-faint))]"}),e("archive.title")]}),t.length>0&&a.jsx("span",{className:"rounded-sm bg-[hsl(var(--deck-surface))] px-1.5 py-0.5 text-[9px] text-[hsl(var(--deck-ink-faint))]",children:t.length})]})}),a.jsxs(_n,{role:"dialog","aria-label":e("archive.title"),side:"right",align:"end",sideOffset:8,className:"w-[340px] overflow-hidden p-0",children:[a.jsxs("div",{className:"flex h-10 items-center justify-between border-b border-[hsl(var(--deck-hairline))] px-3",children:[a.jsxs("div",{children:[a.jsx("div",{className:"font-mono text-[11px] font-medium uppercase tracking-[0.08em] text-[hsl(var(--deck-ink))]",children:e("archive.title")}),a.jsx("div",{className:"text-[9.5px] text-[hsl(var(--deck-ink-faint))]",children:e("archive.subtitle")})]}),a.jsx("button",{type:"button",onClick:()=>void s(),"aria-label":e("archive.refresh"),className:"flex h-6 w-6 items-center justify-center rounded text-[hsl(var(--deck-ink-faint))] hover:bg-[hsl(var(--deck-surface))] hover:text-[hsl(var(--deck-ink))] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))]",children:a.jsx(di,{className:J("h-3 w-3",(n==="loading"||n==="hydrating")&&"animate-spin")})})]}),r?a.jsxs("div",{className:"px-3 py-4 text-[11px] text-red-600 dark:text-red-400",children:[a.jsx("div",{children:r}),a.jsx("button",{type:"button",onClick:()=>void s(),className:"mt-2 font-mono text-[10px] text-[hsl(var(--deck-accent))] focus-visible:outline-none focus-visible:underline",children:e("archive.retry")})]}):t.length===0&&(n==="loading"||n==="hydrating")?a.jsxs("div",{className:"flex h-24 items-center justify-center gap-2 font-mono text-[10px] text-[hsl(var(--deck-ink-faint))]",children:[a.jsx(mt,{className:"h-3 w-3 animate-spin"}),e("archive.loading")]}):t.length===0?a.jsx("div",{className:"flex h-24 items-center justify-center px-6 text-center text-[10.5px] text-[hsl(var(--deck-ink-faint))]",children:e("archive.empty")}):a.jsx(Wd,{className:"max-h-[340px]",children:a.jsx("div",{className:"divide-y divide-[hsl(var(--deck-hairline))]",children:t.map(k=>{var P;const S=be(k),C=Me(S),x=u===C,N=k.projectPath.split("/").filter(Boolean).at(-1)??k.projectPath;return a.jsxs("div",{className:"flex min-h-[58px] items-center gap-2 px-3 py-2",children:[a.jsxs("div",{className:"min-w-0 flex-1",children:[a.jsx("div",{className:"truncate font-mono text-[11.5px] text-[hsl(var(--deck-ink))]",children:gi(k,e)}),a.jsxs("div",{className:"mt-0.5 flex items-center gap-1.5 truncate font-mono text-[9px] text-[hsl(var(--deck-ink-faint))]",children:[a.jsx("span",{className:"truncate",children:N}),k.archivedAt&&a.jsxs(a.Fragment,{children:[a.jsx("span",{"aria-hidden":!0,children:"·"}),a.jsx("span",{children:new Date(k.archivedAt).toLocaleString()})]})]}),k.archivedBySessionId!==k.sessionId&&a.jsx("div",{className:"mt-0.5 truncate text-[9px] text-[hsl(var(--deck-accent))]",children:e("archive.inherited",{id:((P=k.archivedBySessionId)==null?void 0:P.slice(0,8))??""})})]}),a.jsxs("div",{className:"flex shrink-0 items-center gap-0.5",children:[a.jsx("button",{type:"button",disabled:p!==null,onClick:async()=>{h(C);try{await Yx(S)}catch(F){o(F instanceof Error?F.message:"Session export failed")}finally{h(null)}},"aria-label":e("session.action.export",{title:gi(k,e)}),title:e("session.action.exportShort"),className:"flex h-7 w-7 items-center justify-center rounded text-[hsl(var(--deck-ink-faint))] transition-colors hover:bg-[hsl(var(--deck-surface))] hover:text-[hsl(var(--deck-ink))] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))] disabled:cursor-wait disabled:opacity-35",children:p===C?a.jsx(mt,{className:"h-3.5 w-3.5 animate-spin"}):a.jsx(Pp,{className:"h-3.5 w-3.5"})}),a.jsx("button",{type:"button",disabled:x||k.archivedBySessionId!==k.sessionId,onClick:async()=>{m(C);try{await i(S)}finally{m(null)}},"aria-label":e("archive.restore",{title:gi(k,e)}),title:k.archivedBySessionId!==k.sessionId?e("archive.restoreAncestor"):e("archive.restoreShort"),className:"flex h-7 w-7 items-center justify-center rounded text-[hsl(var(--deck-accent))] transition-colors hover:bg-[hsl(var(--deck-accent-soft))] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))] disabled:cursor-not-allowed disabled:opacity-35",children:x?a.jsx(mt,{className:"h-3.5 w-3.5 animate-spin"}):a.jsx(ny,{className:"h-3.5 w-3.5"})})]})]},C)})})})]})]})}function Jd({className:e,size:t=28,pulse:n=!0}){return a.jsxs("span",{className:J("inline-flex relative justify-center items-center","text-[hsl(var(--deck-ink))]",e),style:{width:t,height:t},"aria-hidden":"true",children:[a.jsxs("svg",{viewBox:"0 0 32 32",width:t,height:t,fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[a.jsx("path",{d:"M16 3 L28 16 L16 29 L4 16 Z",stroke:"currentColor",strokeWidth:"1.5",strokeLinejoin:"round"}),a.jsx("path",{d:"M16 8 L24 16 L16 24",stroke:"currentColor",strokeWidth:"1.5",strokeLinejoin:"round",strokeLinecap:"round",opacity:"0.55"}),a.jsx("path",{d:"M16 3 L20 7",stroke:"hsl(var(--deck-accent))",strokeWidth:"2",strokeLinecap:"round"})]}),n&&a.jsx("span",{className:"absolute top-[3px] right-[3px] h-1.5 w-1.5 rounded-full",style:{background:"hsl(var(--deck-accent-glow))",boxShadow:"0 0 6px hsl(var(--deck-accent-glow) / 0.9)"}})]})}const hp={en:"sidebar.language.en",zh:"sidebar.language.zh"};function Zx({className:e,variant:t="pill"}){const{locale:n,setLocale:r}=pw(),s=Ut();if(t==="compact"){const i=n==="en"?"zh":"en";return a.jsx("button",{type:"button",onClick:()=>r(i),"aria-label":s("sidebar.language.aria"),title:s("sidebar.language.label"),className:J("flex justify-center items-center w-10 h-10 font-mono font-medium rounded-md transition-colors text-[11px] text-[hsl(var(--deck-ink-faint))] hover:bg-[hsl(var(--deck-surface))] hover:text-[hsl(var(--deck-ink))]",e),children:s(hp[n])})}return a.jsx("div",{role:"group","aria-label":s("sidebar.language.aria"),className:J("inline-flex h-8 items-center rounded-md border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface))] p-[2px] font-mono text-[11px]",e),children:aw.map(i=>{const o=i===n;return a.jsx("button",{type:"button",onClick:()=>r(i),"aria-pressed":o,className:J("flex justify-center items-center px-2 h-full transition-colors min-w-[28px] rounded-[4px]",o?"bg-[hsl(var(--deck-ink))] text-[hsl(var(--deck-canvas))]":"text-[hsl(var(--deck-ink-muted))] hover:text-[hsl(var(--deck-ink))]"),children:s(hp[i])},i)})})}const m5="[data-mobile-navigation-trigger]";function C3(e){return Xx(m5,e)}function Xx(e,t){const n=document.querySelector(e);return!n||n.getClientRects().length===0?!1:(t.preventDefault(),n.focus({preventScroll:!0}),!0)}function e0({open:e,onOpenChange:t}){const n=Ut(),{boundProjects:r,selectedProjectPath:s,isBindingProject:i,loadBoundProjects:o,bindProject:d,unbindProject:f,selectProject:u,startTemporarySession:m}=H(),[p,h]=y.useState(""),[b,k]=y.useState(null),[S,C]=y.useState(!1),x=y.useRef(0);y.useEffect(()=>{if(e){o();return}x.current+=1,C(!1)},[o,e]);const N=async j=>{await d(j),h(""),m(),t(!1)},P=async j=>{if(j.preventDefault(),!(!p.trim()||i||S)){k(null);try{await N(p.trim())}catch(I){k(I instanceof Error?I.message:n("projects.bind.failed"))}}},F=async()=>{if(S||i)return;const j=++x.current;k(null),C(!0);try{const I=await X.pickProjectDirectory();if(j!==x.current||I.cancelled)return;h(I.path),await N(I.path)}catch(I){if(j!==x.current)return;k(I instanceof Error?I.message:n("projects.pick.failed"))}finally{j===x.current&&C(!1)}},D=j=>{u(j),m(),t(!1)};return e?a.jsx(Jc,{open:e,onOpenChange:t,children:a.jsxs(Zo,{onCloseAutoFocus:j=>Xx("[data-project-setup-trigger]",j),className:"border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-canvas))] text-[hsl(var(--deck-ink))] sm:max-w-xl",children:[a.jsxs(Qc,{children:[a.jsxs(Xo,{className:"flex items-center gap-2 font-mono text-[16px]",children:[a.jsx(Ro,{className:"h-4 w-4 text-[hsl(var(--deck-accent))]"}),n("projects.dialog.title")]}),a.jsx(ea,{className:"text-[12px] text-[hsl(var(--deck-ink-muted))]",children:n("projects.dialog.description")})]}),a.jsxs("form",{onSubmit:P,className:"flex gap-2",children:[a.jsx("input",{value:p,onChange:j=>h(j.target.value),disabled:i,placeholder:n("projects.bind.placeholder"),"aria-label":n("projects.bind.pathLabel"),className:"h-9 min-w-0 flex-1 rounded-md border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface))] px-3 font-mono text-[12px] outline-none placeholder:text-[hsl(var(--deck-ink-faint))] focus:border-[hsl(var(--deck-accent)/0.65)]"}),a.jsxs("button",{type:"button",onClick:()=>void F(),disabled:S||i,title:n("projects.pick.action"),"aria-label":n("projects.pick.action"),className:"inline-flex h-9 shrink-0 items-center gap-2 rounded-md border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface))] px-2.5 font-mono text-[12px] text-[hsl(var(--deck-ink-muted))] transition-colors hover:border-[hsl(var(--deck-border-strong))] hover:text-[hsl(var(--deck-ink))] disabled:cursor-wait disabled:opacity-50",children:[S?a.jsx(mt,{className:"h-3.5 w-3.5 animate-spin"}):a.jsx(ly,{className:"h-3.5 w-3.5"}),a.jsx("span",{className:"hidden sm:inline",children:n(S?"projects.pick.picking":"projects.pick.actionShort")})]}),a.jsxs("button",{type:"submit",disabled:!p.trim()||i||S,className:"inline-flex h-9 items-center gap-2 rounded-md bg-[hsl(var(--deck-ink))] px-3 font-mono text-[12px] text-[hsl(var(--deck-canvas))] transition-opacity disabled:opacity-40",children:[i?a.jsx(mt,{className:"h-3.5 w-3.5 animate-spin"}):a.jsx(Ro,{className:"h-3.5 w-3.5"}),n("projects.bind.action")]})]}),b&&a.jsx("div",{role:"alert",className:"rounded-md border border-red-200 bg-red-50 px-3 py-2 font-mono text-[11px] text-red-700 dark:border-red-900/60 dark:bg-red-950/30 dark:text-red-300",children:b}),a.jsx("div",{className:"max-h-72 space-y-1 overflow-y-auto",children:r.map(j=>{const I=j.path===s;return a.jsxs("div",{className:J("group flex items-center gap-3 rounded-md border px-3 py-2",I?"border-[hsl(var(--deck-accent)/0.55)] bg-[hsl(var(--deck-accent-soft))]":"border-transparent hover:border-[hsl(var(--deck-border))] hover:bg-[hsl(var(--deck-surface))]"),children:[a.jsx(li,{className:J("h-4 w-4 shrink-0",I?"text-[hsl(var(--deck-accent))]":"text-[hsl(var(--deck-ink-faint))]")}),a.jsxs("button",{type:"button",disabled:!j.available,onClick:()=>D(j.path),className:"min-w-0 flex-1 text-left disabled:cursor-not-allowed disabled:opacity-50",children:[a.jsx("span",{className:"block truncate font-mono text-[12px] text-[hsl(var(--deck-ink))]",children:j.name}),a.jsxs("span",{className:"mt-0.5 flex items-center gap-1.5 truncate font-mono text-[10px] text-[hsl(var(--deck-ink-faint))]",children:[j.gitBranch&&a.jsxs(a.Fragment,{children:[a.jsx(zc,{className:"h-2.5 w-2.5"}),a.jsx("span",{children:j.gitBranch}),a.jsx("span",{children:"·"})]}),a.jsx("span",{className:"truncate",children:j.path}),!j.available&&a.jsxs("span",{className:"shrink-0 text-red-500",children:["· ",n("projects.unavailable")]})]})]}),!j.isCurrent&&a.jsx("button",{type:"button",onClick:()=>void f(j.path).catch(()=>{}),title:n("projects.unbind.action"),"aria-label":n("projects.unbind.action"),className:"rounded p-1.5 text-[hsl(var(--deck-ink-faint))] opacity-0 transition group-hover:opacity-100 hover:bg-red-50 hover:text-red-600 focus-visible:opacity-100 dark:hover:bg-red-950/30",children:a.jsx(Fp,{className:"h-3.5 w-3.5"})})]},j.path)})})]})}):null}const h5={running:"bg-blue-500 dark:bg-blue-400 shadow-[0_0_5px_rgba(59,130,246,0.7)] animate-pulse",queued:"bg-amber-400 dark:bg-amber-300",interrupted:"bg-orange-500 dark:bg-orange-400",failed:"bg-red-500 dark:bg-red-400",cancelled:"bg-zinc-400 dark:bg-zinc-500",completed:"bg-[hsl(var(--deck-accent))]"};function g5({session:e,isActive:t,isForking:n,isUnread:r,anyForking:s,isEditing:i,editingTitle:o,title:d,context:f,isCancelling:u,isRetrying:m,isExporting:p,onSelect:h,onCancelTask:b,onRetryTask:k,onFork:S,onArchive:C,onExport:x,onStartRename:N,onDelete:P,onEditingTitleChange:F,onSaveRename:D,onCancelRename:j}){const I=Ut(),[T,M]=y.useState(!1),$=y.useRef(null),te=y.useRef(null);return i?a.jsxs("div",{className:"flex h-9 w-full items-center gap-2 bg-[hsl(var(--deck-surface))] px-3",children:[a.jsx("input",{type:"text",value:o,onChange:O=>F(O.target.value),onKeyDown:O=>{O.key==="Enter"&&D(),O.key==="Escape"&&j()},autoFocus:!0,className:"flex-1 rounded bg-[hsl(var(--deck-canvas))] px-2 py-1 font-mono text-[13px] text-[hsl(var(--deck-ink))] outline-none focus:ring-1 focus:ring-[hsl(var(--deck-accent))]"}),a.jsx("button",{"aria-label":I("session.action.save",{title:d}),onClick:D,className:"flex h-6 w-6 items-center justify-center rounded text-[hsl(var(--deck-accent))] hover:bg-[hsl(var(--deck-canvas))]",children:a.jsx(Tp,{className:"w-3 h-3"})}),a.jsx("button",{"aria-label":I("session.action.cancel",{title:d}),onClick:j,className:"flex h-6 w-6 items-center justify-center rounded text-[hsl(var(--deck-ink-faint))] hover:bg-[hsl(var(--deck-canvas))]",children:a.jsx(ui,{className:"w-3 h-3"})})]}):a.jsxs("div",{className:J("flex relative items-center w-full transition-colors group min-h-[54px]",t?"bg-[hsl(var(--deck-surface))]":"hover:bg-[hsl(var(--deck-surface))]/60"),children:[t&&a.jsx("span",{className:"absolute left-0 top-1/2 h-6 w-[2px] -translate-y-1/2 rounded-r bg-[hsl(var(--deck-accent))]"}),a.jsxs("button",{type:"button","aria-label":I("session.action.select",{title:d}),"aria-current":t?"true":void 0,"aria-busy":n?"true":void 0,onClick:h,className:"flex min-h-[54px] min-w-0 flex-1 cursor-pointer items-center gap-2 py-1.5 pl-4 pr-2 text-left focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-inset focus-visible:ring-[hsl(var(--deck-accent))]",children:[a.jsx("span",{className:J("h-1.5 w-1.5 shrink-0 rounded-full",e.pendingInteraction?"animate-pulse bg-amber-500 shadow-[0_0_5px_rgba(245,158,11,0.75)]":h5[e.taskStatus]),title:e.pendingInteraction?I(e.pendingInteraction.type==="question"?"interaction.badge.question":e.pendingInteraction.type==="elicitation"?"interaction.badge.elicitation":"interaction.badge.permission"):e.taskStatus}),a.jsxs("span",{className:"flex-1 min-w-0 font-mono",children:[a.jsxs("span",{className:J("flex gap-2 items-center text-left truncate text-[12px]",t?"text-[hsl(var(--deck-ink))]":"text-[hsl(var(--deck-ink-muted))]"),children:[a.jsx("span",{className:"truncate",children:d}),r&&a.jsx("span",{title:I("taskSwitcher.new"),className:"h-1.5 w-1.5 shrink-0 rounded-full bg-[hsl(var(--deck-accent))] shadow-[0_0_5px_hsl(var(--deck-accent-glow)/0.75)]"}),e.pendingInteraction&&a.jsxs("span",{className:"inline-flex shrink-0 items-center gap-1 rounded bg-amber-100 px-1.5 py-0.5 text-[8.5px] text-amber-800 dark:bg-amber-950/60 dark:text-amber-300",title:I(e.pendingInteraction.type==="question"?"interaction.badge.question":e.pendingInteraction.type==="elicitation"?"interaction.badge.elicitation":"interaction.badge.permission"),children:[a.jsx(Ns,{className:"h-2.5 w-2.5"}),I(e.pendingInteraction.type==="question"?"interaction.badge.question":e.pendingInteraction.type==="elicitation"?"interaction.badge.elicitation":"interaction.badge.permission")]}),e.relationType==="fork"&&e.parentId&&a.jsxs("span",{title:`${I("session.forkedFrom")} ${e.parentId.slice(0,6)}`,"aria-label":`${I("session.forkedFrom")} ${e.parentId.slice(0,6)}`,className:"shrink-0 text-[9px] text-[hsl(var(--deck-accent))]",children:[I("session.forkedFrom")," ",e.parentId.slice(0,6)]}),e.taskRetriedFrom&&a.jsx("span",{title:`${I("session.retriedFrom")} ${e.taskRetriedFrom.sessionId.slice(0,6)}`,className:"shrink-0 text-[9px] text-[hsl(var(--deck-accent))]",children:I("session.retryShort")})]}),a.jsxs("span",{className:"mt-0.5 flex min-w-0 items-center gap-1.5 truncate text-[9.5px] text-[hsl(var(--deck-ink-faint))]",children:[a.jsx("span",{className:"truncate",children:f.project}),a.jsx("span",{className:"opacity-50",children:"·"}),a.jsx("span",{className:"truncate",children:f.environment}),f.queue&&a.jsxs(a.Fragment,{children:[a.jsx("span",{className:"opacity-50",children:"·"}),a.jsx("span",{className:"text-amber-700 truncate dark:text-amber-400",children:f.queue})]}),f.diff&&a.jsxs(a.Fragment,{children:[a.jsx("span",{className:"opacity-50",children:"·"}),a.jsx("span",{className:"truncate text-[hsl(var(--deck-accent))]",children:f.diff})]})]}),f.reason&&a.jsx("span",{title:f.reason,className:"mt-0.5 block truncate text-[9.5px] text-red-600 dark:text-red-400",children:f.reason})]}),n&&a.jsx(mt,{className:"h-3 w-3 shrink-0 animate-spin text-[hsl(var(--deck-accent))]"})]}),a.jsxs("div",{className:J("flex items-center gap-0.5 pr-2 transition-opacity group-focus-within:opacity-100",e.taskStatus==="running"||e.taskStatus==="queued"||e.taskRetryAvailable&&(e.taskStatus==="failed"||e.taskStatus==="interrupted"||e.taskStatus==="cancelled")?"opacity-100":"opacity-50 group-hover:opacity-100"),children:[(e.taskStatus==="running"||e.taskStatus==="queued")&&a.jsx("button",{type:"button","aria-label":I(u?"session.action.stopping":"session.action.stop",{title:d}),disabled:u,onClick:O=>{O.stopPropagation(),b()},className:"flex h-6 w-6 items-center justify-center rounded text-red-500 transition-colors hover:bg-red-500/10 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-red-500 disabled:cursor-wait disabled:opacity-60",children:u?a.jsx(mt,{className:"h-3 w-3 animate-spin"}):a.jsx(Vc,{className:"h-3 w-3"})}),e.taskRetryAvailable&&(e.taskStatus==="failed"||e.taskStatus==="interrupted"||e.taskStatus==="cancelled")&&a.jsx("button",{ref:$,type:"button","aria-label":I(m?"session.action.retrying":"session.action.retry",{title:d}),disabled:m,onClick:O=>{O.stopPropagation(),k()},className:"flex h-6 w-6 items-center justify-center rounded text-[hsl(var(--deck-accent))] transition-colors hover:bg-[hsl(var(--deck-accent-soft))] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))] disabled:cursor-wait disabled:opacity-60",children:m?a.jsx(mt,{className:"h-3 w-3 animate-spin"}):a.jsx(Yo,{className:"h-3 w-3"})}),a.jsxs(Yn,{open:T,onOpenChange:M,children:[a.jsx(Zn,{asChild:!0,children:a.jsx("button",{type:"button","aria-label":I("session.action.more",{title:d}),"aria-expanded":T,className:"flex h-6 w-6 items-center justify-center rounded text-[hsl(var(--deck-ink-faint))] transition-colors hover:bg-[hsl(var(--deck-canvas))] hover:text-[hsl(var(--deck-ink))] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))]",children:a.jsx(by,{className:"h-3.5 w-3.5"})})}),a.jsxs(_n,{ref:te,role:"menu","aria-label":I("session.action.more",{title:d}),side:"right",align:"start",sideOffset:6,className:"w-40 p-1",onOpenAutoFocus:O=>{var Q,ae;O.preventDefault(),(ae=(Q=te.current)==null?void 0:Q.querySelector('[role="menuitem"]:not([disabled])'))==null||ae.focus()},onKeyDown:O=>{O.key==="Escape"&&(O.preventDefault(),O.stopPropagation(),M(!1),window.setTimeout(()=>{var Q;return(Q=$.current)==null?void 0:Q.focus()},0))},children:[a.jsxs("button",{type:"button",role:"menuitem","aria-label":I("session.action.fork",{title:d}),disabled:s,onClick:O=>{O.stopPropagation(),S(),M(!1)},className:"flex w-full items-center gap-2 rounded px-2 py-1.5 text-left font-mono text-[11px] text-[hsl(var(--deck-ink-muted))] transition-colors hover:bg-[hsl(var(--deck-surface))] hover:text-[hsl(var(--deck-ink))] focus-visible:bg-[hsl(var(--deck-surface))] focus-visible:text-[hsl(var(--deck-ink))] focus-visible:outline-none disabled:cursor-not-allowed disabled:opacity-45",children:[a.jsx(dy,{className:"h-3 w-3","aria-hidden":!0}),I("session.action.forkShort")]}),a.jsxs("button",{type:"button",role:"menuitem","aria-label":I("session.action.rename",{title:d}),onClick:O=>{N(O),M(!1)},className:"flex w-full items-center gap-2 rounded px-2 py-1.5 text-left font-mono text-[11px] text-[hsl(var(--deck-ink-muted))] transition-colors hover:bg-[hsl(var(--deck-surface))] hover:text-[hsl(var(--deck-ink))] focus-visible:bg-[hsl(var(--deck-surface))] focus-visible:text-[hsl(var(--deck-ink))] focus-visible:outline-none",children:[a.jsx(xy,{className:"h-3 w-3","aria-hidden":!0}),I("session.action.renameShort")]}),a.jsxs("button",{type:"button",role:"menuitem","aria-label":I("session.action.archive",{title:d}),disabled:e.taskStatus==="running"||e.taskStatus==="queued",onClick:O=>{O.stopPropagation(),C(),M(!1)},className:"flex w-full items-center gap-2 rounded px-2 py-1.5 text-left font-mono text-[11px] text-[hsl(var(--deck-ink-muted))] transition-colors hover:bg-[hsl(var(--deck-surface))] hover:text-[hsl(var(--deck-ink))] focus-visible:bg-[hsl(var(--deck-surface))] focus-visible:text-[hsl(var(--deck-ink))] focus-visible:outline-none disabled:cursor-not-allowed disabled:opacity-35",children:[a.jsx(Ep,{className:"h-3 w-3","aria-hidden":!0}),I("session.action.archiveShort")]}),a.jsxs("button",{type:"button",role:"menuitem","aria-label":I("session.action.export",{title:d}),disabled:p,onClick:O=>{O.stopPropagation(),x(),M(!1)},className:"flex w-full items-center gap-2 rounded px-2 py-1.5 text-left font-mono text-[11px] text-[hsl(var(--deck-ink-muted))] transition-colors hover:bg-[hsl(var(--deck-surface))] hover:text-[hsl(var(--deck-ink))] focus-visible:bg-[hsl(var(--deck-surface))] focus-visible:text-[hsl(var(--deck-ink))] focus-visible:outline-none disabled:cursor-wait disabled:opacity-45",children:[p?a.jsx(mt,{className:"h-3 w-3 animate-spin","aria-hidden":!0}):a.jsx(Pp,{className:"h-3 w-3","aria-hidden":!0}),I(p?"session.action.exportingShort":"session.action.exportShort")]}),a.jsxs("button",{type:"button",role:"menuitem","aria-label":I("session.action.delete",{title:d}),onClick:O=>{P(O),M(!1)},className:"flex w-full items-center gap-2 rounded px-2 py-1.5 text-left font-mono text-[11px] text-red-600 transition-colors hover:bg-red-500/10 focus-visible:bg-red-500/10 focus-visible:outline-none dark:text-red-400",children:[a.jsx(Fp,{className:"h-3 w-3","aria-hidden":!0}),I("session.action.deleteShort")]})]})]})]})]})}function b5({onExpand:e,onNewChat:t,onOpenBoard:n,onOpenTaskSwitcher:r,onToggleTerminal:s,onToggleSettings:i,isTerminalOpen:o,taskEventsConnected:d,unreadCount:f,boardActive:u,className:m}){const p=Ut(),h=[{icon:Op,action:i,labelKey:"sidebar.section.settings"}];return a.jsxs("div",{className:J("flex flex-col gap-2 items-center py-5 h-screen border-r w-[64px] border-[hsl(var(--deck-hairline))] bg-[hsl(var(--deck-canvas-veil))]",m),children:[a.jsx("button",{onClick:e,className:"rounded-md p-1 transition-colors hover:bg-[hsl(var(--deck-surface))]","aria-label":p("sidebar.action.expand"),children:a.jsx(Jd,{size:28})}),a.jsx("button",{onClick:t,"aria-label":p("sidebar.action.newTaskShort"),title:p("sidebar.action.newTaskShort"),className:"mt-6 flex h-10 w-10 items-center justify-center rounded-md bg-[hsl(var(--deck-ink))] text-[hsl(var(--deck-canvas))] transition-colors hover:bg-[hsl(var(--deck-ink))]/85",children:a.jsx(Kc,{className:"h-4 w-4 stroke-[2.5]"})}),a.jsx("button",{type:"button",onClick:n,"aria-label":p("sidebar.action.taskBoard"),"aria-current":u?"page":void 0,title:p("sidebar.action.taskBoard"),className:J("flex h-10 w-10 items-center justify-center rounded-md border transition-colors",u?"border-[hsl(var(--deck-accent)/0.55)] bg-[hsl(var(--deck-accent-soft))] text-[hsl(var(--deck-accent))]":"border-transparent text-[hsl(var(--deck-ink-muted))] hover:bg-[hsl(var(--deck-surface))] hover:text-[hsl(var(--deck-ink))]"),children:a.jsx(Np,{className:"h-4 w-4"})}),a.jsx("button",{onClick:s,"aria-label":p("sidebar.action.terminalToggle"),title:p("sidebar.action.terminal"),className:J("flex h-10 w-10 items-center justify-center rounded-md border transition-colors",o?"border-[hsl(var(--deck-accent)/0.55)] bg-[hsl(var(--deck-accent-soft))] text-[hsl(var(--deck-accent))]":"border-transparent text-[hsl(var(--deck-ink-muted))] hover:bg-[hsl(var(--deck-surface))] hover:text-[hsl(var(--deck-ink))]"),children:a.jsx($p,{className:"w-4 h-4"})}),a.jsxs("button",{onClick:r,"aria-label":p("sidebar.action.searchTasks"),title:`${p("sidebar.action.searchTasks")} (${Fc("searchTasks")})`,className:"relative flex h-10 w-10 items-center justify-center rounded-md border border-transparent text-[hsl(var(--deck-ink-muted))] transition-colors hover:bg-[hsl(var(--deck-surface))] hover:text-[hsl(var(--deck-ink))]",children:[a.jsx(Gc,{className:"h-4 w-4"}),f>0&&a.jsx("span",{"aria-label":p("sidebar.unreadTasks",{count:f}),className:"absolute right-0.5 top-0.5 flex min-h-4 min-w-4 items-center justify-center rounded-full bg-[hsl(var(--deck-accent))] px-1 font-mono text-[8px] font-semibold text-white",children:f>99?"99+":f})]}),a.jsx("div",{className:"flex-1"}),a.jsx("div",{className:"my-2 h-px w-6 bg-[hsl(var(--deck-hairline))]"}),h.map(({icon:b,action:k,labelKey:S})=>a.jsx("button",{"data-settings-trigger":!0,onClick:k,"aria-label":p(S),title:p(S),className:"flex h-10 w-10 items-center justify-center rounded-md text-[hsl(var(--deck-ink-faint))] transition-colors hover:bg-[hsl(var(--deck-surface))] hover:text-[hsl(var(--deck-ink))]",children:a.jsx(b,{className:"w-4 h-4"})},S)),a.jsx(Zx,{variant:"compact"}),a.jsx("div",{className:"mt-1",children:a.jsx("div",{role:"status","aria-label":p(d?"sidebar.status.feedLive":"sidebar.status.feedOffline"),className:J("h-2 w-2 rounded-full",d?"bg-[hsl(var(--deck-accent))] shadow-[0_0_6px_hsl(var(--deck-accent-glow)/0.9)]":"bg-[hsl(var(--deck-ink-faint))]/60"),title:p(d?"sidebar.status.feedLive":"sidebar.status.feedOffline")})})]})}const t0="blade.sidebar.project-order.v1";function uo(e){const t=new Set,n=[];for(const r of e)typeof r!="string"||!r||t.has(r)||(t.add(r),n.push(r));return n}function k5(){if(typeof window>"u")return[];try{const e=JSON.parse(window.localStorage.getItem(t0)??"[]");return Array.isArray(e)?uo(e):[]}catch{return[]}}function x5(e){if(!(typeof window>"u"))try{window.localStorage.setItem(t0,JSON.stringify(uo(e)))}catch{}}function y5(e,t){const n=new Map(uo(t).map((s,i)=>[s,i])),r=n.size;return e.map((s,i)=>({project:s,rank:n.get(s.path)??r+i})).sort((s,i)=>s.rank-i.rank).map(({project:s})=>s)}function w5(e,t,n){const r=uo(e),s=r.indexOf(t),i=r.indexOf(n);if(s<0||i<0||s===i)return r;const[o]=r.splice(s,1);return r.splice(i,0,o),r}function v5(e,t,n){const r=uo(e),s=r.indexOf(t),i=s+n;return s<0||i<0||i>=r.length||([r[s],r[i]]=[r[i],r[s]]),r}function S5({name:e,path:t,count:n,countIsPartial:r=!1,isActive:s,hasRunning:i,unreadCount:o,collapsed:d,onToggle:f,onSelect:u,onCreateTask:m,reorderPosition:p,reorderCount:h,isDragging:b=!1,onDragStart:k,onDragEnd:S,onReorderKeyDown:C}){const x=Ut();return a.jsxs("div",{className:J("group/proj flex w-full items-center gap-2 px-5 pb-1.5 pt-3 text-left transition-colors","hover:bg-[hsl(var(--deck-surface))]/40"),children:[a.jsx("button",{type:"button",draggable:!0,"data-project-drag-handle":t,onDragStart:k,onDragEnd:S,onKeyDown:C,"aria-label":x("sidebar.project.reorder",{name:e,position:p,count:h}),title:x("sidebar.project.reorderHint"),className:J("-ml-2 flex h-6 w-4 shrink-0 cursor-grab items-center justify-center rounded-sm text-[hsl(var(--deck-ink-faint))] opacity-45 transition-[opacity,color,background-color] hover:bg-[hsl(var(--deck-surface-2))] hover:text-[hsl(var(--deck-ink-muted))] hover:opacity-100 focus-visible:opacity-100 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))] active:cursor-grabbing group-hover/proj:opacity-100",b&&"cursor-grabbing opacity-100 text-[hsl(var(--deck-accent))]"),children:a.jsx(uy,{className:"h-3.5 w-3.5"})}),a.jsx("button",{type:"button",onClick:f,"aria-expanded":!d,"aria-label":x(d?"sidebar.project.expand":"sidebar.project.collapse",{name:e}),className:"flex h-6 w-6 shrink-0 items-center justify-center rounded-sm focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))]",children:a.jsx(oy,{className:J("h-3 w-3 text-[hsl(var(--deck-ink-faint))] transition-transform duration-150",!d&&"rotate-90")})}),a.jsxs("button",{type:"button",onClick:u??f,title:t,"aria-current":s?"true":void 0,className:"flex min-h-6 min-w-0 flex-1 items-center gap-2 rounded-sm text-left focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))]",children:[a.jsx(li,{className:J("h-3.5 w-3.5 shrink-0",s?"text-[hsl(var(--deck-accent))]":"text-[hsl(var(--deck-ink-faint))]")}),a.jsx("span",{className:J("flex-1 truncate font-mono text-[11.5px] font-medium tracking-[-0.01em]",s?"text-[hsl(var(--deck-ink))]":"text-[hsl(var(--deck-ink-muted))]"),children:e}),i&&a.jsx("span",{className:"h-1.5 w-1.5 shrink-0 rounded-full bg-blue-500 shadow-[0_0_5px_rgba(59,130,246,0.7)] animate-pulse dark:bg-blue-400","aria-hidden":!0}),o>0&&a.jsx("span",{"aria-label":x("sidebar.unreadTasks",{count:o}),className:"shrink-0 rounded-full bg-[hsl(var(--deck-accent))] px-1.5 py-0.5 font-mono text-[8px] font-semibold text-white",children:o}),a.jsxs("span",{className:"shrink-0 font-mono text-[10px] text-[hsl(var(--deck-ink-faint))]",children:[n.toString().padStart(2,"0"),r?"+":""]})]}),m&&a.jsx("button",{type:"button",onClick:m,title:x("sidebar.project.newTask",{name:e}),"aria-label":x("sidebar.project.newTask",{name:e}),className:"flex h-6 w-6 shrink-0 items-center justify-center rounded-sm text-[hsl(var(--deck-ink-faint))] opacity-0 transition-[opacity,color,background-color] hover:bg-[hsl(var(--deck-surface-2))] hover:text-[hsl(var(--deck-accent))] focus-visible:opacity-100 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))] group-hover/proj:opacity-100",children:a.jsx(Kc,{className:"h-3.5 w-3.5"})})]})}function Lc(e){const t=e.lastMessageTime||e.firstMessageTime;if(!t)return 0;const n=new Date(t).getTime();return Number.isNaN(n)?0:n}function gp(e){return e.pendingInteraction?0:e.taskStatus==="running"?1:e.taskStatus==="queued"?2:3}function Qd(e,t){return gp(e)-gp(t)||Lc(t)-Lc(e)}const j5=["running","queued","interrupted","failed","cancelled","completed"],I5={running:"RUNNING",queued:"QUEUED",interrupted:"INTERRUPTED",failed:"FAILED",cancelled:"CANCELLED",completed:"DONE"},Ss=e=>e.length>1?e.replace(/\/+$/,""):e;function n0(e){const t=new Map;for(const n of e){if(!n)continue;const r=Me(be(n));t.has(r)||t.set(r,n)}return Array.from(t.values())}function C5(e){const t=n0(e),n=[];for(const r of j5){const s=t.filter(i=>i.taskStatus===r).sort(Qd);s.length>0&&n.push({code:I5[r],status:r,sessions:s})}return n}function E5(e,t,n=[]){const r=n0(e),s=new Map,i=n.map(Ss),o=new Map(i.map((u,m)=>[u,m]));for(const u of i)s.set(u,[]);for(const u of r){const m=lo(u,t),p=s.get(m);p?p.push(u):s.set(m,[u])}const d=t?Ss(t):null,f=Array.from(s.entries()).map(([u,m])=>{const p=[...m].sort(Qd),h=m.reduce((b,k)=>Math.max(b,Lc(k)),0);return{path:u,name:Mc(u),isActive:d?Ss(u)===d:!1,isBound:o.has(Ss(u)),hasRunning:m.some(b=>b.taskStatus==="running"),lastActivity:h,sessions:p}});return f.sort((u,m)=>u.isBound!==m.isBound?u.isBound?-1:1:u.isBound&&m.isBound?(o.get(Ss(u.path))??Number.MAX_SAFE_INTEGER)-(o.get(Ss(m.path))??Number.MAX_SAFE_INTEGER):m.lastActivity-u.lastActivity),f}const bp=12,T5={RUNNING:"sidebar.group.running",QUEUED:"sidebar.group.queued",INTERRUPTED:"sidebar.group.interrupted",FAILED:"sidebar.group.failed",CANCELLED:"sidebar.group.cancelled",DONE:"sidebar.group.done"},A5={RUNNING:"text-blue-700 dark:text-blue-400",QUEUED:"text-amber-700 dark:text-amber-400",INTERRUPTED:"text-orange-700 dark:text-orange-400",FAILED:"text-red-700 dark:text-red-400",CANCELLED:"text-[hsl(var(--deck-ink-faint))]",DONE:"text-[hsl(var(--deck-accent))]"};function P5({view:e,sessions:t,activeProjectPath:n,boundProjects:r,currentSessionRef:s,unreadTaskKeys:i,catalogLoadState:o,catalogError:d,onSelectProject:f,onCreateTask:u,onRetryCatalog:m,renderRow:p}){const h=Ut(),[b,k]=y.useState({}),[S,C]=y.useState({}),[x,N]=y.useState(k5),[P,F]=y.useState(null),[D,j]=y.useState(null),[I,T]=y.useState(""),M=o==="loading"||o==="hydrating",$=M||o==="error",te=y.useMemo(()=>e==="status"?C5(t):[],[t,e]),O=y.useMemo(()=>e==="project"?E5(t,n,r.map(R=>R.path)):[],[n,r,t,e]),Q=y.useMemo(()=>y5(O,x),[O,x]),ae=(R,ce)=>{const ve=S[R]??!1,He=ve?ce:ce.filter((tt,Z)=>{if(Z<bp)return!0;const pt=be(tt);return!!tt.pendingInteraction||i.includes(Me(pt))||!!(s&&oe(pt,s))}),yt=ce.length-He.length,We=ve?ce.length>bp:yt>0;return a.jsxs(a.Fragment,{children:[He.map(p),We&&a.jsx("button",{type:"button",onClick:()=>C(tt=>({...tt,[R]:!ve})),className:"mx-4 my-1 rounded-md px-3 py-1.5 text-left font-mono text-[10.5px] text-[hsl(var(--deck-ink-faint))] transition-colors hover:bg-[hsl(var(--deck-surface))] hover:text-[hsl(var(--deck-ink-muted))]",children:ve?h("sidebar.group.showLess"):h("sidebar.group.showMore",{count:yt})})]})},le=M?a.jsxs("div",{role:"status","aria-live":"polite",className:"mx-4 mt-2 flex items-center gap-2 rounded-md bg-[hsl(var(--deck-surface))]/55 px-3 py-2 font-mono text-[9.5px] text-[hsl(var(--deck-ink-faint))]",children:[a.jsx(mt,{className:"h-3 w-3 shrink-0 animate-spin text-[hsl(var(--deck-accent))]"}),a.jsx("span",{className:"flex-1 min-w-0",children:h("sidebar.catalog.syncing")}),a.jsx("span",{className:"tabular-nums shrink-0",children:h("sidebar.catalog.loaded",{count:t.length})})]}):o==="error"?a.jsxs("div",{role:"alert",title:d??void 0,className:"mx-4 mt-2 flex items-center gap-2 rounded-md bg-amber-50/80 px-3 py-2 font-mono text-[9.5px] text-amber-800 dark:bg-amber-950/35 dark:text-amber-300",children:[a.jsx(Ns,{className:"w-3 h-3 shrink-0"}),a.jsx("span",{className:"flex-1 min-w-0",children:h("sidebar.catalog.incomplete")}),a.jsxs("button",{type:"button",onClick:m,className:"inline-flex min-h-6 shrink-0 items-center gap-1 rounded px-1.5 font-medium hover:bg-amber-100 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-amber-500 dark:hover:bg-amber-900/50",children:[a.jsx(di,{className:"h-2.5 w-2.5"}),h("sidebar.catalog.retry")]})]}):null;if(e==="status")return a.jsxs("div",{className:"flex flex-col",children:[le,te.map((R,ce)=>a.jsxs("div",{children:[a.jsxs("div",{className:J("flex items-center justify-between px-5 pb-2 pt-3 font-mono text-[10px] tracking-[0.16em]",A5[R.code]??"text-[hsl(var(--deck-ink-faint))]",ce===0&&"pt-2"),children:[a.jsx("span",{children:h(T5[R.code])}),a.jsxs("span",{className:"text-[hsl(var(--deck-ink-faint))]",children:[R.sessions.length.toString().padStart(2,"0"),$?"+":""]})]}),ae(`status:${R.code}`,R.sessions)]},R.code))]});const de=Q.some(R=>R.isActive),me=R=>!!(s&&R.sessions.some(ce=>oe(be(ce),s))),Y=(R,ce)=>{if(R.join("\0")===Q.map(He=>He.path).join("\0"))return;N(R),x5(R);const ve=Q.find(He=>He.path===ce);T(h("sidebar.project.reordered",{name:(ve==null?void 0:ve.name)??ce,position:R.indexOf(ce)+1}))},he=(R,ce)=>{const ve=R.sessions.filter(Z=>i.includes(Me(be(Z)))).length,He=me(R),yt=ve>0,We=R.sessions.some(Z=>!!Z.pendingInteraction),tt=b[R.path]??(de&&!R.isActive&&!(He||R.hasRunning||yt||We));return a.jsxs("div",{"data-project-group":R.path,onDragEnter:Z=>{!P||P===R.path||(Z.preventDefault(),j(R.path))},onDragOver:Z=>{!P||P===R.path||(Z.preventDefault(),Z.dataTransfer.dropEffect="move")},onDrop:Z=>{Z.preventDefault();const pt=P||Z.dataTransfer.getData("text/plain");pt&&pt!==R.path&&Y(w5(Q.map(L=>L.path),pt,R.path),pt),F(null),j(null)},className:J("relative transition-colors",D===R.path&&P!==R.path&&"bg-[hsl(var(--deck-accent-soft))]/55 before:absolute before:inset-y-1 before:left-0 before:w-0.5 before:rounded-full before:bg-[hsl(var(--deck-accent))]"),children:[a.jsx(S5,{name:R.name,path:R.path,count:R.sessions.length,countIsPartial:$,isActive:R.isActive,hasRunning:R.hasRunning,unreadCount:ve,collapsed:tt,onSelect:()=>f(R.path),onCreateTask:()=>u(R.path),reorderPosition:ce+1,reorderCount:Q.length,isDragging:P===R.path,onDragStart:Z=>{Z.dataTransfer.effectAllowed="move",Z.dataTransfer.setData("text/plain",R.path),F(R.path)},onDragEnd:()=>{F(null),j(null)},onReorderKeyDown:Z=>{if(Z.key!=="ArrowUp"&&Z.key!=="ArrowDown")return;Z.preventDefault();const pt=v5(Q.map(L=>L.path),R.path,Z.key==="ArrowUp"?-1:1);Y(pt,R.path)},onToggle:()=>k(Z=>({...Z,[R.path]:!tt}))}),!tt&&ae(`project:${R.path}`,R.sessions)]},R.path)};return a.jsxs("div",{className:"flex flex-col",children:[a.jsx("span",{className:"sr-only","aria-live":"polite",children:I}),le,Q.length>0&&a.jsxs(a.Fragment,{children:[a.jsx("div",{className:"px-5 pb-0.5 pt-2 font-mono text-[9px] uppercase tracking-[0.16em] text-[hsl(var(--deck-ink-faint))]",children:h("sidebar.project.projects")}),Q.map(he)]})]})}function N5({className:e,onNavigate:t}){const n=Ut(),{toggleSettings:r,toggleSidebar:s,isSidebarOpen:i,isTerminalOpen:o,toggleTerminal:d,sidebarView:f,setSidebarView:u,setTaskSwitcherOpen:m,mainView:p,setMainView:h,setBoardProjectPath:b,setFilePreviewOpen:k}=on(),S=H(A=>A.sessions),C=H(A=>A.catalogLoadState),x=H(A=>A.catalogError),N=H(A=>A.currentSessionRef),P=H(A=>A.forkingSessionRef),F=H(A=>A.selectSession),D=H(A=>A.startTemporarySession),j=H(A=>A.deleteSession),I=H(A=>A.archiveSession),T=H(A=>A.forkSession),M=H(A=>A.updateSession),$=H(A=>A.loadSessions),te=H(A=>A.setError),O=H(A=>A.taskEventsConnected),Q=H(A=>A.taskWorkspaceInfo),ae=H(A=>A.boundProjects),le=H(A=>A.selectedProjectPath),de=H(A=>A.bindProject),me=H(A=>A.selectProject),Y=H(A=>A.cancelTask),he=H(A=>A.cancellingTaskKeys),R=H(A=>A.retryTask),ce=H(A=>A.retryingTaskKeys),ve=H(A=>A.unreadTaskKeys),[He,yt]=y.useState(null),[We,tt]=y.useState(""),[Z,pt]=y.useState(null),[L,B]=y.useState(!1),Se=le??(Q==null?void 0:Q.cwd)??null,qe=A=>gi(A,n),Pe=A=>{const Ee=A.taskSourceProjectPath||A.projectPath,en=Ee.split("/").filter(Boolean).at(-1)||Ee,pr=A.taskIsolation==="worktree"?A.taskWorktreeBranch||n("session.env.worktree"):n("session.env.local"),fr=A.taskDiffStat?`+${A.taskDiffStat.additions} −${A.taskDiffStat.deletions}`:void 0,bs=A.taskStatus==="queued"&&A.taskQueuePosition?n("session.queued",{position:A.taskQueuePosition,depth:A.taskQueueDepth??A.taskQueuePosition}):void 0,ks=Vd(A,n);return{project:en,environment:pr,diff:fr,queue:bs,reason:ks}},Jt=()=>{h("workspace"),D(Se??void 0),t==null||t()},et=()=>{k(!1),b(Se),h("board"),t==null||t()},Ht=async A=>{ae.some(Ee=>Ee.path===A)?me(A):await de(A),h("workspace"),D(A),t==null||t()},Qt=async A=>{ae.some(Ee=>Ee.path===A)?me(A):await de(A),h("workspace"),D(A),t==null||t()},bt=A=>{A(),t==null||t()},_=async(A,Ee)=>{A.stopPropagation(),await j(be(Ee))},Re=async A=>{const Ee=be(A),en=Me(Ee);if(!Z){pt(en);try{await Yx(Ee)}catch(pr){te(pr instanceof Error?pr.message:"Session export failed")}finally{pt(null)}}},wt=(A,Ee)=>{A.stopPropagation(),yt(Me(be(Ee))),tt(qe(Ee))},qt=async A=>{if(!We.trim()){yt(null);return}try{await M(be(A),We.trim()),yt(null),await $()}catch(Ee){console.error("Failed to rename session:",Ee)}},Lr=()=>{yt(null),tt("")};return i?a.jsxs("div",{className:J("flex flex-col h-screen border-r w-[260px] border-[hsl(var(--deck-hairline))] bg-[hsl(var(--deck-canvas-veil))]",e),children:[a.jsxs("div",{className:"flex flex-col gap-6 px-5 pt-5 pb-5",children:[a.jsxs("div",{className:"flex justify-between items-center",children:[a.jsxs("div",{className:"flex items-center gap-2.5",children:[a.jsx(Jd,{size:26}),a.jsx("span",{className:"font-mono text-[15px] font-semibold tracking-[-0.01em] text-[hsl(var(--deck-ink))]",children:"Blade"}),a.jsx("span",{className:"ml-1 rounded-sm border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface))] px-1 py-[1px] font-mono text-[9px] text-[hsl(var(--deck-ink-faint))]",children:n("sidebar.brand.badge")})]}),a.jsx("button",{onClick:s,"aria-label":n("sidebar.action.collapse"),className:"flex h-8 w-8 items-center justify-center rounded transition-colors hover:bg-[hsl(var(--deck-surface))]",children:a.jsx(iy,{className:"h-3 w-3 text-[hsl(var(--deck-ink-muted))]"})})]}),a.jsxs("div",{className:"flex flex-col gap-1.5",children:[a.jsxs("button",{onClick:Jt,className:"flex h-9 w-full items-center justify-between rounded-md bg-[hsl(var(--deck-ink))] px-3 font-mono text-[13px] font-medium text-[hsl(var(--deck-canvas))] transition-colors hover:bg-[hsl(var(--deck-ink))]/88",children:[a.jsxs("span",{className:"flex gap-2 items-center",children:[a.jsx(Kc,{className:"h-3.5 w-3.5 stroke-[2.5]"}),n("sidebar.action.newTask")]}),a.jsx("span",{className:"rounded-sm bg-white/10 px-1.5 py-[1px] font-mono text-[10px] text-white/80",children:Fc("newTask")})]}),a.jsxs("button",{type:"button",onClick:et,"aria-current":p==="board"?"page":void 0,className:J("flex h-9 w-full items-center gap-2 rounded-md border px-3 font-mono text-[12.5px] transition-colors",p==="board"?"border-[hsl(var(--deck-accent)/0.45)] bg-[hsl(var(--deck-accent-soft))] text-[hsl(var(--deck-accent))]":"border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface))] text-[hsl(var(--deck-ink-muted))] hover:border-[hsl(var(--deck-border-strong))] hover:text-[hsl(var(--deck-ink))]"),children:[a.jsx(Np,{className:"h-3.5 w-3.5"}),n("sidebar.action.taskBoard")]}),a.jsxs("button",{onClick:()=>bt(d),className:J("flex h-9 w-full items-center gap-2 rounded-md border px-3 font-mono text-[12.5px] transition-colors",o?"border-[hsl(var(--deck-accent)/0.55)] bg-[hsl(var(--deck-accent-soft))] text-[hsl(var(--deck-accent))]":"border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface))] text-[hsl(var(--deck-ink-muted))] hover:border-[hsl(var(--deck-border-strong))] hover:text-[hsl(var(--deck-ink))]"),children:[a.jsx($p,{className:"h-3.5 w-3.5"}),n("sidebar.action.terminal")]}),a.jsxs("button",{type:"button",onClick:()=>bt(()=>m(!0)),className:"flex h-9 w-full items-center justify-between rounded-md border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface))] px-3 font-mono text-[12.5px] text-[hsl(var(--deck-ink-muted))] transition-colors hover:border-[hsl(var(--deck-border-strong))] hover:text-[hsl(var(--deck-ink))]",children:[a.jsxs("span",{className:"flex items-center gap-2",children:[a.jsx(Gc,{className:"h-3.5 w-3.5"}),n("sidebar.action.searchTasks")]}),a.jsx("span",{className:"rounded-sm border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-canvas))] px-1.5 py-[1px] font-mono text-[9px] text-[hsl(var(--deck-ink-faint))]",children:ve.length>0?ve.length:Fc("searchTasks")})]})]}),a.jsxs("div",{className:"flex items-center gap-1",children:[a.jsx("div",{className:"flex flex-1 items-center gap-0.5 rounded-md border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface))] p-0.5",children:["project","status"].map(A=>a.jsx("button",{type:"button",onClick:()=>u(A),"aria-pressed":f===A,"aria-label":n(A==="project"?"sidebar.view.projectAria":"sidebar.view.statusAria"),className:J("flex-1 rounded-[5px] py-1 font-mono text-[11px] tracking-[0.02em] transition-colors",f===A?"bg-[hsl(var(--deck-canvas))] text-[hsl(var(--deck-ink))] shadow-sm":"text-[hsl(var(--deck-ink-faint))] hover:text-[hsl(var(--deck-ink-muted))]"),children:n(A==="project"?"sidebar.view.project":"sidebar.view.status")},A))}),a.jsx("button",{type:"button",onClick:()=>B(!0),title:n("projects.bind.action"),"aria-label":n("projects.bind.action"),className:"flex h-7 w-7 shrink-0 items-center justify-center rounded-md border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface))] text-[hsl(var(--deck-ink-faint))] transition-colors hover:border-[hsl(var(--deck-border-strong))] hover:text-[hsl(var(--deck-accent))]",children:a.jsx(Ro,{className:"h-3.5 w-3.5"})})]})]}),a.jsx(Wd,{className:"flex-1 px-0",children:a.jsxs("div",{className:"flex flex-col",children:[(S.length>0||ae.length>0||C==="loading"||C==="hydrating"||C==="error")&&a.jsx(P5,{view:f,sessions:S,activeProjectPath:Se,boundProjects:ae,currentSessionRef:N,unreadTaskKeys:ve,catalogLoadState:C,catalogError:x,onRetryCatalog:$,onSelectProject:A=>void Ht(A).catch(()=>{}),onCreateTask:A=>void Qt(A).catch(()=>{}),renderRow:A=>{const Ee=be(A),en=Me(Ee),pr=oe(Ee,N),fr=He===en,bs=oe(Ee,P),ks=!!P;return a.jsx(g5,{session:A,sessionRef:Ee,isActive:pr,isForking:bs,isUnread:ve.includes(Me(Ee)),anyForking:ks,isEditing:fr,editingTitle:We,title:qe(A),context:Pe(A),isCancelling:he.includes(Me(Ee)),isRetrying:ce.includes(Me(Ee)),isExporting:Z===en,onSelect:()=>(t==null||t(),h("workspace"),F(Ee)),onCancelTask:()=>{Y(Ee).catch(()=>{})},onRetryTask:()=>{R(Ee).catch(()=>{})},onFork:()=>void T(A),onArchive:()=>void I(Ee),onExport:()=>void Re(A),onStartRename:Xs=>wt(Xs,A),onDelete:Xs=>_(Xs,A),onEditingTitleChange:tt,onSaveRename:()=>qt(A),onCancelRename:Lr},en)}}),S.length===0&&a.jsx("div",{className:"px-5 mt-6",children:a.jsxs("div",{className:"rounded-md border border-dashed border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface))]/60 px-4 py-6 text-center",children:[a.jsx("div",{className:"mx-auto mb-2 inline-flex h-8 w-8 items-center justify-center rounded-md border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-canvas))]",children:a.jsx(Mp,{className:"h-3.5 w-3.5 text-[hsl(var(--deck-ink-faint))]"})}),a.jsx("div",{className:"font-mono text-[12px] text-[hsl(var(--deck-ink-muted))]",children:n("sidebar.empty.title")}),a.jsx("div",{className:"mt-1 text-[10.5px] text-[hsl(var(--deck-ink-faint))]",children:n("sidebar.empty.hint")})]})})]})}),a.jsxs("div",{className:"flex flex-col gap-3 px-5 pt-3 pb-5",children:[a.jsxs("div",{className:"flex flex-col gap-0.5 border-t border-[hsl(var(--deck-hairline))] pt-3",children:[a.jsx(f5,{}),[{icon:Op,action:()=>bt(r),labelKey:"sidebar.section.settings"}].map(({icon:A,action:Ee,labelKey:en})=>a.jsxs("button",{"data-settings-trigger":!0,onClick:Ee,className:"flex h-8 w-full items-center gap-2.5 rounded-md px-2.5 font-mono text-[12.5px] text-[hsl(var(--deck-ink-muted))] transition-colors hover:bg-[hsl(var(--deck-surface))] hover:text-[hsl(var(--deck-ink))]",children:[a.jsx(A,{className:"h-3.5 w-3.5 text-[hsl(var(--deck-ink-faint))]"}),n(en)]},en))]}),a.jsxs("div",{className:"flex gap-2 justify-between items-center",children:[a.jsx("span",{className:"font-mono text-[10px] uppercase tracking-[0.14em] text-[hsl(var(--deck-ink-faint))]",children:n("sidebar.language.label")}),a.jsx(Zx,{})]}),a.jsxs("div",{className:"flex items-center gap-2.5 rounded-md border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface))] px-3 py-2",children:[a.jsx("div",{className:"flex h-7 w-7 items-center justify-center rounded-md bg-[hsl(var(--deck-canvas-veil))]",children:a.jsx("div",{className:"h-2 w-2 rounded-full bg-[hsl(var(--deck-ink))]"})}),a.jsxs("div",{className:"flex flex-1 flex-col gap-[1px]",children:[a.jsx("span",{className:"font-mono text-[12px] text-[hsl(var(--deck-ink))]",children:n("sidebar.status.user")}),a.jsxs("span",{className:J("flex gap-1 items-center font-mono text-[10px]",O?"text-[hsl(var(--deck-accent))]":"text-[hsl(var(--deck-ink-faint))]"),children:[a.jsx("span",{className:J("h-1 w-1 rounded-full",O?"bg-[hsl(var(--deck-accent))] shadow-[0_0_5px_hsl(var(--deck-accent-glow)/0.9)]":"bg-[hsl(var(--deck-ink-faint))]/60")}),n(O?"sidebar.status.feedLive":"sidebar.status.feedOffline")]})]})]})]}),a.jsx(e0,{open:L,onOpenChange:B})]}):a.jsx(b5,{className:e,onExpand:s,onNewChat:Jt,onOpenBoard:et,onOpenTaskSwitcher:()=>bt(()=>m(!0)),onToggleTerminal:()=>bt(d),onToggleSettings:()=>bt(r),isTerminalOpen:o,taskEventsConnected:O,unreadCount:ve.length,boardActive:p==="board"})}const O5=y.lazy(()=>es(()=>import("./SettingsModal-KpvOJhBi.js"),__vite__mapDeps([4,1,2,5,6,7,8,3,9])).then(e=>({default:e.SettingsModal}))),r0=()=>es(()=>import("./TaskSwitcher-2FU_n9lh.js"),__vite__mapDeps([10,1,3,11,12,2])).then(e=>({default:e.TaskSwitcher})),R5=y.lazy(r0),s0=()=>es(()=>import("./FilePreview-DDpZFwlq.js"),__vite__mapDeps([13,1,3,14,5,9,11,2])),M5=y.lazy(()=>s0().then(e=>({default:e.FilePreview}))),$5=y.lazy(()=>s0().then(e=>({default:e.PreviewControls}))),F5=y.lazy(()=>es(()=>import("./TerminalPanel-C-LpIqOw.js"),__vite__mapDeps([15,1,16,17,3,2])).then(e=>({default:e.TerminalPanel}))),sc=e=>{if(e.startsWith("/Users/")){const t=e.split("/");if(t.length>=3)return"~/"+t.slice(3).join("/")}return e},L5=e=>e.replace(/^~\//,"~/§").split("/").filter(Boolean).map((t,n,r)=>{var s;return n===0&&((s=r[0])!=null&&s.startsWith("~"))?"~":t.replace(/^§/,"")});function D5({children:e}){var Z,pt;const t=Ut();p5();const{isSidebarOpen:n,isFilePreviewOpen:r,isSettingsOpen:s,isTerminalOpen:i,isTaskSwitcherOpen:o,toggleFilePreview:d,openFilePreview:f,previewRequestId:u,setSidebarOpen:m,mainView:p}=on();y.useEffect(()=>{const L=window.setTimeout(()=>{r0()},1500);return()=>window.clearTimeout(L)},[]);const h=H(L=>L.currentSessionId),b=H(L=>L.currentSessionRef),k=H(L=>L.sessions),S=H(L=>L.isStreaming),C=H(L=>L.isTemporarySession),x=H(L=>L.taskWorkspaceInfo),N=H(L=>L.boundProjects),P=H(L=>L.selectedProjectPath),[F,D]=y.useState(null),[j,I]=y.useState(!1),[T,M]=y.useState(),[$,te]=y.useState(()=>typeof window<"u"&&typeof window.matchMedia=="function"&&window.matchMedia("(max-width: 639px)").matches),[O,Q]=y.useState(()=>typeof window<"u"&&typeof window.matchMedia=="function"&&window.matchMedia("(max-width: 1023px)").matches),ae=y.useRef(null),le=y.useRef(null),de=y.useRef(null),me=y.useMemo(()=>k.find(L=>oe({sessionId:L.sessionId,projectPath:L.projectPath},b)),[b,k]),Y=(me==null?void 0:me.taskIsolation)==="worktree"&&me.taskSourceProjectPath&&(((Z=me.taskDelivery)==null?void 0:Z.status)==="applied"||((pt=me.taskDelivery)==null?void 0:pt.status)==="discarded")?me.taskSourceProjectPath:b==null?void 0:b.projectPath;y.useEffect(()=>{if(typeof window.matchMedia!="function")return;const L=window.matchMedia("(max-width: 900px)"),B=()=>{L.matches&&m(!1)};return B(),L.addEventListener("change",B),()=>L.removeEventListener("change",B)},[m]),y.useEffect(()=>{if(typeof window.matchMedia!="function")return;const L=window.matchMedia("(max-width: 639px)"),B=()=>te(L.matches);return B(),L.addEventListener("change",B),()=>L.removeEventListener("change",B)},[]),y.useEffect(()=>{if(typeof window.matchMedia!="function")return;const L=window.matchMedia("(max-width: 1023px)"),B=()=>Q(L.matches);return B(),L.addEventListener("change",B),()=>L.removeEventListener("change",B)},[]),y.useEffect(()=>{if(!$||!n)return;const L=requestAnimationFrame(()=>{var B,Se;(Se=(B=ae.current)==null?void 0:B.querySelector("button"))==null||Se.focus()});return()=>{var B;cancelAnimationFrame(L),(B=le.current)==null||B.focus({preventScroll:!0})}},[$,n]);const he=L=>{var Pe;if(!$||!n)return;if(L.key==="Escape"){L.preventDefault(),m(!1);return}if(L.key!=="Tab")return;const B=Array.from(((Pe=ae.current)==null?void 0:Pe.querySelectorAll('button:not([disabled]), input:not([disabled]), select:not([disabled]), [href], [tabindex]:not([tabindex="-1"])'))??[]);if(B.length===0)return;const Se=B[0],qe=B[B.length-1];L.shiftKey&&document.activeElement===Se?(L.preventDefault(),qe==null||qe.focus()):!L.shiftKey&&document.activeElement===qe&&(L.preventDefault(),Se==null||Se.focus())},R=y.useMemo(()=>p==="board"||!h||C?P?sc(P):null:me!=null&&me.projectPath?sc(me.taskSourceProjectPath||me.projectPath):null,[h,me,C,p,P]),ce=y.useMemo(()=>R?L5(R):[],[R]);y.useEffect(()=>{var B;if(!b){D(((B=N.find(Se=>Se.path===P))==null?void 0:B.gitBranch)??null);return}(async()=>{try{const Se=await X.getGitInfo({sessionId:b.sessionId,projectPath:Y??b.projectPath});D(Se.branch)}catch{D(null)}})()},[N,b,Y,P]);const ve=x==null?void 0:x.taskAdmission,He=p==="board"?P??(x==null?void 0:x.cwd)??null:Y??P??(x==null?void 0:x.cwd)??null,yt=b&&p==="workspace"?Me(b):`project:${P??"none"}`,We=r&&O,tt=r&&T;return a.jsxs("div",{className:"flex h-screen overflow-hidden bg-[hsl(var(--deck-canvas))]",children:[$&&n&&!We&&a.jsx("button",{type:"button","aria-label":t("sidebar.action.collapse"),onClick:()=>m(!1),className:"fixed inset-0 z-40 bg-black/25 backdrop-blur-[1px]"}),a.jsx("div",{ref:ae,role:$&&n&&!We?"dialog":void 0,"aria-modal":$&&n&&!We?!0:void 0,"aria-label":$&&n&&!We?t("sidebar.navigationAria"):void 0,inert:We||$&&!n?!0:void 0,onKeyDown:he,className:J("overflow-hidden",n?"w-[260px]":"w-[64px]",$?"fixed inset-y-0 left-0 z-50 shadow-2xl transition-none":"shrink-0 transition-[width] duration-300 ease-in-out",$&&!n&&"-translate-x-full"),children:a.jsx("div",{className:J("transition-all duration-300 ease-in-out",n?"w-[260px]":"w-[64px]"),children:a.jsx(N5,{onNavigate:()=>{$&&m(!1)}})})}),a.jsxs("div",{className:"flex flex-col flex-1 min-w-0",children:[a.jsxs("header",{inert:We,className:"relative z-10 flex h-14 items-center gap-2 border-b border-[hsl(var(--deck-hairline))] bg-[hsl(var(--deck-canvas))]/90 px-3 backdrop-blur-md sm:gap-4 sm:px-6",children:[$&&a.jsx(Kr,{ref:le,"data-mobile-navigation-trigger":!0,variant:"ghost",size:"icon",onClick:()=>m(!0),"aria-label":t("layout.action.openNavigation"),title:t("layout.action.openNavigation"),className:"h-9 w-9 shrink-0 rounded-md text-[hsl(var(--deck-ink-muted))] hover:bg-[hsl(var(--deck-surface))] hover:text-[hsl(var(--deck-ink))]",children:a.jsx(gy,{className:"h-4 w-4"})}),a.jsxs("div",{className:"flex gap-2 items-center min-w-0",children:[ce.length>0?a.jsx("nav",{"aria-label":t("layout.workspace.pathAria"),title:R??void 0,className:"flex min-w-0 items-center font-mono text-[12px] text-[hsl(var(--deck-ink-muted))]",children:ce.map((L,B)=>{const Se=B===ce.length-1,qe=B===0&&L==="~";return a.jsxs("span",{className:"flex items-center min-w-0",children:[B>0&&a.jsx("span",{className:"mx-1 text-[hsl(var(--deck-ink-faint))]/70",children:"/"}),B===0&&!qe&&a.jsx("span",{className:"mr-1 text-[hsl(var(--deck-ink-faint))]/70",children:"/"}),a.jsx("span",{className:J("truncate",Se?"font-medium text-[hsl(var(--deck-ink))]":"text-[hsl(var(--deck-ink-muted))]"),children:L})]},B)})}):a.jsx("span",{className:"font-mono text-[12px] text-[hsl(var(--deck-ink-faint))]",children:x!=null&&x.cwd?sc(x.cwd):t("layout.workspace.empty")}),F&&a.jsxs("span",{className:"ml-2 inline-flex items-center gap-1 rounded-md border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface))] px-2 py-0.5 font-mono text-[10.5px] text-[hsl(var(--deck-ink-muted))]",children:[a.jsx(zc,{className:"h-3 w-3 text-[hsl(var(--deck-accent))]"}),F]})]}),a.jsxs("div",{className:"flex gap-3 items-center ml-auto",children:[ve&&a.jsx("span",{className:"hidden items-center rounded-md border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface))] px-2.5 py-1 md:inline-flex",children:a.jsx(Wx,{inFlight:ve.inFlight,queued:ve.queued,maxConcurrent:ve.maxConcurrent,compact:!0})}),a.jsxs("div",{className:"flex items-center gap-0.5",children:[a.jsx(Kr,{variant:"ghost",size:"icon","aria-label":t("layout.action.rewind"),title:t("layout.action.rewind"),disabled:p==="board"||!b||C||S,onClick:()=>I(!0),className:"h-8 w-8 rounded-md text-[hsl(var(--deck-ink-faint))] hover:bg-[hsl(var(--deck-surface))] hover:text-[hsl(var(--deck-ink))] disabled:opacity-35",children:a.jsx(Yo,{className:"w-4 h-4"})}),a.jsx(y.Suspense,{fallback:null,children:a.jsx($5,{ref:de,open:r,maximized:T,disabled:p==="board",onToggleMaximized:()=>M(L=>!L),onTogglePreview:()=>{if(r){M(!1),d();return}f((!b||C)&&u===0?{tab:"files"}:void 0)}})})]})]})]}),a.jsxs("main",{className:"flex-1 overflow-hidden relative flex bg-[hsl(var(--deck-canvas))]",children:[a.jsx("div",{"data-preview-background":"content","data-preview-maximized":tt,inert:We,className:"relative flex min-w-0 flex-1 flex-col",children:s?a.jsx(y.Suspense,{fallback:null,children:a.jsx(O5,{})}):e}),r&&a.jsx(y.Suspense,{fallback:null,children:a.jsx(M5,{returnFocusElement:de.current,maximized:tt},yt)})]})]}),i&&a.jsx(y.Suspense,{fallback:null,children:a.jsx(F5,{workspacePath:He},He??"default-workspace")}),o&&a.jsx(y.Suspense,{fallback:null,children:a.jsx(R5,{})}),a.jsx(a5,{open:j,onOpenChange:I})]})}const ic="BladeCode";function _5(){const e=Ut(),t=H(o=>o.unreadTaskKeys),n=H(o=>o.sessions),r=H(o=>o.selectSession),s=H(o=>o.selectProject),i=y.useMemo(()=>{const o=new Set(t);for(const d of n)d.pendingInteraction&&o.add(Me(be(d)));return o.size},[n,t]);return y.useEffect(()=>(document.title=i>0?`(${i}) ${ic}`:ic,()=>{document.title=ic}),[i]),y.useEffect(()=>{const o=d=>{var h;const f=d.detail;if(!(f!=null&&f.sessionId)||!f.projectPath)return;const u=H.getState(),m=Gd(u.sessions,f),p=m?lo(m,u.selectedProjectPath??((h=u.taskWorkspaceInfo)==null?void 0:h.cwd)??null):f.projectPath;u.boundProjects.some(b=>b.available&&b.path===p)&&s(p),r(f)};return window.addEventListener(Go,o),()=>window.removeEventListener(Go,o)},[s,r]),a.jsx("div",{className:"sr-only",role:"status","aria-live":"polite",children:i>0?e("attention.unreadAnnouncement",{count:i}):""})}const Dc=y.forwardRef(({className:e,...t},n)=>a.jsx("textarea",{className:J("flex min-h-[80px] w-full rounded-md border border-input bg-background px-3 py-2 text-base ring-offset-background placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",e),ref:n,...t}));Dc.displayName="Textarea";const U5=(e,t)=>{const n=[...e.matchAll(/(?:^|\s)(@(?:"[^"]*"|(?:[^\\ ]|\\ )*))/g)];for(const r of n){const s=r[1],i=r.index+(r[0].length-s.length),o=i+s.length;if(t>=i&&t<=o){let d=s.slice(1),f=!1;return d.startsWith('"')&&(f=!0,d=d.slice(1),d.endsWith('"')&&(d=d.slice(0,-1))),{hasQuery:!0,query:d,startIndex:i,endIndex:o,quoted:f}}}return{hasQuery:!1,query:"",startIndex:-1,endIndex:-1,quoted:!1}},B5=(e,t,n={})=>{const{debounceDelay:r=200,maxSuggestions:s=15,workspacePath:i}=n,[o,d]=y.useState([]),[f,u]=y.useState(0),[m,p]=y.useState(!1),h=y.useMemo(()=>t===void 0?{hasQuery:!1,query:"",startIndex:-1,endIndex:-1,quoted:!1}:U5(e,t),[e,t]);y.useEffect(()=>{if(!h.hasQuery){d([]),p(!1);return}let S=!1;p(!0);const x=setTimeout(async()=>{try{const N=await fetch(`/suggestions/files?q=${encodeURIComponent(h.query)}&limit=${s}`,i?{headers:{"x-blade-directory":i}}:void 0);if(!N.ok)throw new Error("Failed to fetch suggestions");const P=await N.json();S||d(P)}catch(N){console.error("Failed to fetch file suggestions:",N),S||d([])}finally{S||p(!1)}},r);return()=>{S=!0,clearTimeout(x)}},[h.hasQuery,h.query,r,s,i]),y.useEffect(()=>{u(0)},[o]);const b=y.useCallback(()=>{u(S=>(S+1)%Math.max(o.length,1))},[o.length]),k=y.useCallback(()=>{u(S=>(S-1+o.length)%Math.max(o.length,1))},[o.length]);return{...h,suggestions:o,selectedIndex:f,loading:m,setSelectedIndex:u,selectNext:b,selectPrevious:k}},H5=(e,t=!1)=>e.includes(" ")||t?`@"${e}"`:`@${e}`,q5=(e,t,n)=>{if(!t.hasQuery)return{newInput:e,newCursorPos:e.length};const r=H5(n,t.quoted),s=e.slice(0,t.startIndex),i=e.slice(t.endIndex),o=s+r+" "+i,d=t.startIndex+r.length+1;return{newInput:o,newCursorPos:d}};function z5(){const[e,t]=y.useState([]),[n,r]=y.useState(-1),s=y.useRef(""),i=y.useCallback(u=>{u.trim()&&(t(m=>m[m.length-1]===u?m:[...m,u]),r(-1),s.current="")},[]),o=y.useCallback(u=>{if(e.length===0)return null;n===-1&&(s.current=u);const m=n===-1?e.length-1:Math.max(0,n-1);return r(m),e[m]??null},[e,n]),d=y.useCallback(()=>{if(n===-1)return null;const u=n+1;return u>=e.length?(r(-1),s.current):(r(u),e[u]??null)},[e,n]),f=y.useCallback(()=>{r(-1),s.current=""},[]);return{addToHistory:i,getPrevious:o,getNext:d,reset:f,historyIndex:n}}const K5=(e,t)=>{if(!e.startsWith("/"))return{hasQuery:!1,query:"",startIndex:-1,endIndex:-1};const n=e.indexOf(" "),r=n===-1?e.length:n;return t<=r?{hasQuery:!0,query:e.slice(1,t),startIndex:0,endIndex:t}:{hasQuery:!1,query:"",startIndex:-1,endIndex:-1}},G5=(e,t,n={})=>{const{debounceDelay:r=150,workspacePath:s}=n,[i,o]=y.useState([]),[d,f]=y.useState(0),[u,m]=y.useState(!1),p=y.useMemo(()=>t===void 0?{hasQuery:!1,query:"",startIndex:-1,endIndex:-1}:K5(e,t),[e,t]);y.useEffect(()=>{if(!p.hasQuery){o([]),m(!1);return}let k=!1;m(!0);const C=setTimeout(async()=>{try{const x=await fetch(`/suggestions/commands?q=${encodeURIComponent(p.query)}`,s?{headers:{"x-blade-directory":s}}:void 0);if(!x.ok)throw new Error("Failed to fetch suggestions");const N=await x.json();k||o(N)}catch(x){console.error("Failed to fetch command suggestions:",x),k||o([])}finally{k||m(!1)}},r);return()=>{k=!0,clearTimeout(C)}},[p.hasQuery,p.query,r,s]),y.useEffect(()=>{f(0)},[i]);const h=y.useCallback(()=>{f(k=>(k+1)%Math.max(i.length,1))},[i.length]),b=y.useCallback(()=>{f(k=>(k-1+i.length)%Math.max(i.length,1))},[i.length]);return{...p,suggestions:i,selectedIndex:d,loading:u,setSelectedIndex:f,selectNext:h,selectPrevious:b}},V5=(e,t,n)=>{if(!t.hasQuery)return{newInput:e,newCursorPos:e.length};const r=e.slice(t.endIndex),s=n.command+" "+r.trimStart(),i=n.command.length+1;return{newInput:s,newCursorPos:i}},W5="blade.composer.draft.",Vo=new Map,_c=new Set,i0=1;function Wo(){return typeof sessionStorage>"u"?null:sessionStorage}function Jo(e){return`${W5}${e}`}function o0(e){var n;if(!e)return{content:"",attachments:[],outputSchema:void 0};const t=Vo.get(e);if(t)return{content:t.content,attachments:[...t.attachments],outputSchema:t.outputSchema};try{const r=((n=Wo())==null?void 0:n.getItem(Jo(e)))??"";if(!r)return{content:"",attachments:[],outputSchema:void 0};try{const s=JSON.parse(r);if(s.version===i0&&typeof s.content=="string"&&(s.outputSchema===void 0||typeof s.outputSchema=="string"))return{content:s.content,attachments:[],outputSchema:s.outputSchema}}catch{}return{content:r,attachments:[],outputSchema:void 0}}catch{return{content:"",attachments:[],outputSchema:void 0}}}function sn(e,t){var s,i;if(!e)return;const n=Vo.get(e),r=t.outputSchema??(n==null?void 0:n.outputSchema);if(!t.content&&t.attachments.length===0&&!r){a0(e);return}Vo.set(e,{content:t.content,attachments:[...t.attachments],outputSchema:r});try{t.content||r?(s=Wo())==null||s.setItem(Jo(e),JSON.stringify({version:i0,content:t.content,...r?{outputSchema:r}:{}})):(i=Wo())==null||i.removeItem(Jo(e))}catch{}}function a0(e){var t;if(e){Vo.delete(e);try{(t=Wo())==null||t.removeItem(Jo(e))}catch{}}}function E3(e,t){const n=t.trim();if(!e||!n)return!1;const r=o0(e),s=r.content.length===0?"":r.content.endsWith(`
|
|
270
270
|
`)?`
|
|
271
271
|
`:`
|
|
272
272
|
|
|
273
273
|
`,i={...r,content:`${r.content}${s}${n}`};sn(e,i);const o={key:e,draft:{...i,attachments:[...i.attachments]}};for(const d of _c)d(o);return!0}function J5(e){return _c.add(e),()=>_c.delete(e)}function Uc(e){return e.reduce((t,n)=>t+n.dataUrl.length,0)}function Q5(e){return`data:${e.type||"application/octet-stream"};base64,`.length+4*Math.ceil(e.size/3)}function Y5(e,t){const r=Uc(e)+t.reduce((s,i)=>s+Q5(i),0);return e.length+t.length>zr?{accepted:!1,reason:"count",estimatedBytes:r}:r>mi?{accepted:!1,reason:"bytes",estimatedBytes:r}:{accepted:!0,estimatedBytes:r}}const Z5=e=>typeof e=="object"&&"command"in e,kp=({type:e,suggestions:t,selectedIndex:n,loading:r,onSelect:s,onHover:i,visible:o})=>{const d=y.useRef(null),f=y.useRef(null);if(y.useEffect(()=>{if(f.current&&d.current){const m=d.current,p=f.current,h=m.getBoundingClientRect(),b=p.getBoundingClientRect();b.bottom>h.bottom?m.scrollTop+=b.bottom-h.bottom+4:b.top<h.top&&(m.scrollTop-=h.top-b.top+4)}},[n]),!o||t.length===0&&!r)return null;const u=e==="command"?Ap:hu;return a.jsx("div",{className:"absolute bottom-full left-0 right-0 mb-2 z-50",children:a.jsxs("div",{className:"mx-4 bg-white dark:bg-zinc-900 border border-[#E5E7EB] dark:border-zinc-700 rounded-lg shadow-xl overflow-hidden",children:[a.jsxs("div",{className:"flex items-center gap-2 px-3 py-2 border-b border-[#E5E7EB] dark:border-zinc-800 text-xs text-[#6B7280] dark:text-zinc-400",children:[a.jsx(u,{className:"h-3.5 w-3.5"}),a.jsx("span",{children:e==="command"?"Commands":"Files"}),r&&a.jsx(mt,{className:"h-3 w-3 animate-spin ml-auto"})]}),a.jsx("div",{ref:d,className:"max-h-64 overflow-y-auto py-1",children:t.length===0&&r?a.jsx("div",{className:"px-3 py-4 text-center text-[#6B7280] dark:text-zinc-500 text-sm",children:"Loading..."}):t.length===0?a.jsx("div",{className:"px-3 py-4 text-center text-[#6B7280] dark:text-zinc-500 text-sm",children:"No matches found"}):t.map((m,p)=>{const h=p===n,b=Z5(m);return a.jsx("button",{ref:h?f:null,className:J("w-full text-left px-3 py-2 flex items-start gap-3 transition-colors",h?"bg-[#E5E7EB] text-[#111827] dark:bg-zinc-800 dark:text-zinc-100":"text-[#6B7280] hover:bg-[#F3F4F6] hover:text-[#111827] dark:text-zinc-400 dark:hover:bg-zinc-800/50 dark:hover:text-zinc-300"),onClick:()=>s(p),onMouseEnter:()=>i(p),children:b?a.jsx(a.Fragment,{children:a.jsxs("div",{className:"flex-1 min-w-0",children:[a.jsxs("div",{className:"flex items-center gap-2",children:[a.jsx("span",{className:"font-mono text-sm text-blue-600 dark:text-blue-400",children:m.command}),m.argumentHint&&a.jsx("span",{className:"text-xs text-[#9CA3AF] dark:text-zinc-500 font-mono",children:m.argumentHint})]}),a.jsx("p",{className:"text-xs text-[#9CA3AF] dark:text-zinc-500 mt-0.5 truncate",children:m.description})]})}):a.jsxs("div",{className:"flex items-center gap-2 min-w-0",children:[a.jsx(hu,{className:"h-4 w-4 flex-shrink-0 text-[#9CA3AF] dark:text-zinc-500"}),a.jsx("span",{className:"font-mono text-sm truncate",children:m})]})},b?m.command:m)})}),a.jsxs("div",{className:"px-3 py-1.5 border-t border-[#E5E7EB] dark:border-zinc-800 text-xs text-[#9CA3AF] dark:text-zinc-500 flex items-center gap-4",children:[a.jsxs("span",{children:[a.jsx("kbd",{className:"px-1.5 py-0.5 bg-[#E5E7EB] dark:bg-zinc-800 rounded text-[#6B7280] dark:text-zinc-400",children:"↑↓"})," ","Navigate"]}),a.jsxs("span",{children:[a.jsx("kbd",{className:"px-1.5 py-0.5 bg-[#E5E7EB] dark:bg-zinc-800 rounded text-[#6B7280] dark:text-zinc-400",children:"Tab"})," ","Select"]}),a.jsxs("span",{children:[a.jsx("kbd",{className:"px-1.5 py-0.5 bg-[#E5E7EB] dark:bg-zinc-800 rounded text-[#6B7280] dark:text-zinc-400",children:"Esc"})," ","Close"]})]})]})})},oc=[{value:kr.DEFAULT,labelKey:"chat.input.mode.default",descriptionKey:"chat.input.mode.default.desc",icon:fy},{value:kr.AUTO_EDIT,labelKey:"chat.input.mode.autoEdit",descriptionKey:"chat.input.mode.autoEdit.desc",icon:vy},{value:kr.YOLO,labelKey:"chat.input.mode.yolo",descriptionKey:"chat.input.mode.yolo.desc",icon:Rp,tone:"danger"},{value:kr.PLAN,labelKey:"chat.input.mode.plan",descriptionKey:"chat.input.mode.plan.desc",icon:ay}],X5=["off"],e3=["high","xhigh","medium","max","low","minimal","off"],t3=["standard"],n3=[];function r3(e){return e3.find(t=>e.includes(t))??"off"}function ac(e){return e<1024*1024?`${Math.max(1,Math.ceil(e/1024))} KiB`:`${(e/(1024*1024)).toFixed(1)} MiB`}function s3({onSend:e,onAbort:t,disabled:n,submitDisabled:r=!1,shellSubmitDisabled:s=!1,isStreaming:i,isStopping:o=!1,pendingSteeringCount:d=0,pendingInputDelivery:f=null,recoveredSteeringCount:u=0,variant:m="chat",draft:p,draftAttachments:h,draftRevision:b,draftKey:k,placeholder:S,workspacePath:C}){var au;const x=Ut(),N=y.useRef(o0(k)),[P,F]=y.useState(N.current.content),[D,j]=y.useState(N.current.attachments),I=y.useRef(P),T=y.useRef(D),[M,$]=y.useState(N.current.outputSchema??""),te=y.useRef(M),[O,Q]=y.useState(!1),[ae,le]=y.useState(null),[de,me]=y.useState(void 0),[Y,he]=y.useState(!1),[R,ce]=y.useState(!1),[ve,He]=y.useState(!1),[yt,We]=y.useState(!1),[tt,Z]=y.useState(!1),[pt,L]=y.useState(!1),[B,Se]=y.useState(!1),[qe,Pe]=y.useState(null),[Jt,et]=y.useState(null),Ht=P.trimStart().startsWith("!"),Qt=Ht?s:r,bt=y.useRef(null),_=y.useRef(!1),Re=y.useRef(null),wt=y.useRef(null),{currentModelId:qt,configuredModels:Lr,hasLoaded:A,loadedWorkspacePath:Ee,loadModels:en,setCurrentModel:pr,currentMode:fr,setMode:bs}=Mt(),ks=on(w=>w.isSettingsOpen),Xs=Xr(w=>w.communicationStyle),Yd=H(w=>w.setMaxContextTokens),Ne=H(w=>w.currentSessionRef),Zd=H(w=>{var G;return(G=w.sessions.find(q=>q.sessionId===(Ne==null?void 0:Ne.sessionId)&&q.projectPath===(Ne==null?void 0:Ne.projectPath)))==null?void 0:G.selectedModelId}),c0=H(w=>{var G;return(G=w.sessions.find(q=>q.sessionId===(Ne==null?void 0:Ne.sessionId)&&q.projectPath===(Ne==null?void 0:Ne.projectPath)))==null?void 0:G.reasoningEffort}),l0=H(w=>{var G;return(G=w.sessions.find(q=>q.sessionId===(Ne==null?void 0:Ne.sessionId)&&q.projectPath===(Ne==null?void 0:Ne.projectPath)))==null?void 0:G.serviceTier}),d0=H(w=>{var G;return(G=w.sessions.find(q=>q.sessionId===(Ne==null?void 0:Ne.sessionId)&&q.projectPath===(Ne==null?void 0:Ne.projectPath)))==null?void 0:G.responseVerbosity}),[u0,Xd]=y.useState(null),[p0,eu]=y.useState(null),[f0,La]=y.useState(null),[m0,Da]=y.useState(null),h0=Lr.some(w=>w.id===Zd),xs=Ne?u0??(h0?Zd:qt):qt,nt=Lr.find(w=>w.id===xs),po=((nt==null?void 0:nt.supportedReasoningEfforts)??X5).filter(w=>w!=="auto"),fo=p0??c0,g0=r3(po),mo=fo!==void 0&&fo!=="auto"&&po.includes(fo)?fo:g0,ho=(nt==null?void 0:nt.supportedServiceTiers)??t3,b0=["auto",...ho],Dr=f0??l0??"auto",go=(nt==null?void 0:nt.supportedResponseVerbosities)??n3,k0=["auto",...go],_r=m0??d0??"auto",tu=Xs??"auto",x0=po.length>1,y0=ho.some(w=>w!=="standard"),w0=go.length>0,nu=(nt==null?void 0:nt.displayName)||(nt==null?void 0:nt.model)||xs||x("chat.input.model.placeholder"),mr=((au=nt==null?void 0:nt.input)==null?void 0:au.includes("image"))===!0,ei=nt?x("chat.input.attachment.modelUnsupported",{model:nu}):x("chat.input.attachment.modelRequired"),bo=D.length>0&&!mr,tn=G5(P,de,{workspacePath:C}),nn=B5(P,de,{workspacePath:C}),ys=z5(),ti=tn.hasQuery&&tn.suggestions.length>0,ko=nn.hasQuery&&nn.suggestions.length>0,v0=ti||ko;y.useEffect(()=>{!ks&&(!A||Ee!==(C??null))&&en(C??void 0)},[ks,en,Ee,A,C]),y.useEffect(()=>{i&&(he(!1),ce(!1),He(!1),We(!1),Q(!1))},[i]),y.useEffect(()=>{Xd(null),eu(null),La(null),Da(null)},[Ne==null?void 0:Ne.projectPath,Ne==null?void 0:Ne.sessionId]),y.useEffect(()=>{Dr!=="auto"&&!ho.includes(Dr)&&La("auto")},[Dr,ho]),y.useEffect(()=>{_r!=="auto"&&!go.includes(_r)&&Da("auto")},[_r,go]),y.useEffect(()=>{et(null)},[xs]),y.useEffect(()=>{if(p!==void 0){const w=h??T.current;I.current=p,T.current=w,F(p),j(w),Pe(null),et(null),me(p.length),sn(k,{content:p,attachments:w}),requestAnimationFrame(()=>{var G;return(G=Re.current)==null?void 0:G.focus()})}},[p,h,k,b]),y.useEffect(()=>()=>{sn(k,{content:I.current,attachments:T.current,outputSchema:te.current})},[k]),y.useEffect(()=>J5(w=>{if(w.key!==k)return;const G=w.draft.attachments;I.current=w.draft.content,T.current=G,F(w.draft.content),j(G),me(w.draft.content.length),requestAnimationFrame(()=>{var q,Te;(q=Re.current)==null||q.focus(),(Te=Re.current)==null||Te.setSelectionRange(w.draft.content.length,w.draft.content.length)})}),[k]),y.useEffect(()=>{if(!nt)return;const w=!!nt.contextWindow;Yd(nt.contextWindow||0,!w)},[nt,Yd]),y.useEffect(()=>{mr&&Pe(w=>w!==bt.current?w:(bt.current=null,null))},[mr]);const _a=y.useCallback(async()=>{if(!P.trim()&&D.length===0||n||Qt||bo||_.current)return;let w;if(M.trim()){if(Ht){le(x("chat.input.outputSchema.shellUnsupported")),Q(!0);return}try{const q=JSON.parse(M);if(!q||typeof q!="object"||Array.isArray(q))throw new Error("schema root must be an object");w=q}catch{le(x("chat.input.outputSchema.invalid")),Q(!0);return}}P.trim()&&ys.addToHistory(P),_.current=!0,Se(!0);const G=k;try{if(await e({content:P,modelId:xs??void 0,reasoningEffort:mo,serviceTier:Dr,responseVerbosity:_r,communicationStyle:tu,attachments:D,...w?{outputSchema:w}:{}})===!1)return;a0(G),I.current="",T.current=[],te.current="",F(""),j([]),$(""),le(null),Pe(null),et(null),bt.current=null,me(void 0)}catch{}finally{_.current=!1,Se(!1)}},[D,bo,k,P,Ht,n,xs,mo,_r,tu,Dr,Qt,e,M,ys,x]),S0=y.useCallback(w=>{Pe(null),et(null),bt.current=null,j(G=>{const q=G.filter(Te=>Te.id!==w);return T.current=q,sn(k,{content:I.current,attachments:q}),q})},[k]),ru=y.useCallback(w=>new Promise((G,q)=>{const Te=new FileReader;Te.onload=()=>{if(typeof Te.result!="string"){q(new Error("Failed to read image"));return}G({id:typeof crypto<"u"&&typeof crypto.randomUUID=="function"?crypto.randomUUID():`${Date.now()}-${Math.random().toString(36).slice(2,8)}`,name:w.name,mimeType:w.type,dataUrl:Te.result})},Te.onerror=()=>q(Te.error??new Error("Failed to read image")),Te.readAsDataURL(w)}),[]),xo=y.useCallback(async w=>{if(w.length===0)return;if(!mr){bt.current=ei,et(null),Pe(ei);return}const G=Y5(T.current,w),q=Te=>Te==="count"?x("chat.input.attachment.countLimit",{count:zr}):x("chat.input.attachment.sizeLimit",{size:ac(mi)});if(!G.accepted){bt.current=null,et(null),Pe(q(G.reason??"bytes"));return}try{const Te=await Promise.all(w.map(ws=>ru(ws))),Rt=new Set(T.current.map(ws=>ws.dataUrl)),cu=Te.filter(ws=>Rt.has(ws.dataUrl)?!1:(Rt.add(ws.dataUrl),!0));if(cu.length===0){Pe(null),et(null),bt.current=null;return}const yo=[...T.current,...cu];if(Uc(yo)>mi){bt.current=null,et(null),Pe(q("bytes"));return}T.current=yo,j(yo),Pe(null),et(null),bt.current=null,sn(k,{content:I.current,attachments:yo})}catch{bt.current=null,et(null),Pe(x("chat.input.attachment.readFailed"))}},[k,ei,mr,ru,x]),j0=y.useCallback(async w=>{const G=Array.from(w.target.files??[]).filter(q=>q.type.startsWith("image/"));await xo(G),w.target.value=""},[xo]),I0=y.useCallback(async w=>{const G=Array.from(w.clipboardData.items).filter(q=>q.type.startsWith("image/")).map(q=>q.getAsFile()).filter(q=>q!==null);G.length!==0&&(w.preventDefault(),await xo(G))},[xo]),Ua=y.useCallback(w=>{const G=tn.suggestions[w];if(!G)return;const{newInput:q,newCursorPos:Te}=V5(P,tn,G);I.current=q,F(q),me(Te),sn(k,{content:q,attachments:T.current}),requestAnimationFrame(()=>{Re.current&&(Re.current.focus(),Re.current.setSelectionRange(Te,Te))})},[k,P,tn]),Ba=y.useCallback(w=>{const G=nn.suggestions[w];if(!G)return;const{newInput:q,newCursorPos:Te}=q5(P,nn,G);I.current=q,F(q),me(Te),sn(k,{content:q,attachments:T.current}),requestAnimationFrame(()=>{Re.current&&(Re.current.focus(),Re.current.setSelectionRange(Te,Te))})},[nn,k,P]),C0=y.useCallback(w=>{if(ti){if(w.key==="ArrowDown"){w.preventDefault(),tn.selectNext();return}if(w.key==="ArrowUp"){w.preventDefault(),tn.selectPrevious();return}if(w.key==="Tab"||w.key==="Enter"&&!w.shiftKey){w.preventDefault(),Ua(tn.selectedIndex);return}if(w.key==="Escape"){w.preventDefault(),me(void 0);return}}if(ko){if(w.key==="ArrowDown"){w.preventDefault(),nn.selectNext();return}if(w.key==="ArrowUp"){w.preventDefault(),nn.selectPrevious();return}if(w.key==="Tab"||w.key==="Enter"&&!w.shiftKey){w.preventDefault(),Ba(nn.selectedIndex);return}if(w.key==="Escape"){w.preventDefault(),me(void 0);return}}if(w.key==="Enter"&&!w.shiftKey){w.preventDefault(),_a();return}if(w.key==="ArrowUp"&&!w.shiftKey){const G=w.target,q=G.selectionStart===0&&G.selectionEnd===0,Te=!P.includes(`
|
|
274
274
|
`);if(q||Te){const Rt=ys.getPrevious(P);Rt!==null&&(w.preventDefault(),I.current=Rt,F(Rt),sn(k,{content:Rt,attachments:T.current}),requestAnimationFrame(()=>{Re.current&&Re.current.setSelectionRange(Rt.length,Rt.length)}))}return}if(w.key==="ArrowDown"&&!w.shiftKey){const G=w.target,q=G.selectionStart===P.length&&G.selectionEnd===P.length,Te=!P.includes(`
|
|
275
|
-
`);if((q||Te)&&ys.historyIndex!==-1){const Rt=ys.getNext();Rt!==null&&(w.preventDefault(),I.current=Rt,F(Rt),sn(k,{content:Rt,attachments:T.current}),requestAnimationFrame(()=>{Re.current&&Re.current.setSelectionRange(Rt.length,Rt.length)}))}}},[ti,ko,tn,nn,Ua,Ba,_a,k,P,ys]),E0=y.useCallback(w=>{const G=w.target.value;I.current=G,F(G),me(w.target.selectionStart),sn(k,{content:G,attachments:T.current})},[k]),su=y.useCallback(w=>{const G=w.target;me(G.selectionStart)},[]);y.useEffect(()=>{Re.current&&(Re.current.style.height="inherit",Re.current.style.height=`${Math.min(Re.current.scrollHeight,200)}px`)},[P]);const Ha=oc.find(w=>w.value===fr)??oc[1],T0=x(Ha.labelKey),A0=Ha.icon,P0=!!P.trim()||D.length>0,iu=D.length>=zr,N0=Uc(D),qa=qe||(bo?ei:null),ou=qa?null:Jt,za=!!n||B,O0=za||iu||!mr,ni=mr?iu?x("chat.input.attachment.countLimit",{count:zr}):x("chat.input.attachment.add"):ei,R0=()=>{za||(et(ni),!mr&&!i&&Lr.some(w=>{var G;return(G=w.input)==null?void 0:G.includes("image")})&&he(!0))};return a.jsxs("div",{"data-chat-input-shell":!0,className:m==="task"?"bg-transparent":"py-2.5 border-t border-[hsl(var(--deck-hairline))] bg-[hsl(var(--deck-canvas))]",children:[a.jsxs("div",{"data-chat-input-inner":!0,className:m==="task"?"w-full":"px-4 w-full md:px-6",children:[a.jsxs("div",{className:`relative border rounded-lg bg-[hsl(var(--deck-surface))] transition-all duration-200 flex flex-col ${m==="task"?`min-h-[148px] shadow-[0_18px_60px_-24px_hsl(var(--deck-accent)/0.4)] focus-within:ring-1 ${Ht?"border-amber-400/70 focus-within:border-amber-500 focus-within:ring-amber-400/25":"border-[hsl(var(--deck-border))] focus-within:border-[hsl(var(--deck-accent)/0.6)] focus-within:ring-[hsl(var(--deck-accent)/0.25)]"}`:`min-h-[56px] shadow-sm focus-within:ring-1 ${Ht?"border-amber-400/70 focus-within:border-amber-500 focus-within:ring-amber-400/25":"border-[hsl(var(--deck-border))] focus-within:border-[hsl(var(--deck-border-strong))] focus-within:ring-[hsl(var(--deck-border-strong))]"}`}`,children:[a.jsx(kp,{type:"command",suggestions:tn.suggestions,selectedIndex:tn.selectedIndex,loading:tn.loading,onSelect:Ua,onHover:tn.setSelectedIndex,visible:ti}),a.jsx(kp,{type:"file",suggestions:nn.suggestions,selectedIndex:nn.selectedIndex,loading:nn.loading,onSelect:Ba,onHover:nn.setSelectedIndex,visible:ko&&!ti}),a.jsx(Dc,{ref:Re,"data-blade-composer":!0,value:P,onChange:E0,onKeyDown:C0,onPaste:I0,onSelect:su,onClick:su,placeholder:S??x(i?"chat.input.placeholder.steering":"chat.input.placeholder.default"),className:`flex-1 w-full resize-none border-0 bg-transparent px-4 focus-visible:ring-0 focus-visible:ring-offset-0 focus:outline-none text-[#111827] dark:text-zinc-300 placeholder:text-[#9CA3AF] dark:placeholder:text-zinc-600 ${m==="task"?"min-h-[84px] py-4 text-[15px]":"py-2.5 text-[14px]"}`,disabled:n||B,"aria-busy":B}),Ht&&a.jsx("div",{className:"px-4 pb-2 font-mono text-[11px] text-amber-600 dark:text-amber-400",children:"$ user shell · runs in this Session workspace"}),i&&a.jsx("div",{className:"px-4 pb-2 text-[11px] font-mono text-amber-600 dark:text-amber-400",children:d>0&&f==="next_turn"?x("chat.input.followUp.queued",{count:d}):d>0?x("chat.input.steering.queued",{count:d}):a.jsxs(a.Fragment,{children:[x("chat.input.steering.status"),x("chat.input.steering.enterHint")]})}),u>0&&a.jsx("div",{className:"px-4 pb-2 text-[11px] font-mono text-cyan-600 dark:text-cyan-400",children:u===1?x("chat.input.steering.recoveredOne",{count:u}):x("chat.input.steering.recoveredMany",{count:u})}),qa&&a.jsxs("div",{role:"alert",className:"mx-4 mb-2 flex min-h-8 items-center gap-2 rounded-md border border-red-200 bg-red-50 px-2.5 py-1.5 text-[11px] text-red-700 dark:border-red-900/60 dark:bg-red-950/30 dark:text-red-300",children:[a.jsx(Ns,{className:"h-3.5 w-3.5 shrink-0"}),a.jsx("span",{className:"flex-1 min-w-0",children:qa}),qe&&a.jsx("button",{type:"button","aria-label":x("chat.error.dismiss"),onClick:()=>{Pe(null),bt.current=null},className:"flex justify-center items-center w-6 h-6 text-red-500 rounded shrink-0 hover:bg-red-100 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-red-500 dark:hover:bg-red-950",children:a.jsx(ui,{className:"w-3 h-3"})})]}),ou&&a.jsxs("div",{role:"status","aria-live":"polite",className:"mx-4 mb-2 flex min-h-8 items-center gap-2 rounded-md border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface-2))] px-2.5 py-1.5 text-[11px] text-[hsl(var(--deck-ink-muted))]",children:[a.jsx(hy,{className:"h-3.5 w-3.5 shrink-0 text-[hsl(var(--deck-accent))]"}),a.jsx("span",{className:"flex-1 min-w-0",children:ou}),a.jsx("button",{type:"button","aria-label":x("chat.notice.dismiss"),onClick:()=>et(null),className:"flex h-6 w-6 shrink-0 items-center justify-center rounded text-[hsl(var(--deck-ink-faint))] hover:bg-[hsl(var(--deck-surface))] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))]",children:a.jsx(ui,{className:"w-3 h-3"})})]}),D.length>0&&a.jsxs("div",{className:"px-4 pb-2",children:[a.jsx("div",{className:"mb-1.5 font-mono text-[9.5px] text-[hsl(var(--deck-ink-faint))]",children:x("chat.input.attachment.usage",{count:D.length,limit:zr,used:ac(N0),budget:ac(mi)})}),a.jsx("div",{className:"flex flex-wrap gap-2",children:D.map(w=>a.jsxs("div",{title:w.name,className:"relative overflow-hidden rounded-md border border-[#E5E7EB] bg-[#F9FAFB] dark:border-zinc-800 dark:bg-zinc-900",children:[a.jsx("img",{src:w.dataUrl,alt:w.name,className:"object-cover w-20 h-20"}),a.jsx("button",{type:"button","aria-label":`${x("chat.input.attachment.remove")} ${w.name}`,title:`${x("chat.input.attachment.remove")} ${w.name}`,onClick:()=>S0(w.id),className:"flex absolute top-1 right-1 justify-center items-center w-6 h-6 text-white rounded transition-colors bg-black/75 hover:bg-black focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-white",children:a.jsx(ui,{className:"w-3 h-3"})})]},w.id))})]}),a.jsxs("div",{className:"flex justify-between items-center px-3 py-2 mt-auto",children:[a.jsxs("div",{className:"flex gap-2 items-center",children:[O0?a.jsx("button",{type:"button",disabled:za,"aria-disabled":"true","aria-label":ni,title:ni,onClick:R0,className:"flex h-8 w-8 cursor-help items-center justify-center rounded-md text-[#9CA3AF] opacity-55 transition-colors hover:bg-[hsl(var(--deck-surface-2))] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))] disabled:cursor-not-allowed dark:text-zinc-500",children:a.jsx(bu,{className:"w-4 h-4"})}):a.jsxs("label",{title:ni,className:"relative flex h-8 w-8 cursor-pointer items-center justify-center rounded-md text-[#9CA3AF] transition-colors hover:bg-[#E5E7EB] hover:text-[#111827] focus-within:ring-1 focus-within:ring-[hsl(var(--deck-accent))] dark:text-zinc-500 dark:hover:bg-zinc-800/50 dark:hover:text-zinc-300",children:[a.jsx("input",{ref:wt,type:"file",accept:"image/*",multiple:!0,"aria-label":ni,className:"absolute inset-0 z-10 w-full h-full opacity-0 cursor-pointer",onChange:j0}),a.jsx(bu,{className:"w-4 h-4"})]}),a.jsxs(Yn,{open:Y,onOpenChange:w=>{!i&&!B&&he(w)},children:[a.jsx(Zn,{asChild:!0,children:a.jsxs("button",{type:"button",disabled:i||B,title:x(i?"chat.input.model.locked":"chat.input.model.change"),className:"flex cursor-pointer items-center gap-1 rounded px-2 py-1 text-xs text-[#6B7280] transition-colors hover:bg-[#E5E7EB] hover:text-[#111827] disabled:cursor-not-allowed disabled:opacity-55 dark:text-zinc-500 dark:hover:bg-zinc-800/50 dark:hover:text-zinc-200",children:[nu,a.jsx(js,{className:"w-3 h-3"})]})}),a.jsx(_n,{className:"w-64 p-2 bg-white dark:bg-zinc-900 border border-[#E5E7EB] dark:border-zinc-700",align:"start",children:a.jsx("div",{className:"overflow-y-auto max-h-72",children:Lr.length===0?a.jsx("div",{className:"text-xs text-[#6B7280] dark:text-zinc-500 px-2 py-2",children:x("chat.input.model.empty")}):Object.entries(Lr.reduce((w,G)=>{const q=G.provider||"unknown";return w[q]||(w[q]=[]),w[q].push(G),w},{})).map(([w,G])=>a.jsxs("div",{className:"mb-2",children:[a.jsx("div",{className:"text-xs text-[#6B7280] dark:text-zinc-500 px-2 py-1 capitalize",children:w.replace(/-/g," ")}),G.map(q=>{var Te;return a.jsx("button",{className:`w-full text-left px-2 py-1.5 text-sm rounded hover:bg-[#E5E7EB] dark:hover:bg-zinc-800 transition-colors ${q.id===xs?"bg-[#E5E7EB] text-[#111827] dark:bg-zinc-800 dark:text-zinc-100":"text-[#6B7280] dark:text-zinc-400"}`,onClick:()=>{if(et(null),Ne){Xd(q.id),he(!1);return}pr(q.id,C??void 0).then(()=>he(!1)).catch(()=>{})},children:a.jsxs("span",{className:"flex gap-2 items-center min-w-0",children:[a.jsx("span",{className:"flex-1 min-w-0 truncate",children:q.displayName||q.model}),((Te=q.input)==null?void 0:Te.includes("image"))&&a.jsx("span",{className:"shrink-0 rounded bg-[hsl(var(--deck-accent-soft))] px-1.5 py-0.5 font-mono text-[8.5px] uppercase tracking-[0.08em] text-[hsl(var(--deck-accent))]",children:x("chat.input.model.vision")})]})},q.id)})]},w))})})]}),x0&&a.jsxs(Yn,{open:R,onOpenChange:w=>{!i&&!B&&ce(w)},children:[a.jsx(Zn,{asChild:!0,children:a.jsxs("button",{type:"button",disabled:i||B,"aria-label":x("chat.input.effort.change"),title:x(i?"chat.input.effort.locked":"chat.input.effort.change"),className:"flex cursor-pointer items-center gap-1 rounded px-2 py-1 font-mono text-[11px] text-[#6B7280] transition-colors hover:bg-[#E5E7EB] hover:text-[#111827] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))] disabled:cursor-not-allowed disabled:opacity-55 dark:text-zinc-500 dark:hover:bg-zinc-800/50 dark:hover:text-zinc-200",children:[x("chat.input.effort.label",{effort:mo}),a.jsx(js,{className:"w-3 h-3"})]})}),a.jsxs(_n,{className:"w-52 border border-[#E5E7EB] bg-white p-1 dark:border-zinc-700 dark:bg-zinc-900",align:"start",children:[a.jsx("div",{className:"px-2 py-1 font-mono text-[9px] uppercase tracking-[0.12em] text-[#9CA3AF] dark:text-zinc-600",children:x("chat.input.effort.heading")}),a.jsx("div",{className:"flex flex-col gap-0.5",children:po.map(w=>a.jsx("button",{type:"button","aria-label":x("chat.input.effort.option",{effort:w}),onClick:()=>{eu(w),ce(!1)},className:`flex w-full items-center justify-between rounded px-2 py-1.5 text-left font-mono text-[11px] transition-colors hover:bg-[#E5E7EB] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))] dark:hover:bg-zinc-800 ${mo===w?"bg-[#E5E7EB] text-[#111827] dark:bg-zinc-800 dark:text-zinc-100":"text-[#6B7280] dark:text-zinc-400"}`,children:a.jsx("span",{className:"capitalize",children:w})},w))})]})]}),y0&&a.jsxs(Yn,{open:ve,onOpenChange:w=>{!i&&!B&&He(w)},children:[a.jsx(Zn,{asChild:!0,children:a.jsxs("button",{type:"button",disabled:i||B,"aria-label":x("chat.input.serviceTier.change"),title:x(i?"chat.input.serviceTier.locked":"chat.input.serviceTier.change"),className:"flex cursor-pointer items-center gap-1 rounded px-2 py-1 font-mono text-[11px] text-[#6B7280] transition-colors hover:bg-[#E5E7EB] hover:text-[#111827] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))] disabled:cursor-not-allowed disabled:opacity-55 dark:text-zinc-500 dark:hover:bg-zinc-800/50 dark:hover:text-zinc-200",children:[x("chat.input.serviceTier.label",{tier:Dr}),a.jsx(js,{className:"w-3 h-3"})]})}),a.jsxs(_n,{className:"w-52 border border-[#E5E7EB] bg-white p-1 dark:border-zinc-700 dark:bg-zinc-900",align:"start",children:[a.jsx("div",{className:"px-2 py-1 font-mono text-[9px] uppercase tracking-[0.12em] text-[#9CA3AF] dark:text-zinc-600",children:x("chat.input.serviceTier.heading")}),a.jsx("div",{className:"flex flex-col gap-0.5",children:b0.map(w=>a.jsxs("button",{type:"button","aria-label":x("chat.input.serviceTier.option",{tier:w}),onClick:()=>{La(w),He(!1)},className:`flex w-full items-center justify-between rounded px-2 py-1.5 text-left font-mono text-[11px] transition-colors hover:bg-[#E5E7EB] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))] dark:hover:bg-zinc-800 ${Dr===w?"bg-[#E5E7EB] text-[#111827] dark:bg-zinc-800 dark:text-zinc-100":"text-[#6B7280] dark:text-zinc-400"}`,children:[a.jsx("span",{className:"capitalize",children:w}),w==="fast"&&a.jsx("span",{className:"text-[9px] text-[#9CA3AF] dark:text-zinc-600",children:x("chat.input.serviceTier.fastHint")}),w==="flex"&&a.jsx("span",{className:"text-[9px] text-[#9CA3AF] dark:text-zinc-600",children:x("chat.input.serviceTier.flexHint")})]},w))})]})]}),w0&&a.jsxs(Yn,{open:yt,onOpenChange:w=>{!i&&!B&&We(w)},children:[a.jsx(Zn,{asChild:!0,children:a.jsxs("button",{type:"button",disabled:i||B,"aria-label":x("chat.input.responseVerbosity.change"),title:x(i?"chat.input.responseVerbosity.locked":"chat.input.responseVerbosity.change"),className:"flex cursor-pointer items-center gap-1 rounded px-2 py-1 font-mono text-[11px] text-[#6B7280] transition-colors hover:bg-[#E5E7EB] hover:text-[#111827] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))] disabled:cursor-not-allowed disabled:opacity-55 dark:text-zinc-500 dark:hover:bg-zinc-800/50 dark:hover:text-zinc-200",children:[x("chat.input.responseVerbosity.label",{verbosity:_r}),a.jsx(js,{className:"w-3 h-3"})]})}),a.jsxs(_n,{className:"w-52 border border-[#E5E7EB] bg-white p-1 dark:border-zinc-700 dark:bg-zinc-900",align:"start",children:[a.jsx("div",{className:"px-2 py-1 font-mono text-[9px] uppercase tracking-[0.12em] text-[#9CA3AF] dark:text-zinc-600",children:x("chat.input.responseVerbosity.heading")}),a.jsx("div",{className:"flex flex-col gap-0.5",children:k0.map(w=>a.jsxs("button",{type:"button","aria-label":x("chat.input.responseVerbosity.option",{verbosity:w}),onClick:()=>{Da(w),We(!1)},className:`flex w-full items-center justify-between rounded px-2 py-1.5 text-left font-mono text-[11px] transition-colors hover:bg-[#E5E7EB] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))] dark:hover:bg-zinc-800 ${_r===w?"bg-[#E5E7EB] text-[#111827] dark:bg-zinc-800 dark:text-zinc-100":"text-[#6B7280] dark:text-zinc-400"}`,children:[a.jsx("span",{className:"capitalize",children:w}),w==="auto"&&a.jsx("span",{className:"text-[9px] text-[#9CA3AF] dark:text-zinc-600",children:x("chat.input.responseVerbosity.autoHint")})]},w))})]})]}),a.jsxs(Yn,{open:O,onOpenChange:w=>{!i&&!B&&Q(w)},children:[a.jsx(Zn,{asChild:!0,children:a.jsxs("button",{type:"button",disabled:i||B,"aria-label":x("chat.input.outputSchema.change"),title:x(i?"chat.input.outputSchema.locked":"chat.input.outputSchema.change"),className:`flex h-7 items-center gap-1 rounded px-1.5 font-mono text-[10.5px] transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))] disabled:cursor-not-allowed disabled:opacity-55 ${M.trim()?"bg-[hsl(var(--deck-accent-soft))] text-[hsl(var(--deck-accent))]":"text-[#6B7280] hover:bg-[#E5E7EB] hover:text-[#111827] dark:text-zinc-500 dark:hover:bg-zinc-800/50 dark:hover:text-zinc-200"}`,children:[a.jsx(sy,{className:"h-3.5 w-3.5"}),M.trim()&&"JSON"]})}),a.jsxs(_n,{className:"w-[min(440px,calc(100vw-24px))] border border-[#E5E7EB] bg-white p-0 dark:border-zinc-700 dark:bg-zinc-900",align:"start",children:[a.jsxs("div",{className:"border-b border-[#E5E7EB] px-3 py-2.5 dark:border-zinc-800",children:[a.jsx("div",{className:"font-mono text-[11px] font-semibold text-[#111827] dark:text-zinc-100",children:x("chat.input.outputSchema.title")}),a.jsx("div",{className:"mt-0.5 text-[10.5px] leading-4 text-[#6B7280] dark:text-zinc-500",children:x("chat.input.outputSchema.description")})]}),a.jsxs("div",{className:"p-3",children:[a.jsx(Dc,{value:M,onChange:w=>{const G=w.target.value;te.current=G,$(G),le(null),sn(k,{content:I.current,attachments:T.current,outputSchema:G})},spellCheck:!1,"aria-label":x("chat.input.outputSchema.editor"),"aria-invalid":!!ae,placeholder:x("chat.input.outputSchema.placeholder"),className:"min-h-[180px] resize-y border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-canvas))] font-mono text-[11px] leading-5 focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))]"}),ae&&a.jsxs("div",{role:"alert",className:"mt-2 flex items-center gap-1.5 text-[10.5px] text-red-600 dark:text-red-400",children:[a.jsx(Ns,{className:"h-3.5 w-3.5"}),ae]}),a.jsxs("div",{className:"mt-2.5 flex items-center justify-between gap-2",children:[a.jsx("button",{type:"button",onClick:()=>{const w=JSON.stringify({type:"object",properties:{summary:{type:"string"}},required:["summary"],additionalProperties:!1},null,2);te.current=w,$(w),le(null),sn(k,{content:I.current,attachments:T.current,outputSchema:w})},className:"rounded px-2 py-1 font-mono text-[10.5px] text-[hsl(var(--deck-accent))] hover:bg-[hsl(var(--deck-accent-soft))]",children:x("chat.input.outputSchema.example")}),a.jsx("button",{type:"button",onClick:()=>{te.current="",$(""),le(null),sn(k,{content:I.current,attachments:T.current,outputSchema:""})},className:"rounded px-2 py-1 font-mono text-[10.5px] text-[#6B7280] hover:bg-[#F3F4F6] dark:text-zinc-400 dark:hover:bg-zinc-800",children:x("chat.input.outputSchema.clear")})]})]})]})]}),a.jsxs(Yn,{open:tt,onOpenChange:Z,children:[a.jsx(Zn,{asChild:!0,children:a.jsxs("button",{"data-blade-permission-mode":fr,className:`flex items-center gap-1.5 rounded px-2 py-1 text-xs transition-colors ${Ha.tone==="danger"?"text-amber-600 hover:bg-amber-500/10 dark:text-amber-400":"text-[#6B7280] hover:bg-[#E5E7EB] hover:text-[#111827] dark:text-zinc-500 dark:hover:bg-zinc-800/50 dark:hover:text-zinc-200"}`,children:[a.jsx(A0,{className:"h-3.5 w-3.5"}),T0,a.jsx(js,{className:"w-3 h-3"})]})}),a.jsxs(_n,{className:"w-72 p-1.5 bg-white dark:bg-zinc-900 border border-[#E5E7EB] dark:border-zinc-700",align:"start",children:[a.jsx("div",{className:"px-2 pb-1.5 pt-1 text-[11px] font-medium text-[#9CA3AF] dark:text-zinc-500",children:x("chat.input.mode.aria")}),a.jsx("div",{className:"flex flex-col gap-0.5",children:oc.map(w=>{const G=w.icon,q=fr===w.value,Te=w.tone==="danger";return a.jsxs("button",{type:"button","data-blade-permission-option":w.value,"aria-pressed":q,className:`flex w-full items-start gap-2.5 rounded-md px-2 py-2 text-left transition-colors ${q?"bg-[#F3F4F6] dark:bg-zinc-800/70":"hover:bg-[#F3F4F6] dark:hover:bg-zinc-800/50"}`,onClick:()=>{w.value===kr.YOLO&&fr!==kr.YOLO?(Z(!1),L(!0)):(bs(w.value),Z(!1))},children:[a.jsx(G,{className:`mt-0.5 h-4 w-4 shrink-0 ${Te?"text-amber-500":q?"text-[#111827] dark:text-zinc-100":"text-[#6B7280] dark:text-zinc-400"}`}),a.jsxs("span",{className:"flex-1 min-w-0",children:[a.jsx("span",{className:`block text-[13px] font-medium leading-tight ${Te?"text-amber-600 dark:text-amber-400":"text-[#111827] dark:text-zinc-100"}`,children:x(w.labelKey)}),a.jsx("span",{className:"mt-0.5 block text-[11px] leading-snug text-[#6B7280] dark:text-zinc-500",children:x(w.descriptionKey)})]}),q&&a.jsx(Tp,{className:"mt-0.5 h-3.5 w-3.5 shrink-0 text-[hsl(var(--deck-accent))]"})]},w.value)})})]})]})]}),a.jsxs("div",{className:"flex gap-2 items-center",children:[i&&a.jsx(Kr,{size:"icon",onClick:()=>{t==null||t()},disabled:o,title:x(o?"chat.input.action.stopping":"chat.input.action.stop"),"aria-label":x(o?"chat.input.action.stopping":"chat.input.action.stop"),className:"w-8 h-8 text-white bg-red-500 hover:bg-red-600",children:o?a.jsx(mt,{className:"h-3.5 w-3.5 animate-spin"}):a.jsx(Vc,{className:"w-3 h-3"})}),a.jsx(Kr,{size:"icon","data-blade-submit":!0,onClick:_a,disabled:!P0||n||Qt||bo||B||v0,title:x(B?"chat.input.action.submitting":i?"chat.input.action.steer":"chat.input.action.send"),"aria-label":x(B?"chat.input.action.submitting":i?"chat.input.action.steer":"chat.input.action.send"),className:"h-8 w-8 bg-[#111827] text-white hover:bg-[#0F172A] disabled:bg-[#E5E7EB] disabled:text-[#9CA3AF] dark:bg-zinc-100 dark:text-zinc-900 dark:hover:bg-white dark:disabled:bg-zinc-800 dark:disabled:text-zinc-600",children:B?a.jsx(mt,{className:"w-4 h-4 animate-spin"}):a.jsx(wy,{className:"w-4 h-4"})})]})]})]}),m==="chat"&&a.jsx("div",{className:"text-center text-xs text-[#6B7280] dark:text-zinc-600 mt-3 font-mono",children:x("chat.footer.disclaimer")})]}),a.jsx(Jc,{open:pt,onOpenChange:L,children:a.jsx(Zo,{className:"gap-0 rounded-xl border border-zinc-200 bg-white p-0 dark:border-zinc-800 dark:bg-[#09090b] sm:max-w-[400px]","aria-describedby":"yolo-confirm-desc",hideCloseButton:!0,children:a.jsxs("div",{className:"flex flex-col gap-4 p-5",children:[a.jsxs("div",{className:"flex gap-3 items-center",children:[a.jsx("div",{className:"flex justify-center items-center w-9 h-9 bg-amber-100 rounded-full dark:bg-amber-950/40",children:a.jsx(Rp,{className:"w-5 h-5 text-amber-600 dark:text-amber-400"})}),a.jsx(Xo,{className:"font-mono text-sm font-semibold",children:x("chat.input.mode.yolo.confirm.title")})]}),a.jsx(ea,{id:"yolo-confirm-desc",className:"text-[13px] leading-relaxed text-zinc-600 dark:text-zinc-400",children:x("chat.input.mode.yolo.confirm.desc")}),a.jsxs("div",{className:"flex gap-2 justify-end items-center pt-1",children:[a.jsx("button",{type:"button",onClick:()=>L(!1),className:"h-8 rounded-md px-3 font-mono text-[12px] font-medium text-zinc-600 transition-colors hover:bg-zinc-100 dark:text-zinc-400 dark:hover:bg-zinc-800",children:x("chat.input.mode.yolo.confirm.cancel")}),a.jsx("button",{type:"button","data-blade-yolo-confirm":!0,onClick:()=>{bs(kr.YOLO),L(!1)},className:"h-8 rounded-md bg-amber-600 px-3 font-mono text-[12px] font-semibold text-white transition-colors hover:bg-amber-700",children:x("chat.input.mode.yolo.confirm.accept")})]})]})})})]})}const i3={running:{dot:"bg-blue-500 shadow-[0_0_5px_rgba(59,130,246,0.7)] animate-pulse",labelKey:"recent.status.running",text:"text-blue-700 dark:text-blue-400"},queued:{dot:"bg-amber-400",labelKey:"recent.status.queued",text:"text-amber-700 dark:text-amber-400"},interrupted:{dot:"bg-orange-500",labelKey:"recent.status.paused",text:"text-orange-700 dark:text-orange-400"},failed:{dot:"bg-red-500",labelKey:"recent.status.failed",text:"text-red-700 dark:text-red-400"},cancelled:{dot:"bg-zinc-400",labelKey:"recent.status.cancelled",text:"text-zinc-500"},completed:{dot:"bg-[hsl(var(--deck-accent))]",labelKey:"recent.status.done",text:"text-[hsl(var(--deck-accent))]"}};function o3(e,t){if(!e)return"";const n=new Date(e);if(Number.isNaN(n.getTime()))return"";const r=Date.now()-n.getTime(),s=Math.floor(r/6e4);if(s<1)return t("recent.time.justNow");if(s<60)return t("recent.time.minutes",{n:s});const i=Math.floor(s/60);if(i<24)return t("recent.time.hours",{n:i});const o=Math.floor(i/24);return t("recent.time.days",{n:o})}function a3(e){return e.split("/").filter(Boolean).at(-1)||e}function c3({sessions:e,onSelect:t,cancellingTaskKeys:n,retryingTaskKeys:r,unreadTaskKeys:s,onCancel:i,onRetry:o,catalogLoadState:d="ready",className:f}){const u=Ut(),m=[...e].sort(Qd).slice(0,4),p=d==="loading"||d==="hydrating";return m.length===0?!p&&d!=="error"?null:a.jsxs("div",{role:d==="error"?"alert":"status",className:J("mt-7 flex items-center gap-2 rounded-md border border-[hsl(var(--deck-hairline))] bg-[hsl(var(--deck-surface))]/50 px-3 py-2 font-mono text-[10.5px] text-[hsl(var(--deck-ink-faint))]",f),children:[p?a.jsx(mt,{className:"h-3 w-3 animate-spin text-[hsl(var(--deck-accent))]"}):a.jsx("span",{className:"h-1.5 w-1.5 rounded-full bg-amber-500"}),u(p?"sidebar.catalog.syncing":"sidebar.catalog.incomplete")]}):a.jsxs("div",{className:J("mt-7",f),children:[a.jsxs("div",{className:"mb-2 flex items-center justify-between",children:[a.jsx("span",{className:"deck-eyebrow text-[hsl(var(--deck-ink-faint))]",children:u("taskHome.recent.title")}),a.jsx("span",{className:"font-mono text-[10.5px] text-[hsl(var(--deck-ink-faint))]",children:u(p?"taskHome.recent.partial":d==="error"?"taskHome.recent.incomplete":"taskHome.recent.total",{count:e.length})})]}),a.jsx("div",{className:"grid grid-cols-1 gap-1 sm:grid-cols-2",children:m.map(h=>{const b=i3[h.taskStatus],k=h.pendingInteraction?h.pendingInteraction.type==="question"?"interaction.badge.question":h.pendingInteraction.type==="elicitation"?"interaction.badge.elicitation":"interaction.badge.permission":null,S=a3(h.taskSourceProjectPath||h.projectPath),C=gi(h,u),x=Me(be(h)),N=h.taskStatus==="running"||h.taskStatus==="queued",P=n.includes(x),F=r.includes(x),D=!!h.taskRetryAvailable&&(h.taskStatus==="failed"||h.taskStatus==="interrupted"||h.taskStatus==="cancelled"),j=s.includes(x),I=Vd(h,u);return a.jsxs("div",{className:J("group flex items-center gap-3 rounded-md border border-transparent px-3 py-1.5 text-left transition-colors","hover:border-[hsl(var(--deck-border))] hover:bg-[hsl(var(--deck-surface))]"),children:[a.jsxs("button",{type:"button",onClick:()=>t(h),className:"flex min-w-0 flex-1 items-center gap-3 text-left focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))]",children:[a.jsx("span",{className:J("h-1.5 w-1.5 shrink-0 rounded-full",k?"animate-pulse bg-amber-500 shadow-[0_0_5px_rgba(245,158,11,0.75)]":b.dot)}),a.jsxs("span",{className:"min-w-0 flex-1",children:[a.jsxs("span",{className:"flex items-center gap-1.5 text-[12.5px] text-[hsl(var(--deck-ink))]",children:[a.jsx("span",{className:"truncate",children:C}),j&&a.jsx("span",{title:u("taskSwitcher.new"),className:"h-1.5 w-1.5 shrink-0 rounded-full bg-[hsl(var(--deck-accent))] shadow-[0_0_5px_hsl(var(--deck-accent-glow)/0.75)]"}),h.taskRetriedFrom&&a.jsx("span",{title:`${u("session.retriedFrom")} ${h.taskRetriedFrom.sessionId.slice(0,6)}`,className:"shrink-0 font-mono text-[8.5px] text-[hsl(var(--deck-accent))]",children:u("session.retryShort")})]}),a.jsxs("span",{className:"mt-0.5 flex items-center gap-1.5 truncate font-mono text-[10.5px] text-[hsl(var(--deck-ink-faint))]",children:[a.jsx("span",{className:"truncate",children:S}),a.jsx("span",{className:"opacity-40",children:"·"}),a.jsx("span",{className:J("shrink-0",k?"text-amber-700 dark:text-amber-400":b.text),children:u(k??b.labelKey)}),a.jsx("span",{className:"opacity-40",children:"·"}),a.jsx("span",{className:"shrink-0",children:o3(h.lastMessageTime||h.firstMessageTime,u)})]}),I&&a.jsx("span",{title:I,className:"mt-0.5 block truncate font-mono text-[9.5px] text-red-600 dark:text-red-400",children:I})]}),a.jsx(ry,{className:"h-3.5 w-3.5 shrink-0 text-[hsl(var(--deck-ink-faint))] opacity-0 transition-opacity group-hover:opacity-100"})]}),N&&a.jsx("button",{type:"button","aria-label":u(P?"session.action.stopping":"session.action.stop",{title:C}),disabled:P,onClick:()=>i(h),className:"rounded p-1.5 text-red-500 transition-colors hover:bg-red-500/10 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-red-500 disabled:cursor-wait disabled:opacity-60",children:P?a.jsx(mt,{className:"h-3.5 w-3.5 animate-spin"}):a.jsx(Vc,{className:"h-3.5 w-3.5"})}),D&&a.jsx("button",{type:"button","aria-label":u(F?"session.action.retrying":"session.action.retry",{title:C}),disabled:F,onClick:()=>o(h),className:"rounded p-1.5 text-[hsl(var(--deck-accent))] transition-colors hover:bg-[hsl(var(--deck-accent-soft))] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))] disabled:cursor-wait disabled:opacity-60",children:F?a.jsx(mt,{className:"h-3.5 w-3.5 animate-spin"}):a.jsx(Yo,{className:"h-3.5 w-3.5"})})]},x)})})]})}function l3({index:e,title:t,description:n,icon:r,hint:s,onClick:i}){const o=String(e+1).padStart(2,"0"),d=`⌘${e+1}`;return a.jsxs("button",{type:"button",onClick:i,className:J("group relative flex min-h-[100px] flex-col justify-between overflow-hidden rounded-lg border p-3.5 text-left transition","border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface))]","hover:-translate-y-[1px] hover:border-[hsl(var(--deck-accent)/0.55)] hover:shadow-[0_10px_28px_-14px_hsl(var(--deck-accent)/0.35)]","focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[hsl(var(--deck-accent))] focus-visible:ring-offset-2 focus-visible:ring-offset-[hsl(var(--deck-canvas))]","dark:bg-[hsl(var(--deck-surface))] dark:hover:shadow-[0_10px_28px_-14px_hsl(var(--deck-accent)/0.55)]"),children:[a.jsx("span",{"aria-hidden":"true",className:J("pointer-events-none absolute right-3 top-3 h-2 w-2","border-r border-t border-[hsl(var(--deck-border-strong))]","transition-colors group-hover:border-[hsl(var(--deck-accent))]")}),a.jsxs("div",{className:"flex items-start justify-between",children:[a.jsx("span",{className:J("inline-flex h-8 w-8 items-center justify-center rounded-md border transition-colors","border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface-2))]","group-hover:border-[hsl(var(--deck-accent)/0.5)] group-hover:bg-[hsl(var(--deck-accent-soft))]"),children:a.jsx(r,{className:"h-4 w-4 text-[hsl(var(--deck-ink-muted))] transition-colors group-hover:text-[hsl(var(--deck-accent))]"})}),a.jsx("span",{className:"font-mono text-[10px] tracking-[0.16em] text-[hsl(var(--deck-ink-faint))]",children:o})]}),a.jsxs("div",{children:[a.jsx("div",{className:"text-[13px] font-semibold text-[hsl(var(--deck-ink))]",children:t}),a.jsx("div",{className:"mt-1 line-clamp-2 text-[11.5px] leading-[1.45] text-[hsl(var(--deck-ink-muted))]",children:n}),a.jsxs("div",{className:"mt-2 flex items-center justify-between",children:[a.jsx("span",{className:"truncate font-mono text-[10px] text-[hsl(var(--deck-ink-faint))] opacity-0 transition-opacity group-hover:opacity-100",children:s}),a.jsx("span",{className:"deck-kbd shrink-0 opacity-0 transition-opacity group-hover:opacity-100",children:d})]})]})]})}const cc=[{key:"explore",titleKey:"taskHome.template.explore.title",descriptionKey:"taskHome.template.explore.description",icon:Gc,prompt:"Explore this codebase and explain ",hintKey:"taskHome.template.explore.hint"},{key:"build",titleKey:"taskHome.template.build.title",descriptionKey:"taskHome.template.build.description",icon:py,prompt:"Build a production-ready ",hintKey:"taskHome.template.build.hint"},{key:"review",titleKey:"taskHome.template.review.title",descriptionKey:"taskHome.template.review.description",icon:yy,prompt:"/review uncommitted",hintKey:"taskHome.template.review.hint"},{key:"fix",titleKey:"taskHome.template.fix.title",descriptionKey:"taskHome.template.fix.description",icon:Sy,prompt:"Investigate and fix ",hintKey:"taskHome.template.fix.hint"}];function d3(e,t){return t?t.split("/").filter(Boolean).at(-1)||t:e("taskHome.hero.projectFallback")}function u3(){const e=Ut(),{taskWorkspaceInfo:t,isTaskWorkspaceLoading:n,taskWorkspaceError:r,isDispatchingTask:s,sessions:i,boundProjects:o,selectedProjectPath:d,error:f,selectProject:u,dispatchTask:m,startCodeReview:p,sendMessage:h,startTemporarySession:b,selectSession:k,cancelTask:S,cancellingTaskKeys:C,retryTask:x,retryingTaskKeys:N,unreadTaskKeys:P,taskEventConnectionState:F,catalogLoadState:D,reconnectTaskEvents:j,clearError:I,loadTaskWorkspaceInfo:T,loadBoundProjects:M}=H(),$=on(_=>_.openSettings),te=on(_=>_.isSettingsOpen),O=Mt(_=>_.currentMode),Q=Mt(_=>_.currentModelId),ae=Mt(_=>_.configuredModels),le=Mt(_=>_.isLoading),de=Mt(_=>_.hasLoaded),me=Mt(_=>_.loadedWorkspacePath),Y=Mt(_=>_.error),he=Mt(_=>_.loadModels),[R,ce]=y.useState("worktree"),[ve,He]=y.useState(),[yt,We]=y.useState(!1),tt=e(F==="connected"?"taskHome.eyebrow":F==="reconnecting"?"taskHome.feed.reconnecting":F==="offline"?"taskHome.feed.offline":"taskHome.feed.connecting"),Z=y.useMemo(()=>o.find(_=>_.path===d)??o.find(_=>_.isCurrent),[o,d]),pt=y.useMemo(()=>zF(i,d,(t==null?void 0:t.cwd)??null),[d,i,t==null?void 0:t.cwd]),L=(Z!=null&&Z.available?Z.path:void 0)??(t==null?void 0:t.cwd),B=`task:${L??"unavailable"}`;y.useEffect(()=>{!te&&L&&(!de||me!==L)&&he(L)},[te,he,me,de,L]);const Se=!(Z!=null&&Z.available)&&n,qe=Z!=null&&Z.available?null:r,Pe=!!(L&&!Se&&!qe),Jt=!!(Q&&ae.some(_=>_.id===Q)),et=!de||le,Ht=Pe&&Jt&&!et&&Y===null,Qt=y.useMemo(()=>({project:d3(e,(Z==null?void 0:Z.path)??(t==null?void 0:t.cwd)),branch:(Z==null?void 0:Z.gitBranch)??(t==null?void 0:t.gitBranch)??e("taskHome.context.branchFallback")}),[Z,t,e]),bt=y.useCallback(async _=>{const Re=_.content.trim();if(Re==="/review"||Re.startsWith("/review ")){if(_.attachments.length>0)throw new Error(e("taskHome.review.attachmentsUnsupported"));if(_.outputSchema)throw new Error(e("taskHome.review.outputSchemaUnsupported"));const wt=Re.split(/\s+/),qt=wt[1]||"uncommitted";if(qt!=="uncommitted"&&qt!=="base"&&qt!=="commit"||qt==="uncommitted"&&wt.length!==2&&wt.length!==1||(qt==="base"||qt==="commit")&&wt.length!==3)throw new Error(e("taskHome.review.usage"));await p({projectPath:L,kind:qt,...wt[2]?{ref:wt[2]}:{},modelId:_.modelId??Q??void 0});return}if(_.content.trimStart().startsWith("!")){b(L),await h({content:_.content,attachments:[]});return}await m({prompt:_.content,projectPath:L,isolation:R,permissionMode:O,modelId:_.modelId??Q??void 0,reasoningEffort:_.reasoningEffort,serviceTier:_.serviceTier,responseVerbosity:_.responseVerbosity,communicationStyle:_.communicationStyle,..._.outputSchema?{outputSchema:_.outputSchema}:{},attachments:_.attachments.map(wt=>({type:"image",content:wt.dataUrl,mimeType:wt.mimeType,name:wt.name}))})},[O,Q,m,R,h,p,b,L,e]);return y.useEffect(()=>{const _=Re=>{if(!(Re.metaKey||Re.ctrlKey))return;const wt=Number.parseInt(Re.key,10);if(Number.isNaN(wt)||wt<1||wt>cc.length)return;const qt=cc[wt-1];qt&&(Re.preventDefault(),He({key:B,content:qt.prompt}))};return window.addEventListener("keydown",_),()=>window.removeEventListener("keydown",_)},[B]),a.jsx("main",{className:"deck-canvas relative flex-1 overflow-y-auto text-[hsl(var(--deck-ink))]",children:a.jsxs("div",{className:"mx-auto flex min-h-full w-full max-w-[960px] flex-col px-6 py-8 md:px-8 md:py-10",children:[a.jsxs("div",{className:"flex gap-4 items-start mb-6",children:[a.jsx(Jd,{size:36,className:"hidden mt-1 sm:inline-flex"}),a.jsxs("div",{className:"flex-1",children:[a.jsxs("div",{className:J("deck-eyebrow flex items-center gap-2",F==="offline"?"text-amber-700 dark:text-amber-400":"text-[hsl(var(--deck-accent))]"),children:[F==="offline"?a.jsx(ku,{className:"w-3 h-3"}):a.jsx("span",{className:"deck-pulse-dot"}),tt]}),a.jsxs("h1",{className:"mt-2.5 max-w-3xl text-balance text-[clamp(28px,3vw,34px)] font-medium leading-[1.12] tracking-[-0.028em] text-[hsl(var(--deck-ink))]",children:[e("taskHome.hero.prefix")," ",a.jsx("span",{className:"whitespace-nowrap font-mono text-[0.82em] text-[hsl(var(--deck-accent))]",children:Qt.project}),a.jsx("span",{className:"text-[hsl(var(--deck-ink-muted))]",children:"?"})]}),a.jsx("p",{className:"mt-2 max-w-[46rem] text-[13px] leading-[1.55] text-[hsl(var(--deck-ink-muted))]",children:e("taskHome.hero.subtitle")})]})]}),a.jsxs("div",{className:"mb-4",children:[a.jsxs("div",{className:"flex justify-between items-center mb-2",children:[a.jsx("span",{className:"deck-eyebrow text-[hsl(var(--deck-ink-faint))]",children:e("taskHome.templates.title")}),a.jsxs("span",{className:"inline-flex items-center gap-1.5 font-mono text-[10.5px] text-[hsl(var(--deck-ink-faint))]",children:[a.jsx(Ap,{className:"w-3 h-3"}),a.jsx("span",{children:e("taskHome.templates.hint")})]})]}),a.jsx("div",{className:"grid grid-cols-1 gap-2 sm:grid-cols-2 lg:grid-cols-4",children:cc.map((_,Re)=>a.jsx(l3,{index:Re,title:e(_.titleKey),description:e(_.descriptionKey),icon:_.icon,hint:e(_.hintKey),onClick:()=>He({key:B,content:_.prompt})},_.key))})]}),a.jsxs("div",{"data-blade-task-dispatch-ready":Ht?"true":"false","data-blade-task-workspace-ready":Pe?"true":"false","data-blade-task-model-ready":Jt?"true":"false","data-blade-task-model-loaded":de?"true":"false","data-blade-task-model-loading":le?"true":"false",className:"rounded-xl border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface))] shadow-[0_28px_80px_-32px_hsl(var(--deck-accent)/0.28),0_2px_0_hsl(var(--deck-hairline))]",children:[a.jsxs("div",{className:"flex items-center gap-0 border-b border-[hsl(var(--deck-hairline))] bg-[hsl(var(--deck-surface-2))]/50",children:[a.jsxs("div",{className:"flex flex-1 items-center min-w-0",children:[a.jsxs(Yn,{children:[a.jsx(Zn,{asChild:!0,children:a.jsxs("button",{type:"button","aria-label":e("taskHome.context.projectSelect"),disabled:o.length===0,className:"group flex h-9 min-w-0 items-center gap-2 border-r border-[hsl(var(--deck-hairline))] px-3 font-mono text-[11.5px] text-[hsl(var(--deck-ink))] transition-colors hover:bg-[hsl(var(--deck-surface))] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-inset focus-visible:ring-[hsl(var(--deck-accent))] disabled:opacity-50",children:[a.jsx(li,{className:"h-3.5 w-3.5 shrink-0 text-[hsl(var(--deck-accent))]"}),a.jsx("span",{className:"font-medium truncate",children:(Z==null?void 0:Z.name)??Qt.project}),a.jsx(js,{className:"h-3 w-3 shrink-0 text-[hsl(var(--deck-ink-faint))] transition-transform group-data-[state=open]:rotate-180"})]})}),a.jsx(_n,{align:"start",sideOffset:4,className:"w-56 rounded-lg border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface))] p-1 shadow-xl",children:a.jsxs("div",{className:"flex flex-col",children:[o.map(_=>a.jsxs("button",{type:"button",disabled:!_.available,onClick:()=>{u(_.path)},className:J("flex items-center gap-2 rounded-md px-2.5 py-1.5 text-left font-mono text-[12px] transition-colors",_.path===d?"bg-[hsl(var(--deck-accent-soft))] text-[hsl(var(--deck-accent))]":"text-[hsl(var(--deck-ink-muted))] hover:bg-[hsl(var(--deck-surface-2))] hover:text-[hsl(var(--deck-ink))]",!_.available&&"opacity-40"),children:[a.jsx(li,{className:"w-3 h-3 shrink-0"}),a.jsx("span",{className:"flex-1 min-w-0 truncate",children:_.name}),_.path===d&&a.jsx("span",{className:"h-1.5 w-1.5 shrink-0 rounded-full bg-[hsl(var(--deck-accent))]"})]},_.path)),o.length===0&&a.jsx("span",{className:"px-2.5 py-2 text-center font-mono text-[11px] text-[hsl(var(--deck-ink-faint))]",children:e("taskHome.setup.workspace.empty")})]})})]}),a.jsxs("button",{type:"button","data-blade-task-isolation":R,"aria-pressed":R==="worktree",onClick:()=>ce(_=>_==="worktree"?"local":"worktree"),className:J("flex h-9 shrink-0 items-center gap-1.5 border-r border-[hsl(var(--deck-hairline))] px-3 font-mono text-[11px] transition-colors",R==="worktree"?"text-[hsl(var(--deck-accent))]":"text-[hsl(var(--deck-ink-muted))] hover:text-[hsl(var(--deck-ink))]"),title:e("taskHome.context.isolationToggleTitle"),children:[R==="worktree"?a.jsx(ky,{className:"w-3 h-3"}):a.jsx(my,{className:"w-3 h-3"}),a.jsx("span",{className:"hidden sm:inline",children:e(R==="worktree"?"taskHome.context.isolation.worktree":"taskHome.context.isolation.local")})]}),a.jsxs("span",{className:"flex h-9 shrink-0 items-center gap-1.5 border-r border-[hsl(var(--deck-hairline))] px-3 font-mono text-[11px] text-[hsl(var(--deck-ink-muted))]",children:[a.jsx(zc,{className:"w-3 h-3"}),a.jsx("span",{className:"hidden sm:inline",children:Qt.branch})]})]}),a.jsxs("div",{className:"flex gap-2 items-center px-3 shrink-0",children:[(t==null?void 0:t.taskAdmission)&&a.jsx(Wx,{inFlight:t.taskAdmission.inFlight,queued:t.taskAdmission.queued,maxConcurrent:t.taskAdmission.maxConcurrent,compact:!0}),s&&a.jsxs("span",{className:"inline-flex items-center gap-1.5 font-mono text-[10.5px] text-[hsl(var(--deck-accent))]",children:[a.jsx(mt,{className:"w-3 h-3 animate-spin"}),a.jsx("span",{className:"hidden sm:inline",children:e("taskHome.context.preparing")})]})]})]}),!Ht&&a.jsxs("section",{"aria-label":e("taskHome.setup.aria"),className:"border-b border-[hsl(var(--deck-hairline))] bg-[hsl(var(--deck-canvas-veil))] px-3 py-3",children:[a.jsxs("div",{className:"mb-2.5",children:[a.jsx("h2",{className:"font-mono text-[11px] font-semibold uppercase tracking-[0.12em] text-[hsl(var(--deck-ink))]",children:e("taskHome.setup.title")}),a.jsx("p",{className:"mt-0.5 text-[11px] text-[hsl(var(--deck-ink-faint))]",children:e("taskHome.setup.description")})]}),a.jsxs("div",{className:"grid gap-2 sm:grid-cols-2",children:[a.jsxs("div",{className:"flex min-w-0 items-center gap-2.5 rounded-md border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface))] px-3 py-2.5",children:[a.jsx("span",{className:J("flex justify-center items-center w-7 h-7 rounded-md border shrink-0",Pe?"text-emerald-700 bg-emerald-50 border-emerald-300/70 dark:border-emerald-800/70 dark:bg-emerald-950/40 dark:text-emerald-300":qe?"text-red-700 bg-red-50 border-red-300/70 dark:border-red-900/70 dark:bg-red-950/40 dark:text-red-300":"text-amber-700 bg-amber-50 border-amber-300/70 dark:border-amber-800/70 dark:bg-amber-950/40 dark:text-amber-300"),children:Se?a.jsx(mt,{className:"h-3.5 w-3.5 animate-spin"}):Pe?a.jsx(mu,{className:"h-3.5 w-3.5"}):qe?a.jsx(Ns,{className:"h-3.5 w-3.5"}):a.jsx(li,{className:"h-3.5 w-3.5"})}),a.jsxs("span",{className:"flex-1 min-w-0",children:[a.jsx("span",{className:"block font-mono text-[11px] font-medium text-[hsl(var(--deck-ink))]",children:e("taskHome.setup.workspace.title")}),a.jsx("span",{className:"mt-0.5 block truncate text-[10.5px] text-[hsl(var(--deck-ink-faint))]",children:Se?e("taskHome.setup.workspace.loading"):qe||(Pe?e("taskHome.setup.workspace.ready",{project:Qt.project}):e("taskHome.setup.workspace.required"))})]}),!Pe&&a.jsxs("div",{className:"flex gap-1 items-center shrink-0",children:[qe&&a.jsx("button",{type:"button",onClick:()=>{Promise.all([T(),M()])},"aria-label":e("taskHome.setup.workspace.retry"),title:e("taskHome.setup.workspace.retry"),className:"flex h-8 w-8 items-center justify-center rounded-md text-[hsl(var(--deck-ink-muted))] hover:bg-[hsl(var(--deck-canvas))] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))]",children:a.jsx(di,{className:"h-3.5 w-3.5"})}),a.jsxs("button",{type:"button","data-project-setup-trigger":!0,onClick:()=>We(!0),className:"inline-flex h-8 items-center gap-1.5 rounded-md border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-canvas))] px-2.5 font-mono text-[10.5px] text-[hsl(var(--deck-ink))] hover:border-[hsl(var(--deck-accent)/0.55)] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))]",children:[a.jsx(Ro,{className:"w-3 h-3"}),e("taskHome.setup.workspace.action")]})]})]}),a.jsxs("div",{className:"flex min-w-0 items-center gap-2.5 rounded-md border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface))] px-3 py-2.5",children:[a.jsx("span",{className:J("flex h-7 w-7 shrink-0 items-center justify-center rounded-md border",Jt&&!Y?"border-emerald-300/70 bg-emerald-50 text-emerald-700 dark:border-emerald-800/70 dark:bg-emerald-950/40 dark:text-emerald-300":Y?"border-red-300/70 bg-red-50 text-red-700 dark:border-red-900/70 dark:bg-red-950/40 dark:text-red-300":"border-amber-300/70 bg-amber-50 text-amber-700 dark:border-amber-800/70 dark:bg-amber-950/40 dark:text-amber-300"),children:et?a.jsx(mt,{className:"h-3.5 w-3.5 animate-spin"}):Jt&&!Y?a.jsx(mu,{className:"h-3.5 w-3.5"}):Y?a.jsx(Ns,{className:"h-3.5 w-3.5"}):a.jsx(fu,{className:"h-3.5 w-3.5"})}),a.jsxs("span",{className:"flex-1 min-w-0",children:[a.jsx("span",{className:"block font-mono text-[11px] font-medium text-[hsl(var(--deck-ink))]",children:e("taskHome.setup.model.title")}),a.jsx("span",{title:Y??void 0,className:J("mt-0.5 block truncate text-[10.5px]",Y?"text-red-600 dark:text-red-400":"text-[hsl(var(--deck-ink-faint))]"),children:et?e("taskHome.setup.model.loading"):Y||e(Jt?"taskHome.setup.model.ready":"taskHome.setup.model.required")})]}),!et&&(!Jt||Y)&&a.jsxs("button",{type:"button","data-model-setup-trigger":!0,onClick:()=>{Y?he(L):$("models")},className:"inline-flex h-8 shrink-0 items-center gap-1.5 rounded-md border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-canvas))] px-2.5 font-mono text-[10.5px] text-[hsl(var(--deck-ink))] hover:border-[hsl(var(--deck-accent)/0.55)] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))]",children:[Y?a.jsx(di,{className:"w-3 h-3"}):a.jsx(fu,{className:"w-3 h-3"}),e(Y?"taskHome.setup.model.retry":"taskHome.setup.model.action")]})]})]})]}),a.jsx("div",{className:"px-3 pt-3 pb-3",children:a.jsx(s3,{variant:"task",draft:(ve==null?void 0:ve.key)===B?ve.content:void 0,draftKey:B,placeholder:e("taskHome.composer.placeholder"),onSend:async _=>{try{return await bt(_),He(void 0),!0}catch{return!1}},disabled:s,submitDisabled:!Ht,shellSubmitDisabled:!Ht,workspacePath:L},B)})]}),F==="offline"&&a.jsxs("div",{role:"alert",className:"flex flex-wrap gap-3 items-center px-3 py-2 mt-4 text-amber-900 rounded-md border border-amber-300/70 bg-amber-50/80 dark:border-amber-800/70 dark:bg-amber-950/35 dark:text-amber-200",children:[a.jsx(ku,{className:"h-3.5 w-3.5 shrink-0"}),a.jsx("span",{className:"min-w-0 flex-1 text-[12px]",children:e("taskHome.feed.offlineDescription")}),a.jsxs("button",{type:"button",onClick:()=>void j().catch(()=>{}),className:"inline-flex min-h-8 items-center gap-1.5 rounded-md border border-amber-400/70 bg-white/60 px-2.5 font-mono text-[10.5px] font-medium transition-colors hover:bg-white focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-amber-500 dark:border-amber-700 dark:bg-amber-950/50 dark:hover:bg-amber-900/50",children:[a.jsx(di,{className:"w-3 h-3"}),e("taskHome.feed.retry")]})]}),f&&a.jsxs("div",{role:"alert","data-blade-task-error":!0,className:"flex justify-between items-center px-3 py-2 mt-4 font-mono text-xs text-red-700 rounded-md border border-red-200 bg-red-50/80 dark:border-red-900/60 dark:bg-red-950/30 dark:text-red-300",children:[a.jsx("span",{children:f}),a.jsx("button",{type:"button",onClick:I,className:"underline",children:e("taskHome.error.dismiss")})]}),a.jsx(c3,{sessions:pt,catalogLoadState:D,cancellingTaskKeys:C,retryingTaskKeys:N,unreadTaskKeys:P,onSelect:_=>{k(be(_))},onCancel:_=>{S(be(_)).catch(()=>{})},onRetry:_=>{x(be(_)).catch(()=>{})}}),a.jsxs("div",{className:"mt-6 flex items-center justify-center gap-2 text-[10.5px] text-[hsl(var(--deck-ink-faint))]",children:[a.jsx(Mp,{className:"w-3 h-3"}),a.jsx("span",{className:"font-mono uppercase tracking-[0.14em]",children:e("taskHome.footer.note")})]}),a.jsx(e0,{open:yt,onOpenChange:We})]})})}const Bc="blade.sessions.last",bi="session",Hc="project",Oo="workspace",qc="view";function p3(e){if(!e||typeof e!="object"||Array.isArray(e))return null;const t=e;return typeof t.sessionId=="string"&&t.sessionId.trim()&&typeof t.projectPath=="string"&&t.projectPath.trim()?{sessionId:t.sessionId,projectPath:t.projectPath}:null}function f3(e){var o,d,f;const t=new URLSearchParams(e),n=((o=t.get(bi))==null?void 0:o.trim())||null,r=((d=t.get(Hc))==null?void 0:d.trim())||null,s=((f=t.get(Oo))==null?void 0:f.trim())||null,i=t.get(qc)==="board"?"board":"workspace";return{sessionRef:n&&(s||r)?{sessionId:n,projectPath:s||r}:null,projectPath:r,hasSessionParam:t.has(bi),view:i}}function m3(e=typeof localStorage>"u"?null:localStorage){if(!e)return null;try{const t=e.getItem(Bc);return t?p3(JSON.parse(t)):null}catch{return null}}function h3(e,t,n={}){const r=n.href??(typeof window>"u"?"http://localhost/":window.location.href),s=new URL(r),i=n.view??"workspace",o=n.displayProjectPath??(i==="board"?t:e==null?void 0:e.projectPath)??t,d=(e==null?void 0:e.projectPath)??null;e&&i==="workspace"?s.searchParams.set(bi,e.sessionId):s.searchParams.delete(bi),o?s.searchParams.set(Hc,o):s.searchParams.delete(Hc),d&&o&&d!==o?s.searchParams.set(Oo,d):s.searchParams.delete(Oo),i==="board"?(s.searchParams.set(qc,"board"),s.searchParams.delete(bi),s.searchParams.delete(Oo)):s.searchParams.delete(qc);const f=n.storage===void 0?typeof localStorage>"u"?null:localStorage:n.storage;try{e&&i==="workspace"?f==null||f.setItem(Bc,JSON.stringify(e)):i==="workspace"&&(f==null||f.removeItem(Bc))}catch{}const u=`${s.pathname}${s.search}${s.hash}`,m=n.replaceState??(typeof window>"u"?void 0:p=>window.history.replaceState(null,"",p));return m==null||m(u),u}const g3=y.lazy(()=>es(()=>import("./ChatView-_4ut_-Jh.js").then(e=>e.a),__vite__mapDeps([18,1,3,5,14,2,19,7,12,8,0])).then(e=>({default:e.ChatView}))),b3=y.lazy(()=>es(()=>import("./KanbanBoard-CB5C4tJC.js"),__vite__mapDeps([20,1,3,6,12,7,19,2])).then(e=>({default:e.KanbanBoard})));function k3(){const e=Ut(),[t,n]=y.useState(!1),r=H(j=>j.subscribeToTaskEvents),s=H(j=>j.unsubscribeFromTaskEvents),i=H(j=>j.currentSessionRef),o=H(j=>j.isTemporarySession),d=H(j=>j.loadTaskWorkspaceInfo),f=H(j=>j.loadBoundProjects),u=H(j=>j.loadSessions),m=H(j=>j.selectSession),p=H(j=>j.selectProject),h=H(j=>j.startTemporarySession),b=H(j=>j.setError),k=H(j=>j.sessions),S=H(j=>j.selectedProjectPath),C=Mt(j=>j.loadModels),x=Xr(j=>j.loadSettings),N=on(j=>j.mainView),P=on(j=>j.setMainView),F=on(j=>j.boardProjectPath),D=on(j=>j.setBoardProjectPath);return y.useEffect(()=>(r().catch(j=>{console.error("Failed to subscribe to task events",j)}),s),[r,s]),y.useEffect(()=>{let j=!1;return(async()=>{var le;u(),x(),C();const T=f3(window.location.search);P(T.view),D(T.view==="board"?T.projectPath:null);const M=m3(),$=T.view==="board"?null:T.hasSessionParam?T.sessionRef:T.projectPath?null:M,te=Promise.all([d(),f()]),O=!$&&!T.projectPath;if(O&&(h(),n(!0)),await te,j)return;const Q=H.getState(),ae=T.projectPath?(le=Q.boundProjects.find(de=>de.path===T.projectPath&&de.available))==null?void 0:le.path:null;if(ae&&p(ae),!($&&(await m($),j))){if(!$||!oe(H.getState().currentSessionRef,$)){const de=$?H.getState().error:null;h(),de&&b(de)}O||n(!0)}})(),()=>{j=!0}},[f,C,u,x,d,p,m,b,D,P,h]),y.useEffect(()=>{if(!t)return;const j=i?Gd(k,i):void 0;h3(N==="workspace"?i:null,N==="board"?F:S,{displayProjectPath:N==="board"?F:j?lo(j,S):S,view:N})},[F,i,t,N,S,k]),a.jsxs(a.Fragment,{children:[a.jsx(_5,{}),a.jsx(D5,{children:t?N==="board"?a.jsx(y.Suspense,{fallback:a.jsx("div",{className:"flex h-full items-center justify-center font-mono text-[12px] text-[hsl(var(--deck-ink-faint))]",children:e("app.restoring")}),children:a.jsx(b3,{})}):!i||o?a.jsx(u3,{}):a.jsx(y.Suspense,{fallback:a.jsx("div",{className:"flex h-full items-center justify-center font-mono text-[12px] text-[hsl(var(--deck-ink-faint))]",children:e("app.restoring")}),children:a.jsx(g3,{})}):a.jsx("div",{className:"flex h-full items-center justify-center font-mono text-[12px] text-[hsl(var(--deck-ink-faint))]",children:e("app.restoring")})})]})}M0.createRoot(document.getElementById("root")).render(a.jsx($0.StrictMode,{children:a.jsx(k3,{})}));export{Gc as $,Ns as A,sy as B,Tp as C,Jc as D,mp as E,hu as F,zc as G,my as H,gi as I,Vd as J,Vc as K,mt as L,Ep as M,ry as N,S3 as O,ky as P,li as Q,Yo as R,wy as S,Fp as T,Kr as U,Mt as V,ku as W,ui as X,Wx as Y,Kc as Z,es as _,H as a,Ro as a0,e0 as a1,Pp as a2,Dn as a3,Xx as a4,Yn as a5,Zn as a6,_n as a7,XF as a8,vy as a9,Jx as aa,u5 as ab,Qd as ac,lo as ad,Mc as ae,Ke as af,Fc as ag,cy as ah,$p as ai,Op as aj,Mp as ak,C3 as al,Bx as am,fu as an,yy as ao,E3 as ap,ly as aq,ep as ar,I3 as as,K as at,c as au,ue as av,Qn as aw,be as b,se as c,Me as d,Zo as e,Qc as f,Xo as g,ea as h,Kp as i,J as j,Rp as k,X as l,Jd as m,js as n,oy as o,gu as p,Wd as q,pw as r,oe as s,mu as t,Ut as u,xy as v,Gd as w,Xr as x,di as y,s3 as z};
|
|
275
|
+
`);if((q||Te)&&ys.historyIndex!==-1){const Rt=ys.getNext();Rt!==null&&(w.preventDefault(),I.current=Rt,F(Rt),sn(k,{content:Rt,attachments:T.current}),requestAnimationFrame(()=>{Re.current&&Re.current.setSelectionRange(Rt.length,Rt.length)}))}}},[ti,ko,tn,nn,Ua,Ba,_a,k,P,ys]),E0=y.useCallback(w=>{const G=w.target.value;I.current=G,F(G),me(w.target.selectionStart),sn(k,{content:G,attachments:T.current})},[k]),su=y.useCallback(w=>{const G=w.target;me(G.selectionStart)},[]);y.useEffect(()=>{Re.current&&(Re.current.style.height="inherit",Re.current.style.height=`${Math.min(Re.current.scrollHeight,200)}px`)},[P]);const Ha=oc.find(w=>w.value===fr)??oc[1],T0=x(Ha.labelKey),A0=Ha.icon,P0=!!P.trim()||D.length>0,iu=D.length>=zr,N0=Uc(D),qa=qe||(bo?ei:null),ou=qa?null:Jt,za=!!n||B,O0=za||iu||!mr,ni=mr?iu?x("chat.input.attachment.countLimit",{count:zr}):x("chat.input.attachment.add"):ei,R0=()=>{za||(et(ni),!mr&&!i&&Lr.some(w=>{var G;return(G=w.input)==null?void 0:G.includes("image")})&&he(!0))};return a.jsxs("div",{"data-chat-input-shell":!0,className:m==="task"?"bg-transparent":"py-2.5 border-t border-[hsl(var(--deck-hairline))] bg-[hsl(var(--deck-canvas))]",children:[a.jsxs("div",{"data-chat-input-inner":!0,className:m==="task"?"w-full":"px-4 w-full md:px-6",children:[a.jsxs("div",{className:`relative border rounded-lg bg-[hsl(var(--deck-surface))] transition-all duration-200 flex flex-col ${m==="task"?`min-h-[148px] shadow-[0_18px_60px_-24px_hsl(var(--deck-accent)/0.4)] focus-within:ring-1 ${Ht?"border-amber-400/70 focus-within:border-amber-500 focus-within:ring-amber-400/25":"border-[hsl(var(--deck-border))] focus-within:border-[hsl(var(--deck-accent)/0.6)] focus-within:ring-[hsl(var(--deck-accent)/0.25)]"}`:`min-h-[56px] shadow-sm focus-within:ring-1 ${Ht?"border-amber-400/70 focus-within:border-amber-500 focus-within:ring-amber-400/25":"border-[hsl(var(--deck-border))] focus-within:border-[hsl(var(--deck-border-strong))] focus-within:ring-[hsl(var(--deck-border-strong))]"}`}`,children:[a.jsx(kp,{type:"command",suggestions:tn.suggestions,selectedIndex:tn.selectedIndex,loading:tn.loading,onSelect:Ua,onHover:tn.setSelectedIndex,visible:ti}),a.jsx(kp,{type:"file",suggestions:nn.suggestions,selectedIndex:nn.selectedIndex,loading:nn.loading,onSelect:Ba,onHover:nn.setSelectedIndex,visible:ko&&!ti}),a.jsx(Dc,{ref:Re,"data-blade-composer":!0,value:P,onChange:E0,onKeyDown:C0,onPaste:I0,onSelect:su,onClick:su,placeholder:S??x(i?"chat.input.placeholder.steering":"chat.input.placeholder.default"),className:`flex-1 w-full resize-none border-0 bg-transparent px-4 focus-visible:ring-0 focus-visible:ring-offset-0 focus:outline-none text-[#111827] dark:text-zinc-300 placeholder:text-[#9CA3AF] dark:placeholder:text-zinc-600 ${m==="task"?"min-h-[84px] py-4 text-[15px]":"py-2.5 text-[14px]"}`,disabled:n||B,"aria-busy":B}),Ht&&a.jsx("div",{className:"px-4 pb-2 font-mono text-[11px] text-amber-600 dark:text-amber-400",children:"$ user shell · runs in this Session workspace"}),i&&a.jsx("div",{className:"px-4 pb-2 text-[11px] font-mono text-amber-600 dark:text-amber-400",children:d>0&&f==="next_turn"?x("chat.input.followUp.queued",{count:d}):d>0?x("chat.input.steering.queued",{count:d}):a.jsxs(a.Fragment,{children:[x("chat.input.steering.status"),x("chat.input.steering.enterHint")]})}),u>0&&a.jsx("div",{className:"px-4 pb-2 text-[11px] font-mono text-cyan-600 dark:text-cyan-400",children:u===1?x("chat.input.steering.recoveredOne",{count:u}):x("chat.input.steering.recoveredMany",{count:u})}),qa&&a.jsxs("div",{role:"alert",className:"mx-4 mb-2 flex min-h-8 items-center gap-2 rounded-md border border-red-200 bg-red-50 px-2.5 py-1.5 text-[11px] text-red-700 dark:border-red-900/60 dark:bg-red-950/30 dark:text-red-300",children:[a.jsx(Ns,{className:"h-3.5 w-3.5 shrink-0"}),a.jsx("span",{className:"flex-1 min-w-0",children:qa}),qe&&a.jsx("button",{type:"button","aria-label":x("chat.error.dismiss"),onClick:()=>{Pe(null),bt.current=null},className:"flex justify-center items-center w-6 h-6 text-red-500 rounded shrink-0 hover:bg-red-100 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-red-500 dark:hover:bg-red-950",children:a.jsx(ui,{className:"w-3 h-3"})})]}),ou&&a.jsxs("div",{role:"status","aria-live":"polite",className:"mx-4 mb-2 flex min-h-8 items-center gap-2 rounded-md border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface-2))] px-2.5 py-1.5 text-[11px] text-[hsl(var(--deck-ink-muted))]",children:[a.jsx(hy,{className:"h-3.5 w-3.5 shrink-0 text-[hsl(var(--deck-accent))]"}),a.jsx("span",{className:"flex-1 min-w-0",children:ou}),a.jsx("button",{type:"button","aria-label":x("chat.notice.dismiss"),onClick:()=>et(null),className:"flex h-6 w-6 shrink-0 items-center justify-center rounded text-[hsl(var(--deck-ink-faint))] hover:bg-[hsl(var(--deck-surface))] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))]",children:a.jsx(ui,{className:"w-3 h-3"})})]}),D.length>0&&a.jsxs("div",{className:"px-4 pb-2",children:[a.jsx("div",{className:"mb-1.5 font-mono text-[9.5px] text-[hsl(var(--deck-ink-faint))]",children:x("chat.input.attachment.usage",{count:D.length,limit:zr,used:ac(N0),budget:ac(mi)})}),a.jsx("div",{className:"flex flex-wrap gap-2",children:D.map(w=>a.jsxs("div",{title:w.name,className:"relative overflow-hidden rounded-md border border-[#E5E7EB] bg-[#F9FAFB] dark:border-zinc-800 dark:bg-zinc-900",children:[a.jsx("img",{src:w.dataUrl,alt:w.name,className:"object-cover w-20 h-20"}),a.jsx("button",{type:"button","aria-label":`${x("chat.input.attachment.remove")} ${w.name}`,title:`${x("chat.input.attachment.remove")} ${w.name}`,onClick:()=>S0(w.id),className:"flex absolute top-1 right-1 justify-center items-center w-6 h-6 text-white rounded transition-colors bg-black/75 hover:bg-black focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-white",children:a.jsx(ui,{className:"w-3 h-3"})})]},w.id))})]}),a.jsxs("div",{className:"flex justify-between items-center px-3 py-2 mt-auto",children:[a.jsxs("div",{className:"flex gap-2 items-center",children:[O0?a.jsx("button",{type:"button",disabled:za,"aria-disabled":"true","aria-label":ni,title:ni,onClick:R0,className:"flex h-8 w-8 cursor-help items-center justify-center rounded-md text-[#9CA3AF] opacity-55 transition-colors hover:bg-[hsl(var(--deck-surface-2))] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))] disabled:cursor-not-allowed dark:text-zinc-500",children:a.jsx(bu,{className:"w-4 h-4"})}):a.jsxs("label",{title:ni,className:"relative flex h-8 w-8 cursor-pointer items-center justify-center rounded-md text-[#9CA3AF] transition-colors hover:bg-[#E5E7EB] hover:text-[#111827] focus-within:ring-1 focus-within:ring-[hsl(var(--deck-accent))] dark:text-zinc-500 dark:hover:bg-zinc-800/50 dark:hover:text-zinc-300",children:[a.jsx("input",{ref:wt,type:"file",accept:"image/*",multiple:!0,"aria-label":ni,className:"absolute inset-0 z-10 w-full h-full opacity-0 cursor-pointer",onChange:j0}),a.jsx(bu,{className:"w-4 h-4"})]}),a.jsxs(Yn,{open:Y,onOpenChange:w=>{!i&&!B&&he(w)},children:[a.jsx(Zn,{asChild:!0,children:a.jsxs("button",{type:"button",disabled:i||B,title:x(i?"chat.input.model.locked":"chat.input.model.change"),className:"flex cursor-pointer items-center gap-1 rounded px-2 py-1 text-xs text-[#6B7280] transition-colors hover:bg-[#E5E7EB] hover:text-[#111827] disabled:cursor-not-allowed disabled:opacity-55 dark:text-zinc-500 dark:hover:bg-zinc-800/50 dark:hover:text-zinc-200",children:[nu,a.jsx(js,{className:"w-3 h-3"})]})}),a.jsx(_n,{className:"w-64 p-2 bg-white dark:bg-zinc-900 border border-[#E5E7EB] dark:border-zinc-700",align:"start",children:a.jsx("div",{className:"overflow-y-auto max-h-72",children:Lr.length===0?a.jsx("div",{className:"text-xs text-[#6B7280] dark:text-zinc-500 px-2 py-2",children:x("chat.input.model.empty")}):Object.entries(Lr.reduce((w,G)=>{const q=G.provider||"unknown";return w[q]||(w[q]=[]),w[q].push(G),w},{})).map(([w,G])=>a.jsxs("div",{className:"mb-2",children:[a.jsx("div",{className:"text-xs text-[#6B7280] dark:text-zinc-500 px-2 py-1 capitalize",children:w.replace(/-/g," ")}),G.map(q=>{var Te;return a.jsx("button",{className:`w-full text-left px-2 py-1.5 text-sm rounded hover:bg-[#E5E7EB] dark:hover:bg-zinc-800 transition-colors ${q.id===xs?"bg-[#E5E7EB] text-[#111827] dark:bg-zinc-800 dark:text-zinc-100":"text-[#6B7280] dark:text-zinc-400"}`,onClick:()=>{if(et(null),Ne){Xd(q.id),he(!1);return}pr(q.id,C??void 0).then(()=>he(!1)).catch(()=>{})},children:a.jsxs("span",{className:"flex gap-2 items-center min-w-0",children:[a.jsx("span",{className:"flex-1 min-w-0 truncate",children:q.displayName||q.model}),((Te=q.input)==null?void 0:Te.includes("image"))&&a.jsx("span",{className:"shrink-0 rounded bg-[hsl(var(--deck-accent-soft))] px-1.5 py-0.5 font-mono text-[8.5px] uppercase tracking-[0.08em] text-[hsl(var(--deck-accent))]",children:x("chat.input.model.vision")})]})},q.id)})]},w))})})]}),x0&&a.jsxs(Yn,{open:R,onOpenChange:w=>{!i&&!B&&ce(w)},children:[a.jsx(Zn,{asChild:!0,children:a.jsxs("button",{type:"button",disabled:i||B,"aria-label":x("chat.input.effort.change"),title:x(i?"chat.input.effort.locked":"chat.input.effort.change"),className:"flex cursor-pointer items-center gap-1 rounded px-2 py-1 font-mono text-[11px] text-[#6B7280] transition-colors hover:bg-[#E5E7EB] hover:text-[#111827] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))] disabled:cursor-not-allowed disabled:opacity-55 dark:text-zinc-500 dark:hover:bg-zinc-800/50 dark:hover:text-zinc-200",children:[x("chat.input.effort.label",{effort:mo}),a.jsx(js,{className:"w-3 h-3"})]})}),a.jsxs(_n,{className:"w-52 border border-[#E5E7EB] bg-white p-1 dark:border-zinc-700 dark:bg-zinc-900",align:"start",children:[a.jsx("div",{className:"px-2 py-1 font-mono text-[9px] uppercase tracking-[0.12em] text-[#9CA3AF] dark:text-zinc-600",children:x("chat.input.effort.heading")}),a.jsx("div",{className:"flex flex-col gap-0.5",children:po.map(w=>a.jsx("button",{type:"button","aria-label":x("chat.input.effort.option",{effort:w}),onClick:()=>{eu(w),ce(!1)},className:`flex w-full items-center justify-between rounded px-2 py-1.5 text-left font-mono text-[11px] transition-colors hover:bg-[#E5E7EB] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))] dark:hover:bg-zinc-800 ${mo===w?"bg-[#E5E7EB] text-[#111827] dark:bg-zinc-800 dark:text-zinc-100":"text-[#6B7280] dark:text-zinc-400"}`,children:a.jsx("span",{className:"capitalize",children:w})},w))})]})]}),y0&&a.jsxs(Yn,{open:ve,onOpenChange:w=>{!i&&!B&&He(w)},children:[a.jsx(Zn,{asChild:!0,children:a.jsxs("button",{type:"button",disabled:i||B,"aria-label":x("chat.input.serviceTier.change"),title:x(i?"chat.input.serviceTier.locked":"chat.input.serviceTier.change"),className:"flex cursor-pointer items-center gap-1 rounded px-2 py-1 font-mono text-[11px] text-[#6B7280] transition-colors hover:bg-[#E5E7EB] hover:text-[#111827] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))] disabled:cursor-not-allowed disabled:opacity-55 dark:text-zinc-500 dark:hover:bg-zinc-800/50 dark:hover:text-zinc-200",children:[x("chat.input.serviceTier.label",{tier:Dr}),a.jsx(js,{className:"w-3 h-3"})]})}),a.jsxs(_n,{className:"w-52 border border-[#E5E7EB] bg-white p-1 dark:border-zinc-700 dark:bg-zinc-900",align:"start",children:[a.jsx("div",{className:"px-2 py-1 font-mono text-[9px] uppercase tracking-[0.12em] text-[#9CA3AF] dark:text-zinc-600",children:x("chat.input.serviceTier.heading")}),a.jsx("div",{className:"flex flex-col gap-0.5",children:b0.map(w=>a.jsxs("button",{type:"button","aria-label":x("chat.input.serviceTier.option",{tier:w}),onClick:()=>{La(w),He(!1)},className:`flex w-full items-center justify-between rounded px-2 py-1.5 text-left font-mono text-[11px] transition-colors hover:bg-[#E5E7EB] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))] dark:hover:bg-zinc-800 ${Dr===w?"bg-[#E5E7EB] text-[#111827] dark:bg-zinc-800 dark:text-zinc-100":"text-[#6B7280] dark:text-zinc-400"}`,children:[a.jsx("span",{className:"capitalize",children:w}),w==="fast"&&a.jsx("span",{className:"text-[9px] text-[#9CA3AF] dark:text-zinc-600",children:x("chat.input.serviceTier.fastHint")}),w==="flex"&&a.jsx("span",{className:"text-[9px] text-[#9CA3AF] dark:text-zinc-600",children:x("chat.input.serviceTier.flexHint")})]},w))})]})]}),w0&&a.jsxs(Yn,{open:yt,onOpenChange:w=>{!i&&!B&&We(w)},children:[a.jsx(Zn,{asChild:!0,children:a.jsxs("button",{type:"button",disabled:i||B,"aria-label":x("chat.input.responseVerbosity.change"),title:x(i?"chat.input.responseVerbosity.locked":"chat.input.responseVerbosity.change"),className:"flex cursor-pointer items-center gap-1 rounded px-2 py-1 font-mono text-[11px] text-[#6B7280] transition-colors hover:bg-[#E5E7EB] hover:text-[#111827] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))] disabled:cursor-not-allowed disabled:opacity-55 dark:text-zinc-500 dark:hover:bg-zinc-800/50 dark:hover:text-zinc-200",children:[x("chat.input.responseVerbosity.label",{verbosity:_r}),a.jsx(js,{className:"w-3 h-3"})]})}),a.jsxs(_n,{className:"w-52 border border-[#E5E7EB] bg-white p-1 dark:border-zinc-700 dark:bg-zinc-900",align:"start",children:[a.jsx("div",{className:"px-2 py-1 font-mono text-[9px] uppercase tracking-[0.12em] text-[#9CA3AF] dark:text-zinc-600",children:x("chat.input.responseVerbosity.heading")}),a.jsx("div",{className:"flex flex-col gap-0.5",children:k0.map(w=>a.jsxs("button",{type:"button","aria-label":x("chat.input.responseVerbosity.option",{verbosity:w}),onClick:()=>{Da(w),We(!1)},className:`flex w-full items-center justify-between rounded px-2 py-1.5 text-left font-mono text-[11px] transition-colors hover:bg-[#E5E7EB] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))] dark:hover:bg-zinc-800 ${_r===w?"bg-[#E5E7EB] text-[#111827] dark:bg-zinc-800 dark:text-zinc-100":"text-[#6B7280] dark:text-zinc-400"}`,children:[a.jsx("span",{className:"capitalize",children:w}),w==="auto"&&a.jsx("span",{className:"text-[9px] text-[#9CA3AF] dark:text-zinc-600",children:x("chat.input.responseVerbosity.autoHint")})]},w))})]})]}),a.jsxs(Yn,{open:O,onOpenChange:w=>{!i&&!B&&Q(w)},children:[a.jsx(Zn,{asChild:!0,children:a.jsxs("button",{type:"button",disabled:i||B,"aria-label":x("chat.input.outputSchema.change"),title:x(i?"chat.input.outputSchema.locked":"chat.input.outputSchema.change"),className:`flex h-7 items-center gap-1 rounded px-1.5 font-mono text-[10.5px] transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))] disabled:cursor-not-allowed disabled:opacity-55 ${M.trim()?"bg-[hsl(var(--deck-accent-soft))] text-[hsl(var(--deck-accent))]":"text-[#6B7280] hover:bg-[#E5E7EB] hover:text-[#111827] dark:text-zinc-500 dark:hover:bg-zinc-800/50 dark:hover:text-zinc-200"}`,children:[a.jsx(sy,{className:"h-3.5 w-3.5"}),M.trim()&&"JSON"]})}),a.jsxs(_n,{className:"w-[min(440px,calc(100vw-24px))] border border-[#E5E7EB] bg-white p-0 dark:border-zinc-700 dark:bg-zinc-900",align:"start",children:[a.jsxs("div",{className:"border-b border-[#E5E7EB] px-3 py-2.5 dark:border-zinc-800",children:[a.jsx("div",{className:"font-mono text-[11px] font-semibold text-[#111827] dark:text-zinc-100",children:x("chat.input.outputSchema.title")}),a.jsx("div",{className:"mt-0.5 text-[10.5px] leading-4 text-[#6B7280] dark:text-zinc-500",children:x("chat.input.outputSchema.description")})]}),a.jsxs("div",{className:"p-3",children:[a.jsx(Dc,{value:M,onChange:w=>{const G=w.target.value;te.current=G,$(G),le(null),sn(k,{content:I.current,attachments:T.current,outputSchema:G})},spellCheck:!1,"aria-label":x("chat.input.outputSchema.editor"),"aria-invalid":!!ae,placeholder:x("chat.input.outputSchema.placeholder"),className:"min-h-[180px] resize-y border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-canvas))] font-mono text-[11px] leading-5 focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))]"}),ae&&a.jsxs("div",{role:"alert",className:"mt-2 flex items-center gap-1.5 text-[10.5px] text-red-600 dark:text-red-400",children:[a.jsx(Ns,{className:"h-3.5 w-3.5"}),ae]}),a.jsxs("div",{className:"mt-2.5 flex items-center justify-between gap-2",children:[a.jsx("button",{type:"button",onClick:()=>{const w=JSON.stringify({type:"object",properties:{summary:{type:"string"}},required:["summary"],additionalProperties:!1},null,2);te.current=w,$(w),le(null),sn(k,{content:I.current,attachments:T.current,outputSchema:w})},className:"rounded px-2 py-1 font-mono text-[10.5px] text-[hsl(var(--deck-accent))] hover:bg-[hsl(var(--deck-accent-soft))]",children:x("chat.input.outputSchema.example")}),a.jsx("button",{type:"button",onClick:()=>{te.current="",$(""),le(null),sn(k,{content:I.current,attachments:T.current,outputSchema:""})},className:"rounded px-2 py-1 font-mono text-[10.5px] text-[#6B7280] hover:bg-[#F3F4F6] dark:text-zinc-400 dark:hover:bg-zinc-800",children:x("chat.input.outputSchema.clear")})]})]})]})]}),a.jsxs(Yn,{open:tt,onOpenChange:Z,children:[a.jsx(Zn,{asChild:!0,children:a.jsxs("button",{"data-blade-permission-mode":fr,className:`flex items-center gap-1.5 rounded px-2 py-1 text-xs transition-colors ${Ha.tone==="danger"?"text-amber-600 hover:bg-amber-500/10 dark:text-amber-400":"text-[#6B7280] hover:bg-[#E5E7EB] hover:text-[#111827] dark:text-zinc-500 dark:hover:bg-zinc-800/50 dark:hover:text-zinc-200"}`,children:[a.jsx(A0,{className:"h-3.5 w-3.5"}),T0,a.jsx(js,{className:"w-3 h-3"})]})}),a.jsxs(_n,{className:"w-72 p-1.5 bg-white dark:bg-zinc-900 border border-[#E5E7EB] dark:border-zinc-700",align:"start",children:[a.jsx("div",{className:"px-2 pb-1.5 pt-1 text-[11px] font-medium text-[#9CA3AF] dark:text-zinc-500",children:x("chat.input.mode.aria")}),a.jsx("div",{className:"flex flex-col gap-0.5",children:oc.map(w=>{const G=w.icon,q=fr===w.value,Te=w.tone==="danger";return a.jsxs("button",{type:"button","data-blade-permission-option":w.value,"aria-pressed":q,className:`flex w-full items-start gap-2.5 rounded-md px-2 py-2 text-left transition-colors ${q?"bg-[#F3F4F6] dark:bg-zinc-800/70":"hover:bg-[#F3F4F6] dark:hover:bg-zinc-800/50"}`,onClick:()=>{w.value===kr.YOLO&&fr!==kr.YOLO?(Z(!1),L(!0)):(bs(w.value),Z(!1))},children:[a.jsx(G,{className:`mt-0.5 h-4 w-4 shrink-0 ${Te?"text-amber-500":q?"text-[#111827] dark:text-zinc-100":"text-[#6B7280] dark:text-zinc-400"}`}),a.jsxs("span",{className:"flex-1 min-w-0",children:[a.jsx("span",{className:`block text-[13px] font-medium leading-tight ${Te?"text-amber-600 dark:text-amber-400":"text-[#111827] dark:text-zinc-100"}`,children:x(w.labelKey)}),a.jsx("span",{className:"mt-0.5 block text-[11px] leading-snug text-[#6B7280] dark:text-zinc-500",children:x(w.descriptionKey)})]}),q&&a.jsx(Tp,{className:"mt-0.5 h-3.5 w-3.5 shrink-0 text-[hsl(var(--deck-accent))]"})]},w.value)})})]})]})]}),a.jsxs("div",{className:"flex gap-2 items-center",children:[i&&a.jsx(Kr,{size:"icon",onClick:()=>{t==null||t()},disabled:o,title:x(o?"chat.input.action.stopping":"chat.input.action.stop"),"aria-label":x(o?"chat.input.action.stopping":"chat.input.action.stop"),className:"w-8 h-8 text-white bg-red-500 hover:bg-red-600",children:o?a.jsx(mt,{className:"h-3.5 w-3.5 animate-spin"}):a.jsx(Vc,{className:"w-3 h-3"})}),a.jsx(Kr,{size:"icon","data-blade-submit":!0,onClick:_a,disabled:!P0||n||Qt||bo||B||v0,title:x(B?"chat.input.action.submitting":i?"chat.input.action.steer":"chat.input.action.send"),"aria-label":x(B?"chat.input.action.submitting":i?"chat.input.action.steer":"chat.input.action.send"),className:"h-8 w-8 bg-[#111827] text-white hover:bg-[#0F172A] disabled:bg-[#E5E7EB] disabled:text-[#9CA3AF] dark:bg-zinc-100 dark:text-zinc-900 dark:hover:bg-white dark:disabled:bg-zinc-800 dark:disabled:text-zinc-600",children:B?a.jsx(mt,{className:"w-4 h-4 animate-spin"}):a.jsx(wy,{className:"w-4 h-4"})})]})]})]}),m==="chat"&&a.jsx("div",{className:"text-center text-xs text-[#6B7280] dark:text-zinc-600 mt-3 font-mono",children:x("chat.footer.disclaimer")})]}),a.jsx(Jc,{open:pt,onOpenChange:L,children:a.jsx(Zo,{className:"gap-0 rounded-xl border border-zinc-200 bg-white p-0 dark:border-zinc-800 dark:bg-[#09090b] sm:max-w-[400px]","aria-describedby":"yolo-confirm-desc",hideCloseButton:!0,children:a.jsxs("div",{className:"flex flex-col gap-4 p-5",children:[a.jsxs("div",{className:"flex gap-3 items-center",children:[a.jsx("div",{className:"flex justify-center items-center w-9 h-9 bg-amber-100 rounded-full dark:bg-amber-950/40",children:a.jsx(Rp,{className:"w-5 h-5 text-amber-600 dark:text-amber-400"})}),a.jsx(Xo,{className:"font-mono text-sm font-semibold",children:x("chat.input.mode.yolo.confirm.title")})]}),a.jsx(ea,{id:"yolo-confirm-desc",className:"text-[13px] leading-relaxed text-zinc-600 dark:text-zinc-400",children:x("chat.input.mode.yolo.confirm.desc")}),a.jsxs("div",{className:"flex gap-2 justify-end items-center pt-1",children:[a.jsx("button",{type:"button",onClick:()=>L(!1),className:"h-8 rounded-md px-3 font-mono text-[12px] font-medium text-zinc-600 transition-colors hover:bg-zinc-100 dark:text-zinc-400 dark:hover:bg-zinc-800",children:x("chat.input.mode.yolo.confirm.cancel")}),a.jsx("button",{type:"button","data-blade-yolo-confirm":!0,onClick:()=>{bs(kr.YOLO),L(!1)},className:"h-8 rounded-md bg-amber-600 px-3 font-mono text-[12px] font-semibold text-white transition-colors hover:bg-amber-700",children:x("chat.input.mode.yolo.confirm.accept")})]})]})})})]})}const i3={running:{dot:"bg-blue-500 shadow-[0_0_5px_rgba(59,130,246,0.7)] animate-pulse",labelKey:"recent.status.running",text:"text-blue-700 dark:text-blue-400"},queued:{dot:"bg-amber-400",labelKey:"recent.status.queued",text:"text-amber-700 dark:text-amber-400"},interrupted:{dot:"bg-orange-500",labelKey:"recent.status.paused",text:"text-orange-700 dark:text-orange-400"},failed:{dot:"bg-red-500",labelKey:"recent.status.failed",text:"text-red-700 dark:text-red-400"},cancelled:{dot:"bg-zinc-400",labelKey:"recent.status.cancelled",text:"text-zinc-500"},completed:{dot:"bg-[hsl(var(--deck-accent))]",labelKey:"recent.status.done",text:"text-[hsl(var(--deck-accent))]"}};function o3(e,t){if(!e)return"";const n=new Date(e);if(Number.isNaN(n.getTime()))return"";const r=Date.now()-n.getTime(),s=Math.floor(r/6e4);if(s<1)return t("recent.time.justNow");if(s<60)return t("recent.time.minutes",{n:s});const i=Math.floor(s/60);if(i<24)return t("recent.time.hours",{n:i});const o=Math.floor(i/24);return t("recent.time.days",{n:o})}function a3(e){return e.split("/").filter(Boolean).at(-1)||e}function c3({sessions:e,onSelect:t,cancellingTaskKeys:n,retryingTaskKeys:r,unreadTaskKeys:s,onCancel:i,onRetry:o,catalogLoadState:d="ready",className:f}){const u=Ut(),m=[...e].sort(Qd).slice(0,4),p=d==="loading"||d==="hydrating";return m.length===0?!p&&d!=="error"?null:a.jsxs("div",{role:d==="error"?"alert":"status",className:J("mt-7 flex items-center gap-2 rounded-md border border-[hsl(var(--deck-hairline))] bg-[hsl(var(--deck-surface))]/50 px-3 py-2 font-mono text-[10.5px] text-[hsl(var(--deck-ink-faint))]",f),children:[p?a.jsx(mt,{className:"h-3 w-3 animate-spin text-[hsl(var(--deck-accent))]"}):a.jsx("span",{className:"h-1.5 w-1.5 rounded-full bg-amber-500"}),u(p?"sidebar.catalog.syncing":"sidebar.catalog.incomplete")]}):a.jsxs("div",{className:J("mt-7",f),children:[a.jsxs("div",{className:"mb-2 flex items-center justify-between",children:[a.jsx("span",{className:"deck-eyebrow text-[hsl(var(--deck-ink-faint))]",children:u("taskHome.recent.title")}),a.jsx("span",{className:"font-mono text-[10.5px] text-[hsl(var(--deck-ink-faint))]",children:u(p?"taskHome.recent.partial":d==="error"?"taskHome.recent.incomplete":"taskHome.recent.total",{count:e.length})})]}),a.jsx("div",{className:"grid grid-cols-1 gap-1 sm:grid-cols-2",children:m.map(h=>{const b=i3[h.taskStatus],k=h.pendingInteraction?h.pendingInteraction.type==="question"?"interaction.badge.question":h.pendingInteraction.type==="elicitation"?"interaction.badge.elicitation":"interaction.badge.permission":null,S=a3(h.taskSourceProjectPath||h.projectPath),C=gi(h,u),x=Me(be(h)),N=h.taskStatus==="running"||h.taskStatus==="queued",P=n.includes(x),F=r.includes(x),D=!!h.taskRetryAvailable&&(h.taskStatus==="failed"||h.taskStatus==="interrupted"||h.taskStatus==="cancelled"),j=s.includes(x),I=Vd(h,u);return a.jsxs("div",{className:J("group flex items-center gap-3 rounded-md border border-transparent px-3 py-1.5 text-left transition-colors","hover:border-[hsl(var(--deck-border))] hover:bg-[hsl(var(--deck-surface))]"),children:[a.jsxs("button",{type:"button",onClick:()=>t(h),className:"flex min-w-0 flex-1 items-center gap-3 text-left focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))]",children:[a.jsx("span",{className:J("h-1.5 w-1.5 shrink-0 rounded-full",k?"animate-pulse bg-amber-500 shadow-[0_0_5px_rgba(245,158,11,0.75)]":b.dot)}),a.jsxs("span",{className:"min-w-0 flex-1",children:[a.jsxs("span",{className:"flex items-center gap-1.5 text-[12.5px] text-[hsl(var(--deck-ink))]",children:[a.jsx("span",{className:"truncate",children:C}),j&&a.jsx("span",{title:u("taskSwitcher.new"),className:"h-1.5 w-1.5 shrink-0 rounded-full bg-[hsl(var(--deck-accent))] shadow-[0_0_5px_hsl(var(--deck-accent-glow)/0.75)]"}),h.taskRetriedFrom&&a.jsx("span",{title:`${u("session.retriedFrom")} ${h.taskRetriedFrom.sessionId.slice(0,6)}`,className:"shrink-0 font-mono text-[8.5px] text-[hsl(var(--deck-accent))]",children:u("session.retryShort")})]}),a.jsxs("span",{className:"mt-0.5 flex items-center gap-1.5 truncate font-mono text-[10.5px] text-[hsl(var(--deck-ink-faint))]",children:[a.jsx("span",{className:"truncate",children:S}),a.jsx("span",{className:"opacity-40",children:"·"}),a.jsx("span",{className:J("shrink-0",k?"text-amber-700 dark:text-amber-400":b.text),children:u(k??b.labelKey)}),a.jsx("span",{className:"opacity-40",children:"·"}),a.jsx("span",{className:"shrink-0",children:o3(h.lastMessageTime||h.firstMessageTime,u)})]}),I&&a.jsx("span",{title:I,className:"mt-0.5 block truncate font-mono text-[9.5px] text-red-600 dark:text-red-400",children:I})]}),a.jsx(ry,{className:"h-3.5 w-3.5 shrink-0 text-[hsl(var(--deck-ink-faint))] opacity-0 transition-opacity group-hover:opacity-100"})]}),N&&a.jsx("button",{type:"button","aria-label":u(P?"session.action.stopping":"session.action.stop",{title:C}),disabled:P,onClick:()=>i(h),className:"rounded p-1.5 text-red-500 transition-colors hover:bg-red-500/10 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-red-500 disabled:cursor-wait disabled:opacity-60",children:P?a.jsx(mt,{className:"h-3.5 w-3.5 animate-spin"}):a.jsx(Vc,{className:"h-3.5 w-3.5"})}),D&&a.jsx("button",{type:"button","aria-label":u(F?"session.action.retrying":"session.action.retry",{title:C}),disabled:F,onClick:()=>o(h),className:"rounded p-1.5 text-[hsl(var(--deck-accent))] transition-colors hover:bg-[hsl(var(--deck-accent-soft))] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))] disabled:cursor-wait disabled:opacity-60",children:F?a.jsx(mt,{className:"h-3.5 w-3.5 animate-spin"}):a.jsx(Yo,{className:"h-3.5 w-3.5"})})]},x)})})]})}function l3({index:e,title:t,description:n,icon:r,hint:s,onClick:i}){const o=String(e+1).padStart(2,"0"),d=`⌘${e+1}`;return a.jsxs("button",{type:"button",onClick:i,className:J("group relative flex min-h-[100px] flex-col justify-between overflow-hidden rounded-lg border p-3.5 text-left transition","border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface))]","hover:-translate-y-[1px] hover:border-[hsl(var(--deck-accent)/0.55)] hover:shadow-[0_10px_28px_-14px_hsl(var(--deck-accent)/0.35)]","focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[hsl(var(--deck-accent))] focus-visible:ring-offset-2 focus-visible:ring-offset-[hsl(var(--deck-canvas))]","dark:bg-[hsl(var(--deck-surface))] dark:hover:shadow-[0_10px_28px_-14px_hsl(var(--deck-accent)/0.55)]"),children:[a.jsx("span",{"aria-hidden":"true",className:J("pointer-events-none absolute right-3 top-3 h-2 w-2","border-r border-t border-[hsl(var(--deck-border-strong))]","transition-colors group-hover:border-[hsl(var(--deck-accent))]")}),a.jsxs("div",{className:"flex items-start justify-between",children:[a.jsx("span",{className:J("inline-flex h-8 w-8 items-center justify-center rounded-md border transition-colors","border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface-2))]","group-hover:border-[hsl(var(--deck-accent)/0.5)] group-hover:bg-[hsl(var(--deck-accent-soft))]"),children:a.jsx(r,{className:"h-4 w-4 text-[hsl(var(--deck-ink-muted))] transition-colors group-hover:text-[hsl(var(--deck-accent))]"})}),a.jsx("span",{className:"font-mono text-[10px] tracking-[0.16em] text-[hsl(var(--deck-ink-faint))]",children:o})]}),a.jsxs("div",{children:[a.jsx("div",{className:"text-[13px] font-semibold text-[hsl(var(--deck-ink))]",children:t}),a.jsx("div",{className:"mt-1 line-clamp-2 text-[11.5px] leading-[1.45] text-[hsl(var(--deck-ink-muted))]",children:n}),a.jsxs("div",{className:"mt-2 flex items-center justify-between",children:[a.jsx("span",{className:"truncate font-mono text-[10px] text-[hsl(var(--deck-ink-faint))] opacity-0 transition-opacity group-hover:opacity-100",children:s}),a.jsx("span",{className:"deck-kbd shrink-0 opacity-0 transition-opacity group-hover:opacity-100",children:d})]})]})]})}const cc=[{key:"explore",titleKey:"taskHome.template.explore.title",descriptionKey:"taskHome.template.explore.description",icon:Gc,prompt:"Explore this codebase and explain ",hintKey:"taskHome.template.explore.hint"},{key:"build",titleKey:"taskHome.template.build.title",descriptionKey:"taskHome.template.build.description",icon:py,prompt:"Build a production-ready ",hintKey:"taskHome.template.build.hint"},{key:"review",titleKey:"taskHome.template.review.title",descriptionKey:"taskHome.template.review.description",icon:yy,prompt:"/review uncommitted",hintKey:"taskHome.template.review.hint"},{key:"fix",titleKey:"taskHome.template.fix.title",descriptionKey:"taskHome.template.fix.description",icon:Sy,prompt:"Investigate and fix ",hintKey:"taskHome.template.fix.hint"}];function d3(e,t){return t?t.split("/").filter(Boolean).at(-1)||t:e("taskHome.hero.projectFallback")}function u3(){const e=Ut(),{taskWorkspaceInfo:t,isTaskWorkspaceLoading:n,taskWorkspaceError:r,isDispatchingTask:s,sessions:i,boundProjects:o,selectedProjectPath:d,error:f,selectProject:u,dispatchTask:m,startCodeReview:p,sendMessage:h,startTemporarySession:b,selectSession:k,cancelTask:S,cancellingTaskKeys:C,retryTask:x,retryingTaskKeys:N,unreadTaskKeys:P,taskEventConnectionState:F,catalogLoadState:D,reconnectTaskEvents:j,clearError:I,loadTaskWorkspaceInfo:T,loadBoundProjects:M}=H(),$=on(_=>_.openSettings),te=on(_=>_.isSettingsOpen),O=Mt(_=>_.currentMode),Q=Mt(_=>_.currentModelId),ae=Mt(_=>_.configuredModels),le=Mt(_=>_.isLoading),de=Mt(_=>_.hasLoaded),me=Mt(_=>_.loadedWorkspacePath),Y=Mt(_=>_.error),he=Mt(_=>_.loadModels),[R,ce]=y.useState("worktree"),[ve,He]=y.useState(),[yt,We]=y.useState(!1),tt=e(F==="connected"?"taskHome.eyebrow":F==="reconnecting"?"taskHome.feed.reconnecting":F==="offline"?"taskHome.feed.offline":"taskHome.feed.connecting"),Z=y.useMemo(()=>o.find(_=>_.path===d)??o.find(_=>_.isCurrent),[o,d]),pt=y.useMemo(()=>zF(i,d,(t==null?void 0:t.cwd)??null),[d,i,t==null?void 0:t.cwd]),L=(Z!=null&&Z.available?Z.path:void 0)??(t==null?void 0:t.cwd),B=`task:${L??"unavailable"}`;y.useEffect(()=>{!te&&L&&(!de||me!==L)&&he(L)},[te,he,me,de,L]);const Se=!(Z!=null&&Z.available)&&n,qe=Z!=null&&Z.available?null:r,Pe=!!(L&&!Se&&!qe),Jt=!!(Q&&ae.some(_=>_.id===Q)),et=!de||le,Ht=Pe&&Jt&&!et&&Y===null,Qt=y.useMemo(()=>({project:d3(e,(Z==null?void 0:Z.path)??(t==null?void 0:t.cwd)),branch:(Z==null?void 0:Z.gitBranch)??(t==null?void 0:t.gitBranch)??e("taskHome.context.branchFallback")}),[Z,t,e]),bt=y.useCallback(async _=>{const Re=_.content.trim();if(Re==="/review"||Re.startsWith("/review ")){if(_.attachments.length>0)throw new Error(e("taskHome.review.attachmentsUnsupported"));if(_.outputSchema)throw new Error(e("taskHome.review.outputSchemaUnsupported"));const wt=Re.split(/\s+/),qt=wt[1]||"uncommitted";if(qt!=="uncommitted"&&qt!=="base"&&qt!=="commit"||qt==="uncommitted"&&wt.length!==2&&wt.length!==1||(qt==="base"||qt==="commit")&&wt.length!==3)throw new Error(e("taskHome.review.usage"));await p({projectPath:L,kind:qt,...wt[2]?{ref:wt[2]}:{},modelId:_.modelId??Q??void 0});return}if(_.content.trimStart().startsWith("!")){b(L),await h({content:_.content,attachments:[]});return}await m({prompt:_.content,projectPath:L,isolation:R,permissionMode:O,modelId:_.modelId??Q??void 0,reasoningEffort:_.reasoningEffort,serviceTier:_.serviceTier,responseVerbosity:_.responseVerbosity,communicationStyle:_.communicationStyle,..._.outputSchema?{outputSchema:_.outputSchema}:{},attachments:_.attachments.map(wt=>({type:"image",content:wt.dataUrl,mimeType:wt.mimeType,name:wt.name}))})},[O,Q,m,R,h,p,b,L,e]);return y.useEffect(()=>{const _=Re=>{if(!(Re.metaKey||Re.ctrlKey))return;const wt=Number.parseInt(Re.key,10);if(Number.isNaN(wt)||wt<1||wt>cc.length)return;const qt=cc[wt-1];qt&&(Re.preventDefault(),He({key:B,content:qt.prompt}))};return window.addEventListener("keydown",_),()=>window.removeEventListener("keydown",_)},[B]),a.jsx("main",{className:"deck-canvas relative flex-1 overflow-y-auto text-[hsl(var(--deck-ink))]",children:a.jsxs("div",{className:"mx-auto flex min-h-full w-full max-w-[960px] flex-col px-6 py-8 md:px-8 md:py-10",children:[a.jsxs("div",{className:"flex gap-4 items-start mb-6",children:[a.jsx(Jd,{size:36,className:"hidden mt-1 sm:inline-flex"}),a.jsxs("div",{className:"flex-1",children:[a.jsxs("div",{className:J("deck-eyebrow flex items-center gap-2",F==="offline"?"text-amber-700 dark:text-amber-400":"text-[hsl(var(--deck-accent))]"),children:[F==="offline"?a.jsx(ku,{className:"w-3 h-3"}):a.jsx("span",{className:"deck-pulse-dot"}),tt]}),a.jsxs("h1",{className:"mt-2.5 max-w-3xl text-balance text-[clamp(28px,3vw,34px)] font-medium leading-[1.12] tracking-[-0.028em] text-[hsl(var(--deck-ink))]",children:[e("taskHome.hero.prefix")," ",a.jsx("span",{className:"whitespace-nowrap font-mono text-[0.82em] text-[hsl(var(--deck-accent))]",children:Qt.project}),a.jsx("span",{className:"text-[hsl(var(--deck-ink-muted))]",children:"?"})]}),a.jsx("p",{className:"mt-2 max-w-[46rem] text-[13px] leading-[1.55] text-[hsl(var(--deck-ink-muted))]",children:e("taskHome.hero.subtitle")})]})]}),a.jsxs("div",{className:"mb-4",children:[a.jsxs("div",{className:"flex justify-between items-center mb-2",children:[a.jsx("span",{className:"deck-eyebrow text-[hsl(var(--deck-ink-faint))]",children:e("taskHome.templates.title")}),a.jsxs("span",{className:"inline-flex items-center gap-1.5 font-mono text-[10.5px] text-[hsl(var(--deck-ink-faint))]",children:[a.jsx(Ap,{className:"w-3 h-3"}),a.jsx("span",{children:e("taskHome.templates.hint")})]})]}),a.jsx("div",{className:"grid grid-cols-1 gap-2 sm:grid-cols-2 lg:grid-cols-4",children:cc.map((_,Re)=>a.jsx(l3,{index:Re,title:e(_.titleKey),description:e(_.descriptionKey),icon:_.icon,hint:e(_.hintKey),onClick:()=>He({key:B,content:_.prompt})},_.key))})]}),a.jsxs("div",{"data-blade-task-dispatch-ready":Ht?"true":"false","data-blade-task-workspace-ready":Pe?"true":"false","data-blade-task-model-ready":Jt?"true":"false","data-blade-task-model-loaded":de?"true":"false","data-blade-task-model-loading":le?"true":"false",className:"rounded-xl border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface))] shadow-[0_28px_80px_-32px_hsl(var(--deck-accent)/0.28),0_2px_0_hsl(var(--deck-hairline))]",children:[a.jsxs("div",{className:"flex items-center gap-0 border-b border-[hsl(var(--deck-hairline))] bg-[hsl(var(--deck-surface-2))]/50",children:[a.jsxs("div",{className:"flex flex-1 items-center min-w-0",children:[a.jsxs(Yn,{children:[a.jsx(Zn,{asChild:!0,children:a.jsxs("button",{type:"button","aria-label":e("taskHome.context.projectSelect"),disabled:o.length===0,className:"group flex h-9 min-w-0 items-center gap-2 border-r border-[hsl(var(--deck-hairline))] px-3 font-mono text-[11.5px] text-[hsl(var(--deck-ink))] transition-colors hover:bg-[hsl(var(--deck-surface))] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-inset focus-visible:ring-[hsl(var(--deck-accent))] disabled:opacity-50",children:[a.jsx(li,{className:"h-3.5 w-3.5 shrink-0 text-[hsl(var(--deck-accent))]"}),a.jsx("span",{className:"font-medium truncate",children:(Z==null?void 0:Z.name)??Qt.project}),a.jsx(js,{className:"h-3 w-3 shrink-0 text-[hsl(var(--deck-ink-faint))] transition-transform group-data-[state=open]:rotate-180"})]})}),a.jsx(_n,{align:"start",sideOffset:4,className:"w-56 rounded-lg border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface))] p-1 shadow-xl",children:a.jsxs("div",{className:"flex flex-col",children:[o.map(_=>a.jsxs("button",{type:"button",disabled:!_.available,onClick:()=>{u(_.path)},className:J("flex items-center gap-2 rounded-md px-2.5 py-1.5 text-left font-mono text-[12px] transition-colors",_.path===d?"bg-[hsl(var(--deck-accent-soft))] text-[hsl(var(--deck-accent))]":"text-[hsl(var(--deck-ink-muted))] hover:bg-[hsl(var(--deck-surface-2))] hover:text-[hsl(var(--deck-ink))]",!_.available&&"opacity-40"),children:[a.jsx(li,{className:"w-3 h-3 shrink-0"}),a.jsx("span",{className:"flex-1 min-w-0 truncate",children:_.name}),_.path===d&&a.jsx("span",{className:"h-1.5 w-1.5 shrink-0 rounded-full bg-[hsl(var(--deck-accent))]"})]},_.path)),o.length===0&&a.jsx("span",{className:"px-2.5 py-2 text-center font-mono text-[11px] text-[hsl(var(--deck-ink-faint))]",children:e("taskHome.setup.workspace.empty")})]})})]}),a.jsxs("button",{type:"button","data-blade-task-isolation":R,"aria-pressed":R==="worktree",onClick:()=>ce(_=>_==="worktree"?"local":"worktree"),className:J("flex h-9 shrink-0 items-center gap-1.5 border-r border-[hsl(var(--deck-hairline))] px-3 font-mono text-[11px] transition-colors",R==="worktree"?"text-[hsl(var(--deck-accent))]":"text-[hsl(var(--deck-ink-muted))] hover:text-[hsl(var(--deck-ink))]"),title:e("taskHome.context.isolationToggleTitle"),children:[R==="worktree"?a.jsx(ky,{className:"w-3 h-3"}):a.jsx(my,{className:"w-3 h-3"}),a.jsx("span",{className:"hidden sm:inline",children:e(R==="worktree"?"taskHome.context.isolation.worktree":"taskHome.context.isolation.local")})]}),a.jsxs("span",{className:"flex h-9 shrink-0 items-center gap-1.5 border-r border-[hsl(var(--deck-hairline))] px-3 font-mono text-[11px] text-[hsl(var(--deck-ink-muted))]",children:[a.jsx(zc,{className:"w-3 h-3"}),a.jsx("span",{className:"hidden sm:inline",children:Qt.branch})]})]}),a.jsxs("div",{className:"flex gap-2 items-center px-3 shrink-0",children:[(t==null?void 0:t.taskAdmission)&&a.jsx(Wx,{inFlight:t.taskAdmission.inFlight,queued:t.taskAdmission.queued,maxConcurrent:t.taskAdmission.maxConcurrent,compact:!0}),s&&a.jsxs("span",{className:"inline-flex items-center gap-1.5 font-mono text-[10.5px] text-[hsl(var(--deck-accent))]",children:[a.jsx(mt,{className:"w-3 h-3 animate-spin"}),a.jsx("span",{className:"hidden sm:inline",children:e("taskHome.context.preparing")})]})]})]}),!Ht&&a.jsxs("section",{"aria-label":e("taskHome.setup.aria"),className:"border-b border-[hsl(var(--deck-hairline))] bg-[hsl(var(--deck-canvas-veil))] px-3 py-3",children:[a.jsxs("div",{className:"mb-2.5",children:[a.jsx("h2",{className:"font-mono text-[11px] font-semibold uppercase tracking-[0.12em] text-[hsl(var(--deck-ink))]",children:e("taskHome.setup.title")}),a.jsx("p",{className:"mt-0.5 text-[11px] text-[hsl(var(--deck-ink-faint))]",children:e("taskHome.setup.description")})]}),a.jsxs("div",{className:"grid gap-2 sm:grid-cols-2",children:[a.jsxs("div",{className:"flex min-w-0 items-center gap-2.5 rounded-md border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface))] px-3 py-2.5",children:[a.jsx("span",{className:J("flex justify-center items-center w-7 h-7 rounded-md border shrink-0",Pe?"text-emerald-700 bg-emerald-50 border-emerald-300/70 dark:border-emerald-800/70 dark:bg-emerald-950/40 dark:text-emerald-300":qe?"text-red-700 bg-red-50 border-red-300/70 dark:border-red-900/70 dark:bg-red-950/40 dark:text-red-300":"text-amber-700 bg-amber-50 border-amber-300/70 dark:border-amber-800/70 dark:bg-amber-950/40 dark:text-amber-300"),children:Se?a.jsx(mt,{className:"h-3.5 w-3.5 animate-spin"}):Pe?a.jsx(mu,{className:"h-3.5 w-3.5"}):qe?a.jsx(Ns,{className:"h-3.5 w-3.5"}):a.jsx(li,{className:"h-3.5 w-3.5"})}),a.jsxs("span",{className:"flex-1 min-w-0",children:[a.jsx("span",{className:"block font-mono text-[11px] font-medium text-[hsl(var(--deck-ink))]",children:e("taskHome.setup.workspace.title")}),a.jsx("span",{className:"mt-0.5 block truncate text-[10.5px] text-[hsl(var(--deck-ink-faint))]",children:Se?e("taskHome.setup.workspace.loading"):qe||(Pe?e("taskHome.setup.workspace.ready",{project:Qt.project}):e("taskHome.setup.workspace.required"))})]}),!Pe&&a.jsxs("div",{className:"flex gap-1 items-center shrink-0",children:[qe&&a.jsx("button",{type:"button",onClick:()=>{Promise.all([T(),M()])},"aria-label":e("taskHome.setup.workspace.retry"),title:e("taskHome.setup.workspace.retry"),className:"flex h-8 w-8 items-center justify-center rounded-md text-[hsl(var(--deck-ink-muted))] hover:bg-[hsl(var(--deck-canvas))] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))]",children:a.jsx(di,{className:"h-3.5 w-3.5"})}),a.jsxs("button",{type:"button","data-project-setup-trigger":!0,onClick:()=>We(!0),className:"inline-flex h-8 items-center gap-1.5 rounded-md border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-canvas))] px-2.5 font-mono text-[10.5px] text-[hsl(var(--deck-ink))] hover:border-[hsl(var(--deck-accent)/0.55)] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))]",children:[a.jsx(Ro,{className:"w-3 h-3"}),e("taskHome.setup.workspace.action")]})]})]}),a.jsxs("div",{className:"flex min-w-0 items-center gap-2.5 rounded-md border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-surface))] px-3 py-2.5",children:[a.jsx("span",{className:J("flex h-7 w-7 shrink-0 items-center justify-center rounded-md border",Jt&&!Y?"border-emerald-300/70 bg-emerald-50 text-emerald-700 dark:border-emerald-800/70 dark:bg-emerald-950/40 dark:text-emerald-300":Y?"border-red-300/70 bg-red-50 text-red-700 dark:border-red-900/70 dark:bg-red-950/40 dark:text-red-300":"border-amber-300/70 bg-amber-50 text-amber-700 dark:border-amber-800/70 dark:bg-amber-950/40 dark:text-amber-300"),children:et?a.jsx(mt,{className:"h-3.5 w-3.5 animate-spin"}):Jt&&!Y?a.jsx(mu,{className:"h-3.5 w-3.5"}):Y?a.jsx(Ns,{className:"h-3.5 w-3.5"}):a.jsx(fu,{className:"h-3.5 w-3.5"})}),a.jsxs("span",{className:"flex-1 min-w-0",children:[a.jsx("span",{className:"block font-mono text-[11px] font-medium text-[hsl(var(--deck-ink))]",children:e("taskHome.setup.model.title")}),a.jsx("span",{title:Y??void 0,className:J("mt-0.5 block truncate text-[10.5px]",Y?"text-red-600 dark:text-red-400":"text-[hsl(var(--deck-ink-faint))]"),children:et?e("taskHome.setup.model.loading"):Y||e(Jt?"taskHome.setup.model.ready":"taskHome.setup.model.required")})]}),!et&&(!Jt||Y)&&a.jsxs("button",{type:"button","data-model-setup-trigger":!0,onClick:()=>{Y?he(L):$("models")},className:"inline-flex h-8 shrink-0 items-center gap-1.5 rounded-md border border-[hsl(var(--deck-border))] bg-[hsl(var(--deck-canvas))] px-2.5 font-mono text-[10.5px] text-[hsl(var(--deck-ink))] hover:border-[hsl(var(--deck-accent)/0.55)] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[hsl(var(--deck-accent))]",children:[Y?a.jsx(di,{className:"w-3 h-3"}):a.jsx(fu,{className:"w-3 h-3"}),e(Y?"taskHome.setup.model.retry":"taskHome.setup.model.action")]})]})]})]}),a.jsx("div",{className:"px-3 pt-3 pb-3",children:a.jsx(s3,{variant:"task",draft:(ve==null?void 0:ve.key)===B?ve.content:void 0,draftKey:B,placeholder:e("taskHome.composer.placeholder"),onSend:async _=>{try{return await bt(_),He(void 0),!0}catch{return!1}},disabled:s,submitDisabled:!Ht,shellSubmitDisabled:!Ht,workspacePath:L},B)})]}),F==="offline"&&a.jsxs("div",{role:"alert",className:"flex flex-wrap gap-3 items-center px-3 py-2 mt-4 text-amber-900 rounded-md border border-amber-300/70 bg-amber-50/80 dark:border-amber-800/70 dark:bg-amber-950/35 dark:text-amber-200",children:[a.jsx(ku,{className:"h-3.5 w-3.5 shrink-0"}),a.jsx("span",{className:"min-w-0 flex-1 text-[12px]",children:e("taskHome.feed.offlineDescription")}),a.jsxs("button",{type:"button",onClick:()=>void j().catch(()=>{}),className:"inline-flex min-h-8 items-center gap-1.5 rounded-md border border-amber-400/70 bg-white/60 px-2.5 font-mono text-[10.5px] font-medium transition-colors hover:bg-white focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-amber-500 dark:border-amber-700 dark:bg-amber-950/50 dark:hover:bg-amber-900/50",children:[a.jsx(di,{className:"w-3 h-3"}),e("taskHome.feed.retry")]})]}),f&&a.jsxs("div",{role:"alert","data-blade-task-error":!0,className:"flex justify-between items-center px-3 py-2 mt-4 font-mono text-xs text-red-700 rounded-md border border-red-200 bg-red-50/80 dark:border-red-900/60 dark:bg-red-950/30 dark:text-red-300",children:[a.jsx("span",{children:f}),a.jsx("button",{type:"button",onClick:I,className:"underline",children:e("taskHome.error.dismiss")})]}),a.jsx(c3,{sessions:pt,catalogLoadState:D,cancellingTaskKeys:C,retryingTaskKeys:N,unreadTaskKeys:P,onSelect:_=>{k(be(_))},onCancel:_=>{S(be(_)).catch(()=>{})},onRetry:_=>{x(be(_)).catch(()=>{})}}),a.jsxs("div",{className:"mt-6 flex items-center justify-center gap-2 text-[10.5px] text-[hsl(var(--deck-ink-faint))]",children:[a.jsx(Mp,{className:"w-3 h-3"}),a.jsx("span",{className:"font-mono uppercase tracking-[0.14em]",children:e("taskHome.footer.note")})]}),a.jsx(e0,{open:yt,onOpenChange:We})]})})}const Bc="blade.sessions.last",bi="session",Hc="project",Oo="workspace",qc="view";function p3(e){if(!e||typeof e!="object"||Array.isArray(e))return null;const t=e;return typeof t.sessionId=="string"&&t.sessionId.trim()&&typeof t.projectPath=="string"&&t.projectPath.trim()?{sessionId:t.sessionId,projectPath:t.projectPath}:null}function f3(e){var o,d,f;const t=new URLSearchParams(e),n=((o=t.get(bi))==null?void 0:o.trim())||null,r=((d=t.get(Hc))==null?void 0:d.trim())||null,s=((f=t.get(Oo))==null?void 0:f.trim())||null,i=t.get(qc)==="board"?"board":"workspace";return{sessionRef:n&&(s||r)?{sessionId:n,projectPath:s||r}:null,projectPath:r,hasSessionParam:t.has(bi),view:i}}function m3(e=typeof localStorage>"u"?null:localStorage){if(!e)return null;try{const t=e.getItem(Bc);return t?p3(JSON.parse(t)):null}catch{return null}}function h3(e,t,n={}){const r=n.href??(typeof window>"u"?"http://localhost/":window.location.href),s=new URL(r),i=n.view??"workspace",o=n.displayProjectPath??(i==="board"?t:e==null?void 0:e.projectPath)??t,d=(e==null?void 0:e.projectPath)??null;e&&i==="workspace"?s.searchParams.set(bi,e.sessionId):s.searchParams.delete(bi),o?s.searchParams.set(Hc,o):s.searchParams.delete(Hc),d&&o&&d!==o?s.searchParams.set(Oo,d):s.searchParams.delete(Oo),i==="board"?(s.searchParams.set(qc,"board"),s.searchParams.delete(bi),s.searchParams.delete(Oo)):s.searchParams.delete(qc);const f=n.storage===void 0?typeof localStorage>"u"?null:localStorage:n.storage;try{e&&i==="workspace"?f==null||f.setItem(Bc,JSON.stringify(e)):i==="workspace"&&(f==null||f.removeItem(Bc))}catch{}const u=`${s.pathname}${s.search}${s.hash}`,m=n.replaceState??(typeof window>"u"?void 0:p=>window.history.replaceState(null,"",p));return m==null||m(u),u}const g3=y.lazy(()=>es(()=>import("./ChatView-p9tMKcFw.js").then(e=>e.a),__vite__mapDeps([18,1,3,5,14,2,19,7,12,8,0])).then(e=>({default:e.ChatView}))),b3=y.lazy(()=>es(()=>import("./KanbanBoard-1Bkr6fIi.js"),__vite__mapDeps([20,1,3,6,12,7,19,2])).then(e=>({default:e.KanbanBoard})));function k3(){const e=Ut(),[t,n]=y.useState(!1),r=H(j=>j.subscribeToTaskEvents),s=H(j=>j.unsubscribeFromTaskEvents),i=H(j=>j.currentSessionRef),o=H(j=>j.isTemporarySession),d=H(j=>j.loadTaskWorkspaceInfo),f=H(j=>j.loadBoundProjects),u=H(j=>j.loadSessions),m=H(j=>j.selectSession),p=H(j=>j.selectProject),h=H(j=>j.startTemporarySession),b=H(j=>j.setError),k=H(j=>j.sessions),S=H(j=>j.selectedProjectPath),C=Mt(j=>j.loadModels),x=Xr(j=>j.loadSettings),N=on(j=>j.mainView),P=on(j=>j.setMainView),F=on(j=>j.boardProjectPath),D=on(j=>j.setBoardProjectPath);return y.useEffect(()=>(r().catch(j=>{console.error("Failed to subscribe to task events",j)}),s),[r,s]),y.useEffect(()=>{let j=!1;return(async()=>{var le;u(),x(),C();const T=f3(window.location.search);P(T.view),D(T.view==="board"?T.projectPath:null);const M=m3(),$=T.view==="board"?null:T.hasSessionParam?T.sessionRef:T.projectPath?null:M,te=Promise.all([d(),f()]),O=!$&&!T.projectPath;if(O&&(h(),n(!0)),await te,j)return;const Q=H.getState(),ae=T.projectPath?(le=Q.boundProjects.find(de=>de.path===T.projectPath&&de.available))==null?void 0:le.path:null;if(ae&&p(ae),!($&&(await m($),j))){if(!$||!oe(H.getState().currentSessionRef,$)){const de=$?H.getState().error:null;h(),de&&b(de)}O||n(!0)}})(),()=>{j=!0}},[f,C,u,x,d,p,m,b,D,P,h]),y.useEffect(()=>{if(!t)return;const j=i?Gd(k,i):void 0;h3(N==="workspace"?i:null,N==="board"?F:S,{displayProjectPath:N==="board"?F:j?lo(j,S):S,view:N})},[F,i,t,N,S,k]),a.jsxs(a.Fragment,{children:[a.jsx(_5,{}),a.jsx(D5,{children:t?N==="board"?a.jsx(y.Suspense,{fallback:a.jsx("div",{className:"flex h-full items-center justify-center font-mono text-[12px] text-[hsl(var(--deck-ink-faint))]",children:e("app.restoring")}),children:a.jsx(b3,{})}):!i||o?a.jsx(u3,{}):a.jsx(y.Suspense,{fallback:a.jsx("div",{className:"flex h-full items-center justify-center font-mono text-[12px] text-[hsl(var(--deck-ink-faint))]",children:e("app.restoring")}),children:a.jsx(g3,{})}):a.jsx("div",{className:"flex h-full items-center justify-center font-mono text-[12px] text-[hsl(var(--deck-ink-faint))]",children:e("app.restoring")})})]})}M0.createRoot(document.getElementById("root")).render(a.jsx($0.StrictMode,{children:a.jsx(k3,{})}));export{Gc as $,Ns as A,sy as B,Tp as C,Jc as D,mp as E,hu as F,zc as G,my as H,gi as I,Vd as J,Vc as K,mt as L,Ep as M,ry as N,S3 as O,ky as P,li as Q,Yo as R,wy as S,Fp as T,Kr as U,Mt as V,ku as W,ui as X,Wx as Y,Kc as Z,es as _,H as a,Ro as a0,e0 as a1,Pp as a2,Dn as a3,Xx as a4,Yn as a5,Zn as a6,_n as a7,XF as a8,vy as a9,Jx as aa,u5 as ab,Qd as ac,lo as ad,Mc as ae,Ke as af,Fc as ag,cy as ah,$p as ai,Op as aj,Mp as ak,C3 as al,Bx as am,fu as an,yy as ao,E3 as ap,ly as aq,ep as ar,I3 as as,K as at,c as au,ue as av,Qn as aw,be as b,se as c,Me as d,Zo as e,Qc as f,Xo as g,ea as h,Kp as i,J as j,Rp as k,X as l,Jd as m,js as n,oy as o,gu as p,Wd as q,pw as r,oe as s,mu as t,Ut as u,xy as v,Gd as w,Xr as x,di as y,s3 as z};
|