tarsk 0.5.67 → 0.5.69

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (60) hide show
  1. package/dist/index.js +3 -2
  2. package/dist/public/assets/{account-view-BlK6g38q.js → account-view-Chzj6v7a.js} +1 -1
  3. package/dist/public/assets/{alert-dialog-B6An1LDY.js → alert-dialog-CLYxQdrK.js} +1 -1
  4. package/dist/public/assets/{async-error-boundary-Rf-s2_Ez.js → async-error-boundary-CM6LU7nT.js} +1 -1
  5. package/dist/public/assets/{browser-tab-BJxPUVJi.js → browser-tab--1iEoJGu.js} +1 -1
  6. package/dist/public/assets/{chat-dock-context-DyKjqpND.js → chat-dock-context-Gg1jpamu.js} +1 -1
  7. package/dist/public/assets/{commit-dialog-CYb1kJCq.js → commit-dialog-BfdxNX_T.js} +1 -1
  8. package/dist/public/assets/{commit-error-dialog-DvxaNRcH.js → commit-error-dialog-DrsDKL-B.js} +1 -1
  9. package/dist/public/assets/{commit-method-fields-Dijc502F.js → commit-method-fields-o-xw2faT.js} +1 -1
  10. package/dist/public/assets/{context-menu-C51M1WGZ.js → context-menu-BLvLpqq7.js} +1 -1
  11. package/dist/public/assets/{conversation-history-view-w_6Jd3d-.js → conversation-history-view-ukfe_7qw.js} +1 -1
  12. package/dist/public/assets/{create-project-dialog-CSVkngnF.js → create-project-dialog-DrXo61FQ.js} +1 -1
  13. package/dist/public/assets/{create-repo-dialog-CcFA8pXz.js → create-repo-dialog-CkFACtMf.js} +1 -1
  14. package/dist/public/assets/{delete-confirm-dialog-uTSX_x-i.js → delete-confirm-dialog-D1zjctrX.js} +1 -1
  15. package/dist/public/assets/{diff-view-XN5G5F6E.js → diff-view-Cxf7v9t1.js} +1 -1
  16. package/dist/public/assets/{explorer-tab-view-A2ICDFPB.js → explorer-tab-view-LkT0bDcR.js} +2 -2
  17. package/dist/public/assets/{explorer-tree-B04Ba59E.js → explorer-tree-B6EZUVTn.js} +1 -1
  18. package/dist/public/assets/{explorer-view-CofaKFiu.js → explorer-view-D5y8Uxoi.js} +1 -1
  19. package/dist/public/assets/{git-history-dialog-V3kaff2G.js → git-history-dialog-X6sVwgPT.js} +1 -1
  20. package/dist/public/assets/{index-B0xy4BkI.js → index-CJCQ4bTo.js} +32 -33
  21. package/dist/public/assets/{mcp-server-card-DOsP-SQ8.js → mcp-server-card-DPakHrG9.js} +1 -1
  22. package/dist/public/assets/{merged-pr-dialog-BerRzLlh.js → merged-pr-dialog-C3euJvCu.js} +1 -1
  23. package/dist/public/assets/{model-list-controls-Dw98tMn7.js → model-list-controls-2JtkzWsp.js} +1 -1
  24. package/dist/public/assets/{monaco-setup-C87kBr4u.js → monaco-setup-b-rhUj5t.js} +1 -1
  25. package/dist/public/assets/{onboarding-DVc9-yKJ.js → onboarding-KBcwP-kU.js} +1 -1
  26. package/dist/public/assets/{project-env-vars-view-BQwUd7y6.js → project-env-vars-view-D60J_-qQ.js} +1 -1
  27. package/dist/public/assets/{project-model-aliases-view-CobSp09z.js → project-model-aliases-view-EClnOgBH.js} +1 -1
  28. package/dist/public/assets/{project-settings-view-CPTd5lEi.js → project-settings-view-Cb0iiyad.js} +1 -1
  29. package/dist/public/assets/{project-tools-view-DShQghoz.js → project-tools-view-B_WnVICB.js} +1 -1
  30. package/dist/public/assets/{providers-list-view-Da9VMcuP.js → providers-list-view-CYy82_hl.js} +1 -1
  31. package/dist/public/assets/{pull-request-dialog-BAarT9EM.js → pull-request-dialog-CitbRcub.js} +1 -1
  32. package/dist/public/assets/{pull-with-changes-dialog-BcF25mjQ.js → pull-with-changes-dialog-CpgHqvKf.js} +1 -1
  33. package/dist/public/assets/{push-before-pr-dialog-BF0NzV2u.js → push-before-pr-dialog-CrcNZDLb.js} +1 -1
  34. package/dist/public/assets/{react-vendor-B7jFrulV.js → react-vendor-7n7LyU5o.js} +1 -1
  35. package/dist/public/assets/{settings-general-view-DT4nElcL.js → settings-general-view-72s5xgPj.js} +1 -1
  36. package/dist/public/assets/{settings-instructions-view-Bsr8wRMf.js → settings-instructions-view-DN4-73KP.js} +1 -1
  37. package/dist/public/assets/{settings-list-B9wyVzKw.js → settings-list-CWdsaJKC.js} +1 -1
  38. package/dist/public/assets/{settings-logs-view-CyaGqUKH.js → settings-logs-view-CkkVgGvv.js} +1 -1
  39. package/dist/public/assets/{settings-mcp-servers-view-BTUWHB5K.js → settings-mcp-servers-view-B8_vnfl6.js} +1 -1
  40. package/dist/public/assets/{settings-models-view-DFwkVdt3.js → settings-models-view-xIRY7PvW.js} +1 -1
  41. package/dist/public/assets/{settings-rules-view-BhA9tjVh.js → settings-rules-view-DIk0ghSW.js} +1 -1
  42. package/dist/public/assets/{settings-skills-view-BFoO9oZk.js → settings-skills-view-qWbr0Vl2.js} +1 -1
  43. package/dist/public/assets/{settings-slack-view-D4mrQ9C9.js → settings-slack-view-RFLP0USW.js} +1 -1
  44. package/dist/public/assets/{settings-slash-commands-view-BLKPDUVG.js → settings-slash-commands-view-zFWoR_R7.js} +1 -1
  45. package/dist/public/assets/{settings-statistics-view-fa6iBiP8.js → settings-statistics-view-BgrzVn4R.js} +1 -1
  46. package/dist/public/assets/{settings-storage-view-LaiAi5gv.js → settings-storage-view-BS2k7E74.js} +1 -1
  47. package/dist/public/assets/{settings-subagents-view-BjMz2Ri_.js → settings-subagents-view-BZr1NkVp.js} +1 -1
  48. package/dist/public/assets/{settings-system-prompt-view-DNh1yqZh.js → settings-system-prompt-view-mQErde93.js} +1 -1
  49. package/dist/public/assets/{settings-view-BoC66Wji.js → settings-view-D4-XZz2V.js} +2 -2
  50. package/dist/public/assets/{tasks-view-B049aXpC.js → tasks-view-DgkXglqW.js} +2 -2
  51. package/dist/public/assets/{terminal-panel-Pv5xqCpm.js → terminal-panel-DCaBWV04.js} +1 -1
  52. package/dist/public/assets/{ui-components-DJLsrr5e.js → ui-components-1WsgZqWa.js} +1 -1
  53. package/dist/public/assets/{use-active-dock-panel-instance-BlRDPUlZ.js → use-active-dock-panel-instance-B9ao_JH2.js} +1 -1
  54. package/dist/public/assets/{use-installed-ai-files-DmLnugpj.js → use-installed-ai-files-GpG9ZL8U.js} +1 -1
  55. package/dist/public/assets/{web-BidDZaMC.js → web-BuYdGVW8.js} +1 -1
  56. package/dist/public/assets/{web-DHUv7oQP.js → web-CEfF0992.js} +1 -1
  57. package/dist/public/assets/{web-JMCxQg4N.js → web-D7CwlITA.js} +1 -1
  58. package/dist/public/assets/{web-C_HuLxHj.js → web-yeAPC2wm.js} +1 -1
  59. package/dist/public/index.html +5 -5
  60. package/package.json +1 -1
@@ -1,28 +1,27 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/dist-IeRYu0zQ.js","assets/rolldown-runtime-aKtaBQYM.js","assets/vosk-speech-Fi-g2v8n.js","assets/commit-dialog-CYb1kJCq.js","assets/onboarding-DVc9-yKJ.js","assets/interactive-BrHVRHmQ.js","assets/pull-request-dialog-BAarT9EM.js","assets/create-repo-dialog-CcFA8pXz.js","assets/git-history-dialog-V3kaff2G.js","assets/push-before-pr-dialog-BF0NzV2u.js","assets/pull-with-changes-dialog-BcF25mjQ.js","assets/commit-error-dialog-DvxaNRcH.js","assets/terminal-panel-Pv5xqCpm.js","assets/chat-dock-context-DyKjqpND.js","assets/store-B_cK-gsT.js","assets/main-tab-context-zQSuRQQG.js","assets/use-active-dock-panel-instance-BlRDPUlZ.js","assets/terminal-panel-BrP-ENHg.css","assets/diff-view-XN5G5F6E.js","assets/monaco-D1hpqXQ0.js","assets/monaco-BQve5vfS.css","assets/async-error-boundary-Rf-s2_Ez.js","assets/card-BDQUHsPD.js","assets/context-menu-C51M1WGZ.js","assets/react-vendor-B7jFrulV.js","assets/use-suspense-resource-CExc4Svq.js","assets/monaco-setup-C87kBr4u.js","assets/utils-SsF94Pkg.js","assets/explorer-tab-view-A2ICDFPB.js","assets/use-toast-hxHsVv6a.js","assets/explorer-tab-context-BdjTEbFh.js","assets/browser-tab-BJxPUVJi.js","assets/tasks-view-B049aXpC.js","assets/commit-method-fields-Dijc502F.js","assets/ndjson-stream-DeGpE5o5.js","assets/create-project-dialog-CSVkngnF.js","assets/settings-view-BoC66Wji.js","assets/skeleton-CJSNEi3C.js","assets/merged-pr-dialog-BerRzLlh.js"])))=>i.map(i=>d[i]);
2
- import{i as e,t}from"./rolldown-runtime-aKtaBQYM.js";import{$r as n,$t as r,An as i,B as a,Bt as o,Di as s,Dn as c,Dr as l,Dt as u,Ei as d,Er as f,F as p,Fn as m,Fr as h,Ft as g,G as _,Gr as v,Gt as y,Ht as b,I as x,In as S,Ir as C,Jn as w,Jr as T,Jt as E,K as D,Kr as O,Kt as k,L as A,Ln as j,Lt as M,M as N,Mn as P,Mr as F,Mt as I,N as L,Nt as R,O as z,Oi as B,On as V,Ot as H,P as ee,Pn as te,Pr as ne,Pt as re,Q as ie,Qr as ae,Qt as oe,Rn as se,Rr as U,Rt as ce,S as le,Si as ue,Sn as W,St as de,T as fe,Tr as pe,Ur as me,Ut as he,V as ge,Vr as _e,Vt as ve,W as ye,Wr as be,Wt as xe,X as Se,Xn as Ce,Xr as we,Xt as Te,Y as Ee,Yn as De,Yr as Oe,Yt as ke,Z as Ae,Zn as je,Zr as Me,Zt as Ne,_ as Pe,_n as Fe,_r as Ie,_t as Le,a as Re,ai as ze,an as Be,ar as Ve,b as He,bi as Ue,br as We,bt as Ge,c as Ke,ci as qe,ct as Je,d as Ye,di as Xe,dn as Ze,dt as Qe,ei as $e,en as et,er as tt,f as nt,fi as rt,fn as it,ft as at,g as ot,gn as st,gr as ct,gt as lt,hn as ut,ht as dt,i as G,ii as ft,in as pt,ir as mt,j as ht,jn as gt,jt as _t,k as vt,ki as yt,kt as bt,m as xt,mi as St,mr as Ct,n as wt,ni as Tt,nt as Et,o as K,oi as q,on as Dt,pn as Ot,pr as kt,pt as At,q as jt,qn as Mt,qr as Nt,qt as Pt,r as Ft,rt as It,s as Lt,sn as Rt,sr as zt,t as Bt,ti as Vt,tn as Ht,tr as Ut,u as Wt,ui as Gt,un as Kt,ut as qt,vi as Jt,vn as Yt,wi as Xt,wn as Zt,wt as Qt,x as $t,xi as en,xn as tn,xr as nn,xt as rn,y as an,yi as on,yn as sn,yr as cn,yt as ln,z as un,zr as dn,zt as fn}from"./interactive-BrHVRHmQ.js";import{A as pn,At as mn,B as hn,Bt as gn,Ct as _n,D as J,Dt as vn,E as yn,Et as bn,F as xn,Ft as Sn,G as Cn,H as wn,Ht as Tn,I as En,It as Dn,K as On,L as kn,Lt as An,M as jn,Mt as Mn,N as Nn,Nt as Pn,O as Fn,Ot as In,P as Ln,Pt as Rn,R as zn,Rt as Bn,St as Vn,T as Hn,Tt as Un,U as Wn,Ut as Gn,V as Kn,Vt as qn,W as Jn,Wt as Yn,_t as Xn,at as Zn,bt as Qn,ct as $n,dt as er,ft as tr,gt as nr,ht as rr,it as ir,j as ar,jt as or,k as sr,kt as cr,lt as lr,mt as ur,ot as dr,pt as fr,q as pr,qt as mr,rt as hr,st as gr,ut as _r,vt as vr,wt as yr,xt as br,yt as xr,z as Sr,zt as Cr}from"./react-vendor-B7jFrulV.js";import{$i as wr,$r as Tr,$t as Er,A as Dr,Aa as Or,Ai as kr,Ar,Ba as jr,Bn as Mr,Br as Nr,Ca as Pr,Ct as Fr,D as Ir,Da as Lr,Di as Rr,Dn as zr,E as Br,Ea as Vr,Eo as Hr,Er as Ur,F as Wr,Fa as Gr,Fr as Kr,Gi as qr,Gn as Jr,H as Yr,Ha as Xr,Hn as Zr,Hr as Qr,I as $r,In as ei,Ir as ti,Ja as ni,Ji as ri,Jn as ii,Jr as ai,Jt as oi,Ki as si,Kn as ci,L as li,Lr as ui,M as di,Ma as fi,Mn as pi,Mo as mi,Mr as hi,N as gi,O as _i,Oa as vi,Oi as yi,Oo as bi,Pa as xi,Pr as Si,Qa as Ci,Qi as wi,Qn as Ti,Qr as Ei,Ra as Di,Rn as Oi,Rr as ki,S as Ai,Sa as ji,St as Mi,T as Ni,Ta as Pi,Ti as Fi,Tn as Ii,To as Li,Tr as Ri,Tt as zi,U as Bi,Ua as Vi,Un as Hi,Ur as Ui,Vr as Wi,Wa as Gi,Wn as Ki,Wr as qi,Xa as Ji,Xi as Yi,Xn as Xi,Yr as Zi,Yt as Qi,Za as $i,Zn as ea,Zt as ta,_ as na,_a as ra,_i as ia,_n as aa,_o as oa,_r as sa,aa as ca,ao as la,ar as ua,b as da,ba as fa,bi as pa,bn as ma,br as ha,bt as ga,c as _a,ca as va,ci as ya,cn as ba,co as xa,da as Sa,di as Ca,dn as wa,do as Ta,dr as Ea,dt as Da,ea as Oa,ei as ka,er as Aa,f as ja,fa as Ma,fi as Na,fo as Pa,ga as Fa,gi as Ia,go as La,gr as Ra,gt as za,h as Ba,ha as Va,ia as Ha,in as Ua,io as Wa,ir as Ga,it as Ka,j as qa,ja as Ja,jr as Ya,k as Xa,ka as Za,ki as Qa,kr as $a,la as eo,li as to,ln as no,lr as ro,m as io,ma as ao,mi as oo,mn as so,mo as co,mr as lo,na as uo,ni as fo,nr as po,nt as mo,on as ho,oo as go,or as _o,p as vo,pa as yo,pi as bo,pt as xo,qa as So,qi as Co,qn as wo,ra as To,ri as Eo,rr as Do,rt as Oo,s as ko,sa as Ao,sn as jo,so as Mo,sr as No,ta as Po,ti as Fo,tn as Io,to as Lo,ua as Ro,un as zo,uo as Bo,v as Vo,va as Ho,vi as Uo,vo as Wo,vr as Go,w as Ko,wa as qo,wi as Jo,wo as Yo,wr as Xo,wt as Zo,x as Qo,xa as $o,xi as es,xn as ts,xo as ns,xt as rs,ya as is,yi as as,yn as os,za as ss,zn as cs,zr as ls}from"./onboarding-DVc9-yKJ.js";import{l as us}from"./monaco-D1hpqXQ0.js";import{A as ds,B as fs,C as ps,D as ms,E as hs,F as gs,G as _s,H as vs,I as ys,J as Y,K as bs,L as xs,M as Ss,N as Cs,O as ws,P as Ts,R as Es,S as Ds,T as Os,U as ks,V as As,W as js,Y as Ms,_ as Ns,a as Ps,b as Fs,c as Is,d as Ls,f as Rs,g as zs,h as Bs,i as Vs,j as Hs,k as Us,l as Ws,m as Gs,n as Ks,o as qs,p as Js,q as Ys,r as X,s as Xs,t as Zs,u as Qs,v as $s,w as ec,x as tc,y as nc,z as rc}from"./store-B_cK-gsT.js";import{n as ic,t as ac}from"./use-toast-hxHsVv6a.js";import{a as oc,c as sc,i as cc,n as lc,o as uc,r as dc,s as fc,t as pc}from"./alert-dialog-B6An1LDY.js";import{n as mc,t as hc}from"./main-tab-context-zQSuRQQG.js";import{n as gc,t as _c}from"./chat-dock-context-DyKjqpND.js";import{n as vc,t as yc}from"./explorer-tab-context-BdjTEbFh.js";import{a as bc,c as xc,d as Sc,f as Cc,i as wc,l as Tc,n as Ec,o as Dc,r as Oc,s as kc,t as Ac,u as jc}from"./thread-tool-blocks-D9HUkPHB.js";import{r as Mc,t as Nc}from"./use-suspense-resource-CExc4Svq.js";import{n as Pc,t as Fc}from"./ndjson-stream-DeGpE5o5.js";import{n as Ic,t as Lc}from"./utils-SsF94Pkg.js";(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),e.crossOrigin===`use-credentials`?t.credentials=`include`:e.crossOrigin===`anonymous`?t.credentials=`omit`:t.credentials=`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})();var Rc=class extends Vn{#e;#t;#n;#r;constructor(e){super(),this.#e=e.client,this.mutationId=e.mutationId,this.#n=e.mutationCache,this.#t=[],this.state=e.state||zc(),this.setOptions(e.options),this.scheduleGc()}setOptions(e){this.options=e,this.updateGcTime(this.options.gcTime)}get meta(){return this.options.meta}addObserver(e){this.#t.includes(e)||(this.#t.push(e),this.clearGcTimeout(),this.#n.notify({type:`observerAdded`,mutation:this,observer:e}))}removeObserver(e){this.#t=this.#t.filter(t=>t!==e),this.scheduleGc(),this.#n.notify({type:`observerRemoved`,mutation:this,observer:e})}optionalRemove(){this.#t.length||(this.state.status===`pending`?this.scheduleGc():this.#n.remove(this))}continue(){return this.#r?.continue()??this.execute(this.state.variables)}async execute(e){let t=()=>{this.#i({type:`continue`})},n={client:this.#e,meta:this.options.meta,mutationKey:this.options.mutationKey};this.#r=_n({fn:()=>this.options.mutationFn?this.options.mutationFn(e,n):Promise.reject(Error(`No mutationFn found`)),onFail:(e,t)=>{this.#i({type:`failed`,failureCount:e,error:t})},onPause:()=>{this.#i({type:`pause`})},onContinue:t,retry:this.options.retry??0,retryDelay:this.options.retryDelay,networkMode:this.options.networkMode,canRun:()=>this.#n.canRun(this)});let r=this.state.status===`pending`,i=!this.#r.canStart();try{if(r)t();else{this.#i({type:`pending`,variables:e,isPaused:i}),this.#n.config.onMutate&&await this.#n.config.onMutate(e,this,n);let t=await this.options.onMutate?.(e,n);t!==this.state.context&&this.#i({type:`pending`,context:t,variables:e,isPaused:i})}let a=await this.#r.start();return await this.#n.config.onSuccess?.(a,e,this.state.context,this,n),await this.options.onSuccess?.(a,e,this.state.context,n),await this.#n.config.onSettled?.(a,null,this.state.variables,this.state.context,this,n),await this.options.onSettled?.(a,null,e,this.state.context,n),this.#i({type:`success`,data:a}),a}catch(t){try{await this.#n.config.onError?.(t,e,this.state.context,this,n)}catch(e){Promise.reject(e)}try{await this.options.onError?.(t,e,this.state.context,n)}catch(e){Promise.reject(e)}try{await this.#n.config.onSettled?.(void 0,t,this.state.variables,this.state.context,this,n)}catch(e){Promise.reject(e)}try{await this.options.onSettled?.(void 0,t,e,this.state.context,n)}catch(e){Promise.reject(e)}throw this.#i({type:`error`,error:t}),t}finally{this.#n.runNext(this)}}#i(e){let t=t=>{switch(e.type){case`failed`:return{...t,failureCount:e.failureCount,failureReason:e.error};case`pause`:return{...t,isPaused:!0};case`continue`:return{...t,isPaused:!1};case`pending`:return{...t,context:e.context,data:void 0,failureCount:0,failureReason:null,error:null,isPaused:e.isPaused,status:`pending`,variables:e.variables,submittedAt:Date.now()};case`success`:return{...t,data:e.data,failureCount:0,failureReason:null,error:null,status:`success`,isPaused:!1};case`error`:return{...t,data:void 0,error:e.error,failureCount:t.failureCount+1,failureReason:e.error,isPaused:!1,status:`error`}}};this.state=t(this.state),Un.batch(()=>{this.#t.forEach(t=>{t.onMutationUpdate(e)}),this.#n.notify({mutation:this,type:`updated`,action:e})})}};function zc(){return{context:void 0,data:void 0,error:null,failureCount:0,failureReason:null,isPaused:!1,status:`idle`,variables:void 0,submittedAt:0}}var Bc=class extends An{constructor(e={}){super(),this.config=e,this.#e=new Set,this.#t=new Map,this.#n=0}#e;#t;#n;build(e,t,n){let r=new Rc({client:e,mutationCache:this,mutationId:++this.#n,options:e.defaultMutationOptions(t),state:n});return this.add(r),r}add(e){this.#e.add(e);let t=Vc(e);if(typeof t==`string`){let n=this.#t.get(t);n?n.push(e):this.#t.set(t,[e])}this.notify({type:`added`,mutation:e})}remove(e){if(this.#e.delete(e)){let t=Vc(e);if(typeof t==`string`){let n=this.#t.get(t);if(n)if(n.length>1){let t=n.indexOf(e);t!==-1&&n.splice(t,1)}else n[0]===e&&this.#t.delete(t)}}this.notify({type:`removed`,mutation:e})}canRun(e){let t=Vc(e);if(typeof t==`string`){let n=this.#t.get(t)?.find(e=>e.state.status===`pending`);return!n||n===e}else return!0}runNext(e){let t=Vc(e);return typeof t==`string`?(this.#t.get(t)?.find(t=>t!==e&&t.state.isPaused))?.continue()??Promise.resolve():Promise.resolve()}clear(){Un.batch(()=>{this.#e.forEach(e=>{this.notify({type:`removed`,mutation:e})}),this.#e.clear(),this.#t.clear()})}getAll(){return Array.from(this.#e)}find(e){let t={exact:!0,...e};return this.getAll().find(e=>mn(t,e))}findAll(e={}){return this.getAll().filter(t=>mn(e,t))}notify(e){Un.batch(()=>{this.listeners.forEach(t=>{t(e)})})}resumePausedMutations(){let e=this.getAll().filter(e=>e.state.isPaused);return Un.batch(()=>Promise.all(e.map(e=>e.continue().catch(Mn))))}};function Vc(e){return e.options.scope?.id}var Hc=class extends An{constructor(e={}){super(),this.config=e,this.#e=new Map}#e;build(e,t,n){let r=t.queryKey,i=t.queryHash??In(r,t),a=this.get(i);return a||(a=new br({client:e,queryKey:r,queryHash:i,options:e.defaultQueryOptions(t),state:n,defaultOptions:e.getQueryDefaults(r)}),this.add(a)),a}add(e){this.#e.has(e.queryHash)||(this.#e.set(e.queryHash,e),this.notify({type:`added`,query:e}))}remove(e){let t=this.#e.get(e.queryHash);t&&(e.destroy(),t===e&&this.#e.delete(e.queryHash),this.notify({type:`removed`,query:e}))}clear(){Un.batch(()=>{this.getAll().forEach(e=>{this.remove(e)})})}get(e){return this.#e.get(e)}getAll(){return[...this.#e.values()]}find(e){let t={exact:!0,...e};return this.getAll().find(e=>or(t,e))}findAll(e={}){let t=this.getAll();return Object.keys(e).length>0?t.filter(t=>or(e,t)):t}notify(e){Un.batch(()=>{this.listeners.forEach(t=>{t(e)})})}onFocus(){Un.batch(()=>{this.getAll().forEach(e=>{e.onFocus()})})}onOnline(){Un.batch(()=>{this.getAll().forEach(e=>{e.onOnline()})})}},Uc=class{#e;#t;#n;#r;#i;#a;#o;#s;constructor(e={}){this.#e=e.queryCache||new Hc,this.#t=e.mutationCache||new Bc,this.#n=e.defaultOptions||{},this.#r=new Map,this.#i=new Map,this.#a=0}mount(){this.#a++,this.#a===1&&(this.#o=Dn.subscribe(async e=>{e&&(await this.resumePausedMutations(),this.#e.onFocus())}),this.#s=yr.subscribe(async e=>{e&&(await this.resumePausedMutations(),this.#e.onOnline())}))}unmount(){this.#a--,this.#a===0&&(this.#o?.(),this.#o=void 0,this.#s?.(),this.#s=void 0)}isFetching(e){return this.#e.findAll({...e,fetchStatus:`fetching`}).length}isMutating(e){return this.#t.findAll({...e,status:`pending`}).length}getQueryData(e){let t=this.defaultQueryOptions({queryKey:e});return this.#e.get(t.queryHash)?.state.data}ensureQueryData(e){let t=this.defaultQueryOptions(e),n=this.#e.build(this,t),r=n.state.data;return r===void 0?this.fetchQuery(e):(e.revalidateIfStale&&n.isStaleByTime(Rn(t.staleTime,n))&&this.prefetchQuery(t),Promise.resolve(r))}getQueriesData(e){return this.#e.findAll(e).map(({queryKey:e,state:t})=>[e,t.data])}setQueryData(e,t,n){let r=this.defaultQueryOptions({queryKey:e}),i=this.#e.get(r.queryHash)?.state.data,a=bn(t,i);if(a!==void 0)return this.#e.build(this,r).setData(a,{...n,manual:!0})}setQueriesData(e,t,n){return Un.batch(()=>this.#e.findAll(e).map(({queryKey:e})=>[e,this.setQueryData(e,t,n)]))}getQueryState(e){let t=this.defaultQueryOptions({queryKey:e});return this.#e.get(t.queryHash)?.state}removeQueries(e){let t=this.#e;Un.batch(()=>{t.findAll(e).forEach(e=>{t.remove(e)})})}resetQueries(e,t){let n=this.#e;return Un.batch(()=>(n.findAll(e).forEach(e=>{e.reset()}),this.refetchQueries({type:`active`,...e},t)))}cancelQueries(e,t={}){let n={revert:!0,...t},r=Un.batch(()=>this.#e.findAll(e).map(e=>e.cancel(n)));return Promise.all(r).then(Mn).catch(Mn)}invalidateQueries(e,t={}){return Un.batch(()=>(this.#e.findAll(e).forEach(e=>{e.invalidate()}),e?.refetchType===`none`?Promise.resolve():this.refetchQueries({...e,type:e?.refetchType??e?.type??`active`},t)))}refetchQueries(e,t={}){let n={...t,cancelRefetch:t.cancelRefetch??!0},r=Un.batch(()=>this.#e.findAll(e).filter(e=>!e.isDisabled()&&!e.isStatic()).map(e=>{let t=e.fetch(void 0,n);return n.throwOnError||(t=t.catch(Mn)),e.state.fetchStatus===`paused`?Promise.resolve():t}));return Promise.all(r).then(Mn)}fetchQuery(e){let t=this.defaultQueryOptions(e);t.retry===void 0&&(t.retry=!1);let n=this.#e.build(this,t);return n.isStaleByTime(Rn(t.staleTime,n))?n.fetch(t):Promise.resolve(n.state.data)}prefetchQuery(e){return this.fetchQuery(e).then(Mn).catch(Mn)}fetchInfiniteQuery(e){return e._type=`infinite`,this.fetchQuery(e)}prefetchInfiniteQuery(e){return this.fetchInfiniteQuery(e).then(Mn).catch(Mn)}ensureInfiniteQueryData(e){return e._type=`infinite`,this.ensureQueryData(e)}resumePausedMutations(){return yr.isOnline()?this.#t.resumePausedMutations():Promise.resolve()}getQueryCache(){return this.#e}getMutationCache(){return this.#t}getDefaultOptions(){return this.#n}setDefaultOptions(e){this.#n=e}setQueryDefaults(e,t){this.#r.set(vn(e),{queryKey:e,defaultOptions:t})}getQueryDefaults(e){let t=[...this.#r.values()],n={};return t.forEach(t=>{Pn(e,t.queryKey)&&Object.assign(n,t.defaultOptions)}),n}setMutationDefaults(e,t){this.#i.set(vn(e),{mutationKey:e,defaultOptions:t})}getMutationDefaults(e){let t=[...this.#i.values()],n={};return t.forEach(t=>{Pn(e,t.mutationKey)&&Object.assign(n,t.defaultOptions)}),n}defaultQueryOptions(e){if(e._defaulted)return e;let t={...this.#n.queries,...this.getQueryDefaults(e.queryKey),...e,_defaulted:!0};return t.queryHash||=In(t.queryKey,t),t.refetchOnReconnect===void 0&&(t.refetchOnReconnect=t.networkMode!==`always`),t.throwOnError===void 0&&(t.throwOnError=!!t.suspense),!t.networkMode&&t.persister&&(t.networkMode=`offlineFirst`),t.queryFn===Sn&&(t.enabled=!1),t}defaultMutationOptions(e){return e?._defaulted?e:{...this.#n.mutations,...e?.mutationKey&&this.getMutationDefaults(e.mutationKey),...e,_defaulted:!0}}clear(){this.#e.clear(),this.#t.clear()}},Z=e(yt(),1),Wc=mr(),Q=B(),$=s(),Gc=`lg-filter-project-icon`,Kc=`blur(2px) url(#${Gc}) blur(4px) saturate(1.5) brightness(1.1)`,qc=`blur(16px) saturate(1.8) brightness(1.15) contrast(1.05)`,Jc=`inset 0 0 0 1px rgba(255, 255, 255, 0.15), inset 1.5px 1.5px 0 rgba(255, 255, 255, 0.5), inset 0 0 12px rgba(255, 255, 255, 0.2)`;function Yc(e){let t=(0,Q.c)(21),{project:n,isSelected:r,isDeleting:i,elevated:a,className:s,iconClassName:c}=e,l=r===void 0?!1:r,u=i===void 0?!1:i,d=a===void 0?!0:a,f;t[0]===n?f=t[1]:(f=kt(Ke(n)),t[0]=n,t[1]=f);let p=f,m=n.gitUrl?o:ce,h=l&&`ring-2 ring-brand/40`,g;t[2]!==s||t[3]!==h?(g=G(`relative flex aspect-square items-center justify-center overflow-hidden rounded-[1.15rem] text-foreground/70 dark:text-white`,h,s),t[2]=s,t[3]=h,t[4]=g):g=t[4];let _=`linear-gradient(150deg, rgba(255, 255, 255, 0.12), rgba(255, 255, 255, 0.02)), ${p}`,v=d?`${Jc}, 0 8px 32px rgba(0, 0, 0, 0.2)`:`${Jc}, 0 1px 2px rgba(0, 0, 0, 0.15)`,y;t[5]!==_||t[6]!==v?(y={backgroundColor:`rgba(255, 255, 255, 0.17)`,backgroundImage:_,backdropFilter:Kc,WebkitBackdropFilter:qc,boxShadow:v},t[5]=_,t[6]=v,t[7]=y):y=t[7];let b;t[8]!==u||t[9]!==n.projectIcon?(b=n.projectIcon&&!u&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`div`,{className:`pointer-events-none absolute inset-0 dark:bg-background`}),(0,$.jsx)(`img`,{src:n.projectIcon,alt:``,className:`relative h-full w-full object-cover`})]}),t[8]=u,t[9]=n.projectIcon,t[10]=b):b=t[10];let x;t[11]!==m||t[12]!==c||t[13]!==u||t[14]!==n.projectIcon?(x=u?(0,$.jsx)(ln,{className:G(`relative h-8 w-8 animate-spin text-muted-foreground`,c)}):n.projectIcon?null:(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`div`,{className:`pointer-events-none absolute inset-0 dark:bg-black/50`}),(0,$.jsx)(m,{className:G(`relative h-8 w-8`,c),strokeWidth:1.5})]}),t[11]=m,t[12]=c,t[13]=u,t[14]=n.projectIcon,t[15]=x):x=t[15];let S;return t[16]!==b||t[17]!==x||t[18]!==g||t[19]!==y?(S=(0,$.jsxs)(`div`,{className:g,style:y,children:[b,x]}),t[16]=b,t[17]=x,t[18]=g,t[19]=y,t[20]=S):S=t[20],S}function Xc(){let e=(0,Q.c)(2),t;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t={position:`absolute`},e[0]=t):t=e[0];let n;return e[1]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,$.jsx)(`svg`,{width:`0`,height:`0`,style:t,"aria-hidden":`true`,children:(0,$.jsxs)(`filter`,{id:Gc,x:`0`,y:`0`,width:`100%`,height:`100%`,colorInterpolationFilters:`sRGB`,children:[(0,$.jsx)(`feImage`,{x:`0`,y:`0`,width:`80`,height:`80`,href:`data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2280%22%20height%3D%2280%22%20viewBox%3D%220%200%2080%2080%22%3E%3Cdefs%3E%3ClinearGradient%20id%3D%22Y%22%20x1%3D%220%22%20x2%3D%220%22%20y1%3D%222%25%22%20y2%3D%2298%25%22%3E%3Cstop%20offset%3D%220%25%22%20stop-color%3D%22%230F0%22%2F%3E%3Cstop%20offset%3D%22100%25%22%20stop-color%3D%22%23000%22%2F%3E%3C%2FlinearGradient%3E%3ClinearGradient%20id%3D%22X%22%20x1%3D%221%25%22%20x2%3D%2299%25%22%20y1%3D%220%22%20y2%3D%220%22%3E%3Cstop%20offset%3D%220%25%22%20stop-color%3D%22%23F00%22%2F%3E%3Cstop%20offset%3D%22100%25%22%20stop-color%3D%22%23000%22%2F%3E%3C%2FlinearGradient%3E%3C%2Fdefs%3E%3Crect%20width%3D%2280%22%20height%3D%2280%22%20fill%3D%22%23808080%22%2F%3E%3Cg%20filter%3D%22blur(2px)%22%3E%3Crect%20width%3D%2280%22%20height%3D%2280%22%20fill%3D%22%23000080%22%2F%3E%3Crect%20width%3D%2280%22%20height%3D%2280%22%20fill%3D%22url(%23Y)%22%20style%3D%22mix-blend-mode%3Ascreen%22%2F%3E%3Crect%20width%3D%2280%22%20height%3D%2280%22%20fill%3D%22url(%23X)%22%20style%3D%22mix-blend-mode%3Ascreen%22%2F%3E%3Crect%20x%3D%228%22%20y%3D%228%22%20width%3D%2264%22%20height%3D%2264%22%20rx%3D%225%22%20ry%3D%225%22%20fill%3D%22%23808080%22%20filter%3D%22blur(16px)%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E`,result:`displacementMap`}),(0,$.jsx)(`feDisplacementMap`,{in:`SourceGraphic`,in2:`displacementMap`,scale:`158`,xChannelSelector:`R`,yChannelSelector:`G`}),(0,$.jsx)(`feColorMatrix`,{type:`matrix`,result:`displacedR`,values:`1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0`}),(0,$.jsx)(`feDisplacementMap`,{in:`SourceGraphic`,in2:`displacementMap`,scale:`156`,xChannelSelector:`R`,yChannelSelector:`G`}),(0,$.jsx)(`feColorMatrix`,{type:`matrix`,result:`displacedG`,values:`0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1 0`}),(0,$.jsx)(`feDisplacementMap`,{in:`SourceGraphic`,in2:`displacementMap`,scale:`154`,xChannelSelector:`R`,yChannelSelector:`G`}),(0,$.jsx)(`feColorMatrix`,{type:`matrix`,result:`displacedB`,values:`0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0`}),(0,$.jsx)(`feBlend`,{in:`displacedR`,in2:`displacedG`,mode:`screen`,result:`rg`}),(0,$.jsx)(`feBlend`,{in:`rg`,in2:`displacedB`,mode:`screen`})]})}),e[1]=n):n=e[1],n}function Zc(e){let t=(0,Q.c)(18),{projects:n,selectedThreadId:r,selectedProjectId:i,deletingProjectIds:a,onSelectProject:o,onDeleteProject:s}=e,c;t[0]===n.length?c=t[1]:(c=n.length===0&&(0,$.jsx)(`p`,{className:G(U.compact,`col-span-full px-3 pb-2 text-center text-muted-foreground`),children:`No projects yet. Clone a repository to get started.`}),t[0]=n.length,t[1]=c);let l;if(t[2]!==a||t[3]!==s||t[4]!==o||t[5]!==n||t[6]!==i||t[7]!==r){let e;t[9]!==a||t[10]!==s||t[11]!==o||t[12]!==i||t[13]!==r?(e=e=>(0,$.jsx)($c,{project:e,isDeleting:a.includes(e.projectId),isSelected:i!=null&&e.projectId===i||e.threads.some(e=>e.threadId===r),onSelectProject:o,onDeleteProject:s},e.projectId||e.gitUrl),t[9]=a,t[10]=s,t[11]=o,t[12]=i,t[13]=r,t[14]=e):e=t[14],l=n.map(e),t[2]=a,t[3]=s,t[4]=o,t[5]=n,t[6]=i,t[7]=r,t[8]=l}else l=t[8];let u;return t[15]!==c||t[16]!==l?(u=(0,$.jsxs)(`div`,{className:`grid grid-cols-[repeat(auto-fill,minmax(5.5rem,1fr))] gap-x-4 gap-y-6 justify-items-center sm:grid-cols-[repeat(auto-fill,minmax(6.5rem,1fr))] sm:gap-x-6 sm:gap-y-8`,children:[c,l]}),t[15]=c,t[16]=l,t[17]=u):u=t[17],u}function Qc(e){let t=(0,Q.c)(12),{label:n,tile:r,onClick:i,isSelected:a,actions:o}=e,s=a!==void 0&&a?`text-foreground`:`text-foreground/90`,c;t[0]===s?c=t[1]:(c=G(U.compact,`w-full text-center font-medium leading-tight line-clamp-2 break-words`,s),t[0]=s,t[1]=c);let l;t[2]!==n||t[3]!==c?(l=(0,$.jsx)(`span`,{className:c,children:n}),t[2]=n,t[3]=c,t[4]=l):l=t[4];let u;t[5]!==i||t[6]!==l||t[7]!==r?(u=(0,$.jsxs)(`button`,{type:`button`,onClick:i,className:`flex w-full flex-col items-center gap-2 outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-sidebar rounded-2xl`,children:[r,l]}),t[5]=i,t[6]=l,t[7]=r,t[8]=u):u=t[8];let d;return t[9]!==o||t[10]!==u?(d=(0,$.jsxs)(`div`,{className:`group relative flex w-full max-w-[6.5rem] flex-col items-center gap-2`,children:[u,o]}),t[9]=o,t[10]=u,t[11]=d):d=t[11],d}function $c(e){let t=(0,Q.c)(19),{project:n,isDeleting:r,isSelected:i,onSelectProject:a,onDeleteProject:o}=e,s=!r&&n.threads.length===0,c;t[0]===n?c=t[1]:(c=Ke(n),t[0]=n,t[1]=c);let l;t[2]!==a||t[3]!==n.projectId?(l=()=>a(n.projectId),t[2]=a,t[3]=n.projectId,t[4]=l):l=t[4];let u;t[5]!==r||t[6]!==i||t[7]!==n?(u=(0,$.jsx)(Yc,{project:n,isSelected:i,isDeleting:r,className:`w-full max-w-[4.5rem] transition-transform can-hover:group-hover:scale-[1.03] sm:max-w-[5rem]`,iconClassName:`sm:h-9 sm:w-9`}),t[5]=r,t[6]=i,t[7]=n,t[8]=u):u=t[8];let d;t[9]!==o||t[10]!==n.projectId||t[11]!==s?(d=s?(0,$.jsx)(Zo,{children:(0,$.jsx)(`div`,{className:`pointer-events-none invisible absolute -right-1 -top-1 flex flex-col gap-1 opacity-0 transition-opacity can-hover:group-hover:visible can-hover:group-hover:pointer-events-auto can-hover:group-hover:opacity-100`,children:(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(Hr,{variant:`ghost`,size:`icon`,className:`h-7 w-7 rounded-full bg-background border border-border shadow-sm text-muted-foreground can-hover:hover:bg-destructive can-hover:hover:text-destructive-foreground`,onClick:()=>o(n.projectId),children:[(0,$.jsx)(He,{className:`h-3.5 w-3.5`}),(0,$.jsx)(`span`,{className:`sr-only`,children:`Delete project`})]})}),(0,$.jsx)(Fr,{side:`right`,children:`Delete project`})]})})}):void 0,t[9]=o,t[10]=n.projectId,t[11]=s,t[12]=d):d=t[12];let f;return t[13]!==i||t[14]!==c||t[15]!==l||t[16]!==u||t[17]!==d?(f=(0,$.jsx)(Qc,{label:c,isSelected:i,onClick:l,tile:u,actions:d}),t[13]=i,t[14]=c,t[15]=l,t[16]=u,t[17]=d,t[18]=f):f=t[18],f}function el(e){let t=(0,Q.c)(5),{children:n,className:r}=e,i;t[0]===r?i=t[1]:(i=G(`flex min-h-[71px] shrink-0 items-center gap-2 px-4 py-2 electrobun-webkit-app-region-drag`,r),t[0]=r,t[1]=i);let a;return t[2]!==n||t[3]!==i?(a=(0,$.jsx)(`header`,{className:i,children:n}),t[2]=n,t[3]=i,t[4]=a):a=t[4],a}function tl(e){let t=(0,Q.c)(4),{className:n}=e;if(!Pr())return null;let r;t[0]===n?r=t[1]:(r=G(`h-8 w-full shrink-0 electrobun-webkit-app-region-drag`,n),t[0]=n,t[1]=r);let i;return t[2]===r?i=t[3]:(i=(0,$.jsx)(`div`,{"aria-hidden":!0,className:r}),t[2]=r,t[3]=i),i}var nl=`scenic-chrome-button hover:!bg-[hsl(var(--scenic-foreground))] hover:!text-[hsl(var(--scenic-foreground-inverse))]`,rl=`0 0% 9%`,il=`0 0% 98%`;function al(e){let t=e<=140;return{foreground:t?il:rl,inverse:t?rl:il}}function ol(e,t){document.documentElement.style.setProperty(`--scenic-foreground`,e),document.documentElement.style.setProperty(`--scenic-foreground-inverse`,t)}function sl(e){try{let t=document.createElement(`canvas`);t.width=32,t.height=32;let n=t.getContext(`2d`);if(!n)return;n.drawImage(e,0,0,32,32);let{data:r}=n.getImageData(0,0,32,32),i=0,a=r.length/4;for(let e=0;e<r.length;e+=4)i+=.2126*r[e]+.7152*r[e+1]+.0722*r[e+2];let{foreground:o,inverse:s}=al(i/a);ol(o,s)}catch{}}function cl(e){sl(e.currentTarget)}var ll=[`/backgrounds/arctic-tundra.avif`,`/backgrounds/autumn-leaves.avif`,`/backgrounds/coastal-cliff.avif`,`/backgrounds/floating-waterfall.avif`,`/backgrounds/forest-path.avif`,`/backgrounds/garden-path.avif`,`/backgrounds/glow-marsh.avif`,`/backgrounds/golden-wheat.avif`,`/backgrounds/moon-desert.avif`,`/backgrounds/night-pond.avif`,`/backgrounds/prairie-grassland.avif`,`/backgrounds/river-winding.avif`,`/backgrounds/salt-flat.avif`,`/backgrounds/salt-marsh.avif`,`/backgrounds/sandy-beach.avif`,`/backgrounds/snow-river.avif`,`/backgrounds/sunset-pond.avif`];function ul(){let e=new Date,t=`${String(e.getFullYear())}${String(e.getMonth()+1).padStart(2,`0`)}${String(e.getDate()).padStart(2,`0`)}`,n=0;for(let e=0;e<t.length;e++)n=n*31+t.charCodeAt(e)>>>0;return ll[n%ll.length]}var dl=ul(),fl=new Image;fl.src=dl;function pl(){let e=(0,Q.c)(1),t;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,$.jsx)(`div`,{"aria-hidden":`true`,className:`pointer-events-none absolute inset-0 z-0`,children:(0,$.jsx)(`img`,{src:dl,alt:``,className:`h-full w-full object-cover`,onLoad:cl})}),e[0]=t):t=e[0],t}function ml(e){let t=(0,Q.c)(6),{children:n,className:r,style:i}=e,a;t[0]===r?a=t[1]:(a=G(`frosted-panel rounded-2xl shadow-lg backdrop-blur-sm`,r),t[0]=r,t[1]=a);let o;return t[2]!==n||t[3]!==i||t[4]!==a?(o=(0,$.jsx)(`div`,{className:a,style:i,children:n}),t[2]=n,t[3]=i,t[4]=a,t[5]=o):o=t[5],o}function hl(e){let t=(0,Q.c)(14),n,r,i,a;t[0]===e?(n=t[1],r=t[2],i=t[3],a=t[4]):({open:i,defaultOpen:n,onOpenChange:r,...a}=e,t[0]=e,t[1]=n,t[2]=r,t[3]=i,t[4]=a);let o;t[5]!==n||t[6]!==r||t[7]!==i?(o={open:i,defaultOpen:n,onOpenChange:r},t[5]=n,t[6]=r,t[7]=i,t[8]=o):o=t[8];let s=Bi(o),c;return t[9]!==n||t[10]!==s||t[11]!==i||t[12]!==a?(c=(0,$.jsx)(er,{open:i,defaultOpen:n,onOpenChange:s,...a}),t[9]=n,t[10]=s,t[11]=i,t[12]=a,t[13]=c):c=t[13],c}var gl=nr,_l=fr,vl=Z.forwardRef((e,t)=>{let n=(0,Q.c)(14),r,i,a,o;n[0]===e?(r=n[1],i=n[2],a=n[3],o=n[4]):({className:i,inset:a,children:r,...o}=e,n[0]=e,n[1]=r,n[2]=i,n[3]=a,n[4]=o);let s;n[5]!==i||n[6]!==a?(s=G(G(U.body,`flex cursor-default gap-2 select-none items-center rounded-sm px-2 py-1.5 outline-none focus:bg-accent data-[state=open]:bg-accent [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0`),a&&`pl-8`,i),n[5]=i,n[6]=a,n[7]=s):s=n[7];let c;n[8]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,$.jsx)(sn,{className:`ml-auto`}),n[8]=c):c=n[8];let l;return n[9]!==r||n[10]!==o||n[11]!==t||n[12]!==s?(l=(0,$.jsxs)(rr,{ref:t,className:s,...o,children:[r,c]}),n[9]=r,n[10]=o,n[11]=t,n[12]=s,n[13]=l):l=n[13],l});vl.displayName=rr.displayName;var yl=Z.forwardRef((e,t)=>{let n=(0,Q.c)(9),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let a;n[3]===r?a=n[4]:(a=G(`z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-lg 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`,r),n[3]=r,n[4]=a);let o;return n[5]!==i||n[6]!==t||n[7]!==a?(o=(0,$.jsx)(ur,{ref:t,className:a,...i}),n[5]=i,n[6]=t,n[7]=a,n[8]=o):o=n[8],o});yl.displayName=ur.displayName;var bl=Z.forwardRef((e,t)=>{let n=(0,Q.c)(11),r,i,a;n[0]===e?(r=n[1],i=n[2],a=n[3]):({className:r,sideOffset:a,...i}=e,n[0]=e,n[1]=r,n[2]=i,n[3]=a);let o=a===void 0?4:a,s;n[4]===r?s=n[5]:(s=G(`z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md 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`,r),n[4]=r,n[5]=s);let c;return n[6]!==i||n[7]!==t||n[8]!==o||n[9]!==s?(c=(0,$.jsx)(lr,{children:(0,$.jsx)(Zn,{ref:t,sideOffset:o,className:s,...i})}),n[6]=i,n[7]=t,n[8]=o,n[9]=s,n[10]=c):c=n[10],c});bl.displayName=Zn.displayName;var xl=Z.forwardRef((e,t)=>{let n=(0,Q.c)(11),r,i,a;n[0]===e?(r=n[1],i=n[2],a=n[3]):({className:r,inset:i,...a}=e,n[0]=e,n[1]=r,n[2]=i,n[3]=a);let o;n[4]!==r||n[5]!==i?(o=G(G(U.body,`relative flex cursor-default select-none items-center gap-2 rounded-sm px-2 py-1.5 outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0`),i&&`pl-8`,r),n[4]=r,n[5]=i,n[6]=o):o=n[6];let s;return n[7]!==a||n[8]!==t||n[9]!==o?(s=(0,$.jsx)(dr,{ref:t,className:o,...a}),n[7]=a,n[8]=t,n[9]=o,n[10]=s):s=n[10],s});xl.displayName=dr.displayName;var Sl=Z.forwardRef((e,t)=>{let n=(0,Q.c)(14),r,i,a,o;n[0]===e?(r=n[1],i=n[2],a=n[3],o=n[4]):({className:a,children:i,checked:r,...o}=e,n[0]=e,n[1]=r,n[2]=i,n[3]=a,n[4]=o);let s;n[5]===a?s=n[6]:(s=G(G(U.body,`group relative flex cursor-default select-none items-center gap-2 rounded-sm px-2 py-1.5 outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0`),a),n[5]=a,n[6]=s);let c;n[7]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,$.jsx)(`span`,{className:`ml-auto flex h-4 w-4 shrink-0 items-center justify-center rounded-sm border border-primary group-data-[state=checked]:bg-primary group-data-[state=checked]:text-primary-foreground`,children:(0,$.jsx)(gr,{children:(0,$.jsx)(W,{className:`h-4 w-4`})})}),n[7]=c):c=n[7];let l;return n[8]!==r||n[9]!==i||n[10]!==o||n[11]!==t||n[12]!==s?(l=(0,$.jsxs)(ir,{ref:t,className:s,checked:r,...o,children:[i,c]}),n[8]=r,n[9]=i,n[10]=o,n[11]=t,n[12]=s,n[13]=l):l=n[13],l});Sl.displayName=ir.displayName;var Cl=Z.forwardRef((e,t)=>{let n=(0,Q.c)(12),r,i,a;n[0]===e?(r=n[1],i=n[2],a=n[3]):({className:i,children:r,...a}=e,n[0]=e,n[1]=r,n[2]=i,n[3]=a);let o;n[4]===i?o=n[5]:(o=G(G(U.body,`relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50`),i),n[4]=i,n[5]=o);let s;n[6]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,$.jsx)(`span`,{className:`absolute left-2 flex h-3.5 w-3.5 items-center justify-center`,children:(0,$.jsx)(gr,{children:(0,$.jsx)(Ot,{className:`h-2 w-2 fill-current`})})}),n[6]=s):s=n[6];let c;return n[7]!==r||n[8]!==a||n[9]!==t||n[10]!==o?(c=(0,$.jsxs)(_r,{ref:t,className:o,...a,children:[s,r]}),n[7]=r,n[8]=a,n[9]=t,n[10]=o,n[11]=c):c=n[11],c});Cl.displayName=_r.displayName;var wl=Z.forwardRef((e,t)=>{let n=(0,Q.c)(11),r,i,a;n[0]===e?(r=n[1],i=n[2],a=n[3]):({className:r,inset:i,...a}=e,n[0]=e,n[1]=r,n[2]=i,n[3]=a);let o=i&&`pl-8`,s;n[4]!==r||n[5]!==o?(s=G(U.body,`px-2 py-1.5 font-semibold`,o,r),n[4]=r,n[5]=o,n[6]=s):s=n[6];let c;return n[7]!==a||n[8]!==t||n[9]!==s?(c=(0,$.jsx)($n,{ref:t,className:s,...a}),n[7]=a,n[8]=t,n[9]=s,n[10]=c):c=n[10],c});wl.displayName=$n.displayName;var Tl=Z.forwardRef((e,t)=>{let n=(0,Q.c)(9),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let a;n[3]===r?a=n[4]:(a=G(`-mx-1 my-1 h-px bg-divider`,r),n[3]=r,n[4]=a);let o;return n[5]!==i||n[6]!==t||n[7]!==a?(o=(0,$.jsx)(tr,{ref:t,className:a,...i}),n[5]=i,n[6]=t,n[7]=a,n[8]=o):o=n[8],o});Tl.displayName=tr.displayName;var El=e=>{let t=(0,Q.c)(8),n,r;t[0]===e?(n=t[1],r=t[2]):({className:n,...r}=e,t[0]=e,t[1]=n,t[2]=r);let i;t[3]===n?i=t[4]:(i=G(U.compact,`ml-auto tracking-widest opacity-60`,n),t[3]=n,t[4]=i);let a;return t[5]!==r||t[6]!==i?(a=(0,$.jsx)(`span`,{className:i,...r}),t[5]=r,t[6]=i,t[7]=a):a=t[7],a};El.displayName=`DropdownMenuShortcut`;function Dl(e){let t=(0,Q.c)(37),{onSelectMode:n,onOpenFolder:r,onSelectZip:i}=e,a;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(a=(0,$.jsx)(gl,{asChild:!0,children:(0,$.jsxs)(Hr,{className:`gap-1`,children:[`New Project`,(0,$.jsx)(tn,{className:`h-4 w-4 opacity-70`})]})}),t[0]=a):a=t[0];let o;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(o=G(U.body,`gap-2`),t[1]=o):o=t[1];let s;t[2]===n?s=t[3]:(s=()=>n(`folder`),t[2]=n,t[3]=s);let c;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,$.jsx)(Se,{className:`h-4 w-4 shrink-0`}),t[4]=c):c=t[4];let l;t[5]===s?l=t[6]:(l=(0,$.jsxs)(xl,{className:o,onSelect:s,children:[c,`Blank Starter`]}),t[5]=s,t[6]=l);let u;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(u=G(U.body,`gap-2`),t[7]=u):u=t[7];let d;t[8]===n?d=t[9]:(d=()=>n(`clone`),t[8]=n,t[9]=d);let f;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(f=(0,$.jsx)(M,{className:`h-4 w-4 shrink-0`}),t[10]=f):f=t[10];let p;t[11]===d?p=t[12]:(p=(0,$.jsxs)(xl,{className:u,onSelect:d,children:[f,`Git Repo`]}),t[11]=d,t[12]=p);let m;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(m=G(U.body,`gap-2`),t[13]=m):m=t[13];let h;t[14]===r?h=t[15]:(h=()=>{r()},t[14]=r,t[15]=h);let g;t[16]===Symbol.for(`react.memo_cache_sentinel`)?(g=(0,$.jsx)(fn,{className:`h-4 w-4 shrink-0`}),t[16]=g):g=t[16];let _;t[17]===h?_=t[18]:(_=(0,$.jsxs)(xl,{className:m,onSelect:h,children:[g,`Open Folder`]}),t[17]=h,t[18]=_);let v;t[19]===Symbol.for(`react.memo_cache_sentinel`)?(v=G(U.body,`gap-2`),t[19]=v):v=t[19];let y;t[20]===i?y=t[21]:(y=()=>{i()},t[20]=i,t[21]=y);let b;t[22]===Symbol.for(`react.memo_cache_sentinel`)?(b=(0,$.jsx)(Ht,{className:`h-4 w-4 shrink-0`}),t[22]=b):b=t[22];let x;t[23]===y?x=t[24]:(x=(0,$.jsxs)(xl,{className:v,onSelect:y,children:[b,`From Zip`]}),t[23]=y,t[24]=x);let S;t[25]===Symbol.for(`react.memo_cache_sentinel`)?(S=G(U.body,`gap-2`),t[25]=S):S=t[25];let C;t[26]===n?C=t[27]:(C=()=>n(`webapp`),t[26]=n,t[27]=C);let w;t[28]===Symbol.for(`react.memo_cache_sentinel`)?(w=(0,$.jsx)(Et,{className:`h-4 w-4 shrink-0`}),t[28]=w):w=t[28];let T;t[29]===C?T=t[30]:(T=(0,$.jsxs)(xl,{className:S,onSelect:C,children:[w,`New App`]}),t[29]=C,t[30]=T);let E;return t[31]!==_||t[32]!==x||t[33]!==T||t[34]!==l||t[35]!==p?(E=(0,$.jsxs)(hl,{children:[a,(0,$.jsxs)(bl,{align:`end`,className:`w-44`,children:[l,p,_,x,T]})]}),t[31]=_,t[32]=x,t[33]=T,t[34]=l,t[35]=p,t[36]=E):E=t[36],E}function Ol(e){let t=(0,Q.c)(41),{projects:n,selectedThreadId:r,selectedProjectId:i,deletingProjectIds:a,onSelectProject:o,onCreateProject:s,onOpenFolder:c,onSelectZip:l,onDeleteProject:u,updateAvailable:d,updatingApp:f,onUpdateApp:p,isDevMode:m}=e,h=Yn(),g=X(Al),[_,v]=(0,Z.useState)(!g),y;t[0]===n?y=t[1]:(y=[...n].sort(kl),t[0]=n,t[1]=y);let b=y;!g&&!_&&v(!0);let S;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(S=function(){ui(`https://tarsk.io/`)},t[2]=S):S=t[2];let C=S;if(!_){let e;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,$.jsx)(tl,{}),t[3]=e):e=t[3];let n;return t[4]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,$.jsxs)(`div`,{className:`flex h-full flex-col overflow-hidden`,children:[e,(0,$.jsx)(`div`,{className:`flex flex-1 items-center justify-center`,children:(0,$.jsx)(ln,{className:`h-8 w-8 animate-spin text-muted-foreground`})})]}),t[4]=n):n=t[4],n}let w;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(w=(0,$.jsx)(tl,{}),t[5]=w):w=t[5];let T;t[6]===h?T=t[7]:(T=()=>void h(`/settings/general`),t[6]=h,t[7]=T);let E;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(E=(0,$.jsx)(x,{className:`h-5 w-5`}),t[8]=E):E=t[8];let D;t[9]===T?D=t[10]:(D=(0,$.jsx)(`div`,{className:`absolute right-4 top-4 z-20 electrobun-webkit-app-region-no-drag`,children:(0,$.jsx)(Hr,{variant:`ghost`,size:`icon`,className:`[color:contrast-color(hsl(var(--background)))] hover:[color:contrast-color(hsl(var(--foreground)))]`,onClick:T,"aria-label":`Settings`,children:E})}),t[9]=T,t[10]=D);let O;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(O=(0,$.jsx)(`button`,{type:`button`,onClick:C,className:`flex h-20 w-20 cursor-pointer items-center justify-center overflow-hidden rounded-full shadow-sm`,children:(0,$.jsx)(`img`,{src:`/tarsk.svg`,alt:`Tarsk`,className:`h-full w-full`})}),t[11]=O):O=t[11];let k;t[12]===m?k=t[13]:(k=m?(0,$.jsx)(`p`,{className:G(U.label,`mt-2 text-destructive dark:text-red-400`),children:`Dev Mode`}):null,t[12]=m,t[13]=k);let A;t[14]===k?A=t[15]:(A=(0,$.jsxs)(`div`,{className:`absolute left-1/2 top-10 z-10 flex -translate-x-1/2 -translate-y-1/2 flex-col items-center`,children:[O,k]}),t[14]=k,t[15]=A);let j;t[16]!==s||t[17]!==c||t[18]!==l?(j=(0,$.jsx)(Oo,{title:`Projects`,action:(0,$.jsx)(Dl,{onSelectMode:s,onOpenFolder:c,onSelectZip:l}),sticky:!0}),t[16]=s,t[17]=c,t[18]=l,t[19]=j):j=t[19];let M;t[20]!==a||t[21]!==u||t[22]!==o||t[23]!==i||t[24]!==r||t[25]!==b?(M=(0,$.jsx)(Zc,{projects:b,selectedThreadId:r,selectedProjectId:i,deletingProjectIds:a,onSelectProject:o,onDeleteProject:u}),t[20]=a,t[21]=u,t[22]=o,t[23]=i,t[24]=r,t[25]=b,t[26]=M):M=t[26];let N;t[27]!==j||t[28]!==M?(N=(0,$.jsxs)(ml,{className:`px-6 pb-6 pt-16`,children:[j,M]}),t[27]=j,t[28]=M,t[29]=N):N=t[29];let P;t[30]!==N||t[31]!==A?(P=(0,$.jsx)(xo,{className:`relative z-10 animate-in fade-in duration-500`,children:(0,$.jsx)(`div`,{className:`flex min-h-full flex-col justify-center`,children:(0,$.jsx)(Da,{className:`w-full max-w-4xl mx-auto py-10`,children:(0,$.jsxs)(`div`,{className:`relative pt-10`,children:[A,N]})})})}),t[30]=N,t[31]=A,t[32]=P):P=t[32];let F;t[33]!==p||t[34]!==d||t[35]!==f?(F=d?(0,$.jsx)(`div`,{className:`relative z-10 flex flex-shrink-0 justify-end px-4 pb-4 pt-2`,children:(0,$.jsxs)(Hr,{variant:`outline`,className:`text-emerald-600 dark:text-emerald-400`,onClick:p,disabled:f,children:[f?(0,$.jsx)(ln,{className:`h-4 w-4 animate-spin`}):(0,$.jsx)(Rt,{className:`h-4 w-4`}),f?`Updating...`:`Upgrade to Latest`]})}):null,t[33]=p,t[34]=d,t[35]=f,t[36]=F):F=t[36];let I;return t[37]!==P||t[38]!==F||t[39]!==D?(I=(0,$.jsxs)(`div`,{className:`relative flex h-full flex-col overflow-hidden`,children:[w,D,P,F]}),t[37]=P,t[38]=F,t[39]=D,t[40]=I):I=t[40],I}function kl(e,t){return Ke(e).localeCompare(Ke(t))}function Al(e){return e.projectsLoading}function jl(e,t){let n=(0,Q.c)(6),[r,i]=(0,Z.useState)(e),a=(0,Z.useRef)(-1/0),o=(0,Z.useRef)(null),s=(0,Z.useRef)(e),c;n[0]!==r||n[1]!==t||n[2]!==e?(c=()=>{if(s.current=e,Object.is(e,r))return;let n=function(){o.current=null,a.current=Date.now(),i(s.current)},c=Date.now()-a.current;if(c>=t){n();return}o.current||=setTimeout(n,t-c)},n[0]=r,n[1]=t,n[2]=e,n[3]=c):c=n[3],(0,Z.useEffect)(c);let l,u;return n[4]===Symbol.for(`react.memo_cache_sentinel`)?(l=()=>()=>{o.current&&=(clearTimeout(o.current),null)},u=[],n[4]=l,n[5]=u):(l=n[4],u=n[5]),(0,Z.useEffect)(l,u),r}var Ml=e(mi(),1),Nl=.1,Pl=10,Fl=1.25,Il=.001;function Ll(){let e=(0,Q.c)(15),[t,n]=(0,Z.useState)(1),r;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(r={x:0,y:0},e[0]=r):r=e[0];let[i,a]=(0,Z.useState)(r),[o,s]=(0,Z.useState)(!1),c=(0,Z.useRef)(null),l=Rl,u;e[1]===Symbol.for(`react.memo_cache_sentinel`)?(u=()=>n(e=>l(e*Fl)),e[1]=u):u=e[1];let d=u,f;e[2]===Symbol.for(`react.memo_cache_sentinel`)?(f=()=>n(e=>l(e/Fl)),e[2]=f):f=e[2];let p=f,m;e[3]===Symbol.for(`react.memo_cache_sentinel`)?(m=()=>{n(1),a({x:0,y:0})},e[3]=m):m=e[3];let h=m,g;e[4]===i?g=e[5]:(g=e=>{e.preventDefault(),s(!0),c.current={x:e.clientX,y:e.clientY,ox:i.x,oy:i.y}},e[4]=i,e[5]=g);let _=g,v;e[6]===Symbol.for(`react.memo_cache_sentinel`)?(v=e=>{c.current&&a({x:c.current.ox+(e.clientX-c.current.x),y:c.current.oy+(e.clientY-c.current.y)})},e[6]=v):v=e[6];let y=v,b;e[7]===Symbol.for(`react.memo_cache_sentinel`)?(b=()=>{s(!1),c.current=null},e[7]=b):b=e[7];let x=b,S=(0,Z.useRef)(null),C,w;e[8]===Symbol.for(`react.memo_cache_sentinel`)?(C=()=>{let e=S.current;if(!e)return;let t=function(e){e.preventDefault();let t=-e.deltaY*Il;n(e=>l(e*(1+t)))};return e.addEventListener(`wheel`,t,{passive:!1}),()=>e.removeEventListener(`wheel`,t)},w=[],e[8]=C,e[9]=w):(C=e[8],w=e[9]),(0,Z.useEffect)(C,w);let T;return e[10]!==o||e[11]!==i||e[12]!==_||e[13]!==t?(T={scale:t,offset:i,isDragging:o,containerRef:S,zoomIn:d,zoomOut:p,reset:h,onMouseDown:_,onMouseMove:y,onMouseUp:x},e[10]=o,e[11]=i,e[12]=_,e[13]=t,e[14]=T):T=e[14],T}function Rl(e){return Math.min(Math.max(e,Nl),Pl)}var zl=Ut(`app.mermaid-renderer.ui`);function Bl(){let e=(0,Q.c)(2),[t,n]=(0,Z.useState)(!1),r,i;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=()=>{let e=function(){n(document.documentElement.classList.contains(`dark`))};e();let t=new MutationObserver(e);return t.observe(document.documentElement,{attributes:!0,attributeFilter:[`class`]}),()=>t.disconnect()},i=[],e[0]=r,e[1]=i):(r=e[0],i=e[1]),(0,Z.useEffect)(r,i),t}var Vl=null;function Hl(){return Vl||=us(()=>import(`./dist-IeRYu0zQ.js`),__vite__mapDeps([0,1])),Vl}function Ul(e,t){let[n,r]=(0,Z.useState)(null),[i,a]=(0,Z.useState)(null);return(0,Z.useEffect)(()=>{let n=!1,i=setTimeout(()=>{let i=n=>{try{let i=n(e,{bg:t?`#18181B`:`#FFFFFF`,fg:t?`#FAFAFA`:`#27272A`,transparent:!1,padding:32});if(typeof i!=`string`||i.length===0)throw Error(`Mermaid renderer returned no SVG`);r(i),a(null)}catch(e){zl.error(`Mermaid render error:`,e),r(null),a(e instanceof Error?e.message:String(e))}};Hl().then(e=>{n||i(e.renderMermaidSVG)},e=>{n||(zl.error(`Mermaid renderer failed to load:`,e),a(e instanceof Error?e.message:String(e)))})},200);return()=>{n=!0,clearTimeout(i)}},[e,t]),{svgOutput:n,errorMessage:i}}function Wl(e){let t=(0,Q.c)(70),{svgOutput:n,onClose:r}=e,{scale:i,offset:a,isDragging:o,containerRef:s,zoomIn:c,zoomOut:l,reset:u,onMouseDown:d,onMouseMove:f,onMouseUp:p}=Ll(),m,h;t[0]===r?(m=t[1],h=t[2]):(m=()=>{let e=function(e){e.key===`Escape`&&r()};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},h=[r],t[0]=r,t[1]=m,t[2]=h),(0,Z.useEffect)(m,h);let g;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(g=[],t[3]=g):g=t[3],(0,Z.useEffect)(Gl,g);let _;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(_=(0,$.jsx)(`span`,{className:G(U.compact,`font-mono text-muted-foreground`),children:`mermaid diagram`}),t[4]=_):_=t[4];let v,y;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(v=(0,$.jsx)(qt,{className:`h-3.5 w-3.5`}),y=(0,$.jsx)(`span`,{className:`sr-only`,children:`Zoom out`}),t[5]=v,t[6]=y):(v=t[5],y=t[6]);let b;t[7]===l?b=t[8]:(b=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(Hr,{variant:`ghost`,size:`icon-xs`,onClick:l,children:[v,y]})}),t[7]=l,t[8]=b);let x;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(x=(0,$.jsx)(Fr,{children:`Zoom out`}),t[9]=x):x=t[9];let S;t[10]===b?S=t[11]:(S=(0,$.jsxs)(Mi,{children:[b,x]}),t[10]=b,t[11]=S);let C;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(C=G(U.compact,`min-w-[3rem] px-2 py-1 font-mono text-muted-foreground hover:text-foreground hover:bg-muted rounded transition-colors`),t[12]=C):C=t[12];let w;t[13]===i?w=t[14]:(w=Math.round(i*100),t[13]=i,t[14]=w);let T;t[15]!==u||t[16]!==w?(T=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(`button`,{type:`button`,onClick:u,className:C,children:[w,`%`]})}),t[15]=u,t[16]=w,t[17]=T):T=t[17];let E;t[18]===Symbol.for(`react.memo_cache_sentinel`)?(E=(0,$.jsx)(Fr,{children:`Reset zoom`}),t[18]=E):E=t[18];let D;t[19]===T?D=t[20]:(D=(0,$.jsxs)(Mi,{children:[T,E]}),t[19]=T,t[20]=D);let O,k;t[21]===Symbol.for(`react.memo_cache_sentinel`)?(O=(0,$.jsx)(Se,{className:`h-3.5 w-3.5`}),k=(0,$.jsx)(`span`,{className:`sr-only`,children:`Zoom in`}),t[21]=O,t[22]=k):(O=t[21],k=t[22]);let A;t[23]===c?A=t[24]:(A=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(Hr,{variant:`ghost`,size:`icon-xs`,onClick:c,children:[O,k]})}),t[23]=c,t[24]=A);let j;t[25]===Symbol.for(`react.memo_cache_sentinel`)?(j=(0,$.jsx)(Fr,{children:`Zoom in`}),t[25]=j):j=t[25];let M;t[26]===A?M=t[27]:(M=(0,$.jsxs)(Mi,{children:[A,j]}),t[26]=A,t[27]=M);let N,P;t[28]===Symbol.for(`react.memo_cache_sentinel`)?(N=(0,$.jsx)(ye,{className:`h-3.5 w-3.5`}),P=(0,$.jsx)(`span`,{className:`sr-only`,children:`Reset view`}),t[28]=N,t[29]=P):(N=t[28],P=t[29]);let F;t[30]===u?F=t[31]:(F=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(Hr,{variant:`ghost`,size:`icon-xs`,onClick:u,children:[N,P]})}),t[30]=u,t[31]=F);let I;t[32]===Symbol.for(`react.memo_cache_sentinel`)?(I=(0,$.jsx)(Fr,{children:`Reset view`}),t[32]=I):I=t[32];let L;t[33]===F?L=t[34]:(L=(0,$.jsxs)(Mi,{children:[F,I]}),t[33]=F,t[34]=L);let R;t[35]===Symbol.for(`react.memo_cache_sentinel`)?(R=(0,$.jsx)(`div`,{className:`w-px h-4 bg-border mx-1`}),t[35]=R):R=t[35];let z,B;t[36]===Symbol.for(`react.memo_cache_sentinel`)?(z=(0,$.jsx)(nt,{className:`h-3.5 w-3.5`}),B=(0,$.jsx)(`span`,{className:`sr-only`,children:`Close`}),t[36]=z,t[37]=B):(z=t[36],B=t[37]);let V;t[38]===r?V=t[39]:(V=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(Hr,{variant:`ghost`,size:`icon-xs`,onClick:r,children:[z,B]})}),t[38]=r,t[39]=V);let H;t[40]===Symbol.for(`react.memo_cache_sentinel`)?(H=(0,$.jsx)(Fr,{children:`Close (Esc)`}),t[40]=H):H=t[40];let ee;t[41]===V?ee=t[42]:(ee=(0,$.jsxs)(Mi,{children:[V,H]}),t[41]=V,t[42]=ee);let te;t[43]!==D||t[44]!==M||t[45]!==L||t[46]!==ee||t[47]!==S?(te=(0,$.jsxs)(`div`,{className:`flex items-center justify-between px-4 py-3 bg-background/90 border-b border-border shrink-0`,children:[_,(0,$.jsxs)(`div`,{className:`flex items-center gap-1`,children:[S,D,M,L,R,ee]})]}),t[43]=D,t[44]=M,t[45]=L,t[46]=ee,t[47]=S,t[48]=te):te=t[48];let ne=o?`cursor-grabbing`:`cursor-grab`,re;t[49]===ne?re=t[50]:(re=G(`flex-1 overflow-hidden select-none`,ne),t[49]=ne,t[50]=re);let ie=`translate(${a.x}px, ${a.y}px) scale(${i})`,ae=o?`none`:`transform 0.1s ease-out`,oe;t[51]!==ie||t[52]!==ae?(oe={transform:ie,transformOrigin:`center center`,transition:ae},t[51]=ie,t[52]=ae,t[53]=oe):oe=t[53];let se;t[54]===n?se=t[55]:(se={__html:n},t[54]=n,t[55]=se);let ce;t[56]!==oe||t[57]!==se?(ce=(0,$.jsx)(`div`,{className:`w-full h-full flex items-center justify-center`,style:oe,dangerouslySetInnerHTML:se}),t[56]=oe,t[57]=se,t[58]=ce):ce=t[58];let le;t[59]!==s||t[60]!==d||t[61]!==f||t[62]!==p||t[63]!==re||t[64]!==ce?(le=(0,$.jsx)(`div`,{ref:s,className:re,onMouseDown:d,onMouseMove:f,onMouseUp:p,onMouseLeave:p,children:ce}),t[59]=s,t[60]=d,t[61]=f,t[62]=p,t[63]=re,t[64]=ce,t[65]=le):le=t[65];let ue;t[66]===Symbol.for(`react.memo_cache_sentinel`)?(ue=(0,$.jsx)(`div`,{className:G(U.compact,`shrink-0 px-4 py-2 text-center text-muted-foreground/60 bg-background/60 border-t border-border`),children:`Scroll to zoom · Drag to pan · Esc to close`}),t[66]=ue):ue=t[66];let W;return t[67]!==te||t[68]!==le?(W=(0,Ml.createPortal)((0,$.jsx)(Zo,{children:(0,$.jsxs)(`div`,{className:`fixed inset-0 z-50 flex flex-col bg-black/85 backdrop-blur-sm`,role:`dialog`,"aria-modal":`true`,"aria-label":`Diagram fullscreen view`,children:[te,le,ue]})}),document.body),t[67]=te,t[68]=le,t[69]=W):W=t[69],W}function Gl(){return document.body.style.overflow=`hidden`,Kl}function Kl(){document.body.style.overflow=``}function ql(e){let t=(0,Q.c)(57),{content:n,className:r}=e,[i,a]=(0,Z.useState)(!1),[o,s]=(0,Z.useState)(!1),{svgOutput:c,errorMessage:l}=Ul(n,Bl()),u=l!==null,d;t[0]===n?d=t[1]:(d=async function(){await navigator.clipboard.writeText(n),a(!0),setTimeout(()=>a(!1),2e3)},t[0]=n,t[1]=d);let f=d,p;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(p=G(U.compact,`font-mono text-muted-foreground`),t[2]=p):p=t[2];let m=u?`mermaid (render error)`:`mermaid diagram`,h;t[3]===m?h=t[4]:(h=(0,$.jsx)(`span`,{className:p,children:m}),t[3]=m,t[4]=h);let g;t[5]!==u||t[6]!==c?(g=c&&!u&&(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(Hr,{variant:`action`,size:`icon-xs`,onClick:()=>s(!0),children:[(0,$.jsx)(Le,{}),(0,$.jsx)(`span`,{className:`sr-only`,children:`View fullscreen`})]})}),(0,$.jsx)(Fr,{children:`View fullscreen`})]}),t[5]=u,t[6]=c,t[7]=g):g=t[7];let _;t[8]===i?_=t[9]:(_=i?(0,$.jsx)(W,{}):(0,$.jsx)(Ze,{}),t[8]=i,t[9]=_);let v;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(v=(0,$.jsx)(`span`,{className:`sr-only`,children:`Copy mermaid code`}),t[10]=v):v=t[10];let y;t[11]!==f||t[12]!==_?(y=(0,$.jsxs)(Hr,{variant:`action`,size:`icon-xs`,onClick:f,children:[_,v]}),t[11]=f,t[12]=_,t[13]=y):y=t[13];let b;t[14]!==g||t[15]!==y?(b=(0,$.jsxs)(`div`,{className:`flex items-center gap-1`,children:[g,y]}),t[14]=g,t[15]=y,t[16]=b):b=t[16];let x;t[17]!==h||t[18]!==b?(x=(0,$.jsxs)(`div`,{className:`flex items-center justify-between border-b border-border bg-muted/80 px-4 py-2`,children:[h,b]}),t[17]=h,t[18]=b,t[19]=x):x=t[19];let S=x;if(u){let e;t[20]===r?e=t[21]:(e=G(`group relative overflow-hidden rounded-lg border border-border bg-muted`,r),t[20]=r,t[21]=e);let i;t[22]===Symbol.for(`react.memo_cache_sentinel`)?(i=G(U.compact,`border-b border-border bg-background/50 px-4 py-2 text-destructive`),t[22]=i):i=t[22];let a;t[23]===l?a=t[24]:(a=(0,$.jsx)(`div`,{className:i,role:`alert`,children:l}),t[23]=l,t[24]=a);let o;t[25]===Symbol.for(`react.memo_cache_sentinel`)?(o=G(U.compact,`font-mono text-foreground leading-relaxed`),t[25]=o):o=t[25];let s;t[26]===n?s=t[27]:(s=(0,$.jsx)(`pre`,{className:`overflow-x-auto p-4 max-w-full`,children:(0,$.jsx)(`code`,{className:o,children:n})}),t[26]=n,t[27]=s);let c;return t[28]!==S||t[29]!==e||t[30]!==a||t[31]!==s?(c=(0,$.jsxs)(`div`,{className:e,children:[S,a,s]}),t[28]=S,t[29]=e,t[30]=a,t[31]=s,t[32]=c):c=t[32],c}if(!c){let e;t[33]===r?e=t[34]:(e=G(`group relative overflow-hidden rounded-lg border border-border bg-muted`,r),t[33]=r,t[34]=e);let n;t[35]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,$.jsx)(`div`,{className:G(U.compact,`p-4 text-muted-foreground`),children:`Rendering diagram…`}),t[35]=n):n=t[35];let i;return t[36]!==S||t[37]!==e?(i=(0,$.jsxs)(`div`,{className:e,children:[S,n]}),t[36]=S,t[37]=e,t[38]=i):i=t[38],i}let C;t[39]===r?C=t[40]:(C=G(`group relative overflow-hidden rounded-lg border border-border bg-muted`,r),t[39]=r,t[40]=C);let w;t[41]===Symbol.for(`react.memo_cache_sentinel`)?(w=()=>s(!0),t[41]=w):w=t[41];let T;t[42]===c?T=t[43]:(T=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,className:`block w-full text-left cursor-zoom-in p-4 max-w-full overflow-hidden [&_svg]:max-w-full [&_svg]:h-auto hover:bg-muted/70 transition-colors`,onClick:w,dangerouslySetInnerHTML:{__html:c}})}),t[42]=c,t[43]=T);let E;t[44]===Symbol.for(`react.memo_cache_sentinel`)?(E=(0,$.jsx)(Fr,{children:`Click to view fullscreen`}),t[44]=E):E=t[44];let D;t[45]===T?D=t[46]:(D=(0,$.jsxs)(Mi,{children:[T,E]}),t[45]=T,t[46]=D);let O;t[47]!==S||t[48]!==C||t[49]!==D?(O=(0,$.jsxs)(`div`,{className:C,children:[S,D]}),t[47]=S,t[48]=C,t[49]=D,t[50]=O):O=t[50];let k;t[51]!==o||t[52]!==c?(k=o&&(0,$.jsx)(Wl,{svgOutput:c,onClose:()=>s(!1)}),t[51]=o,t[52]=c,t[53]=k):k=t[53];let A;return t[54]!==O||t[55]!==k?(A=(0,$.jsxs)(Zo,{children:[O,k]}),t[54]=O,t[55]=k,t[56]=A):A=t[56],A}function Jl(e){let t=e.trim();if(t.startsWith(`/`)){let e=Fa().replace(/\/$/,``);return me(`${e}${t}`,e)}return me(t,Fa())}function Yl(e){let t=e.trim();if(t.startsWith(`/api/`))return!0;if(!/^https?:\/\//i.test(t))return!1;try{let e=new URL(t);if(_e(e.hostname))return!0;let n=new URL(Fa());return e.origin===n.origin&&e.pathname.startsWith(`/api/`)}catch{return!1}}function Xl(e){let t=e.trim();return!t||t.startsWith(`mailto:`)||t.startsWith(`tel:`)?!1:Pr()?/^https?:\/\//i.test(t)||t.startsWith(`/api/`):Yl(t)}function Zl(e){let t=Jl(e);return Za()&&!Pr()?(window.open(t,`_blank`,`noopener,noreferrer`),Promise.resolve()):ui(t)}function Ql(e){return!!(_e(e.hostname)||typeof window<`u`&&e.origin===window.location.origin)}function $l(e){return decodeURIComponent(e.replace(/^\/+/,``))}function eu(e){let t=e.trim();if(!t||t.includes(`
3
- `))return null;let n=Ie(t);if(!n)return null;let r=t.toLowerCase();return r.startsWith(`http://`)||r.startsWith(`https://`)||r.startsWith(`/`)||r.includes(`/explorer/media`)||t.includes(`/`)||t.includes(`\\`)?{kind:n,src:t}:null}function tu(e,t){let n=e.trim();if(!n||n.startsWith(`data:`)||n.includes(`/explorer/media`))return null;let r;if(/^https?:\/\//i.test(n)){let e;try{e=new URL(n)}catch{return null}if(!Ql(e))return null;r=$l(e.pathname)}else r=$l(n);let i=Ie(r);return!i||t&&i!==t?null:{path:r,kind:i}}function nu(e,t){return Jl(`/api/threads/${encodeURIComponent(e)}/explorer/media?path=${encodeURIComponent(t)}`)}function ru(e){if(!e.startsWith(`/`))return!1;let t=e.split(`/`)[1]??``;return[`Users`,`tmp`,`var`,`private`,`Volumes`,`home`].includes(t)}function iu(e,t){if(!e||e.startsWith(`data:`))return e;if(t){if(ru(e)&&Ie(e))return nu(t,e);let n=tu(e);if(n)return nu(t,n.path)}return e.startsWith(`/`)?Jl(e):me(e,Fa())}function au(e,t){return iu(e,t)}function ou(e){let t=be(e);if(!t?.imageUrl&&!t?.imageData)return null;let n;if(typeof e==`object`&&e){let t=e;if(typeof t.model==`string`)n=t.model;else if(typeof t.content==`string`)try{let e=JSON.parse(t.content);typeof e.model==`string`&&(n=e.model)}catch{}}else if(typeof e==`string`)try{let t=JSON.parse(e.trim());typeof t.model==`string`&&(n=t.model)}catch{}return{imageUrl:t.imageUrl,imageData:t.imageData,model:n}}function su(e,t){let n=ou(e)??ou(t);if(!n?.imageUrl&&!n?.imageData)return null;let r,i=[e,t.content,t];for(let e of i)if(typeof e==`string`&&e.trim().startsWith(`{`))try{let t=JSON.parse(e);if(typeof t.savedPath==`string`){r=t.savedPath;break}}catch{}else if(e&&typeof e==`object`){let t=e;if(typeof t.savedPath==`string`){r=t.savedPath;break}if(typeof t.content==`string`)try{let e=JSON.parse(t.content);if(typeof e.savedPath==`string`){r=e.savedPath;break}}catch{}}return{...n,savedPath:r}}function cu(e){let t=(0,Q.c)(34),{imageUrl:n,imageData:r,alt:i,threadId:a}=e,o=i===void 0?`Generated image`:i,[s,c]=(0,Z.useState)(!1),l;t[0]!==r||t[1]!==n||t[2]!==a?(l=r?`data:image/png;base64,${r}`:au(n??``,a),t[0]=r,t[1]=n,t[2]=a,t[3]=l):l=t[3];let u=l,d;t[4]===u?d=t[5]:(d=async()=>{let e=dn(u)??`generated-image-${Date.now()}.png`,{path:t}=await Fo(u.startsWith(`data:`)?{imageData:u.replace(/^data:[^;]+;base64,/,``),filename:e}:{imageUrl:u,filename:e});ac({title:`Saved to downloads: ${t.split(`/`).pop()}`})},t[4]=u,t[5]=d);let f=d,p;t[6]===u?p=t[7]:(p=async()=>{await jo(u.startsWith(`data:`)?{imageData:u.replace(/^data:[^;]+;base64,/,``)}:{imageUrl:u}),c(!0),setTimeout(()=>c(!1),2e3)},t[6]=u,t[7]=p);let m=p;if(!u)return null;let h;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(h={maxHeight:`512px`},t[8]=h):h=t[8];let g;t[9]!==o||t[10]!==u?(g=(0,$.jsx)(`img`,{src:u,alt:o,className:`max-w-full rounded-lg block`,style:h}),t[9]=o,t[10]=u,t[11]=g):g=t[11];let _;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(_=(0,$.jsx)(Rt,{className:`h-3.5 w-3.5`}),t[12]=_):_=t[12];let v;t[13]===f?v=t[14]:(v=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`button`,{onClick:f,className:`flex items-center justify-center h-7 w-7 rounded-md bg-background/80 backdrop-blur-sm border border-border text-foreground hover:bg-background transition-colors`,children:_})}),t[13]=f,t[14]=v);let y;t[15]===Symbol.for(`react.memo_cache_sentinel`)?(y=(0,$.jsx)(Fr,{children:`Save image`}),t[15]=y):y=t[15];let b;t[16]===v?b=t[17]:(b=(0,$.jsxs)(Mi,{children:[v,y]}),t[16]=v,t[17]=b);let x;t[18]===s?x=t[19]:(x=s?(0,$.jsx)(W,{className:`h-3.5 w-3.5 text-green-500`}):(0,$.jsx)(Ze,{className:`h-3.5 w-3.5`}),t[18]=s,t[19]=x);let S;t[20]!==m||t[21]!==x?(S=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`button`,{onClick:m,className:`flex items-center justify-center h-7 w-7 rounded-md bg-background/80 backdrop-blur-sm border border-border text-foreground hover:bg-background transition-colors`,children:x})}),t[20]=m,t[21]=x,t[22]=S):S=t[22];let C=s?`Copied!`:`Copy to clipboard`,w;t[23]===C?w=t[24]:(w=(0,$.jsx)(Fr,{children:C}),t[23]=C,t[24]=w);let T;t[25]!==S||t[26]!==w?(T=(0,$.jsxs)(Mi,{children:[S,w]}),t[25]=S,t[26]=w,t[27]=T):T=t[27];let E;t[28]!==b||t[29]!==T?(E=(0,$.jsx)(`div`,{className:`absolute top-2 right-2 flex gap-1 opacity-0 group-hover/img:opacity-100 transition-opacity`,children:(0,$.jsxs)(Zo,{children:[b,T]})}),t[28]=b,t[29]=T,t[30]=E):E=t[30];let D;return t[31]!==E||t[32]!==g?(D=(0,$.jsxs)(`div`,{className:`mb-3 relative group/img inline-block max-w-full`,children:[g,E]}),t[31]=E,t[32]=g,t[33]=D):D=t[33],D}var lu=Ut(`chat.media`);function uu(e){if(!e)return`Unknown media error`;switch(e.code){case MediaError.MEDIA_ERR_ABORTED:return`Playback aborted`;case MediaError.MEDIA_ERR_NETWORK:return`Network error while fetching media`;case MediaError.MEDIA_ERR_DECODE:return`Media decode error`;case MediaError.MEDIA_ERR_SRC_NOT_SUPPORTED:return`Unsupported media format or inaccessible source`;default:return`Media error (code ${e.code})`}}async function du(e){try{let t=await fetch(e,{method:`GET`,headers:{Range:`bytes=0-0`}}),n=t.headers.get(`content-type`)??`unknown`,r=t.headers.get(`accept-ranges`)??`none`,i=t.headers.get(`content-range`),a=i?`, content-range=${i}`:``;return`HTTP ${t.status} ${t.statusText}, content-type=${n}, accept-ranges=${r}${a}`}catch(e){return e instanceof Error?e.message:`Fetch failed`}}function fu(e){lu.error(`Failed to load media`,{kind:e.kind,src:e.src,label:e.label,mediaError:e.mediaError?{code:e.mediaError.code,message:e.mediaError.message,label:uu(e.mediaError)}:void 0,probeResult:e.probeResult})}function pu(e,t,n,r){let[i,a]=(0,Z.useState)({objectUrl:null,loadError:null,loading:!1});return(0,Z.useEffect)(()=>{if(!t){a(e=>(e.objectUrl&&URL.revokeObjectURL(e.objectUrl),{objectUrl:null,loadError:null,loading:!1}));return}let i=!1;a(e=>(e.objectUrl&&URL.revokeObjectURL(e.objectUrl),{objectUrl:null,loadError:null,loading:!0}));async function o(){try{let t=await fetch(e);if(!t.ok){let t=await du(e);throw Error(t)}let n=await t.blob();if(i)return;let r=URL.createObjectURL(n);if(i){URL.revokeObjectURL(r);return}a({objectUrl:r,loadError:null,loading:!1})}catch(t){if(i)return;let o=t instanceof Error?t.message:await du(e);fu({kind:n,src:e,label:r,probeResult:o}),a({objectUrl:null,loadError:o,loading:!1})}}return o(),()=>{i=!0,a(e=>(e.objectUrl&&URL.revokeObjectURL(e.objectUrl),{objectUrl:null,loadError:null,loading:!1}))}},[e,t,n,r]),i}function mu(e){let t=(0,Q.c)(44),{src:n,label:r}=e,[i,a]=(0,Z.useState)(!1),[o,s]=(0,Z.useState)(!1),c=(0,Z.useRef)(null),{objectUrl:l,loadError:u,loading:d}=pu(n,i,`video`,r),f;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(f=function(e){a(e),e||(s(!1),c.current&&c.current.pause())},t[0]=f):f=t[0];let p=f,m;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(m=function(){s(hu)},t[1]=m):m=t[1];let h=m,g;t[2]!==r||t[3]!==n?(g=async function(e){let t=e.currentTarget.error;fu({kind:`video`,src:n,label:r,mediaError:t,probeResult:await du(n)})},t[2]=r,t[3]=n,t[4]=g):g=t[4];let _=g,v=r??`Video`,y;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(y=()=>a(!0),t[5]=y):y=t[5];let b=r?`Play ${r}`:`Play video`,x;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(x=(0,$.jsx)(`span`,{className:`flex h-14 w-14 items-center justify-center rounded-full bg-background/90 text-foreground shadow-sm`,children:(0,$.jsx)(Ae,{className:`h-7 w-7 fill-current`})}),t[6]=x):x=t[6];let S;t[7]===b?S=t[8]:(S=(0,$.jsx)(`button`,{type:`button`,onClick:y,"aria-label":b,className:`flex min-h-32 w-full items-center justify-center rounded-md bg-muted/30 transition-colors hover:bg-muted/50`,children:x}),t[7]=b,t[8]=S);let C=o?`h-dvh w-dvw max-w-none rounded-none`:`max-w-[min(92vw,960px)]`,w;t[9]===C?w=t[10]:(w=G(`gap-0 overflow-hidden border-none bg-black p-0 sm:rounded-lg`,C),t[9]=C,t[10]=w);let T;t[11]===v?T=t[12]:(T=(0,$.jsx)(qa,{className:`sr-only`,children:v}),t[11]=v,t[12]=T);let E;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(E=(0,$.jsx)(_i,{className:`sr-only`,children:`Video player`}),t[13]=E):E=t[13];let D=o?`Shrink video`:`Expand video`,O;t[14]===o?O=t[15]:(O=o?(0,$.jsx)(Qe,{className:`h-4 w-4`}):(0,$.jsx)(Le,{className:`h-4 w-4`}),t[14]=o,t[15]=O);let k;t[16]!==D||t[17]!==O?(k=(0,$.jsx)(`button`,{type:`button`,onClick:h,"aria-label":D,className:`flex h-7 w-7 items-center justify-center rounded-full text-white/90 transition-colors hover:bg-white/15 hover:text-white`,children:O}),t[16]=D,t[17]=O,t[18]=k):k=t[18];let A;t[19]===Symbol.for(`react.memo_cache_sentinel`)?(A=(0,$.jsxs)(Br,{className:`flex h-7 w-7 items-center justify-center rounded-full text-white/90 transition-colors hover:bg-white/15 hover:text-white`,children:[(0,$.jsx)(nt,{className:`h-4 w-4`}),(0,$.jsx)(`span`,{className:`sr-only`,children:`Close`})]}),t[19]=A):A=t[19];let j;t[20]===k?j=t[21]:(j=(0,$.jsxs)(`div`,{className:`absolute right-4 top-4 z-10 flex items-center gap-1`,children:[k,A]}),t[20]=k,t[21]=j);let M=o?`h-full`:`min-h-[240px]`,N;t[22]===M?N=t[23]:(N=G(`flex items-center justify-center p-3 pt-12 sm:p-4`,M),t[22]=M,t[23]=N);let P;t[24]!==o||t[25]!==_||t[26]!==u||t[27]!==d||t[28]!==l?(P=d?(0,$.jsx)(`p`,{className:G(U.compact,`text-white/80`),children:`Loading video...`}):u?(0,$.jsxs)(`p`,{className:G(U.compact,`px-4 text-center text-destructive`),children:[`Could not load video: `,u]}):l?(0,$.jsx)(`video`,{ref:c,src:l,controls:!0,autoPlay:!0,playsInline:!0,className:G(`max-w-full rounded`,o?`max-h-full`:`max-h-[80vh]`),onError:_}):null,t[24]=o,t[25]=_,t[26]=u,t[27]=d,t[28]=l,t[29]=P):P=t[29];let F;t[30]!==N||t[31]!==P?(F=(0,$.jsx)(`div`,{className:N,children:P}),t[30]=N,t[31]=P,t[32]=F):F=t[32];let I;t[33]!==T||t[34]!==j||t[35]!==F||t[36]!==w?(I=(0,$.jsxs)(Ir,{hideClose:!0,className:w,children:[T,E,j,F]}),t[33]=T,t[34]=j,t[35]=F,t[36]=w,t[37]=I):I=t[37];let L;t[38]!==i||t[39]!==I?(L=(0,$.jsx)(Ni,{open:i,onOpenChange:p,children:I}),t[38]=i,t[39]=I,t[40]=L):L=t[40];let R;return t[41]!==L||t[42]!==S?(R=(0,$.jsxs)($.Fragment,{children:[S,L]}),t[41]=L,t[42]=S,t[43]=R):R=t[43],R}function hu(e){return!e}function gu(e){let t=(0,Q.c)(12),{src:n,label:r}=e,{objectUrl:i,loadError:a,loading:o}=pu(n,!0,`audio`,r),s;t[0]!==r||t[1]!==n?(s=async function(e){let t=e.currentTarget.error;fu({kind:`audio`,src:n,label:r,mediaError:t,probeResult:await du(n)})},t[0]=r,t[1]=n,t[2]=s):s=t[2];let c=s,l;t[3]!==c||t[4]!==o||t[5]!==i?(l=o?(0,$.jsx)(`p`,{className:G(U.compact,`text-muted-foreground`),children:`Loading audio...`}):i?(0,$.jsx)(`audio`,{src:i,controls:!0,preload:`metadata`,className:`w-full`,onError:c}):null,t[3]=c,t[4]=o,t[5]=i,t[6]=l):l=t[6];let u;t[7]===a?u=t[8]:(u=a?(0,$.jsxs)(`p`,{className:G(U.compact,`mt-2 text-destructive`),children:[`Could not load audio: `,a]}):null,t[7]=a,t[8]=u);let d;return t[9]!==l||t[10]!==u?(d=(0,$.jsxs)($.Fragment,{children:[l,u]}),t[9]=l,t[10]=u,t[11]=d):d=t[11],d}function _u(e){let t=(0,Q.c)(13),{src:n,kind:r,label:i}=e;if(!n)return null;let a=r===`video`?k:Te,o=r===`video`?`p-2`:`p-3`,s;t[0]===o?s=t[1]:(s=G(`mt-2 max-w-full overflow-hidden rounded-lg border border-border bg-background`,o),t[0]=o,t[1]=s);let c;t[2]!==a||t[3]!==i?(c=i?(0,$.jsxs)(`div`,{className:`mb-2 flex items-center gap-2 text-muted-foreground`,children:[(0,$.jsx)(a,{className:`h-4 w-4`}),(0,$.jsx)(`span`,{className:G(U.compact,`truncate`),children:i})]}):null,t[2]=a,t[3]=i,t[4]=c):c=t[4];let l;t[5]!==r||t[6]!==i||t[7]!==n?(l=r===`video`?(0,$.jsx)(mu,{src:n,label:i}):(0,$.jsx)(gu,{src:n,label:i}),t[5]=r,t[6]=i,t[7]=n,t[8]=l):l=t[8];let u;return t[9]!==s||t[10]!==c||t[11]!==l?(u=(0,$.jsxs)(`div`,{className:s,children:[c,l]}),t[9]=s,t[10]=c,t[11]=l,t[12]=u):u=t[12],u}var vu=`graph.flowchart.sequenceDiagram.classDiagram.stateDiagram.erDiagram.journey.gantt.pie.quadrantChart.requirementDiagram.gitgraph.mindmap.timeline.zenuml.sankey.block.architecture.c4.packet.circuit.flowchart LR.flowchart TD.flowchart BT.flowchart RL.graph LR.graph TD.graph BT.graph RL`.split(`.`),yu=[/-->/,/--\./,/-\./,/==>/,/--\|/,/\w+\[\w+\]/,/\w+\(\w+\)/,/\w+\{\w+\}/,/\w+>\w+\]/,/\w+\(\w+\)/,/\w+\[\(\w+\)\]/,/participant\s+\w+/,/actor\s+\w+/,/Note over \w+/,/loop\s+/,/alt\s+/,/opt\s+/,/class\s+\w+/,/interface\s+\w+/,/enum\s+\w+/,/\[\*\]/,/\[\*\]/,/title\s+/,/direction\s+/,/subgraph\s+/];function bu(e){if(!e||typeof e!=`string`)return!1;let t=e.split(`
4
- `).map(e=>e.trim()).filter(e=>e.length>0);if(t.length===0)return!1;if(/```mermaid\s*\n([\s\S]*?)\n```/.test(e))return!0;let n=t[0].toLowerCase();if(vu.some(e=>n===e.toLowerCase()||n.startsWith(e.toLowerCase()+` `)))return!0;let r=0;for(let t of yu)t.test(e)&&r++;return r>=2}function xu(e){if(!bu(e))return null;let t=/```mermaid\s*\n([\s\S]*?)\n```/.exec(e);if(t)return t[1].trim();let n=e.split(`
5
- `).map(e=>e.trim()).filter(e=>e.length>0)[0].toLowerCase();return vu.some(e=>n===e.toLowerCase()||n.startsWith(e.toLowerCase()+` `))?e.trim():null}function Su(e){let t=(0,Q.c)(14),{href:n,children:r}=e,i;t[0]===n?i=t[1]:(i=Jl(n),t[0]=n,t[1]=i);let a=i,o;t[2]===n?o=t[3]:(o=Xl(n),t[2]=n,t[3]=o);let s=o,c;t[4]!==n||t[5]!==s?(c=function(e){s&&(e.preventDefault(),Zl(n))},t[4]=n,t[5]=s,t[6]=c):c=t[6];let l=c,u;t[7]===s?u=t[8]:(u=s?{}:{target:`_blank`,rel:`noopener noreferrer`},t[7]=s,t[8]=u);let d;return t[9]!==r||t[10]!==l||t[11]!==a||t[12]!==u?(d=(0,$.jsx)(`a`,{href:a,onClick:l,className:`text-inherit underline underline-offset-2 hover:text-inherit/80`,...u,children:r}),t[9]=r,t[10]=l,t[11]=a,t[12]=u,t[13]=d):d=t[13],d}var Cu=/^(\s*)([-*+]|\d+\.)\s+(.*)$/,wu=100,Tu=/^!\[([^\]]*)\]\(([^)]+)\)\s*$/,Eu=/[.,!?;:]+$/,Du=(0,Z.memo)(function({content:e,className:t,enableMermaid:n=!1,threadId:r,compact:i=!1,bodyClassName:a}){let o=jl(e,wu),s=(0,Z.useRef)(null),c=(0,Z.useMemo)(()=>{if(!o||typeof o!=`string`)return s.current=null,[];let e=Qu(o,n,s.current);return s.current=e,e.blocks},[o,n]);return c.length===0?null:(0,$.jsx)(`div`,{className:G(`prose-custom min-w-0 break-words`,t),children:c.map((e,t)=>(0,$.jsx)(`div`,{className:Vu(t,c,i),children:(0,$.jsx)(td,{block:e,threadId:r,compact:i,bodyClassName:a})},t))})});function Ou(e){let t=e.match(Tu);return t?{alt:t[1],src:t[2]}:null}function ku(e,t,n){let r=e?`mt-0 space-y-0.5`:`mt-0 space-y-1`,i=n?`mt-1`:``;return t?G(r,i,`pl-6`):G(r,i,`pl-6 list-outside overflow-visible list-disc`)}function Au(e){return e.replace(/\t/g,` `).length}function ju(e){return/^\d+\.$/.test(e)?Number.parseInt(e,10):1}function Mu(e,t){return Au(e)>t}function Nu(e,t){let n=e[t]?.match(Cu);if(!n)return{block:{type:`paragraph`,text:``},nextIndex:t+1};let[,r,i,a]=n,o={ordered:/^\d+\.$/.test(i),start:ju(i),items:[{text:a,children:[]}]},s=[{indent:Au(r),item:o.items[0]}],c=t+1;for(;c<e.length;){let t=Pu(e,c,s,o);if(c=t.nextIndex,t.stop)break}return{block:{type:`list`,list:o},nextIndex:c}}function Pu(e,t,n,r){let i=e[t];return Cu.test(i)?Fu(e,t,n,r):i.trim()===``?zu(e,t):Bu(e,t,n)}function Fu(e,t,n,r){let[,i,a,o]=e[t].match(Cu),s=Au(i),c=/^\d+\.$/.test(a),l={text:o,children:[]};if(Iu(n,s),n.length===0)return{nextIndex:t,stop:!0};let u=n[n.length-1],d=s===u.indent,f=Mu(i,u.indent);return d?Lu(n,r,c,s,l,t):f?Ru(n,u,c,a,s,l,t):{nextIndex:t,stop:!0}}function Iu(e,t){for(;e.length>0&&t<e[e.length-1].indent;)e.pop()}function Lu(e,t,n,r,i,a){let o=e[e.length-2]?.childList??t;return o.ordered===n?(o.items.push(i),e[e.length-1]={indent:r,item:i},{nextIndex:a+1,stop:!1}):{nextIndex:a,stop:!0}}function Ru(e,t,n,r,i,a,o){let s=t.childList;return(!s||s.ordered!==n)&&(s={ordered:n,start:ju(r),items:[]},t.item.children.push(s),t.childList=s),s.items.push(a),e.push({indent:i,item:a}),{nextIndex:o+1,stop:!1}}function zu(e,t){let n=e[t+1];return!n||!Cu.test(n)?{nextIndex:t,stop:!0}:{nextIndex:t+1,stop:!1}}function Bu(e,t,n){let r=Au(e[t].match(/^(\s*)/)?.[1]??``),i=n[n.length-1];return r>i.indent?(i.item.text=`${i.item.text}\n${e[t].trim()}`,{nextIndex:t+1,stop:!1}):{nextIndex:t,stop:!0}}function Vu(e,t,n=!1){if(e===0)return``;let r=t[e-1],i=t[e];return r.type===`list`||i.type===`list`?``:n?`mt-2`:`mt-3`}function Hu(e,t,n){let r=e[t].trimStart().slice(3).trim(),i=[],a=t+1;for(;a<e.length&&!e[a].trimStart().startsWith("```");)i.push(e[a]),a++;let o=i.join(`
6
- `);return n&&(r===`mermaid`||bu(o))?{block:{type:`mermaid`,code:o},nextIndex:a+1}:{block:{type:`code`,language:r,code:o},nextIndex:a+1}}function Uu(e){let t=e.match(/^(#{1,6})(\s.*)?$/);return t?{type:`heading`,level:t[1].length,text:t[2]?t[2].trim():``}:null}function Wu(e){return/^(---|\*\*\*|___)/.test(e.trim())}function Gu(e,t){let n=e[t];if(!n.includes(`|`)||t+1>=e.length||!e[t+1].match(/^\|?\s*[-:]+/))return null;let r=n.split(`|`).map(e=>e.trim()).filter(Boolean),i=t+2,a=[];for(;i<e.length&&e[i].includes(`|`);)a.push(e[i].split(`|`).map(e=>e.trim()).filter(Boolean)),i++;return{block:{type:`table`,headers:r,rows:a},nextIndex:i}}function Ku(e,t){let n=[],r=t;for(;r<e.length&&e[r].startsWith(`> `);)n.push(e[r].slice(2)),r++;return{block:{type:`blockquote`,text:n.join(`
7
- `)},nextIndex:r}}function qu(e){let t=Ou(e);return t?{type:`image`,...t}:null}function Ju(e){let t=eu(e);return t?{type:`media`,kind:t.kind,src:t.src}:null}function Yu(e,t,n){let r=t,i=[];for(;r<e.length&&e[r].trim()!==``&&!e[r].startsWith(`#`)&&!e[r].startsWith("```")&&!e[r].startsWith(`> `)&&!Cu.test(e[r]);)i.push(e[r]),r++;let a=i.join(`
8
- `);if(n&&bu(a)){let e=xu(a);if(e)return{block:{type:`mermaid`,code:e},nextIndex:r}}return{block:{type:`paragraph`,text:a},nextIndex:r}}function Xu(e){let t=[],n=0;for(let r=0;r<e.length;r++)t.push(n),n+=e[r].length+ +(r<e.length-1);return t}function Zu(e,t=!1){let n=e.split(`
9
- `),r=Xu(n),i=[],a=[],o=0;for(;o<n.length;){let e=n[o],s=r[o]??0;if(e.trimStart().startsWith("```")){let{block:e,nextIndex:r}=Hu(n,o,t);i.push(e),a.push(s),o=r;continue}let c=Uu(e);if(c){i.push(c),a.push(s),o++;continue}if(Wu(e)){i.push({type:`hr`}),a.push(s),o++;continue}let l=Gu(n,o);if(l){i.push(l.block),a.push(s),o=l.nextIndex;continue}if(e.startsWith(`> `)){let{block:e,nextIndex:t}=Ku(n,o);i.push(e),a.push(s),o=t;continue}if(Cu.test(e)){let{block:e,nextIndex:t}=Nu(n,o);i.push(e),a.push(s),o=t;continue}if(e.trim()===``){o++;continue}let u=qu(e);if(u){i.push(u),a.push(s),o++;continue}let d=Ju(e);if(d){i.push(d),a.push(s),o++;continue}let{block:f,nextIndex:p}=Yu(n,o,t);i.push(f),a.push(s),o=p}return{blocks:i,blockStarts:a}}function Qu(e,t,n){if(n&&n.enableMermaid===t&&n.md===e&&n.blocks.length>0)return n;if(n&&n.enableMermaid===t&&n.blocks.length>0&&e.startsWith(n.md)){let r=n.blockStarts[n.blockStarts.length-1]??0,i=n.blocks.slice(0,-1),a=n.blockStarts.slice(0,-1),o=Zu(e.slice(r),t);return{md:e,enableMermaid:t,blocks:[...i,...o.blocks],blockStarts:[...a,...o.blockStarts.map(e=>e+r)]}}let r=Zu(e,t);return{md:e,enableMermaid:t,blocks:r.blocks,blockStarts:r.blockStarts}}function $u(e,t){return`${t}-${e.text}`}function ed(e){let t=(0,Q.c)(21),{list:n,compact:r,threadId:i,inlineCodeClass:a,bodyClassName:o,nested:s}=e,c=s===void 0?!1:s,l=o??(r?U.caption:U.body),u=n.ordered?`ol`:`ul`,d;t[0]!==l||t[1]!==r||t[2]!==n.ordered||t[3]!==c?(d=G(l,ku(r,n.ordered,c)),t[0]=l,t[1]=r,t[2]=n.ordered,t[3]=c,t[4]=d):d=t[4];let f=n.ordered?n.start:void 0,p;if(t[5]!==o||t[6]!==r||t[7]!==a||t[8]!==n.items||t[9]!==i){let e;t[11]!==o||t[12]!==r||t[13]!==a||t[14]!==i?(e=(e,t)=>(0,$.jsx)(`li`,{children:(0,$.jsxs)(`div`,{className:`min-w-0`,children:[(0,$.jsx)(nd,{text:e.text,threadId:i,inlineCodeClass:a}),e.children.map((n,s)=>(0,$.jsx)(ed,{list:n,compact:r,threadId:i,inlineCodeClass:a,bodyClassName:o,nested:!0},`${$u(e,t)}-child-${s}`))]})},$u(e,t)),t[11]=o,t[12]=r,t[13]=a,t[14]=i,t[15]=e):e=t[15],p=n.items.map(e),t[5]=o,t[6]=r,t[7]=a,t[8]=n.items,t[9]=i,t[10]=p}else p=t[10];let m;return t[16]!==u||t[17]!==d||t[18]!==f||t[19]!==p?(m=(0,$.jsx)(u,{className:d,start:f,children:p}),t[16]=u,t[17]=d,t[18]=f,t[19]=p,t[20]=m):m=t[20],m}var td=(0,Z.memo)(function(e){let t=(0,Q.c)(88),{block:n,threadId:r,compact:i,bodyClassName:a}=e,o=i===void 0?!1:i,s=a??(o?U.caption:U.body),c;t[0]!==a||t[1]!==o?(c=a?G(a,`font-mono`):o?G(U.compact,`font-mono`):U.mono,t[0]=a,t[1]=o,t[2]=c):c=t[2];let l=c;switch(n.type){case`heading`:{let e=`h${n.level}`,i,a;if(t[3]!==e||t[4]!==n.level||t[5]!==o){let r=o?{1:G(U.caption,`font-semibold`),2:G(U.caption,`font-semibold`),3:G(U.body,`font-semibold`),4:G(U.body,`font-semibold`),5:G(U.compact,`font-semibold`),6:G(U.compact,`font-semibold`)}:{1:U.sectionTitle,2:U.subSectionTitle,3:U.subSectionTitle,4:U.subSectionTitle,5:U.sectionSubtitle,6:U.sectionSubtitle};i=e,a=G(r[n.level]),t[3]=e,t[4]=n.level,t[5]=o,t[6]=i,t[7]=a}else i=t[6],a=t[7];let s;t[8]!==n.text||t[9]!==l||t[10]!==r?(s=(0,$.jsx)(nd,{text:n.text,threadId:r,inlineCodeClass:l}),t[8]=n.text,t[9]=l,t[10]=r,t[11]=s):s=t[11];let c;return t[12]!==i||t[13]!==a||t[14]!==s?(c=(0,$.jsx)(i,{className:a,children:s}),t[12]=i,t[13]=a,t[14]=s,t[15]=c):c=t[15],c}case`code`:{let e;return t[16]!==n.code||t[17]!==n.language||t[18]!==o?(e=(0,$.jsx)(id,{language:n.language,code:n.code,compact:o}),t[16]=n.code,t[17]=n.language,t[18]=o,t[19]=e):e=t[19],e}case`blockquote`:{let e;t[20]===s?e=t[21]:(e=G(s,`border-l-2 border-border pl-4 text-muted-foreground italic`),t[20]=s,t[21]=e);let i;t[22]!==n.text||t[23]!==l||t[24]!==r?(i=(0,$.jsx)(nd,{text:n.text,threadId:r,inlineCodeClass:l}),t[22]=n.text,t[23]=l,t[24]=r,t[25]=i):i=t[25];let a;return t[26]!==e||t[27]!==i?(a=(0,$.jsx)(`blockquote`,{className:e,children:i}),t[26]=e,t[27]=i,t[28]=a):a=t[28],a}case`list`:{let e;return t[29]!==n.list||t[30]!==a||t[31]!==o||t[32]!==l||t[33]!==r?(e=(0,$.jsx)(ed,{list:n.list,compact:o,threadId:r,inlineCodeClass:l,bodyClassName:a}),t[29]=n.list,t[30]=a,t[31]=o,t[32]=l,t[33]=r,t[34]=e):e=t[34],e}case`paragraph`:{let e;t[35]===s?e=t[36]:(e=G(s,`mt-0 whitespace-pre-wrap break-words`),t[35]=s,t[36]=e);let i;t[37]!==n.text||t[38]!==l||t[39]!==r?(i=(0,$.jsx)(nd,{text:n.text,threadId:r,inlineCodeClass:l}),t[37]=n.text,t[38]=l,t[39]=r,t[40]=i):i=t[40];let a;return t[41]!==e||t[42]!==i?(a=(0,$.jsx)(`p`,{className:e,children:i}),t[41]=e,t[42]=i,t[43]=a):a=t[43],a}case`hr`:{let e;return t[44]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,$.jsx)(`hr`,{className:`border-border`}),t[44]=e):e=t[44],e}case`table`:{let e;t[45]===s?e=t[46]:(e=G(s,`w-full`),t[45]=s,t[46]=e);let i;if(t[47]!==n.headers||t[48]!==l||t[49]!==r){let e;t[51]!==l||t[52]!==r?(e=(e,t)=>(0,$.jsx)(`th`,{className:`px-3 py-2 text-left font-medium`,children:(0,$.jsx)(nd,{text:e,threadId:r,inlineCodeClass:l})},t),t[51]=l,t[52]=r,t[53]=e):e=t[53],i=n.headers.map(e),t[47]=n.headers,t[48]=l,t[49]=r,t[50]=i}else i=t[50];let a;t[54]===i?a=t[55]:(a=(0,$.jsx)(`thead`,{children:(0,$.jsx)(`tr`,{className:`border-b border-table-border`,children:i})}),t[54]=i,t[55]=a);let o;if(t[56]!==n.rows||t[57]!==l||t[58]!==r){let e;t[60]!==l||t[61]!==r?(e=(e,t)=>(0,$.jsx)(`tr`,{children:e.map((e,t)=>(0,$.jsx)(`td`,{className:`px-3 py-2`,children:(0,$.jsx)(nd,{text:e,threadId:r,inlineCodeClass:l})},t))},t),t[60]=l,t[61]=r,t[62]=e):e=t[62],o=n.rows.map(e),t[56]=n.rows,t[57]=l,t[58]=r,t[59]=o}else o=t[59];let c;t[63]===o?c=t[64]:(c=(0,$.jsx)(`tbody`,{children:o}),t[63]=o,t[64]=c);let u;return t[65]!==e||t[66]!==a||t[67]!==c?(u=(0,$.jsx)(`div`,{className:`overflow-x-auto rounded-md border border-table-border max-w-full`,children:(0,$.jsxs)(`table`,{className:e,children:[a,c]})}),t[65]=e,t[66]=a,t[67]=c,t[68]=u):u=t[68],u}case`mermaid`:{let e;return t[69]===n.code?e=t[70]:(e=(0,$.jsx)(ql,{content:n.code}),t[69]=n.code,t[70]=e),e}case`image`:{let e;t[71]!==n.src||t[72]!==r?(e=au(n.src,r),t[71]=n.src,t[72]=r,t[73]=e):e=t[73];let i=n.alt||`Image`,a;return t[74]!==e||t[75]!==i?(a=(0,$.jsx)(cu,{imageUrl:e,alt:i}),t[74]=e,t[75]=i,t[76]=a):a=t[76],a}case`media`:{let e;t[77]!==n.src||t[78]!==r?(e=iu(n.src,r),t[77]=n.src,t[78]=r,t[79]=e):e=t[79];let i=e;if(n.kind===`image`){let e;return t[80]===i?e=t[81]:(e=(0,$.jsx)(cu,{imageUrl:i,alt:`Image`}),t[80]=i,t[81]=e),e}let a;t[82]===n.src?a=t[83]:(a=n.src.split(/[/\\]/).pop(),t[82]=n.src,t[83]=a);let o=a,s;return t[84]!==n.kind||t[85]!==o||t[86]!==i?(s=(0,$.jsx)(_u,{src:i,kind:n.kind,label:o}),t[84]=n.kind,t[85]=o,t[86]=i,t[87]=s):s=t[87],s}default:return null}}),nd=(0,Z.memo)(function(e){let t=(0,Q.c)(11),{text:n,threadId:r,inlineCodeClass:i}=e,a=i===void 0?U.mono:i,o;t[0]===n?o=t[1]:(o=rd(n),t[0]=n,t[1]=o);let s=o,c;if(t[2]!==a||t[3]!==s||t[4]!==r){let e;t[6]!==a||t[7]!==r?(e=(e,t)=>{switch(e.type){case`bold`:return(0,$.jsx)(`strong`,{className:`font-semibold`,children:e.text},t);case`italic`:return(0,$.jsx)(`em`,{children:e.text},t);case`strikethrough`:return(0,$.jsx)(`del`,{className:`text-muted-foreground`,children:e.text},t);case`code`:return(0,$.jsx)(`code`,{className:G(a,`rounded bg-muted/20 py-0.5`),children:e.text},t);case`link`:return(0,$.jsx)(Su,{href:e.href,children:e.text},t);case`image`:return(0,$.jsx)(cu,{imageUrl:au(e.src,r),alt:e.alt||`Image`},t);default:return(0,$.jsx)(`span`,{children:e.text},t)}},t[6]=a,t[7]=r,t[8]=e):e=t[8],c=s.map(e),t[2]=a,t[3]=s,t[4]=r,t[5]=c}else c=t[5];let l;return t[9]===c?l=t[10]:(l=(0,$.jsx)($.Fragment,{children:c}),t[9]=c,t[10]=l),l});function rd(e){let t=[],n=/(`[^`]+`)|(!\[[^\]]*\]\([^)]+\))|(\*\*[^*]+\*\*)|(\*[^*]+\*)|(__[^_]+__)|(_[^_]+_)|(~~[^~]+~~)|(\[[^\]]+\]\([^)]+\))|(https?:\/\/[^\s<>"`]+)/gi,r=0,i;for(;(i=n.exec(e))!==null;){i.index>r&&t.push({type:`text`,text:e.slice(r,i.index)});let n=i[0];if(n.startsWith("`"))t.push({type:`code`,text:n.slice(1,-1)});else if(n.startsWith(`![`)){let e=n.match(/!\[([^\]]*)\]\(([^)]+)\)/);e&&t.push({type:`image`,alt:e[1],src:e[2]})}else if(n.startsWith(`**`)||n.startsWith(`__`))t.push({type:`bold`,text:n.slice(2,-2)});else if(n.startsWith(`~~`))t.push({type:`strikethrough`,text:n.slice(2,-2)});else if(n.startsWith(`*`)||n.startsWith(`_`))t.push({type:`italic`,text:n.slice(1,-1)});else if(n.startsWith(`[`)){let e=n.match(/\[([^\]]+)\]\(([^)]+)\)/);e&&t.push({type:`link`,text:e[1],href:e[2]})}else if(/^https?:\/\//i.test(n)){let e=n.replace(Eu,``),r=n.slice(e.length);e&&t.push({type:`link`,text:e,href:e}),r&&t.push({type:`text`,text:r})}r=i.index+n.length}return r<e.length&&t.push({type:`text`,text:e.slice(r)}),t.length>0?t:[{type:`text`,text:e}]}function id(e){let t=(0,Q.c)(27),{language:n,code:r,compact:i}=e,a=i===void 0?!1:i,[o,s]=(0,Z.useState)(!1),c;t[0]===r?c=t[1]:(c=async function(){await navigator.clipboard.writeText(r),s(!0),setTimeout(()=>s(!1),2e3)},t[0]=r,t[1]=c);let l=c,u;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(u=G(U.compact,`text-muted-foreground font-mono`),t[2]=u):u=t[2];let d=n||`text`,f;t[3]===d?f=t[4]:(f=(0,$.jsx)(`span`,{className:u,children:d}),t[3]=d,t[4]=f);let p;t[5]===o?p=t[6]:(p=o?(0,$.jsx)(W,{}):(0,$.jsx)(Ze,{}),t[5]=o,t[6]=p);let m;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(m=(0,$.jsx)(`span`,{className:`sr-only`,children:`Copy code`}),t[7]=m):m=t[7];let h;t[8]!==l||t[9]!==p?(h=(0,$.jsxs)(Hr,{variant:`action`,size:`icon-xs`,onClick:l,children:[p,m]}),t[8]=l,t[9]=p,t[10]=h):h=t[10];let g;t[11]!==f||t[12]!==h?(g=(0,$.jsxs)(`div`,{className:`flex items-center justify-between border-b border-border bg-muted/80 px-4 py-2`,children:[f,h]}),t[11]=f,t[12]=h,t[13]=g):g=t[13];let _=a?`p-2`:`p-4`,v;t[14]===_?v=t[15]:(v=G(`overflow-x-auto max-w-full`,_),t[14]=_,t[15]=v);let y;t[16]===a?y=t[17]:(y=G(a?G(U.compact,`font-mono`):U.mono,`text-foreground leading-relaxed`),t[16]=a,t[17]=y);let b;t[18]!==r||t[19]!==y?(b=(0,$.jsx)(`code`,{className:y,children:r}),t[18]=r,t[19]=y,t[20]=b):b=t[20];let x;t[21]!==v||t[22]!==b?(x=(0,$.jsx)(`pre`,{className:v,children:b}),t[21]=v,t[22]=b,t[23]=x):x=t[23];let S;return t[24]!==x||t[25]!==g?(S=(0,$.jsxs)(`div`,{className:`group relative overflow-hidden rounded-lg border border-border bg-muted`,children:[g,x]}),t[24]=x,t[25]=g,t[26]=S):S=t[26],S}var ad=2e5;function od(e){return e.split(/[/\\]/).pop()||void 0}function sd(e){return e>=1e6?`${(e/1e6).toFixed(1)} MB`:e>=1e3?`${(e/1e3).toFixed(1)} KB`:`${e} chars`}var cd=(0,Z.memo)(function(e){let t=(0,Q.c)(29),{content:n,threadId:r,className:i,enableMermaid:a}=e,o=a===void 0?!0:a,s;t[0]===n?s=t[1]:(s=eu(n),t[0]=n,t[1]=s);let c=s;if(c){let e;t[2]!==c.src||t[3]!==r?(e=iu(c.src,r),t[2]=c.src,t[3]=r,t[4]=e):e=t[4];let n=e;if(c.kind===`image`){let e;return t[5]===n?e=t[6]:(e=(0,$.jsx)(cu,{imageUrl:n,alt:`Image`}),t[5]=n,t[6]=e),e}let i=c.kind,a;t[7]===c.src?a=t[8]:(a=od(c.src),t[7]=c.src,t[8]=a);let o;return t[9]!==c.kind||t[10]!==n||t[11]!==a?(o=(0,$.jsx)(_u,{src:n,kind:i,label:a}),t[9]=c.kind,t[10]=n,t[11]=a,t[12]=o):o=t[12],o}let l=typeof n==`string`?n.length:0,u=l>ad,d;t[13]!==n||t[14]!==u?(d=u?n.slice(0,ad):n,t[13]=n,t[14]=u,t[15]=d):d=t[15];let f=d,p;t[16]!==l||t[17]!==u?(p=u&&(0,$.jsxs)(`div`,{className:G(U.caption,`mb-2 rounded-md border border-border bg-muted/40 px-3 py-2 text-muted-foreground`),children:[`This message contains a large embedded payload (`,sd(l),`). It was trimmed to the first `,sd(ad),` so the conversation can load. The full content is still preserved in the conversation history.`]}),t[16]=l,t[17]=u,t[18]=p):p=t[18];let m;t[19]===f?m=t[20]:(m=ds(f),t[19]=f,t[20]=m);let h=i??U.conversationBody,g;t[21]!==o||t[22]!==m||t[23]!==h||t[24]!==r?(g=(0,$.jsx)(Du,{content:m,enableMermaid:o,className:h,bodyClassName:U.conversationBody,threadId:r}),t[21]=o,t[22]=m,t[23]=h,t[24]=r,t[25]=g):g=t[25];let _;return t[26]!==p||t[27]!==g?(_=(0,$.jsxs)($.Fragment,{children:[p,g]}),t[26]=p,t[27]=g,t[28]=_):_=t[28],_});function ld(e){return`data:${cn(e.fileName,e.mimeType)};base64,${e.content}`}function ud(e){let t=cn(e.fileName,e.mimeType);return t.startsWith(`image/`)?`image`:t.startsWith(`video/`)?`video`:t.startsWith(`audio/`)?`audio`:Ie(e.fileName)||`file`}function dd(e){let t=(0,Q.c)(6),{icon:n,label:r}=e,i;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(i=G(U.compact,`flex items-center gap-1 rounded-md bg-muted px-2 py-1 text-muted-foreground`),t[0]=i):i=t[0];let a;t[1]===r?a=t[2]:(a=(0,$.jsx)(`span`,{className:`truncate`,children:r}),t[1]=r,t[2]=a);let o;return t[3]!==n||t[4]!==a?(o=(0,$.jsxs)(`div`,{className:i,children:[n,a]}),t[3]=n,t[4]=a,t[5]=o):o=t[5],o}function fd(e){let t=(0,Q.c)(14),{attachment:n}=e,r=ud(n),i;t[0]===n?i=t[1]:(i=ld(n),t[0]=n,t[1]=i);let a=i;if(r===`image`){let e;return t[2]!==n.fileName||t[3]!==a?(e=(0,$.jsx)(`div`,{className:`mt-1 max-w-full overflow-hidden rounded-lg border border-border bg-background`,children:(0,$.jsx)(`img`,{src:a,alt:n.fileName,className:`block max-h-80 max-w-full object-contain`})}),t[2]=n.fileName,t[3]=a,t[4]=e):e=t[4],e}if(r===`video`){let e;return t[5]!==n.fileName||t[6]!==a?(e=(0,$.jsx)(_u,{src:a,kind:`video`,label:n.fileName}),t[5]=n.fileName,t[6]=a,t[7]=e):e=t[7],e}if(r===`audio`){let e;return t[8]!==n.fileName||t[9]!==a?(e=(0,$.jsx)(_u,{src:a,kind:`audio`,label:n.fileName}),t[8]=n.fileName,t[9]=a,t[10]=e):e=t[10],e}let o;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,$.jsx)(It,{className:`h-2.5 w-2.5`}),t[11]=o):o=t[11];let s;return t[12]===n.fileName?s=t[13]:(s=(0,$.jsx)(dd,{icon:o,label:n.fileName}),t[12]=n.fileName,t[13]=s),s}function pd(e){let t=(0,Q.c)(4),{attachments:n}=e,r;t[0]===n?r=t[1]:(r=n.map(md),t[0]=n,t[1]=r);let i;return t[2]===r?i=t[3]:(i=(0,$.jsx)(`div`,{className:`mt-1 space-y-2`,children:r}),t[2]=r,t[3]=i),i}function md(e){let t=ud(e),n=`${e.fileName}:${cn(e.fileName,e.mimeType)}`;return t===`file`?(0,$.jsx)(fd,{attachment:e},n):(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(dd,{icon:t===`audio`?(0,$.jsx)(Te,{className:`h-2.5 w-2.5`}):t===`video`?(0,$.jsx)(k,{className:`h-2.5 w-2.5`}):(0,$.jsx)(It,{className:`h-2.5 w-2.5`}),label:e.fileName}),(0,$.jsx)(fd,{attachment:e})]},n)}var hd=Ut(`gitops.timing`);function gd(e){let t=[],n=performance.now();async function r(n,r){let i=performance.now();try{return await r()}finally{let r=Math.round(performance.now()-i);t.push({step:n,duration:r}),hd.debug(`${e} step`,{step:n,duration:r})}}function i(n,r,i){t.push({step:n,duration:r}),hd.debug(`${e} step`,{step:n,duration:r,...i?{detail:i}:{}})}function a(r){let i=Math.round(performance.now()-n),a=t.reduce((e,t)=>t.duration>=e.duration?t:e,{step:`none`,duration:0}),o=t.map(e=>`${e.step}:${e.duration}`).join(` `);hd.debug(`${e} summary`,{duration:i,slowestStep:a.step,slowestDuration:a.duration,breakdown:o,...r?{detail:r}:{}})}return{step:r,record:i,summary:a}}var _d=Ut(`gitops.unified-status`),vd=3e4,yd={hasChanges:!1,changedFilesCount:0,hasUnpushedCommits:!1,currentBranch:``,hasRemoteBranch:!1,isOnGitHub:!1,remoteUrl:``,canCreateRepo:!1,repoUrl:void 0,status:`Up to date`,defaultBranch:null,prExists:!1,prUrl:void 0,prState:void 0,commitsAheadOfDefault:!1,defaultBranchAhead:0,defaultBranchBehind:0},bd=new Map,xd=new Map;function Sd(e,t){let n=bd.get(e);if(n)for(let e of n)e(t)}function Cd(e,t){let n=bd.get(e);return n||(n=new Set,bd.set(e,n)),n.add(t),()=>{n.delete(t),n.size===0&&bd.delete(e)}}function wd(e){return`unified-git-status-${e}`}function Td(e){return Ma.getSync(wd(e))}function Ed(e){let[t,n]=(0,Z.useState)(yd),[r,i]=(0,Z.useState)(!1),a=(0,Z.useRef)(void 0),o=(0,Z.useRef)(0),s=(0,Z.useCallback)(e=>{(0,Z.startTransition)(()=>{n(e)})},[]),c=(0,Z.useRef)(s);c.current=s;let l=(0,Z.useCallback)(async(t=!1)=>{if(!e)return;let n=++o.current,r=gd(`hook fetch thread=${e} force=${t}`),a=setTimeout(()=>{o.current===n&&i(!0)},100);try{let i=wd(e),a=performance.now(),c=Td(e);r.record(`local-cache-check`,Math.round(performance.now()-a),`result=${c?`hit`:`miss`}`),t&&(Ma.invalidate(i),r.record(`invalidate-local-cache`,0));let l=await r.step(`ttl-cache-get`,()=>Ma.get(i,()=>wr(e,t,!1),vd));if(o.current!==n){r.summary(`stale-request`);return}await r.step(`update-state`,async()=>{s(l),Sd(e,l)}),r.summary(`branch=${l.currentBranch} changes=${l.changedFilesCount} prExists=${l.prExists}`)}catch(e){if(o.current!==n)return;_d.error(`Failed to fetch unified git status`,e),r.summary(`error`)}finally{clearTimeout(a),o.current===n&&i(!1)}},[e,s]),u=(0,Z.useRef)(l);return u.current=l,(0,Z.useEffect)(()=>{if(e)return Cd(e,e=>{c.current(e)})},[e]),(0,Z.useEffect)(()=>{if(!e)return;let t=0;function n(){if(document.visibilityState!==`visible`)return;let e=Date.now();e-t<500||(t=e,u.current(!1))}return document.addEventListener(`visibilitychange`,n),window.addEventListener(`focus`,n),()=>{document.removeEventListener(`visibilitychange`,n),window.removeEventListener(`focus`,n)}},[e]),(0,Z.useEffect)(()=>{if(o.current+=1,i(!1),!e){a.current=void 0,(0,Z.startTransition)(()=>{n(yd)});return}let t=a.current!==e,r=Td(e);t&&(_d.debug(`Active thread changed`,{previousThreadId:a.current??`none`,threadId:e}),a.current=e),(0,Z.startTransition)(()=>{n(r??yd)}),_d.debug(`Loaded unified git status from local cache`,{threadId:e,cache:r?`hit`:`miss`});let s=e,l=!1;function d(){if(l)return;let e=xd.get(s);if(e){_d.debug(`Initial unified git status fetch already in flight`,{threadId:s}),e.then(()=>{if(l)return;let e=Td(s);e&&c.current(e)});return}_d.debug(`Starting initial unified git status fetch`,{threadId:s});let t=u.current(!1).finally(()=>{_d.debug(`Initial unified git status fetch settled`,{threadId:s}),xd.delete(s)});xd.set(s,t)}return d(),()=>{l=!0}},[e]),(0,Z.useMemo)(()=>({hasChanges:t.hasChanges,changedFilesCount:t.changedFilesCount,hasUnpushedCommits:t.hasUnpushedCommits,hasRemoteBranch:t.hasRemoteBranch,currentBranch:t.currentBranch,isOnGitHub:t.isOnGitHub,remoteUrl:t.remoteUrl,canCreateRepo:t.canCreateRepo,repoUrl:t.repoUrl,status:t.status,defaultBranch:t.defaultBranch,prExists:t.prExists,prUrl:t.prUrl,prState:t.prState,commitsAheadOfDefault:t.commitsAheadOfDefault,defaultBranchAhead:t.defaultBranchAhead,defaultBranchBehind:t.defaultBranchBehind,isRefreshing:r,fetchUnifiedStatus:l}),[t,r,l])}var Dd=(0,Z.createContext)(void 0);function Od(e){let t=(0,Q.c)(8),{threadId:n,fetchUnifiedStatus:r}=e,i=X(jd),a=X(Ad),o=X(kd),{triggerReviewRefresh:s}=mc(),c,l;return t[0]!==a||t[1]!==r||t[2]!==i||t[3]!==o||t[4]!==n||t[5]!==s?(c=()=>{if(!(!n||n!==o)&&!i&&a.includes(n)){let e=setTimeout(()=>{r(!0),s(n)},1e3);return()=>clearTimeout(e)}},l=[n,o,i,a,r,s],t[0]=a,t[1]=r,t[2]=i,t[3]=o,t[4]=n,t[5]=s,t[6]=c,t[7]=l):(c=t[6],l=t[7]),(0,Z.useEffect)(c,l),null}function kd(e){return e.selectedThreadId}function Ad(e){return e.completedThreadIds}function jd(e){return e.isStreaming}function Md(e){let t=(0,Q.c)(7),{threadId:n,children:r}=e,i=Ed(n),a;t[0]!==n||t[1]!==i.fetchUnifiedStatus?(a=(0,$.jsx)(Od,{threadId:n,fetchUnifiedStatus:i.fetchUnifiedStatus}),t[0]=n,t[1]=i.fetchUnifiedStatus,t[2]=a):a=t[2];let o;return t[3]!==r||t[4]!==a||t[5]!==i?(o=(0,$.jsxs)(Dd.Provider,{value:i,children:[a,r]}),t[3]=r,t[4]=a,t[5]=i,t[6]=o):o=t[6],o}function Nd(){let e=(0,Z.useContext)(Dd);if(e===void 0)throw Error(`useGitStatus must be used within a GitStatusProvider`);return e}function Pd(e,t){let n=e.findIndex(e=>e.sender===`user`&&e.checkpointRef===t);return n===-1?e:e.slice(0,n)}function Fd(e){let[t,n]=(0,Z.useState)(!1),{fetchUnifiedStatus:r}=Nd(),i=Ks(),a=Vs();async function o(o){if(!(!e||t)){n(!0);try{let t=await va(e,o);if(t.success){i({type:Y.SetMessages,messages:Pd(a.getState().messages,o)}),i({type:Y.ResetStream,threadId:e,paneId:`primary`});let t=await ci(e);i({type:Y.SetMessages,messages:t.messages}),ac({title:`Checkpoint restored`,description:`Working tree and conversation restored to before this prompt.`}),r(!0)}else ac({title:`Restore failed`,description:t.error??`Could not restore checkpoint.`,variant:`destructive`})}catch(e){ac({title:`Restore failed`,description:e instanceof Error?e.message:`Unknown error`,variant:`destructive`})}finally{n(!1)}}}return{isRestoring:t,restore:o}}function Id(e){let t=(0,Q.c)(7),n=e===void 0?2e3:e,[r,i]=(0,Z.useState)(!1),a,o;t[0]!==r||t[1]!==n?(a=()=>{if(!r)return;let e=setTimeout(()=>i(!1),n);return()=>clearTimeout(e)},o=[r,n],t[0]=r,t[1]=n,t[2]=a,t[3]=o):(a=t[2],o=t[3]),(0,Z.useEffect)(a,o);let s;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(s=function(){i(!0)},t[4]=s):s=t[4];let c=s,l;return t[5]===r?l=t[6]:(l={copied:r,markCopied:c},t[5]=r,t[6]=l),l}function Ld(e){return e.length<=32?e:`${e.slice(0,32)}...`}function Rd(e){let t=(0,Q.c)(64),{message:n,threadId:r,showCheckpointRestore:i,checkpointRestoreTooltip:a}=e,o=i===void 0?!1:i,[s,c]=(0,Z.useState)(!1),l=n.sender===`user`,{isRestoring:u,restore:d}=Fd(r),{copied:f,markCopied:p}=Id(),m=l&&(o||!!a),h;t[0]===n.timestamp?h=t[1]:(h=n.timestamp?new Date(n.timestamp).toLocaleTimeString([],{hour:`2-digit`,minute:`2-digit`}):``,t[0]=n.timestamp,t[1]=h);let g=h,_;t[2]===n.content?_=t[3]:(_=Ld(n.content),t[2]=n.content,t[3]=_);let v=_,y;t[4]!==u||t[5]!==n.checkpointRef||t[6]!==o?(y=function(){!n.checkpointRef||!o||u||c(!0)},t[4]=u,t[5]=n.checkpointRef,t[6]=o,t[7]=y):y=t[7];let b=y,x;t[8]!==n.checkpointRef||t[9]!==d||t[10]!==o?(x=async function(){!n.checkpointRef||!o||(await d(n.checkpointRef),c(!1))},t[8]=n.checkpointRef,t[9]=d,t[10]=o,t[11]=x):x=t[11];let S=x,C;t[12]!==p||t[13]!==n.content?(C=async function(){try{await navigator.clipboard.writeText(n.content),p()}catch(e){let t=e;ac({title:`Copy failed`,description:t instanceof Error?t.message:`Could not copy prompt.`,variant:`destructive`})}},t[12]=p,t[13]=n.content,t[14]=C):C=t[14];let w=C,T=l&&`flex-row-reverse`,E;t[15]===T?E=t[16]:(E=G(`flex items-center gap-2`,T),t[15]=T,t[16]=E);let D;t[17]===Symbol.for(`react.memo_cache_sentinel`)?(D=G(U.compact,`font-medium text-foreground`),t[17]=D):D=t[17];let O;t[18]!==l||t[19]!==n.attributionLabel||t[20]!==n.mode?(O=l?n.attributionLabel??`You`:qe(n.mode),t[18]=l,t[19]=n.attributionLabel,t[20]=n.mode,t[21]=O):O=t[21];let k;t[22]===O?k=t[23]:(k=(0,$.jsx)(`span`,{className:D,children:O}),t[22]=O,t[23]=k);let A;t[24]!==a||t[25]!==w||t[26]!==b||t[27]!==f||t[28]!==u||t[29]!==l||t[30]!==m||t[31]!==o?(A=l&&(0,$.jsx)(Zo,{children:(0,$.jsxs)(`div`,{className:`inline-flex items-center gap-1 opacity-0 group-hover:opacity-100 transition-opacity`,children:[(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`span`,{tabIndex:0,className:`inline-flex`,children:(0,$.jsx)(`button`,{onClick:w,"aria-label":f?`Prompt copied`:`Copy prompt`,className:`flex items-center justify-center h-5 w-5 rounded-md text-muted-foreground transition-colors hover:text-foreground hover:bg-muted`,children:f?(0,$.jsx)(W,{className:`h-3 w-3 text-green-500`}):(0,$.jsx)(Ze,{className:`h-3 w-3`})})})}),(0,$.jsx)(Fr,{side:`left`,children:f?`Copied prompt`:`Copy prompt`})]}),m&&(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`span`,{tabIndex:0,className:`inline-flex`,children:(0,$.jsx)(`button`,{onClick:o?b:void 0,disabled:!o||u,"aria-label":a??`Restore checkpoint`,className:`flex items-center justify-center h-5 w-5 rounded-md text-muted-foreground transition-colors hover:text-foreground hover:bg-muted disabled:opacity-50 disabled:hover:text-muted-foreground disabled:hover:bg-transparent`,children:(0,$.jsx)(ye,{className:G(`h-3 w-3`,u&&`animate-spin`)})})})}),(0,$.jsx)(Fr,{side:`left`,children:a??`Restore checkpoint`})]})]})}),t[24]=a,t[25]=w,t[26]=b,t[27]=f,t[28]=u,t[29]=l,t[30]=m,t[31]=o,t[32]=A):A=t[32];let j;t[33]===g?j=t[34]:(j=g&&(0,$.jsxs)(`span`,{className:G(U.compact,`flex items-center gap-1 text-muted-foreground opacity-0 group-hover:opacity-100 transition-opacity`),children:[(0,$.jsx)(it,{className:`h-2.5 w-2.5`}),g]}),t[33]=g,t[34]=j);let M;t[35]===n.model?M=t[36]:(M=n.model&&(0,$.jsxs)(`span`,{className:G(U.compact,`flex items-center gap-1 text-muted-foreground opacity-0 group-hover:opacity-100 transition-opacity`),children:[(0,$.jsx)(Kt,{className:`h-2.5 w-2.5`}),Ko(n.model)]}),t[35]=n.model,t[36]=M);let N;t[37]===n.metadata?N=t[38]:(N=n.metadata?.processingTimeMs&&(0,$.jsxs)(`span`,{className:G(U.compact,`flex items-center gap-1 text-muted-foreground opacity-0 group-hover:opacity-100 transition-opacity`),children:[(0,$.jsx)($t,{className:`h-2.5 w-2.5`}),n.metadata.processingTimeMs>=6e4?`${Math.floor(n.metadata.processingTimeMs/6e4)}m ${Math.round(n.metadata.processingTimeMs%6e4/1e3)}s`:`${Math.round(n.metadata.processingTimeMs/1e3)}s`]}),t[37]=n.metadata,t[38]=N);let P;t[39]===n.metadata?P=t[40]:(P=(n.metadata?.tokenCount||n.metadata?.estimatedCost)&&(0,$.jsxs)(`span`,{className:G(U.compact,`text-muted-foreground opacity-0 group-hover:opacity-100 transition-opacity`),children:[n.metadata.tokenCount?`${n.metadata.tokenCount.toLocaleString()} tokens`:null,n.metadata.tokenCount&&n.metadata.estimatedCost?` · `:null,n.metadata.estimatedCost?Tt(n.metadata.estimatedCost):null]}),t[39]=n.metadata,t[40]=P);let F;t[41]!==k||t[42]!==A||t[43]!==j||t[44]!==M||t[45]!==N||t[46]!==P||t[47]!==E?(F=(0,$.jsxs)(`div`,{className:E,children:[k,A,j,M,N,P]}),t[41]=k,t[42]=A,t[43]=j,t[44]=M,t[45]=N,t[46]=P,t[47]=E,t[48]=F):F=t[48];let I;t[49]===Symbol.for(`react.memo_cache_sentinel`)?(I=(0,$.jsx)(sc,{children:`Restore Checkpoint`}),t[49]=I):I=t[49];let L;t[50]===v?L=t[51]:(L=(0,$.jsxs)(fc,{children:[I,(0,$.jsxs)(oc,{children:[`Restore to the checkpoint before “`,v,`” was started?`]})]}),t[50]=v,t[51]=L);let R;t[52]===Symbol.for(`react.memo_cache_sentinel`)?(R=(0,$.jsx)(dc,{children:`Cancel`}),t[52]=R):R=t[52];let z;t[53]===S?z=t[54]:(z=(0,$.jsxs)(uc,{children:[R,(0,$.jsx)(lc,{onClick:S,children:`Restore checkpoint`})]}),t[53]=S,t[54]=z);let B;t[55]!==L||t[56]!==z?(B=(0,$.jsxs)(cc,{children:[L,z]}),t[55]=L,t[56]=z,t[57]=B):B=t[57];let V;t[58]!==s||t[59]!==B?(V=(0,$.jsx)(pc,{open:s,onOpenChange:c,children:B}),t[58]=s,t[59]=B,t[60]=V):V=t[60];let H;return t[61]!==F||t[62]!==V?(H=(0,$.jsxs)($.Fragment,{children:[F,V]}),t[61]=F,t[62]=V,t[63]=H):H=t[63],H}function zd(e){let t=(0,Q.c)(19),{text:n,children:r}=e,{copied:i,markCopied:a}=Id(),o;t[0]!==a||t[1]!==n?(o=async function(){try{await navigator.clipboard.writeText(n),a()}catch(e){let t=e;ac({title:`Copy failed`,description:t instanceof Error?t.message:`Could not copy summary.`,variant:`destructive`})}},t[0]=a,t[1]=n,t[2]=o):o=t[2];let s=o,c=i?`Summary copied`:`Copy summary`,l;t[3]===i?l=t[4]:(l=i?(0,$.jsx)(W,{className:`h-3 w-3 text-green-500`}):(0,$.jsx)(Ze,{className:`h-3 w-3`}),t[3]=i,t[4]=l);let u;t[5]!==s||t[6]!==c||t[7]!==l?(u=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,onClick:s,"aria-label":c,className:`flex items-center justify-center h-6 w-6 rounded-md text-muted-foreground transition-colors hover:text-foreground hover:bg-muted`,children:l})}),t[5]=s,t[6]=c,t[7]=l,t[8]=u):u=t[8];let d=i?`Copied!`:`Copy summary`,f;t[9]===d?f=t[10]:(f=(0,$.jsx)(Fr,{side:`left`,children:d}),t[9]=d,t[10]=f);let p;t[11]!==u||t[12]!==f?(p=(0,$.jsx)(Zo,{children:(0,$.jsx)(`div`,{className:`absolute top-0 right-0 z-10`,children:(0,$.jsxs)(Mi,{children:[u,f]})})}),t[11]=u,t[12]=f,t[13]=p):p=t[13];let m;t[14]===r?m=t[15]:(m=(0,$.jsx)(`div`,{className:`min-w-0 pr-8`,children:r}),t[14]=r,t[15]=m);let h;return t[16]!==p||t[17]!==m?(h=(0,$.jsxs)(`div`,{className:`relative min-w-0`,children:[p,m]}),t[16]=p,t[17]=m,t[18]=h):h=t[18],h}function Bd(e){let t=(0,Q.c)(32),{src:n,threadId:r}=e,{copied:i,markCopied:a}=Id(),o;t[0]!==n||t[1]!==r?(o=n.startsWith(`data:`)?n:au(n,r),t[0]=n,t[1]=r,t[2]=o):o=t[2];let s=o,c;t[3]===s?c=t[4]:(c=async function(){let e=`generated-image-${Date.now()}.png`,{path:t}=await Fo(s.startsWith(`data:`)?{imageData:s.replace(/^data:[^;]+;base64,/,``),filename:e}:{imageUrl:s,filename:e});ac({title:`Saved to downloads: ${t.split(`/`).pop()}`})},t[3]=s,t[4]=c);let l=c,u;t[5]!==s||t[6]!==a?(u=async function(){await jo(s.startsWith(`data:`)?{imageData:s.replace(/^data:[^;]+;base64,/,``)}:{imageUrl:s}),a()},t[5]=s,t[6]=a,t[7]=u):u=t[7];let d=u,f;t[8]===s?f=t[9]:(f=(0,$.jsx)(`img`,{src:s,alt:`Generated image`,className:`max-w-full rounded-lg border border-border block max-h-[512px]`}),t[8]=s,t[9]=f);let p;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(p=(0,$.jsx)(Rt,{className:`h-3.5 w-3.5`}),t[10]=p):p=t[10];let m;t[11]===l?m=t[12]:(m=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`button`,{onClick:l,className:`flex items-center justify-center h-7 w-7 rounded-md bg-background/80 backdrop-blur-sm border border-border text-foreground hover:bg-background transition-colors`,children:p})}),t[11]=l,t[12]=m);let h;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(h=(0,$.jsx)(Fr,{children:`Save image`}),t[13]=h):h=t[13];let g;t[14]===m?g=t[15]:(g=(0,$.jsxs)(Mi,{children:[m,h]}),t[14]=m,t[15]=g);let _;t[16]===i?_=t[17]:(_=i?(0,$.jsx)(W,{className:`h-3.5 w-3.5 text-green-500`}):(0,$.jsx)(Ze,{className:`h-3.5 w-3.5`}),t[16]=i,t[17]=_);let v;t[18]!==d||t[19]!==_?(v=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`button`,{onClick:d,className:`flex items-center justify-center h-7 w-7 rounded-md bg-background/80 backdrop-blur-sm border border-border text-foreground hover:bg-background transition-colors`,children:_})}),t[18]=d,t[19]=_,t[20]=v):v=t[20];let y=i?`Copied!`:`Copy to clipboard`,b;t[21]===y?b=t[22]:(b=(0,$.jsx)(Fr,{children:y}),t[21]=y,t[22]=b);let x;t[23]!==v||t[24]!==b?(x=(0,$.jsxs)(Mi,{children:[v,b]}),t[23]=v,t[24]=b,t[25]=x):x=t[25];let S;t[26]!==x||t[27]!==g?(S=(0,$.jsx)(`div`,{className:`absolute top-2 right-2 flex gap-1 opacity-0 group-hover/img:opacity-100 transition-opacity`,children:(0,$.jsxs)(Zo,{children:[g,x]})}),t[26]=x,t[27]=g,t[28]=S):S=t[28];let C;return t[29]!==S||t[30]!==f?(C=(0,$.jsxs)(`div`,{className:`mt-2 relative group/img inline-block max-w-full`,children:[f,S]}),t[29]=S,t[30]=f,t[31]=C):C=t[31],C}function Vd(e){return e.startsWith(`/settings`)||e===`/review`}function Hd(){let e=(0,Q.c)(14),{windows:t,addWindow:n,revealWindow:r,isPrimaryChatOpen:i}=gc(),{setActiveMainTab:a,triggerReviewRefresh:o,triggerTasksRefresh:s}=mc(),{triggerExplorerRefresh:c}=vc(),l=X(Ud),u=Yn(),d=Gn(),f;e[0]!==n||e[1]!==i||e[2]!==d.pathname||e[3]!==u||e[4]!==r||e[5]!==l||e[6]!==a||e[7]!==c||e[8]!==o||e[9]!==s||e[10]!==t?(f=(e,f)=>{let p=f===void 0?{}:f,m=p.reuseExisting??!0,h=p.navigateToChat??!0;if(a(`chat`),h&&Vd(d.pathname)&&u(`/`),e===`explorer`&&c(),e===`review`&&o(l),e===`tasks`&&s(),e===`chat`)return!i||m?(r(Ct),Ct):n(e);if(m){let n=t.find(t=>t.panelId===e);if(n)return r(n.id),n.id}return n(e)},e[0]=n,e[1]=i,e[2]=d.pathname,e[3]=u,e[4]=r,e[5]=l,e[6]=a,e[7]=c,e[8]=o,e[9]=s,e[10]=t,e[11]=f):f=e[11];let p=f,m;return e[12]===p?m=e[13]:(m={openChatDockPanel:p},e[12]=p,e[13]=m),m}function Ud(e){return e.selectedThreadId}function Wd(e){return h(e)}function Gd(e){let t=e.toLowerCase();return t===`find`||t===`web_search`||t.includes(`search`)||t.includes(`grep`)}function Kd(e,t){let n=e.replace(/\s+/g,` `).trim();return n.length<=t?n:`${n.slice(0,t)}...`}function qd(e){let t=e.replace(/\s+/g,` `).trim();return{fullText:t,label:Kd(t,50)}}function Jd(e){return typeof e==`string`?e:typeof e==`object`&&e?JSON.stringify(e,null,2):String(e)}var Yd=32;function Xd(e,t){if(e===void 0)return null;let n;return n=typeof e==`string`?e:typeof e==`number`||typeof e==`boolean`?String(e):e===null?`null`:JSON.stringify(e),n.length>t?`${n.slice(0,t)}...`:n}function Zd(e,t=Yd,n=[]){if(!e)return null;let r=new Set(n),i=[];for(let[n,a]of Object.entries(e)){if(r.has(n))continue;let e=Xd(a,t);e&&i.push(`${n}: ${e}`)}return i.length>0?i.join(`, `):null}function Qd(e,t){if(!t||!e||typeof e!=`string`)return e;try{let n=t.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`);return e.replace(new RegExp(n,`g`),`.`)}catch{return e}}var $d=new RegExp(String.raw`\x1B\[[0-?]*[ -/]*[@-~]`,`g`),ef=new RegExp(String.raw`\x1B\].*?(?:\x07|\x1B\\)`,`g`),tf=new RegExp(String.raw`\x1B[@-_]`,`g`),nf=/\r(?!\n)/g,rf=/\\n/g;function af(e){return e.replace(ef,``).replace($d,``).replace(tf,``)}function of(e){return af(e).replace(rf,`
10
- `).replace(nf,`
11
- `)}function sf(e){let t=e.trim();if(t.startsWith(`{`)&&t.endsWith(`}`)||t.startsWith(`[`)&&t.endsWith(`]`))try{return JSON.parse(t)}catch{return e}return e}function cf(e){if(typeof e!=`object`||!e)return e;if(Array.isArray(e))return e.map(cf);let t={};for(let[n,r]of Object.entries(e))if(typeof r==`string`){let e=sf(r);t[n]=typeof e==`object`?cf(e):r}else t[n]=cf(r);return t}function lf(e){if(e==null||typeof e!=`string`)return``;let t=e;return t=t.replace(/\\\\n/g,`
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/dist-IeRYu0zQ.js","assets/rolldown-runtime-aKtaBQYM.js","assets/vosk-speech-Fi-g2v8n.js","assets/commit-dialog-BfdxNX_T.js","assets/onboarding-KBcwP-kU.js","assets/interactive-BrHVRHmQ.js","assets/pull-request-dialog-CitbRcub.js","assets/create-repo-dialog-CkFACtMf.js","assets/git-history-dialog-X6sVwgPT.js","assets/push-before-pr-dialog-CrcNZDLb.js","assets/pull-with-changes-dialog-CpgHqvKf.js","assets/commit-error-dialog-DrsDKL-B.js","assets/terminal-panel-DCaBWV04.js","assets/chat-dock-context-Gg1jpamu.js","assets/store-B_cK-gsT.js","assets/main-tab-context-zQSuRQQG.js","assets/use-active-dock-panel-instance-B9ao_JH2.js","assets/terminal-panel-BrP-ENHg.css","assets/diff-view-Cxf7v9t1.js","assets/monaco-D1hpqXQ0.js","assets/monaco-BQve5vfS.css","assets/async-error-boundary-CM6LU7nT.js","assets/card-BDQUHsPD.js","assets/context-menu-BLvLpqq7.js","assets/react-vendor-7n7LyU5o.js","assets/use-suspense-resource-CExc4Svq.js","assets/monaco-setup-b-rhUj5t.js","assets/utils-SsF94Pkg.js","assets/explorer-tab-view-LkT0bDcR.js","assets/use-toast-hxHsVv6a.js","assets/explorer-tab-context-BdjTEbFh.js","assets/browser-tab--1iEoJGu.js","assets/tasks-view-DgkXglqW.js","assets/commit-method-fields-o-xw2faT.js","assets/ndjson-stream-DeGpE5o5.js","assets/create-project-dialog-DrXo61FQ.js","assets/settings-view-D4-XZz2V.js","assets/skeleton-CJSNEi3C.js","assets/merged-pr-dialog-C3euJvCu.js"])))=>i.map(i=>d[i]);
2
+ import{i as e,t}from"./rolldown-runtime-aKtaBQYM.js";import{$r as n,$t as r,An as i,B as a,Bt as o,Di as s,Dn as c,Dr as l,Dt as u,Ei as d,Er as f,F as p,Fn as m,Fr as h,Ft as g,G as _,Gr as v,Gt as y,Ht as b,I as x,In as S,Ir as C,Jn as w,Jr as T,Jt as E,K as D,Kr as O,Kt as k,L as A,Ln as j,Lt as M,M as N,Mn as P,Mr as F,Mt as I,N as L,Nt as R,O as z,Oi as B,On as V,Ot as H,P as ee,Pn as te,Pr as ne,Pt as re,Q as ie,Qr as ae,Qt as oe,Rn as se,Rr as U,Rt as ce,S as le,Si as ue,Sn as W,St as de,T as fe,Tr as pe,Ur as me,Ut as he,V as ge,Vr as _e,Vt as ve,W as ye,Wr as be,Wt as xe,X as Se,Xn as Ce,Xr as we,Xt as Te,Y as Ee,Yn as De,Yr as Oe,Yt as ke,Z as Ae,Zn as je,Zr as Me,Zt as Ne,_ as Pe,_n as Fe,_r as Ie,_t as Le,a as Re,ai as ze,an as Be,ar as Ve,b as He,bi as Ue,br as We,bt as Ge,c as Ke,ci as qe,ct as Je,d as Ye,di as Xe,dn as Ze,dt as Qe,ei as $e,en as et,er as tt,f as nt,fi as rt,fn as it,ft as at,g as ot,gn as st,gr as ct,gt as lt,hn as ut,ht as dt,i as G,ii as ft,in as pt,ir as mt,j as ht,jn as gt,jt as _t,k as vt,ki as yt,kt as bt,m as xt,mi as St,mr as Ct,n as wt,ni as Tt,nt as Et,o as K,oi as q,on as Dt,pn as Ot,pr as kt,pt as At,q as jt,qn as Mt,qr as Nt,qt as Pt,r as Ft,rt as It,s as Lt,sn as Rt,sr as zt,t as Bt,ti as Vt,tn as Ht,tr as Ut,u as Wt,ui as Gt,un as Kt,ut as qt,vi as Jt,vn as Yt,wi as Xt,wn as Zt,wt as Qt,x as $t,xi as en,xn as tn,xr as nn,xt as rn,y as an,yi as on,yn as sn,yr as cn,yt as ln,z as un,zr as dn,zt as fn}from"./interactive-BrHVRHmQ.js";import{A as pn,At as mn,B as hn,Bt as gn,Ct as _n,D as J,Dt as vn,E as yn,Et as bn,F as xn,Ft as Sn,G as Cn,H as wn,Ht as Tn,I as En,It as Dn,K as On,L as kn,Lt as An,M as jn,Mt as Mn,N as Nn,Nt as Pn,O as Fn,Ot as In,P as Ln,Pt as Rn,R as zn,Rt as Bn,St as Vn,T as Hn,Tt as Un,U as Wn,Ut as Gn,V as Kn,Vt as qn,W as Jn,Wt as Yn,_t as Xn,at as Zn,bt as Qn,ct as $n,dt as er,ft as tr,gt as nr,ht as rr,it as ir,j as ar,jt as or,k as sr,kt as cr,lt as lr,mt as ur,ot as dr,pt as fr,q as pr,qt as mr,rt as hr,st as gr,ut as _r,vt as vr,wt as yr,xt as br,yt as xr,z as Sr,zt as Cr}from"./react-vendor-7n7LyU5o.js";import{$i as wr,$r as Tr,$t as Er,A as Dr,Aa as Or,Ai as kr,Ar,Ba as jr,Bn as Mr,Br as Nr,Ca as Pr,Ct as Fr,D as Ir,Da as Lr,Di as Rr,Dn as zr,E as Br,Ea as Vr,Eo as Hr,Er as Ur,F as Wr,Fa as Gr,Fr as Kr,Gi as qr,Gn as Jr,H as Yr,Ha as Xr,Hn as Zr,Hr as Qr,I as $r,In as ei,Ir as ti,Ja as ni,Ji as ri,Jn as ii,Jr as ai,Jt as oi,Ki as si,Kn as ci,L as li,Lr as ui,M as di,Ma as fi,Mn as pi,Mo as mi,Mr as hi,N as gi,O as _i,Oa as vi,Oi as yi,Oo as bi,Pa as xi,Pr as Si,Qa as Ci,Qi as wi,Qn as Ti,Qr as Ei,Ra as Di,Rn as Oi,Rr as ki,S as Ai,Sa as ji,St as Mi,T as Ni,Ta as Pi,Ti as Fi,Tn as Ii,To as Li,Tr as Ri,Tt as zi,U as Bi,Ua as Vi,Un as Hi,Ur as Ui,Vr as Wi,Wa as Gi,Wn as Ki,Wr as qi,Xa as Ji,Xi as Yi,Xn as Xi,Yr as Zi,Yt as Qi,Za as $i,Zn as ea,Zt as ta,_ as na,_a as ra,_i as ia,_n as aa,_o as oa,_r as sa,aa as ca,ao as la,ar as ua,b as da,ba as fa,bi as pa,bn as ma,br as ha,bt as ga,c as _a,ca as va,ci as ya,cn as ba,co as xa,da as Sa,di as Ca,dn as wa,do as Ta,dr as Ea,dt as Da,ea as Oa,ei as ka,er as Aa,f as ja,fa as Ma,fi as Na,fo as Pa,ga as Fa,gi as Ia,go as La,gr as Ra,gt as za,h as Ba,ha as Va,ia as Ha,in as Ua,io as Wa,ir as Ga,it as Ka,j as qa,ja as Ja,jr as Ya,k as Xa,ka as Za,ki as Qa,kr as $a,la as eo,li as to,ln as no,lr as ro,m as io,ma as ao,mi as oo,mn as so,mo as co,mr as lo,na as uo,ni as fo,nr as po,nt as mo,on as ho,oo as go,or as _o,p as vo,pa as yo,pi as bo,pt as xo,qa as So,qi as Co,qn as wo,ra as To,ri as Eo,rr as Do,rt as Oo,s as ko,sa as Ao,sn as jo,so as Mo,sr as No,ta as Po,ti as Fo,tn as Io,to as Lo,ua as Ro,un as zo,uo as Bo,v as Vo,va as Ho,vi as Uo,vo as Wo,vr as Go,w as Ko,wa as qo,wi as Jo,wo as Yo,wr as Xo,wt as Zo,x as Qo,xa as $o,xi as es,xn as ts,xo as ns,xt as rs,ya as is,yi as as,yn as os,za as ss,zn as cs,zr as ls}from"./onboarding-KBcwP-kU.js";import{l as us}from"./monaco-D1hpqXQ0.js";import{A as ds,B as fs,C as ps,D as ms,E as hs,F as gs,G as _s,H as vs,I as ys,J as Y,K as bs,L as xs,M as Ss,N as Cs,O as ws,P as Ts,R as Es,S as Ds,T as Os,U as ks,V as As,W as js,Y as Ms,_ as Ns,a as Ps,b as Fs,c as Is,d as Ls,f as Rs,g as zs,h as Bs,i as Vs,j as Hs,k as Us,l as Ws,m as Gs,n as Ks,o as qs,p as Js,q as Ys,r as X,s as Xs,t as Zs,u as Qs,v as $s,w as ec,x as tc,y as nc,z as rc}from"./store-B_cK-gsT.js";import{n as ic,t as ac}from"./use-toast-hxHsVv6a.js";import{a as oc,c as sc,i as cc,n as lc,o as uc,r as dc,s as fc,t as pc}from"./alert-dialog-CLYxQdrK.js";import{n as mc,t as hc}from"./main-tab-context-zQSuRQQG.js";import{n as gc,t as _c}from"./chat-dock-context-Gg1jpamu.js";import{n as vc,t as yc}from"./explorer-tab-context-BdjTEbFh.js";import{a as bc,c as xc,d as Sc,f as Cc,i as wc,l as Tc,n as Ec,o as Dc,r as Oc,s as kc,t as Ac,u as jc}from"./thread-tool-blocks-D9HUkPHB.js";import{r as Mc,t as Nc}from"./use-suspense-resource-CExc4Svq.js";import{n as Pc,t as Fc}from"./ndjson-stream-DeGpE5o5.js";import{n as Ic,t as Lc}from"./utils-SsF94Pkg.js";(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),e.crossOrigin===`use-credentials`?t.credentials=`include`:e.crossOrigin===`anonymous`?t.credentials=`omit`:t.credentials=`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})();var Rc=class extends Vn{#e;#t;#n;#r;constructor(e){super(),this.#e=e.client,this.mutationId=e.mutationId,this.#n=e.mutationCache,this.#t=[],this.state=e.state||zc(),this.setOptions(e.options),this.scheduleGc()}setOptions(e){this.options=e,this.updateGcTime(this.options.gcTime)}get meta(){return this.options.meta}addObserver(e){this.#t.includes(e)||(this.#t.push(e),this.clearGcTimeout(),this.#n.notify({type:`observerAdded`,mutation:this,observer:e}))}removeObserver(e){this.#t=this.#t.filter(t=>t!==e),this.scheduleGc(),this.#n.notify({type:`observerRemoved`,mutation:this,observer:e})}optionalRemove(){this.#t.length||(this.state.status===`pending`?this.scheduleGc():this.#n.remove(this))}continue(){return this.#r?.continue()??this.execute(this.state.variables)}async execute(e){let t=()=>{this.#i({type:`continue`})},n={client:this.#e,meta:this.options.meta,mutationKey:this.options.mutationKey};this.#r=_n({fn:()=>this.options.mutationFn?this.options.mutationFn(e,n):Promise.reject(Error(`No mutationFn found`)),onFail:(e,t)=>{this.#i({type:`failed`,failureCount:e,error:t})},onPause:()=>{this.#i({type:`pause`})},onContinue:t,retry:this.options.retry??0,retryDelay:this.options.retryDelay,networkMode:this.options.networkMode,canRun:()=>this.#n.canRun(this)});let r=this.state.status===`pending`,i=!this.#r.canStart();try{if(r)t();else{this.#i({type:`pending`,variables:e,isPaused:i}),this.#n.config.onMutate&&await this.#n.config.onMutate(e,this,n);let t=await this.options.onMutate?.(e,n);t!==this.state.context&&this.#i({type:`pending`,context:t,variables:e,isPaused:i})}let a=await this.#r.start();return await this.#n.config.onSuccess?.(a,e,this.state.context,this,n),await this.options.onSuccess?.(a,e,this.state.context,n),await this.#n.config.onSettled?.(a,null,this.state.variables,this.state.context,this,n),await this.options.onSettled?.(a,null,e,this.state.context,n),this.#i({type:`success`,data:a}),a}catch(t){try{await this.#n.config.onError?.(t,e,this.state.context,this,n)}catch(e){Promise.reject(e)}try{await this.options.onError?.(t,e,this.state.context,n)}catch(e){Promise.reject(e)}try{await this.#n.config.onSettled?.(void 0,t,this.state.variables,this.state.context,this,n)}catch(e){Promise.reject(e)}try{await this.options.onSettled?.(void 0,t,e,this.state.context,n)}catch(e){Promise.reject(e)}throw this.#i({type:`error`,error:t}),t}finally{this.#n.runNext(this)}}#i(e){let t=t=>{switch(e.type){case`failed`:return{...t,failureCount:e.failureCount,failureReason:e.error};case`pause`:return{...t,isPaused:!0};case`continue`:return{...t,isPaused:!1};case`pending`:return{...t,context:e.context,data:void 0,failureCount:0,failureReason:null,error:null,isPaused:e.isPaused,status:`pending`,variables:e.variables,submittedAt:Date.now()};case`success`:return{...t,data:e.data,failureCount:0,failureReason:null,error:null,status:`success`,isPaused:!1};case`error`:return{...t,data:void 0,error:e.error,failureCount:t.failureCount+1,failureReason:e.error,isPaused:!1,status:`error`}}};this.state=t(this.state),Un.batch(()=>{this.#t.forEach(t=>{t.onMutationUpdate(e)}),this.#n.notify({mutation:this,type:`updated`,action:e})})}};function zc(){return{context:void 0,data:void 0,error:null,failureCount:0,failureReason:null,isPaused:!1,status:`idle`,variables:void 0,submittedAt:0}}var Bc=class extends An{constructor(e={}){super(),this.config=e,this.#e=new Set,this.#t=new Map,this.#n=0}#e;#t;#n;build(e,t,n){let r=new Rc({client:e,mutationCache:this,mutationId:++this.#n,options:e.defaultMutationOptions(t),state:n});return this.add(r),r}add(e){this.#e.add(e);let t=Vc(e);if(typeof t==`string`){let n=this.#t.get(t);n?n.push(e):this.#t.set(t,[e])}this.notify({type:`added`,mutation:e})}remove(e){if(this.#e.delete(e)){let t=Vc(e);if(typeof t==`string`){let n=this.#t.get(t);if(n)if(n.length>1){let t=n.indexOf(e);t!==-1&&n.splice(t,1)}else n[0]===e&&this.#t.delete(t)}}this.notify({type:`removed`,mutation:e})}canRun(e){let t=Vc(e);if(typeof t==`string`){let n=this.#t.get(t)?.find(e=>e.state.status===`pending`);return!n||n===e}else return!0}runNext(e){let t=Vc(e);return typeof t==`string`?(this.#t.get(t)?.find(t=>t!==e&&t.state.isPaused))?.continue()??Promise.resolve():Promise.resolve()}clear(){Un.batch(()=>{this.#e.forEach(e=>{this.notify({type:`removed`,mutation:e})}),this.#e.clear(),this.#t.clear()})}getAll(){return Array.from(this.#e)}find(e){let t={exact:!0,...e};return this.getAll().find(e=>mn(t,e))}findAll(e={}){return this.getAll().filter(t=>mn(e,t))}notify(e){Un.batch(()=>{this.listeners.forEach(t=>{t(e)})})}resumePausedMutations(){let e=this.getAll().filter(e=>e.state.isPaused);return Un.batch(()=>Promise.all(e.map(e=>e.continue().catch(Mn))))}};function Vc(e){return e.options.scope?.id}var Hc=class extends An{constructor(e={}){super(),this.config=e,this.#e=new Map}#e;build(e,t,n){let r=t.queryKey,i=t.queryHash??In(r,t),a=this.get(i);return a||(a=new br({client:e,queryKey:r,queryHash:i,options:e.defaultQueryOptions(t),state:n,defaultOptions:e.getQueryDefaults(r)}),this.add(a)),a}add(e){this.#e.has(e.queryHash)||(this.#e.set(e.queryHash,e),this.notify({type:`added`,query:e}))}remove(e){let t=this.#e.get(e.queryHash);t&&(e.destroy(),t===e&&this.#e.delete(e.queryHash),this.notify({type:`removed`,query:e}))}clear(){Un.batch(()=>{this.getAll().forEach(e=>{this.remove(e)})})}get(e){return this.#e.get(e)}getAll(){return[...this.#e.values()]}find(e){let t={exact:!0,...e};return this.getAll().find(e=>or(t,e))}findAll(e={}){let t=this.getAll();return Object.keys(e).length>0?t.filter(t=>or(e,t)):t}notify(e){Un.batch(()=>{this.listeners.forEach(t=>{t(e)})})}onFocus(){Un.batch(()=>{this.getAll().forEach(e=>{e.onFocus()})})}onOnline(){Un.batch(()=>{this.getAll().forEach(e=>{e.onOnline()})})}},Uc=class{#e;#t;#n;#r;#i;#a;#o;#s;constructor(e={}){this.#e=e.queryCache||new Hc,this.#t=e.mutationCache||new Bc,this.#n=e.defaultOptions||{},this.#r=new Map,this.#i=new Map,this.#a=0}mount(){this.#a++,this.#a===1&&(this.#o=Dn.subscribe(async e=>{e&&(await this.resumePausedMutations(),this.#e.onFocus())}),this.#s=yr.subscribe(async e=>{e&&(await this.resumePausedMutations(),this.#e.onOnline())}))}unmount(){this.#a--,this.#a===0&&(this.#o?.(),this.#o=void 0,this.#s?.(),this.#s=void 0)}isFetching(e){return this.#e.findAll({...e,fetchStatus:`fetching`}).length}isMutating(e){return this.#t.findAll({...e,status:`pending`}).length}getQueryData(e){let t=this.defaultQueryOptions({queryKey:e});return this.#e.get(t.queryHash)?.state.data}ensureQueryData(e){let t=this.defaultQueryOptions(e),n=this.#e.build(this,t),r=n.state.data;return r===void 0?this.fetchQuery(e):(e.revalidateIfStale&&n.isStaleByTime(Rn(t.staleTime,n))&&this.prefetchQuery(t),Promise.resolve(r))}getQueriesData(e){return this.#e.findAll(e).map(({queryKey:e,state:t})=>[e,t.data])}setQueryData(e,t,n){let r=this.defaultQueryOptions({queryKey:e}),i=this.#e.get(r.queryHash)?.state.data,a=bn(t,i);if(a!==void 0)return this.#e.build(this,r).setData(a,{...n,manual:!0})}setQueriesData(e,t,n){return Un.batch(()=>this.#e.findAll(e).map(({queryKey:e})=>[e,this.setQueryData(e,t,n)]))}getQueryState(e){let t=this.defaultQueryOptions({queryKey:e});return this.#e.get(t.queryHash)?.state}removeQueries(e){let t=this.#e;Un.batch(()=>{t.findAll(e).forEach(e=>{t.remove(e)})})}resetQueries(e,t){let n=this.#e;return Un.batch(()=>(n.findAll(e).forEach(e=>{e.reset()}),this.refetchQueries({type:`active`,...e},t)))}cancelQueries(e,t={}){let n={revert:!0,...t},r=Un.batch(()=>this.#e.findAll(e).map(e=>e.cancel(n)));return Promise.all(r).then(Mn).catch(Mn)}invalidateQueries(e,t={}){return Un.batch(()=>(this.#e.findAll(e).forEach(e=>{e.invalidate()}),e?.refetchType===`none`?Promise.resolve():this.refetchQueries({...e,type:e?.refetchType??e?.type??`active`},t)))}refetchQueries(e,t={}){let n={...t,cancelRefetch:t.cancelRefetch??!0},r=Un.batch(()=>this.#e.findAll(e).filter(e=>!e.isDisabled()&&!e.isStatic()).map(e=>{let t=e.fetch(void 0,n);return n.throwOnError||(t=t.catch(Mn)),e.state.fetchStatus===`paused`?Promise.resolve():t}));return Promise.all(r).then(Mn)}fetchQuery(e){let t=this.defaultQueryOptions(e);t.retry===void 0&&(t.retry=!1);let n=this.#e.build(this,t);return n.isStaleByTime(Rn(t.staleTime,n))?n.fetch(t):Promise.resolve(n.state.data)}prefetchQuery(e){return this.fetchQuery(e).then(Mn).catch(Mn)}fetchInfiniteQuery(e){return e._type=`infinite`,this.fetchQuery(e)}prefetchInfiniteQuery(e){return this.fetchInfiniteQuery(e).then(Mn).catch(Mn)}ensureInfiniteQueryData(e){return e._type=`infinite`,this.ensureQueryData(e)}resumePausedMutations(){return yr.isOnline()?this.#t.resumePausedMutations():Promise.resolve()}getQueryCache(){return this.#e}getMutationCache(){return this.#t}getDefaultOptions(){return this.#n}setDefaultOptions(e){this.#n=e}setQueryDefaults(e,t){this.#r.set(vn(e),{queryKey:e,defaultOptions:t})}getQueryDefaults(e){let t=[...this.#r.values()],n={};return t.forEach(t=>{Pn(e,t.queryKey)&&Object.assign(n,t.defaultOptions)}),n}setMutationDefaults(e,t){this.#i.set(vn(e),{mutationKey:e,defaultOptions:t})}getMutationDefaults(e){let t=[...this.#i.values()],n={};return t.forEach(t=>{Pn(e,t.mutationKey)&&Object.assign(n,t.defaultOptions)}),n}defaultQueryOptions(e){if(e._defaulted)return e;let t={...this.#n.queries,...this.getQueryDefaults(e.queryKey),...e,_defaulted:!0};return t.queryHash||=In(t.queryKey,t),t.refetchOnReconnect===void 0&&(t.refetchOnReconnect=t.networkMode!==`always`),t.throwOnError===void 0&&(t.throwOnError=!!t.suspense),!t.networkMode&&t.persister&&(t.networkMode=`offlineFirst`),t.queryFn===Sn&&(t.enabled=!1),t}defaultMutationOptions(e){return e?._defaulted?e:{...this.#n.mutations,...e?.mutationKey&&this.getMutationDefaults(e.mutationKey),...e,_defaulted:!0}}clear(){this.#e.clear(),this.#t.clear()}},Z=e(yt(),1),Wc=mr(),Q=B(),$=s(),Gc=`lg-filter-project-icon`,Kc=`blur(2px) url(#${Gc}) blur(4px) saturate(1.5) brightness(1.1)`,qc=`blur(16px) saturate(1.8) brightness(1.15) contrast(1.05)`,Jc=`inset 0 0 0 1px rgba(255, 255, 255, 0.15), inset 1.5px 1.5px 0 rgba(255, 255, 255, 0.5), inset 0 0 12px rgba(255, 255, 255, 0.2)`;function Yc(e){let t=(0,Q.c)(21),{project:n,isSelected:r,isDeleting:i,elevated:a,className:s,iconClassName:c}=e,l=r===void 0?!1:r,u=i===void 0?!1:i,d=a===void 0?!0:a,f;t[0]===n?f=t[1]:(f=kt(Ke(n)),t[0]=n,t[1]=f);let p=f,m=n.gitUrl?o:ce,h=l&&`ring-2 ring-brand/40`,g;t[2]!==s||t[3]!==h?(g=G(`relative flex aspect-square items-center justify-center overflow-hidden rounded-[1.15rem] text-foreground/70 dark:text-white`,h,s),t[2]=s,t[3]=h,t[4]=g):g=t[4];let _=`linear-gradient(150deg, rgba(255, 255, 255, 0.12), rgba(255, 255, 255, 0.02)), ${p}`,v=d?`${Jc}, 0 8px 32px rgba(0, 0, 0, 0.2)`:`${Jc}, 0 1px 2px rgba(0, 0, 0, 0.15)`,y;t[5]!==_||t[6]!==v?(y={backgroundColor:`rgba(255, 255, 255, 0.17)`,backgroundImage:_,backdropFilter:Kc,WebkitBackdropFilter:qc,boxShadow:v},t[5]=_,t[6]=v,t[7]=y):y=t[7];let b;t[8]!==u||t[9]!==n.projectIcon?(b=n.projectIcon&&!u&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`div`,{className:`pointer-events-none absolute inset-0 dark:bg-background`}),(0,$.jsx)(`img`,{src:n.projectIcon,alt:``,className:`relative h-full w-full object-cover`})]}),t[8]=u,t[9]=n.projectIcon,t[10]=b):b=t[10];let x;t[11]!==m||t[12]!==c||t[13]!==u||t[14]!==n.projectIcon?(x=u?(0,$.jsx)(ln,{className:G(`relative h-8 w-8 animate-spin text-muted-foreground`,c)}):n.projectIcon?null:(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`div`,{className:`pointer-events-none absolute inset-0 dark:bg-black/50`}),(0,$.jsx)(m,{className:G(`relative h-8 w-8`,c),strokeWidth:1.5})]}),t[11]=m,t[12]=c,t[13]=u,t[14]=n.projectIcon,t[15]=x):x=t[15];let S;return t[16]!==b||t[17]!==x||t[18]!==g||t[19]!==y?(S=(0,$.jsxs)(`div`,{className:g,style:y,children:[b,x]}),t[16]=b,t[17]=x,t[18]=g,t[19]=y,t[20]=S):S=t[20],S}function Xc(){let e=(0,Q.c)(2),t;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t={position:`absolute`},e[0]=t):t=e[0];let n;return e[1]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,$.jsx)(`svg`,{width:`0`,height:`0`,style:t,"aria-hidden":`true`,children:(0,$.jsxs)(`filter`,{id:Gc,x:`0`,y:`0`,width:`100%`,height:`100%`,colorInterpolationFilters:`sRGB`,children:[(0,$.jsx)(`feImage`,{x:`0`,y:`0`,width:`80`,height:`80`,href:`data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2280%22%20height%3D%2280%22%20viewBox%3D%220%200%2080%2080%22%3E%3Cdefs%3E%3ClinearGradient%20id%3D%22Y%22%20x1%3D%220%22%20x2%3D%220%22%20y1%3D%222%25%22%20y2%3D%2298%25%22%3E%3Cstop%20offset%3D%220%25%22%20stop-color%3D%22%230F0%22%2F%3E%3Cstop%20offset%3D%22100%25%22%20stop-color%3D%22%23000%22%2F%3E%3C%2FlinearGradient%3E%3ClinearGradient%20id%3D%22X%22%20x1%3D%221%25%22%20x2%3D%2299%25%22%20y1%3D%220%22%20y2%3D%220%22%3E%3Cstop%20offset%3D%220%25%22%20stop-color%3D%22%23F00%22%2F%3E%3Cstop%20offset%3D%22100%25%22%20stop-color%3D%22%23000%22%2F%3E%3C%2FlinearGradient%3E%3C%2Fdefs%3E%3Crect%20width%3D%2280%22%20height%3D%2280%22%20fill%3D%22%23808080%22%2F%3E%3Cg%20filter%3D%22blur(2px)%22%3E%3Crect%20width%3D%2280%22%20height%3D%2280%22%20fill%3D%22%23000080%22%2F%3E%3Crect%20width%3D%2280%22%20height%3D%2280%22%20fill%3D%22url(%23Y)%22%20style%3D%22mix-blend-mode%3Ascreen%22%2F%3E%3Crect%20width%3D%2280%22%20height%3D%2280%22%20fill%3D%22url(%23X)%22%20style%3D%22mix-blend-mode%3Ascreen%22%2F%3E%3Crect%20x%3D%228%22%20y%3D%228%22%20width%3D%2264%22%20height%3D%2264%22%20rx%3D%225%22%20ry%3D%225%22%20fill%3D%22%23808080%22%20filter%3D%22blur(16px)%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E`,result:`displacementMap`}),(0,$.jsx)(`feDisplacementMap`,{in:`SourceGraphic`,in2:`displacementMap`,scale:`158`,xChannelSelector:`R`,yChannelSelector:`G`}),(0,$.jsx)(`feColorMatrix`,{type:`matrix`,result:`displacedR`,values:`1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0`}),(0,$.jsx)(`feDisplacementMap`,{in:`SourceGraphic`,in2:`displacementMap`,scale:`156`,xChannelSelector:`R`,yChannelSelector:`G`}),(0,$.jsx)(`feColorMatrix`,{type:`matrix`,result:`displacedG`,values:`0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1 0`}),(0,$.jsx)(`feDisplacementMap`,{in:`SourceGraphic`,in2:`displacementMap`,scale:`154`,xChannelSelector:`R`,yChannelSelector:`G`}),(0,$.jsx)(`feColorMatrix`,{type:`matrix`,result:`displacedB`,values:`0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0`}),(0,$.jsx)(`feBlend`,{in:`displacedR`,in2:`displacedG`,mode:`screen`,result:`rg`}),(0,$.jsx)(`feBlend`,{in:`rg`,in2:`displacedB`,mode:`screen`})]})}),e[1]=n):n=e[1],n}function Zc(e){let t=(0,Q.c)(18),{projects:n,selectedThreadId:r,selectedProjectId:i,deletingProjectIds:a,onSelectProject:o,onDeleteProject:s}=e,c;t[0]===n.length?c=t[1]:(c=n.length===0&&(0,$.jsx)(`p`,{className:G(U.compact,`col-span-full px-3 pb-2 text-center text-muted-foreground`),children:`No projects yet. Clone a repository to get started.`}),t[0]=n.length,t[1]=c);let l;if(t[2]!==a||t[3]!==s||t[4]!==o||t[5]!==n||t[6]!==i||t[7]!==r){let e;t[9]!==a||t[10]!==s||t[11]!==o||t[12]!==i||t[13]!==r?(e=e=>(0,$.jsx)($c,{project:e,isDeleting:a.includes(e.projectId),isSelected:i!=null&&e.projectId===i||e.threads.some(e=>e.threadId===r),onSelectProject:o,onDeleteProject:s},e.projectId||e.gitUrl),t[9]=a,t[10]=s,t[11]=o,t[12]=i,t[13]=r,t[14]=e):e=t[14],l=n.map(e),t[2]=a,t[3]=s,t[4]=o,t[5]=n,t[6]=i,t[7]=r,t[8]=l}else l=t[8];let u;return t[15]!==c||t[16]!==l?(u=(0,$.jsxs)(`div`,{className:`grid grid-cols-[repeat(auto-fill,minmax(5.5rem,1fr))] gap-x-4 gap-y-6 justify-items-center sm:grid-cols-[repeat(auto-fill,minmax(6.5rem,1fr))] sm:gap-x-6 sm:gap-y-8`,children:[c,l]}),t[15]=c,t[16]=l,t[17]=u):u=t[17],u}function Qc(e){let t=(0,Q.c)(12),{label:n,tile:r,onClick:i,isSelected:a,actions:o}=e,s=a!==void 0&&a?`text-foreground`:`text-foreground/90`,c;t[0]===s?c=t[1]:(c=G(U.compact,`w-full text-center font-medium leading-tight line-clamp-2 break-words`,s),t[0]=s,t[1]=c);let l;t[2]!==n||t[3]!==c?(l=(0,$.jsx)(`span`,{className:c,children:n}),t[2]=n,t[3]=c,t[4]=l):l=t[4];let u;t[5]!==i||t[6]!==l||t[7]!==r?(u=(0,$.jsxs)(`button`,{type:`button`,onClick:i,className:`flex w-full flex-col items-center gap-2 outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-sidebar rounded-2xl`,children:[r,l]}),t[5]=i,t[6]=l,t[7]=r,t[8]=u):u=t[8];let d;return t[9]!==o||t[10]!==u?(d=(0,$.jsxs)(`div`,{className:`group relative flex w-full max-w-[6.5rem] flex-col items-center gap-2`,children:[u,o]}),t[9]=o,t[10]=u,t[11]=d):d=t[11],d}function $c(e){let t=(0,Q.c)(19),{project:n,isDeleting:r,isSelected:i,onSelectProject:a,onDeleteProject:o}=e,s=!r&&n.threads.length===0,c;t[0]===n?c=t[1]:(c=Ke(n),t[0]=n,t[1]=c);let l;t[2]!==a||t[3]!==n.projectId?(l=()=>a(n.projectId),t[2]=a,t[3]=n.projectId,t[4]=l):l=t[4];let u;t[5]!==r||t[6]!==i||t[7]!==n?(u=(0,$.jsx)(Yc,{project:n,isSelected:i,isDeleting:r,className:`w-full max-w-[4.5rem] transition-transform can-hover:group-hover:scale-[1.03] sm:max-w-[5rem]`,iconClassName:`sm:h-9 sm:w-9`}),t[5]=r,t[6]=i,t[7]=n,t[8]=u):u=t[8];let d;t[9]!==o||t[10]!==n.projectId||t[11]!==s?(d=s?(0,$.jsx)(Zo,{children:(0,$.jsx)(`div`,{className:`pointer-events-none invisible absolute -right-1 -top-1 flex flex-col gap-1 opacity-0 transition-opacity can-hover:group-hover:visible can-hover:group-hover:pointer-events-auto can-hover:group-hover:opacity-100`,children:(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(Hr,{variant:`ghost`,size:`icon`,className:`h-7 w-7 rounded-full bg-background border border-border shadow-sm text-muted-foreground can-hover:hover:bg-destructive can-hover:hover:text-destructive-foreground`,onClick:()=>o(n.projectId),children:[(0,$.jsx)(He,{className:`h-3.5 w-3.5`}),(0,$.jsx)(`span`,{className:`sr-only`,children:`Delete project`})]})}),(0,$.jsx)(Fr,{side:`right`,children:`Delete project`})]})})}):void 0,t[9]=o,t[10]=n.projectId,t[11]=s,t[12]=d):d=t[12];let f;return t[13]!==i||t[14]!==c||t[15]!==l||t[16]!==u||t[17]!==d?(f=(0,$.jsx)(Qc,{label:c,isSelected:i,onClick:l,tile:u,actions:d}),t[13]=i,t[14]=c,t[15]=l,t[16]=u,t[17]=d,t[18]=f):f=t[18],f}function el(e){let t=(0,Q.c)(5),{children:n,className:r}=e,i;t[0]===r?i=t[1]:(i=G(`flex min-h-[71px] shrink-0 items-center gap-2 px-4 py-2 electrobun-webkit-app-region-drag`,r),t[0]=r,t[1]=i);let a;return t[2]!==n||t[3]!==i?(a=(0,$.jsx)(`header`,{className:i,children:n}),t[2]=n,t[3]=i,t[4]=a):a=t[4],a}function tl(e){let t=(0,Q.c)(4),{className:n}=e;if(!Pr())return null;let r;t[0]===n?r=t[1]:(r=G(`h-8 w-full shrink-0 electrobun-webkit-app-region-drag`,n),t[0]=n,t[1]=r);let i;return t[2]===r?i=t[3]:(i=(0,$.jsx)(`div`,{"aria-hidden":!0,className:r}),t[2]=r,t[3]=i),i}var nl=`scenic-chrome-button hover:!bg-[hsl(var(--scenic-foreground))] hover:!text-[hsl(var(--scenic-foreground-inverse))]`,rl=`0 0% 9%`,il=`0 0% 98%`;function al(e){let t=e<=140;return{foreground:t?il:rl,inverse:t?rl:il}}function ol(e,t){document.documentElement.style.setProperty(`--scenic-foreground`,e),document.documentElement.style.setProperty(`--scenic-foreground-inverse`,t)}function sl(e){try{let t=document.createElement(`canvas`);t.width=32,t.height=32;let n=t.getContext(`2d`);if(!n)return;n.drawImage(e,0,0,32,32);let{data:r}=n.getImageData(0,0,32,32),i=0,a=r.length/4;for(let e=0;e<r.length;e+=4)i+=.2126*r[e]+.7152*r[e+1]+.0722*r[e+2];let{foreground:o,inverse:s}=al(i/a);ol(o,s)}catch{}}function cl(e){sl(e.currentTarget)}var ll=[`/backgrounds/arctic-tundra.avif`,`/backgrounds/autumn-leaves.avif`,`/backgrounds/coastal-cliff.avif`,`/backgrounds/floating-waterfall.avif`,`/backgrounds/forest-path.avif`,`/backgrounds/garden-path.avif`,`/backgrounds/glow-marsh.avif`,`/backgrounds/golden-wheat.avif`,`/backgrounds/moon-desert.avif`,`/backgrounds/night-pond.avif`,`/backgrounds/prairie-grassland.avif`,`/backgrounds/river-winding.avif`,`/backgrounds/salt-flat.avif`,`/backgrounds/salt-marsh.avif`,`/backgrounds/sandy-beach.avif`,`/backgrounds/snow-river.avif`,`/backgrounds/sunset-pond.avif`];function ul(){let e=new Date,t=`${String(e.getFullYear())}${String(e.getMonth()+1).padStart(2,`0`)}${String(e.getDate()).padStart(2,`0`)}`,n=0;for(let e=0;e<t.length;e++)n=n*31+t.charCodeAt(e)>>>0;return ll[n%ll.length]}var dl=ul(),fl=new Image;fl.src=dl;function pl(){let e=(0,Q.c)(1),t;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,$.jsx)(`div`,{"aria-hidden":`true`,className:`pointer-events-none absolute inset-0 z-0`,children:(0,$.jsx)(`img`,{src:dl,alt:``,className:`h-full w-full object-cover`,onLoad:cl})}),e[0]=t):t=e[0],t}function ml(e){let t=(0,Q.c)(6),{children:n,className:r,style:i}=e,a;t[0]===r?a=t[1]:(a=G(`frosted-panel rounded-2xl shadow-lg backdrop-blur-sm`,r),t[0]=r,t[1]=a);let o;return t[2]!==n||t[3]!==i||t[4]!==a?(o=(0,$.jsx)(`div`,{className:a,style:i,children:n}),t[2]=n,t[3]=i,t[4]=a,t[5]=o):o=t[5],o}function hl(e){let t=(0,Q.c)(14),n,r,i,a;t[0]===e?(n=t[1],r=t[2],i=t[3],a=t[4]):({open:i,defaultOpen:n,onOpenChange:r,...a}=e,t[0]=e,t[1]=n,t[2]=r,t[3]=i,t[4]=a);let o;t[5]!==n||t[6]!==r||t[7]!==i?(o={open:i,defaultOpen:n,onOpenChange:r},t[5]=n,t[6]=r,t[7]=i,t[8]=o):o=t[8];let s=Bi(o),c;return t[9]!==n||t[10]!==s||t[11]!==i||t[12]!==a?(c=(0,$.jsx)(er,{open:i,defaultOpen:n,onOpenChange:s,...a}),t[9]=n,t[10]=s,t[11]=i,t[12]=a,t[13]=c):c=t[13],c}var gl=nr,_l=fr,vl=Z.forwardRef((e,t)=>{let n=(0,Q.c)(14),r,i,a,o;n[0]===e?(r=n[1],i=n[2],a=n[3],o=n[4]):({className:i,inset:a,children:r,...o}=e,n[0]=e,n[1]=r,n[2]=i,n[3]=a,n[4]=o);let s;n[5]!==i||n[6]!==a?(s=G(G(U.body,`flex cursor-default gap-2 select-none items-center rounded-sm px-2 py-1.5 outline-none focus:bg-accent data-[state=open]:bg-accent [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0`),a&&`pl-8`,i),n[5]=i,n[6]=a,n[7]=s):s=n[7];let c;n[8]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,$.jsx)(sn,{className:`ml-auto`}),n[8]=c):c=n[8];let l;return n[9]!==r||n[10]!==o||n[11]!==t||n[12]!==s?(l=(0,$.jsxs)(rr,{ref:t,className:s,...o,children:[r,c]}),n[9]=r,n[10]=o,n[11]=t,n[12]=s,n[13]=l):l=n[13],l});vl.displayName=rr.displayName;var yl=Z.forwardRef((e,t)=>{let n=(0,Q.c)(9),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let a;n[3]===r?a=n[4]:(a=G(`z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-lg 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`,r),n[3]=r,n[4]=a);let o;return n[5]!==i||n[6]!==t||n[7]!==a?(o=(0,$.jsx)(ur,{ref:t,className:a,...i}),n[5]=i,n[6]=t,n[7]=a,n[8]=o):o=n[8],o});yl.displayName=ur.displayName;var bl=Z.forwardRef((e,t)=>{let n=(0,Q.c)(11),r,i,a;n[0]===e?(r=n[1],i=n[2],a=n[3]):({className:r,sideOffset:a,...i}=e,n[0]=e,n[1]=r,n[2]=i,n[3]=a);let o=a===void 0?4:a,s;n[4]===r?s=n[5]:(s=G(`z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md 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`,r),n[4]=r,n[5]=s);let c;return n[6]!==i||n[7]!==t||n[8]!==o||n[9]!==s?(c=(0,$.jsx)(lr,{children:(0,$.jsx)(Zn,{ref:t,sideOffset:o,className:s,...i})}),n[6]=i,n[7]=t,n[8]=o,n[9]=s,n[10]=c):c=n[10],c});bl.displayName=Zn.displayName;var xl=Z.forwardRef((e,t)=>{let n=(0,Q.c)(11),r,i,a;n[0]===e?(r=n[1],i=n[2],a=n[3]):({className:r,inset:i,...a}=e,n[0]=e,n[1]=r,n[2]=i,n[3]=a);let o;n[4]!==r||n[5]!==i?(o=G(G(U.body,`relative flex cursor-default select-none items-center gap-2 rounded-sm px-2 py-1.5 outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0`),i&&`pl-8`,r),n[4]=r,n[5]=i,n[6]=o):o=n[6];let s;return n[7]!==a||n[8]!==t||n[9]!==o?(s=(0,$.jsx)(dr,{ref:t,className:o,...a}),n[7]=a,n[8]=t,n[9]=o,n[10]=s):s=n[10],s});xl.displayName=dr.displayName;var Sl=Z.forwardRef((e,t)=>{let n=(0,Q.c)(14),r,i,a,o;n[0]===e?(r=n[1],i=n[2],a=n[3],o=n[4]):({className:a,children:i,checked:r,...o}=e,n[0]=e,n[1]=r,n[2]=i,n[3]=a,n[4]=o);let s;n[5]===a?s=n[6]:(s=G(G(U.body,`group relative flex cursor-default select-none items-center gap-2 rounded-sm px-2 py-1.5 outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0`),a),n[5]=a,n[6]=s);let c;n[7]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,$.jsx)(`span`,{className:`ml-auto flex h-4 w-4 shrink-0 items-center justify-center rounded-sm border border-primary group-data-[state=checked]:bg-primary group-data-[state=checked]:text-primary-foreground`,children:(0,$.jsx)(gr,{children:(0,$.jsx)(W,{className:`h-4 w-4`})})}),n[7]=c):c=n[7];let l;return n[8]!==r||n[9]!==i||n[10]!==o||n[11]!==t||n[12]!==s?(l=(0,$.jsxs)(ir,{ref:t,className:s,checked:r,...o,children:[i,c]}),n[8]=r,n[9]=i,n[10]=o,n[11]=t,n[12]=s,n[13]=l):l=n[13],l});Sl.displayName=ir.displayName;var Cl=Z.forwardRef((e,t)=>{let n=(0,Q.c)(12),r,i,a;n[0]===e?(r=n[1],i=n[2],a=n[3]):({className:i,children:r,...a}=e,n[0]=e,n[1]=r,n[2]=i,n[3]=a);let o;n[4]===i?o=n[5]:(o=G(G(U.body,`relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50`),i),n[4]=i,n[5]=o);let s;n[6]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,$.jsx)(`span`,{className:`absolute left-2 flex h-3.5 w-3.5 items-center justify-center`,children:(0,$.jsx)(gr,{children:(0,$.jsx)(Ot,{className:`h-2 w-2 fill-current`})})}),n[6]=s):s=n[6];let c;return n[7]!==r||n[8]!==a||n[9]!==t||n[10]!==o?(c=(0,$.jsxs)(_r,{ref:t,className:o,...a,children:[s,r]}),n[7]=r,n[8]=a,n[9]=t,n[10]=o,n[11]=c):c=n[11],c});Cl.displayName=_r.displayName;var wl=Z.forwardRef((e,t)=>{let n=(0,Q.c)(11),r,i,a;n[0]===e?(r=n[1],i=n[2],a=n[3]):({className:r,inset:i,...a}=e,n[0]=e,n[1]=r,n[2]=i,n[3]=a);let o=i&&`pl-8`,s;n[4]!==r||n[5]!==o?(s=G(U.body,`px-2 py-1.5 font-semibold`,o,r),n[4]=r,n[5]=o,n[6]=s):s=n[6];let c;return n[7]!==a||n[8]!==t||n[9]!==s?(c=(0,$.jsx)($n,{ref:t,className:s,...a}),n[7]=a,n[8]=t,n[9]=s,n[10]=c):c=n[10],c});wl.displayName=$n.displayName;var Tl=Z.forwardRef((e,t)=>{let n=(0,Q.c)(9),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let a;n[3]===r?a=n[4]:(a=G(`-mx-1 my-1 h-px bg-divider`,r),n[3]=r,n[4]=a);let o;return n[5]!==i||n[6]!==t||n[7]!==a?(o=(0,$.jsx)(tr,{ref:t,className:a,...i}),n[5]=i,n[6]=t,n[7]=a,n[8]=o):o=n[8],o});Tl.displayName=tr.displayName;var El=e=>{let t=(0,Q.c)(8),n,r;t[0]===e?(n=t[1],r=t[2]):({className:n,...r}=e,t[0]=e,t[1]=n,t[2]=r);let i;t[3]===n?i=t[4]:(i=G(U.compact,`ml-auto tracking-widest opacity-60`,n),t[3]=n,t[4]=i);let a;return t[5]!==r||t[6]!==i?(a=(0,$.jsx)(`span`,{className:i,...r}),t[5]=r,t[6]=i,t[7]=a):a=t[7],a};El.displayName=`DropdownMenuShortcut`;function Dl(e){let t=(0,Q.c)(37),{onSelectMode:n,onOpenFolder:r,onSelectZip:i}=e,a;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(a=(0,$.jsx)(gl,{asChild:!0,children:(0,$.jsxs)(Hr,{className:`gap-1`,children:[`New Project`,(0,$.jsx)(tn,{className:`h-4 w-4 opacity-70`})]})}),t[0]=a):a=t[0];let o;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(o=G(U.body,`gap-2`),t[1]=o):o=t[1];let s;t[2]===n?s=t[3]:(s=()=>n(`folder`),t[2]=n,t[3]=s);let c;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,$.jsx)(Se,{className:`h-4 w-4 shrink-0`}),t[4]=c):c=t[4];let l;t[5]===s?l=t[6]:(l=(0,$.jsxs)(xl,{className:o,onSelect:s,children:[c,`Blank Starter`]}),t[5]=s,t[6]=l);let u;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(u=G(U.body,`gap-2`),t[7]=u):u=t[7];let d;t[8]===n?d=t[9]:(d=()=>n(`clone`),t[8]=n,t[9]=d);let f;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(f=(0,$.jsx)(M,{className:`h-4 w-4 shrink-0`}),t[10]=f):f=t[10];let p;t[11]===d?p=t[12]:(p=(0,$.jsxs)(xl,{className:u,onSelect:d,children:[f,`Git Repo`]}),t[11]=d,t[12]=p);let m;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(m=G(U.body,`gap-2`),t[13]=m):m=t[13];let h;t[14]===r?h=t[15]:(h=()=>{r()},t[14]=r,t[15]=h);let g;t[16]===Symbol.for(`react.memo_cache_sentinel`)?(g=(0,$.jsx)(fn,{className:`h-4 w-4 shrink-0`}),t[16]=g):g=t[16];let _;t[17]===h?_=t[18]:(_=(0,$.jsxs)(xl,{className:m,onSelect:h,children:[g,`Open Folder`]}),t[17]=h,t[18]=_);let v;t[19]===Symbol.for(`react.memo_cache_sentinel`)?(v=G(U.body,`gap-2`),t[19]=v):v=t[19];let y;t[20]===i?y=t[21]:(y=()=>{i()},t[20]=i,t[21]=y);let b;t[22]===Symbol.for(`react.memo_cache_sentinel`)?(b=(0,$.jsx)(Ht,{className:`h-4 w-4 shrink-0`}),t[22]=b):b=t[22];let x;t[23]===y?x=t[24]:(x=(0,$.jsxs)(xl,{className:v,onSelect:y,children:[b,`From Zip`]}),t[23]=y,t[24]=x);let S;t[25]===Symbol.for(`react.memo_cache_sentinel`)?(S=G(U.body,`gap-2`),t[25]=S):S=t[25];let C;t[26]===n?C=t[27]:(C=()=>n(`webapp`),t[26]=n,t[27]=C);let w;t[28]===Symbol.for(`react.memo_cache_sentinel`)?(w=(0,$.jsx)(Et,{className:`h-4 w-4 shrink-0`}),t[28]=w):w=t[28];let T;t[29]===C?T=t[30]:(T=(0,$.jsxs)(xl,{className:S,onSelect:C,children:[w,`New App`]}),t[29]=C,t[30]=T);let E;return t[31]!==_||t[32]!==x||t[33]!==T||t[34]!==l||t[35]!==p?(E=(0,$.jsxs)(hl,{children:[a,(0,$.jsxs)(bl,{align:`end`,className:`w-44`,children:[l,p,_,x,T]})]}),t[31]=_,t[32]=x,t[33]=T,t[34]=l,t[35]=p,t[36]=E):E=t[36],E}function Ol(e){let t=(0,Q.c)(41),{projects:n,selectedThreadId:r,selectedProjectId:i,deletingProjectIds:a,onSelectProject:o,onCreateProject:s,onOpenFolder:c,onSelectZip:l,onDeleteProject:u,updateAvailable:d,updatingApp:f,onUpdateApp:p,isDevMode:m}=e,h=Yn(),g=X(Al),[_,v]=(0,Z.useState)(!g),y;t[0]===n?y=t[1]:(y=[...n].sort(kl),t[0]=n,t[1]=y);let b=y;!g&&!_&&v(!0);let S;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(S=function(){ui(`https://tarsk.io/`)},t[2]=S):S=t[2];let C=S;if(!_){let e;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,$.jsx)(tl,{}),t[3]=e):e=t[3];let n;return t[4]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,$.jsxs)(`div`,{className:`flex h-full flex-col overflow-hidden`,children:[e,(0,$.jsx)(`div`,{className:`flex flex-1 items-center justify-center`,children:(0,$.jsx)(ln,{className:`h-8 w-8 animate-spin text-muted-foreground`})})]}),t[4]=n):n=t[4],n}let w;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(w=(0,$.jsx)(tl,{}),t[5]=w):w=t[5];let T;t[6]===h?T=t[7]:(T=()=>void h(`/settings/general`),t[6]=h,t[7]=T);let E;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(E=(0,$.jsx)(x,{className:`h-5 w-5`}),t[8]=E):E=t[8];let D;t[9]===T?D=t[10]:(D=(0,$.jsx)(`div`,{className:`absolute right-4 top-4 z-20 electrobun-webkit-app-region-no-drag`,children:(0,$.jsx)(Hr,{variant:`ghost`,size:`icon`,className:`[color:contrast-color(hsl(var(--background)))] hover:[color:contrast-color(hsl(var(--foreground)))]`,onClick:T,"aria-label":`Settings`,children:E})}),t[9]=T,t[10]=D);let O;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(O=(0,$.jsx)(`button`,{type:`button`,onClick:C,className:`flex h-20 w-20 cursor-pointer items-center justify-center overflow-hidden rounded-full shadow-sm`,children:(0,$.jsx)(`img`,{src:`/tarsk.svg`,alt:`Tarsk`,className:`h-full w-full`})}),t[11]=O):O=t[11];let k;t[12]===m?k=t[13]:(k=m?(0,$.jsx)(`p`,{className:G(U.label,`mt-2 text-destructive dark:text-red-400`),children:`Dev Mode`}):null,t[12]=m,t[13]=k);let A;t[14]===k?A=t[15]:(A=(0,$.jsxs)(`div`,{className:`absolute left-1/2 top-10 z-10 flex -translate-x-1/2 -translate-y-1/2 flex-col items-center`,children:[O,k]}),t[14]=k,t[15]=A);let j;t[16]!==s||t[17]!==c||t[18]!==l?(j=(0,$.jsx)(Oo,{title:`Projects`,action:(0,$.jsx)(Dl,{onSelectMode:s,onOpenFolder:c,onSelectZip:l}),sticky:!0}),t[16]=s,t[17]=c,t[18]=l,t[19]=j):j=t[19];let M;t[20]!==a||t[21]!==u||t[22]!==o||t[23]!==i||t[24]!==r||t[25]!==b?(M=(0,$.jsx)(Zc,{projects:b,selectedThreadId:r,selectedProjectId:i,deletingProjectIds:a,onSelectProject:o,onDeleteProject:u}),t[20]=a,t[21]=u,t[22]=o,t[23]=i,t[24]=r,t[25]=b,t[26]=M):M=t[26];let N;t[27]!==j||t[28]!==M?(N=(0,$.jsxs)(ml,{className:`px-6 pb-6 pt-16`,children:[j,M]}),t[27]=j,t[28]=M,t[29]=N):N=t[29];let P;t[30]!==N||t[31]!==A?(P=(0,$.jsx)(xo,{className:`relative z-10 animate-in fade-in duration-500`,children:(0,$.jsx)(`div`,{className:`flex min-h-full flex-col justify-center`,children:(0,$.jsx)(Da,{className:`w-full max-w-4xl mx-auto py-10`,children:(0,$.jsxs)(`div`,{className:`relative pt-10`,children:[A,N]})})})}),t[30]=N,t[31]=A,t[32]=P):P=t[32];let F;t[33]!==p||t[34]!==d||t[35]!==f?(F=d?(0,$.jsx)(`div`,{className:`relative z-10 flex flex-shrink-0 justify-end px-4 pb-4 pt-2`,children:(0,$.jsxs)(Hr,{variant:`outline`,className:`text-emerald-600 dark:text-emerald-400`,onClick:p,disabled:f,children:[f?(0,$.jsx)(ln,{className:`h-4 w-4 animate-spin`}):(0,$.jsx)(Rt,{className:`h-4 w-4`}),f?`Updating...`:`Upgrade to Latest`]})}):null,t[33]=p,t[34]=d,t[35]=f,t[36]=F):F=t[36];let I;return t[37]!==P||t[38]!==F||t[39]!==D?(I=(0,$.jsxs)(`div`,{className:`relative flex h-full flex-col overflow-hidden`,children:[w,D,P,F]}),t[37]=P,t[38]=F,t[39]=D,t[40]=I):I=t[40],I}function kl(e,t){return Ke(e).localeCompare(Ke(t))}function Al(e){return e.projectsLoading}function jl(e,t){let n=(0,Q.c)(6),[r,i]=(0,Z.useState)(e),a=(0,Z.useRef)(-1/0),o=(0,Z.useRef)(null),s=(0,Z.useRef)(e),c;n[0]!==r||n[1]!==t||n[2]!==e?(c=()=>{if(s.current=e,Object.is(e,r))return;let n=function(){o.current=null,a.current=Date.now(),i(s.current)},c=Date.now()-a.current;if(c>=t){n();return}o.current||=setTimeout(n,t-c)},n[0]=r,n[1]=t,n[2]=e,n[3]=c):c=n[3],(0,Z.useEffect)(c);let l,u;return n[4]===Symbol.for(`react.memo_cache_sentinel`)?(l=()=>()=>{o.current&&=(clearTimeout(o.current),null)},u=[],n[4]=l,n[5]=u):(l=n[4],u=n[5]),(0,Z.useEffect)(l,u),r}var Ml=e(mi(),1),Nl=.1,Pl=10,Fl=1.25,Il=.001;function Ll(){let e=(0,Q.c)(15),[t,n]=(0,Z.useState)(1),r;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(r={x:0,y:0},e[0]=r):r=e[0];let[i,a]=(0,Z.useState)(r),[o,s]=(0,Z.useState)(!1),c=(0,Z.useRef)(null),l=Rl,u;e[1]===Symbol.for(`react.memo_cache_sentinel`)?(u=()=>n(e=>l(e*Fl)),e[1]=u):u=e[1];let d=u,f;e[2]===Symbol.for(`react.memo_cache_sentinel`)?(f=()=>n(e=>l(e/Fl)),e[2]=f):f=e[2];let p=f,m;e[3]===Symbol.for(`react.memo_cache_sentinel`)?(m=()=>{n(1),a({x:0,y:0})},e[3]=m):m=e[3];let h=m,g;e[4]===i?g=e[5]:(g=e=>{e.preventDefault(),s(!0),c.current={x:e.clientX,y:e.clientY,ox:i.x,oy:i.y}},e[4]=i,e[5]=g);let _=g,v;e[6]===Symbol.for(`react.memo_cache_sentinel`)?(v=e=>{c.current&&a({x:c.current.ox+(e.clientX-c.current.x),y:c.current.oy+(e.clientY-c.current.y)})},e[6]=v):v=e[6];let y=v,b;e[7]===Symbol.for(`react.memo_cache_sentinel`)?(b=()=>{s(!1),c.current=null},e[7]=b):b=e[7];let x=b,S=(0,Z.useRef)(null),C,w;e[8]===Symbol.for(`react.memo_cache_sentinel`)?(C=()=>{let e=S.current;if(!e)return;let t=function(e){e.preventDefault();let t=-e.deltaY*Il;n(e=>l(e*(1+t)))};return e.addEventListener(`wheel`,t,{passive:!1}),()=>e.removeEventListener(`wheel`,t)},w=[],e[8]=C,e[9]=w):(C=e[8],w=e[9]),(0,Z.useEffect)(C,w);let T;return e[10]!==o||e[11]!==i||e[12]!==_||e[13]!==t?(T={scale:t,offset:i,isDragging:o,containerRef:S,zoomIn:d,zoomOut:p,reset:h,onMouseDown:_,onMouseMove:y,onMouseUp:x},e[10]=o,e[11]=i,e[12]=_,e[13]=t,e[14]=T):T=e[14],T}function Rl(e){return Math.min(Math.max(e,Nl),Pl)}var zl=Ut(`app.mermaid-renderer.ui`);function Bl(){let e=(0,Q.c)(2),[t,n]=(0,Z.useState)(!1),r,i;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=()=>{let e=function(){n(document.documentElement.classList.contains(`dark`))};e();let t=new MutationObserver(e);return t.observe(document.documentElement,{attributes:!0,attributeFilter:[`class`]}),()=>t.disconnect()},i=[],e[0]=r,e[1]=i):(r=e[0],i=e[1]),(0,Z.useEffect)(r,i),t}var Vl=null;function Hl(){return Vl||=us(()=>import(`./dist-IeRYu0zQ.js`),__vite__mapDeps([0,1])),Vl}function Ul(e,t){let[n,r]=(0,Z.useState)(null),[i,a]=(0,Z.useState)(null);return(0,Z.useEffect)(()=>{let n=!1,i=setTimeout(()=>{let i=n=>{try{let i=n(e,{bg:t?`#18181B`:`#FFFFFF`,fg:t?`#FAFAFA`:`#27272A`,transparent:!1,padding:32});if(typeof i!=`string`||i.length===0)throw Error(`Mermaid renderer returned no SVG`);r(i),a(null)}catch(e){zl.error(`Mermaid render error:`,e),r(null),a(e instanceof Error?e.message:String(e))}};Hl().then(e=>{n||i(e.renderMermaidSVG)},e=>{n||(zl.error(`Mermaid renderer failed to load:`,e),a(e instanceof Error?e.message:String(e)))})},200);return()=>{n=!0,clearTimeout(i)}},[e,t]),{svgOutput:n,errorMessage:i}}function Wl(e){let t=(0,Q.c)(70),{svgOutput:n,onClose:r}=e,{scale:i,offset:a,isDragging:o,containerRef:s,zoomIn:c,zoomOut:l,reset:u,onMouseDown:d,onMouseMove:f,onMouseUp:p}=Ll(),m,h;t[0]===r?(m=t[1],h=t[2]):(m=()=>{let e=function(e){e.key===`Escape`&&r()};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},h=[r],t[0]=r,t[1]=m,t[2]=h),(0,Z.useEffect)(m,h);let g;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(g=[],t[3]=g):g=t[3],(0,Z.useEffect)(Gl,g);let _;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(_=(0,$.jsx)(`span`,{className:G(U.compact,`font-mono text-muted-foreground`),children:`mermaid diagram`}),t[4]=_):_=t[4];let v,y;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(v=(0,$.jsx)(qt,{className:`h-3.5 w-3.5`}),y=(0,$.jsx)(`span`,{className:`sr-only`,children:`Zoom out`}),t[5]=v,t[6]=y):(v=t[5],y=t[6]);let b;t[7]===l?b=t[8]:(b=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(Hr,{variant:`ghost`,size:`icon-xs`,onClick:l,children:[v,y]})}),t[7]=l,t[8]=b);let x;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(x=(0,$.jsx)(Fr,{children:`Zoom out`}),t[9]=x):x=t[9];let S;t[10]===b?S=t[11]:(S=(0,$.jsxs)(Mi,{children:[b,x]}),t[10]=b,t[11]=S);let C;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(C=G(U.compact,`min-w-[3rem] px-2 py-1 font-mono text-muted-foreground hover:text-foreground hover:bg-muted rounded transition-colors`),t[12]=C):C=t[12];let w;t[13]===i?w=t[14]:(w=Math.round(i*100),t[13]=i,t[14]=w);let T;t[15]!==u||t[16]!==w?(T=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(`button`,{type:`button`,onClick:u,className:C,children:[w,`%`]})}),t[15]=u,t[16]=w,t[17]=T):T=t[17];let E;t[18]===Symbol.for(`react.memo_cache_sentinel`)?(E=(0,$.jsx)(Fr,{children:`Reset zoom`}),t[18]=E):E=t[18];let D;t[19]===T?D=t[20]:(D=(0,$.jsxs)(Mi,{children:[T,E]}),t[19]=T,t[20]=D);let O,k;t[21]===Symbol.for(`react.memo_cache_sentinel`)?(O=(0,$.jsx)(Se,{className:`h-3.5 w-3.5`}),k=(0,$.jsx)(`span`,{className:`sr-only`,children:`Zoom in`}),t[21]=O,t[22]=k):(O=t[21],k=t[22]);let A;t[23]===c?A=t[24]:(A=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(Hr,{variant:`ghost`,size:`icon-xs`,onClick:c,children:[O,k]})}),t[23]=c,t[24]=A);let j;t[25]===Symbol.for(`react.memo_cache_sentinel`)?(j=(0,$.jsx)(Fr,{children:`Zoom in`}),t[25]=j):j=t[25];let M;t[26]===A?M=t[27]:(M=(0,$.jsxs)(Mi,{children:[A,j]}),t[26]=A,t[27]=M);let N,P;t[28]===Symbol.for(`react.memo_cache_sentinel`)?(N=(0,$.jsx)(ye,{className:`h-3.5 w-3.5`}),P=(0,$.jsx)(`span`,{className:`sr-only`,children:`Reset view`}),t[28]=N,t[29]=P):(N=t[28],P=t[29]);let F;t[30]===u?F=t[31]:(F=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(Hr,{variant:`ghost`,size:`icon-xs`,onClick:u,children:[N,P]})}),t[30]=u,t[31]=F);let I;t[32]===Symbol.for(`react.memo_cache_sentinel`)?(I=(0,$.jsx)(Fr,{children:`Reset view`}),t[32]=I):I=t[32];let L;t[33]===F?L=t[34]:(L=(0,$.jsxs)(Mi,{children:[F,I]}),t[33]=F,t[34]=L);let R;t[35]===Symbol.for(`react.memo_cache_sentinel`)?(R=(0,$.jsx)(`div`,{className:`w-px h-4 bg-border mx-1`}),t[35]=R):R=t[35];let z,B;t[36]===Symbol.for(`react.memo_cache_sentinel`)?(z=(0,$.jsx)(nt,{className:`h-3.5 w-3.5`}),B=(0,$.jsx)(`span`,{className:`sr-only`,children:`Close`}),t[36]=z,t[37]=B):(z=t[36],B=t[37]);let V;t[38]===r?V=t[39]:(V=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(Hr,{variant:`ghost`,size:`icon-xs`,onClick:r,children:[z,B]})}),t[38]=r,t[39]=V);let H;t[40]===Symbol.for(`react.memo_cache_sentinel`)?(H=(0,$.jsx)(Fr,{children:`Close (Esc)`}),t[40]=H):H=t[40];let ee;t[41]===V?ee=t[42]:(ee=(0,$.jsxs)(Mi,{children:[V,H]}),t[41]=V,t[42]=ee);let te;t[43]!==D||t[44]!==M||t[45]!==L||t[46]!==ee||t[47]!==S?(te=(0,$.jsxs)(`div`,{className:`flex items-center justify-between px-4 py-3 bg-background/90 border-b border-border shrink-0`,children:[_,(0,$.jsxs)(`div`,{className:`flex items-center gap-1`,children:[S,D,M,L,R,ee]})]}),t[43]=D,t[44]=M,t[45]=L,t[46]=ee,t[47]=S,t[48]=te):te=t[48];let ne=o?`cursor-grabbing`:`cursor-grab`,re;t[49]===ne?re=t[50]:(re=G(`flex-1 overflow-hidden select-none`,ne),t[49]=ne,t[50]=re);let ie=`translate(${a.x}px, ${a.y}px) scale(${i})`,ae=o?`none`:`transform 0.1s ease-out`,oe;t[51]!==ie||t[52]!==ae?(oe={transform:ie,transformOrigin:`center center`,transition:ae},t[51]=ie,t[52]=ae,t[53]=oe):oe=t[53];let se;t[54]===n?se=t[55]:(se={__html:n},t[54]=n,t[55]=se);let ce;t[56]!==oe||t[57]!==se?(ce=(0,$.jsx)(`div`,{className:`w-full h-full flex items-center justify-center`,style:oe,dangerouslySetInnerHTML:se}),t[56]=oe,t[57]=se,t[58]=ce):ce=t[58];let le;t[59]!==s||t[60]!==d||t[61]!==f||t[62]!==p||t[63]!==re||t[64]!==ce?(le=(0,$.jsx)(`div`,{ref:s,className:re,onMouseDown:d,onMouseMove:f,onMouseUp:p,onMouseLeave:p,children:ce}),t[59]=s,t[60]=d,t[61]=f,t[62]=p,t[63]=re,t[64]=ce,t[65]=le):le=t[65];let ue;t[66]===Symbol.for(`react.memo_cache_sentinel`)?(ue=(0,$.jsx)(`div`,{className:G(U.compact,`shrink-0 px-4 py-2 text-center text-muted-foreground/60 bg-background/60 border-t border-border`),children:`Scroll to zoom · Drag to pan · Esc to close`}),t[66]=ue):ue=t[66];let W;return t[67]!==te||t[68]!==le?(W=(0,Ml.createPortal)((0,$.jsx)(Zo,{children:(0,$.jsxs)(`div`,{className:`fixed inset-0 z-50 flex flex-col bg-black/85 backdrop-blur-sm`,role:`dialog`,"aria-modal":`true`,"aria-label":`Diagram fullscreen view`,children:[te,le,ue]})}),document.body),t[67]=te,t[68]=le,t[69]=W):W=t[69],W}function Gl(){return document.body.style.overflow=`hidden`,Kl}function Kl(){document.body.style.overflow=``}function ql(e){let t=(0,Q.c)(57),{content:n,className:r}=e,[i,a]=(0,Z.useState)(!1),[o,s]=(0,Z.useState)(!1),{svgOutput:c,errorMessage:l}=Ul(n,Bl()),u=l!==null,d;t[0]===n?d=t[1]:(d=async function(){await navigator.clipboard.writeText(n),a(!0),setTimeout(()=>a(!1),2e3)},t[0]=n,t[1]=d);let f=d,p;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(p=G(U.compact,`font-mono text-muted-foreground`),t[2]=p):p=t[2];let m=u?`mermaid (render error)`:`mermaid diagram`,h;t[3]===m?h=t[4]:(h=(0,$.jsx)(`span`,{className:p,children:m}),t[3]=m,t[4]=h);let g;t[5]!==u||t[6]!==c?(g=c&&!u&&(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(Hr,{variant:`action`,size:`icon-xs`,onClick:()=>s(!0),children:[(0,$.jsx)(Le,{}),(0,$.jsx)(`span`,{className:`sr-only`,children:`View fullscreen`})]})}),(0,$.jsx)(Fr,{children:`View fullscreen`})]}),t[5]=u,t[6]=c,t[7]=g):g=t[7];let _;t[8]===i?_=t[9]:(_=i?(0,$.jsx)(W,{}):(0,$.jsx)(Ze,{}),t[8]=i,t[9]=_);let v;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(v=(0,$.jsx)(`span`,{className:`sr-only`,children:`Copy mermaid code`}),t[10]=v):v=t[10];let y;t[11]!==f||t[12]!==_?(y=(0,$.jsxs)(Hr,{variant:`action`,size:`icon-xs`,onClick:f,children:[_,v]}),t[11]=f,t[12]=_,t[13]=y):y=t[13];let b;t[14]!==g||t[15]!==y?(b=(0,$.jsxs)(`div`,{className:`flex items-center gap-1`,children:[g,y]}),t[14]=g,t[15]=y,t[16]=b):b=t[16];let x;t[17]!==h||t[18]!==b?(x=(0,$.jsxs)(`div`,{className:`flex items-center justify-between border-b border-border bg-muted/80 px-4 py-2`,children:[h,b]}),t[17]=h,t[18]=b,t[19]=x):x=t[19];let S=x;if(u){let e;t[20]===r?e=t[21]:(e=G(`group relative overflow-hidden rounded-lg border border-border bg-muted`,r),t[20]=r,t[21]=e);let i;t[22]===Symbol.for(`react.memo_cache_sentinel`)?(i=G(U.compact,`border-b border-border bg-background/50 px-4 py-2 text-destructive`),t[22]=i):i=t[22];let a;t[23]===l?a=t[24]:(a=(0,$.jsx)(`div`,{className:i,role:`alert`,children:l}),t[23]=l,t[24]=a);let o;t[25]===Symbol.for(`react.memo_cache_sentinel`)?(o=G(U.compact,`font-mono text-foreground leading-relaxed`),t[25]=o):o=t[25];let s;t[26]===n?s=t[27]:(s=(0,$.jsx)(`pre`,{className:`overflow-x-auto p-4 max-w-full`,children:(0,$.jsx)(`code`,{className:o,children:n})}),t[26]=n,t[27]=s);let c;return t[28]!==S||t[29]!==e||t[30]!==a||t[31]!==s?(c=(0,$.jsxs)(`div`,{className:e,children:[S,a,s]}),t[28]=S,t[29]=e,t[30]=a,t[31]=s,t[32]=c):c=t[32],c}if(!c){let e;t[33]===r?e=t[34]:(e=G(`group relative overflow-hidden rounded-lg border border-border bg-muted`,r),t[33]=r,t[34]=e);let n;t[35]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,$.jsx)(`div`,{className:G(U.compact,`p-4 text-muted-foreground`),children:`Rendering diagram…`}),t[35]=n):n=t[35];let i;return t[36]!==S||t[37]!==e?(i=(0,$.jsxs)(`div`,{className:e,children:[S,n]}),t[36]=S,t[37]=e,t[38]=i):i=t[38],i}let C;t[39]===r?C=t[40]:(C=G(`group relative overflow-hidden rounded-lg border border-border bg-muted`,r),t[39]=r,t[40]=C);let w;t[41]===Symbol.for(`react.memo_cache_sentinel`)?(w=()=>s(!0),t[41]=w):w=t[41];let T;t[42]===c?T=t[43]:(T=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,className:`block w-full text-left cursor-zoom-in p-4 max-w-full overflow-hidden [&_svg]:max-w-full [&_svg]:h-auto hover:bg-muted/70 transition-colors`,onClick:w,dangerouslySetInnerHTML:{__html:c}})}),t[42]=c,t[43]=T);let E;t[44]===Symbol.for(`react.memo_cache_sentinel`)?(E=(0,$.jsx)(Fr,{children:`Click to view fullscreen`}),t[44]=E):E=t[44];let D;t[45]===T?D=t[46]:(D=(0,$.jsxs)(Mi,{children:[T,E]}),t[45]=T,t[46]=D);let O;t[47]!==S||t[48]!==C||t[49]!==D?(O=(0,$.jsxs)(`div`,{className:C,children:[S,D]}),t[47]=S,t[48]=C,t[49]=D,t[50]=O):O=t[50];let k;t[51]!==o||t[52]!==c?(k=o&&(0,$.jsx)(Wl,{svgOutput:c,onClose:()=>s(!1)}),t[51]=o,t[52]=c,t[53]=k):k=t[53];let A;return t[54]!==O||t[55]!==k?(A=(0,$.jsxs)(Zo,{children:[O,k]}),t[54]=O,t[55]=k,t[56]=A):A=t[56],A}function Jl(e){let t=e.trim();if(t.startsWith(`/`)){let e=Fa().replace(/\/$/,``);return me(`${e}${t}`,e)}return me(t,Fa())}function Yl(e){let t=e.trim();if(t.startsWith(`/api/`))return!0;if(!/^https?:\/\//i.test(t))return!1;try{let e=new URL(t);if(_e(e.hostname))return!0;let n=new URL(Fa());return e.origin===n.origin&&e.pathname.startsWith(`/api/`)}catch{return!1}}function Xl(e){let t=e.trim();return!t||t.startsWith(`mailto:`)||t.startsWith(`tel:`)?!1:Pr()?/^https?:\/\//i.test(t)||t.startsWith(`/api/`):Yl(t)}function Zl(e){let t=Jl(e);return Za()&&!Pr()?(window.open(t,`_blank`,`noopener,noreferrer`),Promise.resolve()):ui(t)}function Ql(e){return!!(_e(e.hostname)||typeof window<`u`&&e.origin===window.location.origin)}function $l(e){return decodeURIComponent(e.replace(/^\/+/,``))}function eu(e){let t=e.trim();if(!t||t.includes(`
3
+ `))return null;let n=Ie(t);if(!n)return null;let r=t.toLowerCase();return r.startsWith(`http://`)||r.startsWith(`https://`)||r.startsWith(`/`)||r.includes(`/explorer/media`)||t.includes(`/`)||t.includes(`\\`)?{kind:n,src:t}:null}function tu(e,t){let n=e.trim();if(!n||n.startsWith(`data:`)||n.includes(`/explorer/media`))return null;let r;if(/^https?:\/\//i.test(n)){let e;try{e=new URL(n)}catch{return null}if(!Ql(e))return null;r=$l(e.pathname)}else r=$l(n);let i=Ie(r);return!i||t&&i!==t?null:{path:r,kind:i}}function nu(e,t){return Jl(`/api/threads/${encodeURIComponent(e)}/explorer/media?path=${encodeURIComponent(t)}`)}function ru(e){if(!e.startsWith(`/`))return!1;let t=e.split(`/`)[1]??``;return[`Users`,`tmp`,`var`,`private`,`Volumes`,`home`].includes(t)}function iu(e,t){if(!e||e.startsWith(`data:`))return e;if(t){if(ru(e)&&Ie(e))return nu(t,e);let n=tu(e);if(n)return nu(t,n.path)}return e.startsWith(`/`)?Jl(e):me(e,Fa())}function au(e,t){return iu(e,t)}function ou(e){let t=be(e);if(!t?.imageUrl&&!t?.imageData)return null;let n;if(typeof e==`object`&&e){let t=e;if(typeof t.model==`string`)n=t.model;else if(typeof t.content==`string`)try{let e=JSON.parse(t.content);typeof e.model==`string`&&(n=e.model)}catch{}}else if(typeof e==`string`)try{let t=JSON.parse(e.trim());typeof t.model==`string`&&(n=t.model)}catch{}return{imageUrl:t.imageUrl,imageData:t.imageData,model:n}}function su(e,t){let n=ou(e)??ou(t);if(!n?.imageUrl&&!n?.imageData)return null;let r,i=[e,t.content,t];for(let e of i)if(typeof e==`string`&&e.trim().startsWith(`{`))try{let t=JSON.parse(e);if(typeof t.savedPath==`string`){r=t.savedPath;break}}catch{}else if(e&&typeof e==`object`){let t=e;if(typeof t.savedPath==`string`){r=t.savedPath;break}if(typeof t.content==`string`)try{let e=JSON.parse(t.content);if(typeof e.savedPath==`string`){r=e.savedPath;break}}catch{}}return{...n,savedPath:r}}function cu(e){let t=(0,Q.c)(34),{imageUrl:n,imageData:r,alt:i,threadId:a}=e,o=i===void 0?`Generated image`:i,[s,c]=(0,Z.useState)(!1),l;t[0]!==r||t[1]!==n||t[2]!==a?(l=r?`data:image/png;base64,${r}`:au(n??``,a),t[0]=r,t[1]=n,t[2]=a,t[3]=l):l=t[3];let u=l,d;t[4]===u?d=t[5]:(d=async()=>{let e=dn(u)??`generated-image-${Date.now()}.png`,{path:t}=await Fo(u.startsWith(`data:`)?{imageData:u.replace(/^data:[^;]+;base64,/,``),filename:e}:{imageUrl:u,filename:e});ac({title:`Saved to downloads: ${t.split(`/`).pop()}`})},t[4]=u,t[5]=d);let f=d,p;t[6]===u?p=t[7]:(p=async()=>{await jo(u.startsWith(`data:`)?{imageData:u.replace(/^data:[^;]+;base64,/,``)}:{imageUrl:u}),c(!0),setTimeout(()=>c(!1),2e3)},t[6]=u,t[7]=p);let m=p;if(!u)return null;let h;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(h={maxHeight:`512px`},t[8]=h):h=t[8];let g;t[9]!==o||t[10]!==u?(g=(0,$.jsx)(`img`,{src:u,alt:o,className:`max-w-full rounded-lg block`,style:h}),t[9]=o,t[10]=u,t[11]=g):g=t[11];let _;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(_=(0,$.jsx)(Rt,{className:`h-3.5 w-3.5`}),t[12]=_):_=t[12];let v;t[13]===f?v=t[14]:(v=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`button`,{onClick:f,className:`flex items-center justify-center h-7 w-7 rounded-md bg-background/80 backdrop-blur-sm border border-border text-foreground hover:bg-background transition-colors`,children:_})}),t[13]=f,t[14]=v);let y;t[15]===Symbol.for(`react.memo_cache_sentinel`)?(y=(0,$.jsx)(Fr,{children:`Save image`}),t[15]=y):y=t[15];let b;t[16]===v?b=t[17]:(b=(0,$.jsxs)(Mi,{children:[v,y]}),t[16]=v,t[17]=b);let x;t[18]===s?x=t[19]:(x=s?(0,$.jsx)(W,{className:`h-3.5 w-3.5 text-green-500`}):(0,$.jsx)(Ze,{className:`h-3.5 w-3.5`}),t[18]=s,t[19]=x);let S;t[20]!==m||t[21]!==x?(S=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`button`,{onClick:m,className:`flex items-center justify-center h-7 w-7 rounded-md bg-background/80 backdrop-blur-sm border border-border text-foreground hover:bg-background transition-colors`,children:x})}),t[20]=m,t[21]=x,t[22]=S):S=t[22];let C=s?`Copied!`:`Copy to clipboard`,w;t[23]===C?w=t[24]:(w=(0,$.jsx)(Fr,{children:C}),t[23]=C,t[24]=w);let T;t[25]!==S||t[26]!==w?(T=(0,$.jsxs)(Mi,{children:[S,w]}),t[25]=S,t[26]=w,t[27]=T):T=t[27];let E;t[28]!==b||t[29]!==T?(E=(0,$.jsx)(`div`,{className:`absolute top-2 right-2 flex gap-1 opacity-0 group-hover/img:opacity-100 transition-opacity`,children:(0,$.jsxs)(Zo,{children:[b,T]})}),t[28]=b,t[29]=T,t[30]=E):E=t[30];let D;return t[31]!==E||t[32]!==g?(D=(0,$.jsxs)(`div`,{className:`mb-3 relative group/img inline-block max-w-full`,children:[g,E]}),t[31]=E,t[32]=g,t[33]=D):D=t[33],D}var lu=Ut(`chat.media`);function uu(e){if(!e)return`Unknown media error`;switch(e.code){case MediaError.MEDIA_ERR_ABORTED:return`Playback aborted`;case MediaError.MEDIA_ERR_NETWORK:return`Network error while fetching media`;case MediaError.MEDIA_ERR_DECODE:return`Media decode error`;case MediaError.MEDIA_ERR_SRC_NOT_SUPPORTED:return`Unsupported media format or inaccessible source`;default:return`Media error (code ${e.code})`}}async function du(e){try{let t=await fetch(e,{method:`GET`,headers:{Range:`bytes=0-0`}}),n=t.headers.get(`content-type`)??`unknown`,r=t.headers.get(`accept-ranges`)??`none`,i=t.headers.get(`content-range`),a=i?`, content-range=${i}`:``;return`HTTP ${t.status} ${t.statusText}, content-type=${n}, accept-ranges=${r}${a}`}catch(e){return e instanceof Error?e.message:`Fetch failed`}}function fu(e){lu.error(`Failed to load media`,{kind:e.kind,src:e.src,label:e.label,mediaError:e.mediaError?{code:e.mediaError.code,message:e.mediaError.message,label:uu(e.mediaError)}:void 0,probeResult:e.probeResult})}function pu(e,t,n,r){let[i,a]=(0,Z.useState)({objectUrl:null,loadError:null,loading:!1});return(0,Z.useEffect)(()=>{if(!t){a(e=>(e.objectUrl&&URL.revokeObjectURL(e.objectUrl),{objectUrl:null,loadError:null,loading:!1}));return}let i=!1;a(e=>(e.objectUrl&&URL.revokeObjectURL(e.objectUrl),{objectUrl:null,loadError:null,loading:!0}));async function o(){try{let t=await fetch(e);if(!t.ok){let t=await du(e);throw Error(t)}let n=await t.blob();if(i)return;let r=URL.createObjectURL(n);if(i){URL.revokeObjectURL(r);return}a({objectUrl:r,loadError:null,loading:!1})}catch(t){if(i)return;let o=t instanceof Error?t.message:await du(e);fu({kind:n,src:e,label:r,probeResult:o}),a({objectUrl:null,loadError:o,loading:!1})}}return o(),()=>{i=!0,a(e=>(e.objectUrl&&URL.revokeObjectURL(e.objectUrl),{objectUrl:null,loadError:null,loading:!1}))}},[e,t,n,r]),i}function mu(e){let t=(0,Q.c)(44),{src:n,label:r}=e,[i,a]=(0,Z.useState)(!1),[o,s]=(0,Z.useState)(!1),c=(0,Z.useRef)(null),{objectUrl:l,loadError:u,loading:d}=pu(n,i,`video`,r),f;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(f=function(e){a(e),e||(s(!1),c.current&&c.current.pause())},t[0]=f):f=t[0];let p=f,m;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(m=function(){s(hu)},t[1]=m):m=t[1];let h=m,g;t[2]!==r||t[3]!==n?(g=async function(e){let t=e.currentTarget.error;fu({kind:`video`,src:n,label:r,mediaError:t,probeResult:await du(n)})},t[2]=r,t[3]=n,t[4]=g):g=t[4];let _=g,v=r??`Video`,y;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(y=()=>a(!0),t[5]=y):y=t[5];let b=r?`Play ${r}`:`Play video`,x;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(x=(0,$.jsx)(`span`,{className:`flex h-14 w-14 items-center justify-center rounded-full bg-background/90 text-foreground shadow-sm`,children:(0,$.jsx)(Ae,{className:`h-7 w-7 fill-current`})}),t[6]=x):x=t[6];let S;t[7]===b?S=t[8]:(S=(0,$.jsx)(`button`,{type:`button`,onClick:y,"aria-label":b,className:`flex min-h-32 w-full items-center justify-center rounded-md bg-muted/30 transition-colors hover:bg-muted/50`,children:x}),t[7]=b,t[8]=S);let C=o?`h-dvh w-dvw max-w-none rounded-none`:`max-w-[min(92vw,960px)]`,w;t[9]===C?w=t[10]:(w=G(`gap-0 overflow-hidden border-none bg-black p-0 sm:rounded-lg`,C),t[9]=C,t[10]=w);let T;t[11]===v?T=t[12]:(T=(0,$.jsx)(qa,{className:`sr-only`,children:v}),t[11]=v,t[12]=T);let E;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(E=(0,$.jsx)(_i,{className:`sr-only`,children:`Video player`}),t[13]=E):E=t[13];let D=o?`Shrink video`:`Expand video`,O;t[14]===o?O=t[15]:(O=o?(0,$.jsx)(Qe,{className:`h-4 w-4`}):(0,$.jsx)(Le,{className:`h-4 w-4`}),t[14]=o,t[15]=O);let k;t[16]!==D||t[17]!==O?(k=(0,$.jsx)(`button`,{type:`button`,onClick:h,"aria-label":D,className:`flex h-7 w-7 items-center justify-center rounded-full text-white/90 transition-colors hover:bg-white/15 hover:text-white`,children:O}),t[16]=D,t[17]=O,t[18]=k):k=t[18];let A;t[19]===Symbol.for(`react.memo_cache_sentinel`)?(A=(0,$.jsxs)(Br,{className:`flex h-7 w-7 items-center justify-center rounded-full text-white/90 transition-colors hover:bg-white/15 hover:text-white`,children:[(0,$.jsx)(nt,{className:`h-4 w-4`}),(0,$.jsx)(`span`,{className:`sr-only`,children:`Close`})]}),t[19]=A):A=t[19];let j;t[20]===k?j=t[21]:(j=(0,$.jsxs)(`div`,{className:`absolute right-4 top-4 z-10 flex items-center gap-1`,children:[k,A]}),t[20]=k,t[21]=j);let M=o?`h-full`:`min-h-[240px]`,N;t[22]===M?N=t[23]:(N=G(`flex items-center justify-center p-3 pt-12 sm:p-4`,M),t[22]=M,t[23]=N);let P;t[24]!==o||t[25]!==_||t[26]!==u||t[27]!==d||t[28]!==l?(P=d?(0,$.jsx)(`p`,{className:G(U.compact,`text-white/80`),children:`Loading video...`}):u?(0,$.jsxs)(`p`,{className:G(U.compact,`px-4 text-center text-destructive`),children:[`Could not load video: `,u]}):l?(0,$.jsx)(`video`,{ref:c,src:l,controls:!0,autoPlay:!0,playsInline:!0,className:G(`max-w-full rounded`,o?`max-h-full`:`max-h-[80vh]`),onError:_}):null,t[24]=o,t[25]=_,t[26]=u,t[27]=d,t[28]=l,t[29]=P):P=t[29];let F;t[30]!==N||t[31]!==P?(F=(0,$.jsx)(`div`,{className:N,children:P}),t[30]=N,t[31]=P,t[32]=F):F=t[32];let I;t[33]!==T||t[34]!==j||t[35]!==F||t[36]!==w?(I=(0,$.jsxs)(Ir,{hideClose:!0,className:w,children:[T,E,j,F]}),t[33]=T,t[34]=j,t[35]=F,t[36]=w,t[37]=I):I=t[37];let L;t[38]!==i||t[39]!==I?(L=(0,$.jsx)(Ni,{open:i,onOpenChange:p,children:I}),t[38]=i,t[39]=I,t[40]=L):L=t[40];let R;return t[41]!==L||t[42]!==S?(R=(0,$.jsxs)($.Fragment,{children:[S,L]}),t[41]=L,t[42]=S,t[43]=R):R=t[43],R}function hu(e){return!e}function gu(e){let t=(0,Q.c)(12),{src:n,label:r}=e,{objectUrl:i,loadError:a,loading:o}=pu(n,!0,`audio`,r),s;t[0]!==r||t[1]!==n?(s=async function(e){let t=e.currentTarget.error;fu({kind:`audio`,src:n,label:r,mediaError:t,probeResult:await du(n)})},t[0]=r,t[1]=n,t[2]=s):s=t[2];let c=s,l;t[3]!==c||t[4]!==o||t[5]!==i?(l=o?(0,$.jsx)(`p`,{className:G(U.compact,`text-muted-foreground`),children:`Loading audio...`}):i?(0,$.jsx)(`audio`,{src:i,controls:!0,preload:`metadata`,className:`w-full`,onError:c}):null,t[3]=c,t[4]=o,t[5]=i,t[6]=l):l=t[6];let u;t[7]===a?u=t[8]:(u=a?(0,$.jsxs)(`p`,{className:G(U.compact,`mt-2 text-destructive`),children:[`Could not load audio: `,a]}):null,t[7]=a,t[8]=u);let d;return t[9]!==l||t[10]!==u?(d=(0,$.jsxs)($.Fragment,{children:[l,u]}),t[9]=l,t[10]=u,t[11]=d):d=t[11],d}function _u(e){let t=(0,Q.c)(13),{src:n,kind:r,label:i}=e;if(!n)return null;let a=r===`video`?k:Te,o=r===`video`?`p-2`:`p-3`,s;t[0]===o?s=t[1]:(s=G(`mt-2 max-w-full overflow-hidden rounded-lg border border-border bg-background`,o),t[0]=o,t[1]=s);let c;t[2]!==a||t[3]!==i?(c=i?(0,$.jsxs)(`div`,{className:`mb-2 flex items-center gap-2 text-muted-foreground`,children:[(0,$.jsx)(a,{className:`h-4 w-4`}),(0,$.jsx)(`span`,{className:G(U.compact,`truncate`),children:i})]}):null,t[2]=a,t[3]=i,t[4]=c):c=t[4];let l;t[5]!==r||t[6]!==i||t[7]!==n?(l=r===`video`?(0,$.jsx)(mu,{src:n,label:i}):(0,$.jsx)(gu,{src:n,label:i}),t[5]=r,t[6]=i,t[7]=n,t[8]=l):l=t[8];let u;return t[9]!==s||t[10]!==c||t[11]!==l?(u=(0,$.jsxs)(`div`,{className:s,children:[c,l]}),t[9]=s,t[10]=c,t[11]=l,t[12]=u):u=t[12],u}var vu=[`graph`,`flowchart`,`sequenceDiagram`,`classDiagram`,`stateDiagram`,`erDiagram`,`journey`,`gantt`,`pie`,`quadrantChart`,`requirementDiagram`,`gitgraph`,`mindmap`,`timeline`,`zenuml`,`sankey`,`block`,`architecture`,`c4`,`packet`,`circuit`],yu=/```mermaid\s*\n([\s\S]*?)\n```/;function bu(e){return e.split(`
4
+ `).find(e=>e.trim().length>0)??``}function xu(e){let t=e.trim().toLowerCase();return t.length===0?!1:vu.some(e=>t===e.toLowerCase()||t.startsWith(e.toLowerCase()+` `))}function Su(e){return!e||typeof e!=`string`?!1:yu.test(e)?!0:xu(bu(e))}function Cu(e){let t=yu.exec(e);return t?t[1].trim():xu(bu(e))?e.trim():null}function wu(e){let t=(0,Q.c)(14),{href:n,children:r}=e,i;t[0]===n?i=t[1]:(i=Jl(n),t[0]=n,t[1]=i);let a=i,o;t[2]===n?o=t[3]:(o=Xl(n),t[2]=n,t[3]=o);let s=o,c;t[4]!==n||t[5]!==s?(c=function(e){s&&(e.preventDefault(),Zl(n))},t[4]=n,t[5]=s,t[6]=c):c=t[6];let l=c,u;t[7]===s?u=t[8]:(u=s?{}:{target:`_blank`,rel:`noopener noreferrer`},t[7]=s,t[8]=u);let d;return t[9]!==r||t[10]!==l||t[11]!==a||t[12]!==u?(d=(0,$.jsx)(`a`,{href:a,onClick:l,className:`text-inherit underline underline-offset-2 hover:text-inherit/80`,...u,children:r}),t[9]=r,t[10]=l,t[11]=a,t[12]=u,t[13]=d):d=t[13],d}var Tu=/^(\s*)([-*+]|\d+\.)\s+(.*)$/,Eu=100,Du=/^!\[([^\]]*)\]\(([^)]+)\)\s*$/,Ou=/[.,!?;:]+$/,ku=(0,Z.memo)(function({content:e,className:t,enableMermaid:n=!1,threadId:r,compact:i=!1,bodyClassName:a}){let o=jl(e,Eu),s=(0,Z.useRef)(null),c=(0,Z.useMemo)(()=>{if(!o||typeof o!=`string`)return s.current=null,[];let e=ed(o,n,s.current);return s.current=e,e.blocks},[o,n]);return c.length===0?null:(0,$.jsx)(`div`,{className:G(`prose-custom min-w-0 break-words`,t),children:c.map((e,t)=>(0,$.jsx)(`div`,{className:Uu(t,c,i),children:(0,$.jsx)(rd,{block:e,threadId:r,compact:i,bodyClassName:a})},t))})});function Au(e){let t=e.match(Du);return t?{alt:t[1],src:t[2]}:null}function ju(e,t,n){let r=e?`mt-0 space-y-0.5`:`mt-0 space-y-1`,i=n?`mt-1`:``;return t?G(r,i,`pl-6`):G(r,i,`pl-6 list-outside overflow-visible list-disc`)}function Mu(e){return e.replace(/\t/g,` `).length}function Nu(e){return/^\d+\.$/.test(e)?Number.parseInt(e,10):1}function Pu(e,t){return Mu(e)>t}function Fu(e,t){let n=e[t]?.match(Tu);if(!n)return{block:{type:`paragraph`,text:``},nextIndex:t+1};let[,r,i,a]=n,o={ordered:/^\d+\.$/.test(i),start:Nu(i),items:[{text:a,children:[]}]},s=[{indent:Mu(r),item:o.items[0]}],c=t+1;for(;c<e.length;){let t=Iu(e,c,s,o);if(c=t.nextIndex,t.stop)break}return{block:{type:`list`,list:o},nextIndex:c}}function Iu(e,t,n,r){let i=e[t];return Tu.test(i)?Lu(e,t,n,r):i.trim()===``?Vu(e,t):Hu(e,t,n)}function Lu(e,t,n,r){let[,i,a,o]=e[t].match(Tu),s=Mu(i),c=/^\d+\.$/.test(a),l={text:o,children:[]};if(Ru(n,s),n.length===0)return{nextIndex:t,stop:!0};let u=n[n.length-1],d=s===u.indent,f=Pu(i,u.indent);return d?zu(n,r,c,s,l,t):f?Bu(n,u,c,a,s,l,t):{nextIndex:t,stop:!0}}function Ru(e,t){for(;e.length>0&&t<e[e.length-1].indent;)e.pop()}function zu(e,t,n,r,i,a){let o=e[e.length-2]?.childList??t;return o.ordered===n?(o.items.push(i),e[e.length-1]={indent:r,item:i},{nextIndex:a+1,stop:!1}):{nextIndex:a,stop:!0}}function Bu(e,t,n,r,i,a,o){let s=t.childList;return(!s||s.ordered!==n)&&(s={ordered:n,start:Nu(r),items:[]},t.item.children.push(s),t.childList=s),s.items.push(a),e.push({indent:i,item:a}),{nextIndex:o+1,stop:!1}}function Vu(e,t){let n=e[t+1];return!n||!Tu.test(n)?{nextIndex:t,stop:!0}:{nextIndex:t+1,stop:!1}}function Hu(e,t,n){let r=Mu(e[t].match(/^(\s*)/)?.[1]??``),i=n[n.length-1];return r>i.indent?(i.item.text=`${i.item.text}\n${e[t].trim()}`,{nextIndex:t+1,stop:!1}):{nextIndex:t,stop:!0}}function Uu(e,t,n=!1){if(e===0)return``;let r=t[e-1],i=t[e];return r.type===`list`||i.type===`list`?``:n?`mt-2`:`mt-3`}function Wu(e,t,n){let r=e[t].trimStart().slice(3).trim(),i=[],a=t+1;for(;a<e.length&&!e[a].trimStart().startsWith("```");)i.push(e[a]),a++;let o=i.join(`
5
+ `);return n&&(r===`mermaid`||r===``&&Su(o))?{block:{type:`mermaid`,code:o},nextIndex:a+1}:{block:{type:`code`,language:r,code:o},nextIndex:a+1}}function Gu(e){let t=e.match(/^(#{1,6})(\s.*)?$/);return t?{type:`heading`,level:t[1].length,text:t[2]?t[2].trim():``}:null}function Ku(e){return/^(---|\*\*\*|___)/.test(e.trim())}function qu(e,t){let n=e[t];if(!n.includes(`|`)||t+1>=e.length||!e[t+1].match(/^\|?\s*[-:]+/))return null;let r=n.split(`|`).map(e=>e.trim()).filter(Boolean),i=t+2,a=[];for(;i<e.length&&e[i].includes(`|`);)a.push(e[i].split(`|`).map(e=>e.trim()).filter(Boolean)),i++;return{block:{type:`table`,headers:r,rows:a},nextIndex:i}}function Ju(e,t){let n=[],r=t;for(;r<e.length&&e[r].startsWith(`> `);)n.push(e[r].slice(2)),r++;return{block:{type:`blockquote`,text:n.join(`
6
+ `)},nextIndex:r}}function Yu(e){let t=Au(e);return t?{type:`image`,...t}:null}function Xu(e){let t=eu(e);return t?{type:`media`,kind:t.kind,src:t.src}:null}function Zu(e,t,n){let r=t,i=[];for(;r<e.length&&e[r].trim()!==``&&!e[r].startsWith(`#`)&&!e[r].startsWith("```")&&!e[r].startsWith(`> `)&&!Tu.test(e[r]);)i.push(e[r]),r++;let a=i.join(`
7
+ `);if(n&&Su(a)){let e=Cu(a);if(e)return{block:{type:`mermaid`,code:e},nextIndex:r}}return{block:{type:`paragraph`,text:a},nextIndex:r}}function Qu(e){let t=[],n=0;for(let r=0;r<e.length;r++)t.push(n),n+=e[r].length+ +(r<e.length-1);return t}function $u(e,t=!1){let n=e.split(`
8
+ `),r=Qu(n),i=[],a=[],o=0;for(;o<n.length;){let e=n[o],s=r[o]??0;if(e.trimStart().startsWith("```")){let{block:e,nextIndex:r}=Wu(n,o,t);i.push(e),a.push(s),o=r;continue}let c=Gu(e);if(c){i.push(c),a.push(s),o++;continue}if(Ku(e)){i.push({type:`hr`}),a.push(s),o++;continue}let l=qu(n,o);if(l){i.push(l.block),a.push(s),o=l.nextIndex;continue}if(e.startsWith(`> `)){let{block:e,nextIndex:t}=Ju(n,o);i.push(e),a.push(s),o=t;continue}if(Tu.test(e)){let{block:e,nextIndex:t}=Fu(n,o);i.push(e),a.push(s),o=t;continue}if(e.trim()===``){o++;continue}let u=Yu(e);if(u){i.push(u),a.push(s),o++;continue}let d=Xu(e);if(d){i.push(d),a.push(s),o++;continue}let{block:f,nextIndex:p}=Zu(n,o,t);i.push(f),a.push(s),o=p}return{blocks:i,blockStarts:a}}function ed(e,t,n){if(n&&n.enableMermaid===t&&n.md===e&&n.blocks.length>0)return n;if(n&&n.enableMermaid===t&&n.blocks.length>0&&e.startsWith(n.md)){let r=n.blockStarts[n.blockStarts.length-1]??0,i=n.blocks.slice(0,-1),a=n.blockStarts.slice(0,-1),o=$u(e.slice(r),t);return{md:e,enableMermaid:t,blocks:[...i,...o.blocks],blockStarts:[...a,...o.blockStarts.map(e=>e+r)]}}let r=$u(e,t);return{md:e,enableMermaid:t,blocks:r.blocks,blockStarts:r.blockStarts}}function td(e,t){return`${t}-${e.text}`}function nd(e){let t=(0,Q.c)(21),{list:n,compact:r,threadId:i,inlineCodeClass:a,bodyClassName:o,nested:s}=e,c=s===void 0?!1:s,l=o??(r?U.caption:U.body),u=n.ordered?`ol`:`ul`,d;t[0]!==l||t[1]!==r||t[2]!==n.ordered||t[3]!==c?(d=G(l,ju(r,n.ordered,c)),t[0]=l,t[1]=r,t[2]=n.ordered,t[3]=c,t[4]=d):d=t[4];let f=n.ordered?n.start:void 0,p;if(t[5]!==o||t[6]!==r||t[7]!==a||t[8]!==n.items||t[9]!==i){let e;t[11]!==o||t[12]!==r||t[13]!==a||t[14]!==i?(e=(e,t)=>(0,$.jsx)(`li`,{children:(0,$.jsxs)(`div`,{className:`min-w-0`,children:[(0,$.jsx)(id,{text:e.text,threadId:i,inlineCodeClass:a}),e.children.map((n,s)=>(0,$.jsx)(nd,{list:n,compact:r,threadId:i,inlineCodeClass:a,bodyClassName:o,nested:!0},`${td(e,t)}-child-${s}`))]})},td(e,t)),t[11]=o,t[12]=r,t[13]=a,t[14]=i,t[15]=e):e=t[15],p=n.items.map(e),t[5]=o,t[6]=r,t[7]=a,t[8]=n.items,t[9]=i,t[10]=p}else p=t[10];let m;return t[16]!==u||t[17]!==d||t[18]!==f||t[19]!==p?(m=(0,$.jsx)(u,{className:d,start:f,children:p}),t[16]=u,t[17]=d,t[18]=f,t[19]=p,t[20]=m):m=t[20],m}var rd=(0,Z.memo)(function(e){let t=(0,Q.c)(88),{block:n,threadId:r,compact:i,bodyClassName:a}=e,o=i===void 0?!1:i,s=a??(o?U.caption:U.body),c;t[0]!==a||t[1]!==o?(c=a?G(a,`font-mono`):o?G(U.compact,`font-mono`):U.mono,t[0]=a,t[1]=o,t[2]=c):c=t[2];let l=c;switch(n.type){case`heading`:{let e=`h${n.level}`,i,a;if(t[3]!==e||t[4]!==n.level||t[5]!==o){let r=o?{1:G(U.caption,`font-semibold`),2:G(U.caption,`font-semibold`),3:G(U.body,`font-semibold`),4:G(U.body,`font-semibold`),5:G(U.compact,`font-semibold`),6:G(U.compact,`font-semibold`)}:{1:U.sectionTitle,2:U.subSectionTitle,3:U.subSectionTitle,4:U.subSectionTitle,5:U.sectionSubtitle,6:U.sectionSubtitle};i=e,a=G(r[n.level]),t[3]=e,t[4]=n.level,t[5]=o,t[6]=i,t[7]=a}else i=t[6],a=t[7];let s;t[8]!==n.text||t[9]!==l||t[10]!==r?(s=(0,$.jsx)(id,{text:n.text,threadId:r,inlineCodeClass:l}),t[8]=n.text,t[9]=l,t[10]=r,t[11]=s):s=t[11];let c;return t[12]!==i||t[13]!==a||t[14]!==s?(c=(0,$.jsx)(i,{className:a,children:s}),t[12]=i,t[13]=a,t[14]=s,t[15]=c):c=t[15],c}case`code`:{let e;return t[16]!==n.code||t[17]!==n.language||t[18]!==o?(e=(0,$.jsx)(od,{language:n.language,code:n.code,compact:o}),t[16]=n.code,t[17]=n.language,t[18]=o,t[19]=e):e=t[19],e}case`blockquote`:{let e;t[20]===s?e=t[21]:(e=G(s,`border-l-2 border-border pl-4 text-muted-foreground italic`),t[20]=s,t[21]=e);let i;t[22]!==n.text||t[23]!==l||t[24]!==r?(i=(0,$.jsx)(id,{text:n.text,threadId:r,inlineCodeClass:l}),t[22]=n.text,t[23]=l,t[24]=r,t[25]=i):i=t[25];let a;return t[26]!==e||t[27]!==i?(a=(0,$.jsx)(`blockquote`,{className:e,children:i}),t[26]=e,t[27]=i,t[28]=a):a=t[28],a}case`list`:{let e;return t[29]!==n.list||t[30]!==a||t[31]!==o||t[32]!==l||t[33]!==r?(e=(0,$.jsx)(nd,{list:n.list,compact:o,threadId:r,inlineCodeClass:l,bodyClassName:a}),t[29]=n.list,t[30]=a,t[31]=o,t[32]=l,t[33]=r,t[34]=e):e=t[34],e}case`paragraph`:{let e;t[35]===s?e=t[36]:(e=G(s,`mt-0 whitespace-pre-wrap break-words`),t[35]=s,t[36]=e);let i;t[37]!==n.text||t[38]!==l||t[39]!==r?(i=(0,$.jsx)(id,{text:n.text,threadId:r,inlineCodeClass:l}),t[37]=n.text,t[38]=l,t[39]=r,t[40]=i):i=t[40];let a;return t[41]!==e||t[42]!==i?(a=(0,$.jsx)(`p`,{className:e,children:i}),t[41]=e,t[42]=i,t[43]=a):a=t[43],a}case`hr`:{let e;return t[44]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,$.jsx)(`hr`,{className:`border-border`}),t[44]=e):e=t[44],e}case`table`:{let e;t[45]===s?e=t[46]:(e=G(s,`w-full`),t[45]=s,t[46]=e);let i;if(t[47]!==n.headers||t[48]!==l||t[49]!==r){let e;t[51]!==l||t[52]!==r?(e=(e,t)=>(0,$.jsx)(`th`,{className:`px-3 py-2 text-left font-medium`,children:(0,$.jsx)(id,{text:e,threadId:r,inlineCodeClass:l})},t),t[51]=l,t[52]=r,t[53]=e):e=t[53],i=n.headers.map(e),t[47]=n.headers,t[48]=l,t[49]=r,t[50]=i}else i=t[50];let a;t[54]===i?a=t[55]:(a=(0,$.jsx)(`thead`,{children:(0,$.jsx)(`tr`,{className:`border-b border-table-border`,children:i})}),t[54]=i,t[55]=a);let o;if(t[56]!==n.rows||t[57]!==l||t[58]!==r){let e;t[60]!==l||t[61]!==r?(e=(e,t)=>(0,$.jsx)(`tr`,{children:e.map((e,t)=>(0,$.jsx)(`td`,{className:`px-3 py-2`,children:(0,$.jsx)(id,{text:e,threadId:r,inlineCodeClass:l})},t))},t),t[60]=l,t[61]=r,t[62]=e):e=t[62],o=n.rows.map(e),t[56]=n.rows,t[57]=l,t[58]=r,t[59]=o}else o=t[59];let c;t[63]===o?c=t[64]:(c=(0,$.jsx)(`tbody`,{children:o}),t[63]=o,t[64]=c);let u;return t[65]!==e||t[66]!==a||t[67]!==c?(u=(0,$.jsx)(`div`,{className:`overflow-x-auto rounded-md border border-table-border max-w-full`,children:(0,$.jsxs)(`table`,{className:e,children:[a,c]})}),t[65]=e,t[66]=a,t[67]=c,t[68]=u):u=t[68],u}case`mermaid`:{let e;return t[69]===n.code?e=t[70]:(e=(0,$.jsx)(ql,{content:n.code}),t[69]=n.code,t[70]=e),e}case`image`:{let e;t[71]!==n.src||t[72]!==r?(e=au(n.src,r),t[71]=n.src,t[72]=r,t[73]=e):e=t[73];let i=n.alt||`Image`,a;return t[74]!==e||t[75]!==i?(a=(0,$.jsx)(cu,{imageUrl:e,alt:i}),t[74]=e,t[75]=i,t[76]=a):a=t[76],a}case`media`:{let e;t[77]!==n.src||t[78]!==r?(e=iu(n.src,r),t[77]=n.src,t[78]=r,t[79]=e):e=t[79];let i=e;if(n.kind===`image`){let e;return t[80]===i?e=t[81]:(e=(0,$.jsx)(cu,{imageUrl:i,alt:`Image`}),t[80]=i,t[81]=e),e}let a;t[82]===n.src?a=t[83]:(a=n.src.split(/[/\\]/).pop(),t[82]=n.src,t[83]=a);let o=a,s;return t[84]!==n.kind||t[85]!==o||t[86]!==i?(s=(0,$.jsx)(_u,{src:i,kind:n.kind,label:o}),t[84]=n.kind,t[85]=o,t[86]=i,t[87]=s):s=t[87],s}default:return null}}),id=(0,Z.memo)(function(e){let t=(0,Q.c)(11),{text:n,threadId:r,inlineCodeClass:i}=e,a=i===void 0?U.mono:i,o;t[0]===n?o=t[1]:(o=ad(n),t[0]=n,t[1]=o);let s=o,c;if(t[2]!==a||t[3]!==s||t[4]!==r){let e;t[6]!==a||t[7]!==r?(e=(e,t)=>{switch(e.type){case`bold`:return(0,$.jsx)(`strong`,{className:`font-semibold`,children:e.text},t);case`italic`:return(0,$.jsx)(`em`,{children:e.text},t);case`strikethrough`:return(0,$.jsx)(`del`,{className:`text-muted-foreground`,children:e.text},t);case`code`:return(0,$.jsx)(`code`,{className:G(a,`rounded bg-muted/20 py-0.5`),children:e.text},t);case`link`:return(0,$.jsx)(wu,{href:e.href,children:e.text},t);case`image`:return(0,$.jsx)(cu,{imageUrl:au(e.src,r),alt:e.alt||`Image`},t);default:return(0,$.jsx)(`span`,{children:e.text},t)}},t[6]=a,t[7]=r,t[8]=e):e=t[8],c=s.map(e),t[2]=a,t[3]=s,t[4]=r,t[5]=c}else c=t[5];let l;return t[9]===c?l=t[10]:(l=(0,$.jsx)($.Fragment,{children:c}),t[9]=c,t[10]=l),l});function ad(e){let t=[],n=/(`[^`]+`)|(!\[[^\]]*\]\([^)]+\))|(\*\*[^*]+\*\*)|(\*[^*]+\*)|(__[^_]+__)|(_[^_]+_)|(~~[^~]+~~)|(\[[^\]]+\]\([^)]+\))|(https?:\/\/[^\s<>"`]+)/gi,r=0,i;for(;(i=n.exec(e))!==null;){i.index>r&&t.push({type:`text`,text:e.slice(r,i.index)});let n=i[0];if(n.startsWith("`"))t.push({type:`code`,text:n.slice(1,-1)});else if(n.startsWith(`![`)){let e=n.match(/!\[([^\]]*)\]\(([^)]+)\)/);e&&t.push({type:`image`,alt:e[1],src:e[2]})}else if(n.startsWith(`**`)||n.startsWith(`__`))t.push({type:`bold`,text:n.slice(2,-2)});else if(n.startsWith(`~~`))t.push({type:`strikethrough`,text:n.slice(2,-2)});else if(n.startsWith(`*`)||n.startsWith(`_`))t.push({type:`italic`,text:n.slice(1,-1)});else if(n.startsWith(`[`)){let e=n.match(/\[([^\]]+)\]\(([^)]+)\)/);e&&t.push({type:`link`,text:e[1],href:e[2]})}else if(/^https?:\/\//i.test(n)){let e=n.replace(Ou,``),r=n.slice(e.length);e&&t.push({type:`link`,text:e,href:e}),r&&t.push({type:`text`,text:r})}r=i.index+n.length}return r<e.length&&t.push({type:`text`,text:e.slice(r)}),t.length>0?t:[{type:`text`,text:e}]}function od(e){let t=(0,Q.c)(27),{language:n,code:r,compact:i}=e,a=i===void 0?!1:i,[o,s]=(0,Z.useState)(!1),c;t[0]===r?c=t[1]:(c=async function(){await navigator.clipboard.writeText(r),s(!0),setTimeout(()=>s(!1),2e3)},t[0]=r,t[1]=c);let l=c,u;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(u=G(U.compact,`text-muted-foreground font-mono`),t[2]=u):u=t[2];let d=n||`text`,f;t[3]===d?f=t[4]:(f=(0,$.jsx)(`span`,{className:u,children:d}),t[3]=d,t[4]=f);let p;t[5]===o?p=t[6]:(p=o?(0,$.jsx)(W,{}):(0,$.jsx)(Ze,{}),t[5]=o,t[6]=p);let m;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(m=(0,$.jsx)(`span`,{className:`sr-only`,children:`Copy code`}),t[7]=m):m=t[7];let h;t[8]!==l||t[9]!==p?(h=(0,$.jsxs)(Hr,{variant:`action`,size:`icon-xs`,onClick:l,children:[p,m]}),t[8]=l,t[9]=p,t[10]=h):h=t[10];let g;t[11]!==f||t[12]!==h?(g=(0,$.jsxs)(`div`,{className:`flex items-center justify-between border-b border-border bg-muted/80 px-4 py-2`,children:[f,h]}),t[11]=f,t[12]=h,t[13]=g):g=t[13];let _=a?`p-2`:`p-4`,v;t[14]===_?v=t[15]:(v=G(`overflow-x-auto max-w-full`,_),t[14]=_,t[15]=v);let y;t[16]===a?y=t[17]:(y=G(a?G(U.compact,`font-mono`):U.mono,`text-foreground leading-relaxed`),t[16]=a,t[17]=y);let b;t[18]!==r||t[19]!==y?(b=(0,$.jsx)(`code`,{className:y,children:r}),t[18]=r,t[19]=y,t[20]=b):b=t[20];let x;t[21]!==v||t[22]!==b?(x=(0,$.jsx)(`pre`,{className:v,children:b}),t[21]=v,t[22]=b,t[23]=x):x=t[23];let S;return t[24]!==x||t[25]!==g?(S=(0,$.jsxs)(`div`,{className:`group relative overflow-hidden rounded-lg border border-border bg-muted`,children:[g,x]}),t[24]=x,t[25]=g,t[26]=S):S=t[26],S}var sd=2e5;function cd(e){return e.split(/[/\\]/).pop()||void 0}function ld(e){return e>=1e6?`${(e/1e6).toFixed(1)} MB`:e>=1e3?`${(e/1e3).toFixed(1)} KB`:`${e} chars`}var ud=(0,Z.memo)(function(e){let t=(0,Q.c)(29),{content:n,threadId:r,className:i,enableMermaid:a}=e,o=a===void 0?!0:a,s;t[0]===n?s=t[1]:(s=eu(n),t[0]=n,t[1]=s);let c=s;if(c){let e;t[2]!==c.src||t[3]!==r?(e=iu(c.src,r),t[2]=c.src,t[3]=r,t[4]=e):e=t[4];let n=e;if(c.kind===`image`){let e;return t[5]===n?e=t[6]:(e=(0,$.jsx)(cu,{imageUrl:n,alt:`Image`}),t[5]=n,t[6]=e),e}let i=c.kind,a;t[7]===c.src?a=t[8]:(a=cd(c.src),t[7]=c.src,t[8]=a);let o;return t[9]!==c.kind||t[10]!==n||t[11]!==a?(o=(0,$.jsx)(_u,{src:n,kind:i,label:a}),t[9]=c.kind,t[10]=n,t[11]=a,t[12]=o):o=t[12],o}let l=typeof n==`string`?n.length:0,u=l>sd,d;t[13]!==n||t[14]!==u?(d=u?n.slice(0,sd):n,t[13]=n,t[14]=u,t[15]=d):d=t[15];let f=d,p;t[16]!==l||t[17]!==u?(p=u&&(0,$.jsxs)(`div`,{className:G(U.caption,`mb-2 rounded-md border border-border bg-muted/40 px-3 py-2 text-muted-foreground`),children:[`This message contains a large embedded payload (`,ld(l),`). It was trimmed to the first `,ld(sd),` so the conversation can load. The full content is still preserved in the conversation history.`]}),t[16]=l,t[17]=u,t[18]=p):p=t[18];let m;t[19]===f?m=t[20]:(m=ds(f),t[19]=f,t[20]=m);let h=i??U.conversationBody,g;t[21]!==o||t[22]!==m||t[23]!==h||t[24]!==r?(g=(0,$.jsx)(ku,{content:m,enableMermaid:o,className:h,bodyClassName:U.conversationBody,threadId:r}),t[21]=o,t[22]=m,t[23]=h,t[24]=r,t[25]=g):g=t[25];let _;return t[26]!==p||t[27]!==g?(_=(0,$.jsxs)($.Fragment,{children:[p,g]}),t[26]=p,t[27]=g,t[28]=_):_=t[28],_});function dd(e){return`data:${cn(e.fileName,e.mimeType)};base64,${e.content}`}function fd(e){let t=cn(e.fileName,e.mimeType);return t.startsWith(`image/`)?`image`:t.startsWith(`video/`)?`video`:t.startsWith(`audio/`)?`audio`:Ie(e.fileName)||`file`}function pd(e){let t=(0,Q.c)(6),{icon:n,label:r}=e,i;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(i=G(U.compact,`flex items-center gap-1 rounded-md bg-muted px-2 py-1 text-muted-foreground`),t[0]=i):i=t[0];let a;t[1]===r?a=t[2]:(a=(0,$.jsx)(`span`,{className:`truncate`,children:r}),t[1]=r,t[2]=a);let o;return t[3]!==n||t[4]!==a?(o=(0,$.jsxs)(`div`,{className:i,children:[n,a]}),t[3]=n,t[4]=a,t[5]=o):o=t[5],o}function md(e){let t=(0,Q.c)(14),{attachment:n}=e,r=fd(n),i;t[0]===n?i=t[1]:(i=dd(n),t[0]=n,t[1]=i);let a=i;if(r===`image`){let e;return t[2]!==n.fileName||t[3]!==a?(e=(0,$.jsx)(`div`,{className:`mt-1 max-w-full overflow-hidden rounded-lg border border-border bg-background`,children:(0,$.jsx)(`img`,{src:a,alt:n.fileName,className:`block max-h-80 max-w-full object-contain`})}),t[2]=n.fileName,t[3]=a,t[4]=e):e=t[4],e}if(r===`video`){let e;return t[5]!==n.fileName||t[6]!==a?(e=(0,$.jsx)(_u,{src:a,kind:`video`,label:n.fileName}),t[5]=n.fileName,t[6]=a,t[7]=e):e=t[7],e}if(r===`audio`){let e;return t[8]!==n.fileName||t[9]!==a?(e=(0,$.jsx)(_u,{src:a,kind:`audio`,label:n.fileName}),t[8]=n.fileName,t[9]=a,t[10]=e):e=t[10],e}let o;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,$.jsx)(It,{className:`h-2.5 w-2.5`}),t[11]=o):o=t[11];let s;return t[12]===n.fileName?s=t[13]:(s=(0,$.jsx)(pd,{icon:o,label:n.fileName}),t[12]=n.fileName,t[13]=s),s}function hd(e){let t=(0,Q.c)(4),{attachments:n}=e,r;t[0]===n?r=t[1]:(r=n.map(gd),t[0]=n,t[1]=r);let i;return t[2]===r?i=t[3]:(i=(0,$.jsx)(`div`,{className:`mt-1 space-y-2`,children:r}),t[2]=r,t[3]=i),i}function gd(e){let t=fd(e),n=`${e.fileName}:${cn(e.fileName,e.mimeType)}`;return t===`file`?(0,$.jsx)(md,{attachment:e},n):(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(pd,{icon:t===`audio`?(0,$.jsx)(Te,{className:`h-2.5 w-2.5`}):t===`video`?(0,$.jsx)(k,{className:`h-2.5 w-2.5`}):(0,$.jsx)(It,{className:`h-2.5 w-2.5`}),label:e.fileName}),(0,$.jsx)(md,{attachment:e})]},n)}var _d=Ut(`gitops.timing`);function vd(e){let t=[],n=performance.now();async function r(n,r){let i=performance.now();try{return await r()}finally{let r=Math.round(performance.now()-i);t.push({step:n,duration:r}),_d.debug(`${e} step`,{step:n,duration:r})}}function i(n,r,i){t.push({step:n,duration:r}),_d.debug(`${e} step`,{step:n,duration:r,...i?{detail:i}:{}})}function a(r){let i=Math.round(performance.now()-n),a=t.reduce((e,t)=>t.duration>=e.duration?t:e,{step:`none`,duration:0}),o=t.map(e=>`${e.step}:${e.duration}`).join(` `);_d.debug(`${e} summary`,{duration:i,slowestStep:a.step,slowestDuration:a.duration,breakdown:o,...r?{detail:r}:{}})}return{step:r,record:i,summary:a}}var yd=Ut(`gitops.unified-status`),bd=3e4,xd={hasChanges:!1,changedFilesCount:0,hasUnpushedCommits:!1,currentBranch:``,hasRemoteBranch:!1,isOnGitHub:!1,remoteUrl:``,canCreateRepo:!1,repoUrl:void 0,status:`Up to date`,defaultBranch:null,prExists:!1,prUrl:void 0,prState:void 0,commitsAheadOfDefault:!1,defaultBranchAhead:0,defaultBranchBehind:0},Sd=new Map,Cd=new Map;function wd(e,t){let n=Sd.get(e);if(n)for(let e of n)e(t)}function Td(e,t){let n=Sd.get(e);return n||(n=new Set,Sd.set(e,n)),n.add(t),()=>{n.delete(t),n.size===0&&Sd.delete(e)}}function Ed(e){return`unified-git-status-${e}`}function Dd(e){return Ma.getSync(Ed(e))}function Od(e){let[t,n]=(0,Z.useState)(xd),[r,i]=(0,Z.useState)(!1),a=(0,Z.useRef)(void 0),o=(0,Z.useRef)(0),s=(0,Z.useCallback)(e=>{(0,Z.startTransition)(()=>{n(e)})},[]),c=(0,Z.useRef)(s);c.current=s;let l=(0,Z.useCallback)(async(t=!1)=>{if(!e)return;let n=++o.current,r=vd(`hook fetch thread=${e} force=${t}`),a=setTimeout(()=>{o.current===n&&i(!0)},100);try{let i=Ed(e),a=performance.now(),c=Dd(e);r.record(`local-cache-check`,Math.round(performance.now()-a),`result=${c?`hit`:`miss`}`),t&&(Ma.invalidate(i),r.record(`invalidate-local-cache`,0));let l=await r.step(`ttl-cache-get`,()=>Ma.get(i,()=>wr(e,t,!1),bd));if(o.current!==n){r.summary(`stale-request`);return}await r.step(`update-state`,async()=>{s(l),wd(e,l)}),r.summary(`branch=${l.currentBranch} changes=${l.changedFilesCount} prExists=${l.prExists}`)}catch(e){if(o.current!==n)return;yd.error(`Failed to fetch unified git status`,e),r.summary(`error`)}finally{clearTimeout(a),o.current===n&&i(!1)}},[e,s]),u=(0,Z.useRef)(l);return u.current=l,(0,Z.useEffect)(()=>{if(e)return Td(e,e=>{c.current(e)})},[e]),(0,Z.useEffect)(()=>{if(!e)return;let t=0;function n(){if(document.visibilityState!==`visible`)return;let e=Date.now();e-t<500||(t=e,u.current(!1))}return document.addEventListener(`visibilitychange`,n),window.addEventListener(`focus`,n),()=>{document.removeEventListener(`visibilitychange`,n),window.removeEventListener(`focus`,n)}},[e]),(0,Z.useEffect)(()=>{if(o.current+=1,i(!1),!e){a.current=void 0,(0,Z.startTransition)(()=>{n(xd)});return}let t=a.current!==e,r=Dd(e);t&&(yd.debug(`Active thread changed`,{previousThreadId:a.current??`none`,threadId:e}),a.current=e),(0,Z.startTransition)(()=>{n(r??xd)}),yd.debug(`Loaded unified git status from local cache`,{threadId:e,cache:r?`hit`:`miss`});let s=e,l=!1;function d(){if(l)return;let e=Cd.get(s);if(e){yd.debug(`Initial unified git status fetch already in flight`,{threadId:s}),e.then(()=>{if(l)return;let e=Dd(s);e&&c.current(e)});return}yd.debug(`Starting initial unified git status fetch`,{threadId:s});let t=u.current(!1).finally(()=>{yd.debug(`Initial unified git status fetch settled`,{threadId:s}),Cd.delete(s)});Cd.set(s,t)}return d(),()=>{l=!0}},[e]),(0,Z.useMemo)(()=>({hasChanges:t.hasChanges,changedFilesCount:t.changedFilesCount,hasUnpushedCommits:t.hasUnpushedCommits,hasRemoteBranch:t.hasRemoteBranch,currentBranch:t.currentBranch,isOnGitHub:t.isOnGitHub,remoteUrl:t.remoteUrl,canCreateRepo:t.canCreateRepo,repoUrl:t.repoUrl,status:t.status,defaultBranch:t.defaultBranch,prExists:t.prExists,prUrl:t.prUrl,prState:t.prState,commitsAheadOfDefault:t.commitsAheadOfDefault,defaultBranchAhead:t.defaultBranchAhead,defaultBranchBehind:t.defaultBranchBehind,isRefreshing:r,fetchUnifiedStatus:l}),[t,r,l])}var kd=(0,Z.createContext)(void 0);function Ad(e){let t=(0,Q.c)(8),{threadId:n,fetchUnifiedStatus:r}=e,i=X(Nd),a=X(Md),o=X(jd),{triggerReviewRefresh:s}=mc(),c,l;return t[0]!==a||t[1]!==r||t[2]!==i||t[3]!==o||t[4]!==n||t[5]!==s?(c=()=>{if(!(!n||n!==o)&&!i&&a.includes(n)){let e=setTimeout(()=>{r(!0),s(n)},1e3);return()=>clearTimeout(e)}},l=[n,o,i,a,r,s],t[0]=a,t[1]=r,t[2]=i,t[3]=o,t[4]=n,t[5]=s,t[6]=c,t[7]=l):(c=t[6],l=t[7]),(0,Z.useEffect)(c,l),null}function jd(e){return e.selectedThreadId}function Md(e){return e.completedThreadIds}function Nd(e){return e.isStreaming}function Pd(e){let t=(0,Q.c)(7),{threadId:n,children:r}=e,i=Od(n),a;t[0]!==n||t[1]!==i.fetchUnifiedStatus?(a=(0,$.jsx)(Ad,{threadId:n,fetchUnifiedStatus:i.fetchUnifiedStatus}),t[0]=n,t[1]=i.fetchUnifiedStatus,t[2]=a):a=t[2];let o;return t[3]!==r||t[4]!==a||t[5]!==i?(o=(0,$.jsxs)(kd.Provider,{value:i,children:[a,r]}),t[3]=r,t[4]=a,t[5]=i,t[6]=o):o=t[6],o}function Fd(){let e=(0,Z.useContext)(kd);if(e===void 0)throw Error(`useGitStatus must be used within a GitStatusProvider`);return e}function Id(e,t){let n=e.findIndex(e=>e.sender===`user`&&e.checkpointRef===t);return n===-1?e:e.slice(0,n)}function Ld(e){let[t,n]=(0,Z.useState)(!1),{fetchUnifiedStatus:r}=Fd(),i=Ks(),a=Vs();async function o(o){if(!(!e||t)){n(!0);try{let t=await va(e,o);if(t.success){i({type:Y.SetMessages,messages:Id(a.getState().messages,o)}),i({type:Y.ResetStream,threadId:e,paneId:`primary`});let t=await ci(e);i({type:Y.SetMessages,messages:t.messages}),ac({title:`Checkpoint restored`,description:`Working tree and conversation restored to before this prompt.`}),r(!0)}else ac({title:`Restore failed`,description:t.error??`Could not restore checkpoint.`,variant:`destructive`})}catch(e){ac({title:`Restore failed`,description:e instanceof Error?e.message:`Unknown error`,variant:`destructive`})}finally{n(!1)}}}return{isRestoring:t,restore:o}}function Rd(e){let t=(0,Q.c)(7),n=e===void 0?2e3:e,[r,i]=(0,Z.useState)(!1),a,o;t[0]!==r||t[1]!==n?(a=()=>{if(!r)return;let e=setTimeout(()=>i(!1),n);return()=>clearTimeout(e)},o=[r,n],t[0]=r,t[1]=n,t[2]=a,t[3]=o):(a=t[2],o=t[3]),(0,Z.useEffect)(a,o);let s;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(s=function(){i(!0)},t[4]=s):s=t[4];let c=s,l;return t[5]===r?l=t[6]:(l={copied:r,markCopied:c},t[5]=r,t[6]=l),l}function zd(e){return e.length<=32?e:`${e.slice(0,32)}...`}function Bd(e){let t=(0,Q.c)(64),{message:n,threadId:r,showCheckpointRestore:i,checkpointRestoreTooltip:a}=e,o=i===void 0?!1:i,[s,c]=(0,Z.useState)(!1),l=n.sender===`user`,{isRestoring:u,restore:d}=Ld(r),{copied:f,markCopied:p}=Rd(),m=l&&(o||!!a),h;t[0]===n.timestamp?h=t[1]:(h=n.timestamp?new Date(n.timestamp).toLocaleTimeString([],{hour:`2-digit`,minute:`2-digit`}):``,t[0]=n.timestamp,t[1]=h);let g=h,_;t[2]===n.content?_=t[3]:(_=zd(n.content),t[2]=n.content,t[3]=_);let v=_,y;t[4]!==u||t[5]!==n.checkpointRef||t[6]!==o?(y=function(){!n.checkpointRef||!o||u||c(!0)},t[4]=u,t[5]=n.checkpointRef,t[6]=o,t[7]=y):y=t[7];let b=y,x;t[8]!==n.checkpointRef||t[9]!==d||t[10]!==o?(x=async function(){!n.checkpointRef||!o||(await d(n.checkpointRef),c(!1))},t[8]=n.checkpointRef,t[9]=d,t[10]=o,t[11]=x):x=t[11];let S=x,C;t[12]!==p||t[13]!==n.content?(C=async function(){try{await navigator.clipboard.writeText(n.content),p()}catch(e){let t=e;ac({title:`Copy failed`,description:t instanceof Error?t.message:`Could not copy prompt.`,variant:`destructive`})}},t[12]=p,t[13]=n.content,t[14]=C):C=t[14];let w=C,T=l&&`flex-row-reverse`,E;t[15]===T?E=t[16]:(E=G(`flex items-center gap-2`,T),t[15]=T,t[16]=E);let D;t[17]===Symbol.for(`react.memo_cache_sentinel`)?(D=G(U.compact,`font-medium text-foreground`),t[17]=D):D=t[17];let O;t[18]!==l||t[19]!==n.attributionLabel||t[20]!==n.mode?(O=l?n.attributionLabel??`You`:qe(n.mode),t[18]=l,t[19]=n.attributionLabel,t[20]=n.mode,t[21]=O):O=t[21];let k;t[22]===O?k=t[23]:(k=(0,$.jsx)(`span`,{className:D,children:O}),t[22]=O,t[23]=k);let A;t[24]!==a||t[25]!==w||t[26]!==b||t[27]!==f||t[28]!==u||t[29]!==l||t[30]!==m||t[31]!==o?(A=l&&(0,$.jsx)(Zo,{children:(0,$.jsxs)(`div`,{className:`inline-flex items-center gap-1 opacity-0 group-hover:opacity-100 transition-opacity`,children:[(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`span`,{tabIndex:0,className:`inline-flex`,children:(0,$.jsx)(`button`,{onClick:w,"aria-label":f?`Prompt copied`:`Copy prompt`,className:`flex items-center justify-center h-5 w-5 rounded-md text-muted-foreground transition-colors hover:text-foreground hover:bg-muted`,children:f?(0,$.jsx)(W,{className:`h-3 w-3 text-green-500`}):(0,$.jsx)(Ze,{className:`h-3 w-3`})})})}),(0,$.jsx)(Fr,{side:`left`,children:f?`Copied prompt`:`Copy prompt`})]}),m&&(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`span`,{tabIndex:0,className:`inline-flex`,children:(0,$.jsx)(`button`,{onClick:o?b:void 0,disabled:!o||u,"aria-label":a??`Restore checkpoint`,className:`flex items-center justify-center h-5 w-5 rounded-md text-muted-foreground transition-colors hover:text-foreground hover:bg-muted disabled:opacity-50 disabled:hover:text-muted-foreground disabled:hover:bg-transparent`,children:(0,$.jsx)(ye,{className:G(`h-3 w-3`,u&&`animate-spin`)})})})}),(0,$.jsx)(Fr,{side:`left`,children:a??`Restore checkpoint`})]})]})}),t[24]=a,t[25]=w,t[26]=b,t[27]=f,t[28]=u,t[29]=l,t[30]=m,t[31]=o,t[32]=A):A=t[32];let j;t[33]===g?j=t[34]:(j=g&&(0,$.jsxs)(`span`,{className:G(U.compact,`flex items-center gap-1 text-muted-foreground opacity-0 group-hover:opacity-100 transition-opacity`),children:[(0,$.jsx)(it,{className:`h-2.5 w-2.5`}),g]}),t[33]=g,t[34]=j);let M;t[35]===n.model?M=t[36]:(M=n.model&&(0,$.jsxs)(`span`,{className:G(U.compact,`flex items-center gap-1 text-muted-foreground opacity-0 group-hover:opacity-100 transition-opacity`),children:[(0,$.jsx)(Kt,{className:`h-2.5 w-2.5`}),Ko(n.model)]}),t[35]=n.model,t[36]=M);let N;t[37]===n.metadata?N=t[38]:(N=n.metadata?.processingTimeMs&&(0,$.jsxs)(`span`,{className:G(U.compact,`flex items-center gap-1 text-muted-foreground opacity-0 group-hover:opacity-100 transition-opacity`),children:[(0,$.jsx)($t,{className:`h-2.5 w-2.5`}),n.metadata.processingTimeMs>=6e4?`${Math.floor(n.metadata.processingTimeMs/6e4)}m ${Math.round(n.metadata.processingTimeMs%6e4/1e3)}s`:`${Math.round(n.metadata.processingTimeMs/1e3)}s`]}),t[37]=n.metadata,t[38]=N);let P;t[39]===n.metadata?P=t[40]:(P=(n.metadata?.tokenCount||n.metadata?.estimatedCost)&&(0,$.jsxs)(`span`,{className:G(U.compact,`text-muted-foreground opacity-0 group-hover:opacity-100 transition-opacity`),children:[n.metadata.tokenCount?`${n.metadata.tokenCount.toLocaleString()} tokens`:null,n.metadata.tokenCount&&n.metadata.estimatedCost?` · `:null,n.metadata.estimatedCost?Tt(n.metadata.estimatedCost):null]}),t[39]=n.metadata,t[40]=P);let F;t[41]!==k||t[42]!==A||t[43]!==j||t[44]!==M||t[45]!==N||t[46]!==P||t[47]!==E?(F=(0,$.jsxs)(`div`,{className:E,children:[k,A,j,M,N,P]}),t[41]=k,t[42]=A,t[43]=j,t[44]=M,t[45]=N,t[46]=P,t[47]=E,t[48]=F):F=t[48];let I;t[49]===Symbol.for(`react.memo_cache_sentinel`)?(I=(0,$.jsx)(sc,{children:`Restore Checkpoint`}),t[49]=I):I=t[49];let L;t[50]===v?L=t[51]:(L=(0,$.jsxs)(fc,{children:[I,(0,$.jsxs)(oc,{children:[`Restore to the checkpoint before “`,v,`” was started?`]})]}),t[50]=v,t[51]=L);let R;t[52]===Symbol.for(`react.memo_cache_sentinel`)?(R=(0,$.jsx)(dc,{children:`Cancel`}),t[52]=R):R=t[52];let z;t[53]===S?z=t[54]:(z=(0,$.jsxs)(uc,{children:[R,(0,$.jsx)(lc,{onClick:S,children:`Restore checkpoint`})]}),t[53]=S,t[54]=z);let B;t[55]!==L||t[56]!==z?(B=(0,$.jsxs)(cc,{children:[L,z]}),t[55]=L,t[56]=z,t[57]=B):B=t[57];let V;t[58]!==s||t[59]!==B?(V=(0,$.jsx)(pc,{open:s,onOpenChange:c,children:B}),t[58]=s,t[59]=B,t[60]=V):V=t[60];let H;return t[61]!==F||t[62]!==V?(H=(0,$.jsxs)($.Fragment,{children:[F,V]}),t[61]=F,t[62]=V,t[63]=H):H=t[63],H}function Vd(e){let t=(0,Q.c)(19),{text:n,children:r}=e,{copied:i,markCopied:a}=Rd(),o;t[0]!==a||t[1]!==n?(o=async function(){try{await navigator.clipboard.writeText(n),a()}catch(e){let t=e;ac({title:`Copy failed`,description:t instanceof Error?t.message:`Could not copy summary.`,variant:`destructive`})}},t[0]=a,t[1]=n,t[2]=o):o=t[2];let s=o,c=i?`Summary copied`:`Copy summary`,l;t[3]===i?l=t[4]:(l=i?(0,$.jsx)(W,{className:`h-3 w-3 text-green-500`}):(0,$.jsx)(Ze,{className:`h-3 w-3`}),t[3]=i,t[4]=l);let u;t[5]!==s||t[6]!==c||t[7]!==l?(u=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,onClick:s,"aria-label":c,className:`flex items-center justify-center h-6 w-6 rounded-md text-muted-foreground transition-colors hover:text-foreground hover:bg-muted`,children:l})}),t[5]=s,t[6]=c,t[7]=l,t[8]=u):u=t[8];let d=i?`Copied!`:`Copy summary`,f;t[9]===d?f=t[10]:(f=(0,$.jsx)(Fr,{side:`left`,children:d}),t[9]=d,t[10]=f);let p;t[11]!==u||t[12]!==f?(p=(0,$.jsx)(Zo,{children:(0,$.jsx)(`div`,{className:`absolute top-0 right-0 z-10`,children:(0,$.jsxs)(Mi,{children:[u,f]})})}),t[11]=u,t[12]=f,t[13]=p):p=t[13];let m;t[14]===r?m=t[15]:(m=(0,$.jsx)(`div`,{className:`min-w-0 pr-8`,children:r}),t[14]=r,t[15]=m);let h;return t[16]!==p||t[17]!==m?(h=(0,$.jsxs)(`div`,{className:`relative min-w-0`,children:[p,m]}),t[16]=p,t[17]=m,t[18]=h):h=t[18],h}function Hd(e){let t=(0,Q.c)(32),{src:n,threadId:r}=e,{copied:i,markCopied:a}=Rd(),o;t[0]!==n||t[1]!==r?(o=n.startsWith(`data:`)?n:au(n,r),t[0]=n,t[1]=r,t[2]=o):o=t[2];let s=o,c;t[3]===s?c=t[4]:(c=async function(){let e=`generated-image-${Date.now()}.png`,{path:t}=await Fo(s.startsWith(`data:`)?{imageData:s.replace(/^data:[^;]+;base64,/,``),filename:e}:{imageUrl:s,filename:e});ac({title:`Saved to downloads: ${t.split(`/`).pop()}`})},t[3]=s,t[4]=c);let l=c,u;t[5]!==s||t[6]!==a?(u=async function(){await jo(s.startsWith(`data:`)?{imageData:s.replace(/^data:[^;]+;base64,/,``)}:{imageUrl:s}),a()},t[5]=s,t[6]=a,t[7]=u):u=t[7];let d=u,f;t[8]===s?f=t[9]:(f=(0,$.jsx)(`img`,{src:s,alt:`Generated image`,className:`max-w-full rounded-lg border border-border block max-h-[512px]`}),t[8]=s,t[9]=f);let p;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(p=(0,$.jsx)(Rt,{className:`h-3.5 w-3.5`}),t[10]=p):p=t[10];let m;t[11]===l?m=t[12]:(m=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`button`,{onClick:l,className:`flex items-center justify-center h-7 w-7 rounded-md bg-background/80 backdrop-blur-sm border border-border text-foreground hover:bg-background transition-colors`,children:p})}),t[11]=l,t[12]=m);let h;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(h=(0,$.jsx)(Fr,{children:`Save image`}),t[13]=h):h=t[13];let g;t[14]===m?g=t[15]:(g=(0,$.jsxs)(Mi,{children:[m,h]}),t[14]=m,t[15]=g);let _;t[16]===i?_=t[17]:(_=i?(0,$.jsx)(W,{className:`h-3.5 w-3.5 text-green-500`}):(0,$.jsx)(Ze,{className:`h-3.5 w-3.5`}),t[16]=i,t[17]=_);let v;t[18]!==d||t[19]!==_?(v=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`button`,{onClick:d,className:`flex items-center justify-center h-7 w-7 rounded-md bg-background/80 backdrop-blur-sm border border-border text-foreground hover:bg-background transition-colors`,children:_})}),t[18]=d,t[19]=_,t[20]=v):v=t[20];let y=i?`Copied!`:`Copy to clipboard`,b;t[21]===y?b=t[22]:(b=(0,$.jsx)(Fr,{children:y}),t[21]=y,t[22]=b);let x;t[23]!==v||t[24]!==b?(x=(0,$.jsxs)(Mi,{children:[v,b]}),t[23]=v,t[24]=b,t[25]=x):x=t[25];let S;t[26]!==x||t[27]!==g?(S=(0,$.jsx)(`div`,{className:`absolute top-2 right-2 flex gap-1 opacity-0 group-hover/img:opacity-100 transition-opacity`,children:(0,$.jsxs)(Zo,{children:[g,x]})}),t[26]=x,t[27]=g,t[28]=S):S=t[28];let C;return t[29]!==S||t[30]!==f?(C=(0,$.jsxs)(`div`,{className:`mt-2 relative group/img inline-block max-w-full`,children:[f,S]}),t[29]=S,t[30]=f,t[31]=C):C=t[31],C}function Ud(e){return e.startsWith(`/settings`)||e===`/review`}function Wd(){let e=(0,Q.c)(14),{windows:t,addWindow:n,revealWindow:r,isPrimaryChatOpen:i}=gc(),{setActiveMainTab:a,triggerReviewRefresh:o,triggerTasksRefresh:s}=mc(),{triggerExplorerRefresh:c}=vc(),l=X(Gd),u=Yn(),d=Gn(),f;e[0]!==n||e[1]!==i||e[2]!==d.pathname||e[3]!==u||e[4]!==r||e[5]!==l||e[6]!==a||e[7]!==c||e[8]!==o||e[9]!==s||e[10]!==t?(f=(e,f)=>{let p=f===void 0?{}:f,m=p.reuseExisting??!0,h=p.navigateToChat??!0;if(a(`chat`),h&&Ud(d.pathname)&&u(`/`),e===`explorer`&&c(),e===`review`&&o(l),e===`tasks`&&s(),e===`chat`)return!i||m?(r(Ct),Ct):n(e);if(m){let n=t.find(t=>t.panelId===e);if(n)return r(n.id),n.id}return n(e)},e[0]=n,e[1]=i,e[2]=d.pathname,e[3]=u,e[4]=r,e[5]=l,e[6]=a,e[7]=c,e[8]=o,e[9]=s,e[10]=t,e[11]=f):f=e[11];let p=f,m;return e[12]===p?m=e[13]:(m={openChatDockPanel:p},e[12]=p,e[13]=m),m}function Gd(e){return e.selectedThreadId}function Kd(e){return h(e)}function qd(e){let t=e.toLowerCase();return t===`find`||t===`web_search`||t.includes(`search`)||t.includes(`grep`)}function Jd(e,t){let n=e.replace(/\s+/g,` `).trim();return n.length<=t?n:`${n.slice(0,t)}...`}function Yd(e){let t=e.replace(/\s+/g,` `).trim();return{fullText:t,label:Jd(t,50)}}function Xd(e){return typeof e==`string`?e:typeof e==`object`&&e?JSON.stringify(e,null,2):String(e)}var Zd=32;function Qd(e,t){if(e===void 0)return null;let n;return n=typeof e==`string`?e:typeof e==`number`||typeof e==`boolean`?String(e):e===null?`null`:JSON.stringify(e),n.length>t?`${n.slice(0,t)}...`:n}function $d(e,t=Zd,n=[]){if(!e)return null;let r=new Set(n),i=[];for(let[n,a]of Object.entries(e)){if(r.has(n))continue;let e=Qd(a,t);e&&i.push(`${n}: ${e}`)}return i.length>0?i.join(`, `):null}function ef(e,t){if(!t||!e||typeof e!=`string`)return e;try{let n=t.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`);return e.replace(new RegExp(n,`g`),`.`)}catch{return e}}var tf=new RegExp(String.raw`\x1B\[[0-?]*[ -/]*[@-~]`,`g`),nf=new RegExp(String.raw`\x1B\].*?(?:\x07|\x1B\\)`,`g`),rf=new RegExp(String.raw`\x1B[@-_]`,`g`),af=/\r(?!\n)/g,of=/\\n/g;function sf(e){return e.replace(nf,``).replace(tf,``).replace(rf,``)}function cf(e){return sf(e).replace(of,`
9
+ `).replace(af,`
10
+ `)}function lf(e){let t=e.trim();if(t.startsWith(`{`)&&t.endsWith(`}`)||t.startsWith(`[`)&&t.endsWith(`]`))try{return JSON.parse(t)}catch{return e}return e}function uf(e){if(typeof e!=`object`||!e)return e;if(Array.isArray(e))return e.map(uf);let t={};for(let[n,r]of Object.entries(e))if(typeof r==`string`){let e=lf(r);t[n]=typeof e==`object`?uf(e):r}else t[n]=uf(r);return t}function df(e){if(e==null||typeof e!=`string`)return``;let t=e;return t=t.replace(/\\\\n/g,`
12
11
  `),t=t.replace(/\\\\"/g,`"`),t=t.replace(/\\n/g,`
13
- `),t=t.replace(/\\"/g,`"`),t}function uf(e){if(e==null)return``;let t=typeof e==`object`&&e?cf(e):e;return of(lf(typeof t==`string`?t:t==null?``:JSON.stringify(t,null,2)))}function df(e){if(!e)return`browser`;let t=typeof e.action==`string`?e.action:`browser`;if(typeof e.url==`string`&&e.url.trim())return`${t} · ${e.url.trim()}`;if(typeof e.ref==`string`&&e.ref.trim())return`${t} · ${e.ref.trim()}`;if(typeof e.text==`string`&&e.text.trim())return`${t} · ${e.text.trim()}`;if(typeof e.selector==`string`&&e.selector.trim())return`${t} · ${e.selector.trim()}`;if(typeof e.preset==`string`&&e.preset.trim())return`${t} · ${e.preset.trim()}`;if(typeof e.script==`string`&&e.script.trim()){let n=e.script.trim();return n.length>40?`${t} · ${n.slice(0,40)}…`:`${t} · ${n}`}return t}function ff(e){return typeof e!=`object`||!e||Array.isArray(e)?e:v(e)}function pf(e){try{return uf(ff(JSON.parse(e)))}catch{return uf(e)}}function mf(e){return e===`get_observation`}function hf(e){return e===`read_skill`||e===`read_skill_reference`}function gf(e){return e.includes(`edit`)}function _f(e,t,n){return!t&&(n||e.includes(`read`)||e.includes(`write`)||e.includes(`edit`))}function vf(e,t,n,r){let i=`default`;return e===`bash`||e.includes(`terminal`)||e.includes(`shell`)?i=`bash`:e===`fetch`?i=`fetch`:t?i=`skill`:n?i=`file`:e===`find`||e===`web_search`||e.includes(`search`)||e.includes(`grep`)?i=`search`:e===`agent`||e.includes(`subagent`)||r?i=`agent`:e===`todo`?i=`todo`:e===`generate_image`?i=`imageGen`:e===`find_images`?i=`findImages`:e===`browser`&&(i=`browser`),i}function yf(e){return e??`Unknown Tool`}function bf(e){return e??`unknown`}function xf(e){return{inputObj:e&&typeof e==`object`?e:null,hasDescription:typeof e==`object`&&!!e&&`description`in e}}function Sf(e,t){let n=e?t?.subagent_type:void 0;return n==null?null:JSON.stringify(n)}function Cf(e,t){return e===`agent`&&t&&typeof t.agentName==`string`?t.agentName:null}function wf(e,t,n){return e?null:Qd(Jd(t),n)}function Tf(e,t,n){let r=e?t?.prompt:null;return Qd(typeof r==`string`?r:null,n)}function Ef(e,t){return Qd(e&&typeof e.command==`string`?e.command:null,t)}function Df(e,t){return e===`fetch`&&t&&typeof t.url==`string`?t.url:null}function Of(e){return e&&typeof e.pattern==`string`?e.pattern:null}function kf(e,t){return e===`web_search`&&t&&typeof t.query==`string`?t.query:null}function Af(e){return e&&typeof e.lang==`string`?e.lang:null}function jf(e,t){return Qd(e&&typeof e.path==`string`?e.path:null,t)}function Mf(e,t){let n=e.toLowerCase(),r=mf(n),i=t&&typeof t.offset==`number`?t.offset:null,a=t&&typeof t.limit==`number`?t.limit:null,o=r?i??1:i,s=r?a??200:a,c=hf(n),l=_f(n,c,r),u=gf(n),d=l&&t&&typeof t.path==`string`?t.path:null,f=d?d.split(`/`).pop()??d:null,p=u&&t&&typeof t.oldText==`string`?t.oldText:null,m=u&&t&&typeof t.newText==`string`?t.newText:null;return{lowerName:n,isObservationTool:r,isSkillTool:c,isFileTool:l,isEditTool:u,offset:o,limit:s,filePath:d,fileDisplayName:f,editOldText:p,editNewText:m,editDeletedLineCount:p===null?null:p.split(`
12
+ `),t=t.replace(/\\"/g,`"`),t}function ff(e){if(e==null)return``;let t=typeof e==`object`&&e?uf(e):e;return cf(df(typeof t==`string`?t:t==null?``:JSON.stringify(t,null,2)))}function pf(e){if(!e)return`browser`;let t=typeof e.action==`string`?e.action:`browser`;if(typeof e.url==`string`&&e.url.trim())return`${t} · ${e.url.trim()}`;if(typeof e.ref==`string`&&e.ref.trim())return`${t} · ${e.ref.trim()}`;if(typeof e.text==`string`&&e.text.trim())return`${t} · ${e.text.trim()}`;if(typeof e.selector==`string`&&e.selector.trim())return`${t} · ${e.selector.trim()}`;if(typeof e.preset==`string`&&e.preset.trim())return`${t} · ${e.preset.trim()}`;if(typeof e.script==`string`&&e.script.trim()){let n=e.script.trim();return n.length>40?`${t} · ${n.slice(0,40)}…`:`${t} · ${n}`}return t}function mf(e){return typeof e!=`object`||!e||Array.isArray(e)?e:v(e)}function hf(e){try{return ff(mf(JSON.parse(e)))}catch{return ff(e)}}function gf(e){return e===`get_observation`}function _f(e){return e===`read_skill`||e===`read_skill_reference`}function vf(e){return e.includes(`edit`)}function yf(e,t,n){return!t&&(n||e.includes(`read`)||e.includes(`write`)||e.includes(`edit`))}function bf(e,t,n,r){let i=`default`;return e===`bash`||e.includes(`terminal`)||e.includes(`shell`)?i=`bash`:e===`fetch`?i=`fetch`:t?i=`skill`:n?i=`file`:e===`find`||e===`web_search`||e.includes(`search`)||e.includes(`grep`)?i=`search`:e===`agent`||e.includes(`subagent`)||r?i=`agent`:e===`todo`?i=`todo`:e===`generate_image`?i=`imageGen`:e===`find_images`?i=`findImages`:e===`browser`&&(i=`browser`),i}function xf(e){return e??`Unknown Tool`}function Sf(e){return e??`unknown`}function Cf(e){return{inputObj:e&&typeof e==`object`?e:null,hasDescription:typeof e==`object`&&!!e&&`description`in e}}function wf(e,t){let n=e?t?.subagent_type:void 0;return n==null?null:JSON.stringify(n)}function Tf(e,t){return e===`agent`&&t&&typeof t.agentName==`string`?t.agentName:null}function Ef(e,t,n){return e?null:ef(Xd(t),n)}function Df(e,t,n){let r=e?t?.prompt:null;return ef(typeof r==`string`?r:null,n)}function Of(e,t){return ef(e&&typeof e.command==`string`?e.command:null,t)}function kf(e,t){return e===`fetch`&&t&&typeof t.url==`string`?t.url:null}function Af(e){return e&&typeof e.pattern==`string`?e.pattern:null}function jf(e,t){return e===`web_search`&&t&&typeof t.query==`string`?t.query:null}function Mf(e){return e&&typeof e.lang==`string`?e.lang:null}function Nf(e,t){return ef(e&&typeof e.path==`string`?e.path:null,t)}function Pf(e,t){let n=e.toLowerCase(),r=gf(n),i=t&&typeof t.offset==`number`?t.offset:null,a=t&&typeof t.limit==`number`?t.limit:null,o=r?i??1:i,s=r?a??200:a,c=_f(n),l=yf(n,c,r),u=vf(n),d=l&&t&&typeof t.path==`string`?t.path:null,f=d?d.split(`/`).pop()??d:null,p=u&&t&&typeof t.oldText==`string`?t.oldText:null,m=u&&t&&typeof t.newText==`string`?t.newText:null;return{lowerName:n,isObservationTool:r,isSkillTool:c,isFileTool:l,isEditTool:u,offset:o,limit:s,filePath:d,fileDisplayName:f,editOldText:p,editNewText:m,editDeletedLineCount:p===null?null:p.split(`
14
13
  `).length,editAddedLineCount:m===null?null:m.split(`
15
- `).length,hasEditDiff:p!==null&&m!==null}}function Nf(e,t){return e===`generate_image`&&t&&typeof t.prompt==`string`?t.prompt:null}function Pf(e,t){return e===`find_images`&&t&&typeof t.query==`string`?t.query:null}function Ff(e,t){return e&&t&&typeof t.skillName==`string`?t.skillName:null}function If(e,t){return e===`todo`&&t?t.status:void 0}function Lf(e,t){let n=yf(e.name),r=bf(e.id),{inputObj:i,hasDescription:a}=xf(e.input),o=Sf(a,i),s=Cf(n,i),c=wf(a,e.input,t),l=Tf(a,i,t),u=Ef(i,t),d=Df(n,i),f=Of(i),p=kf(n,i),m=Af(i),g=jf(i,t),{lowerName:_,isObservationTool:v,isSkillTool:y,isFileTool:b,isEditTool:x,offset:S,limit:C,filePath:w,fileDisplayName:T,editOldText:E,editNewText:D,editDeletedLineCount:O,editAddedLineCount:k,hasEditDiff:A}=Mf(n,i),j=Nf(n,i),M=Pf(n,i),N=Ff(y,i),P=If(n,i),F=e.displayName??h(n),I=e.activeDisplayName??ne(n);return{toolType:vf(_,y,b,a),toolName:n,toolId:r,displayName:F,activeDisplayName:I,inputObj:i,toolInput:c,command:u,fetchUrl:d,pattern:f,webSearchQuery:p,isFileTool:b,isObservationTool:v,isEditTool:x,filePath:w,fileDisplayName:T,editOldText:E,editNewText:D,editDeletedLineCount:O,editAddedLineCount:k,hasEditDiff:A,path:g,offset:S,limit:C,prompt:l,agentName:s,subagentType:o,lang:m,imageGenPrompt:j,findImagesQuery:M,skillName:N,todoStatus:P}}var Rf=new Map;function zf(e){return e.trim()}function Bf(){let e=Lo(xi.BASH_COMMAND_DURATIONS);if(!e)return{};try{let t=JSON.parse(e);if(typeof t!=`object`||!t||Array.isArray(t))return{};let n={};for(let[e,r]of Object.entries(t))typeof r==`number`&&Number.isFinite(r)&&r>0&&(n[zf(e)]=r);return n}catch{return{}}}function Vf(e){ns(xi.BASH_COMMAND_DURATIONS,JSON.stringify(e))}function Hf(e){return Bf()[zf(e)]??null}function Uf(e,t){let n=zf(e);if(!n||!Number.isFinite(t)||t<=0)return;let r=Bf();r[n]=Math.round(t),Vf(r)}function Wf(e,t){!t?.trim()||Rf.has(e)||Rf.set(e,{command:zf(t),startedAt:Date.now()})}function Gf(e){let t=Rf.get(e);if(!t)return;let n=Date.now()-t.startedAt;Uf(t.command,n),Rf.delete(e)}function Kf(e){let t=Math.max(0,Math.floor(e/1e3)),n=Math.floor(t/60),r=t%60;return`${n}:${String(r).padStart(2,`0`)}`}function qf(e,t){return t!==null&&t>0?`${Math.min(99,Math.round(e/t*100))}% complete`:Kf(e)}var Jf=1e3;function Yf(e,t,n){let[r,i]=(0,Z.useState)(0),[a,o]=(0,Z.useState)(null),s=(0,Z.useRef)(null),c=(0,Z.useRef)(!1),l=(0,Z.useRef)(n);return l.current=n,(0,Z.useEffect)(()=>{if(n&&!c.current){let n=e?.trim()??``;o(n?Hf(n):null),Wf(t,e),s.current=Date.now(),i(0)}else !n&&c.current&&(Gf(t),s.current=null,i(0),o(null));c.current=n},[n,e,t]),(0,Z.useEffect)(()=>()=>{l.current&&Gf(t)},[t]),(0,Z.useEffect)(()=>{if(!n)return;let e=()=>{s.current===null&&(s.current=Date.now()),i(Date.now()-s.current)};e();let t=setInterval(e,Jf);return()=>clearInterval(t)},[n]),n?qf(r,a):null}function Xf(e){let{maxHeight:t=`48`,padding:n=`2`,leading:r=!1,className:i}=e??{};return G(U.mono,n===`3`?`p-3`:`p-2`,`bg-muted rounded whitespace-pre-wrap overflow-auto text-foreground`,t===`64`?`max-h-64`:`max-h-48`,r&&`leading-relaxed`,i)}function Zf(e){let t=(0,Q.c)(14),{open:n,onOpenChange:r,title:i,content:a,markdown:o,threadId:s,body:c}=e,l=o===void 0?!1:o,u;t[0]===i?u=t[1]:(u=(0,$.jsx)(Dr,{children:(0,$.jsx)(qa,{children:(0,$.jsx)(`code`,{className:U.mono,children:i})})}),t[0]=i,t[1]=u);let d;t[2]!==c||t[3]!==a||t[4]!==l||t[5]!==s?(d=c?(0,$.jsx)(`div`,{className:G(`flex-1 overflow-auto min-h-0`,U.body),children:c}):l?(0,$.jsx)(`div`,{className:G(`flex-1 overflow-auto min-h-0`,U.body),children:(0,$.jsx)(Du,{content:ds(a),threadId:s})}):(0,$.jsx)(`pre`,{className:Xf({padding:`3`,className:`flex-1 max-h-none`}),children:a}),t[2]=c,t[3]=a,t[4]=l,t[5]=s,t[6]=d):d=t[6];let f;t[7]!==u||t[8]!==d?(f=(0,$.jsxs)(Ir,{className:`max-w-3xl h-[80vh] flex flex-col`,children:[u,d]}),t[7]=u,t[8]=d,t[9]=f):f=t[9];let p;return t[10]!==r||t[11]!==n||t[12]!==f?(p=(0,$.jsx)(Ni,{open:n,onOpenChange:r,children:f}),t[10]=r,t[11]=n,t[12]=f,t[13]=p):p=t[13],p}var Qf=G(`flex-1 min-h-0 overflow-auto rounded-md border border-border bg-muted/30 p-3`);function $f(e){let t=(0,Q.c)(17),{open:n,onOpenChange:r,prompt:i,content:a,markdown:o,threadId:s,body:c}=e,l=o===void 0?!1:o,u;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(u=(0,$.jsx)(qa,{children:`Subagent`}),t[0]=u):u=t[0];let d;t[1]===i?d=t[2]:(d=i?(0,$.jsx)(_i,{className:`whitespace-pre-wrap leading-relaxed line-clamp-3`,children:i}):null,t[1]=i,t[2]=d);let f;t[3]===d?f=t[4]:(f=(0,$.jsxs)(Dr,{children:[u,d]}),t[3]=d,t[4]=f);let p;t[5]!==c||t[6]!==a||t[7]!==l||t[8]!==s?(p=c?(0,$.jsx)(`div`,{className:G(Qf,U.body),children:c}):l?(0,$.jsx)(`div`,{className:G(Qf,U.body),children:(0,$.jsx)(Du,{content:ds(a),threadId:s})}):(0,$.jsx)(`pre`,{className:G(Qf,U.mono,`whitespace-pre-wrap`),children:a}),t[5]=c,t[6]=a,t[7]=l,t[8]=s,t[9]=p):p=t[9];let m;t[10]!==f||t[11]!==p?(m=(0,$.jsxs)(Ir,{className:`max-w-3xl h-[80vh] flex flex-col gap-4`,children:[f,p]}),t[10]=f,t[11]=p,t[12]=m):m=t[12];let h;return t[13]!==r||t[14]!==n||t[15]!==m?(h=(0,$.jsx)(Ni,{open:n,onOpenChange:r,children:m}),t[13]=r,t[14]=n,t[15]=m,t[16]=h):h=t[16],h}function ep(e){let t=(0,Q.c)(20),{open:n,onOpenChange:r,title:i,requestContent:a,responseContent:o}=e,s;t[0]===i?s=t[1]:(s=(0,$.jsx)(Dr,{children:(0,$.jsx)(qa,{children:(0,$.jsx)(`code`,{className:U.mono,children:i})})}),t[0]=i,t[1]=s);let c,l;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,$.jsx)(`div`,{className:G(U.compact,`mb-1 text-muted-foreground`),children:`Request`}),l=Xf({padding:`3`,className:`max-h-48`}),t[2]=c,t[3]=l):(c=t[2],l=t[3]);let u;t[4]===a?u=t[5]:(u=(0,$.jsxs)(`div`,{className:`flex min-h-0 flex-col`,children:[c,(0,$.jsx)(`pre`,{className:l,children:a})]}),t[4]=a,t[5]=u);let d,f;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(d=(0,$.jsx)(`div`,{className:G(U.compact,`mb-1 text-muted-foreground`),children:`Response`}),f=Xf({padding:`3`,className:`flex-1 max-h-none`}),t[6]=d,t[7]=f):(d=t[6],f=t[7]);let p;t[8]===o?p=t[9]:(p=(0,$.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col`,children:[d,(0,$.jsx)(`pre`,{className:f,children:o})]}),t[8]=o,t[9]=p);let m;t[10]!==u||t[11]!==p?(m=(0,$.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col gap-4 overflow-hidden`,children:[u,p]}),t[10]=u,t[11]=p,t[12]=m):m=t[12];let h;t[13]!==s||t[14]!==m?(h=(0,$.jsxs)(Ir,{className:`max-w-3xl h-[80vh] flex flex-col gap-4`,children:[s,m]}),t[13]=s,t[14]=m,t[15]=h):h=t[15];let g;return t[16]!==r||t[17]!==n||t[18]!==h?(g=(0,$.jsx)(Ni,{open:n,onOpenChange:r,children:h}),t[16]=r,t[17]=n,t[18]=h,t[19]=g):g=t[19],g}function tp(e){let t=(0,Q.c)(10),{oldText:n,newText:r}=e,i,a,o;if(t[0]!==r||t[1]!==n){let e=n.split(`
14
+ `).length,hasEditDiff:p!==null&&m!==null}}function Ff(e,t){return e===`generate_image`&&t&&typeof t.prompt==`string`?t.prompt:null}function If(e,t){return e===`find_images`&&t&&typeof t.query==`string`?t.query:null}function Lf(e,t){return e&&t&&typeof t.skillName==`string`?t.skillName:null}function Rf(e,t){return e===`todo`&&t?t.status:void 0}function zf(e,t){let n=xf(e.name),r=Sf(e.id),{inputObj:i,hasDescription:a}=Cf(e.input),o=wf(a,i),s=Tf(n,i),c=Ef(a,e.input,t),l=Df(a,i,t),u=Of(i,t),d=kf(n,i),f=Af(i),p=jf(n,i),m=Mf(i),g=Nf(i,t),{lowerName:_,isObservationTool:v,isSkillTool:y,isFileTool:b,isEditTool:x,offset:S,limit:C,filePath:w,fileDisplayName:T,editOldText:E,editNewText:D,editDeletedLineCount:O,editAddedLineCount:k,hasEditDiff:A}=Pf(n,i),j=Ff(n,i),M=If(n,i),N=Lf(y,i),P=Rf(n,i),F=e.displayName??h(n),I=e.activeDisplayName??ne(n);return{toolType:bf(_,y,b,a),toolName:n,toolId:r,displayName:F,activeDisplayName:I,inputObj:i,toolInput:c,command:u,fetchUrl:d,pattern:f,webSearchQuery:p,isFileTool:b,isObservationTool:v,isEditTool:x,filePath:w,fileDisplayName:T,editOldText:E,editNewText:D,editDeletedLineCount:O,editAddedLineCount:k,hasEditDiff:A,path:g,offset:S,limit:C,prompt:l,agentName:s,subagentType:o,lang:m,imageGenPrompt:j,findImagesQuery:M,skillName:N,todoStatus:P}}var Bf=new Map;function Vf(e){return e.trim()}function Hf(){let e=Lo(xi.BASH_COMMAND_DURATIONS);if(!e)return{};try{let t=JSON.parse(e);if(typeof t!=`object`||!t||Array.isArray(t))return{};let n={};for(let[e,r]of Object.entries(t))typeof r==`number`&&Number.isFinite(r)&&r>0&&(n[Vf(e)]=r);return n}catch{return{}}}function Uf(e){ns(xi.BASH_COMMAND_DURATIONS,JSON.stringify(e))}function Wf(e){return Hf()[Vf(e)]??null}function Gf(e,t){let n=Vf(e);if(!n||!Number.isFinite(t)||t<=0)return;let r=Hf();r[n]=Math.round(t),Uf(r)}function Kf(e,t){!t?.trim()||Bf.has(e)||Bf.set(e,{command:Vf(t),startedAt:Date.now()})}function qf(e){let t=Bf.get(e);if(!t)return;let n=Date.now()-t.startedAt;Gf(t.command,n),Bf.delete(e)}function Jf(e){let t=Math.max(0,Math.floor(e/1e3)),n=Math.floor(t/60),r=t%60;return`${n}:${String(r).padStart(2,`0`)}`}function Yf(e,t){return t!==null&&t>0?`${Math.min(99,Math.round(e/t*100))}% complete`:Jf(e)}var Xf=1e3;function Zf(e,t,n){let[r,i]=(0,Z.useState)(0),[a,o]=(0,Z.useState)(null),s=(0,Z.useRef)(null),c=(0,Z.useRef)(!1),l=(0,Z.useRef)(n);return l.current=n,(0,Z.useEffect)(()=>{if(n&&!c.current){let n=e?.trim()??``;o(n?Wf(n):null),Kf(t,e),s.current=Date.now(),i(0)}else !n&&c.current&&(qf(t),s.current=null,i(0),o(null));c.current=n},[n,e,t]),(0,Z.useEffect)(()=>()=>{l.current&&qf(t)},[t]),(0,Z.useEffect)(()=>{if(!n)return;let e=()=>{s.current===null&&(s.current=Date.now()),i(Date.now()-s.current)};e();let t=setInterval(e,Xf);return()=>clearInterval(t)},[n]),n?Yf(r,a):null}function Qf(e){let{maxHeight:t=`48`,padding:n=`2`,leading:r=!1,className:i}=e??{};return G(U.mono,n===`3`?`p-3`:`p-2`,`bg-muted rounded whitespace-pre-wrap overflow-auto text-foreground`,t===`64`?`max-h-64`:`max-h-48`,r&&`leading-relaxed`,i)}function $f(e){let t=(0,Q.c)(14),{open:n,onOpenChange:r,title:i,content:a,markdown:o,threadId:s,body:c}=e,l=o===void 0?!1:o,u;t[0]===i?u=t[1]:(u=(0,$.jsx)(Dr,{children:(0,$.jsx)(qa,{children:(0,$.jsx)(`code`,{className:U.mono,children:i})})}),t[0]=i,t[1]=u);let d;t[2]!==c||t[3]!==a||t[4]!==l||t[5]!==s?(d=c?(0,$.jsx)(`div`,{className:G(`flex-1 overflow-auto min-h-0`,U.body),children:c}):l?(0,$.jsx)(`div`,{className:G(`flex-1 overflow-auto min-h-0`,U.body),children:(0,$.jsx)(ku,{content:ds(a),threadId:s})}):(0,$.jsx)(`pre`,{className:Qf({padding:`3`,className:`flex-1 max-h-none`}),children:a}),t[2]=c,t[3]=a,t[4]=l,t[5]=s,t[6]=d):d=t[6];let f;t[7]!==u||t[8]!==d?(f=(0,$.jsxs)(Ir,{className:`max-w-3xl h-[80vh] flex flex-col`,children:[u,d]}),t[7]=u,t[8]=d,t[9]=f):f=t[9];let p;return t[10]!==r||t[11]!==n||t[12]!==f?(p=(0,$.jsx)(Ni,{open:n,onOpenChange:r,children:f}),t[10]=r,t[11]=n,t[12]=f,t[13]=p):p=t[13],p}var ep=G(`flex-1 min-h-0 overflow-auto rounded-md border border-border bg-muted/30 p-3`);function tp(e){let t=(0,Q.c)(17),{open:n,onOpenChange:r,prompt:i,content:a,markdown:o,threadId:s,body:c}=e,l=o===void 0?!1:o,u;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(u=(0,$.jsx)(qa,{children:`Subagent`}),t[0]=u):u=t[0];let d;t[1]===i?d=t[2]:(d=i?(0,$.jsx)(_i,{className:`whitespace-pre-wrap leading-relaxed line-clamp-3`,children:i}):null,t[1]=i,t[2]=d);let f;t[3]===d?f=t[4]:(f=(0,$.jsxs)(Dr,{children:[u,d]}),t[3]=d,t[4]=f);let p;t[5]!==c||t[6]!==a||t[7]!==l||t[8]!==s?(p=c?(0,$.jsx)(`div`,{className:G(ep,U.body),children:c}):l?(0,$.jsx)(`div`,{className:G(ep,U.body),children:(0,$.jsx)(ku,{content:ds(a),threadId:s})}):(0,$.jsx)(`pre`,{className:G(ep,U.mono,`whitespace-pre-wrap`),children:a}),t[5]=c,t[6]=a,t[7]=l,t[8]=s,t[9]=p):p=t[9];let m;t[10]!==f||t[11]!==p?(m=(0,$.jsxs)(Ir,{className:`max-w-3xl h-[80vh] flex flex-col gap-4`,children:[f,p]}),t[10]=f,t[11]=p,t[12]=m):m=t[12];let h;return t[13]!==r||t[14]!==n||t[15]!==m?(h=(0,$.jsx)(Ni,{open:n,onOpenChange:r,children:m}),t[13]=r,t[14]=n,t[15]=m,t[16]=h):h=t[16],h}function np(e){let t=(0,Q.c)(20),{open:n,onOpenChange:r,title:i,requestContent:a,responseContent:o}=e,s;t[0]===i?s=t[1]:(s=(0,$.jsx)(Dr,{children:(0,$.jsx)(qa,{children:(0,$.jsx)(`code`,{className:U.mono,children:i})})}),t[0]=i,t[1]=s);let c,l;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,$.jsx)(`div`,{className:G(U.compact,`mb-1 text-muted-foreground`),children:`Request`}),l=Qf({padding:`3`,className:`max-h-48`}),t[2]=c,t[3]=l):(c=t[2],l=t[3]);let u;t[4]===a?u=t[5]:(u=(0,$.jsxs)(`div`,{className:`flex min-h-0 flex-col`,children:[c,(0,$.jsx)(`pre`,{className:l,children:a})]}),t[4]=a,t[5]=u);let d,f;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(d=(0,$.jsx)(`div`,{className:G(U.compact,`mb-1 text-muted-foreground`),children:`Response`}),f=Qf({padding:`3`,className:`flex-1 max-h-none`}),t[6]=d,t[7]=f):(d=t[6],f=t[7]);let p;t[8]===o?p=t[9]:(p=(0,$.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col`,children:[d,(0,$.jsx)(`pre`,{className:f,children:o})]}),t[8]=o,t[9]=p);let m;t[10]!==u||t[11]!==p?(m=(0,$.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col gap-4 overflow-hidden`,children:[u,p]}),t[10]=u,t[11]=p,t[12]=m):m=t[12];let h;t[13]!==s||t[14]!==m?(h=(0,$.jsxs)(Ir,{className:`max-w-3xl h-[80vh] flex flex-col gap-4`,children:[s,m]}),t[13]=s,t[14]=m,t[15]=h):h=t[15];let g;return t[16]!==r||t[17]!==n||t[18]!==h?(g=(0,$.jsx)(Ni,{open:n,onOpenChange:r,children:h}),t[16]=r,t[17]=n,t[18]=h,t[19]=g):g=t[19],g}function rp(e){let t=(0,Q.c)(10),{oldText:n,newText:r}=e,i,a,o;if(t[0]!==r||t[1]!==n){let e=n.split(`
16
15
  `),s=r.split(`
17
- `);t[5]===Symbol.for(`react.memo_cache_sentinel`)?(i=G(U.caption,`font-mono whitespace-pre-wrap overflow-auto`),t[5]=i):i=t[5],a=e.map(rp),o=s.map(np),t[0]=r,t[1]=n,t[2]=i,t[3]=a,t[4]=o}else i=t[2],a=t[3],o=t[4];let s;return t[6]!==i||t[7]!==a||t[8]!==o?(s=(0,$.jsxs)(`pre`,{className:i,children:[a,o]}),t[6]=i,t[7]=a,t[8]=o,t[9]=s):s=t[9],s}function np(e,t){return(0,$.jsxs)(`div`,{className:`bg-green-500/10 text-green-600 dark:text-green-400`,children:[(0,$.jsx)(`span`,{className:`select-none opacity-50 mr-2`,children:`+`}),e]},`new-${t}`)}function rp(e,t){return(0,$.jsxs)(`div`,{className:`bg-red-500/10 text-red-600 dark:text-red-400`,children:[(0,$.jsx)(`span`,{className:`select-none opacity-50 mr-2`,children:`-`}),e]},`old-${t}`)}function ip(e){let t=(0,Q.c)(3),{name:n}=e,r;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=G(U.caption,`px-1.5 py-0.5 rounded bg-muted font-mono`),t[0]=r):r=t[0];let i;return t[1]===n?i=t[2]:(i=(0,$.jsx)(`span`,{className:r,children:n}),t[1]=n,t[2]=i),i}function ap(e){let t=(0,Q.c)(3),{type:n}=e,r;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=G(U.caption,`px-2 py-0.5 rounded bg-muted`),t[0]=r):r=t[0];let i;return t[1]===n?i=t[2]:(i=(0,$.jsx)(`span`,{className:r,children:n}),t[1]=n,t[2]=i),i}function op(e){let t=(0,Q.c)(3),{children:n}=e,r;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=G(U.caption,`font-mono truncate whitespace-nowrap min-w-0 max-w-full rounded bg-muted/60 px-1 py-0.5`),t[0]=r):r=t[0];let i;return t[1]===n?i=t[2]:(i=(0,$.jsx)(`code`,{className:r,children:n}),t[1]=n,t[2]=i),i}function sp(e){let t=(0,Q.c)(9),{size:n,className:r,"aria-label":i}=e,a=n===void 0?20:n,o;t[0]===r?o=t[1]:(o=G(`shrink-0 text-brand`,r),t[0]=r,t[1]=o);let s,c,l;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,$.jsx)(`circle`,{className:`ai-spinner-dot`,cx:`0`,cy:`0`,r:`5`,fill:`currentColor`}),c=(0,$.jsx)(`circle`,{className:`ai-spinner-dot`,cx:`0`,cy:`0`,r:`5`,fill:`currentColor`}),l=(0,$.jsx)(`circle`,{className:`ai-spinner-dot`,cx:`0`,cy:`0`,r:`5`,fill:`currentColor`}),t[2]=s,t[3]=c,t[4]=l):(s=t[2],c=t[3],l=t[4]);let u;return t[5]!==i||t[6]!==a||t[7]!==o?(u=(0,$.jsxs)(`svg`,{role:`img`,"aria-label":i,xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 24 24`,width:a,height:a,className:o,children:[s,c,l]}),t[5]=i,t[6]=a,t[7]=o,t[8]=u):u=t[8],u}function cp(e){switch(e){case`searching`:return`Searching`;case`solving`:return`Thinking`;default:return`Working`}}function lp(e){let t=(0,Q.c)(8),{className:n,size:r,state:i}=e,a=r===void 0?`md`:r,o=i===void 0?`working`:i,s=a===`sm`?16:20,c;t[0]===o?c=t[1]:(c=cp(o),t[0]=o,t[1]=c);let l;t[2]===n?l=t[3]:(l=G(n),t[2]=n,t[3]=l);let u;return t[4]!==s||t[5]!==c||t[6]!==l?(u=(0,$.jsx)(sp,{size:s,"aria-label":c,className:l}),t[4]=s,t[5]=c,t[6]=l,t[7]=u):u=t[7],u}function up(e){let t=(0,Q.c)(21),{toolName:n,displayName:r,isActive:i,showProgress:a,progressState:o,muted:s,size:c,className:l}=e,u=i===void 0?!1:i,d=a===void 0?!0:a,f=o===void 0?`working`:o,p=s===void 0?!0:s,m=c===void 0?`sm`:c,h;t[0]===l?h=t[1]:(h=G(`inline-flex items-center gap-1`,l),t[0]=l,t[1]=h);let g=!p&&`text-foreground`,_;t[2]===g?_=t[3]:(_=G(U.caption,g),t[2]=g,t[3]=_);let v;t[4]!==r||t[5]!==_?(v=(0,$.jsx)(`span`,{className:_,children:r}),t[4]=r,t[5]=_,t[6]=v):v=t[6];let y;t[7]!==u||t[8]!==f||t[9]!==d||t[10]!==m?(y=u&&d?(0,$.jsx)(lp,{size:m,state:f}):null,t[7]=u,t[8]=f,t[9]=d,t[10]=m,t[11]=y):y=t[11];let b;t[12]!==y||t[13]!==h||t[14]!==v?(b=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(`span`,{className:h,children:[v,y]})}),t[12]=y,t[13]=h,t[14]=v,t[15]=b):b=t[15];let x;t[16]===n?x=t[17]:(x=(0,$.jsx)(Fr,{children:n}),t[16]=n,t[17]=x);let S;return t[18]!==b||t[19]!==x?(S=(0,$.jsxs)(Mi,{children:[b,x]}),t[18]=b,t[19]=x,t[20]=S):S=t[20],S}function dp(e){let t=(0,Q.c)(34),{className:n,enabled:r,fallback:i,observation:a,rootPath:o,threadId:s}=e,c=a?.id,l;t[0]!==c||t[1]!==s?(l=[`tool-observation`,s,c],t[0]=c,t[1]=s,t[2]=l):l=t[2];let u;t[3]!==a||t[4]!==s?(u=async e=>{let{pageParam:t}=e;if(!s||!a)throw Error(`Observation context is unavailable`);return po(s,a.id,t)},t[3]=a,t[4]=s,t[5]=u):u=t[5];let d;t[6]!==r||t[7]!==a||t[8]!==l||t[9]!==u||t[10]!==s?(d={queryKey:l,queryFn:u,initialPageParam:1,getNextPageParam(e){return e.nextOffset},enabled:!!(r&&a&&s),staleTime:1/0},t[6]=r,t[7]=a,t[8]=l,t[9]=u,t[10]=s,t[11]=d):d=t[11];let f=Xn(d),p;t[12]===f.data?.pages?p=t[13]:(p=f.data?.pages.map(function(e){return e.content}).join(`
18
- `),t[12]=f.data?.pages,t[13]=p);let m=p,h;t[14]!==r||t[15]!==i||t[16]!==m||t[17]!==a||t[18]!==f.isError||t[19]!==f.isPending||t[20]!==o?(h=f.isError?`Full output is unavailable.`:f.isPending&&r&&a?`Loading full output…`:Qd(m??i,o),t[14]=r,t[15]=i,t[16]=m,t[17]=a,t[18]=f.isError,t[19]=f.isPending,t[20]=o,t[21]=h):h=t[21];let g=h,_;t[22]===f?_=t[23]:(_=function(){f.fetchNextPage()},t[22]=f,t[23]=_);let v=_,y;t[24]!==n||t[25]!==g?(y=(0,$.jsx)(`pre`,{className:n,children:g}),t[24]=n,t[25]=g,t[26]=y):y=t[26];let b;t[27]!==v||t[28]!==f.hasNextPage||t[29]!==f.isFetchingNextPage?(b=f.hasNextPage?(0,$.jsx)(`button`,{type:`button`,onClick:v,disabled:f.isFetchingNextPage,className:G(U.caption,`mt-2 text-brand hover:underline disabled:opacity-50`),children:f.isFetchingNextPage?`Loading more…`:`Load more output`}):null,t[27]=v,t[28]=f.hasNextPage,t[29]=f.isFetchingNextPage,t[30]=b):b=t[30];let x;return t[31]!==y||t[32]!==b?(x=(0,$.jsxs)($.Fragment,{children:[y,b]}),t[31]=y,t[32]=b,t[33]=x):x=t[33],x}function fp(e){let t=(0,Q.c)(18),{fallback:n,observation:r}=e,[i,a]=(0,Z.useState)(!1),o=X(mp),s=X(pp),c=r.lineCount>0?`Show full output (${r.lineCount} lines)`:`Show full output…`,l;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(l=()=>a(!0),t[0]=l):l=t[0];let u;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(u=(0,$.jsx)(pt,{className:`h-3.5 w-3.5`}),t[1]=u):u=t[1];let d;t[2]===c?d=t[3]:(d=(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,onClick:l,"aria-label":c,className:`inline-flex shrink-0 rounded p-0.5 text-muted-foreground hover:bg-muted hover:text-brand`,children:u})}),(0,$.jsx)(Fr,{children:c})]}),t[2]=c,t[3]=d);let f;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(f=(0,$.jsx)(Dr,{children:(0,$.jsx)(qa,{children:`Full Output`})}),t[4]=f):f=t[4];let p;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(p=G(U.caption,`bg-muted p-3 rounded font-mono whitespace-pre-wrap overflow-auto flex-1 text-foreground`),t[5]=p):p=t[5];let m;t[6]!==i||t[7]!==n||t[8]!==r||t[9]!==o||t[10]!==s?(m=(0,$.jsxs)(Ir,{className:`max-w-3xl max-h-[80vh] flex flex-col`,children:[f,(0,$.jsx)(dp,{enabled:i,fallback:n,observation:r,rootPath:o,threadId:s,className:p})]}),t[6]=i,t[7]=n,t[8]=r,t[9]=o,t[10]=s,t[11]=m):m=t[11];let h;t[12]!==i||t[13]!==m?(h=(0,$.jsx)(Ni,{open:i,onOpenChange:a,children:m}),t[12]=i,t[13]=m,t[14]=h):h=t[14];let g;return t[15]!==d||t[16]!==h?(g=(0,$.jsxs)($.Fragment,{children:[d,h]}),t[15]=d,t[16]=h,t[17]=g):g=t[17],g}function pp(e){return e.selectedThreadId}function mp(e){return e.projects.find(t=>t.projectId===e.selectedProjectId)?.threads.find(t=>t.threadId===e.selectedThreadId)?.path}function hp(e){let t=(0,Q.c)(27),{expanded:n,onToggle:r,title:i,tooltip:a,isActive:o,showProgress:s,progressState:c,trailing:l,buttonClassName:u,children:d}=e,f=s===void 0?!0:s,p=c===void 0?`working`:c,m;t[0]===u?m=t[1]:(m=u??G(U.body,`font-medium text-foreground`),t[0]=u,t[1]=m);let h;t[2]===m?h=t[3]:(h=G(`w-full py-2 flex items-center gap-2 hover:bg-muted/50 transition-colors text-left`,m),t[2]=m,t[3]=h);let g;t[4]===i?g=t[5]:(g=(0,$.jsx)(`span`,{className:`flex-1 text-left min-w-0 truncate`,children:i}),t[4]=i,t[5]=g);let _;t[6]!==o||t[7]!==p||t[8]!==f?(_=o&&f?(0,$.jsx)(lp,{size:`md`,state:p}):null,t[6]=o,t[7]=p,t[8]=f,t[9]=_):_=t[9];let v;t[10]===n?v=t[11]:(v=n?(0,$.jsx)(tn,{className:`h-4 w-4 shrink-0`}):(0,$.jsx)(sn,{className:`h-4 w-4 shrink-0`}),t[10]=n,t[11]=v);let y;t[12]!==r||t[13]!==h||t[14]!==g||t[15]!==_||t[16]!==v||t[17]!==l?(y=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(`button`,{onClick:r,className:h,children:[g,_,l,v]})}),t[12]=r,t[13]=h,t[14]=g,t[15]=_,t[16]=v,t[17]=l,t[18]=y):y=t[18];let b;t[19]===a?b=t[20]:(b=(0,$.jsx)(Fr,{children:a}),t[19]=a,t[20]=b);let x;t[21]!==y||t[22]!==b?(x=(0,$.jsxs)(Mi,{children:[y,b]}),t[21]=y,t[22]=b,t[23]=x):x=t[23];let S=n&&d,C;return t[24]!==x||t[25]!==S?(C=(0,$.jsxs)(`div`,{className:`overflow-hidden`,children:[x,S]}),t[24]=x,t[25]=S,t[26]=C):C=t[26],C}function gp(e){let t=(0,Q.c)(6),{toolId:n,children:r}=e,i;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(i=G(U.compact,`text-muted-foreground mb-2 font-mono`),t[0]=i):i=t[0];let a;t[1]===n?a=t[2]:(a=(0,$.jsxs)(`div`,{className:i,children:[`ID: `,n]}),t[1]=n,t[2]=a);let o;return t[3]!==r||t[4]!==a?(o=(0,$.jsxs)(`div`,{className:`py-2 border-t border-border`,children:[a,r]}),t[3]=r,t[4]=a,t[5]=o):o=t[5],o}var _p=`text-muted-foreground/60 whitespace-pre-wrap overflow-y-auto font-mono select-text`,vp=`rounded-md border border-border bg-muted/30 p-2`;function yp(e){let t=(0,Q.c)(4),{className:n}=e,r;t[0]===n?r=t[1]:(r=G(`h-3.5 w-3.5 shrink-0 text-destructive`,n),t[0]=n,t[1]=r);let i;return t[2]===r?i=t[3]:(i=(0,$.jsx)(nt,{"aria-label":`Command failed`,className:r}),t[2]=r,t[3]=i),i}function bp(e){let t=(0,Q.c)(33),{toolName:n,activeDisplayName:r,commandInline:i,runningProgress:a,isExpanded:o,onToggle:s,scrollRef:c,streamingOutput:l}=e,u;t[0]!==r||t[1]!==n?(u=(0,$.jsx)(up,{toolName:n,displayName:r,isActive:!1,className:`shrink-0`}),t[0]=r,t[1]=n,t[2]=u):u=t[2];let d;t[3]===i?d=t[4]:(d=i!==null&&(0,$.jsx)(`span`,{className:G(U.caption,`min-w-0 flex-1 truncate whitespace-nowrap`),children:i.label}),t[3]=i,t[4]=d);let f;t[5]===a?f=t[6]:(f=a&&(0,$.jsx)(`span`,{className:G(U.caption,`tabular-nums shrink-0`),children:a}),t[5]=a,t[6]=f);let p;t[7]===o?p=t[8]:(p=o?(0,$.jsx)(tn,{className:`h-3 w-3 text-muted-foreground shrink-0`}):(0,$.jsx)(sn,{className:`h-3 w-3 text-muted-foreground shrink-0`}),t[7]=o,t[8]=p);let m;t[9]!==o||t[10]!==s||t[11]!==u||t[12]!==d||t[13]!==f||t[14]!==p?(m=(0,$.jsxs)(`button`,{type:`button`,className:`flex items-center gap-1.5 cursor-pointer select-none text-left w-full min-w-0`,onClick:s,"aria-expanded":o,children:[u,d,f,p]}),t[9]=o,t[10]=s,t[11]=u,t[12]=d,t[13]=f,t[14]=p,t[15]=m):m=t[15];let h=o?`grid-rows-[1fr]`:`grid-rows-[0fr]`,g;t[16]===h?g=t[17]:(g=G(`grid transition-[grid-template-rows] duration-200 ease-in-out`,h),t[16]=h,t[17]=g);let _;t[18]===l?_=t[19]:(_=l&&G(vp,`mt-1 mb-0.5`),t[18]=l,t[19]=_);let v;t[20]===_?v=t[21]:(v=G(U.caption,_p,`ml-5`,_),t[20]=_,t[21]=v);let y;t[22]===Symbol.for(`react.memo_cache_sentinel`)?(y={maxHeight:`7.5em`},t[22]=y):y=t[22];let b;t[23]!==c||t[24]!==l||t[25]!==v?(b=(0,$.jsx)(`div`,{className:`overflow-hidden`,children:(0,$.jsx)(`div`,{ref:c,className:v,style:y,children:l})}),t[23]=c,t[24]=l,t[25]=v,t[26]=b):b=t[26];let x;t[27]!==b||t[28]!==g?(x=(0,$.jsx)(`div`,{className:g,children:b}),t[27]=b,t[28]=g,t[29]=x):x=t[29];let S;return t[30]!==x||t[31]!==m?(S=(0,$.jsxs)(`div`,{className:`flex flex-col gap-0.5`,children:[m,x]}),t[30]=x,t[31]=m,t[32]=S):S=t[32],S}function xp(e){let t=(0,Q.c)(28),{toolName:n,displayName:r,commandInline:i,isError:a,dialogOpen:o,onOpenChange:s,displayOutput:c}=e,l=i.label!==i.fullText,u;t[0]!==r||t[1]!==n?(u=(0,$.jsx)(up,{toolName:n,displayName:r,isActive:!1}),t[0]=r,t[1]=n,t[2]=u):u=t[2];let d;t[3]===s?d=t[4]:(d=()=>s(!0),t[3]=s,t[4]=d);let f;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(f=G(U.caption,`font-mono hover:underline truncate whitespace-nowrap min-w-0 flex-1 cursor-pointer text-left`),t[5]=f):f=t[5];let p;t[6]!==i.label||t[7]!==d?(p=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,onClick:d,className:f,children:i.label})}),t[6]=i.label,t[7]=d,t[8]=p):p=t[8];let m=l?i.fullText:`View output`,h;t[9]===m?h=t[10]:(h=(0,$.jsx)(Fr,{className:`max-w-md break-all font-mono`,children:m}),t[9]=m,t[10]=h);let g;t[11]!==p||t[12]!==h?(g=(0,$.jsxs)(Mi,{children:[p,h]}),t[11]=p,t[12]=h,t[13]=g):g=t[13];let _;t[14]===a?_=t[15]:(_=a&&(0,$.jsx)(yp,{}),t[14]=a,t[15]=_);let v;t[16]!==u||t[17]!==g||t[18]!==_?(v=(0,$.jsxs)(`div`,{className:`py-0.5 flex items-center gap-2 min-w-0 w-full`,children:[u,g,_]}),t[16]=u,t[17]=g,t[18]=_,t[19]=v):v=t[19];let y;t[20]!==i.fullText||t[21]!==o||t[22]!==c||t[23]!==s?(y=(0,$.jsx)(Zf,{open:o,onOpenChange:s,title:i.fullText,content:c}),t[20]=i.fullText,t[21]=o,t[22]=c,t[23]=s,t[24]=y):y=t[24];let b;return t[25]!==y||t[26]!==v?(b=(0,$.jsxs)($.Fragment,{children:[v,y]}),t[25]=y,t[26]=v,t[27]=b):b=t[27],b}function Sp(e){let t=(0,Q.c)(22),{displayName:n,isError:r,dialogOpen:i,onOpenChange:a,displayOutput:o}=e,s;t[0]===a?s=t[1]:(s=()=>a(!0),t[0]=a,t[1]=s);let c;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(c=G(U.caption,`hover:underline truncate whitespace-nowrap min-w-0 flex-1 cursor-pointer text-left`),t[2]=c):c=t[2];let l;t[3]!==n||t[4]!==s?(l=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,onClick:s,className:c,children:n})}),t[3]=n,t[4]=s,t[5]=l):l=t[5];let u;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(u=(0,$.jsx)(Fr,{children:`View output`}),t[6]=u):u=t[6];let d;t[7]===l?d=t[8]:(d=(0,$.jsxs)(Mi,{children:[l,u]}),t[7]=l,t[8]=d);let f;t[9]===r?f=t[10]:(f=r&&(0,$.jsx)(yp,{}),t[9]=r,t[10]=f);let p;t[11]!==d||t[12]!==f?(p=(0,$.jsxs)(`div`,{className:`py-0.5 flex items-center gap-2 min-w-0 w-full`,children:[d,f]}),t[11]=d,t[12]=f,t[13]=p):p=t[13];let m;t[14]!==i||t[15]!==n||t[16]!==o||t[17]!==a?(m=(0,$.jsx)(Zf,{open:i,onOpenChange:a,title:n,content:o}),t[14]=i,t[15]=n,t[16]=o,t[17]=a,t[18]=m):m=t[18];let h;return t[19]!==p||t[20]!==m?(h=(0,$.jsxs)($.Fragment,{children:[p,m]}),t[19]=p,t[20]=m,t[21]=h):h=t[21],h}function Cp(e){let t=(0,Q.c)(11),{toolName:n,displayName:r,commandInline:i,isError:a}=e,o;t[0]!==r||t[1]!==n?(o=(0,$.jsx)(up,{toolName:n,displayName:r,isActive:!1}),t[0]=r,t[1]=n,t[2]=o):o=t[2];let s;t[3]===i?s=t[4]:(s=i!==null&&(0,$.jsx)(`code`,{className:G(U.caption,`font-mono truncate whitespace-nowrap rounded bg-muted/60 px-1 py-0.5 min-w-0 flex-1`),children:i.label}),t[3]=i,t[4]=s);let c;t[5]===a?c=t[6]:(c=a&&(0,$.jsx)(yp,{}),t[5]=a,t[6]=c);let l;return t[7]!==o||t[8]!==s||t[9]!==c?(l=(0,$.jsxs)(`div`,{className:`py-0.5 flex items-center gap-2 min-w-0 w-full`,children:[o,s,c]}),t[7]=o,t[8]=s,t[9]=c,t[10]=l):l=t[10],l}function wp(e){let t=(0,Q.c)(33),{isExpanded:n,onToggle:r,isActive:i,runningProgress:a,displayName:o,activeDisplayName:s,isError:c,toolName:l,toolId:u,scrollRef:d,streamingOutput:f,toolInput:p}=e,m;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(m=G(U.body,`w-full py-2 flex items-center gap-2 font-medium text-foreground hover:bg-muted/50 transition-colors text-left`),t[0]=m):m=t[0];let h;t[1]!==s||t[2]!==o||t[3]!==i||t[4]!==a?(h=i?(0,$.jsxs)($.Fragment,{children:[s,a&&(0,$.jsx)(`span`,{className:`ml-2 text-muted-foreground tabular-nums`,children:a})]}):o,t[1]=s,t[2]=o,t[3]=i,t[4]=a,t[5]=h):h=t[5];let g;t[6]===h?g=t[7]:(g=(0,$.jsx)(`span`,{className:`flex-1 text-left min-w-0 truncate`,children:h}),t[6]=h,t[7]=g);let _;t[8]!==i||t[9]!==c?(_=c&&!i&&(0,$.jsx)(yp,{}),t[8]=i,t[9]=c,t[10]=_):_=t[10];let v;t[11]===n?v=t[12]:(v=n?(0,$.jsx)(tn,{className:`h-4 w-4 shrink-0`}):(0,$.jsx)(sn,{className:`h-4 w-4 shrink-0`}),t[11]=n,t[12]=v);let y;t[13]!==r||t[14]!==g||t[15]!==_||t[16]!==v?(y=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(`button`,{onClick:r,className:m,children:[g,_,v]})}),t[13]=r,t[14]=g,t[15]=_,t[16]=v,t[17]=y):y=t[17];let b;t[18]===l?b=t[19]:(b=(0,$.jsx)(Fr,{children:l}),t[18]=l,t[19]=b);let x;t[20]!==y||t[21]!==b?(x=(0,$.jsxs)(Mi,{children:[y,b]}),t[20]=y,t[21]=b,t[22]=x):x=t[22];let S;t[23]!==i||t[24]!==n||t[25]!==d||t[26]!==f||t[27]!==u||t[28]!==p?(S=n&&(0,$.jsxs)(`div`,{className:`py-2 border-t border-border`,children:[(0,$.jsxs)(`div`,{className:G(U.compact,`text-muted-foreground mb-2 font-mono`),children:[`ID: `,u]}),i?(0,$.jsx)(`div`,{ref:d,className:G(U.caption,_p,f&&vp),style:{maxHeight:`7.5em`},children:f}):p?(0,$.jsx)(`pre`,{className:Xf(),children:p}):null]}),t[23]=i,t[24]=n,t[25]=d,t[26]=f,t[27]=u,t[28]=p,t[29]=S):S=t[29];let C;return t[30]!==x||t[31]!==S?(C=(0,$.jsxs)(`div`,{className:`overflow-hidden`,children:[x,S]}),t[30]=x,t[31]=S,t[32]=C):C=t[32],C}function Tp({data:e,isError:t,isActive:n,commandInline:r,displayOutput:i,dialogOpen:a,onOpenChange:o,isExpanded:s,onToggle:c,scrollRef:l,streamingOutput:u,runningProgress:d}){return n?(0,$.jsx)(bp,{toolName:e.toolName,activeDisplayName:e.activeDisplayName,commandInline:r,runningProgress:d,isExpanded:s,onToggle:c,scrollRef:l,streamingOutput:u}):r!==null&&i?(0,$.jsx)(xp,{toolName:e.toolName,displayName:e.displayName,commandInline:r,isError:t,dialogOpen:a,onOpenChange:o,displayOutput:i}):r===null&&i?(0,$.jsx)(Sp,{displayName:e.displayName,isError:t,dialogOpen:a,onOpenChange:o,displayOutput:i}):(0,$.jsx)(Cp,{toolName:e.toolName,displayName:e.displayName,commandInline:r,isError:t})}function Ep({isActive:e,liveExecutionOutput:t,resultContent:n}){let r=n??``,i=e?t??r:r,a=i?of(i):``;return{displayOutput:a,streamingOutput:e?a:``}}function Dp({data:e,inline:t,resultContent:n,isError:r,isActive:i}){let a=(0,Z.useRef)(null),[o,s]=(0,Z.useState)(!!i),[c,l]=(0,Z.useState)(!1),u=(0,Z.useRef)(!!i),{displayOutput:d,streamingOutput:f}=Ep({isActive:i,liveExecutionOutput:X(t=>t.toolCallProgress[e.toolId]?.executionOutput),resultContent:n}),p=Yf(e.command,e.toolId,!!i),m=e.command===null?null:qd(e.command);return(0,Z.useEffect)(()=>{i&&!u.current?s(!0):!i&&u.current&&s(!1),u.current=!!i},[i]),(0,Z.useEffect)(()=>{o&&i&&a.current&&(a.current.scrollTop=a.current.scrollHeight)},[o,i,f]),t?Tp({data:e,isError:r,isActive:i,commandInline:m,displayOutput:d,dialogOpen:c,onOpenChange:l,isExpanded:o,onToggle:()=>s(!o),scrollRef:a,streamingOutput:f,runningProgress:p}):(0,$.jsx)(wp,{isExpanded:o,onToggle:()=>s(!o),isActive:i,runningProgress:p,displayName:e.displayName,activeDisplayName:e.activeDisplayName,isError:r,toolName:e.toolName,toolId:e.toolId,scrollRef:a,streamingOutput:f,toolInput:e.toolInput})}function Op(e){let t=(0,Q.c)(50),{data:n,inline:r,resultContent:i,isActive:a}=e,[o,s]=(0,Z.useState)(!!a),[c,l]=(0,Z.useState)(!1),u=n.fetchUrl,d;t[0]===i?d=t[1]:(d=i?kp(i):null,t[0]=i,t[1]=d);let f=d;if(r){let e;t[2]===o?e=t[3]:(e=()=>s(!o),t[2]=o,t[3]=e);let r=n.toolName,c=n.activeDisplayName,l=!!a,d;t[4]!==n.activeDisplayName||t[5]!==n.toolName||t[6]!==l?(d=(0,$.jsx)(up,{toolName:r,displayName:c,isActive:l}),t[4]=n.activeDisplayName,t[5]=n.toolName,t[6]=l,t[7]=d):d=t[7];let p;t[8]===u?p=t[9]:(p=u!==null&&(0,$.jsx)(`span`,{className:G(U.caption,`break-all`),children:u}),t[8]=u,t[9]=p);let m;t[10]===f?m=t[11]:(m=f&&(0,$.jsxs)(`span`,{className:G(U.caption,`text-muted-foreground shrink-0`),children:[f.bytes,` bytes · HTTP `,f.code]}),t[10]=f,t[11]=m);let h;t[12]===o?h=t[13]:(h=o?(0,$.jsx)(tn,{className:`h-3 w-3 text-muted-foreground shrink-0`}):(0,$.jsx)(sn,{className:`h-3 w-3 text-muted-foreground shrink-0`}),t[12]=o,t[13]=h);let g;t[14]!==o||t[15]!==e||t[16]!==d||t[17]!==p||t[18]!==m||t[19]!==h?(g=(0,$.jsxs)(`button`,{type:`button`,className:`flex items-center gap-1.5 cursor-pointer select-none text-left w-full`,onClick:e,"aria-expanded":o,children:[d,p,m,h]}),t[14]=o,t[15]=e,t[16]=d,t[17]=p,t[18]=m,t[19]=h,t[20]=g):g=t[20];let _;t[21]!==o||t[22]!==i?(_=o&&i&&(0,$.jsx)(`pre`,{className:G(U.mono,U.caption,`whitespace-pre-wrap break-all rounded bg-muted/40 p-2 max-h-48 overflow-auto`),children:Ap(i)}),t[21]=o,t[22]=i,t[23]=_):_=t[23];let v;return t[24]!==g||t[25]!==_?(v=(0,$.jsxs)(`div`,{className:`flex flex-col gap-0.5`,children:[g,_]}),t[24]=g,t[25]=_,t[26]=v):v=t[26],v}let p=n.toolName,m=n.displayName,h=!!a,g;t[27]!==n.displayName||t[28]!==n.toolName||t[29]!==h?(g=(0,$.jsx)(up,{toolName:p,displayName:m,isActive:h}),t[27]=n.displayName,t[28]=n.toolName,t[29]=h,t[30]=g):g=t[30];let _;t[31]===u?_=t[32]:(_=u!==null&&(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`code`,{className:G(U.mono,U.caption,`break-all`),children:u})}),(0,$.jsx)(Fr,{children:u})]}),t[31]=u,t[32]=_);let v;t[33]===f?v=t[34]:(v=f&&(0,$.jsxs)(`span`,{className:G(U.caption,`text-muted-foreground`),children:[f.bytes,` bytes · HTTP `,f.code,` · `,f.durationMs,`ms`]}),t[33]=f,t[34]=v);let y;t[35]===i?y=t[36]:(y=i&&(0,$.jsx)(`button`,{type:`button`,className:G(U.caption,`text-brand hover:underline ml-auto`),onClick:()=>l(!0),children:`View result`}),t[35]=i,t[36]=y);let b;t[37]!==g||t[38]!==_||t[39]!==v||t[40]!==y?(b=(0,$.jsxs)(`div`,{className:`flex items-center gap-2 flex-wrap`,children:[g,_,v,y]}),t[37]=g,t[38]=_,t[39]=v,t[40]=y,t[41]=b):b=t[41];let x;t[42]===i?x=t[43]:(x=i?Ap(i):``,t[42]=i,t[43]=x);let S;t[44]!==c||t[45]!==x?(S=(0,$.jsx)(Zf,{open:c,onOpenChange:l,title:`Fetch result`,content:x}),t[44]=c,t[45]=x,t[46]=S):S=t[46];let C;return t[47]!==S||t[48]!==b?(C=(0,$.jsxs)(`div`,{className:`rounded-lg border border-border p-3 my-1`,children:[b,S]}),t[47]=S,t[48]=b,t[49]=C):C=t[49],C}function kp(e){try{let t=JSON.parse(e);if(typeof t.bytes==`number`&&typeof t.code==`number`)return{bytes:t.bytes,code:t.code,durationMs:typeof t.durationMs==`number`?t.durationMs:0}}catch{}return null}function Ap(e){try{let t=JSON.parse(e);if(typeof t.result==`string`)return t.result}catch{}return e}function jp(e){let t=(0,Q.c)(14),n,r,i,a;t[0]===e?(n=t[1],r=t[2],i=t[3],a=t[4]):({open:i,defaultOpen:n,onOpenChange:r,...a}=e,t[0]=e,t[1]=n,t[2]=r,t[3]=i,t[4]=a);let o;t[5]!==n||t[6]!==r||t[7]!==i?(o={open:i,defaultOpen:n,onOpenChange:r},t[5]=n,t[6]=r,t[7]=i,t[8]=o):o=t[8];let s=Bi(o),c;return t[9]!==n||t[10]!==s||t[11]!==i||t[12]!==a?(c=(0,$.jsx)(On,{open:i,defaultOpen:n,onOpenChange:s,...a}),t[9]=n,t[10]=s,t[11]=i,t[12]=a,t[13]=c):c=t[13],c}var Mp=pr,Np=Z.forwardRef((e,t)=>{let n=(0,Q.c)(17),r,i,a,o,s;n[0]===e?(r=n[1],i=n[2],a=n[3],o=n[4],s=n[5]):({className:r,align:o,sideOffset:s,container:i,...a}=e,n[0]=e,n[1]=r,n[2]=i,n[3]=a,n[4]=o,n[5]=s);let c=o===void 0?`center`:o,l=s===void 0?4:s,u=i??void 0,d;n[6]===r?d=n[7]:(d=G(`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`,r),n[6]=r,n[7]=d);let f;n[8]!==c||n[9]!==a||n[10]!==t||n[11]!==l||n[12]!==d?(f=(0,$.jsx)(Jn,{ref:t,align:c,sideOffset:l,className:d,...a}),n[8]=c,n[9]=a,n[10]=t,n[11]=l,n[12]=d,n[13]=f):f=n[13];let p;return n[14]!==u||n[15]!==f?(p=(0,$.jsx)(Cn,{container:u,children:f}),n[14]=u,n[15]=f,n[16]=p):p=n[16],p});Np.displayName=Jn.displayName;function Pp(e,t){return e===null&&t===null?null:e!==null&&t!==null?`${e}-${e+t}`:e===null?`${t}`:`${e}-`}function Fp(e){let t=(0,Q.c)(6),{offset:n,limit:r}=e,i;t[0]!==r||t[1]!==n?(i=Pp(n,r),t[0]=r,t[1]=n,t[2]=i):i=t[2];let a=i;if(a===null)return null;let o;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(o=G(U.compact,`font-mono tabular-nums text-muted-foreground`),t[3]=o):o=t[3];let s;return t[4]===a?s=t[5]:(s=(0,$.jsx)(`span`,{className:o,children:a}),t[4]=a,t[5]=s),s}function Ip(e){let t=(0,Q.c)(8),{added:n,removed:r}=e;if(n===null||r===null)return null;let i;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(i=G(U.compact,`inline-flex items-center gap-2 font-mono tabular-nums`),t[0]=i):i=t[0];let a;t[1]===n?a=t[2]:(a=(0,$.jsxs)(`span`,{className:`text-green-600 dark:text-green-400`,children:[`+`,n]}),t[1]=n,t[2]=a);let o;t[3]===r?o=t[4]:(o=(0,$.jsxs)(`span`,{className:`text-red-600 dark:text-red-400`,children:[`-`,r]}),t[3]=r,t[4]=o);let s;return t[5]!==a||t[6]!==o?(s=(0,$.jsxs)(`span`,{className:i,children:[a,o]}),t[5]=a,t[6]=o,t[7]=s):s=t[7],s}function Lp(e){let t=(0,Q.c)(19),{data:n,label:r,isActive:i}=e;if(!(!n.isObservationTool&&n.toolInput&&!n.command&&!n.path&&!n.pattern&&!n.fileDisplayName)){let e;return t[0]!==n.toolName||t[1]!==i||t[2]!==r?(e=(0,$.jsx)(up,{toolName:n.toolName,displayName:r,isActive:i}),t[0]=n.toolName,t[1]=i,t[2]=r,t[3]=e):e=t[3],e}let a;t[4]!==n.toolName||t[5]!==i||t[6]!==r?(a=(0,$.jsx)(Mp,{asChild:!0,children:(0,$.jsx)(`span`,{className:`inline-flex`,children:(0,$.jsx)(`button`,{type:`button`,className:`inline-flex shrink-0 items-center gap-1 rounded p-0.5 text-muted-foreground hover:text-foreground focus:outline-none focus-visible:ring-2 focus-visible:ring-ring`,"aria-label":`Show tool details`,children:(0,$.jsx)(up,{toolName:n.toolName,displayName:r,isActive:i,muted:!1})})})}),t[4]=n.toolName,t[5]=i,t[6]=r,t[7]=a):a=t[7];let o;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(o=G(U.caption,`space-y-2`),t[8]=o):o=t[8];let s;t[9]===n.toolId?s=t[10]:(s=(0,$.jsxs)(`div`,{className:`font-mono`,children:[`ID: `,n.toolId]}),t[9]=n.toolId,t[10]=s);let c;t[11]===n.toolInput?c=t[12]:(c=(0,$.jsx)(`pre`,{className:`font-mono whitespace-pre-wrap overflow-auto max-h-48`,children:n.toolInput}),t[11]=n.toolInput,t[12]=c);let l;t[13]!==s||t[14]!==c?(l=(0,$.jsx)(Np,{className:`w-80 max-h-80 overflow-auto`,align:`start`,children:(0,$.jsxs)(`div`,{className:o,children:[s,c]})}),t[13]=s,t[14]=c,t[15]=l):l=t[15];let u;return t[16]!==a||t[17]!==l?(u=(0,$.jsxs)(jp,{children:[a,l]}),t[16]=a,t[17]=l,t[18]=u):u=t[18],u}function Rp(e){let t=(0,Q.c)(27),{data:n,resultContent:r,resultDialogOpen:i,onResultDialogOpenChange:a}=e;if(!n.isObservationTool)return null;if(!r){let e;return t[0]!==n.limit||t[1]!==n.offset?(e=(0,$.jsx)(Fp,{offset:n.offset,limit:n.limit}),t[0]=n.limit,t[1]=n.offset,t[2]=e):e=t[2],e}let o;t[3]===a?o=t[4]:(o=()=>a(!0),t[3]=a,t[4]=o);let s;t[5]!==n.limit||t[6]!==n.offset?(s=(0,$.jsx)(Fp,{offset:n.offset,limit:n.limit}),t[5]=n.limit,t[6]=n.offset,t[7]=s):s=t[7];let c;t[8]!==o||t[9]!==s?(c=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,onClick:o,className:`hover:underline cursor-pointer`,children:s})}),t[8]=o,t[9]=s,t[10]=c):c=t[10];let l;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,$.jsx)(Fr,{children:`View results`}),t[11]=l):l=t[11];let u;t[12]===c?u=t[13]:(u=(0,$.jsxs)(Mi,{children:[c,l]}),t[12]=c,t[13]=u);let d;t[14]!==n.limit||t[15]!==n.offset?(d=Pp(n.offset,n.limit)??``,t[14]=n.limit,t[15]=n.offset,t[16]=d):d=t[16];let f=`${n.displayName} ${d}`,p;t[17]===f?p=t[18]:(p=f.trim(),t[17]=f,t[18]=p);let m;t[19]!==a||t[20]!==r||t[21]!==i||t[22]!==p?(m=(0,$.jsx)(Zf,{open:i,onOpenChange:a,title:p,content:r}),t[19]=a,t[20]=r,t[21]=i,t[22]=p,t[23]=m):m=t[23];let h;return t[24]!==u||t[25]!==m?(h=(0,$.jsxs)($.Fragment,{children:[u,m]}),t[24]=u,t[25]=m,t[26]=h):h=t[26],h}function zp(e,t){return e.hasEditDiff?`View diff`:e.filePath?Qd(e.filePath,t)??e.filePath:e.fileDisplayName}function Bp(e){let t=(0,Q.c)(20),{data:n,onOpenFile:r,onDiffDialogOpenChange:i}=e,a;t[0]!==n.hasEditDiff||t[1]!==i||t[2]!==r?(a=n.hasEditDiff?()=>i(!0):r,t[0]=n.hasEditDiff,t[1]=i,t[2]=r,t[3]=a):a=t[3];let o;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(o=G(`inline-flex max-w-full items-center gap-2 cursor-pointer`,U.caption,`font-mono hover:underline`),t[4]=o):o=t[4];let s;t[5]===n.fileDisplayName?s=t[6]:(s=(0,$.jsx)(`span`,{className:`truncate max-w-[200px] sm:max-w-[320px]`,children:n.fileDisplayName}),t[5]=n.fileDisplayName,t[6]=s);let c;t[7]!==n.limit||t[8]!==n.offset||t[9]!==n.toolName?(c=n.toolName===`read`?(0,$.jsx)(Fp,{offset:n.offset,limit:n.limit}):null,t[7]=n.limit,t[8]=n.offset,t[9]=n.toolName,t[10]=c):c=t[10];let l;t[11]!==n.editAddedLineCount||t[12]!==n.editDeletedLineCount||t[13]!==n.isEditTool?(l=n.isEditTool?(0,$.jsx)(Ip,{added:n.editAddedLineCount,removed:n.editDeletedLineCount}):null,t[11]=n.editAddedLineCount,t[12]=n.editDeletedLineCount,t[13]=n.isEditTool,t[14]=l):l=t[14];let u;return t[15]!==a||t[16]!==s||t[17]!==c||t[18]!==l?(u=(0,$.jsxs)(`button`,{type:`button`,onClick:a,className:o,children:[s,c,l]}),t[15]=a,t[16]=s,t[17]=c,t[18]=l,t[19]=u):u=t[19],u}function Vp(e){let t=(0,Q.c)(16),{data:n,rootPath:r,open:i,onOpenChange:a}=e,o;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(o=G(U.caption,`font-mono`),t[0]=o):o=t[0];let s;t[1]!==n.filePath||t[2]!==r?(s=Qd(n.filePath,r)??n.filePath,t[1]=n.filePath,t[2]=r,t[3]=s):s=t[3];let c;t[4]===s?c=t[5]:(c=(0,$.jsx)(Dr,{children:(0,$.jsx)(qa,{children:(0,$.jsx)(`code`,{className:o,children:s})})}),t[4]=s,t[5]=c);let l;t[6]!==n.editNewText||t[7]!==n.editOldText?(l=(0,$.jsx)(`div`,{className:`overflow-auto flex-1 rounded border border-border bg-muted/30 p-3`,children:(0,$.jsx)(tp,{oldText:n.editOldText,newText:n.editNewText})}),t[6]=n.editNewText,t[7]=n.editOldText,t[8]=l):l=t[8];let u;t[9]!==c||t[10]!==l?(u=(0,$.jsxs)(Ir,{className:`max-w-2xl h-[80vh] flex flex-col`,children:[c,l]}),t[9]=c,t[10]=l,t[11]=u):u=t[11];let d;return t[12]!==a||t[13]!==i||t[14]!==u?(d=(0,$.jsx)(Ni,{open:i,onOpenChange:a,children:u}),t[12]=a,t[13]=i,t[14]=u,t[15]=d):d=t[15],d}function Hp(e){let t=(0,Q.c)(20),{data:n,rootPath:r,onOpenFile:i,diffDialogOpen:a,onDiffDialogOpenChange:o}=e;if(!n.fileDisplayName)return null;let s;t[0]!==n||t[1]!==o||t[2]!==i?(s=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(Bp,{data:n,onOpenFile:i,onDiffDialogOpenChange:o})}),t[0]=n,t[1]=o,t[2]=i,t[3]=s):s=t[3];let c;t[4]!==n||t[5]!==r?(c=zp(n,r),t[4]=n,t[5]=r,t[6]=c):c=t[6];let l;t[7]===c?l=t[8]:(l=(0,$.jsx)(Fr,{children:c}),t[7]=c,t[8]=l);let u;t[9]!==s||t[10]!==l?(u=(0,$.jsxs)(Mi,{children:[s,l]}),t[9]=s,t[10]=l,t[11]=u):u=t[11];let d;t[12]!==n||t[13]!==a||t[14]!==o||t[15]!==r?(d=n.hasEditDiff&&(0,$.jsx)(Vp,{data:n,rootPath:r,open:a,onOpenChange:o}),t[12]=n,t[13]=a,t[14]=o,t[15]=r,t[16]=d):d=t[16];let f;return t[17]!==u||t[18]!==d?(f=(0,$.jsxs)($.Fragment,{children:[u,d]}),t[17]=u,t[18]=d,t[19]=f):f=t[19],f}function Up(e){let t=(0,Q.c)(3),{data:n}=e;if(n.path===null)return null;let r;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=G(U.caption,`font-mono truncate max-w-[200px] sm:max-w-[320px]`),t[0]=r):r=t[0];let i;return t[1]===n.path?i=t[2]:(i=(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`span`,{className:r,children:n.path})}),(0,$.jsx)(Fr,{children:n.path})]}),t[1]=n.path,t[2]=i),i}function Wp(e){let t=(0,Q.c)(34),{data:n,inline:r,rootPath:i,onOpenFile:a,resultContent:o,isActive:s}=e,c=s===void 0?!1:s,[l,u]=(0,Z.useState)(!1),[d,f]=(0,Z.useState)(!1),[p,m]=(0,Z.useState)(!1),h=c?n.activeDisplayName:n.displayName,g;t[0]!==n.filePath||t[1]!==a||t[2]!==i?(g=function(){!n.filePath||!a||a(i&&n.filePath.startsWith(i)?n.filePath.slice(i.length+1):n.filePath)},t[0]=n.filePath,t[1]=a,t[2]=i,t[3]=g):g=t[3];let _=g;if(r){let e;t[4]!==n||t[5]!==c||t[6]!==h?(e=(0,$.jsx)(Lp,{data:n,label:h,isActive:c}),t[4]=n,t[5]=c,t[6]=h,t[7]=e):e=t[7];let r;t[8]!==n||t[9]!==o||t[10]!==p?(r=(0,$.jsx)(Rp,{data:n,resultContent:o,resultDialogOpen:p,onResultDialogOpenChange:m}),t[8]=n,t[9]=o,t[10]=p,t[11]=r):r=t[11];let a;t[12]!==n||t[13]!==d||t[14]!==_||t[15]!==i?(a=n.fileDisplayName?(0,$.jsx)(Hp,{data:n,rootPath:i,onOpenFile:_,diffDialogOpen:d,onDiffDialogOpenChange:f}):(0,$.jsx)(Up,{data:n}),t[12]=n,t[13]=d,t[14]=_,t[15]=i,t[16]=a):a=t[16];let s;return t[17]!==e||t[18]!==r||t[19]!==a?(s=(0,$.jsxs)(`div`,{className:`py-0.5 flex items-center gap-2 flex-wrap`,children:[e,r,a]}),t[17]=e,t[18]=r,t[19]=a,t[20]=s):s=t[20],s}let v;t[21]===l?v=t[22]:(v=()=>u(!l),t[21]=l,t[22]=v);let y;t[23]===n.toolInput?y=t[24]:(y=n.toolInput?(0,$.jsx)(`pre`,{className:Xf(),children:n.toolInput}):null,t[23]=n.toolInput,t[24]=y);let b;t[25]!==n.toolId||t[26]!==y?(b=(0,$.jsx)(gp,{toolId:n.toolId,children:y}),t[25]=n.toolId,t[26]=y,t[27]=b):b=t[27];let x;return t[28]!==n.displayName||t[29]!==n.toolName||t[30]!==l||t[31]!==v||t[32]!==b?(x=(0,$.jsx)(hp,{expanded:l,onToggle:v,title:n.displayName,tooltip:n.toolName,children:b}),t[28]=n.displayName,t[29]=n.toolName,t[30]=l,t[31]=v,t[32]=b,t[33]=x):x=t[33],x}function Gp(e){let t=e.replace(/\s+/g,` `).trim();return{fullText:t,label:Kd(t,50)}}function Kp(e){let t=(0,Q.c)(11),{text:n}=e,r;t[0]===n?r=t[1]:(r=Gp(n),t[0]=n,t[1]=r);let{label:i,fullText:a}=r,o;t[2]===i?o=t[3]:(o=(0,$.jsx)(op,{children:i}),t[2]=i,t[3]=o);let s=o;if(i===a)return s;let c;t[4]===s?c=t[5]:(c=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`span`,{className:`min-w-0`,children:s})}),t[4]=s,t[5]=c);let l;t[6]===a?l=t[7]:(l=(0,$.jsx)(Fr,{className:`max-w-md break-all font-mono`,children:a}),t[6]=a,t[7]=l);let u;return t[8]!==c||t[9]!==l?(u=(0,$.jsxs)(Mi,{children:[c,l]}),t[8]=c,t[9]=l,t[10]=u):u=t[10],u}function qp(e){let t=(0,Q.c)(7),{data:n}=e,r;t[0]===n.webSearchQuery?r=t[1]:(r=n.webSearchQuery!==null&&(0,$.jsx)(Kp,{text:n.webSearchQuery}),t[0]=n.webSearchQuery,t[1]=r);let i;t[2]===n.pattern?i=t[3]:(i=n.pattern!==null&&(0,$.jsx)(Kp,{text:n.pattern}),t[2]=n.pattern,t[3]=i);let a;return t[4]!==r||t[5]!==i?(a=(0,$.jsxs)($.Fragment,{children:[r,i]}),t[4]=r,t[5]=i,t[6]=a):a=t[6],a}function Jp(e){let t=(0,Q.c)(51),{data:n,inline:r,resultContent:i,isActive:a}=e,[o,s]=(0,Z.useState)(!1),[c,l]=(0,Z.useState)(!1),u=n.webSearchQuery??n.pattern??`search`,d;t[0]===u?d=t[1]:(d=Gp(u),t[0]=u,t[1]=d);let{label:f,fullText:p}=d,m=f!==p;if(r){if(i&&(n.toolName===`find`||n.webSearchQuery!==null||n.pattern!==null)){let e;t[2]!==n.displayName||t[3]!==n.toolName||t[4]!==a?(e=(0,$.jsx)(up,{toolName:n.toolName,displayName:n.displayName,isActive:a,progressState:`searching`,className:`shrink-0`}),t[2]=n.displayName,t[3]=n.toolName,t[4]=a,t[5]=e):e=t[5];let r,o;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(r=()=>l(!0),o=G(U.caption,`font-mono hover:underline truncate whitespace-nowrap min-w-0 cursor-pointer text-left`),t[6]=r,t[7]=o):(r=t[6],o=t[7]);let s;t[8]===f?s=t[9]:(s=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,onClick:r,className:o,children:f})}),t[8]=f,t[9]=s);let u=m?p:`View results`,d;t[10]===u?d=t[11]:(d=(0,$.jsx)(Fr,{className:`max-w-md break-all font-mono`,children:u}),t[10]=u,t[11]=d);let h;t[12]!==s||t[13]!==d?(h=(0,$.jsxs)(Mi,{children:[s,d]}),t[12]=s,t[13]=d,t[14]=h):h=t[14];let g;t[15]!==e||t[16]!==h?(g=(0,$.jsxs)(`div`,{className:`py-0.5 flex items-center gap-2 min-w-0`,children:[e,h]}),t[15]=e,t[16]=h,t[17]=g):g=t[17];let _;t[18]!==c||t[19]!==i||t[20]!==p?(_=(0,$.jsx)(Zf,{open:c,onOpenChange:l,title:p,content:i}),t[18]=c,t[19]=i,t[20]=p,t[21]=_):_=t[21];let v;return t[22]!==_||t[23]!==g?(v=(0,$.jsxs)($.Fragment,{children:[g,_]}),t[22]=_,t[23]=g,t[24]=v):v=t[24],v}let e;t[25]!==n.displayName||t[26]!==n.toolName||t[27]!==a?(e=(0,$.jsx)(up,{toolName:n.toolName,displayName:n.displayName,isActive:a,progressState:`searching`,className:`shrink-0`}),t[25]=n.displayName,t[26]=n.toolName,t[27]=a,t[28]=e):e=t[28];let r;t[29]===n?r=t[30]:(r=(0,$.jsx)(qp,{data:n}),t[29]=n,t[30]=r);let o;t[31]===n.lang?o=t[32]:(o=n.lang!==null&&(0,$.jsx)(`span`,{className:G(U.caption,`px-1.5 py-0.5 rounded bg-muted`),children:n.lang}),t[31]=n.lang,t[32]=o);let s;return t[33]!==e||t[34]!==r||t[35]!==o?(s=(0,$.jsxs)(`div`,{className:`py-0.5 flex items-center gap-2 min-w-0`,children:[e,r,o]}),t[33]=e,t[34]=r,t[35]=o,t[36]=s):s=t[36],s}let h;t[37]===o?h=t[38]:(h=()=>s(!o),t[37]=o,t[38]=h);let g;t[39]===n.toolInput?g=t[40]:(g=n.toolInput?(0,$.jsx)(`pre`,{className:Xf(),children:n.toolInput}):null,t[39]=n.toolInput,t[40]=g);let _;t[41]!==n.toolId||t[42]!==g?(_=(0,$.jsx)(gp,{toolId:n.toolId,children:g}),t[41]=n.toolId,t[42]=g,t[43]=_):_=t[43];let v;return t[44]!==n.displayName||t[45]!==n.toolName||t[46]!==o||t[47]!==a||t[48]!==h||t[49]!==_?(v=(0,$.jsx)(hp,{expanded:o,onToggle:h,title:n.displayName,tooltip:n.toolName,isActive:a,progressState:`searching`,children:_}),t[44]=n.displayName,t[45]=n.toolName,t[46]=o,t[47]=a,t[48]=h,t[49]=_,t[50]=v):v=t[50],v}function Yp(e){return e.type!==`subagent_event`||!e.subagentEvent?null:Xp(e.subagentEvent)}function Xp(e){switch(e.type){case`message`:return e.content&&e.isThinking||e.content&&!e.isThinking&&e.role!==`tool`?e.content:e.role===`tool`&&e.content?tm(e.content):null;case`shell_permission`:{let t=e.shellPermission?.command?.trim();return t?`\n⏳ Waiting for shell approval: ${t}\n`:`
16
+ `);t[5]===Symbol.for(`react.memo_cache_sentinel`)?(i=G(U.caption,`font-mono whitespace-pre-wrap overflow-auto`),t[5]=i):i=t[5],a=e.map(ap),o=s.map(ip),t[0]=r,t[1]=n,t[2]=i,t[3]=a,t[4]=o}else i=t[2],a=t[3],o=t[4];let s;return t[6]!==i||t[7]!==a||t[8]!==o?(s=(0,$.jsxs)(`pre`,{className:i,children:[a,o]}),t[6]=i,t[7]=a,t[8]=o,t[9]=s):s=t[9],s}function ip(e,t){return(0,$.jsxs)(`div`,{className:`bg-green-500/10 text-green-600 dark:text-green-400`,children:[(0,$.jsx)(`span`,{className:`select-none opacity-50 mr-2`,children:`+`}),e]},`new-${t}`)}function ap(e,t){return(0,$.jsxs)(`div`,{className:`bg-red-500/10 text-red-600 dark:text-red-400`,children:[(0,$.jsx)(`span`,{className:`select-none opacity-50 mr-2`,children:`-`}),e]},`old-${t}`)}function op(e){let t=(0,Q.c)(3),{name:n}=e,r;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=G(U.caption,`px-1.5 py-0.5 rounded bg-muted font-mono`),t[0]=r):r=t[0];let i;return t[1]===n?i=t[2]:(i=(0,$.jsx)(`span`,{className:r,children:n}),t[1]=n,t[2]=i),i}function sp(e){let t=(0,Q.c)(3),{type:n}=e,r;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=G(U.caption,`px-2 py-0.5 rounded bg-muted`),t[0]=r):r=t[0];let i;return t[1]===n?i=t[2]:(i=(0,$.jsx)(`span`,{className:r,children:n}),t[1]=n,t[2]=i),i}function cp(e){let t=(0,Q.c)(3),{children:n}=e,r;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=G(U.caption,`font-mono truncate whitespace-nowrap min-w-0 max-w-full rounded bg-muted/60 px-1 py-0.5`),t[0]=r):r=t[0];let i;return t[1]===n?i=t[2]:(i=(0,$.jsx)(`code`,{className:r,children:n}),t[1]=n,t[2]=i),i}function lp(e){let t=(0,Q.c)(9),{size:n,className:r,"aria-label":i}=e,a=n===void 0?20:n,o;t[0]===r?o=t[1]:(o=G(`shrink-0 text-brand`,r),t[0]=r,t[1]=o);let s,c,l;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,$.jsx)(`circle`,{className:`ai-spinner-dot`,cx:`0`,cy:`0`,r:`5`,fill:`currentColor`}),c=(0,$.jsx)(`circle`,{className:`ai-spinner-dot`,cx:`0`,cy:`0`,r:`5`,fill:`currentColor`}),l=(0,$.jsx)(`circle`,{className:`ai-spinner-dot`,cx:`0`,cy:`0`,r:`5`,fill:`currentColor`}),t[2]=s,t[3]=c,t[4]=l):(s=t[2],c=t[3],l=t[4]);let u;return t[5]!==i||t[6]!==a||t[7]!==o?(u=(0,$.jsxs)(`svg`,{role:`img`,"aria-label":i,xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 24 24`,width:a,height:a,className:o,children:[s,c,l]}),t[5]=i,t[6]=a,t[7]=o,t[8]=u):u=t[8],u}function up(e){switch(e){case`searching`:return`Searching`;case`solving`:return`Thinking`;default:return`Working`}}function dp(e){let t=(0,Q.c)(8),{className:n,size:r,state:i}=e,a=r===void 0?`md`:r,o=i===void 0?`working`:i,s=a===`sm`?16:20,c;t[0]===o?c=t[1]:(c=up(o),t[0]=o,t[1]=c);let l;t[2]===n?l=t[3]:(l=G(n),t[2]=n,t[3]=l);let u;return t[4]!==s||t[5]!==c||t[6]!==l?(u=(0,$.jsx)(lp,{size:s,"aria-label":c,className:l}),t[4]=s,t[5]=c,t[6]=l,t[7]=u):u=t[7],u}function fp(e){let t=(0,Q.c)(21),{toolName:n,displayName:r,isActive:i,showProgress:a,progressState:o,muted:s,size:c,className:l}=e,u=i===void 0?!1:i,d=a===void 0?!0:a,f=o===void 0?`working`:o,p=s===void 0?!0:s,m=c===void 0?`sm`:c,h;t[0]===l?h=t[1]:(h=G(`inline-flex items-center gap-1`,l),t[0]=l,t[1]=h);let g=!p&&`text-foreground`,_;t[2]===g?_=t[3]:(_=G(U.caption,g),t[2]=g,t[3]=_);let v;t[4]!==r||t[5]!==_?(v=(0,$.jsx)(`span`,{className:_,children:r}),t[4]=r,t[5]=_,t[6]=v):v=t[6];let y;t[7]!==u||t[8]!==f||t[9]!==d||t[10]!==m?(y=u&&d?(0,$.jsx)(dp,{size:m,state:f}):null,t[7]=u,t[8]=f,t[9]=d,t[10]=m,t[11]=y):y=t[11];let b;t[12]!==y||t[13]!==h||t[14]!==v?(b=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(`span`,{className:h,children:[v,y]})}),t[12]=y,t[13]=h,t[14]=v,t[15]=b):b=t[15];let x;t[16]===n?x=t[17]:(x=(0,$.jsx)(Fr,{children:n}),t[16]=n,t[17]=x);let S;return t[18]!==b||t[19]!==x?(S=(0,$.jsxs)(Mi,{children:[b,x]}),t[18]=b,t[19]=x,t[20]=S):S=t[20],S}function pp(e){let t=(0,Q.c)(34),{className:n,enabled:r,fallback:i,observation:a,rootPath:o,threadId:s}=e,c=a?.id,l;t[0]!==c||t[1]!==s?(l=[`tool-observation`,s,c],t[0]=c,t[1]=s,t[2]=l):l=t[2];let u;t[3]!==a||t[4]!==s?(u=async e=>{let{pageParam:t}=e;if(!s||!a)throw Error(`Observation context is unavailable`);return po(s,a.id,t)},t[3]=a,t[4]=s,t[5]=u):u=t[5];let d;t[6]!==r||t[7]!==a||t[8]!==l||t[9]!==u||t[10]!==s?(d={queryKey:l,queryFn:u,initialPageParam:1,getNextPageParam(e){return e.nextOffset},enabled:!!(r&&a&&s),staleTime:1/0},t[6]=r,t[7]=a,t[8]=l,t[9]=u,t[10]=s,t[11]=d):d=t[11];let f=Xn(d),p;t[12]===f.data?.pages?p=t[13]:(p=f.data?.pages.map(function(e){return e.content}).join(`
17
+ `),t[12]=f.data?.pages,t[13]=p);let m=p,h;t[14]!==r||t[15]!==i||t[16]!==m||t[17]!==a||t[18]!==f.isError||t[19]!==f.isPending||t[20]!==o?(h=f.isError?`Full output is unavailable.`:f.isPending&&r&&a?`Loading full output…`:ef(m??i,o),t[14]=r,t[15]=i,t[16]=m,t[17]=a,t[18]=f.isError,t[19]=f.isPending,t[20]=o,t[21]=h):h=t[21];let g=h,_;t[22]===f?_=t[23]:(_=function(){f.fetchNextPage()},t[22]=f,t[23]=_);let v=_,y;t[24]!==n||t[25]!==g?(y=(0,$.jsx)(`pre`,{className:n,children:g}),t[24]=n,t[25]=g,t[26]=y):y=t[26];let b;t[27]!==v||t[28]!==f.hasNextPage||t[29]!==f.isFetchingNextPage?(b=f.hasNextPage?(0,$.jsx)(`button`,{type:`button`,onClick:v,disabled:f.isFetchingNextPage,className:G(U.caption,`mt-2 text-brand hover:underline disabled:opacity-50`),children:f.isFetchingNextPage?`Loading more…`:`Load more output`}):null,t[27]=v,t[28]=f.hasNextPage,t[29]=f.isFetchingNextPage,t[30]=b):b=t[30];let x;return t[31]!==y||t[32]!==b?(x=(0,$.jsxs)($.Fragment,{children:[y,b]}),t[31]=y,t[32]=b,t[33]=x):x=t[33],x}function mp(e){let t=(0,Q.c)(18),{fallback:n,observation:r}=e,[i,a]=(0,Z.useState)(!1),o=X(gp),s=X(hp),c=r.lineCount>0?`Show full output (${r.lineCount} lines)`:`Show full output…`,l;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(l=()=>a(!0),t[0]=l):l=t[0];let u;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(u=(0,$.jsx)(pt,{className:`h-3.5 w-3.5`}),t[1]=u):u=t[1];let d;t[2]===c?d=t[3]:(d=(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,onClick:l,"aria-label":c,className:`inline-flex shrink-0 rounded p-0.5 text-muted-foreground hover:bg-muted hover:text-brand`,children:u})}),(0,$.jsx)(Fr,{children:c})]}),t[2]=c,t[3]=d);let f;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(f=(0,$.jsx)(Dr,{children:(0,$.jsx)(qa,{children:`Full Output`})}),t[4]=f):f=t[4];let p;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(p=G(U.caption,`bg-muted p-3 rounded font-mono whitespace-pre-wrap overflow-auto flex-1 text-foreground`),t[5]=p):p=t[5];let m;t[6]!==i||t[7]!==n||t[8]!==r||t[9]!==o||t[10]!==s?(m=(0,$.jsxs)(Ir,{className:`max-w-3xl max-h-[80vh] flex flex-col`,children:[f,(0,$.jsx)(pp,{enabled:i,fallback:n,observation:r,rootPath:o,threadId:s,className:p})]}),t[6]=i,t[7]=n,t[8]=r,t[9]=o,t[10]=s,t[11]=m):m=t[11];let h;t[12]!==i||t[13]!==m?(h=(0,$.jsx)(Ni,{open:i,onOpenChange:a,children:m}),t[12]=i,t[13]=m,t[14]=h):h=t[14];let g;return t[15]!==d||t[16]!==h?(g=(0,$.jsxs)($.Fragment,{children:[d,h]}),t[15]=d,t[16]=h,t[17]=g):g=t[17],g}function hp(e){return e.selectedThreadId}function gp(e){return e.projects.find(t=>t.projectId===e.selectedProjectId)?.threads.find(t=>t.threadId===e.selectedThreadId)?.path}function _p(e){let t=(0,Q.c)(27),{expanded:n,onToggle:r,title:i,tooltip:a,isActive:o,showProgress:s,progressState:c,trailing:l,buttonClassName:u,children:d}=e,f=s===void 0?!0:s,p=c===void 0?`working`:c,m;t[0]===u?m=t[1]:(m=u??G(U.body,`font-medium text-foreground`),t[0]=u,t[1]=m);let h;t[2]===m?h=t[3]:(h=G(`w-full py-2 flex items-center gap-2 hover:bg-muted/50 transition-colors text-left`,m),t[2]=m,t[3]=h);let g;t[4]===i?g=t[5]:(g=(0,$.jsx)(`span`,{className:`flex-1 text-left min-w-0 truncate`,children:i}),t[4]=i,t[5]=g);let _;t[6]!==o||t[7]!==p||t[8]!==f?(_=o&&f?(0,$.jsx)(dp,{size:`md`,state:p}):null,t[6]=o,t[7]=p,t[8]=f,t[9]=_):_=t[9];let v;t[10]===n?v=t[11]:(v=n?(0,$.jsx)(tn,{className:`h-4 w-4 shrink-0`}):(0,$.jsx)(sn,{className:`h-4 w-4 shrink-0`}),t[10]=n,t[11]=v);let y;t[12]!==r||t[13]!==h||t[14]!==g||t[15]!==_||t[16]!==v||t[17]!==l?(y=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(`button`,{onClick:r,className:h,children:[g,_,l,v]})}),t[12]=r,t[13]=h,t[14]=g,t[15]=_,t[16]=v,t[17]=l,t[18]=y):y=t[18];let b;t[19]===a?b=t[20]:(b=(0,$.jsx)(Fr,{children:a}),t[19]=a,t[20]=b);let x;t[21]!==y||t[22]!==b?(x=(0,$.jsxs)(Mi,{children:[y,b]}),t[21]=y,t[22]=b,t[23]=x):x=t[23];let S=n&&d,C;return t[24]!==x||t[25]!==S?(C=(0,$.jsxs)(`div`,{className:`overflow-hidden`,children:[x,S]}),t[24]=x,t[25]=S,t[26]=C):C=t[26],C}function vp(e){let t=(0,Q.c)(6),{toolId:n,children:r}=e,i;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(i=G(U.compact,`text-muted-foreground mb-2 font-mono`),t[0]=i):i=t[0];let a;t[1]===n?a=t[2]:(a=(0,$.jsxs)(`div`,{className:i,children:[`ID: `,n]}),t[1]=n,t[2]=a);let o;return t[3]!==r||t[4]!==a?(o=(0,$.jsxs)(`div`,{className:`py-2 border-t border-border`,children:[a,r]}),t[3]=r,t[4]=a,t[5]=o):o=t[5],o}var yp=`text-muted-foreground/60 whitespace-pre-wrap overflow-y-auto font-mono select-text`,bp=`rounded-md border border-border bg-muted/30 p-2`;function xp(e){let t=(0,Q.c)(4),{className:n}=e,r;t[0]===n?r=t[1]:(r=G(`h-3.5 w-3.5 shrink-0 text-destructive`,n),t[0]=n,t[1]=r);let i;return t[2]===r?i=t[3]:(i=(0,$.jsx)(nt,{"aria-label":`Command failed`,className:r}),t[2]=r,t[3]=i),i}function Sp(e){let t=(0,Q.c)(33),{toolName:n,activeDisplayName:r,commandInline:i,runningProgress:a,isExpanded:o,onToggle:s,scrollRef:c,streamingOutput:l}=e,u;t[0]!==r||t[1]!==n?(u=(0,$.jsx)(fp,{toolName:n,displayName:r,isActive:!1,className:`shrink-0`}),t[0]=r,t[1]=n,t[2]=u):u=t[2];let d;t[3]===i?d=t[4]:(d=i!==null&&(0,$.jsx)(`span`,{className:G(U.caption,`min-w-0 flex-1 truncate whitespace-nowrap`),children:i.label}),t[3]=i,t[4]=d);let f;t[5]===a?f=t[6]:(f=a&&(0,$.jsx)(`span`,{className:G(U.caption,`tabular-nums shrink-0`),children:a}),t[5]=a,t[6]=f);let p;t[7]===o?p=t[8]:(p=o?(0,$.jsx)(tn,{className:`h-3 w-3 text-muted-foreground shrink-0`}):(0,$.jsx)(sn,{className:`h-3 w-3 text-muted-foreground shrink-0`}),t[7]=o,t[8]=p);let m;t[9]!==o||t[10]!==s||t[11]!==u||t[12]!==d||t[13]!==f||t[14]!==p?(m=(0,$.jsxs)(`button`,{type:`button`,className:`flex items-center gap-1.5 cursor-pointer select-none text-left w-full min-w-0`,onClick:s,"aria-expanded":o,children:[u,d,f,p]}),t[9]=o,t[10]=s,t[11]=u,t[12]=d,t[13]=f,t[14]=p,t[15]=m):m=t[15];let h=o?`grid-rows-[1fr]`:`grid-rows-[0fr]`,g;t[16]===h?g=t[17]:(g=G(`grid transition-[grid-template-rows] duration-200 ease-in-out`,h),t[16]=h,t[17]=g);let _;t[18]===l?_=t[19]:(_=l&&G(bp,`mt-1 mb-0.5`),t[18]=l,t[19]=_);let v;t[20]===_?v=t[21]:(v=G(U.caption,yp,`ml-5`,_),t[20]=_,t[21]=v);let y;t[22]===Symbol.for(`react.memo_cache_sentinel`)?(y={maxHeight:`7.5em`},t[22]=y):y=t[22];let b;t[23]!==c||t[24]!==l||t[25]!==v?(b=(0,$.jsx)(`div`,{className:`overflow-hidden`,children:(0,$.jsx)(`div`,{ref:c,className:v,style:y,children:l})}),t[23]=c,t[24]=l,t[25]=v,t[26]=b):b=t[26];let x;t[27]!==b||t[28]!==g?(x=(0,$.jsx)(`div`,{className:g,children:b}),t[27]=b,t[28]=g,t[29]=x):x=t[29];let S;return t[30]!==x||t[31]!==m?(S=(0,$.jsxs)(`div`,{className:`flex flex-col gap-0.5`,children:[m,x]}),t[30]=x,t[31]=m,t[32]=S):S=t[32],S}function Cp(e){let t=(0,Q.c)(28),{toolName:n,displayName:r,commandInline:i,isError:a,dialogOpen:o,onOpenChange:s,displayOutput:c}=e,l=i.label!==i.fullText,u;t[0]!==r||t[1]!==n?(u=(0,$.jsx)(fp,{toolName:n,displayName:r,isActive:!1}),t[0]=r,t[1]=n,t[2]=u):u=t[2];let d;t[3]===s?d=t[4]:(d=()=>s(!0),t[3]=s,t[4]=d);let f;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(f=G(U.caption,`font-mono hover:underline truncate whitespace-nowrap min-w-0 flex-1 cursor-pointer text-left`),t[5]=f):f=t[5];let p;t[6]!==i.label||t[7]!==d?(p=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,onClick:d,className:f,children:i.label})}),t[6]=i.label,t[7]=d,t[8]=p):p=t[8];let m=l?i.fullText:`View output`,h;t[9]===m?h=t[10]:(h=(0,$.jsx)(Fr,{className:`max-w-md break-all font-mono`,children:m}),t[9]=m,t[10]=h);let g;t[11]!==p||t[12]!==h?(g=(0,$.jsxs)(Mi,{children:[p,h]}),t[11]=p,t[12]=h,t[13]=g):g=t[13];let _;t[14]===a?_=t[15]:(_=a&&(0,$.jsx)(xp,{}),t[14]=a,t[15]=_);let v;t[16]!==u||t[17]!==g||t[18]!==_?(v=(0,$.jsxs)(`div`,{className:`py-0.5 flex items-center gap-2 min-w-0 w-full`,children:[u,g,_]}),t[16]=u,t[17]=g,t[18]=_,t[19]=v):v=t[19];let y;t[20]!==i.fullText||t[21]!==o||t[22]!==c||t[23]!==s?(y=(0,$.jsx)($f,{open:o,onOpenChange:s,title:i.fullText,content:c}),t[20]=i.fullText,t[21]=o,t[22]=c,t[23]=s,t[24]=y):y=t[24];let b;return t[25]!==y||t[26]!==v?(b=(0,$.jsxs)($.Fragment,{children:[v,y]}),t[25]=y,t[26]=v,t[27]=b):b=t[27],b}function wp(e){let t=(0,Q.c)(22),{displayName:n,isError:r,dialogOpen:i,onOpenChange:a,displayOutput:o}=e,s;t[0]===a?s=t[1]:(s=()=>a(!0),t[0]=a,t[1]=s);let c;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(c=G(U.caption,`hover:underline truncate whitespace-nowrap min-w-0 flex-1 cursor-pointer text-left`),t[2]=c):c=t[2];let l;t[3]!==n||t[4]!==s?(l=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,onClick:s,className:c,children:n})}),t[3]=n,t[4]=s,t[5]=l):l=t[5];let u;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(u=(0,$.jsx)(Fr,{children:`View output`}),t[6]=u):u=t[6];let d;t[7]===l?d=t[8]:(d=(0,$.jsxs)(Mi,{children:[l,u]}),t[7]=l,t[8]=d);let f;t[9]===r?f=t[10]:(f=r&&(0,$.jsx)(xp,{}),t[9]=r,t[10]=f);let p;t[11]!==d||t[12]!==f?(p=(0,$.jsxs)(`div`,{className:`py-0.5 flex items-center gap-2 min-w-0 w-full`,children:[d,f]}),t[11]=d,t[12]=f,t[13]=p):p=t[13];let m;t[14]!==i||t[15]!==n||t[16]!==o||t[17]!==a?(m=(0,$.jsx)($f,{open:i,onOpenChange:a,title:n,content:o}),t[14]=i,t[15]=n,t[16]=o,t[17]=a,t[18]=m):m=t[18];let h;return t[19]!==p||t[20]!==m?(h=(0,$.jsxs)($.Fragment,{children:[p,m]}),t[19]=p,t[20]=m,t[21]=h):h=t[21],h}function Tp(e){let t=(0,Q.c)(11),{toolName:n,displayName:r,commandInline:i,isError:a}=e,o;t[0]!==r||t[1]!==n?(o=(0,$.jsx)(fp,{toolName:n,displayName:r,isActive:!1}),t[0]=r,t[1]=n,t[2]=o):o=t[2];let s;t[3]===i?s=t[4]:(s=i!==null&&(0,$.jsx)(`code`,{className:G(U.caption,`font-mono truncate whitespace-nowrap rounded bg-muted/60 px-1 py-0.5 min-w-0 flex-1`),children:i.label}),t[3]=i,t[4]=s);let c;t[5]===a?c=t[6]:(c=a&&(0,$.jsx)(xp,{}),t[5]=a,t[6]=c);let l;return t[7]!==o||t[8]!==s||t[9]!==c?(l=(0,$.jsxs)(`div`,{className:`py-0.5 flex items-center gap-2 min-w-0 w-full`,children:[o,s,c]}),t[7]=o,t[8]=s,t[9]=c,t[10]=l):l=t[10],l}function Ep(e){let t=(0,Q.c)(33),{isExpanded:n,onToggle:r,isActive:i,runningProgress:a,displayName:o,activeDisplayName:s,isError:c,toolName:l,toolId:u,scrollRef:d,streamingOutput:f,toolInput:p}=e,m;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(m=G(U.body,`w-full py-2 flex items-center gap-2 font-medium text-foreground hover:bg-muted/50 transition-colors text-left`),t[0]=m):m=t[0];let h;t[1]!==s||t[2]!==o||t[3]!==i||t[4]!==a?(h=i?(0,$.jsxs)($.Fragment,{children:[s,a&&(0,$.jsx)(`span`,{className:`ml-2 text-muted-foreground tabular-nums`,children:a})]}):o,t[1]=s,t[2]=o,t[3]=i,t[4]=a,t[5]=h):h=t[5];let g;t[6]===h?g=t[7]:(g=(0,$.jsx)(`span`,{className:`flex-1 text-left min-w-0 truncate`,children:h}),t[6]=h,t[7]=g);let _;t[8]!==i||t[9]!==c?(_=c&&!i&&(0,$.jsx)(xp,{}),t[8]=i,t[9]=c,t[10]=_):_=t[10];let v;t[11]===n?v=t[12]:(v=n?(0,$.jsx)(tn,{className:`h-4 w-4 shrink-0`}):(0,$.jsx)(sn,{className:`h-4 w-4 shrink-0`}),t[11]=n,t[12]=v);let y;t[13]!==r||t[14]!==g||t[15]!==_||t[16]!==v?(y=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(`button`,{onClick:r,className:m,children:[g,_,v]})}),t[13]=r,t[14]=g,t[15]=_,t[16]=v,t[17]=y):y=t[17];let b;t[18]===l?b=t[19]:(b=(0,$.jsx)(Fr,{children:l}),t[18]=l,t[19]=b);let x;t[20]!==y||t[21]!==b?(x=(0,$.jsxs)(Mi,{children:[y,b]}),t[20]=y,t[21]=b,t[22]=x):x=t[22];let S;t[23]!==i||t[24]!==n||t[25]!==d||t[26]!==f||t[27]!==u||t[28]!==p?(S=n&&(0,$.jsxs)(`div`,{className:`py-2 border-t border-border`,children:[(0,$.jsxs)(`div`,{className:G(U.compact,`text-muted-foreground mb-2 font-mono`),children:[`ID: `,u]}),i?(0,$.jsx)(`div`,{ref:d,className:G(U.caption,yp,f&&bp),style:{maxHeight:`7.5em`},children:f}):p?(0,$.jsx)(`pre`,{className:Qf(),children:p}):null]}),t[23]=i,t[24]=n,t[25]=d,t[26]=f,t[27]=u,t[28]=p,t[29]=S):S=t[29];let C;return t[30]!==x||t[31]!==S?(C=(0,$.jsxs)(`div`,{className:`overflow-hidden`,children:[x,S]}),t[30]=x,t[31]=S,t[32]=C):C=t[32],C}function Dp({data:e,isError:t,isActive:n,commandInline:r,displayOutput:i,dialogOpen:a,onOpenChange:o,isExpanded:s,onToggle:c,scrollRef:l,streamingOutput:u,runningProgress:d}){return n?(0,$.jsx)(Sp,{toolName:e.toolName,activeDisplayName:e.activeDisplayName,commandInline:r,runningProgress:d,isExpanded:s,onToggle:c,scrollRef:l,streamingOutput:u}):r!==null&&i?(0,$.jsx)(Cp,{toolName:e.toolName,displayName:e.displayName,commandInline:r,isError:t,dialogOpen:a,onOpenChange:o,displayOutput:i}):r===null&&i?(0,$.jsx)(wp,{displayName:e.displayName,isError:t,dialogOpen:a,onOpenChange:o,displayOutput:i}):(0,$.jsx)(Tp,{toolName:e.toolName,displayName:e.displayName,commandInline:r,isError:t})}function Op({isActive:e,liveExecutionOutput:t,resultContent:n}){let r=n??``,i=e?t??r:r,a=i?cf(i):``;return{displayOutput:a,streamingOutput:e?a:``}}function kp({data:e,inline:t,resultContent:n,isError:r,isActive:i}){let a=(0,Z.useRef)(null),[o,s]=(0,Z.useState)(!!i),[c,l]=(0,Z.useState)(!1),u=(0,Z.useRef)(!!i),{displayOutput:d,streamingOutput:f}=Op({isActive:i,liveExecutionOutput:X(t=>t.toolCallProgress[e.toolId]?.executionOutput),resultContent:n}),p=Zf(e.command,e.toolId,!!i),m=e.command===null?null:Yd(e.command);return(0,Z.useEffect)(()=>{i&&!u.current?s(!0):!i&&u.current&&s(!1),u.current=!!i},[i]),(0,Z.useEffect)(()=>{o&&i&&a.current&&(a.current.scrollTop=a.current.scrollHeight)},[o,i,f]),t?Dp({data:e,isError:r,isActive:i,commandInline:m,displayOutput:d,dialogOpen:c,onOpenChange:l,isExpanded:o,onToggle:()=>s(!o),scrollRef:a,streamingOutput:f,runningProgress:p}):(0,$.jsx)(Ep,{isExpanded:o,onToggle:()=>s(!o),isActive:i,runningProgress:p,displayName:e.displayName,activeDisplayName:e.activeDisplayName,isError:r,toolName:e.toolName,toolId:e.toolId,scrollRef:a,streamingOutput:f,toolInput:e.toolInput})}function Ap(e){let t=(0,Q.c)(50),{data:n,inline:r,resultContent:i,isActive:a}=e,[o,s]=(0,Z.useState)(!!a),[c,l]=(0,Z.useState)(!1),u=n.fetchUrl,d;t[0]===i?d=t[1]:(d=i?jp(i):null,t[0]=i,t[1]=d);let f=d;if(r){let e;t[2]===o?e=t[3]:(e=()=>s(!o),t[2]=o,t[3]=e);let r=n.toolName,c=n.activeDisplayName,l=!!a,d;t[4]!==n.activeDisplayName||t[5]!==n.toolName||t[6]!==l?(d=(0,$.jsx)(fp,{toolName:r,displayName:c,isActive:l}),t[4]=n.activeDisplayName,t[5]=n.toolName,t[6]=l,t[7]=d):d=t[7];let p;t[8]===u?p=t[9]:(p=u!==null&&(0,$.jsx)(`span`,{className:G(U.caption,`break-all`),children:u}),t[8]=u,t[9]=p);let m;t[10]===f?m=t[11]:(m=f&&(0,$.jsxs)(`span`,{className:G(U.caption,`text-muted-foreground shrink-0`),children:[f.bytes,` bytes · HTTP `,f.code]}),t[10]=f,t[11]=m);let h;t[12]===o?h=t[13]:(h=o?(0,$.jsx)(tn,{className:`h-3 w-3 text-muted-foreground shrink-0`}):(0,$.jsx)(sn,{className:`h-3 w-3 text-muted-foreground shrink-0`}),t[12]=o,t[13]=h);let g;t[14]!==o||t[15]!==e||t[16]!==d||t[17]!==p||t[18]!==m||t[19]!==h?(g=(0,$.jsxs)(`button`,{type:`button`,className:`flex items-center gap-1.5 cursor-pointer select-none text-left w-full`,onClick:e,"aria-expanded":o,children:[d,p,m,h]}),t[14]=o,t[15]=e,t[16]=d,t[17]=p,t[18]=m,t[19]=h,t[20]=g):g=t[20];let _;t[21]!==o||t[22]!==i?(_=o&&i&&(0,$.jsx)(`pre`,{className:G(U.mono,U.caption,`whitespace-pre-wrap break-all rounded bg-muted/40 p-2 max-h-48 overflow-auto`),children:Mp(i)}),t[21]=o,t[22]=i,t[23]=_):_=t[23];let v;return t[24]!==g||t[25]!==_?(v=(0,$.jsxs)(`div`,{className:`flex flex-col gap-0.5`,children:[g,_]}),t[24]=g,t[25]=_,t[26]=v):v=t[26],v}let p=n.toolName,m=n.displayName,h=!!a,g;t[27]!==n.displayName||t[28]!==n.toolName||t[29]!==h?(g=(0,$.jsx)(fp,{toolName:p,displayName:m,isActive:h}),t[27]=n.displayName,t[28]=n.toolName,t[29]=h,t[30]=g):g=t[30];let _;t[31]===u?_=t[32]:(_=u!==null&&(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`code`,{className:G(U.mono,U.caption,`break-all`),children:u})}),(0,$.jsx)(Fr,{children:u})]}),t[31]=u,t[32]=_);let v;t[33]===f?v=t[34]:(v=f&&(0,$.jsxs)(`span`,{className:G(U.caption,`text-muted-foreground`),children:[f.bytes,` bytes · HTTP `,f.code,` · `,f.durationMs,`ms`]}),t[33]=f,t[34]=v);let y;t[35]===i?y=t[36]:(y=i&&(0,$.jsx)(`button`,{type:`button`,className:G(U.caption,`text-brand hover:underline ml-auto`),onClick:()=>l(!0),children:`View result`}),t[35]=i,t[36]=y);let b;t[37]!==g||t[38]!==_||t[39]!==v||t[40]!==y?(b=(0,$.jsxs)(`div`,{className:`flex items-center gap-2 flex-wrap`,children:[g,_,v,y]}),t[37]=g,t[38]=_,t[39]=v,t[40]=y,t[41]=b):b=t[41];let x;t[42]===i?x=t[43]:(x=i?Mp(i):``,t[42]=i,t[43]=x);let S;t[44]!==c||t[45]!==x?(S=(0,$.jsx)($f,{open:c,onOpenChange:l,title:`Fetch result`,content:x}),t[44]=c,t[45]=x,t[46]=S):S=t[46];let C;return t[47]!==S||t[48]!==b?(C=(0,$.jsxs)(`div`,{className:`rounded-lg border border-border p-3 my-1`,children:[b,S]}),t[47]=S,t[48]=b,t[49]=C):C=t[49],C}function jp(e){try{let t=JSON.parse(e);if(typeof t.bytes==`number`&&typeof t.code==`number`)return{bytes:t.bytes,code:t.code,durationMs:typeof t.durationMs==`number`?t.durationMs:0}}catch{}return null}function Mp(e){try{let t=JSON.parse(e);if(typeof t.result==`string`)return t.result}catch{}return e}function Np(e){let t=(0,Q.c)(14),n,r,i,a;t[0]===e?(n=t[1],r=t[2],i=t[3],a=t[4]):({open:i,defaultOpen:n,onOpenChange:r,...a}=e,t[0]=e,t[1]=n,t[2]=r,t[3]=i,t[4]=a);let o;t[5]!==n||t[6]!==r||t[7]!==i?(o={open:i,defaultOpen:n,onOpenChange:r},t[5]=n,t[6]=r,t[7]=i,t[8]=o):o=t[8];let s=Bi(o),c;return t[9]!==n||t[10]!==s||t[11]!==i||t[12]!==a?(c=(0,$.jsx)(On,{open:i,defaultOpen:n,onOpenChange:s,...a}),t[9]=n,t[10]=s,t[11]=i,t[12]=a,t[13]=c):c=t[13],c}var Pp=pr,Fp=Z.forwardRef((e,t)=>{let n=(0,Q.c)(17),r,i,a,o,s;n[0]===e?(r=n[1],i=n[2],a=n[3],o=n[4],s=n[5]):({className:r,align:o,sideOffset:s,container:i,...a}=e,n[0]=e,n[1]=r,n[2]=i,n[3]=a,n[4]=o,n[5]=s);let c=o===void 0?`center`:o,l=s===void 0?4:s,u=i??void 0,d;n[6]===r?d=n[7]:(d=G(`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`,r),n[6]=r,n[7]=d);let f;n[8]!==c||n[9]!==a||n[10]!==t||n[11]!==l||n[12]!==d?(f=(0,$.jsx)(Jn,{ref:t,align:c,sideOffset:l,className:d,...a}),n[8]=c,n[9]=a,n[10]=t,n[11]=l,n[12]=d,n[13]=f):f=n[13];let p;return n[14]!==u||n[15]!==f?(p=(0,$.jsx)(Cn,{container:u,children:f}),n[14]=u,n[15]=f,n[16]=p):p=n[16],p});Fp.displayName=Jn.displayName;function Ip(e,t){return e===null&&t===null?null:e!==null&&t!==null?`${e}-${e+t}`:e===null?`${t}`:`${e}-`}function Lp(e){let t=(0,Q.c)(6),{offset:n,limit:r}=e,i;t[0]!==r||t[1]!==n?(i=Ip(n,r),t[0]=r,t[1]=n,t[2]=i):i=t[2];let a=i;if(a===null)return null;let o;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(o=G(U.compact,`font-mono tabular-nums text-muted-foreground`),t[3]=o):o=t[3];let s;return t[4]===a?s=t[5]:(s=(0,$.jsx)(`span`,{className:o,children:a}),t[4]=a,t[5]=s),s}function Rp(e){let t=(0,Q.c)(8),{added:n,removed:r}=e;if(n===null||r===null)return null;let i;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(i=G(U.compact,`inline-flex items-center gap-2 font-mono tabular-nums`),t[0]=i):i=t[0];let a;t[1]===n?a=t[2]:(a=(0,$.jsxs)(`span`,{className:`text-green-600 dark:text-green-400`,children:[`+`,n]}),t[1]=n,t[2]=a);let o;t[3]===r?o=t[4]:(o=(0,$.jsxs)(`span`,{className:`text-red-600 dark:text-red-400`,children:[`-`,r]}),t[3]=r,t[4]=o);let s;return t[5]!==a||t[6]!==o?(s=(0,$.jsxs)(`span`,{className:i,children:[a,o]}),t[5]=a,t[6]=o,t[7]=s):s=t[7],s}function zp(e){let t=(0,Q.c)(19),{data:n,label:r,isActive:i}=e;if(!(!n.isObservationTool&&n.toolInput&&!n.command&&!n.path&&!n.pattern&&!n.fileDisplayName)){let e;return t[0]!==n.toolName||t[1]!==i||t[2]!==r?(e=(0,$.jsx)(fp,{toolName:n.toolName,displayName:r,isActive:i}),t[0]=n.toolName,t[1]=i,t[2]=r,t[3]=e):e=t[3],e}let a;t[4]!==n.toolName||t[5]!==i||t[6]!==r?(a=(0,$.jsx)(Pp,{asChild:!0,children:(0,$.jsx)(`span`,{className:`inline-flex`,children:(0,$.jsx)(`button`,{type:`button`,className:`inline-flex shrink-0 items-center gap-1 rounded p-0.5 text-muted-foreground hover:text-foreground focus:outline-none focus-visible:ring-2 focus-visible:ring-ring`,"aria-label":`Show tool details`,children:(0,$.jsx)(fp,{toolName:n.toolName,displayName:r,isActive:i,muted:!1})})})}),t[4]=n.toolName,t[5]=i,t[6]=r,t[7]=a):a=t[7];let o;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(o=G(U.caption,`space-y-2`),t[8]=o):o=t[8];let s;t[9]===n.toolId?s=t[10]:(s=(0,$.jsxs)(`div`,{className:`font-mono`,children:[`ID: `,n.toolId]}),t[9]=n.toolId,t[10]=s);let c;t[11]===n.toolInput?c=t[12]:(c=(0,$.jsx)(`pre`,{className:`font-mono whitespace-pre-wrap overflow-auto max-h-48`,children:n.toolInput}),t[11]=n.toolInput,t[12]=c);let l;t[13]!==s||t[14]!==c?(l=(0,$.jsx)(Fp,{className:`w-80 max-h-80 overflow-auto`,align:`start`,children:(0,$.jsxs)(`div`,{className:o,children:[s,c]})}),t[13]=s,t[14]=c,t[15]=l):l=t[15];let u;return t[16]!==a||t[17]!==l?(u=(0,$.jsxs)(Np,{children:[a,l]}),t[16]=a,t[17]=l,t[18]=u):u=t[18],u}function Bp(e){let t=(0,Q.c)(27),{data:n,resultContent:r,resultDialogOpen:i,onResultDialogOpenChange:a}=e;if(!n.isObservationTool)return null;if(!r){let e;return t[0]!==n.limit||t[1]!==n.offset?(e=(0,$.jsx)(Lp,{offset:n.offset,limit:n.limit}),t[0]=n.limit,t[1]=n.offset,t[2]=e):e=t[2],e}let o;t[3]===a?o=t[4]:(o=()=>a(!0),t[3]=a,t[4]=o);let s;t[5]!==n.limit||t[6]!==n.offset?(s=(0,$.jsx)(Lp,{offset:n.offset,limit:n.limit}),t[5]=n.limit,t[6]=n.offset,t[7]=s):s=t[7];let c;t[8]!==o||t[9]!==s?(c=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,onClick:o,className:`hover:underline cursor-pointer`,children:s})}),t[8]=o,t[9]=s,t[10]=c):c=t[10];let l;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,$.jsx)(Fr,{children:`View results`}),t[11]=l):l=t[11];let u;t[12]===c?u=t[13]:(u=(0,$.jsxs)(Mi,{children:[c,l]}),t[12]=c,t[13]=u);let d;t[14]!==n.limit||t[15]!==n.offset?(d=Ip(n.offset,n.limit)??``,t[14]=n.limit,t[15]=n.offset,t[16]=d):d=t[16];let f=`${n.displayName} ${d}`,p;t[17]===f?p=t[18]:(p=f.trim(),t[17]=f,t[18]=p);let m;t[19]!==a||t[20]!==r||t[21]!==i||t[22]!==p?(m=(0,$.jsx)($f,{open:i,onOpenChange:a,title:p,content:r}),t[19]=a,t[20]=r,t[21]=i,t[22]=p,t[23]=m):m=t[23];let h;return t[24]!==u||t[25]!==m?(h=(0,$.jsxs)($.Fragment,{children:[u,m]}),t[24]=u,t[25]=m,t[26]=h):h=t[26],h}function Vp(e,t){return e.hasEditDiff?`View diff`:e.filePath?ef(e.filePath,t)??e.filePath:e.fileDisplayName}function Hp(e){let t=(0,Q.c)(20),{data:n,onOpenFile:r,onDiffDialogOpenChange:i}=e,a;t[0]!==n.hasEditDiff||t[1]!==i||t[2]!==r?(a=n.hasEditDiff?()=>i(!0):r,t[0]=n.hasEditDiff,t[1]=i,t[2]=r,t[3]=a):a=t[3];let o;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(o=G(`inline-flex max-w-full items-center gap-2 cursor-pointer`,U.caption,`font-mono hover:underline`),t[4]=o):o=t[4];let s;t[5]===n.fileDisplayName?s=t[6]:(s=(0,$.jsx)(`span`,{className:`truncate max-w-[200px] sm:max-w-[320px]`,children:n.fileDisplayName}),t[5]=n.fileDisplayName,t[6]=s);let c;t[7]!==n.limit||t[8]!==n.offset||t[9]!==n.toolName?(c=n.toolName===`read`?(0,$.jsx)(Lp,{offset:n.offset,limit:n.limit}):null,t[7]=n.limit,t[8]=n.offset,t[9]=n.toolName,t[10]=c):c=t[10];let l;t[11]!==n.editAddedLineCount||t[12]!==n.editDeletedLineCount||t[13]!==n.isEditTool?(l=n.isEditTool?(0,$.jsx)(Rp,{added:n.editAddedLineCount,removed:n.editDeletedLineCount}):null,t[11]=n.editAddedLineCount,t[12]=n.editDeletedLineCount,t[13]=n.isEditTool,t[14]=l):l=t[14];let u;return t[15]!==a||t[16]!==s||t[17]!==c||t[18]!==l?(u=(0,$.jsxs)(`button`,{type:`button`,onClick:a,className:o,children:[s,c,l]}),t[15]=a,t[16]=s,t[17]=c,t[18]=l,t[19]=u):u=t[19],u}function Up(e){let t=(0,Q.c)(16),{data:n,rootPath:r,open:i,onOpenChange:a}=e,o;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(o=G(U.caption,`font-mono`),t[0]=o):o=t[0];let s;t[1]!==n.filePath||t[2]!==r?(s=ef(n.filePath,r)??n.filePath,t[1]=n.filePath,t[2]=r,t[3]=s):s=t[3];let c;t[4]===s?c=t[5]:(c=(0,$.jsx)(Dr,{children:(0,$.jsx)(qa,{children:(0,$.jsx)(`code`,{className:o,children:s})})}),t[4]=s,t[5]=c);let l;t[6]!==n.editNewText||t[7]!==n.editOldText?(l=(0,$.jsx)(`div`,{className:`overflow-auto flex-1 rounded border border-border bg-muted/30 p-3`,children:(0,$.jsx)(rp,{oldText:n.editOldText,newText:n.editNewText})}),t[6]=n.editNewText,t[7]=n.editOldText,t[8]=l):l=t[8];let u;t[9]!==c||t[10]!==l?(u=(0,$.jsxs)(Ir,{className:`max-w-2xl h-[80vh] flex flex-col`,children:[c,l]}),t[9]=c,t[10]=l,t[11]=u):u=t[11];let d;return t[12]!==a||t[13]!==i||t[14]!==u?(d=(0,$.jsx)(Ni,{open:i,onOpenChange:a,children:u}),t[12]=a,t[13]=i,t[14]=u,t[15]=d):d=t[15],d}function Wp(e){let t=(0,Q.c)(20),{data:n,rootPath:r,onOpenFile:i,diffDialogOpen:a,onDiffDialogOpenChange:o}=e;if(!n.fileDisplayName)return null;let s;t[0]!==n||t[1]!==o||t[2]!==i?(s=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(Hp,{data:n,onOpenFile:i,onDiffDialogOpenChange:o})}),t[0]=n,t[1]=o,t[2]=i,t[3]=s):s=t[3];let c;t[4]!==n||t[5]!==r?(c=Vp(n,r),t[4]=n,t[5]=r,t[6]=c):c=t[6];let l;t[7]===c?l=t[8]:(l=(0,$.jsx)(Fr,{children:c}),t[7]=c,t[8]=l);let u;t[9]!==s||t[10]!==l?(u=(0,$.jsxs)(Mi,{children:[s,l]}),t[9]=s,t[10]=l,t[11]=u):u=t[11];let d;t[12]!==n||t[13]!==a||t[14]!==o||t[15]!==r?(d=n.hasEditDiff&&(0,$.jsx)(Up,{data:n,rootPath:r,open:a,onOpenChange:o}),t[12]=n,t[13]=a,t[14]=o,t[15]=r,t[16]=d):d=t[16];let f;return t[17]!==u||t[18]!==d?(f=(0,$.jsxs)($.Fragment,{children:[u,d]}),t[17]=u,t[18]=d,t[19]=f):f=t[19],f}function Gp(e){let t=(0,Q.c)(3),{data:n}=e;if(n.path===null)return null;let r;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=G(U.caption,`font-mono truncate max-w-[200px] sm:max-w-[320px]`),t[0]=r):r=t[0];let i;return t[1]===n.path?i=t[2]:(i=(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`span`,{className:r,children:n.path})}),(0,$.jsx)(Fr,{children:n.path})]}),t[1]=n.path,t[2]=i),i}function Kp(e){let t=(0,Q.c)(34),{data:n,inline:r,rootPath:i,onOpenFile:a,resultContent:o,isActive:s}=e,c=s===void 0?!1:s,[l,u]=(0,Z.useState)(!1),[d,f]=(0,Z.useState)(!1),[p,m]=(0,Z.useState)(!1),h=c?n.activeDisplayName:n.displayName,g;t[0]!==n.filePath||t[1]!==a||t[2]!==i?(g=function(){!n.filePath||!a||a(i&&n.filePath.startsWith(i)?n.filePath.slice(i.length+1):n.filePath)},t[0]=n.filePath,t[1]=a,t[2]=i,t[3]=g):g=t[3];let _=g;if(r){let e;t[4]!==n||t[5]!==c||t[6]!==h?(e=(0,$.jsx)(zp,{data:n,label:h,isActive:c}),t[4]=n,t[5]=c,t[6]=h,t[7]=e):e=t[7];let r;t[8]!==n||t[9]!==o||t[10]!==p?(r=(0,$.jsx)(Bp,{data:n,resultContent:o,resultDialogOpen:p,onResultDialogOpenChange:m}),t[8]=n,t[9]=o,t[10]=p,t[11]=r):r=t[11];let a;t[12]!==n||t[13]!==d||t[14]!==_||t[15]!==i?(a=n.fileDisplayName?(0,$.jsx)(Wp,{data:n,rootPath:i,onOpenFile:_,diffDialogOpen:d,onDiffDialogOpenChange:f}):(0,$.jsx)(Gp,{data:n}),t[12]=n,t[13]=d,t[14]=_,t[15]=i,t[16]=a):a=t[16];let s;return t[17]!==e||t[18]!==r||t[19]!==a?(s=(0,$.jsxs)(`div`,{className:`py-0.5 flex items-center gap-2 flex-wrap`,children:[e,r,a]}),t[17]=e,t[18]=r,t[19]=a,t[20]=s):s=t[20],s}let v;t[21]===l?v=t[22]:(v=()=>u(!l),t[21]=l,t[22]=v);let y;t[23]===n.toolInput?y=t[24]:(y=n.toolInput?(0,$.jsx)(`pre`,{className:Qf(),children:n.toolInput}):null,t[23]=n.toolInput,t[24]=y);let b;t[25]!==n.toolId||t[26]!==y?(b=(0,$.jsx)(vp,{toolId:n.toolId,children:y}),t[25]=n.toolId,t[26]=y,t[27]=b):b=t[27];let x;return t[28]!==n.displayName||t[29]!==n.toolName||t[30]!==l||t[31]!==v||t[32]!==b?(x=(0,$.jsx)(_p,{expanded:l,onToggle:v,title:n.displayName,tooltip:n.toolName,children:b}),t[28]=n.displayName,t[29]=n.toolName,t[30]=l,t[31]=v,t[32]=b,t[33]=x):x=t[33],x}function qp(e){let t=e.replace(/\s+/g,` `).trim();return{fullText:t,label:Jd(t,50)}}function Jp(e){let t=(0,Q.c)(11),{text:n}=e,r;t[0]===n?r=t[1]:(r=qp(n),t[0]=n,t[1]=r);let{label:i,fullText:a}=r,o;t[2]===i?o=t[3]:(o=(0,$.jsx)(cp,{children:i}),t[2]=i,t[3]=o);let s=o;if(i===a)return s;let c;t[4]===s?c=t[5]:(c=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`span`,{className:`min-w-0`,children:s})}),t[4]=s,t[5]=c);let l;t[6]===a?l=t[7]:(l=(0,$.jsx)(Fr,{className:`max-w-md break-all font-mono`,children:a}),t[6]=a,t[7]=l);let u;return t[8]!==c||t[9]!==l?(u=(0,$.jsxs)(Mi,{children:[c,l]}),t[8]=c,t[9]=l,t[10]=u):u=t[10],u}function Yp(e){let t=(0,Q.c)(7),{data:n}=e,r;t[0]===n.webSearchQuery?r=t[1]:(r=n.webSearchQuery!==null&&(0,$.jsx)(Jp,{text:n.webSearchQuery}),t[0]=n.webSearchQuery,t[1]=r);let i;t[2]===n.pattern?i=t[3]:(i=n.pattern!==null&&(0,$.jsx)(Jp,{text:n.pattern}),t[2]=n.pattern,t[3]=i);let a;return t[4]!==r||t[5]!==i?(a=(0,$.jsxs)($.Fragment,{children:[r,i]}),t[4]=r,t[5]=i,t[6]=a):a=t[6],a}function Xp(e){let t=(0,Q.c)(51),{data:n,inline:r,resultContent:i,isActive:a}=e,[o,s]=(0,Z.useState)(!1),[c,l]=(0,Z.useState)(!1),u=n.webSearchQuery??n.pattern??`search`,d;t[0]===u?d=t[1]:(d=qp(u),t[0]=u,t[1]=d);let{label:f,fullText:p}=d,m=f!==p;if(r){if(i&&(n.toolName===`find`||n.webSearchQuery!==null||n.pattern!==null)){let e;t[2]!==n.displayName||t[3]!==n.toolName||t[4]!==a?(e=(0,$.jsx)(fp,{toolName:n.toolName,displayName:n.displayName,isActive:a,progressState:`searching`,className:`shrink-0`}),t[2]=n.displayName,t[3]=n.toolName,t[4]=a,t[5]=e):e=t[5];let r,o;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(r=()=>l(!0),o=G(U.caption,`font-mono hover:underline truncate whitespace-nowrap min-w-0 cursor-pointer text-left`),t[6]=r,t[7]=o):(r=t[6],o=t[7]);let s;t[8]===f?s=t[9]:(s=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,onClick:r,className:o,children:f})}),t[8]=f,t[9]=s);let u=m?p:`View results`,d;t[10]===u?d=t[11]:(d=(0,$.jsx)(Fr,{className:`max-w-md break-all font-mono`,children:u}),t[10]=u,t[11]=d);let h;t[12]!==s||t[13]!==d?(h=(0,$.jsxs)(Mi,{children:[s,d]}),t[12]=s,t[13]=d,t[14]=h):h=t[14];let g;t[15]!==e||t[16]!==h?(g=(0,$.jsxs)(`div`,{className:`py-0.5 flex items-center gap-2 min-w-0`,children:[e,h]}),t[15]=e,t[16]=h,t[17]=g):g=t[17];let _;t[18]!==c||t[19]!==i||t[20]!==p?(_=(0,$.jsx)($f,{open:c,onOpenChange:l,title:p,content:i}),t[18]=c,t[19]=i,t[20]=p,t[21]=_):_=t[21];let v;return t[22]!==_||t[23]!==g?(v=(0,$.jsxs)($.Fragment,{children:[g,_]}),t[22]=_,t[23]=g,t[24]=v):v=t[24],v}let e;t[25]!==n.displayName||t[26]!==n.toolName||t[27]!==a?(e=(0,$.jsx)(fp,{toolName:n.toolName,displayName:n.displayName,isActive:a,progressState:`searching`,className:`shrink-0`}),t[25]=n.displayName,t[26]=n.toolName,t[27]=a,t[28]=e):e=t[28];let r;t[29]===n?r=t[30]:(r=(0,$.jsx)(Yp,{data:n}),t[29]=n,t[30]=r);let o;t[31]===n.lang?o=t[32]:(o=n.lang!==null&&(0,$.jsx)(`span`,{className:G(U.caption,`px-1.5 py-0.5 rounded bg-muted`),children:n.lang}),t[31]=n.lang,t[32]=o);let s;return t[33]!==e||t[34]!==r||t[35]!==o?(s=(0,$.jsxs)(`div`,{className:`py-0.5 flex items-center gap-2 min-w-0`,children:[e,r,o]}),t[33]=e,t[34]=r,t[35]=o,t[36]=s):s=t[36],s}let h;t[37]===o?h=t[38]:(h=()=>s(!o),t[37]=o,t[38]=h);let g;t[39]===n.toolInput?g=t[40]:(g=n.toolInput?(0,$.jsx)(`pre`,{className:Qf(),children:n.toolInput}):null,t[39]=n.toolInput,t[40]=g);let _;t[41]!==n.toolId||t[42]!==g?(_=(0,$.jsx)(vp,{toolId:n.toolId,children:g}),t[41]=n.toolId,t[42]=g,t[43]=_):_=t[43];let v;return t[44]!==n.displayName||t[45]!==n.toolName||t[46]!==o||t[47]!==a||t[48]!==h||t[49]!==_?(v=(0,$.jsx)(_p,{expanded:o,onToggle:h,title:n.displayName,tooltip:n.toolName,isActive:a,progressState:`searching`,children:_}),t[44]=n.displayName,t[45]=n.toolName,t[46]=o,t[47]=a,t[48]=h,t[49]=_,t[50]=v):v=t[50],v}function Zp(e){return e.type!==`subagent_event`||!e.subagentEvent?null:Qp(e.subagentEvent)}function Qp(e){switch(e.type){case`message`:return e.content&&e.isThinking||e.content&&!e.isThinking&&e.role!==`tool`?e.content:e.role===`tool`&&e.content?rm(e.content):null;case`shell_permission`:{let t=e.shellPermission?.command?.trim();return t?`\n⏳ Waiting for shell approval: ${t}\n`:`
19
18
  ⏳ Waiting for shell approval…
20
19
  `}case`web_fetch_permission`:{let t=e.webFetchPermission?.hostname?.trim();return t?`\n⏳ Waiting for approval to fetch ${t}\n`:`
21
20
  ⏳ Waiting for web fetch approval…
22
- `}case`error`:return e.content?`\n${e.content}`:null;default:return null}}function Zp(e){let t=e.content??``;return typeof t==`string`?t:JSON.stringify(t)}function Qp(e,t){let n=Zp(t);return n?t.isThinking?zs(e,`thinking`,n):Is(n)?$s(e,n):n.trim().startsWith(`[`)?e:zs(e,`content`,n):e}function $p(e,t){let n=Zp(t);return n?Is(n)?$s(e,n):zs(e,`content`,n):e}function em(e,t){switch(t.type){case`message`:return Qp(e,t);case`result`:return $p(e,t);case`shell_permission`:return t.shellPermission?tc(e,t.shellPermission):e;case`web_fetch_permission`:return t.webFetchPermission?Ds(e,t.webFetchPermission):e;case`error`:{let n=t.content?.trim()||t.error?.message?.trim();return n?zs(e,`content`,`\n\n${n}`):e}default:return e}}function tm(e){try{let t=JSON.parse(e);if(!Array.isArray(t))return null;let n=[];for(let e of t)if(e.type===`tool_use`&&e.name)n.push(`\n→ ${e.name}\n`);else if(e.type===`tool-result`&&e.content){let t=typeof e.content==`string`?e.content.trim():JSON.stringify(e.content),r=t.slice(0,120);if(r){let e=t.length>120?`…`:``;n.push(`✓ ${r}${e}\n`)}}return n.length>0?n.join(``):null}catch{return null}}function nm(e,t){return F(e,t)}function rm(e){let t=[];for(let n of e)t=em(t,n);return Bs(t)}function im(e){let t=(0,Z.useRef)([]),n=(0,Z.useRef)(0),r=(0,Z.useRef)(e);r.current!==e&&(r.current=e,t.current=[],n.current=0);let i=X(t=>e?t.subagentTranscripts[e]:void 0),a=i?.length??0;if(i&&a>n.current){let e=t.current;for(let t=n.current;t<a;t++)e=em(e,i[t]);t.current=e,n.current=a}return a===0&&n.current>0&&(t.current=[],n.current=0),[(0,Z.useMemo)(()=>a===0?null:Bs(t.current),[a]),a>0]}var am=(0,Z.createContext)(null);function om(e){let t=(0,Q.c)(3),{value:n,children:r}=e,i;return t[0]!==r||t[1]!==n?(i=(0,$.jsx)(am.Provider,{value:n,children:r}),t[0]=r,t[1]=n,t[2]=i):i=t[2],i}function sm(){let e=(0,Q.c)(2),t=(0,Z.useContext)(am),n;return e[0]===t?n=e[1]:(n=t??cm,e[0]=t,e[1]=n),n}function cm(){return null}function lm(e){let t=(0,Q.c)(3),n=sm(),r;return t[0]!==n||t[1]!==e?(r=(0,$.jsx)(n,{...e}),t[0]=n,t[1]=e,t[2]=r):r=t[2],r}function um(e){let t=(0,Q.c)(13),{output:n,scrollRef:r,placeholder:i,threadId:a,className:o,style:s}=e,c;t[0]===n?c=t[1]:(c=n?ds(of(n)):``,t[0]=n,t[1]=c);let l=c,u;t[2]===o?u=t[3]:(u=G(U.caption,`text-muted-foreground/60 overflow-y-auto scrollbar-hide`,o),t[2]=o,t[3]=u);let d;t[4]!==l||t[5]!==i||t[6]!==a?(d=l?(0,$.jsx)(Du,{content:l,compact:!0,threadId:a}):i,t[4]=l,t[5]=i,t[6]=a,t[7]=d):d=t[7];let f;return t[8]!==r||t[9]!==s||t[10]!==u||t[11]!==d?(f=(0,$.jsx)(`div`,{ref:r,className:u,style:s,children:d}),t[8]=r,t[9]=s,t[10]=u,t[11]=d,t[12]=f):f=t[12],f}function dm(e){let t=(0,Q.c)(11),{blocks:n,isStreaming:r,threadId:i,scrollRef:a,className:o,style:s}=e,c;t[0]===o?c=t[1]:(c=G(`overflow-y-auto scrollbar-hide`,o),t[0]=o,t[1]=c);let l;t[2]!==n||t[3]!==r||t[4]!==i?(l=(0,$.jsx)(lm,{blocks:n,isStreaming:r,threadId:i}),t[2]=n,t[3]=r,t[4]=i,t[5]=l):l=t[5];let u;return t[6]!==a||t[7]!==s||t[8]!==c||t[9]!==l?(u=(0,$.jsx)(`div`,{ref:a,className:c,style:s,children:l}),t[6]=a,t[7]=s,t[8]=c,t[9]=l,t[10]=u):u=t[10],u}var fm=`Subagent`;function pm(e){return e.prompt?.trim()||e.toolInput?.trim()||null}function mm(e){let t=(0,Q.c)(7),{expanded:n,children:r}=e,i=n?`grid-rows-[1fr]`:`grid-rows-[0fr]`,a;t[0]===i?a=t[1]:(a=G(`grid transition-[grid-template-rows] duration-200 ease-in-out`,i),t[0]=i,t[1]=a);let o;t[2]===r?o=t[3]:(o=(0,$.jsx)(`div`,{className:`overflow-hidden`,children:r}),t[2]=r,t[3]=o);let s;return t[4]!==a||t[5]!==o?(s=(0,$.jsx)(`div`,{className:a,children:o}),t[4]=a,t[5]=o,t[6]=s):s=t[6],s}function hm(e){let t=(0,Q.c)(15),{expanded:n,onToggle:r,agentName:i,subagentType:a}=e,o;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,$.jsx)(`span`,{className:U.caption,children:fm}),t[0]=o):o=t[0];let s;t[1]===n?s=t[2]:(s=n?(0,$.jsx)(tn,{className:`h-3.5 w-3.5 shrink-0`}):(0,$.jsx)(sn,{className:`h-3.5 w-3.5 shrink-0`}),t[1]=n,t[2]=s);let c;t[3]!==n||t[4]!==r||t[5]!==s?(c=(0,$.jsxs)(`button`,{type:`button`,onClick:r,className:`inline-flex items-center gap-1 rounded p-0.5 text-muted-foreground hover:text-foreground focus:outline-none focus-visible:ring-2 focus-visible:ring-ring`,"aria-expanded":n,children:[o,s]}),t[3]=n,t[4]=r,t[5]=s,t[6]=c):c=t[6];let l;t[7]===i?l=t[8]:(l=i&&(0,$.jsx)(ip,{name:i}),t[7]=i,t[8]=l);let u;t[9]===a?u=t[10]:(u=a&&(0,$.jsx)(ap,{type:a}),t[9]=a,t[10]=u);let d;return t[11]!==c||t[12]!==l||t[13]!==u?(d=(0,$.jsxs)(`div`,{className:`flex items-center gap-2 flex-wrap`,children:[c,l,u]}),t[11]=c,t[12]=l,t[13]=u,t[14]=d):d=t[14],d}function gm(e){let t=(0,Q.c)(11),{open:n,onOpenChange:r,prompt:i,content:a,threadId:o,hasTranscript:s,transcriptBlocks:c}=e,l;t[0]!==s||t[1]!==o||t[2]!==c?(l=s&&c?(0,$.jsx)(lm,{blocks:c,isStreaming:!1,threadId:o}):void 0,t[0]=s,t[1]=o,t[2]=c,t[3]=l):l=t[3];let u;return t[4]!==a||t[5]!==r||t[6]!==n||t[7]!==i||t[8]!==l||t[9]!==o?(u=(0,$.jsx)($f,{open:n,onOpenChange:r,prompt:i,content:a,markdown:!0,threadId:o,body:l}),t[4]=a,t[5]=r,t[6]=n,t[7]=i,t[8]=l,t[9]=o,t[10]=u):u=t[10],u}function _m(e){let t=(0,Q.c)(25),{expanded:n,onToggle:r,subagentType:i,hasTranscript:a,transcriptBlocks:o,isTranscriptStreaming:s,isActive:c,threadId:l,scrollRef:u,streamingOutput:d}=e,f,p;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(f=(0,$.jsx)(`span`,{className:U.caption,children:fm}),p=(0,$.jsx)(lp,{size:`sm`}),t[0]=f,t[1]=p):(f=t[0],p=t[1]);let m;t[2]===i?m=t[3]:(m=i&&(0,$.jsx)(ap,{type:i}),t[2]=i,t[3]=m);let h;t[4]===n?h=t[5]:(h=n?(0,$.jsx)(tn,{className:`h-3 w-3 text-muted-foreground shrink-0`}):(0,$.jsx)(sn,{className:`h-3 w-3 text-muted-foreground shrink-0`}),t[4]=n,t[5]=h);let g;t[6]!==n||t[7]!==r||t[8]!==m||t[9]!==h?(g=(0,$.jsxs)(`button`,{type:`button`,className:`flex items-center gap-1.5 cursor-pointer select-none text-left w-full`,onClick:r,"aria-expanded":n,children:[f,p,m,h]}),t[6]=n,t[7]=r,t[8]=m,t[9]=h,t[10]=g):g=t[10];let _;t[11]!==a||t[12]!==c||t[13]!==s||t[14]!==u||t[15]!==d||t[16]!==l||t[17]!==o?(_=a&&o?(0,$.jsx)(dm,{scrollRef:u,blocks:o,isStreaming:s&&!!c,threadId:l,className:`ml-5`,style:{maxHeight:`7.5em`}}):(0,$.jsx)(um,{scrollRef:u,output:d,placeholder:`Running subagent...`,threadId:l,className:`ml-5`,style:{maxHeight:`7.5em`}}),t[11]=a,t[12]=c,t[13]=s,t[14]=u,t[15]=d,t[16]=l,t[17]=o,t[18]=_):_=t[18];let v;t[19]!==n||t[20]!==_?(v=(0,$.jsx)(mm,{expanded:n,children:_}),t[19]=n,t[20]=_,t[21]=v):v=t[21];let y;return t[22]!==g||t[23]!==v?(y=(0,$.jsxs)(`div`,{className:`flex flex-col gap-0.5`,children:[g,v]}),t[22]=g,t[23]=v,t[24]=y):y=t[24],y}function vm(e){let t=(0,Q.c)(25),{expanded:n,onToggle:r,agentName:i,subagentType:a,subagentPrompt:o,dialogOpen:s,onDialogOpenChange:c,displayOutput:l,hasTranscript:u,transcriptBlocks:d,threadId:f}=e,p;t[0]!==i||t[1]!==n||t[2]!==r||t[3]!==a?(p=(0,$.jsx)(hm,{expanded:n,onToggle:r,agentName:i,subagentType:a}),t[0]=i,t[1]=n,t[2]=r,t[3]=a,t[4]=p):p=t[4];let m;t[5]!==c||t[6]!==o?(m=o?(0,$.jsx)(`button`,{type:`button`,onClick:()=>c(!0),className:G(U.caption,`ml-5 block max-w-full text-left whitespace-pre-wrap leading-relaxed text-muted-foreground hover:text-foreground hover:underline focus:outline-none focus-visible:ring-2 focus-visible:ring-ring rounded`),children:o}):(0,$.jsx)(`button`,{type:`button`,onClick:()=>c(!0),className:G(U.caption,`ml-5 text-muted-foreground hover:text-foreground hover:underline focus:outline-none focus-visible:ring-2 focus-visible:ring-ring rounded`),children:`View output`}),t[5]=c,t[6]=o,t[7]=m):m=t[7];let h;t[8]!==n||t[9]!==m?(h=(0,$.jsx)(mm,{expanded:n,children:m}),t[8]=n,t[9]=m,t[10]=h):h=t[10];let g;t[11]!==p||t[12]!==h?(g=(0,$.jsxs)(`div`,{className:`flex flex-col gap-0.5 py-0.5`,children:[p,h]}),t[11]=p,t[12]=h,t[13]=g):g=t[13];let _;t[14]!==s||t[15]!==l||t[16]!==u||t[17]!==c||t[18]!==o||t[19]!==f||t[20]!==d?(_=(0,$.jsx)(gm,{open:s,onOpenChange:c,prompt:o,content:l,threadId:f,hasTranscript:u,transcriptBlocks:d}),t[14]=s,t[15]=l,t[16]=u,t[17]=c,t[18]=o,t[19]=f,t[20]=d,t[21]=_):_=t[21];let v;return t[22]!==g||t[23]!==_?(v=(0,$.jsxs)($.Fragment,{children:[g,_]}),t[22]=g,t[23]=_,t[24]=v):v=t[24],v}function ym(e){let t=(0,Q.c)(13),{expanded:n,onToggle:r,agentName:i,subagentType:a,subagentPrompt:o}=e,s;t[0]!==i||t[1]!==n||t[2]!==r||t[3]!==a?(s=(0,$.jsx)(hm,{expanded:n,onToggle:r,agentName:i,subagentType:a}),t[0]=i,t[1]=n,t[2]=r,t[3]=a,t[4]=s):s=t[4];let c;t[5]===o?c=t[6]:(c=o?(0,$.jsx)(`div`,{className:G(U.caption,`ml-5 whitespace-pre-wrap leading-relaxed text-muted-foreground`),children:o}):null,t[5]=o,t[6]=c);let l;t[7]!==n||t[8]!==c?(l=(0,$.jsx)(mm,{expanded:n,children:c}),t[7]=n,t[8]=c,t[9]=l):l=t[9];let u;return t[10]!==s||t[11]!==l?(u=(0,$.jsxs)(`div`,{className:`flex flex-col gap-0.5 py-0.5`,children:[s,l]}),t[10]=s,t[11]=l,t[12]=u):u=t[12],u}function bm(e){let t=(0,Q.c)(50),{expanded:n,onToggle:r,onOpenDialog:i,agentName:a,subagentType:o,isActive:s,toolName:c,toolId:l,hasTranscript:u,transcriptBlocks:d,isTranscriptStreaming:f,threadId:p,scrollRef:m,streamingOutput:h,subagentPrompt:g,canViewOutput:_,displayOutput:v,dialogOpen:y,onDialogOpenChange:b}=e,x,S;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(x=G(U.body,`w-full py-2 flex items-center gap-2 font-medium text-foreground hover:bg-muted/50 transition-colors text-left`),S=(0,$.jsx)(`span`,{className:`flex-1 text-left min-w-0 truncate`,children:fm}),t[0]=x,t[1]=S):(x=t[0],S=t[1]);let C;t[2]===a?C=t[3]:(C=a&&(0,$.jsx)(ip,{name:a}),t[2]=a,t[3]=C);let w;t[4]===o?w=t[5]:(w=o&&(0,$.jsx)(ap,{type:o}),t[4]=o,t[5]=w);let T;t[6]===s?T=t[7]:(T=s&&(0,$.jsx)(lp,{size:`md`}),t[6]=s,t[7]=T);let E;t[8]===n?E=t[9]:(E=n?(0,$.jsx)(tn,{className:`h-4 w-4 shrink-0`}):(0,$.jsx)(sn,{className:`h-4 w-4 shrink-0`}),t[8]=n,t[9]=E);let D;t[10]!==r||t[11]!==C||t[12]!==w||t[13]!==T||t[14]!==E?(D=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(`button`,{onClick:r,className:x,children:[S,C,w,T,E]})}),t[10]=r,t[11]=C,t[12]=w,t[13]=T,t[14]=E,t[15]=D):D=t[15];let O;t[16]===c?O=t[17]:(O=(0,$.jsx)(Fr,{children:c}),t[16]=c,t[17]=O);let k;t[18]!==D||t[19]!==O?(k=(0,$.jsxs)(Mi,{children:[D,O]}),t[18]=D,t[19]=O,t[20]=k):k=t[20];let A;t[21]!==_||t[22]!==v||t[23]!==n||t[24]!==u||t[25]!==s||t[26]!==f||t[27]!==i||t[28]!==m||t[29]!==h||t[30]!==g||t[31]!==p||t[32]!==l||t[33]!==d?(A=n&&(0,$.jsxs)(`div`,{className:`py-2 border-t border-border`,children:[(0,$.jsxs)(`div`,{className:G(U.compact,`text-muted-foreground mb-2 font-mono`),children:[`ID: `,l]}),u&&d?(0,$.jsx)(dm,{scrollRef:s?m:void 0,blocks:d,isStreaming:f&&!!s,threadId:p,className:`max-h-96`}):s?(0,$.jsx)(um,{scrollRef:m,output:h,placeholder:`Running subagent...`,threadId:p,style:{maxHeight:`7.5em`}}):g?_?(0,$.jsx)(`button`,{type:`button`,onClick:i,className:G(Xf({maxHeight:`64`,padding:`3`,leading:!0}),`w-full text-left hover:bg-muted/80 transition-colors`),children:g}):(0,$.jsx)(`div`,{className:Xf({maxHeight:`64`,padding:`3`,leading:!0}),children:g}):v?(0,$.jsx)(um,{output:v,threadId:p,className:`max-h-64`}):null]}),t[21]=_,t[22]=v,t[23]=n,t[24]=u,t[25]=s,t[26]=f,t[27]=i,t[28]=m,t[29]=h,t[30]=g,t[31]=p,t[32]=l,t[33]=d,t[34]=A):A=t[34];let j;t[35]!==A||t[36]!==k?(j=(0,$.jsxs)(`div`,{className:`overflow-hidden`,children:[k,A]}),t[35]=A,t[36]=k,t[37]=j):j=t[37];let M;t[38]!==_||t[39]!==y||t[40]!==v||t[41]!==u||t[42]!==b||t[43]!==g||t[44]!==p||t[45]!==d?(M=_?(0,$.jsx)(gm,{open:y,onOpenChange:b,prompt:g,content:v,threadId:p,hasTranscript:u,transcriptBlocks:d}):null,t[38]=_,t[39]=y,t[40]=v,t[41]=u,t[42]=b,t[43]=g,t[44]=p,t[45]=d,t[46]=M):M=t[46];let N;return t[47]!==j||t[48]!==M?(N=(0,$.jsxs)($.Fragment,{children:[j,M]}),t[47]=j,t[48]=M,t[49]=N):N=t[49],N}function xm(e){let t=(0,Q.c)(63),{data:n,inline:r,resultContent:i,isActive:a}=e,o=(0,Z.useRef)(null),[s,c]=(0,Z.useState)(!0),[l,u]=(0,Z.useState)(!1),d=(0,Z.useRef)(!!a),f;t[0]===n.toolId?f=t[1]:(f=e=>e.toolCallProgress[n.toolId]?.executionOutput,t[0]=n.toolId,t[1]=f);let p=X(f),m=X(Sm),[h,g]=im(n.toolId),_=!!(h&&h.length>0),v=a?p??i??``:i??p??``,y;t[2]===v?y=t[3]:(y=v?of(v):``,t[2]=v,t[3]=y);let b=y,x=a?b:``,S;t[4]===n?S=t[5]:(S=pm(n),t[4]=n,t[5]=S);let C=S,w=!!b,T,E;t[6]===a?(T=t[7],E=t[8]):(T=()=>{a&&!d.current&&c(!0),d.current=!!a},E=[a],t[6]=a,t[7]=T,t[8]=E),(0,Z.useEffect)(T,E);let D;t[9]!==s||t[10]!==a?(D=()=>{s&&a&&o.current&&(o.current.scrollTop=o.current.scrollHeight)},t[9]=s,t[10]=a,t[11]=D):D=t[11];let O;t[12]!==s||t[13]!==a||t[14]!==x?(O=[s,a,x],t[12]=s,t[13]=a,t[14]=x,t[15]=O):O=t[15],(0,Z.useEffect)(D,O);let k;t[16]===s?k=t[17]:(k=function(){c(!s)},t[16]=s,t[17]=k);let A=k;if(r){if(a){let e;return t[18]!==n.subagentType||t[19]!==s||t[20]!==_||t[21]!==a||t[22]!==g||t[23]!==x||t[24]!==m||t[25]!==A||t[26]!==h?(e=(0,$.jsx)(_m,{expanded:s,onToggle:A,subagentType:n.subagentType,hasTranscript:_,transcriptBlocks:h,isTranscriptStreaming:g,isActive:a,threadId:m,scrollRef:o,streamingOutput:x}),t[18]=n.subagentType,t[19]=s,t[20]=_,t[21]=a,t[22]=g,t[23]=x,t[24]=m,t[25]=A,t[26]=h,t[27]=e):e=t[27],e}if(b){let e;return t[28]!==n.agentName||t[29]!==n.subagentType||t[30]!==l||t[31]!==b||t[32]!==s||t[33]!==_||t[34]!==C||t[35]!==m||t[36]!==A||t[37]!==h?(e=(0,$.jsx)(vm,{expanded:s,onToggle:A,agentName:n.agentName,subagentType:n.subagentType,subagentPrompt:C,dialogOpen:l,onDialogOpenChange:u,displayOutput:b,hasTranscript:_,transcriptBlocks:h,threadId:m}),t[28]=n.agentName,t[29]=n.subagentType,t[30]=l,t[31]=b,t[32]=s,t[33]=_,t[34]=C,t[35]=m,t[36]=A,t[37]=h,t[38]=e):e=t[38],e}let e;return t[39]!==n.agentName||t[40]!==n.subagentType||t[41]!==s||t[42]!==C||t[43]!==A?(e=(0,$.jsx)(ym,{expanded:s,onToggle:A,agentName:n.agentName,subagentType:n.subagentType,subagentPrompt:C}),t[39]=n.agentName,t[40]=n.subagentType,t[41]=s,t[42]=C,t[43]=A,t[44]=e):e=t[44],e}let j;t[45]===Symbol.for(`react.memo_cache_sentinel`)?(j=()=>u(!0),t[45]=j):j=t[45];let M;return t[46]!==w||t[47]!==n.agentName||t[48]!==n.subagentType||t[49]!==n.toolId||t[50]!==n.toolName||t[51]!==l||t[52]!==b||t[53]!==s||t[54]!==_||t[55]!==a||t[56]!==g||t[57]!==x||t[58]!==C||t[59]!==m||t[60]!==A||t[61]!==h?(M=(0,$.jsx)(bm,{expanded:s,onToggle:A,onOpenDialog:j,agentName:n.agentName,subagentType:n.subagentType,isActive:a,toolName:n.toolName,toolId:n.toolId,hasTranscript:_,transcriptBlocks:h,isTranscriptStreaming:g,threadId:m,scrollRef:o,streamingOutput:x,subagentPrompt:C,canViewOutput:w,displayOutput:b,dialogOpen:l,onDialogOpenChange:u}),t[46]=w,t[47]=n.agentName,t[48]=n.subagentType,t[49]=n.toolId,t[50]=n.toolName,t[51]=l,t[52]=b,t[53]=s,t[54]=_,t[55]=a,t[56]=g,t[57]=x,t[58]=C,t[59]=m,t[60]=A,t[61]=h,t[62]=M):M=t[62],M}function Sm(e){return e.selectedThreadId}function Cm(e){let t=(0,Q.c)(31),{data:n,inline:r,isActive:i}=e,[a,o]=(0,Z.useState)(!1),s=i?n.activeDisplayName:n.displayName,c;t[0]!==n.inputObj||t[1]!==n.skillName?(c=n.skillName?null:Zd(n.inputObj,32,[`skillName`]),t[0]=n.inputObj,t[1]=n.skillName,t[2]=c):c=t[2];let l=c;if(r){let e;t[3]!==n.toolName||t[4]!==i||t[5]!==s?(e=(0,$.jsx)(up,{toolName:n.toolName,displayName:s,isActive:i}),t[3]=n.toolName,t[4]=i,t[5]=s,t[6]=e):e=t[6];let r;t[7]!==n.skillName||t[8]!==l?(r=n.skillName?(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`span`,{className:G(U.caption,`font-mono truncate max-w-[200px] sm:max-w-[320px]`),children:n.skillName})}),(0,$.jsx)(Fr,{children:n.skillName})]}):l?(0,$.jsx)(`span`,{className:G(U.caption,`font-mono text-muted-foreground truncate max-w-[200px] sm:max-w-[320px]`),children:l}):null,t[7]=n.skillName,t[8]=l,t[9]=r):r=t[9];let a;return t[10]!==e||t[11]!==r?(a=(0,$.jsxs)(`div`,{className:`py-0.5 flex items-center gap-2 flex-wrap min-w-0`,children:[e,r]}),t[10]=e,t[11]=r,t[12]=a):a=t[12],a}let u;t[13]===a?u=t[14]:(u=()=>o(!a),t[13]=a,t[14]=u);let d;t[15]!==n.skillName||t[16]!==l?(d=n.skillName?(0,$.jsx)(`span`,{className:G(U.caption,`font-mono text-muted-foreground truncate max-w-[200px] sm:max-w-[320px]`),children:n.skillName}):l?(0,$.jsx)(`span`,{className:G(U.caption,`font-mono text-muted-foreground truncate max-w-[200px] sm:max-w-[320px]`),children:l}):void 0,t[15]=n.skillName,t[16]=l,t[17]=d):d=t[17];let f;t[18]===n.toolInput?f=t[19]:(f=n.toolInput?(0,$.jsx)(`pre`,{className:Xf(),children:n.toolInput}):null,t[18]=n.toolInput,t[19]=f);let p;t[20]!==n.toolId||t[21]!==f?(p=(0,$.jsx)(gp,{toolId:n.toolId,children:f}),t[20]=n.toolId,t[21]=f,t[22]=p):p=t[22];let m;return t[23]!==n.toolName||t[24]!==a||t[25]!==i||t[26]!==s||t[27]!==u||t[28]!==d||t[29]!==p?(m=(0,$.jsx)(hp,{expanded:a,onToggle:u,title:s,tooltip:n.toolName,isActive:i,trailing:d,children:p}),t[23]=n.toolName,t[24]=a,t[25]=i,t[26]=s,t[27]=u,t[28]=d,t[29]=p,t[30]=m):m=t[30],m}function wm(e){let t=(0,Q.c)(14),{data:n,inline:r,isActive:i}=e,[a,o]=(0,Z.useState)(!1);if(r)return null;let s;t[0]===a?s=t[1]:(s=()=>o(!a),t[0]=a,t[1]=s);let c;t[2]===n.toolInput?c=t[3]:(c=n.toolInput?(0,$.jsx)(`pre`,{className:Xf(),children:n.toolInput}):null,t[2]=n.toolInput,t[3]=c);let l;t[4]!==n.toolId||t[5]!==c?(l=(0,$.jsx)(gp,{toolId:n.toolId,children:c}),t[4]=n.toolId,t[5]=c,t[6]=l):l=t[6];let u;return t[7]!==n.displayName||t[8]!==n.toolName||t[9]!==a||t[10]!==i||t[11]!==s||t[12]!==l?(u=(0,$.jsx)(hp,{expanded:a,onToggle:s,title:n.displayName,tooltip:n.toolName,isActive:i,buttonClassName:U.label,children:l}),t[7]=n.displayName,t[8]=n.toolName,t[9]=a,t[10]=i,t[11]=s,t[12]=l,t[13]=u):u=t[13],u}function Tm(e){let t=(0,Q.c)(23),{data:n,inline:r,isActive:i}=e,[a,o]=(0,Z.useState)(!1);if(r){let e;t[0]!==n.displayName||t[1]!==n.toolName||t[2]!==i?(e=(0,$.jsx)(up,{toolName:n.toolName,displayName:n.displayName,isActive:i}),t[0]=n.displayName,t[1]=n.toolName,t[2]=i,t[3]=e):e=t[3];let r;t[4]===n.imageGenPrompt?r=t[5]:(r=n.imageGenPrompt!==null&&(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`span`,{className:G(U.caption,`truncate max-w-[200px] sm:max-w-[320px]`),children:n.imageGenPrompt})}),(0,$.jsx)(Fr,{children:n.imageGenPrompt})]}),t[4]=n.imageGenPrompt,t[5]=r);let a;return t[6]!==e||t[7]!==r?(a=(0,$.jsxs)(`div`,{className:`py-0.5 flex items-center gap-2 flex-wrap`,children:[e,r]}),t[6]=e,t[7]=r,t[8]=a):a=t[8],a}let s;t[9]===a?s=t[10]:(s=()=>o(!a),t[9]=a,t[10]=s);let c;t[11]===n.toolInput?c=t[12]:(c=n.toolInput?(0,$.jsx)(`pre`,{className:Xf(),children:n.toolInput}):null,t[11]=n.toolInput,t[12]=c);let l;t[13]!==n.toolId||t[14]!==c?(l=(0,$.jsx)(gp,{toolId:n.toolId,children:c}),t[13]=n.toolId,t[14]=c,t[15]=l):l=t[15];let u;return t[16]!==n.displayName||t[17]!==n.toolName||t[18]!==a||t[19]!==i||t[20]!==s||t[21]!==l?(u=(0,$.jsx)(hp,{expanded:a,onToggle:s,title:n.displayName,tooltip:n.toolName,isActive:i,buttonClassName:U.label,children:l}),t[16]=n.displayName,t[17]=n.toolName,t[18]=a,t[19]=i,t[20]=s,t[21]=l,t[22]=u):u=t[22],u}function Em(e){if(!e)return null;try{let t=JSON.parse(e);return su(t,{content:e,...t})}catch{return su(e,{content:e})}}function Dm(e){return e.savedPath?e.savedPath.split(`/`).pop()??e.savedPath:`image`}function Om(e){let t=(0,Q.c)(44),{data:n,inline:r,resultContent:i,isActive:a}=e,[o,s]=(0,Z.useState)(!1),[c,l]=(0,Z.useState)(!1),u=X(km),d,f;t[0]===i?(d=t[1],f=t[2]):(d=Em(i),f=d?Dm(d):null,t[0]=i,t[1]=d,t[2]=f);let p=f;if(r){let e;t[3]!==n.displayName||t[4]!==n.toolName||t[5]!==a?(e=(0,$.jsx)(up,{toolName:n.toolName,displayName:n.displayName,isActive:a}),t[3]=n.displayName,t[4]=n.toolName,t[5]=a,t[6]=e):e=t[6];let r;t[7]!==n.findImagesQuery||t[8]!==d?(r=n.findImagesQuery!==null&&!d&&(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`span`,{className:G(U.caption,`truncate max-w-[200px] sm:max-w-[320px]`),children:n.findImagesQuery})}),(0,$.jsx)(Fr,{children:n.findImagesQuery})]}),t[7]=n.findImagesQuery,t[8]=d,t[9]=r):r=t[9];let i;t[10]!==d||t[11]!==p?(i=d&&p&&(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(`button`,{type:`button`,onClick:()=>l(!0),className:G(U.caption,`hover:underline`),children:[`Found `,p]})}),(0,$.jsx)(Fr,{children:`View image`})]}),t[10]=d,t[11]=p,t[12]=i):i=t[12];let o;t[13]!==e||t[14]!==r||t[15]!==i?(o=(0,$.jsxs)(`div`,{className:`py-0.5 flex items-center gap-2 flex-wrap`,children:[e,r,i]}),t[13]=e,t[14]=r,t[15]=i,t[16]=o):o=t[16];let s;t[17]!==c||t[18]!==d||t[19]!==p||t[20]!==u?(s=d&&(0,$.jsx)(Ni,{open:c,onOpenChange:l,children:(0,$.jsxs)(Ir,{className:`max-w-3xl max-h-[85vh] flex flex-col overflow-auto`,children:[(0,$.jsx)(Dr,{children:(0,$.jsxs)(qa,{children:[`Found `,p]})}),(0,$.jsx)(cu,{imageUrl:d.imageUrl,imageData:d.imageData,threadId:u,alt:p??`Found image`})]})}),t[17]=c,t[18]=d,t[19]=p,t[20]=u,t[21]=s):s=t[21];let f;return t[22]!==o||t[23]!==s?(f=(0,$.jsxs)($.Fragment,{children:[o,s]}),t[22]=o,t[23]=s,t[24]=f):f=t[24],f}let m;t[25]===o?m=t[26]:(m=()=>s(!o),t[25]=o,t[26]=m);let h=d?`Found ${p}`:n.displayName,g;t[27]===n.toolInput?g=t[28]:(g=n.toolInput?(0,$.jsx)(`pre`,{className:Xf(),children:n.toolInput}):null,t[27]=n.toolInput,t[28]=g);let _;t[29]!==d||t[30]!==p||t[31]!==u?(_=d&&(0,$.jsx)(cu,{imageUrl:d.imageUrl,imageData:d.imageData,threadId:u,alt:p??`Found image`}),t[29]=d,t[30]=p,t[31]=u,t[32]=_):_=t[32];let v;t[33]!==n.toolId||t[34]!==g||t[35]!==_?(v=(0,$.jsxs)(gp,{toolId:n.toolId,children:[g,_]}),t[33]=n.toolId,t[34]=g,t[35]=_,t[36]=v):v=t[36];let y;return t[37]!==n.toolName||t[38]!==o||t[39]!==a||t[40]!==m||t[41]!==h||t[42]!==v?(y=(0,$.jsx)(hp,{expanded:o,onToggle:m,title:h,tooltip:n.toolName,isActive:a,children:v}),t[37]=n.toolName,t[38]=o,t[39]=a,t[40]=m,t[41]=h,t[42]=v,t[43]=y):y=t[43],y}function km(e){return e.selectedThreadId}function Am(e){if(!e)return null;try{let t=JSON.parse(e);return t.action===`screenshot`?su(t,{content:e,...t}):null}catch{return null}}function jm(e){return e.savedPath?e.savedPath.split(`/`).pop()??e.savedPath:`screenshot`}function Mm(e){let t=(0,Q.c)(85),{data:n,inline:r,resultContent:i,isActive:a}=e,[o,s]=(0,Z.useState)(!1),[c,l]=(0,Z.useState)(!1),u=X(Nm),d;t[0]===n.inputObj?d=t[1]:(d=df(n.inputObj),t[0]=n.inputObj,t[1]=d);let f=d,p;t[2]===n.inputObj?p=t[3]:(p=Jd(n.inputObj),t[2]=n.inputObj,t[3]=p);let m=p,h;t[4]===i?h=t[5]:(h=i?pf(i):``,t[4]=i,t[5]=h);let g=h,_,v;t[6]===i?(_=t[7],v=t[8]):(_=Am(i),v=_?jm(_):null,t[6]=i,t[7]=_,t[8]=v);let y=v;if(r){let e;t[9]!==n.displayName||t[10]!==n.toolName||t[11]!==a?(e=(0,$.jsx)(up,{toolName:n.toolName,displayName:n.displayName,isActive:a}),t[9]=n.displayName,t[10]=n.toolName,t[11]=a,t[12]=e):e=t[12];let r;t[13]!==f||t[14]!==i||t[15]!==y||t[16]!==_?(r=_&&y?(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(`button`,{type:`button`,onClick:()=>l(!0),className:G(U.caption,`hover:underline`),children:[`Screenshot `,y]})}),(0,$.jsx)(Fr,{children:`View screenshot`})]}):i?(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,onClick:()=>l(!0),className:G(U.caption,`font-mono hover:underline break-all cursor-pointer`),children:f})}),(0,$.jsx)(Fr,{children:`View results`})]}):(0,$.jsx)(`span`,{className:G(U.caption,`font-mono break-all text-muted-foreground`),children:f}),t[13]=f,t[14]=i,t[15]=y,t[16]=_,t[17]=r):r=t[17];let o;t[18]!==e||t[19]!==r?(o=(0,$.jsxs)(`div`,{className:`py-0.5 flex items-center gap-2 flex-wrap`,children:[e,r]}),t[18]=e,t[19]=r,t[20]=o):o=t[20];let s;t[21]!==c||t[22]!==m||t[23]!==f||t[24]!==g||t[25]!==i||t[26]!==y||t[27]!==_||t[28]!==u?(s=_?(0,$.jsx)(Ni,{open:c,onOpenChange:l,children:(0,$.jsxs)(Ir,{className:`max-w-3xl max-h-[85vh] flex flex-col overflow-auto`,children:[(0,$.jsx)(Dr,{children:(0,$.jsxs)(qa,{children:[`Screenshot `,y]})}),(0,$.jsx)(cu,{imageUrl:_.imageUrl,imageData:_.imageData,threadId:u,alt:y??`Browser screenshot`})]})}):i&&(0,$.jsx)(ep,{open:c,onOpenChange:l,title:f,requestContent:m,responseContent:g}),t[21]=c,t[22]=m,t[23]=f,t[24]=g,t[25]=i,t[26]=y,t[27]=_,t[28]=u,t[29]=s):s=t[29];let d;return t[30]!==o||t[31]!==s?(d=(0,$.jsxs)($.Fragment,{children:[o,s]}),t[30]=o,t[31]=s,t[32]=d):d=t[32],d}let b;t[33]===o?b=t[34]:(b=()=>s(!o),t[33]=o,t[34]=b);let x;t[35]===Symbol.for(`react.memo_cache_sentinel`)?(x=G(U.body,`w-full py-2 flex items-center gap-2 font-medium text-foreground hover:bg-muted/50 transition-colors text-left`),t[35]=x):x=t[35];let S;t[36]===a?S=t[37]:(S=a&&(0,$.jsx)(lp,{size:`md`}),t[36]=a,t[37]=S);let C=_&&y?`Screenshot ${y}`:n.displayName,w;t[38]===C?w=t[39]:(w=(0,$.jsx)(`span`,{className:`flex-1 text-left min-w-0 truncate`,children:C}),t[38]=C,t[39]=w);let T;t[40]===Symbol.for(`react.memo_cache_sentinel`)?(T=G(U.caption,`font-mono text-muted-foreground truncate max-w-[200px] sm:max-w-[320px]`),t[40]=T):T=t[40];let E;t[41]===f?E=t[42]:(E=(0,$.jsx)(`span`,{className:T,children:f}),t[41]=f,t[42]=E);let D;t[43]!==i||t[44]!==_?(D=i&&!_&&(0,$.jsx)(`button`,{type:`button`,className:G(U.caption,`text-brand hover:underline shrink-0`),onClick:e=>{e.stopPropagation(),l(!0)},children:`View results`}),t[43]=i,t[44]=_,t[45]=D):D=t[45];let O;t[46]===_?O=t[47]:(O=_&&(0,$.jsx)(`button`,{type:`button`,className:G(U.caption,`text-brand hover:underline shrink-0`),onClick:e=>{e.stopPropagation(),l(!0)},children:`View screenshot`}),t[46]=_,t[47]=O);let k;t[48]===o?k=t[49]:(k=o?(0,$.jsx)(tn,{className:`h-4 w-4 shrink-0`}):(0,$.jsx)(sn,{className:`h-4 w-4 shrink-0`}),t[48]=o,t[49]=k);let A;t[50]!==E||t[51]!==D||t[52]!==O||t[53]!==k||t[54]!==b||t[55]!==S||t[56]!==w?(A=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(`button`,{onClick:b,className:x,children:[S,w,E,D,O,k]})}),t[50]=E,t[51]=D,t[52]=O,t[53]=k,t[54]=b,t[55]=S,t[56]=w,t[57]=A):A=t[57];let j;t[58]===n.toolName?j=t[59]:(j=(0,$.jsx)(Fr,{children:n.toolName}),t[58]=n.toolName,t[59]=j);let M;t[60]!==A||t[61]!==j?(M=(0,$.jsxs)(Mi,{children:[A,j]}),t[60]=A,t[61]=j,t[62]=M):M=t[62];let N;t[63]!==n.toolId||t[64]!==o||t[65]!==m||t[66]!==g||t[67]!==i||t[68]!==y||t[69]!==_||t[70]!==u?(N=o&&(0,$.jsxs)(`div`,{className:`py-2 border-t border-border space-y-2`,children:[(0,$.jsxs)(`div`,{className:G(U.compact,`text-muted-foreground font-mono`),children:[`ID: `,n.toolId]}),(0,$.jsxs)(`div`,{children:[(0,$.jsx)(`div`,{className:G(U.compact,`text-muted-foreground mb-1`),children:`Request`}),(0,$.jsx)(`pre`,{className:Xf(),children:m})]}),_?(0,$.jsx)(cu,{imageUrl:_.imageUrl,imageData:_.imageData,threadId:u,alt:y??`Browser screenshot`}):i&&(0,$.jsxs)(`div`,{children:[(0,$.jsx)(`div`,{className:G(U.compact,`text-muted-foreground mb-1`),children:`Response`}),(0,$.jsx)(`pre`,{className:Xf({maxHeight:`64`}),children:g})]})]}),t[63]=n.toolId,t[64]=o,t[65]=m,t[66]=g,t[67]=i,t[68]=y,t[69]=_,t[70]=u,t[71]=N):N=t[71];let P;t[72]!==c||t[73]!==m||t[74]!==f||t[75]!==g||t[76]!==i||t[77]!==y||t[78]!==_||t[79]!==u?(P=_?(0,$.jsx)(Ni,{open:c,onOpenChange:l,children:(0,$.jsxs)(Ir,{className:`max-w-3xl max-h-[85vh] flex flex-col overflow-auto`,children:[(0,$.jsx)(Dr,{children:(0,$.jsxs)(qa,{children:[`Screenshot `,y]})}),(0,$.jsx)(cu,{imageUrl:_.imageUrl,imageData:_.imageData,threadId:u,alt:y??`Browser screenshot`})]})}):i&&(0,$.jsx)(ep,{open:c,onOpenChange:l,title:f,requestContent:m,responseContent:g}),t[72]=c,t[73]=m,t[74]=f,t[75]=g,t[76]=i,t[77]=y,t[78]=_,t[79]=u,t[80]=P):P=t[80];let F;return t[81]!==M||t[82]!==N||t[83]!==P?(F=(0,$.jsxs)(`div`,{className:`overflow-hidden`,children:[M,N,P]}),t[81]=M,t[82]=N,t[83]=P,t[84]=F):F=t[84],F}function Nm(e){return e.selectedThreadId}function Pm(e){let t=(0,Q.c)(10),{summary:n,fullSummary:r}=e,i;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(i=G(U.caption,`font-mono text-muted-foreground truncate max-w-[200px] sm:max-w-[320px]`),t[0]=i):i=t[0];let a;t[1]===n?a=t[2]:(a=(0,$.jsx)(`span`,{className:i,children:n}),t[1]=n,t[2]=a);let o=a;if(n===r)return o;let s;t[3]===o?s=t[4]:(s=(0,$.jsx)(zi,{asChild:!0,children:o}),t[3]=o,t[4]=s);let c;t[5]===r?c=t[6]:(c=(0,$.jsx)(Fr,{className:`max-w-md break-all font-mono`,children:r}),t[5]=r,t[6]=c);let l;return t[7]!==s||t[8]!==c?(l=(0,$.jsxs)(Mi,{children:[s,c]}),t[7]=s,t[8]=c,t[9]=l):l=t[9],l}function Fm(e){let t=(0,Q.c)(40),{data:n,inline:r,isActive:i}=e,[a,o]=(0,Z.useState)(!1),s,c;if(t[0]!==n.inputObj||t[1]!==n.path||t[2]!==n.prompt){let e=n.path===null?[]:[`path`];s=n.prompt===null?Zd(n.inputObj,32,e):null,c=n.prompt===null?Zd(n.inputObj,1/0,e):null,t[0]=n.inputObj,t[1]=n.path,t[2]=n.prompt,t[3]=s,t[4]=c}else s=t[3],c=t[4];let l=c;if(r){let e=!!(n.prompt??(n.toolInput&&!n.command&&!n.path&&!n.pattern&&!n.fileDisplayName)),r;t[5]!==n.displayName||t[6]!==n.prompt||t[7]!==n.toolId||t[8]!==n.toolInput||t[9]!==n.toolName||t[10]!==e||t[11]!==i?(r=e?(0,$.jsxs)(jp,{children:[(0,$.jsx)(Mp,{asChild:!0,children:(0,$.jsx)(`span`,{className:`inline-flex`,children:(0,$.jsx)(`button`,{type:`button`,className:`inline-flex shrink-0 items-center gap-1 rounded p-0.5 text-muted-foreground hover:text-foreground focus:outline-none focus-visible:ring-2 focus-visible:ring-ring`,"aria-label":`Show tool details`,children:(0,$.jsx)(up,{toolName:n.toolName,displayName:n.displayName,isActive:i,muted:!1})})})}),(0,$.jsx)(Np,{className:`w-80 max-h-80 overflow-auto`,align:`start`,children:(0,$.jsxs)(`div`,{className:G(U.bodyMuted,`space-y-2`),children:[(0,$.jsxs)(`div`,{className:`font-mono`,children:[`ID: `,n.toolId]}),n.prompt?(0,$.jsx)(`div`,{className:G(U.caption,`whitespace-pre-wrap leading-relaxed select-text`),children:n.prompt}):n.toolInput?(0,$.jsx)(`pre`,{className:`font-mono whitespace-pre-wrap overflow-auto max-h-48`,children:n.toolInput}):null]})})]}):(0,$.jsx)(up,{toolName:n.toolName,displayName:n.displayName,isActive:i}),t[5]=n.displayName,t[6]=n.prompt,t[7]=n.toolId,t[8]=n.toolInput,t[9]=n.toolName,t[10]=e,t[11]=i,t[12]=r):r=t[12];let a;t[13]!==l||t[14]!==s?(a=s&&l&&(0,$.jsx)(Pm,{summary:s,fullSummary:l}),t[13]=l,t[14]=s,t[15]=a):a=t[15];let o;t[16]===n.path?o=t[17]:(o=n.path!==null&&(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`span`,{className:G(U.caption,`font-mono truncate max-w-[200px] sm:max-w-[320px]`),children:n.path})}),(0,$.jsx)(Fr,{children:n.path})]}),t[16]=n.path,t[17]=o);let c;return t[18]!==r||t[19]!==a||t[20]!==o?(c=(0,$.jsxs)(`div`,{className:`py-0.5 flex items-center gap-2 flex-wrap`,children:[r,a,o]}),t[18]=r,t[19]=a,t[20]=o,t[21]=c):c=t[21],c}let u;t[22]===a?u=t[23]:(u=()=>o(!a),t[22]=a,t[23]=u);let d;t[24]===s?d=t[25]:(d=s?(0,$.jsx)(`span`,{className:G(U.caption,`font-mono text-muted-foreground truncate max-w-[200px] sm:max-w-[320px]`),children:s}):void 0,t[24]=s,t[25]=d);let f;t[26]!==n.prompt||t[27]!==n.toolInput?(f=n.prompt?(0,$.jsx)(`div`,{className:Xf({maxHeight:`64`,padding:`3`,leading:!0}),children:n.prompt}):n.toolInput?(0,$.jsx)(`pre`,{className:Xf(),children:n.toolInput}):null,t[26]=n.prompt,t[27]=n.toolInput,t[28]=f):f=t[28];let p;t[29]!==n.toolId||t[30]!==f?(p=(0,$.jsx)(gp,{toolId:n.toolId,children:f}),t[29]=n.toolId,t[30]=f,t[31]=p):p=t[31];let m;return t[32]!==n.displayName||t[33]!==n.toolName||t[34]!==a||t[35]!==i||t[36]!==u||t[37]!==d||t[38]!==p?(m=(0,$.jsx)(hp,{expanded:a,onToggle:u,title:n.displayName,tooltip:n.toolName,isActive:i,trailing:d,children:p}),t[32]=n.displayName,t[33]=n.toolName,t[34]=a,t[35]=i,t[36]=u,t[37]=d,t[38]=p,t[39]=m):m=t[39],m}function Im(e){let t=(0,Q.c)(70),{block:n,inline:r,resultContent:i,resultIsError:a,isActive:o,observation:s}=e,{openChatDockPanel:c}=Hd(),{setPendingExplorerPath:l}=vc(),u=X(Lm),d=Lf(n,u),f=!!o,p;t[0]!==c||t[1]!==l?(p=function(e){l(e),c(`explorer`)},t[0]=c,t[1]=l,t[2]=p):p=t[2];let m=p,h;bb0:switch(d.toolType){case`bash`:{let e;t[3]!==d||t[4]!==r||t[5]!==f||t[6]!==i||t[7]!==a?(e=(0,$.jsx)(Dp,{data:d,inline:r,resultContent:i,isError:a,isActive:f}),t[3]=d,t[4]=r,t[5]=f,t[6]=i,t[7]=a,t[8]=e):e=t[8],h=e;break bb0}case`fetch`:{let e;t[9]!==d||t[10]!==r||t[11]!==f||t[12]!==i?(e=(0,$.jsx)(Op,{data:d,inline:r,resultContent:i,isActive:f}),t[9]=d,t[10]=r,t[11]=f,t[12]=i,t[13]=e):e=t[13],h=e;break bb0}case`file`:{let e;t[14]!==d||t[15]!==m||t[16]!==r||t[17]!==f||t[18]!==i||t[19]!==u?(e=(0,$.jsx)(Wp,{data:d,inline:r,rootPath:u,onOpenFile:m,resultContent:i,isActive:f}),t[14]=d,t[15]=m,t[16]=r,t[17]=f,t[18]=i,t[19]=u,t[20]=e):e=t[20],h=e;break bb0}case`search`:{let e;t[21]!==d||t[22]!==r||t[23]!==f||t[24]!==i?(e=(0,$.jsx)(Jp,{data:d,inline:r,resultContent:i,isActive:f}),t[21]=d,t[22]=r,t[23]=f,t[24]=i,t[25]=e):e=t[25],h=e;break bb0}case`agent`:{let e;t[26]!==d||t[27]!==r||t[28]!==f||t[29]!==i?(e=(0,$.jsx)(xm,{data:d,inline:r,resultContent:i,isActive:f}),t[26]=d,t[27]=r,t[28]=f,t[29]=i,t[30]=e):e=t[30],h=e;break bb0}case`skill`:{let e;t[31]!==d||t[32]!==r||t[33]!==f?(e=(0,$.jsx)(Cm,{data:d,inline:r,isActive:f}),t[31]=d,t[32]=r,t[33]=f,t[34]=e):e=t[34],h=e;break bb0}case`todo`:{let e;t[35]!==d||t[36]!==r||t[37]!==f?(e=(0,$.jsx)(wm,{data:d,inline:r,isActive:f}),t[35]=d,t[36]=r,t[37]=f,t[38]=e):e=t[38],h=e;break bb0}case`imageGen`:{let e;t[39]!==d||t[40]!==r||t[41]!==f?(e=(0,$.jsx)(Tm,{data:d,inline:r,isActive:f}),t[39]=d,t[40]=r,t[41]=f,t[42]=e):e=t[42],h=e;break bb0}case`findImages`:{let e;t[43]!==d||t[44]!==r||t[45]!==f||t[46]!==i?(e=(0,$.jsx)(Om,{data:d,inline:r,resultContent:i,isActive:f}),t[43]=d,t[44]=r,t[45]=f,t[46]=i,t[47]=e):e=t[47],h=e;break bb0}case`browser`:{let e;t[48]!==d||t[49]!==r||t[50]!==f||t[51]!==i?(e=(0,$.jsx)(Mm,{data:d,inline:r,resultContent:i,isActive:f}),t[48]=d,t[49]=r,t[50]=f,t[51]=i,t[52]=e):e=t[52],h=e;break bb0}default:{let e;t[53]!==d||t[54]!==r||t[55]!==f?(e=(0,$.jsx)(Fm,{data:d,inline:r,isActive:f}),t[53]=d,t[54]=r,t[55]=f,t[56]=e):e=t[56],h=e}}if(!s)return h;let g=i??``,_;t[57]!==s||t[58]!==g?(_=(0,$.jsx)(fp,{fallback:g,observation:s}),t[57]=s,t[58]=g,t[59]=_):_=t[59];let v=_;if(r){let e;t[60]===h?e=t[61]:(e=(0,$.jsx)(`div`,{className:`min-w-0`,children:h}),t[60]=h,t[61]=e);let n;return t[62]!==v||t[63]!==e?(n=(0,$.jsxs)(`div`,{className:`flex items-center gap-1.5 min-w-0`,children:[e,v]}),t[62]=v,t[63]=e,t[64]=n):n=t[64],n}let y;t[65]===v?y=t[66]:(y=(0,$.jsx)(`div`,{className:`mb-3`,children:v}),t[65]=v,t[66]=y);let b;return t[67]!==y||t[68]!==h?(b=(0,$.jsxs)($.Fragment,{children:[h,y]}),t[67]=y,t[68]=h,t[69]=b):b=t[69],b}function Lm(e){return e.projects.find(t=>t.projectId===e.selectedProjectId)?.threads.find(t=>t.threadId===e.selectedThreadId)?.path}var Rm=Ut(`app.todo-list.ui`),zm=(0,Z.createContext)({todos:[],setTodos:()=>{}});function Bm(e){let t=(0,Q.c)(10),{children:n,threadId:r}=e,i;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(i=[],t[0]=i):i=t[0];let[a,o]=(0,Z.useState)(i),s=(0,Z.useRef)(-1),c;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(c=(e,t)=>{t>=s.current&&(s.current=t,o(e))},t[1]=c):c=t[1];let l=c,u;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(u=()=>{s.current=-1,o([])},t[2]=u):u=t[2];let d;t[3]===r?d=t[4]:(d=[r],t[3]=r,t[4]=d),(0,Z.useEffect)(u,d);let f;t[5]===a?f=t[6]:(f={todos:a,setTodos:l},t[5]=a,t[6]=f);let p;return t[7]!==n||t[8]!==f?(p=(0,$.jsx)(zm.Provider,{value:f,children:n}),t[7]=n,t[8]=f,t[9]=p):p=t[9],p}function Vm(e){if(typeof e!=`string`)return null;let t=e.trim();if(!t.startsWith(`{`))return null;try{let e=JSON.parse(t);if(e&&Array.isArray(e.todos))return e.todos}catch(e){Rm.error(`Failed to parse todo JSON:`,e)}return null}function Hm(e,t){let n=Vm(t.text);if(n)return n;if(!t.params||typeof t.params!=`object`)return null;let r=t.params,i=r.action,a=Array.isArray(r.ids)?r.ids.filter(e=>typeof e==`string`):[];if(i===`update`&&a.length>0){let t=new Set(a),n=r.status===`pending`||r.status===`working`||r.status===`done`?r.status:void 0,i=typeof r.assignedTo==`string`?r.assignedTo:void 0,o=typeof r.passes==`boolean`?r.passes:void 0,s=!1,c=e.map(e=>{if(!t.has(e.id))return e;let r={id:e.id,description:e.description,status:n??e.status,assignedTo:i??e.assignedTo,passes:o??e.passes};return r.status===e.status&&r.assignedTo===e.assignedTo&&r.passes===e.passes?e:(s=!0,r)});return s?c:null}if(i===`delete`&&a.length>0){let t=new Set(a),n=e.filter(e=>!t.has(e.id));return n.length===e.length?null:n}return null}function Um(e){if(Array.isArray(e.todos))return e.todos;let t=[e.result,e.content],n=[];for(let e of t)if(typeof e==`string`)n.push(e);else if(Array.isArray(e))for(let t of e)typeof t==`object`&&t&&`text`in t&&typeof t.text==`string`&&n.push(t.text);for(let e of n){let t=Vm(e);if(t)return t}return null}function Wm(e){let t=(0,Q.c)(5),{todos:n,sequence:r}=e,{setTodos:i}=(0,Z.useContext)(zm),a,o;return t[0]!==r||t[1]!==i||t[2]!==n?(a=()=>{i(n,r)},o=[n,i,r],t[0]=r,t[1]=i,t[2]=n,t[3]=a,t[4]=o):(a=t[3],o=t[4]),(0,Z.useEffect)(a,o),null}function Gm(e){let t=(0,Q.c)(10),{sequence:n,params:r,text:i}=e,{todos:a,setTodos:o}=(0,Z.useContext)(zm),s=(0,Z.useRef)(null),c;t[0]===r?c=t[1]:(c=JSON.stringify(r),t[0]=r,t[1]=c);let l=`${n}:${c}:${i??``}`,u,d;return t[2]!==l||t[3]!==r||t[4]!==n||t[5]!==o||t[6]!==i||t[7]!==a?(u=()=>{if(s.current===l)return;let e=Hm(a,{params:r,text:i});e&&(s.current=l,o(e,n))},d=[a,r,i,n,o,l],t[2]=l,t[3]=r,t[4]=n,t[5]=o,t[6]=i,t[7]=a,t[8]=u,t[9]=d):(u=t[8],d=t[9]),(0,Z.useEffect)(u,d),null}function Km({toolName:e,result:t,findImagesResult:n,rootPath:r}){let i=Wd(e);if(typeof t==`object`&&t){let n=t,r=n.returnDisplay??n.return_display;if(typeof r==`string`&&r.trim())i=r.trim();else if(e===`read`||e===`file_read`){let e=n.filePath??n.file_path??n.path??``;e&&(i=`Completed ${e.split(`/`).pop()??e}`)}}else t??(i=`${Wd(e)} (no result)`);if(n){let e=n.savedPath?Qd(n.savedPath.split(`/`).pop()??n.savedPath,r):null;i=e?`Found ${e}`:`Found image`}return Qd(i,r)}function qm(e){let t=(0,Q.c)(10),{displayLabel:n,hasMore:r,fullOutputTooltip:i,onOpenDialog:a}=e,o;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(o=G(U.body,`px-3 py-2 flex items-center gap-2 font-medium text-foreground`),t[0]=o):o=t[0];let s;t[1]===n?s=t[2]:(s=(0,$.jsx)(`span`,{className:`min-w-0 truncate`,children:n}),t[1]=n,t[2]=s);let c;t[3]!==i||t[4]!==r||t[5]!==a?(c=r?(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,onClick:a,"aria-label":i,className:`inline-flex shrink-0 rounded p-0.5 text-muted-foreground hover:bg-muted hover:text-brand`,children:(0,$.jsx)(pt,{className:`h-3.5 w-3.5`})})}),(0,$.jsx)(Fr,{children:i})]}):null,t[3]=i,t[4]=r,t[5]=a,t[6]=c):c=t[6];let l;return t[7]!==s||t[8]!==c?(l=(0,$.jsxs)(`div`,{className:o,children:[s,c]}),t[7]=s,t[8]=c,t[9]=l):l=t[9],l}function Jm(e){let t=(0,Q.c)(11),{previewLines:n,hasMore:r,onOpenDialog:i}=e;if(r){let e;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=G(U.caption,`bg-muted p-2 rounded font-mono whitespace-pre-wrap overflow-auto text-foreground text-left mt-2 cursor-pointer hover:bg-muted/80`),t[0]=e):e=t[0];let r;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,$.jsxs)(`span`,{className:`text-muted-foreground`,children:[`
23
- `,`...`]}),t[1]=r):r=t[1];let a;t[2]!==i||t[3]!==n?(a=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(`pre`,{className:e,onClick:i,children:[n,r]})}),t[2]=i,t[3]=n,t[4]=a):a=t[4];let o;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,$.jsx)(Fr,{children:`Show full output…`}),t[5]=o):o=t[5];let s;return t[6]===a?s=t[7]:(s=(0,$.jsxs)(Mi,{children:[a,o]}),t[6]=a,t[7]=s),s}let a;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(a=G(U.caption,`bg-muted p-2 rounded font-mono whitespace-pre-wrap overflow-auto text-foreground text-left mt-2`),t[8]=a):a=t[8];let o;return t[9]===n?o=t[10]:(o=(0,$.jsx)(`pre`,{className:a,children:n}),t[9]=n,t[10]=o),o}function Ym(e){let t=(0,Q.c)(22),{displayLabel:n,resultDisplay:r,previewLines:i,hasMore:a,fullOutputTooltip:o,observation:s,rootPath:c,threadId:l}=e,[u,d]=(0,Z.useState)(!1),f;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(f=()=>d(!0),t[0]=f):f=t[0];let p;t[1]!==n||t[2]!==o||t[3]!==a?(p=(0,$.jsx)(qm,{displayLabel:n,hasMore:a,fullOutputTooltip:o,onOpenDialog:f}),t[1]=n,t[2]=o,t[3]=a,t[4]=p):p=t[4];let m;t[5]!==a||t[6]!==i||t[7]!==r?(m=r&&(0,$.jsx)(`div`,{className:`px-3 pb-2 bg-background border-t border-border`,children:(0,$.jsx)(Jm,{previewLines:i,hasMore:a,onOpenDialog:()=>d(!0)})}),t[5]=a,t[6]=i,t[7]=r,t[8]=m):m=t[8];let h;t[9]!==p||t[10]!==m?(h=(0,$.jsxs)(`div`,{className:`mb-3 rounded-lg border border-border bg-muted/50 overflow-hidden`,children:[p,m]}),t[9]=p,t[10]=m,t[11]=h):h=t[11];let g;t[12]!==u||t[13]!==a||t[14]!==s||t[15]!==r||t[16]!==c||t[17]!==l?(g=a&&(0,$.jsx)(Ni,{open:u,onOpenChange:d,children:(0,$.jsxs)(Ir,{className:`max-w-3xl max-h-[80vh] flex flex-col`,children:[(0,$.jsx)(Dr,{children:(0,$.jsx)(qa,{children:`Full Output`})}),(0,$.jsx)(dp,{enabled:u,fallback:r,observation:s,rootPath:c,threadId:l,className:G(U.caption,`bg-muted p-3 rounded font-mono whitespace-pre-wrap overflow-auto flex-1 text-foreground`)})]})}),t[12]=u,t[13]=a,t[14]=s,t[15]=r,t[16]=c,t[17]=l,t[18]=g):g=t[18];let _;return t[19]!==h||t[20]!==g?(_=(0,$.jsxs)($.Fragment,{children:[h,g]}),t[19]=h,t[20]=g,t[21]=_):_=t[21],_}function Xm(e){let t=(0,Q.c)(27),{displayLabel:n,toolName:r,toolId:i,findImagesResult:a,resultDisplay:o,observation:s,rootPath:c,threadId:l}=e,[u,d]=(0,Z.useState)(!1),f;t[0]===u?f=t[1]:(f=()=>d(!u),t[0]=u,t[1]=f);let p;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(p=G(U.body,`w-full px-3 py-2 flex items-center gap-2 font-medium text-foreground hover:bg-muted transition-colors text-left`),t[2]=p):p=t[2];let m;t[3]===n?m=t[4]:(m=(0,$.jsx)(`span`,{className:`flex-1 text-left min-w-0 truncate`,children:n}),t[3]=n,t[4]=m);let h;t[5]===u?h=t[6]:(h=u?(0,$.jsx)(tn,{className:`h-4 w-4 shrink-0`}):(0,$.jsx)(sn,{className:`h-4 w-4 shrink-0`}),t[5]=u,t[6]=h);let g;t[7]!==f||t[8]!==m||t[9]!==h?(g=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(`button`,{onClick:f,className:p,children:[m,h]})}),t[7]=f,t[8]=m,t[9]=h,t[10]=g):g=t[10];let _=`${r} result`,v;t[11]===_?v=t[12]:(v=(0,$.jsx)(Fr,{children:_}),t[11]=_,t[12]=v);let y;t[13]!==g||t[14]!==v?(y=(0,$.jsxs)(Mi,{children:[g,v]}),t[13]=g,t[14]=v,t[15]=y):y=t[15];let b;t[16]!==u||t[17]!==a||t[18]!==s||t[19]!==o||t[20]!==c||t[21]!==l||t[22]!==i?(b=u&&(0,$.jsxs)(`div`,{className:`px-3 py-2 bg-background border-t border-border`,children:[(0,$.jsxs)(`div`,{className:G(U.compact,`text-muted-foreground mb-2 font-mono`),children:[`Call ID: `,i]}),a&&(0,$.jsx)(cu,{imageUrl:a.imageUrl,imageData:a.imageData,threadId:l}),o&&!a&&(0,$.jsx)(dp,{enabled:u,fallback:o,observation:s,rootPath:c,threadId:l,className:G(U.caption,`bg-muted p-2 rounded font-mono whitespace-pre-wrap overflow-auto max-h-48 text-foreground text-left`)})]}),t[16]=u,t[17]=a,t[18]=s,t[19]=o,t[20]=c,t[21]=l,t[22]=i,t[23]=b):b=t[23];let x;return t[24]!==y||t[25]!==b?(x=(0,$.jsxs)(`div`,{className:`mb-3 rounded-lg border border-border bg-muted/50 overflow-hidden`,children:[y,b]}),t[24]=y,t[25]=b,t[26]=x):x=t[26],x}function Zm(e,t){let n=(0,Q.c)(37),r=e.toolName??`Unknown Tool`,i=e.toolCallId??`unknown`,a=e,o=e.result??a.content,s=Oe(a.observation)?a.observation:void 0,c;n[0]!==a||n[1]!==r?(c=r===`todo`?Um(a):null,n[0]=a,n[1]=r,n[2]=c):c=n[2];let l=c,u;n[3]!==a||n[4]!==o||n[5]!==r?(u=r===`find_images`?su(o,a):null,n[3]=a,n[4]=o,n[5]=r,n[6]=u):u=n[6];let d=u,f;n[7]!==o||n[8]!==t?(f=Qd(uf(o),t),n[7]=o,n[8]=t,n[9]=f):f=n[9];let p=f,m=p.length>0,h;n[10]!==d||n[11]!==o||n[12]!==t||n[13]!==r?(h=Km({toolName:r,result:o,findImagesResult:d,rootPath:t}),n[10]=d,n[11]=o,n[12]=t,n[13]=r,n[14]=h):h=n[14];let g=h,_;n[15]===r?_=n[16]:(_=r.toLowerCase().includes(`bash`),n[15]=r,n[16]=_);let v=_,y;n[17]===p?y=n[18]:(y=p?p.split(`
21
+ `}case`error`:return e.content?`\n${e.content}`:null;default:return null}}function $p(e){let t=e.content??``;return typeof t==`string`?t:JSON.stringify(t)}function em(e,t){let n=$p(t);return n?t.isThinking?zs(e,`thinking`,n):Is(n)?$s(e,n):n.trim().startsWith(`[`)?e:zs(e,`content`,n):e}function tm(e,t){let n=$p(t);return n?Is(n)?$s(e,n):zs(e,`content`,n):e}function nm(e,t){switch(t.type){case`message`:return em(e,t);case`result`:return tm(e,t);case`shell_permission`:return t.shellPermission?tc(e,t.shellPermission):e;case`web_fetch_permission`:return t.webFetchPermission?Ds(e,t.webFetchPermission):e;case`error`:{let n=t.content?.trim()||t.error?.message?.trim();return n?zs(e,`content`,`\n\n${n}`):e}default:return e}}function rm(e){try{let t=JSON.parse(e);if(!Array.isArray(t))return null;let n=[];for(let e of t)if(e.type===`tool_use`&&e.name)n.push(`\n→ ${e.name}\n`);else if(e.type===`tool-result`&&e.content){let t=typeof e.content==`string`?e.content.trim():JSON.stringify(e.content),r=t.slice(0,120);if(r){let e=t.length>120?`…`:``;n.push(`✓ ${r}${e}\n`)}}return n.length>0?n.join(``):null}catch{return null}}function im(e,t){return F(e,t)}function am(e){let t=[];for(let n of e)t=nm(t,n);return Bs(t)}function om(e){let t=(0,Z.useRef)([]),n=(0,Z.useRef)(0),r=(0,Z.useRef)(e);r.current!==e&&(r.current=e,t.current=[],n.current=0);let i=X(t=>e?t.subagentTranscripts[e]:void 0),a=i?.length??0;if(i&&a>n.current){let e=t.current;for(let t=n.current;t<a;t++)e=nm(e,i[t]);t.current=e,n.current=a}return a===0&&n.current>0&&(t.current=[],n.current=0),[(0,Z.useMemo)(()=>a===0?null:Bs(t.current),[a]),a>0]}var sm=(0,Z.createContext)(null);function cm(e){let t=(0,Q.c)(3),{value:n,children:r}=e,i;return t[0]!==r||t[1]!==n?(i=(0,$.jsx)(sm.Provider,{value:n,children:r}),t[0]=r,t[1]=n,t[2]=i):i=t[2],i}function lm(){let e=(0,Q.c)(2),t=(0,Z.useContext)(sm),n;return e[0]===t?n=e[1]:(n=t??um,e[0]=t,e[1]=n),n}function um(){return null}function dm(e){let t=(0,Q.c)(3),n=lm(),r;return t[0]!==n||t[1]!==e?(r=(0,$.jsx)(n,{...e}),t[0]=n,t[1]=e,t[2]=r):r=t[2],r}function fm(e){let t=(0,Q.c)(13),{output:n,scrollRef:r,placeholder:i,threadId:a,className:o,style:s}=e,c;t[0]===n?c=t[1]:(c=n?ds(cf(n)):``,t[0]=n,t[1]=c);let l=c,u;t[2]===o?u=t[3]:(u=G(U.caption,`text-muted-foreground/60 overflow-y-auto scrollbar-hide`,o),t[2]=o,t[3]=u);let d;t[4]!==l||t[5]!==i||t[6]!==a?(d=l?(0,$.jsx)(ku,{content:l,compact:!0,threadId:a}):i,t[4]=l,t[5]=i,t[6]=a,t[7]=d):d=t[7];let f;return t[8]!==r||t[9]!==s||t[10]!==u||t[11]!==d?(f=(0,$.jsx)(`div`,{ref:r,className:u,style:s,children:d}),t[8]=r,t[9]=s,t[10]=u,t[11]=d,t[12]=f):f=t[12],f}function pm(e){let t=(0,Q.c)(11),{blocks:n,isStreaming:r,threadId:i,scrollRef:a,className:o,style:s}=e,c;t[0]===o?c=t[1]:(c=G(`overflow-y-auto scrollbar-hide`,o),t[0]=o,t[1]=c);let l;t[2]!==n||t[3]!==r||t[4]!==i?(l=(0,$.jsx)(dm,{blocks:n,isStreaming:r,threadId:i}),t[2]=n,t[3]=r,t[4]=i,t[5]=l):l=t[5];let u;return t[6]!==a||t[7]!==s||t[8]!==c||t[9]!==l?(u=(0,$.jsx)(`div`,{ref:a,className:c,style:s,children:l}),t[6]=a,t[7]=s,t[8]=c,t[9]=l,t[10]=u):u=t[10],u}var mm=`Subagent`;function hm(e){return e.prompt?.trim()||e.toolInput?.trim()||null}function gm(e){let t=(0,Q.c)(7),{expanded:n,children:r}=e,i=n?`grid-rows-[1fr]`:`grid-rows-[0fr]`,a;t[0]===i?a=t[1]:(a=G(`grid transition-[grid-template-rows] duration-200 ease-in-out`,i),t[0]=i,t[1]=a);let o;t[2]===r?o=t[3]:(o=(0,$.jsx)(`div`,{className:`overflow-hidden`,children:r}),t[2]=r,t[3]=o);let s;return t[4]!==a||t[5]!==o?(s=(0,$.jsx)(`div`,{className:a,children:o}),t[4]=a,t[5]=o,t[6]=s):s=t[6],s}function _m(e){let t=(0,Q.c)(15),{expanded:n,onToggle:r,agentName:i,subagentType:a}=e,o;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,$.jsx)(`span`,{className:U.caption,children:mm}),t[0]=o):o=t[0];let s;t[1]===n?s=t[2]:(s=n?(0,$.jsx)(tn,{className:`h-3.5 w-3.5 shrink-0`}):(0,$.jsx)(sn,{className:`h-3.5 w-3.5 shrink-0`}),t[1]=n,t[2]=s);let c;t[3]!==n||t[4]!==r||t[5]!==s?(c=(0,$.jsxs)(`button`,{type:`button`,onClick:r,className:`inline-flex items-center gap-1 rounded p-0.5 text-muted-foreground hover:text-foreground focus:outline-none focus-visible:ring-2 focus-visible:ring-ring`,"aria-expanded":n,children:[o,s]}),t[3]=n,t[4]=r,t[5]=s,t[6]=c):c=t[6];let l;t[7]===i?l=t[8]:(l=i&&(0,$.jsx)(op,{name:i}),t[7]=i,t[8]=l);let u;t[9]===a?u=t[10]:(u=a&&(0,$.jsx)(sp,{type:a}),t[9]=a,t[10]=u);let d;return t[11]!==c||t[12]!==l||t[13]!==u?(d=(0,$.jsxs)(`div`,{className:`flex items-center gap-2 flex-wrap`,children:[c,l,u]}),t[11]=c,t[12]=l,t[13]=u,t[14]=d):d=t[14],d}function vm(e){let t=(0,Q.c)(11),{open:n,onOpenChange:r,prompt:i,content:a,threadId:o,hasTranscript:s,transcriptBlocks:c}=e,l;t[0]!==s||t[1]!==o||t[2]!==c?(l=s&&c?(0,$.jsx)(dm,{blocks:c,isStreaming:!1,threadId:o}):void 0,t[0]=s,t[1]=o,t[2]=c,t[3]=l):l=t[3];let u;return t[4]!==a||t[5]!==r||t[6]!==n||t[7]!==i||t[8]!==l||t[9]!==o?(u=(0,$.jsx)(tp,{open:n,onOpenChange:r,prompt:i,content:a,markdown:!0,threadId:o,body:l}),t[4]=a,t[5]=r,t[6]=n,t[7]=i,t[8]=l,t[9]=o,t[10]=u):u=t[10],u}function ym(e){let t=(0,Q.c)(25),{expanded:n,onToggle:r,subagentType:i,hasTranscript:a,transcriptBlocks:o,isTranscriptStreaming:s,isActive:c,threadId:l,scrollRef:u,streamingOutput:d}=e,f,p;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(f=(0,$.jsx)(`span`,{className:U.caption,children:mm}),p=(0,$.jsx)(dp,{size:`sm`}),t[0]=f,t[1]=p):(f=t[0],p=t[1]);let m;t[2]===i?m=t[3]:(m=i&&(0,$.jsx)(sp,{type:i}),t[2]=i,t[3]=m);let h;t[4]===n?h=t[5]:(h=n?(0,$.jsx)(tn,{className:`h-3 w-3 text-muted-foreground shrink-0`}):(0,$.jsx)(sn,{className:`h-3 w-3 text-muted-foreground shrink-0`}),t[4]=n,t[5]=h);let g;t[6]!==n||t[7]!==r||t[8]!==m||t[9]!==h?(g=(0,$.jsxs)(`button`,{type:`button`,className:`flex items-center gap-1.5 cursor-pointer select-none text-left w-full`,onClick:r,"aria-expanded":n,children:[f,p,m,h]}),t[6]=n,t[7]=r,t[8]=m,t[9]=h,t[10]=g):g=t[10];let _;t[11]!==a||t[12]!==c||t[13]!==s||t[14]!==u||t[15]!==d||t[16]!==l||t[17]!==o?(_=a&&o?(0,$.jsx)(pm,{scrollRef:u,blocks:o,isStreaming:s&&!!c,threadId:l,className:`ml-5`,style:{maxHeight:`7.5em`}}):(0,$.jsx)(fm,{scrollRef:u,output:d,placeholder:`Running subagent...`,threadId:l,className:`ml-5`,style:{maxHeight:`7.5em`}}),t[11]=a,t[12]=c,t[13]=s,t[14]=u,t[15]=d,t[16]=l,t[17]=o,t[18]=_):_=t[18];let v;t[19]!==n||t[20]!==_?(v=(0,$.jsx)(gm,{expanded:n,children:_}),t[19]=n,t[20]=_,t[21]=v):v=t[21];let y;return t[22]!==g||t[23]!==v?(y=(0,$.jsxs)(`div`,{className:`flex flex-col gap-0.5`,children:[g,v]}),t[22]=g,t[23]=v,t[24]=y):y=t[24],y}function bm(e){let t=(0,Q.c)(25),{expanded:n,onToggle:r,agentName:i,subagentType:a,subagentPrompt:o,dialogOpen:s,onDialogOpenChange:c,displayOutput:l,hasTranscript:u,transcriptBlocks:d,threadId:f}=e,p;t[0]!==i||t[1]!==n||t[2]!==r||t[3]!==a?(p=(0,$.jsx)(_m,{expanded:n,onToggle:r,agentName:i,subagentType:a}),t[0]=i,t[1]=n,t[2]=r,t[3]=a,t[4]=p):p=t[4];let m;t[5]!==c||t[6]!==o?(m=o?(0,$.jsx)(`button`,{type:`button`,onClick:()=>c(!0),className:G(U.caption,`ml-5 block max-w-full text-left whitespace-pre-wrap leading-relaxed text-muted-foreground hover:text-foreground hover:underline focus:outline-none focus-visible:ring-2 focus-visible:ring-ring rounded`),children:o}):(0,$.jsx)(`button`,{type:`button`,onClick:()=>c(!0),className:G(U.caption,`ml-5 text-muted-foreground hover:text-foreground hover:underline focus:outline-none focus-visible:ring-2 focus-visible:ring-ring rounded`),children:`View output`}),t[5]=c,t[6]=o,t[7]=m):m=t[7];let h;t[8]!==n||t[9]!==m?(h=(0,$.jsx)(gm,{expanded:n,children:m}),t[8]=n,t[9]=m,t[10]=h):h=t[10];let g;t[11]!==p||t[12]!==h?(g=(0,$.jsxs)(`div`,{className:`flex flex-col gap-0.5 py-0.5`,children:[p,h]}),t[11]=p,t[12]=h,t[13]=g):g=t[13];let _;t[14]!==s||t[15]!==l||t[16]!==u||t[17]!==c||t[18]!==o||t[19]!==f||t[20]!==d?(_=(0,$.jsx)(vm,{open:s,onOpenChange:c,prompt:o,content:l,threadId:f,hasTranscript:u,transcriptBlocks:d}),t[14]=s,t[15]=l,t[16]=u,t[17]=c,t[18]=o,t[19]=f,t[20]=d,t[21]=_):_=t[21];let v;return t[22]!==g||t[23]!==_?(v=(0,$.jsxs)($.Fragment,{children:[g,_]}),t[22]=g,t[23]=_,t[24]=v):v=t[24],v}function xm(e){let t=(0,Q.c)(13),{expanded:n,onToggle:r,agentName:i,subagentType:a,subagentPrompt:o}=e,s;t[0]!==i||t[1]!==n||t[2]!==r||t[3]!==a?(s=(0,$.jsx)(_m,{expanded:n,onToggle:r,agentName:i,subagentType:a}),t[0]=i,t[1]=n,t[2]=r,t[3]=a,t[4]=s):s=t[4];let c;t[5]===o?c=t[6]:(c=o?(0,$.jsx)(`div`,{className:G(U.caption,`ml-5 whitespace-pre-wrap leading-relaxed text-muted-foreground`),children:o}):null,t[5]=o,t[6]=c);let l;t[7]!==n||t[8]!==c?(l=(0,$.jsx)(gm,{expanded:n,children:c}),t[7]=n,t[8]=c,t[9]=l):l=t[9];let u;return t[10]!==s||t[11]!==l?(u=(0,$.jsxs)(`div`,{className:`flex flex-col gap-0.5 py-0.5`,children:[s,l]}),t[10]=s,t[11]=l,t[12]=u):u=t[12],u}function Sm(e){let t=(0,Q.c)(50),{expanded:n,onToggle:r,onOpenDialog:i,agentName:a,subagentType:o,isActive:s,toolName:c,toolId:l,hasTranscript:u,transcriptBlocks:d,isTranscriptStreaming:f,threadId:p,scrollRef:m,streamingOutput:h,subagentPrompt:g,canViewOutput:_,displayOutput:v,dialogOpen:y,onDialogOpenChange:b}=e,x,S;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(x=G(U.body,`w-full py-2 flex items-center gap-2 font-medium text-foreground hover:bg-muted/50 transition-colors text-left`),S=(0,$.jsx)(`span`,{className:`flex-1 text-left min-w-0 truncate`,children:mm}),t[0]=x,t[1]=S):(x=t[0],S=t[1]);let C;t[2]===a?C=t[3]:(C=a&&(0,$.jsx)(op,{name:a}),t[2]=a,t[3]=C);let w;t[4]===o?w=t[5]:(w=o&&(0,$.jsx)(sp,{type:o}),t[4]=o,t[5]=w);let T;t[6]===s?T=t[7]:(T=s&&(0,$.jsx)(dp,{size:`md`}),t[6]=s,t[7]=T);let E;t[8]===n?E=t[9]:(E=n?(0,$.jsx)(tn,{className:`h-4 w-4 shrink-0`}):(0,$.jsx)(sn,{className:`h-4 w-4 shrink-0`}),t[8]=n,t[9]=E);let D;t[10]!==r||t[11]!==C||t[12]!==w||t[13]!==T||t[14]!==E?(D=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(`button`,{onClick:r,className:x,children:[S,C,w,T,E]})}),t[10]=r,t[11]=C,t[12]=w,t[13]=T,t[14]=E,t[15]=D):D=t[15];let O;t[16]===c?O=t[17]:(O=(0,$.jsx)(Fr,{children:c}),t[16]=c,t[17]=O);let k;t[18]!==D||t[19]!==O?(k=(0,$.jsxs)(Mi,{children:[D,O]}),t[18]=D,t[19]=O,t[20]=k):k=t[20];let A;t[21]!==_||t[22]!==v||t[23]!==n||t[24]!==u||t[25]!==s||t[26]!==f||t[27]!==i||t[28]!==m||t[29]!==h||t[30]!==g||t[31]!==p||t[32]!==l||t[33]!==d?(A=n&&(0,$.jsxs)(`div`,{className:`py-2 border-t border-border`,children:[(0,$.jsxs)(`div`,{className:G(U.compact,`text-muted-foreground mb-2 font-mono`),children:[`ID: `,l]}),u&&d?(0,$.jsx)(pm,{scrollRef:s?m:void 0,blocks:d,isStreaming:f&&!!s,threadId:p,className:`max-h-96`}):s?(0,$.jsx)(fm,{scrollRef:m,output:h,placeholder:`Running subagent...`,threadId:p,style:{maxHeight:`7.5em`}}):g?_?(0,$.jsx)(`button`,{type:`button`,onClick:i,className:G(Qf({maxHeight:`64`,padding:`3`,leading:!0}),`w-full text-left hover:bg-muted/80 transition-colors`),children:g}):(0,$.jsx)(`div`,{className:Qf({maxHeight:`64`,padding:`3`,leading:!0}),children:g}):v?(0,$.jsx)(fm,{output:v,threadId:p,className:`max-h-64`}):null]}),t[21]=_,t[22]=v,t[23]=n,t[24]=u,t[25]=s,t[26]=f,t[27]=i,t[28]=m,t[29]=h,t[30]=g,t[31]=p,t[32]=l,t[33]=d,t[34]=A):A=t[34];let j;t[35]!==A||t[36]!==k?(j=(0,$.jsxs)(`div`,{className:`overflow-hidden`,children:[k,A]}),t[35]=A,t[36]=k,t[37]=j):j=t[37];let M;t[38]!==_||t[39]!==y||t[40]!==v||t[41]!==u||t[42]!==b||t[43]!==g||t[44]!==p||t[45]!==d?(M=_?(0,$.jsx)(vm,{open:y,onOpenChange:b,prompt:g,content:v,threadId:p,hasTranscript:u,transcriptBlocks:d}):null,t[38]=_,t[39]=y,t[40]=v,t[41]=u,t[42]=b,t[43]=g,t[44]=p,t[45]=d,t[46]=M):M=t[46];let N;return t[47]!==j||t[48]!==M?(N=(0,$.jsxs)($.Fragment,{children:[j,M]}),t[47]=j,t[48]=M,t[49]=N):N=t[49],N}function Cm(e){let t=(0,Q.c)(63),{data:n,inline:r,resultContent:i,isActive:a}=e,o=(0,Z.useRef)(null),[s,c]=(0,Z.useState)(!0),[l,u]=(0,Z.useState)(!1),d=(0,Z.useRef)(!!a),f;t[0]===n.toolId?f=t[1]:(f=e=>e.toolCallProgress[n.toolId]?.executionOutput,t[0]=n.toolId,t[1]=f);let p=X(f),m=X(wm),[h,g]=om(n.toolId),_=!!(h&&h.length>0),v=a?p??i??``:i??p??``,y;t[2]===v?y=t[3]:(y=v?cf(v):``,t[2]=v,t[3]=y);let b=y,x=a?b:``,S;t[4]===n?S=t[5]:(S=hm(n),t[4]=n,t[5]=S);let C=S,w=!!b,T,E;t[6]===a?(T=t[7],E=t[8]):(T=()=>{a&&!d.current&&c(!0),d.current=!!a},E=[a],t[6]=a,t[7]=T,t[8]=E),(0,Z.useEffect)(T,E);let D;t[9]!==s||t[10]!==a?(D=()=>{s&&a&&o.current&&(o.current.scrollTop=o.current.scrollHeight)},t[9]=s,t[10]=a,t[11]=D):D=t[11];let O;t[12]!==s||t[13]!==a||t[14]!==x?(O=[s,a,x],t[12]=s,t[13]=a,t[14]=x,t[15]=O):O=t[15],(0,Z.useEffect)(D,O);let k;t[16]===s?k=t[17]:(k=function(){c(!s)},t[16]=s,t[17]=k);let A=k;if(r){if(a){let e;return t[18]!==n.subagentType||t[19]!==s||t[20]!==_||t[21]!==a||t[22]!==g||t[23]!==x||t[24]!==m||t[25]!==A||t[26]!==h?(e=(0,$.jsx)(ym,{expanded:s,onToggle:A,subagentType:n.subagentType,hasTranscript:_,transcriptBlocks:h,isTranscriptStreaming:g,isActive:a,threadId:m,scrollRef:o,streamingOutput:x}),t[18]=n.subagentType,t[19]=s,t[20]=_,t[21]=a,t[22]=g,t[23]=x,t[24]=m,t[25]=A,t[26]=h,t[27]=e):e=t[27],e}if(b){let e;return t[28]!==n.agentName||t[29]!==n.subagentType||t[30]!==l||t[31]!==b||t[32]!==s||t[33]!==_||t[34]!==C||t[35]!==m||t[36]!==A||t[37]!==h?(e=(0,$.jsx)(bm,{expanded:s,onToggle:A,agentName:n.agentName,subagentType:n.subagentType,subagentPrompt:C,dialogOpen:l,onDialogOpenChange:u,displayOutput:b,hasTranscript:_,transcriptBlocks:h,threadId:m}),t[28]=n.agentName,t[29]=n.subagentType,t[30]=l,t[31]=b,t[32]=s,t[33]=_,t[34]=C,t[35]=m,t[36]=A,t[37]=h,t[38]=e):e=t[38],e}let e;return t[39]!==n.agentName||t[40]!==n.subagentType||t[41]!==s||t[42]!==C||t[43]!==A?(e=(0,$.jsx)(xm,{expanded:s,onToggle:A,agentName:n.agentName,subagentType:n.subagentType,subagentPrompt:C}),t[39]=n.agentName,t[40]=n.subagentType,t[41]=s,t[42]=C,t[43]=A,t[44]=e):e=t[44],e}let j;t[45]===Symbol.for(`react.memo_cache_sentinel`)?(j=()=>u(!0),t[45]=j):j=t[45];let M;return t[46]!==w||t[47]!==n.agentName||t[48]!==n.subagentType||t[49]!==n.toolId||t[50]!==n.toolName||t[51]!==l||t[52]!==b||t[53]!==s||t[54]!==_||t[55]!==a||t[56]!==g||t[57]!==x||t[58]!==C||t[59]!==m||t[60]!==A||t[61]!==h?(M=(0,$.jsx)(Sm,{expanded:s,onToggle:A,onOpenDialog:j,agentName:n.agentName,subagentType:n.subagentType,isActive:a,toolName:n.toolName,toolId:n.toolId,hasTranscript:_,transcriptBlocks:h,isTranscriptStreaming:g,threadId:m,scrollRef:o,streamingOutput:x,subagentPrompt:C,canViewOutput:w,displayOutput:b,dialogOpen:l,onDialogOpenChange:u}),t[46]=w,t[47]=n.agentName,t[48]=n.subagentType,t[49]=n.toolId,t[50]=n.toolName,t[51]=l,t[52]=b,t[53]=s,t[54]=_,t[55]=a,t[56]=g,t[57]=x,t[58]=C,t[59]=m,t[60]=A,t[61]=h,t[62]=M):M=t[62],M}function wm(e){return e.selectedThreadId}function Tm(e){let t=(0,Q.c)(31),{data:n,inline:r,isActive:i}=e,[a,o]=(0,Z.useState)(!1),s=i?n.activeDisplayName:n.displayName,c;t[0]!==n.inputObj||t[1]!==n.skillName?(c=n.skillName?null:$d(n.inputObj,32,[`skillName`]),t[0]=n.inputObj,t[1]=n.skillName,t[2]=c):c=t[2];let l=c;if(r){let e;t[3]!==n.toolName||t[4]!==i||t[5]!==s?(e=(0,$.jsx)(fp,{toolName:n.toolName,displayName:s,isActive:i}),t[3]=n.toolName,t[4]=i,t[5]=s,t[6]=e):e=t[6];let r;t[7]!==n.skillName||t[8]!==l?(r=n.skillName?(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`span`,{className:G(U.caption,`font-mono truncate max-w-[200px] sm:max-w-[320px]`),children:n.skillName})}),(0,$.jsx)(Fr,{children:n.skillName})]}):l?(0,$.jsx)(`span`,{className:G(U.caption,`font-mono text-muted-foreground truncate max-w-[200px] sm:max-w-[320px]`),children:l}):null,t[7]=n.skillName,t[8]=l,t[9]=r):r=t[9];let a;return t[10]!==e||t[11]!==r?(a=(0,$.jsxs)(`div`,{className:`py-0.5 flex items-center gap-2 flex-wrap min-w-0`,children:[e,r]}),t[10]=e,t[11]=r,t[12]=a):a=t[12],a}let u;t[13]===a?u=t[14]:(u=()=>o(!a),t[13]=a,t[14]=u);let d;t[15]!==n.skillName||t[16]!==l?(d=n.skillName?(0,$.jsx)(`span`,{className:G(U.caption,`font-mono text-muted-foreground truncate max-w-[200px] sm:max-w-[320px]`),children:n.skillName}):l?(0,$.jsx)(`span`,{className:G(U.caption,`font-mono text-muted-foreground truncate max-w-[200px] sm:max-w-[320px]`),children:l}):void 0,t[15]=n.skillName,t[16]=l,t[17]=d):d=t[17];let f;t[18]===n.toolInput?f=t[19]:(f=n.toolInput?(0,$.jsx)(`pre`,{className:Qf(),children:n.toolInput}):null,t[18]=n.toolInput,t[19]=f);let p;t[20]!==n.toolId||t[21]!==f?(p=(0,$.jsx)(vp,{toolId:n.toolId,children:f}),t[20]=n.toolId,t[21]=f,t[22]=p):p=t[22];let m;return t[23]!==n.toolName||t[24]!==a||t[25]!==i||t[26]!==s||t[27]!==u||t[28]!==d||t[29]!==p?(m=(0,$.jsx)(_p,{expanded:a,onToggle:u,title:s,tooltip:n.toolName,isActive:i,trailing:d,children:p}),t[23]=n.toolName,t[24]=a,t[25]=i,t[26]=s,t[27]=u,t[28]=d,t[29]=p,t[30]=m):m=t[30],m}function Em(e){let t=(0,Q.c)(14),{data:n,inline:r,isActive:i}=e,[a,o]=(0,Z.useState)(!1);if(r)return null;let s;t[0]===a?s=t[1]:(s=()=>o(!a),t[0]=a,t[1]=s);let c;t[2]===n.toolInput?c=t[3]:(c=n.toolInput?(0,$.jsx)(`pre`,{className:Qf(),children:n.toolInput}):null,t[2]=n.toolInput,t[3]=c);let l;t[4]!==n.toolId||t[5]!==c?(l=(0,$.jsx)(vp,{toolId:n.toolId,children:c}),t[4]=n.toolId,t[5]=c,t[6]=l):l=t[6];let u;return t[7]!==n.displayName||t[8]!==n.toolName||t[9]!==a||t[10]!==i||t[11]!==s||t[12]!==l?(u=(0,$.jsx)(_p,{expanded:a,onToggle:s,title:n.displayName,tooltip:n.toolName,isActive:i,buttonClassName:U.label,children:l}),t[7]=n.displayName,t[8]=n.toolName,t[9]=a,t[10]=i,t[11]=s,t[12]=l,t[13]=u):u=t[13],u}function Dm(e){let t=(0,Q.c)(23),{data:n,inline:r,isActive:i}=e,[a,o]=(0,Z.useState)(!1);if(r){let e;t[0]!==n.displayName||t[1]!==n.toolName||t[2]!==i?(e=(0,$.jsx)(fp,{toolName:n.toolName,displayName:n.displayName,isActive:i}),t[0]=n.displayName,t[1]=n.toolName,t[2]=i,t[3]=e):e=t[3];let r;t[4]===n.imageGenPrompt?r=t[5]:(r=n.imageGenPrompt!==null&&(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`span`,{className:G(U.caption,`truncate max-w-[200px] sm:max-w-[320px]`),children:n.imageGenPrompt})}),(0,$.jsx)(Fr,{children:n.imageGenPrompt})]}),t[4]=n.imageGenPrompt,t[5]=r);let a;return t[6]!==e||t[7]!==r?(a=(0,$.jsxs)(`div`,{className:`py-0.5 flex items-center gap-2 flex-wrap`,children:[e,r]}),t[6]=e,t[7]=r,t[8]=a):a=t[8],a}let s;t[9]===a?s=t[10]:(s=()=>o(!a),t[9]=a,t[10]=s);let c;t[11]===n.toolInput?c=t[12]:(c=n.toolInput?(0,$.jsx)(`pre`,{className:Qf(),children:n.toolInput}):null,t[11]=n.toolInput,t[12]=c);let l;t[13]!==n.toolId||t[14]!==c?(l=(0,$.jsx)(vp,{toolId:n.toolId,children:c}),t[13]=n.toolId,t[14]=c,t[15]=l):l=t[15];let u;return t[16]!==n.displayName||t[17]!==n.toolName||t[18]!==a||t[19]!==i||t[20]!==s||t[21]!==l?(u=(0,$.jsx)(_p,{expanded:a,onToggle:s,title:n.displayName,tooltip:n.toolName,isActive:i,buttonClassName:U.label,children:l}),t[16]=n.displayName,t[17]=n.toolName,t[18]=a,t[19]=i,t[20]=s,t[21]=l,t[22]=u):u=t[22],u}function Om(e){if(!e)return null;try{let t=JSON.parse(e);return su(t,{content:e,...t})}catch{return su(e,{content:e})}}function km(e){return e.savedPath?e.savedPath.split(`/`).pop()??e.savedPath:`image`}function Am(e){let t=(0,Q.c)(44),{data:n,inline:r,resultContent:i,isActive:a}=e,[o,s]=(0,Z.useState)(!1),[c,l]=(0,Z.useState)(!1),u=X(jm),d,f;t[0]===i?(d=t[1],f=t[2]):(d=Om(i),f=d?km(d):null,t[0]=i,t[1]=d,t[2]=f);let p=f;if(r){let e;t[3]!==n.displayName||t[4]!==n.toolName||t[5]!==a?(e=(0,$.jsx)(fp,{toolName:n.toolName,displayName:n.displayName,isActive:a}),t[3]=n.displayName,t[4]=n.toolName,t[5]=a,t[6]=e):e=t[6];let r;t[7]!==n.findImagesQuery||t[8]!==d?(r=n.findImagesQuery!==null&&!d&&(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`span`,{className:G(U.caption,`truncate max-w-[200px] sm:max-w-[320px]`),children:n.findImagesQuery})}),(0,$.jsx)(Fr,{children:n.findImagesQuery})]}),t[7]=n.findImagesQuery,t[8]=d,t[9]=r):r=t[9];let i;t[10]!==d||t[11]!==p?(i=d&&p&&(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(`button`,{type:`button`,onClick:()=>l(!0),className:G(U.caption,`hover:underline`),children:[`Found `,p]})}),(0,$.jsx)(Fr,{children:`View image`})]}),t[10]=d,t[11]=p,t[12]=i):i=t[12];let o;t[13]!==e||t[14]!==r||t[15]!==i?(o=(0,$.jsxs)(`div`,{className:`py-0.5 flex items-center gap-2 flex-wrap`,children:[e,r,i]}),t[13]=e,t[14]=r,t[15]=i,t[16]=o):o=t[16];let s;t[17]!==c||t[18]!==d||t[19]!==p||t[20]!==u?(s=d&&(0,$.jsx)(Ni,{open:c,onOpenChange:l,children:(0,$.jsxs)(Ir,{className:`max-w-3xl max-h-[85vh] flex flex-col overflow-auto`,children:[(0,$.jsx)(Dr,{children:(0,$.jsxs)(qa,{children:[`Found `,p]})}),(0,$.jsx)(cu,{imageUrl:d.imageUrl,imageData:d.imageData,threadId:u,alt:p??`Found image`})]})}),t[17]=c,t[18]=d,t[19]=p,t[20]=u,t[21]=s):s=t[21];let f;return t[22]!==o||t[23]!==s?(f=(0,$.jsxs)($.Fragment,{children:[o,s]}),t[22]=o,t[23]=s,t[24]=f):f=t[24],f}let m;t[25]===o?m=t[26]:(m=()=>s(!o),t[25]=o,t[26]=m);let h=d?`Found ${p}`:n.displayName,g;t[27]===n.toolInput?g=t[28]:(g=n.toolInput?(0,$.jsx)(`pre`,{className:Qf(),children:n.toolInput}):null,t[27]=n.toolInput,t[28]=g);let _;t[29]!==d||t[30]!==p||t[31]!==u?(_=d&&(0,$.jsx)(cu,{imageUrl:d.imageUrl,imageData:d.imageData,threadId:u,alt:p??`Found image`}),t[29]=d,t[30]=p,t[31]=u,t[32]=_):_=t[32];let v;t[33]!==n.toolId||t[34]!==g||t[35]!==_?(v=(0,$.jsxs)(vp,{toolId:n.toolId,children:[g,_]}),t[33]=n.toolId,t[34]=g,t[35]=_,t[36]=v):v=t[36];let y;return t[37]!==n.toolName||t[38]!==o||t[39]!==a||t[40]!==m||t[41]!==h||t[42]!==v?(y=(0,$.jsx)(_p,{expanded:o,onToggle:m,title:h,tooltip:n.toolName,isActive:a,children:v}),t[37]=n.toolName,t[38]=o,t[39]=a,t[40]=m,t[41]=h,t[42]=v,t[43]=y):y=t[43],y}function jm(e){return e.selectedThreadId}function Mm(e){if(!e)return null;try{let t=JSON.parse(e);return t.action===`screenshot`?su(t,{content:e,...t}):null}catch{return null}}function Nm(e){return e.savedPath?e.savedPath.split(`/`).pop()??e.savedPath:`screenshot`}function Pm(e){let t=(0,Q.c)(85),{data:n,inline:r,resultContent:i,isActive:a}=e,[o,s]=(0,Z.useState)(!1),[c,l]=(0,Z.useState)(!1),u=X(Fm),d;t[0]===n.inputObj?d=t[1]:(d=pf(n.inputObj),t[0]=n.inputObj,t[1]=d);let f=d,p;t[2]===n.inputObj?p=t[3]:(p=Xd(n.inputObj),t[2]=n.inputObj,t[3]=p);let m=p,h;t[4]===i?h=t[5]:(h=i?hf(i):``,t[4]=i,t[5]=h);let g=h,_,v;t[6]===i?(_=t[7],v=t[8]):(_=Mm(i),v=_?Nm(_):null,t[6]=i,t[7]=_,t[8]=v);let y=v;if(r){let e;t[9]!==n.displayName||t[10]!==n.toolName||t[11]!==a?(e=(0,$.jsx)(fp,{toolName:n.toolName,displayName:n.displayName,isActive:a}),t[9]=n.displayName,t[10]=n.toolName,t[11]=a,t[12]=e):e=t[12];let r;t[13]!==f||t[14]!==i||t[15]!==y||t[16]!==_?(r=_&&y?(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(`button`,{type:`button`,onClick:()=>l(!0),className:G(U.caption,`hover:underline`),children:[`Screenshot `,y]})}),(0,$.jsx)(Fr,{children:`View screenshot`})]}):i?(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,onClick:()=>l(!0),className:G(U.caption,`font-mono hover:underline break-all cursor-pointer`),children:f})}),(0,$.jsx)(Fr,{children:`View results`})]}):(0,$.jsx)(`span`,{className:G(U.caption,`font-mono break-all text-muted-foreground`),children:f}),t[13]=f,t[14]=i,t[15]=y,t[16]=_,t[17]=r):r=t[17];let o;t[18]!==e||t[19]!==r?(o=(0,$.jsxs)(`div`,{className:`py-0.5 flex items-center gap-2 flex-wrap`,children:[e,r]}),t[18]=e,t[19]=r,t[20]=o):o=t[20];let s;t[21]!==c||t[22]!==m||t[23]!==f||t[24]!==g||t[25]!==i||t[26]!==y||t[27]!==_||t[28]!==u?(s=_?(0,$.jsx)(Ni,{open:c,onOpenChange:l,children:(0,$.jsxs)(Ir,{className:`max-w-3xl max-h-[85vh] flex flex-col overflow-auto`,children:[(0,$.jsx)(Dr,{children:(0,$.jsxs)(qa,{children:[`Screenshot `,y]})}),(0,$.jsx)(cu,{imageUrl:_.imageUrl,imageData:_.imageData,threadId:u,alt:y??`Browser screenshot`})]})}):i&&(0,$.jsx)(np,{open:c,onOpenChange:l,title:f,requestContent:m,responseContent:g}),t[21]=c,t[22]=m,t[23]=f,t[24]=g,t[25]=i,t[26]=y,t[27]=_,t[28]=u,t[29]=s):s=t[29];let d;return t[30]!==o||t[31]!==s?(d=(0,$.jsxs)($.Fragment,{children:[o,s]}),t[30]=o,t[31]=s,t[32]=d):d=t[32],d}let b;t[33]===o?b=t[34]:(b=()=>s(!o),t[33]=o,t[34]=b);let x;t[35]===Symbol.for(`react.memo_cache_sentinel`)?(x=G(U.body,`w-full py-2 flex items-center gap-2 font-medium text-foreground hover:bg-muted/50 transition-colors text-left`),t[35]=x):x=t[35];let S;t[36]===a?S=t[37]:(S=a&&(0,$.jsx)(dp,{size:`md`}),t[36]=a,t[37]=S);let C=_&&y?`Screenshot ${y}`:n.displayName,w;t[38]===C?w=t[39]:(w=(0,$.jsx)(`span`,{className:`flex-1 text-left min-w-0 truncate`,children:C}),t[38]=C,t[39]=w);let T;t[40]===Symbol.for(`react.memo_cache_sentinel`)?(T=G(U.caption,`font-mono text-muted-foreground truncate max-w-[200px] sm:max-w-[320px]`),t[40]=T):T=t[40];let E;t[41]===f?E=t[42]:(E=(0,$.jsx)(`span`,{className:T,children:f}),t[41]=f,t[42]=E);let D;t[43]!==i||t[44]!==_?(D=i&&!_&&(0,$.jsx)(`button`,{type:`button`,className:G(U.caption,`text-brand hover:underline shrink-0`),onClick:e=>{e.stopPropagation(),l(!0)},children:`View results`}),t[43]=i,t[44]=_,t[45]=D):D=t[45];let O;t[46]===_?O=t[47]:(O=_&&(0,$.jsx)(`button`,{type:`button`,className:G(U.caption,`text-brand hover:underline shrink-0`),onClick:e=>{e.stopPropagation(),l(!0)},children:`View screenshot`}),t[46]=_,t[47]=O);let k;t[48]===o?k=t[49]:(k=o?(0,$.jsx)(tn,{className:`h-4 w-4 shrink-0`}):(0,$.jsx)(sn,{className:`h-4 w-4 shrink-0`}),t[48]=o,t[49]=k);let A;t[50]!==E||t[51]!==D||t[52]!==O||t[53]!==k||t[54]!==b||t[55]!==S||t[56]!==w?(A=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(`button`,{onClick:b,className:x,children:[S,w,E,D,O,k]})}),t[50]=E,t[51]=D,t[52]=O,t[53]=k,t[54]=b,t[55]=S,t[56]=w,t[57]=A):A=t[57];let j;t[58]===n.toolName?j=t[59]:(j=(0,$.jsx)(Fr,{children:n.toolName}),t[58]=n.toolName,t[59]=j);let M;t[60]!==A||t[61]!==j?(M=(0,$.jsxs)(Mi,{children:[A,j]}),t[60]=A,t[61]=j,t[62]=M):M=t[62];let N;t[63]!==n.toolId||t[64]!==o||t[65]!==m||t[66]!==g||t[67]!==i||t[68]!==y||t[69]!==_||t[70]!==u?(N=o&&(0,$.jsxs)(`div`,{className:`py-2 border-t border-border space-y-2`,children:[(0,$.jsxs)(`div`,{className:G(U.compact,`text-muted-foreground font-mono`),children:[`ID: `,n.toolId]}),(0,$.jsxs)(`div`,{children:[(0,$.jsx)(`div`,{className:G(U.compact,`text-muted-foreground mb-1`),children:`Request`}),(0,$.jsx)(`pre`,{className:Qf(),children:m})]}),_?(0,$.jsx)(cu,{imageUrl:_.imageUrl,imageData:_.imageData,threadId:u,alt:y??`Browser screenshot`}):i&&(0,$.jsxs)(`div`,{children:[(0,$.jsx)(`div`,{className:G(U.compact,`text-muted-foreground mb-1`),children:`Response`}),(0,$.jsx)(`pre`,{className:Qf({maxHeight:`64`}),children:g})]})]}),t[63]=n.toolId,t[64]=o,t[65]=m,t[66]=g,t[67]=i,t[68]=y,t[69]=_,t[70]=u,t[71]=N):N=t[71];let P;t[72]!==c||t[73]!==m||t[74]!==f||t[75]!==g||t[76]!==i||t[77]!==y||t[78]!==_||t[79]!==u?(P=_?(0,$.jsx)(Ni,{open:c,onOpenChange:l,children:(0,$.jsxs)(Ir,{className:`max-w-3xl max-h-[85vh] flex flex-col overflow-auto`,children:[(0,$.jsx)(Dr,{children:(0,$.jsxs)(qa,{children:[`Screenshot `,y]})}),(0,$.jsx)(cu,{imageUrl:_.imageUrl,imageData:_.imageData,threadId:u,alt:y??`Browser screenshot`})]})}):i&&(0,$.jsx)(np,{open:c,onOpenChange:l,title:f,requestContent:m,responseContent:g}),t[72]=c,t[73]=m,t[74]=f,t[75]=g,t[76]=i,t[77]=y,t[78]=_,t[79]=u,t[80]=P):P=t[80];let F;return t[81]!==M||t[82]!==N||t[83]!==P?(F=(0,$.jsxs)(`div`,{className:`overflow-hidden`,children:[M,N,P]}),t[81]=M,t[82]=N,t[83]=P,t[84]=F):F=t[84],F}function Fm(e){return e.selectedThreadId}function Im(e){let t=(0,Q.c)(10),{summary:n,fullSummary:r}=e,i;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(i=G(U.caption,`font-mono text-muted-foreground truncate max-w-[200px] sm:max-w-[320px]`),t[0]=i):i=t[0];let a;t[1]===n?a=t[2]:(a=(0,$.jsx)(`span`,{className:i,children:n}),t[1]=n,t[2]=a);let o=a;if(n===r)return o;let s;t[3]===o?s=t[4]:(s=(0,$.jsx)(zi,{asChild:!0,children:o}),t[3]=o,t[4]=s);let c;t[5]===r?c=t[6]:(c=(0,$.jsx)(Fr,{className:`max-w-md break-all font-mono`,children:r}),t[5]=r,t[6]=c);let l;return t[7]!==s||t[8]!==c?(l=(0,$.jsxs)(Mi,{children:[s,c]}),t[7]=s,t[8]=c,t[9]=l):l=t[9],l}function Lm(e){let t=(0,Q.c)(40),{data:n,inline:r,isActive:i}=e,[a,o]=(0,Z.useState)(!1),s,c;if(t[0]!==n.inputObj||t[1]!==n.path||t[2]!==n.prompt){let e=n.path===null?[]:[`path`];s=n.prompt===null?$d(n.inputObj,32,e):null,c=n.prompt===null?$d(n.inputObj,1/0,e):null,t[0]=n.inputObj,t[1]=n.path,t[2]=n.prompt,t[3]=s,t[4]=c}else s=t[3],c=t[4];let l=c;if(r){let e=!!(n.prompt??(n.toolInput&&!n.command&&!n.path&&!n.pattern&&!n.fileDisplayName)),r;t[5]!==n.displayName||t[6]!==n.prompt||t[7]!==n.toolId||t[8]!==n.toolInput||t[9]!==n.toolName||t[10]!==e||t[11]!==i?(r=e?(0,$.jsxs)(Np,{children:[(0,$.jsx)(Pp,{asChild:!0,children:(0,$.jsx)(`span`,{className:`inline-flex`,children:(0,$.jsx)(`button`,{type:`button`,className:`inline-flex shrink-0 items-center gap-1 rounded p-0.5 text-muted-foreground hover:text-foreground focus:outline-none focus-visible:ring-2 focus-visible:ring-ring`,"aria-label":`Show tool details`,children:(0,$.jsx)(fp,{toolName:n.toolName,displayName:n.displayName,isActive:i,muted:!1})})})}),(0,$.jsx)(Fp,{className:`w-80 max-h-80 overflow-auto`,align:`start`,children:(0,$.jsxs)(`div`,{className:G(U.bodyMuted,`space-y-2`),children:[(0,$.jsxs)(`div`,{className:`font-mono`,children:[`ID: `,n.toolId]}),n.prompt?(0,$.jsx)(`div`,{className:G(U.caption,`whitespace-pre-wrap leading-relaxed select-text`),children:n.prompt}):n.toolInput?(0,$.jsx)(`pre`,{className:`font-mono whitespace-pre-wrap overflow-auto max-h-48`,children:n.toolInput}):null]})})]}):(0,$.jsx)(fp,{toolName:n.toolName,displayName:n.displayName,isActive:i}),t[5]=n.displayName,t[6]=n.prompt,t[7]=n.toolId,t[8]=n.toolInput,t[9]=n.toolName,t[10]=e,t[11]=i,t[12]=r):r=t[12];let a;t[13]!==l||t[14]!==s?(a=s&&l&&(0,$.jsx)(Im,{summary:s,fullSummary:l}),t[13]=l,t[14]=s,t[15]=a):a=t[15];let o;t[16]===n.path?o=t[17]:(o=n.path!==null&&(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`span`,{className:G(U.caption,`font-mono truncate max-w-[200px] sm:max-w-[320px]`),children:n.path})}),(0,$.jsx)(Fr,{children:n.path})]}),t[16]=n.path,t[17]=o);let c;return t[18]!==r||t[19]!==a||t[20]!==o?(c=(0,$.jsxs)(`div`,{className:`py-0.5 flex items-center gap-2 flex-wrap`,children:[r,a,o]}),t[18]=r,t[19]=a,t[20]=o,t[21]=c):c=t[21],c}let u;t[22]===a?u=t[23]:(u=()=>o(!a),t[22]=a,t[23]=u);let d;t[24]===s?d=t[25]:(d=s?(0,$.jsx)(`span`,{className:G(U.caption,`font-mono text-muted-foreground truncate max-w-[200px] sm:max-w-[320px]`),children:s}):void 0,t[24]=s,t[25]=d);let f;t[26]!==n.prompt||t[27]!==n.toolInput?(f=n.prompt?(0,$.jsx)(`div`,{className:Qf({maxHeight:`64`,padding:`3`,leading:!0}),children:n.prompt}):n.toolInput?(0,$.jsx)(`pre`,{className:Qf(),children:n.toolInput}):null,t[26]=n.prompt,t[27]=n.toolInput,t[28]=f):f=t[28];let p;t[29]!==n.toolId||t[30]!==f?(p=(0,$.jsx)(vp,{toolId:n.toolId,children:f}),t[29]=n.toolId,t[30]=f,t[31]=p):p=t[31];let m;return t[32]!==n.displayName||t[33]!==n.toolName||t[34]!==a||t[35]!==i||t[36]!==u||t[37]!==d||t[38]!==p?(m=(0,$.jsx)(_p,{expanded:a,onToggle:u,title:n.displayName,tooltip:n.toolName,isActive:i,trailing:d,children:p}),t[32]=n.displayName,t[33]=n.toolName,t[34]=a,t[35]=i,t[36]=u,t[37]=d,t[38]=p,t[39]=m):m=t[39],m}function Rm(e){let t=(0,Q.c)(70),{block:n,inline:r,resultContent:i,resultIsError:a,isActive:o,observation:s}=e,{openChatDockPanel:c}=Wd(),{setPendingExplorerPath:l}=vc(),u=X(zm),d=zf(n,u),f=!!o,p;t[0]!==c||t[1]!==l?(p=function(e){l(e),c(`explorer`)},t[0]=c,t[1]=l,t[2]=p):p=t[2];let m=p,h;bb0:switch(d.toolType){case`bash`:{let e;t[3]!==d||t[4]!==r||t[5]!==f||t[6]!==i||t[7]!==a?(e=(0,$.jsx)(kp,{data:d,inline:r,resultContent:i,isError:a,isActive:f}),t[3]=d,t[4]=r,t[5]=f,t[6]=i,t[7]=a,t[8]=e):e=t[8],h=e;break bb0}case`fetch`:{let e;t[9]!==d||t[10]!==r||t[11]!==f||t[12]!==i?(e=(0,$.jsx)(Ap,{data:d,inline:r,resultContent:i,isActive:f}),t[9]=d,t[10]=r,t[11]=f,t[12]=i,t[13]=e):e=t[13],h=e;break bb0}case`file`:{let e;t[14]!==d||t[15]!==m||t[16]!==r||t[17]!==f||t[18]!==i||t[19]!==u?(e=(0,$.jsx)(Kp,{data:d,inline:r,rootPath:u,onOpenFile:m,resultContent:i,isActive:f}),t[14]=d,t[15]=m,t[16]=r,t[17]=f,t[18]=i,t[19]=u,t[20]=e):e=t[20],h=e;break bb0}case`search`:{let e;t[21]!==d||t[22]!==r||t[23]!==f||t[24]!==i?(e=(0,$.jsx)(Xp,{data:d,inline:r,resultContent:i,isActive:f}),t[21]=d,t[22]=r,t[23]=f,t[24]=i,t[25]=e):e=t[25],h=e;break bb0}case`agent`:{let e;t[26]!==d||t[27]!==r||t[28]!==f||t[29]!==i?(e=(0,$.jsx)(Cm,{data:d,inline:r,resultContent:i,isActive:f}),t[26]=d,t[27]=r,t[28]=f,t[29]=i,t[30]=e):e=t[30],h=e;break bb0}case`skill`:{let e;t[31]!==d||t[32]!==r||t[33]!==f?(e=(0,$.jsx)(Tm,{data:d,inline:r,isActive:f}),t[31]=d,t[32]=r,t[33]=f,t[34]=e):e=t[34],h=e;break bb0}case`todo`:{let e;t[35]!==d||t[36]!==r||t[37]!==f?(e=(0,$.jsx)(Em,{data:d,inline:r,isActive:f}),t[35]=d,t[36]=r,t[37]=f,t[38]=e):e=t[38],h=e;break bb0}case`imageGen`:{let e;t[39]!==d||t[40]!==r||t[41]!==f?(e=(0,$.jsx)(Dm,{data:d,inline:r,isActive:f}),t[39]=d,t[40]=r,t[41]=f,t[42]=e):e=t[42],h=e;break bb0}case`findImages`:{let e;t[43]!==d||t[44]!==r||t[45]!==f||t[46]!==i?(e=(0,$.jsx)(Am,{data:d,inline:r,resultContent:i,isActive:f}),t[43]=d,t[44]=r,t[45]=f,t[46]=i,t[47]=e):e=t[47],h=e;break bb0}case`browser`:{let e;t[48]!==d||t[49]!==r||t[50]!==f||t[51]!==i?(e=(0,$.jsx)(Pm,{data:d,inline:r,resultContent:i,isActive:f}),t[48]=d,t[49]=r,t[50]=f,t[51]=i,t[52]=e):e=t[52],h=e;break bb0}default:{let e;t[53]!==d||t[54]!==r||t[55]!==f?(e=(0,$.jsx)(Lm,{data:d,inline:r,isActive:f}),t[53]=d,t[54]=r,t[55]=f,t[56]=e):e=t[56],h=e}}if(!s)return h;let g=i??``,_;t[57]!==s||t[58]!==g?(_=(0,$.jsx)(mp,{fallback:g,observation:s}),t[57]=s,t[58]=g,t[59]=_):_=t[59];let v=_;if(r){let e;t[60]===h?e=t[61]:(e=(0,$.jsx)(`div`,{className:`min-w-0`,children:h}),t[60]=h,t[61]=e);let n;return t[62]!==v||t[63]!==e?(n=(0,$.jsxs)(`div`,{className:`flex items-center gap-1.5 min-w-0`,children:[e,v]}),t[62]=v,t[63]=e,t[64]=n):n=t[64],n}let y;t[65]===v?y=t[66]:(y=(0,$.jsx)(`div`,{className:`mb-3`,children:v}),t[65]=v,t[66]=y);let b;return t[67]!==y||t[68]!==h?(b=(0,$.jsxs)($.Fragment,{children:[h,y]}),t[67]=y,t[68]=h,t[69]=b):b=t[69],b}function zm(e){return e.projects.find(t=>t.projectId===e.selectedProjectId)?.threads.find(t=>t.threadId===e.selectedThreadId)?.path}var Bm=Ut(`app.todo-list.ui`),Vm=(0,Z.createContext)({todos:[],setTodos:()=>{}});function Hm(e){let t=(0,Q.c)(10),{children:n,threadId:r}=e,i;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(i=[],t[0]=i):i=t[0];let[a,o]=(0,Z.useState)(i),s=(0,Z.useRef)(-1),c;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(c=(e,t)=>{t>=s.current&&(s.current=t,o(e))},t[1]=c):c=t[1];let l=c,u;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(u=()=>{s.current=-1,o([])},t[2]=u):u=t[2];let d;t[3]===r?d=t[4]:(d=[r],t[3]=r,t[4]=d),(0,Z.useEffect)(u,d);let f;t[5]===a?f=t[6]:(f={todos:a,setTodos:l},t[5]=a,t[6]=f);let p;return t[7]!==n||t[8]!==f?(p=(0,$.jsx)(Vm.Provider,{value:f,children:n}),t[7]=n,t[8]=f,t[9]=p):p=t[9],p}function Um(e){if(typeof e!=`string`)return null;let t=e.trim();if(!t.startsWith(`{`))return null;try{let e=JSON.parse(t);if(e&&Array.isArray(e.todos))return e.todos}catch(e){Bm.error(`Failed to parse todo JSON:`,e)}return null}function Wm(e,t){let n=Um(t.text);if(n)return n;if(!t.params||typeof t.params!=`object`)return null;let r=t.params,i=r.action,a=Array.isArray(r.ids)?r.ids.filter(e=>typeof e==`string`):[];if(i===`update`&&a.length>0){let t=new Set(a),n=r.status===`pending`||r.status===`working`||r.status===`done`?r.status:void 0,i=typeof r.assignedTo==`string`?r.assignedTo:void 0,o=typeof r.passes==`boolean`?r.passes:void 0,s=!1,c=e.map(e=>{if(!t.has(e.id))return e;let r={id:e.id,description:e.description,status:n??e.status,assignedTo:i??e.assignedTo,passes:o??e.passes};return r.status===e.status&&r.assignedTo===e.assignedTo&&r.passes===e.passes?e:(s=!0,r)});return s?c:null}if(i===`delete`&&a.length>0){let t=new Set(a),n=e.filter(e=>!t.has(e.id));return n.length===e.length?null:n}return null}function Gm(e){if(Array.isArray(e.todos))return e.todos;let t=[e.result,e.content],n=[];for(let e of t)if(typeof e==`string`)n.push(e);else if(Array.isArray(e))for(let t of e)typeof t==`object`&&t&&`text`in t&&typeof t.text==`string`&&n.push(t.text);for(let e of n){let t=Um(e);if(t)return t}return null}function Km(e){let t=(0,Q.c)(5),{todos:n,sequence:r}=e,{setTodos:i}=(0,Z.useContext)(Vm),a,o;return t[0]!==r||t[1]!==i||t[2]!==n?(a=()=>{i(n,r)},o=[n,i,r],t[0]=r,t[1]=i,t[2]=n,t[3]=a,t[4]=o):(a=t[3],o=t[4]),(0,Z.useEffect)(a,o),null}function qm(e){let t=(0,Q.c)(10),{sequence:n,params:r,text:i}=e,{todos:a,setTodos:o}=(0,Z.useContext)(Vm),s=(0,Z.useRef)(null),c;t[0]===r?c=t[1]:(c=JSON.stringify(r),t[0]=r,t[1]=c);let l=`${n}:${c}:${i??``}`,u,d;return t[2]!==l||t[3]!==r||t[4]!==n||t[5]!==o||t[6]!==i||t[7]!==a?(u=()=>{if(s.current===l)return;let e=Wm(a,{params:r,text:i});e&&(s.current=l,o(e,n))},d=[a,r,i,n,o,l],t[2]=l,t[3]=r,t[4]=n,t[5]=o,t[6]=i,t[7]=a,t[8]=u,t[9]=d):(u=t[8],d=t[9]),(0,Z.useEffect)(u,d),null}function Jm({toolName:e,result:t,findImagesResult:n,rootPath:r}){let i=Kd(e);if(typeof t==`object`&&t){let n=t,r=n.returnDisplay??n.return_display;if(typeof r==`string`&&r.trim())i=r.trim();else if(e===`read`||e===`file_read`){let e=n.filePath??n.file_path??n.path??``;e&&(i=`Completed ${e.split(`/`).pop()??e}`)}}else t??(i=`${Kd(e)} (no result)`);if(n){let e=n.savedPath?ef(n.savedPath.split(`/`).pop()??n.savedPath,r):null;i=e?`Found ${e}`:`Found image`}return ef(i,r)}function Ym(e){let t=(0,Q.c)(10),{displayLabel:n,hasMore:r,fullOutputTooltip:i,onOpenDialog:a}=e,o;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(o=G(U.body,`px-3 py-2 flex items-center gap-2 font-medium text-foreground`),t[0]=o):o=t[0];let s;t[1]===n?s=t[2]:(s=(0,$.jsx)(`span`,{className:`min-w-0 truncate`,children:n}),t[1]=n,t[2]=s);let c;t[3]!==i||t[4]!==r||t[5]!==a?(c=r?(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,onClick:a,"aria-label":i,className:`inline-flex shrink-0 rounded p-0.5 text-muted-foreground hover:bg-muted hover:text-brand`,children:(0,$.jsx)(pt,{className:`h-3.5 w-3.5`})})}),(0,$.jsx)(Fr,{children:i})]}):null,t[3]=i,t[4]=r,t[5]=a,t[6]=c):c=t[6];let l;return t[7]!==s||t[8]!==c?(l=(0,$.jsxs)(`div`,{className:o,children:[s,c]}),t[7]=s,t[8]=c,t[9]=l):l=t[9],l}function Xm(e){let t=(0,Q.c)(11),{previewLines:n,hasMore:r,onOpenDialog:i}=e;if(r){let e;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=G(U.caption,`bg-muted p-2 rounded font-mono whitespace-pre-wrap overflow-auto text-foreground text-left mt-2 cursor-pointer hover:bg-muted/80`),t[0]=e):e=t[0];let r;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,$.jsxs)(`span`,{className:`text-muted-foreground`,children:[`
22
+ `,`...`]}),t[1]=r):r=t[1];let a;t[2]!==i||t[3]!==n?(a=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(`pre`,{className:e,onClick:i,children:[n,r]})}),t[2]=i,t[3]=n,t[4]=a):a=t[4];let o;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,$.jsx)(Fr,{children:`Show full output…`}),t[5]=o):o=t[5];let s;return t[6]===a?s=t[7]:(s=(0,$.jsxs)(Mi,{children:[a,o]}),t[6]=a,t[7]=s),s}let a;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(a=G(U.caption,`bg-muted p-2 rounded font-mono whitespace-pre-wrap overflow-auto text-foreground text-left mt-2`),t[8]=a):a=t[8];let o;return t[9]===n?o=t[10]:(o=(0,$.jsx)(`pre`,{className:a,children:n}),t[9]=n,t[10]=o),o}function Zm(e){let t=(0,Q.c)(22),{displayLabel:n,resultDisplay:r,previewLines:i,hasMore:a,fullOutputTooltip:o,observation:s,rootPath:c,threadId:l}=e,[u,d]=(0,Z.useState)(!1),f;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(f=()=>d(!0),t[0]=f):f=t[0];let p;t[1]!==n||t[2]!==o||t[3]!==a?(p=(0,$.jsx)(Ym,{displayLabel:n,hasMore:a,fullOutputTooltip:o,onOpenDialog:f}),t[1]=n,t[2]=o,t[3]=a,t[4]=p):p=t[4];let m;t[5]!==a||t[6]!==i||t[7]!==r?(m=r&&(0,$.jsx)(`div`,{className:`px-3 pb-2 bg-background border-t border-border`,children:(0,$.jsx)(Xm,{previewLines:i,hasMore:a,onOpenDialog:()=>d(!0)})}),t[5]=a,t[6]=i,t[7]=r,t[8]=m):m=t[8];let h;t[9]!==p||t[10]!==m?(h=(0,$.jsxs)(`div`,{className:`mb-3 rounded-lg border border-border bg-muted/50 overflow-hidden`,children:[p,m]}),t[9]=p,t[10]=m,t[11]=h):h=t[11];let g;t[12]!==u||t[13]!==a||t[14]!==s||t[15]!==r||t[16]!==c||t[17]!==l?(g=a&&(0,$.jsx)(Ni,{open:u,onOpenChange:d,children:(0,$.jsxs)(Ir,{className:`max-w-3xl max-h-[80vh] flex flex-col`,children:[(0,$.jsx)(Dr,{children:(0,$.jsx)(qa,{children:`Full Output`})}),(0,$.jsx)(pp,{enabled:u,fallback:r,observation:s,rootPath:c,threadId:l,className:G(U.caption,`bg-muted p-3 rounded font-mono whitespace-pre-wrap overflow-auto flex-1 text-foreground`)})]})}),t[12]=u,t[13]=a,t[14]=s,t[15]=r,t[16]=c,t[17]=l,t[18]=g):g=t[18];let _;return t[19]!==h||t[20]!==g?(_=(0,$.jsxs)($.Fragment,{children:[h,g]}),t[19]=h,t[20]=g,t[21]=_):_=t[21],_}function Qm(e){let t=(0,Q.c)(27),{displayLabel:n,toolName:r,toolId:i,findImagesResult:a,resultDisplay:o,observation:s,rootPath:c,threadId:l}=e,[u,d]=(0,Z.useState)(!1),f;t[0]===u?f=t[1]:(f=()=>d(!u),t[0]=u,t[1]=f);let p;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(p=G(U.body,`w-full px-3 py-2 flex items-center gap-2 font-medium text-foreground hover:bg-muted transition-colors text-left`),t[2]=p):p=t[2];let m;t[3]===n?m=t[4]:(m=(0,$.jsx)(`span`,{className:`flex-1 text-left min-w-0 truncate`,children:n}),t[3]=n,t[4]=m);let h;t[5]===u?h=t[6]:(h=u?(0,$.jsx)(tn,{className:`h-4 w-4 shrink-0`}):(0,$.jsx)(sn,{className:`h-4 w-4 shrink-0`}),t[5]=u,t[6]=h);let g;t[7]!==f||t[8]!==m||t[9]!==h?(g=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(`button`,{onClick:f,className:p,children:[m,h]})}),t[7]=f,t[8]=m,t[9]=h,t[10]=g):g=t[10];let _=`${r} result`,v;t[11]===_?v=t[12]:(v=(0,$.jsx)(Fr,{children:_}),t[11]=_,t[12]=v);let y;t[13]!==g||t[14]!==v?(y=(0,$.jsxs)(Mi,{children:[g,v]}),t[13]=g,t[14]=v,t[15]=y):y=t[15];let b;t[16]!==u||t[17]!==a||t[18]!==s||t[19]!==o||t[20]!==c||t[21]!==l||t[22]!==i?(b=u&&(0,$.jsxs)(`div`,{className:`px-3 py-2 bg-background border-t border-border`,children:[(0,$.jsxs)(`div`,{className:G(U.compact,`text-muted-foreground mb-2 font-mono`),children:[`Call ID: `,i]}),a&&(0,$.jsx)(cu,{imageUrl:a.imageUrl,imageData:a.imageData,threadId:l}),o&&!a&&(0,$.jsx)(pp,{enabled:u,fallback:o,observation:s,rootPath:c,threadId:l,className:G(U.caption,`bg-muted p-2 rounded font-mono whitespace-pre-wrap overflow-auto max-h-48 text-foreground text-left`)})]}),t[16]=u,t[17]=a,t[18]=s,t[19]=o,t[20]=c,t[21]=l,t[22]=i,t[23]=b):b=t[23];let x;return t[24]!==y||t[25]!==b?(x=(0,$.jsxs)(`div`,{className:`mb-3 rounded-lg border border-border bg-muted/50 overflow-hidden`,children:[y,b]}),t[24]=y,t[25]=b,t[26]=x):x=t[26],x}function $m(e,t){let n=(0,Q.c)(37),r=e.toolName??`Unknown Tool`,i=e.toolCallId??`unknown`,a=e,o=e.result??a.content,s=Oe(a.observation)?a.observation:void 0,c;n[0]!==a||n[1]!==r?(c=r===`todo`?Gm(a):null,n[0]=a,n[1]=r,n[2]=c):c=n[2];let l=c,u;n[3]!==a||n[4]!==o||n[5]!==r?(u=r===`find_images`?su(o,a):null,n[3]=a,n[4]=o,n[5]=r,n[6]=u):u=n[6];let d=u,f;n[7]!==o||n[8]!==t?(f=ef(ff(o),t),n[7]=o,n[8]=t,n[9]=f):f=n[9];let p=f,m=p.length>0,h;n[10]!==d||n[11]!==o||n[12]!==t||n[13]!==r?(h=Jm({toolName:r,result:o,findImagesResult:d,rootPath:t}),n[10]=d,n[11]=o,n[12]=t,n[13]=r,n[14]=h):h=n[14];let g=h,_;n[15]===r?_=n[16]:(_=r.toLowerCase().includes(`bash`),n[15]=r,n[16]=_);let v=_,y;n[17]===p?y=n[18]:(y=p?p.split(`
24
23
  `):[],n[17]=p,n[18]=y);let b=y,x;n[19]!==v||n[20]!==p||n[21]!==b?(x=v?b.slice(0,3).join(`
25
- `):p,n[19]=v,n[20]=p,n[21]=b,n[22]=x):x=n[22];let S=x,C=v&&(s!==void 0||b.length>3),w=s&&s.lineCount>0?`Show full output (${s.lineCount} lines)`:`Show full output…`,T;return n[23]!==g||n[24]!==d||n[25]!==w||n[26]!==C||n[27]!==m||n[28]!==v||n[29]!==s||n[30]!==S||n[31]!==o||n[32]!==p||n[33]!==l||n[34]!==i||n[35]!==r?(T={toolName:r,toolId:i,result:o,observation:s,todos:l,findImagesResult:d,resultDisplay:p,hasResult:m,displayLabel:g,isBash:v,previewLines:S,hasMore:C,fullOutputTooltip:w},n[23]=g,n[24]=d,n[25]=w,n[26]=C,n[27]=m,n[28]=v,n[29]=s,n[30]=S,n[31]=o,n[32]=p,n[33]=l,n[34]=i,n[35]=r,n[36]=T):T=n[36],T}function Qm({state:e,block:t,sequence:n,params:r}){let{todos:i,result:a,toolName:o}=e;return i===null?o===`todo`&&r&&!t.isError?(0,$.jsx)(Gm,{sequence:n,params:r,text:typeof a==`string`?a:null}):null:(0,$.jsx)(Wm,{todos:i,sequence:n})}function $m({toolName:e,result:t,block:n,threadId:r}){if(e!==`generate_image`)return null;let i=n,a=ou(t)??ou(i);return a&&(a.imageUrl||a.imageData)?(0,$.jsx)(cu,{imageUrl:a.imageUrl,imageData:a.imageData,threadId:r}):null}function eh({state:e,rootPath:t,threadId:n}){return(0,$.jsx)(Ym,{displayLabel:e.displayLabel,resultDisplay:e.resultDisplay,previewLines:e.previewLines,hasMore:e.hasMore,fullOutputTooltip:e.fullOutputTooltip,observation:e.observation,rootPath:t,threadId:n})}function th({state:e,rootPath:t,threadId:n}){return(0,$.jsx)(Xm,{displayLabel:e.displayLabel,toolName:e.toolName,toolId:e.toolId,findImagesResult:e.findImagesResult,resultDisplay:e.resultDisplay,observation:e.observation,rootPath:t,threadId:n})}function nh({block:e,inline:t,sequence:n,params:r,rootPath:i,threadId:a,state:o}){let{toolName:s,result:c,findImagesResult:l,observation:u,hasResult:d,todos:f,isBash:p}=o;return!d&&f===null&&!l?null:Qm({state:o,block:e,sequence:n,params:r})||(t&&(l||s===`browser`||u)?null:$m({toolName:s,result:c,block:e,threadId:a})||(t?null:p?eh({state:o,rootPath:i,threadId:a}):th({state:o,rootPath:i,threadId:a})))}var rh=(0,Z.memo)(function(e){let t=(0,Q.c)(8),{block:n,inline:r,sequence:i,params:a}=e,o=i===void 0?0:i,s=X(ih),c=X(ah),l=Zm(n,s),u;return t[0]!==n||t[1]!==r||t[2]!==a||t[3]!==s||t[4]!==o||t[5]!==l||t[6]!==c?(u=nh({block:n,inline:r,sequence:o,params:a,rootPath:s,threadId:c,state:l}),t[0]=n,t[1]=r,t[2]=a,t[3]=s,t[4]=o,t[5]=l,t[6]=c,t[7]=u):u=t[7],u});function ih(e){return e.projects.find(t=>t.projectId===e.selectedProjectId)?.threads.find(t=>t.threadId===e.selectedThreadId)?.path}function ah(e){return e.selectedThreadId}function oh(e){if(e<1e3){let t=Math.max(1,Math.round(e));return`${t} millisecond${t===1?``:`s`}`}let t=Math.max(1,Math.round(e/1e3));if(t<60)return`${t} second${t===1?``:`s`}`;let n=Math.floor(t/60),r=t%60;return r===0?`${n} minute${n===1?``:`s`}`:`${n} minute${n===1?``:`s`} ${r} second${r===1?``:`s`}`}function sh(e){return e<=0?``:` (${Vt(e)} token${e===1?``:`s`})`}function ch(e,t,n,r){let i=e?sh(r):``;return e?t===`MCP`?`Connecting MCP servers...${i}`:t===`Validating`?`Validating...${i}`:`Thinking${i}`:t===`MCP`?`MCP setup complete.`:t===`Validated`?`Validated`:n<=0?`Thought complete.`:`Thought for ${oh(n)}.`}function lh({text:e=``,isStreaming:t=!1,label:n,threadId:r}){"use no memo";let i=(0,Z.useRef)(null),a=(0,Z.useRef)(Date.now()),[o,s]=(0,Z.useState)(0),[c,l]=(0,Z.useState)(!1),u=(0,Z.useRef)(t);if((0,Z.useEffect)(()=>{t&&!u.current?(a.current=Date.now(),s(0)):u.current&&!t&&(s(Date.now()-a.current),l(!1)),u.current=t},[t]),(0,Z.useEffect)(()=>{c&&t&&i.current&&(i.current.scrollTop=i.current.scrollHeight)},[e,c,t]),!e&&!t)return null;let d=!t&&n===`Validated`,f=e.trim().length>0,p=ae(e),m=ch(t,n,o,p),h=t&&n!==`MCP`&&n!==`Validating`&&!d,g=c&&f?ds(of(e)):``,_=(0,$.jsxs)($.Fragment,{children:[f?c?(0,$.jsx)(tn,{className:`h-3 w-3 text-muted-foreground shrink-0`}):(0,$.jsx)(sn,{className:`h-3 w-3 text-muted-foreground shrink-0`}):null,d?(0,$.jsx)(st,{className:`h-3.5 w-3.5 shrink-0 text-green-600`}):null,(0,$.jsx)(`span`,{className:G(U.caption,`min-w-0 truncate`),"data-thinking-tokens":t?p:void 0,children:m}),h?(0,$.jsx)(lp,{state:`solving`,className:`shrink-0`}):null]});return(0,$.jsxs)(`div`,{className:`flex flex-col gap-0.5`,children:[f?(0,$.jsx)(`button`,{type:`button`,className:`flex items-center gap-1.5 cursor-pointer select-none text-left w-full min-w-0`,onClick:()=>l(!c),"aria-expanded":c,children:_}):(0,$.jsx)(`div`,{className:`flex items-center gap-1.5 select-none text-left w-full min-w-0`,children:_}),(0,$.jsx)(`div`,{className:[`grid transition-[grid-template-rows] duration-200 ease-in-out`,c?`grid-rows-[1fr]`:`grid-rows-[0fr]`].join(` `),children:(0,$.jsx)(`div`,{className:`overflow-hidden`,children:(0,$.jsx)(`div`,{ref:i,className:G(U.caption,`ml-5 text-muted-foreground/60 overflow-y-auto scrollbar-hide`),style:{maxHeight:`7.5em`},children:g?(0,$.jsx)(Du,{content:g,compact:!0,threadId:r}):null})})})]})}function uh(e){let t=0;for(let n=0;n<e.length;n++)t=(t<<5)-t+e.charCodeAt(n)|0;return`${t}-${e.length}`}function dh(e){if(typeof e.executionOutput==`string`)return e.executionOutput;let t=e.partial?.content?.[0]?.arguments;if(!(!t||typeof t!=`object`)&&`content`in t&&typeof t.content==`string`)return t.content}function fh(e){if(!e)return;let t=e,n=t.result??t.content;if(n!=null){if(typeof n==`string`){if(t.imageUrl&&n.trim().startsWith(`{`))try{let e=JSON.parse(n);if(!e.imageUrl)return JSON.stringify({...e,imageUrl:t.imageUrl})}catch{}return n}return JSON.stringify(n,null,2)}}function ph(e){if(!(!e||!Oe(e.observation)))return e.observation}function mh(e){return e?.isError===!0}function hh(e){let t=new Map;for(let n of e)ws(n)&&t.set(n.toolCallId,n);return t}function gh(e,t){return fh(e.find(e=>ws(e)&&e.toolCallId===t))}function _h(e,t){return e.some(e=>ws(e)&&e.toolCallId===t)}function vh(e,t,n){if(!_h(e,t))return;let r=gh(e,t)??``,i=n===`shell`?We:nn;return r.includes(i)?`skipped`:`allowed`}function yh(e,t,n,r,i){return _h(e,n)?!1:r===n?!0:!!(t?.isThinking||t===void 0&&i)}function bh(e,t){if(t)return gh(e,t)}var xh=Ut(`chat.ask-user`);function Sh(e){return e.questions&&e.questions.length>0?e.questions:e.question?[{question:e.question,header:e.context,options:e.options?.map(function(e){return{label:e,description:``}})}]:[]}function Ch(e){let t=(0,Q.c)(44),n=Sh(e),[r,i]=(0,Z.useState)(``),[a,o]=(0,Z.useState)(!!e.answeredText),[s,c]=(0,Z.useState)(e.answeredText??``),[l,u]=(0,Z.useState)(!1),[d,f]=(0,Z.useState)(null),p=n[0],m,h;t[0]===e.answeredText?(m=t[1],h=t[2]):(m=()=>{let t=e.answeredText?.trim();if(t){o(!0),c(t),u(!1),f(null);return}o(!1),c(``)},h=[e.answeredText],t[0]=e.answeredText,t[1]=m,t[2]=h),(0,Z.useEffect)(m,h);let g;t[3]!==l||t[4]!==e.toolCallId?(g=async function(t){if(!(!t.trim()||l)){u(!0);try{await Ia(e.toolCallId,t.trim()),c(t.trim()),o(!0)}catch(e){let t=e;xh.error(`Failed to submit answer`,{err:t}),u(!1),f(null)}}},t[3]=l,t[4]=e.toolCallId,t[5]=g):g=t[5];let _=g,v;t[6]!==_||t[7]!==l||t[8]!==a?(v=function(e){a||l||(f(e),_(e))},t[6]=_,t[7]=l,t[8]=a,t[9]=v):v=t[9];let y=v,b;t[10]!==r||t[11]!==_?(b=function(e){e.preventDefault(),_(r)},t[10]=r,t[11]=_,t[12]=b):b=t[12];let x=b;if(!p)return null;if(a){let r;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,$.jsx)(W,{className:`mt-0.5 h-5 w-5 shrink-0 text-brand`}),t[13]=r):r=t[13];let i;t[14]===Symbol.for(`react.memo_cache_sentinel`)?(i=function(e){return(0,$.jsxs)(`div`,{className:`mb-2 last:mb-0`,children:[e.header&&(0,$.jsx)(`p`,{className:U.labelMuted,children:e.header}),(0,$.jsx)(`div`,{className:G(U.label,`text-foreground`),children:(0,$.jsx)(Du,{content:e.question})})]},`${e.header??`question`}-${e.question}`)},t[14]=i):i=t[14];let a=e.answeredLabel??`You answered`,o;t[15]===a?o=t[16]:(o=(0,$.jsxs)(`span`,{className:`font-medium`,children:[a,`:`]}),t[15]=a,t[16]=o);let c;t[17]===s?c=t[18]:(c=(0,$.jsx)(`span`,{children:s}),t[17]=s,t[18]=c);let l;return t[19]!==o||t[20]!==c?(l=(0,$.jsxs)(`div`,{className:U.bodyMuted,children:[o,` `,c]}),t[19]=o,t[20]=c,t[21]=l):l=t[21],(0,$.jsxs)(`div`,{className:`my-2 rounded-lg border-t border-border p-4`,children:[(0,$.jsxs)(`div`,{className:`mb-2 flex items-start gap-2`,children:[r,(0,$.jsx)(`div`,{className:`min-w-0 flex-1`,children:n.map(i)})]}),l]})}if(!e.interactive){let e;t[22]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,$.jsx)(ut,{className:`mt-0.5 h-5 w-5 shrink-0 text-brand`}),t[22]=e):e=t[22];let r;t[23]===Symbol.for(`react.memo_cache_sentinel`)?(r=function(e){return(0,$.jsxs)(`div`,{className:`mb-2 last:mb-0`,children:[e.header&&(0,$.jsx)(`p`,{className:U.labelMuted,children:e.header}),(0,$.jsx)(`div`,{className:G(U.label,`text-foreground`),children:(0,$.jsx)(Du,{content:e.question})})]},`${e.header??`question`}-${e.question}`)},t[23]=r):r=t[23];let i;return t[24]===Symbol.for(`react.memo_cache_sentinel`)?(i=(0,$.jsx)(`p`,{className:G(U.bodyMuted,`mt-2`),children:`Respond below to continue.`}),t[24]=i):i=t[24],(0,$.jsx)(`div`,{className:`my-2 rounded-lg border-t border-border p-4`,children:(0,$.jsxs)(`div`,{className:`flex items-start gap-2`,children:[e,(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[n.map(r),i]})]})})}let S;t[25]===Symbol.for(`react.memo_cache_sentinel`)?(S=G(U.label,`mb-3 text-foreground`),t[25]=S):S=t[25];let C;t[26]===i?C=t[27]:(C=e=>i(e.target.value),t[26]=i,t[27]=C);let w=p.options?.length?`Or type a custom answer...`:`Type your answer...`,T;t[28]===Symbol.for(`react.memo_cache_sentinel`)?(T=G(`w-full bg-transparent px-4 pt-3 pb-1 text-foreground placeholder:text-muted-foreground focus:outline-none disabled:opacity-50`,U.body),t[28]=T):T=t[28];let E;t[29]!==r||t[30]!==l||t[31]!==C||t[32]!==w?(E=(0,$.jsx)(`input`,{type:`text`,value:r,onChange:C,placeholder:w,disabled:l,className:T}),t[29]=r,t[30]=l,t[31]=C,t[32]=w,t[33]=E):E=t[33];let D;t[34]!==r||t[35]!==l?(D=l||!r.trim(),t[34]=r,t[35]=l,t[36]=D):D=t[36];let O;t[37]===Symbol.for(`react.memo_cache_sentinel`)?(O=(0,$.jsx)(V,{className:`h-3 w-3`}),t[37]=O):O=t[37];let k;t[38]===D?k=t[39]:(k=(0,$.jsx)(`div`,{className:`flex items-center justify-end px-3 pb-2`,children:(0,$.jsx)(`button`,{type:`submit`,disabled:D,className:`flex h-7 w-7 shrink-0 items-center justify-center rounded-full bg-primary text-primary-foreground transition-colors hover:bg-primary/90 disabled:opacity-50`,children:O})}),t[38]=D,t[39]=k);let A;return t[40]!==x||t[41]!==k||t[42]!==E?(A=(0,$.jsxs)(`form`,{onSubmit:x,className:`flex flex-col rounded-2xl border border-border focus-within:ring-2 focus-within:ring-brand`,children:[E,k]}),t[40]=x,t[41]=k,t[42]=E,t[43]=A):A=t[43],(0,$.jsxs)(`div`,{className:`my-2 rounded-lg border-t border-border p-4`,children:[p.header&&(0,$.jsx)(`p`,{className:U.labelMuted,children:p.header}),(0,$.jsx)(`div`,{className:S,children:(0,$.jsx)(Du,{content:p.question})}),p.options&&p.options.length>0&&(0,$.jsx)(`div`,{className:`mb-3 flex flex-wrap gap-2`,children:p.options.map(function(e){let t=d===e.label;return(0,$.jsxs)(`button`,{type:`button`,onClick:()=>y(e.label),disabled:l,className:G(`flex items-center gap-1.5 rounded-md border px-3 py-1.5 transition-colors disabled:opacity-50`,U.label,t?`border-foreground/20 bg-accent text-accent-foreground`:`border-foreground/20 bg-background text-foreground hover:bg-accent hover:text-accent-foreground`),children:[t&&(0,$.jsx)(W,{className:`h-3.5 w-3.5`}),e.label]},e.label)})}),A]})}var wh=Ut(`app.permission-prompt-block.ui`);function Th(e){if(typeof window>`u`)return null;let t=window.sessionStorage.getItem(e);return t===`allowed`||t===`skipped`?t:null}function Eh(e,t){typeof window>`u`||window.sessionStorage.setItem(e,t)}function Dh(e){let t=(0,Q.c)(68),{persistenceKey:n,icon:r,promptTitle:i,skippedTitle:a,detail:o,wildcardOptions:s,secondaryButtonLabel:c,resolvedDecision:l,successLabel:u,onAllowOnce:d,onAllowWildcard:f,onSecondary:p}=e,m=u===void 0?`Allowed`:u,h=`permission-prompt:${n}`,g;t[0]!==l||t[1]!==h?(g=()=>l?!0:Th(h)!==null,t[0]=l,t[1]=h,t[2]=g):g=t[2];let[_,v]=(0,Z.useState)(g),y;t[3]!==l||t[4]!==h?(y=()=>l||Th(h),t[3]=l,t[4]=h,t[5]=y):y=t[5];let[b,x]=(0,Z.useState)(y),[S,C]=(0,Z.useState)(!1),w,T;t[6]!==l||t[7]!==h?(w=()=>{if(l){Eh(h,l),v(!0),x(l),C(!1);return}let e=Th(h);e&&(v(!0),x(e),C(!1))},T=[l,h],t[6]=l,t[7]=h,t[8]=w,t[9]=T):(w=t[8],T=t[9]),(0,Z.useEffect)(w,T);let E;t[10]!==S||t[11]!==d||t[12]!==h||t[13]!==_?(E=async function(){if(!(S||_)){C(!0);try{await d(),Eh(h,`allowed`),v(!0),x(`allowed`)}catch(e){let t=e;wh.error(`Failed to submit permission response:`,t),C(!1)}}},t[10]=S,t[11]=d,t[12]=h,t[13]=_,t[14]=E):E=t[14];let D=E,O;t[15]!==S||t[16]!==f||t[17]!==h||t[18]!==_?(O=async function(e){if(!(S||_)){C(!0);try{await f(e),Eh(h,`allowed`),v(!0),x(`allowed`)}catch(e){let t=e;wh.error(`Failed to submit permission response:`,t),C(!1)}}},t[15]=S,t[16]=f,t[17]=h,t[18]=_,t[19]=O):O=t[19];let k=O,A;t[20]!==S||t[21]!==p||t[22]!==h||t[23]!==_?(A=async function(){if(!(S||_)){C(!0);try{await p(),Eh(h,`skipped`),v(!0),x(`skipped`)}catch(e){let t=e;wh.error(`Failed to submit permission response:`,t),C(!1)}}},t[20]=S,t[21]=p,t[22]=h,t[23]=_,t[24]=A):A=t[24];let j=A;if(_){let e;t[25]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,$.jsx)(W,{className:`h-5 w-5 text-brand shrink-0 mt-0.5`}),t[25]=e):e=t[25];let n=b===`skipped`?a:i,r;t[26]===n?r=t[27]:(r=(0,$.jsx)(`div`,{className:U.label,children:n}),t[26]=n,t[27]=r);let s;t[28]!==o||t[29]!==r?(s=(0,$.jsxs)(`div`,{className:`flex items-start gap-2 mb-2`,children:[e,(0,$.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[r,o]})]}),t[28]=o,t[29]=r,t[30]=s):s=t[30];let c=b===`skipped`?`Skipped`:m,l;t[31]===c?l=t[32]:(l=(0,$.jsx)(`div`,{className:U.bodyMuted,children:c}),t[31]=c,t[32]=l);let u;return t[33]!==s||t[34]!==l?(u=(0,$.jsxs)(`div`,{className:`rounded-lg border border-border p-4 my-2`,children:[s,l]}),t[33]=s,t[34]=l,t[35]=u):u=t[35],u}let M;t[36]===i?M=t[37]:(M=(0,$.jsx)(`div`,{className:U.label,children:i}),t[36]=i,t[37]=M);let N;t[38]!==o||t[39]!==M?(N=(0,$.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[M,o]}),t[38]=o,t[39]=M,t[40]=N):N=t[40];let P;t[41]!==r||t[42]!==N?(P=(0,$.jsxs)(`div`,{className:`flex items-start gap-2 mb-3`,children:[r,N]}),t[41]=r,t[42]=N,t[43]=P):P=t[43];let F;t[44]===D?F=t[45]:(F=()=>void D(),t[44]=D,t[45]=F);let I;t[46]!==S||t[47]!==F?(I=(0,$.jsx)(Hr,{type:`button`,size:`sm`,disabled:S,onClick:F,className:`rounded-r-none`,children:`Allow`}),t[46]=S,t[47]=F,t[48]=I):I=t[48];let L;t[49]!==k||t[50]!==S||t[51]!==s?(L=s.length>0&&(0,$.jsxs)(hl,{children:[(0,$.jsx)(gl,{asChild:!0,children:(0,$.jsx)(Hr,{type:`button`,size:`sm`,disabled:S,className:G(`rounded-l-none border-l border-primary-foreground/20 px-2`),"aria-label":`More allow options`,children:(0,$.jsx)(tn,{className:`h-4 w-4`})})}),(0,$.jsx)(bl,{align:`end`,className:`max-w-md`,children:s.map(e=>(0,$.jsx)(xl,{onClick:()=>void k(e),children:e.label},`${e.scope}-${e.pattern}`))})]}),t[49]=k,t[50]=S,t[51]=s,t[52]=L):L=t[52];let R;t[53]!==I||t[54]!==L?(R=(0,$.jsxs)(`div`,{className:`inline-flex rounded-md shadow-sm`,children:[I,L]}),t[53]=I,t[54]=L,t[55]=R):R=t[55];let z;t[56]===j?z=t[57]:(z=()=>void j(),t[56]=j,t[57]=z);let B;t[58]!==S||t[59]!==c||t[60]!==z?(B=(0,$.jsx)(Hr,{type:`button`,size:`sm`,variant:`outline`,disabled:S,onClick:z,children:c}),t[58]=S,t[59]=c,t[60]=z,t[61]=B):B=t[61];let V;t[62]!==R||t[63]!==B?(V=(0,$.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[R,B]}),t[62]=R,t[63]=B,t[64]=V):V=t[64];let H;return t[65]!==P||t[66]!==V?(H=(0,$.jsxs)(`div`,{className:`rounded-lg border border-border p-4 my-2`,children:[P,V]}),t[65]=P,t[66]=V,t[67]=H):H=t[67],H}function Oh(e){let t=(0,Q.c)(3),{command:n}=e,r;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=G(U.mono,U.bodyMuted,`mt-2 block break-all rounded bg-muted/60 px-2 py-1`),t[0]=r):r=t[0];let i;return t[1]===n?i=t[2]:(i=(0,$.jsx)(`code`,{className:r,children:n}),t[1]=n,t[2]=i),i}function kh(e){let t=(0,Q.c)(17),{toolCallId:n,command:r,projectId:i,wildcardOptions:a,resolvedDecision:o}=e,s=`shell:${n}`,c;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,$.jsx)(ee,{className:`h-5 w-5 text-brand shrink-0 mt-0.5`}),t[0]=c):c=t[0];let l;t[1]===r?l=t[2]:(l=(0,$.jsx)(Oh,{command:r}),t[1]=r,t[2]=l);let u,d;t[3]!==i||t[4]!==n?(u=()=>as(n,`allow_once`,{projectId:i??void 0}),d=e=>as(n,e.scope===`project`?`allow_pattern_project`:`allow_pattern_session`,{pattern:e.pattern,projectId:i??void 0}),t[3]=i,t[4]=n,t[5]=u,t[6]=d):(u=t[5],d=t[6]);let f;t[7]===n?f=t[8]:(f=()=>as(n,`skip`),t[7]=n,t[8]=f);let p;return t[9]!==o||t[10]!==s||t[11]!==l||t[12]!==u||t[13]!==d||t[14]!==f||t[15]!==a?(p=(0,$.jsx)(Dh,{persistenceKey:s,icon:c,promptTitle:`Allow the agent to run this command?`,skippedTitle:`Shell command permission`,detail:l,wildcardOptions:a,secondaryButtonLabel:`Skip`,resolvedDecision:o,successLabel:`Allowed`,onAllowOnce:u,onAllowWildcard:d,onSecondary:f}),t[9]=o,t[10]=s,t[11]=l,t[12]=u,t[13]=d,t[14]=f,t[15]=a,t[16]=p):p=t[16],p}function Ah({toolCallId:e,command:t}){let[n,r]=(0,Z.useState)(!1),[i,a]=(0,Z.useState)(!1),[o,s]=(0,Z.useState)(!1);async function c(t){if(!(o||n)){s(!0);try{await Uo(e,t),r(!0)}finally{s(!1)}}}async function l(){await navigator.clipboard.writeText(t),a(!0)}return n?(0,$.jsx)(`div`,{className:`my-2 rounded-lg border border-border p-4`,children:(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(W,{className:`h-5 w-5 text-brand`}),(0,$.jsx)(`span`,{className:U.label,children:`Sandbox escalation decision submitted`})]})}):(0,$.jsx)(`div`,{className:`my-2 rounded-lg border border-border p-4`,children:(0,$.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,$.jsx)(ee,{className:`mt-0.5 h-5 w-5 shrink-0 text-brand`}),(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,$.jsx)(`div`,{className:U.label,children:`Allow an unsandboxed retry?`}),(0,$.jsx)(`p`,{className:G(U.bodyMuted,`mt-1`),children:`Seatbelt blocked this npm install. The command will be retried once through a separately authorized path.`}),(0,$.jsx)(`code`,{className:G(U.mono,U.bodyMuted,`mt-2 block break-all rounded bg-muted/60 px-2 py-1`),children:t}),(0,$.jsxs)(`div`,{className:`mt-3 flex flex-wrap gap-2`,children:[(0,$.jsx)(Hr,{size:`sm`,disabled:o,onClick:()=>void c(`once`),children:`Allow once`}),(0,$.jsx)(Hr,{size:`sm`,variant:`outline`,disabled:o,onClick:()=>void c(`project`),children:`Allow for this project`}),(0,$.jsx)(Hr,{size:`sm`,variant:`outline`,disabled:o,onClick:()=>void c(`session`),children:`Allow for this session`}),(0,$.jsx)(Hr,{size:`sm`,variant:`outline`,disabled:o,onClick:()=>void c(`skip`),children:`Skip`}),(0,$.jsxs)(Hr,{size:`sm`,variant:`ghost`,onClick:()=>void l(),children:[(0,$.jsx)(Ze,{className:`mr-1 h-4 w-4`}),` `,i?`Copied`:`Copy command`]})]}),(0,$.jsx)(`p`,{className:G(U.bodyMuted,`mt-3`),children:`Sandbox is enabled. To disable it manually, go to Settings → General → Sandbox, or run the copied command in the project terminal.`})]})]})})}function jh(e){let t=(0,Q.c)(9),{hostname:n,url:r}=e,i;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(i=G(U.mono,U.bodyMuted,`mt-2 block break-all rounded bg-muted/60 px-2 py-1`),t[0]=i):i=t[0];let a;t[1]===n?a=t[2]:(a=(0,$.jsx)(`code`,{className:i,children:n}),t[1]=n,t[2]=a);let o;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(o=G(U.caption,U.bodyMuted,`mt-1 break-all select-text`),t[3]=o):o=t[3];let s;t[4]===r?s=t[5]:(s=(0,$.jsx)(`div`,{className:o,children:r}),t[4]=r,t[5]=s);let c;return t[6]!==a||t[7]!==s?(c=(0,$.jsxs)($.Fragment,{children:[a,s]}),t[6]=a,t[7]=s,t[8]=c):c=t[8],c}function Mh(e){let t=(0,Q.c)(16),{toolCallId:n,hostname:r,url:i,wildcardOptions:a,resolvedDecision:o}=e,s=`web-fetch:${n}`,c;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,$.jsx)(R,{className:`h-5 w-5 text-brand shrink-0 mt-0.5`}),t[0]=c):c=t[0];let l;t[1]!==r||t[2]!==i?(l=(0,$.jsx)(jh,{hostname:r,url:i}),t[1]=r,t[2]=i,t[3]=l):l=t[3];let u,d,f;t[4]===n?(u=t[5],d=t[6],f=t[7]):(u=()=>pa(n,`allow_once`),d=e=>pa(n,e.scope===`project`?`allow_domain_project`:`allow_domain_session`),f=()=>pa(n,`skip`),t[4]=n,t[5]=u,t[6]=d,t[7]=f);let p;return t[8]!==o||t[9]!==s||t[10]!==l||t[11]!==u||t[12]!==d||t[13]!==f||t[14]!==a?(p=(0,$.jsx)(Dh,{persistenceKey:s,icon:c,promptTitle:`Allow the agent to fetch from this domain?`,skippedTitle:`Web fetch permission`,detail:l,wildcardOptions:a,secondaryButtonLabel:`Deny`,resolvedDecision:o,successLabel:`Allowed`,onAllowOnce:u,onAllowWildcard:d,onSecondary:f}),t[8]=o,t[9]=s,t[10]=l,t[11]=u,t[12]=d,t[13]=f,t[14]=a,t[15]=p):p=t[15],p}var Nh=`
24
+ `):p,n[19]=v,n[20]=p,n[21]=b,n[22]=x):x=n[22];let S=x,C=v&&(s!==void 0||b.length>3),w=s&&s.lineCount>0?`Show full output (${s.lineCount} lines)`:`Show full output…`,T;return n[23]!==g||n[24]!==d||n[25]!==w||n[26]!==C||n[27]!==m||n[28]!==v||n[29]!==s||n[30]!==S||n[31]!==o||n[32]!==p||n[33]!==l||n[34]!==i||n[35]!==r?(T={toolName:r,toolId:i,result:o,observation:s,todos:l,findImagesResult:d,resultDisplay:p,hasResult:m,displayLabel:g,isBash:v,previewLines:S,hasMore:C,fullOutputTooltip:w},n[23]=g,n[24]=d,n[25]=w,n[26]=C,n[27]=m,n[28]=v,n[29]=s,n[30]=S,n[31]=o,n[32]=p,n[33]=l,n[34]=i,n[35]=r,n[36]=T):T=n[36],T}function eh({state:e,block:t,sequence:n,params:r}){let{todos:i,result:a,toolName:o}=e;return i===null?o===`todo`&&r&&!t.isError?(0,$.jsx)(qm,{sequence:n,params:r,text:typeof a==`string`?a:null}):null:(0,$.jsx)(Km,{todos:i,sequence:n})}function th({toolName:e,result:t,block:n,threadId:r}){if(e!==`generate_image`)return null;let i=n,a=ou(t)??ou(i);return a&&(a.imageUrl||a.imageData)?(0,$.jsx)(cu,{imageUrl:a.imageUrl,imageData:a.imageData,threadId:r}):null}function nh({state:e,rootPath:t,threadId:n}){return(0,$.jsx)(Zm,{displayLabel:e.displayLabel,resultDisplay:e.resultDisplay,previewLines:e.previewLines,hasMore:e.hasMore,fullOutputTooltip:e.fullOutputTooltip,observation:e.observation,rootPath:t,threadId:n})}function rh({state:e,rootPath:t,threadId:n}){return(0,$.jsx)(Qm,{displayLabel:e.displayLabel,toolName:e.toolName,toolId:e.toolId,findImagesResult:e.findImagesResult,resultDisplay:e.resultDisplay,observation:e.observation,rootPath:t,threadId:n})}function ih({block:e,inline:t,sequence:n,params:r,rootPath:i,threadId:a,state:o}){let{toolName:s,result:c,findImagesResult:l,observation:u,hasResult:d,todos:f,isBash:p}=o;return!d&&f===null&&!l?null:eh({state:o,block:e,sequence:n,params:r})||(t&&(l||s===`browser`||u)?null:th({toolName:s,result:c,block:e,threadId:a})||(t?null:p?nh({state:o,rootPath:i,threadId:a}):rh({state:o,rootPath:i,threadId:a})))}var ah=(0,Z.memo)(function(e){let t=(0,Q.c)(8),{block:n,inline:r,sequence:i,params:a}=e,o=i===void 0?0:i,s=X(oh),c=X(sh),l=$m(n,s),u;return t[0]!==n||t[1]!==r||t[2]!==a||t[3]!==s||t[4]!==o||t[5]!==l||t[6]!==c?(u=ih({block:n,inline:r,sequence:o,params:a,rootPath:s,threadId:c,state:l}),t[0]=n,t[1]=r,t[2]=a,t[3]=s,t[4]=o,t[5]=l,t[6]=c,t[7]=u):u=t[7],u});function oh(e){return e.projects.find(t=>t.projectId===e.selectedProjectId)?.threads.find(t=>t.threadId===e.selectedThreadId)?.path}function sh(e){return e.selectedThreadId}function ch(e){if(e<1e3){let t=Math.max(1,Math.round(e));return`${t} millisecond${t===1?``:`s`}`}let t=Math.max(1,Math.round(e/1e3));if(t<60)return`${t} second${t===1?``:`s`}`;let n=Math.floor(t/60),r=t%60;return r===0?`${n} minute${n===1?``:`s`}`:`${n} minute${n===1?``:`s`} ${r} second${r===1?``:`s`}`}function lh(e){return e<=0?``:` (${Vt(e)} token${e===1?``:`s`})`}function uh(e,t,n,r){let i=e?lh(r):``;return e?t===`MCP`?`Connecting MCP servers...${i}`:t===`Validating`?`Validating...${i}`:`Thinking${i}`:t===`MCP`?`MCP setup complete.`:t===`Validated`?`Validated`:n<=0?`Thought complete.`:`Thought for ${ch(n)}.`}function dh({text:e=``,isStreaming:t=!1,label:n,threadId:r}){"use no memo";let i=(0,Z.useRef)(null),a=(0,Z.useRef)(Date.now()),[o,s]=(0,Z.useState)(0),[c,l]=(0,Z.useState)(!1),u=(0,Z.useRef)(t);if((0,Z.useEffect)(()=>{t&&!u.current?(a.current=Date.now(),s(0)):u.current&&!t&&(s(Date.now()-a.current),l(!1)),u.current=t},[t]),(0,Z.useEffect)(()=>{c&&t&&i.current&&(i.current.scrollTop=i.current.scrollHeight)},[e,c,t]),!e&&!t)return null;let d=!t&&n===`Validated`,f=e.trim().length>0,p=ae(e),m=uh(t,n,o,p),h=t&&n!==`MCP`&&n!==`Validating`&&!d,g=c&&f?ds(cf(e)):``,_=(0,$.jsxs)($.Fragment,{children:[f?c?(0,$.jsx)(tn,{className:`h-3 w-3 text-muted-foreground shrink-0`}):(0,$.jsx)(sn,{className:`h-3 w-3 text-muted-foreground shrink-0`}):null,d?(0,$.jsx)(st,{className:`h-3.5 w-3.5 shrink-0 text-green-600`}):null,(0,$.jsx)(`span`,{className:G(U.caption,`min-w-0 truncate`),"data-thinking-tokens":t?p:void 0,children:m}),h?(0,$.jsx)(dp,{state:`solving`,className:`shrink-0`}):null]});return(0,$.jsxs)(`div`,{className:`flex flex-col gap-0.5`,children:[f?(0,$.jsx)(`button`,{type:`button`,className:`flex items-center gap-1.5 cursor-pointer select-none text-left w-full min-w-0`,onClick:()=>l(!c),"aria-expanded":c,children:_}):(0,$.jsx)(`div`,{className:`flex items-center gap-1.5 select-none text-left w-full min-w-0`,children:_}),(0,$.jsx)(`div`,{className:[`grid transition-[grid-template-rows] duration-200 ease-in-out`,c?`grid-rows-[1fr]`:`grid-rows-[0fr]`].join(` `),children:(0,$.jsx)(`div`,{className:`overflow-hidden`,children:(0,$.jsx)(`div`,{ref:i,className:G(U.caption,`ml-5 text-muted-foreground/60 overflow-y-auto scrollbar-hide`),style:{maxHeight:`7.5em`},children:g?(0,$.jsx)(ku,{content:g,compact:!0,threadId:r}):null})})})]})}function fh(e){let t=0;for(let n=0;n<e.length;n++)t=(t<<5)-t+e.charCodeAt(n)|0;return`${t}-${e.length}`}function ph(e){if(typeof e.executionOutput==`string`)return e.executionOutput;let t=e.partial?.content?.[0]?.arguments;if(!(!t||typeof t!=`object`)&&`content`in t&&typeof t.content==`string`)return t.content}function mh(e){if(!e)return;let t=e,n=t.result??t.content;if(n!=null){if(typeof n==`string`){if(t.imageUrl&&n.trim().startsWith(`{`))try{let e=JSON.parse(n);if(!e.imageUrl)return JSON.stringify({...e,imageUrl:t.imageUrl})}catch{}return n}return JSON.stringify(n,null,2)}}function hh(e){if(!(!e||!Oe(e.observation)))return e.observation}function gh(e){return e?.isError===!0}function _h(e){let t=new Map;for(let n of e)ws(n)&&t.set(n.toolCallId,n);return t}function vh(e,t){return mh(e.find(e=>ws(e)&&e.toolCallId===t))}function yh(e,t){return e.some(e=>ws(e)&&e.toolCallId===t)}function bh(e,t,n){if(!yh(e,t))return;let r=vh(e,t)??``,i=n===`shell`?We:nn;return r.includes(i)?`skipped`:`allowed`}function xh(e,t,n,r,i){return yh(e,n)?!1:r===n?!0:!!(t?.isThinking||t===void 0&&i)}function Sh(e,t){if(t)return vh(e,t)}var Ch=Ut(`chat.ask-user`);function wh(e){return e.questions&&e.questions.length>0?e.questions:e.question?[{question:e.question,header:e.context,options:e.options?.map(function(e){return{label:e,description:``}})}]:[]}function Th(e){let t=(0,Q.c)(44),n=wh(e),[r,i]=(0,Z.useState)(``),[a,o]=(0,Z.useState)(!!e.answeredText),[s,c]=(0,Z.useState)(e.answeredText??``),[l,u]=(0,Z.useState)(!1),[d,f]=(0,Z.useState)(null),p=n[0],m,h;t[0]===e.answeredText?(m=t[1],h=t[2]):(m=()=>{let t=e.answeredText?.trim();if(t){o(!0),c(t),u(!1),f(null);return}o(!1),c(``)},h=[e.answeredText],t[0]=e.answeredText,t[1]=m,t[2]=h),(0,Z.useEffect)(m,h);let g;t[3]!==l||t[4]!==e.toolCallId?(g=async function(t){if(!(!t.trim()||l)){u(!0);try{await Ia(e.toolCallId,t.trim()),c(t.trim()),o(!0)}catch(e){let t=e;Ch.error(`Failed to submit answer`,{err:t}),u(!1),f(null)}}},t[3]=l,t[4]=e.toolCallId,t[5]=g):g=t[5];let _=g,v;t[6]!==_||t[7]!==l||t[8]!==a?(v=function(e){a||l||(f(e),_(e))},t[6]=_,t[7]=l,t[8]=a,t[9]=v):v=t[9];let y=v,b;t[10]!==r||t[11]!==_?(b=function(e){e.preventDefault(),_(r)},t[10]=r,t[11]=_,t[12]=b):b=t[12];let x=b;if(!p)return null;if(a){let r;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,$.jsx)(W,{className:`mt-0.5 h-5 w-5 shrink-0 text-brand`}),t[13]=r):r=t[13];let i;t[14]===Symbol.for(`react.memo_cache_sentinel`)?(i=function(e){return(0,$.jsxs)(`div`,{className:`mb-2 last:mb-0`,children:[e.header&&(0,$.jsx)(`p`,{className:U.labelMuted,children:e.header}),(0,$.jsx)(`div`,{className:G(U.label,`text-foreground`),children:(0,$.jsx)(ku,{content:e.question})})]},`${e.header??`question`}-${e.question}`)},t[14]=i):i=t[14];let a=e.answeredLabel??`You answered`,o;t[15]===a?o=t[16]:(o=(0,$.jsxs)(`span`,{className:`font-medium`,children:[a,`:`]}),t[15]=a,t[16]=o);let c;t[17]===s?c=t[18]:(c=(0,$.jsx)(`span`,{children:s}),t[17]=s,t[18]=c);let l;return t[19]!==o||t[20]!==c?(l=(0,$.jsxs)(`div`,{className:U.bodyMuted,children:[o,` `,c]}),t[19]=o,t[20]=c,t[21]=l):l=t[21],(0,$.jsxs)(`div`,{className:`my-2 rounded-lg border-t border-border p-4`,children:[(0,$.jsxs)(`div`,{className:`mb-2 flex items-start gap-2`,children:[r,(0,$.jsx)(`div`,{className:`min-w-0 flex-1`,children:n.map(i)})]}),l]})}if(!e.interactive){let e;t[22]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,$.jsx)(ut,{className:`mt-0.5 h-5 w-5 shrink-0 text-brand`}),t[22]=e):e=t[22];let r;t[23]===Symbol.for(`react.memo_cache_sentinel`)?(r=function(e){return(0,$.jsxs)(`div`,{className:`mb-2 last:mb-0`,children:[e.header&&(0,$.jsx)(`p`,{className:U.labelMuted,children:e.header}),(0,$.jsx)(`div`,{className:G(U.label,`text-foreground`),children:(0,$.jsx)(ku,{content:e.question})})]},`${e.header??`question`}-${e.question}`)},t[23]=r):r=t[23];let i;return t[24]===Symbol.for(`react.memo_cache_sentinel`)?(i=(0,$.jsx)(`p`,{className:G(U.bodyMuted,`mt-2`),children:`Respond below to continue.`}),t[24]=i):i=t[24],(0,$.jsx)(`div`,{className:`my-2 rounded-lg border-t border-border p-4`,children:(0,$.jsxs)(`div`,{className:`flex items-start gap-2`,children:[e,(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[n.map(r),i]})]})})}let S;t[25]===Symbol.for(`react.memo_cache_sentinel`)?(S=G(U.label,`mb-3 text-foreground`),t[25]=S):S=t[25];let C;t[26]===i?C=t[27]:(C=e=>i(e.target.value),t[26]=i,t[27]=C);let w=p.options?.length?`Or type a custom answer...`:`Type your answer...`,T;t[28]===Symbol.for(`react.memo_cache_sentinel`)?(T=G(`w-full bg-transparent px-4 pt-3 pb-1 text-foreground placeholder:text-muted-foreground focus:outline-none disabled:opacity-50`,U.body),t[28]=T):T=t[28];let E;t[29]!==r||t[30]!==l||t[31]!==C||t[32]!==w?(E=(0,$.jsx)(`input`,{type:`text`,value:r,onChange:C,placeholder:w,disabled:l,className:T}),t[29]=r,t[30]=l,t[31]=C,t[32]=w,t[33]=E):E=t[33];let D;t[34]!==r||t[35]!==l?(D=l||!r.trim(),t[34]=r,t[35]=l,t[36]=D):D=t[36];let O;t[37]===Symbol.for(`react.memo_cache_sentinel`)?(O=(0,$.jsx)(V,{className:`h-3 w-3`}),t[37]=O):O=t[37];let k;t[38]===D?k=t[39]:(k=(0,$.jsx)(`div`,{className:`flex items-center justify-end px-3 pb-2`,children:(0,$.jsx)(`button`,{type:`submit`,disabled:D,className:`flex h-7 w-7 shrink-0 items-center justify-center rounded-full bg-primary text-primary-foreground transition-colors hover:bg-primary/90 disabled:opacity-50`,children:O})}),t[38]=D,t[39]=k);let A;return t[40]!==x||t[41]!==k||t[42]!==E?(A=(0,$.jsxs)(`form`,{onSubmit:x,className:`flex flex-col rounded-2xl border border-border focus-within:ring-2 focus-within:ring-brand`,children:[E,k]}),t[40]=x,t[41]=k,t[42]=E,t[43]=A):A=t[43],(0,$.jsxs)(`div`,{className:`my-2 rounded-lg border-t border-border p-4`,children:[p.header&&(0,$.jsx)(`p`,{className:U.labelMuted,children:p.header}),(0,$.jsx)(`div`,{className:S,children:(0,$.jsx)(ku,{content:p.question})}),p.options&&p.options.length>0&&(0,$.jsx)(`div`,{className:`mb-3 flex flex-wrap gap-2`,children:p.options.map(function(e){let t=d===e.label;return(0,$.jsxs)(`button`,{type:`button`,onClick:()=>y(e.label),disabled:l,className:G(`flex items-center gap-1.5 rounded-md border px-3 py-1.5 transition-colors disabled:opacity-50`,U.label,t?`border-foreground/20 bg-accent text-accent-foreground`:`border-foreground/20 bg-background text-foreground hover:bg-accent hover:text-accent-foreground`),children:[t&&(0,$.jsx)(W,{className:`h-3.5 w-3.5`}),e.label]},e.label)})}),A]})}var Eh=Ut(`app.permission-prompt-block.ui`);function Dh(e){if(typeof window>`u`)return null;let t=window.sessionStorage.getItem(e);return t===`allowed`||t===`skipped`?t:null}function Oh(e,t){typeof window>`u`||window.sessionStorage.setItem(e,t)}function kh(e){let t=(0,Q.c)(68),{persistenceKey:n,icon:r,promptTitle:i,skippedTitle:a,detail:o,wildcardOptions:s,secondaryButtonLabel:c,resolvedDecision:l,successLabel:u,onAllowOnce:d,onAllowWildcard:f,onSecondary:p}=e,m=u===void 0?`Allowed`:u,h=`permission-prompt:${n}`,g;t[0]!==l||t[1]!==h?(g=()=>l?!0:Dh(h)!==null,t[0]=l,t[1]=h,t[2]=g):g=t[2];let[_,v]=(0,Z.useState)(g),y;t[3]!==l||t[4]!==h?(y=()=>l||Dh(h),t[3]=l,t[4]=h,t[5]=y):y=t[5];let[b,x]=(0,Z.useState)(y),[S,C]=(0,Z.useState)(!1),w,T;t[6]!==l||t[7]!==h?(w=()=>{if(l){Oh(h,l),v(!0),x(l),C(!1);return}let e=Dh(h);e&&(v(!0),x(e),C(!1))},T=[l,h],t[6]=l,t[7]=h,t[8]=w,t[9]=T):(w=t[8],T=t[9]),(0,Z.useEffect)(w,T);let E;t[10]!==S||t[11]!==d||t[12]!==h||t[13]!==_?(E=async function(){if(!(S||_)){C(!0);try{await d(),Oh(h,`allowed`),v(!0),x(`allowed`)}catch(e){let t=e;Eh.error(`Failed to submit permission response:`,t),C(!1)}}},t[10]=S,t[11]=d,t[12]=h,t[13]=_,t[14]=E):E=t[14];let D=E,O;t[15]!==S||t[16]!==f||t[17]!==h||t[18]!==_?(O=async function(e){if(!(S||_)){C(!0);try{await f(e),Oh(h,`allowed`),v(!0),x(`allowed`)}catch(e){let t=e;Eh.error(`Failed to submit permission response:`,t),C(!1)}}},t[15]=S,t[16]=f,t[17]=h,t[18]=_,t[19]=O):O=t[19];let k=O,A;t[20]!==S||t[21]!==p||t[22]!==h||t[23]!==_?(A=async function(){if(!(S||_)){C(!0);try{await p(),Oh(h,`skipped`),v(!0),x(`skipped`)}catch(e){let t=e;Eh.error(`Failed to submit permission response:`,t),C(!1)}}},t[20]=S,t[21]=p,t[22]=h,t[23]=_,t[24]=A):A=t[24];let j=A;if(_){let e;t[25]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,$.jsx)(W,{className:`h-5 w-5 text-brand shrink-0 mt-0.5`}),t[25]=e):e=t[25];let n=b===`skipped`?a:i,r;t[26]===n?r=t[27]:(r=(0,$.jsx)(`div`,{className:U.label,children:n}),t[26]=n,t[27]=r);let s;t[28]!==o||t[29]!==r?(s=(0,$.jsxs)(`div`,{className:`flex items-start gap-2 mb-2`,children:[e,(0,$.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[r,o]})]}),t[28]=o,t[29]=r,t[30]=s):s=t[30];let c=b===`skipped`?`Skipped`:m,l;t[31]===c?l=t[32]:(l=(0,$.jsx)(`div`,{className:U.bodyMuted,children:c}),t[31]=c,t[32]=l);let u;return t[33]!==s||t[34]!==l?(u=(0,$.jsxs)(`div`,{className:`rounded-lg border border-border p-4 my-2`,children:[s,l]}),t[33]=s,t[34]=l,t[35]=u):u=t[35],u}let M;t[36]===i?M=t[37]:(M=(0,$.jsx)(`div`,{className:U.label,children:i}),t[36]=i,t[37]=M);let N;t[38]!==o||t[39]!==M?(N=(0,$.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[M,o]}),t[38]=o,t[39]=M,t[40]=N):N=t[40];let P;t[41]!==r||t[42]!==N?(P=(0,$.jsxs)(`div`,{className:`flex items-start gap-2 mb-3`,children:[r,N]}),t[41]=r,t[42]=N,t[43]=P):P=t[43];let F;t[44]===D?F=t[45]:(F=()=>void D(),t[44]=D,t[45]=F);let I;t[46]!==S||t[47]!==F?(I=(0,$.jsx)(Hr,{type:`button`,size:`sm`,disabled:S,onClick:F,className:`rounded-r-none`,children:`Allow`}),t[46]=S,t[47]=F,t[48]=I):I=t[48];let L;t[49]!==k||t[50]!==S||t[51]!==s?(L=s.length>0&&(0,$.jsxs)(hl,{children:[(0,$.jsx)(gl,{asChild:!0,children:(0,$.jsx)(Hr,{type:`button`,size:`sm`,disabled:S,className:G(`rounded-l-none border-l border-primary-foreground/20 px-2`),"aria-label":`More allow options`,children:(0,$.jsx)(tn,{className:`h-4 w-4`})})}),(0,$.jsx)(bl,{align:`end`,className:`max-w-md`,children:s.map(e=>(0,$.jsx)(xl,{onClick:()=>void k(e),children:e.label},`${e.scope}-${e.pattern}`))})]}),t[49]=k,t[50]=S,t[51]=s,t[52]=L):L=t[52];let R;t[53]!==I||t[54]!==L?(R=(0,$.jsxs)(`div`,{className:`inline-flex rounded-md shadow-sm`,children:[I,L]}),t[53]=I,t[54]=L,t[55]=R):R=t[55];let z;t[56]===j?z=t[57]:(z=()=>void j(),t[56]=j,t[57]=z);let B;t[58]!==S||t[59]!==c||t[60]!==z?(B=(0,$.jsx)(Hr,{type:`button`,size:`sm`,variant:`outline`,disabled:S,onClick:z,children:c}),t[58]=S,t[59]=c,t[60]=z,t[61]=B):B=t[61];let V;t[62]!==R||t[63]!==B?(V=(0,$.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[R,B]}),t[62]=R,t[63]=B,t[64]=V):V=t[64];let H;return t[65]!==P||t[66]!==V?(H=(0,$.jsxs)(`div`,{className:`rounded-lg border border-border p-4 my-2`,children:[P,V]}),t[65]=P,t[66]=V,t[67]=H):H=t[67],H}function Ah(e){let t=(0,Q.c)(3),{command:n}=e,r;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=G(U.mono,U.bodyMuted,`mt-2 block break-all rounded bg-muted/60 px-2 py-1`),t[0]=r):r=t[0];let i;return t[1]===n?i=t[2]:(i=(0,$.jsx)(`code`,{className:r,children:n}),t[1]=n,t[2]=i),i}function jh(e){let t=(0,Q.c)(17),{toolCallId:n,command:r,projectId:i,wildcardOptions:a,resolvedDecision:o}=e,s=`shell:${n}`,c;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,$.jsx)(ee,{className:`h-5 w-5 text-brand shrink-0 mt-0.5`}),t[0]=c):c=t[0];let l;t[1]===r?l=t[2]:(l=(0,$.jsx)(Ah,{command:r}),t[1]=r,t[2]=l);let u,d;t[3]!==i||t[4]!==n?(u=()=>as(n,`allow_once`,{projectId:i??void 0}),d=e=>as(n,e.scope===`project`?`allow_pattern_project`:`allow_pattern_session`,{pattern:e.pattern,projectId:i??void 0}),t[3]=i,t[4]=n,t[5]=u,t[6]=d):(u=t[5],d=t[6]);let f;t[7]===n?f=t[8]:(f=()=>as(n,`skip`),t[7]=n,t[8]=f);let p;return t[9]!==o||t[10]!==s||t[11]!==l||t[12]!==u||t[13]!==d||t[14]!==f||t[15]!==a?(p=(0,$.jsx)(kh,{persistenceKey:s,icon:c,promptTitle:`Allow the agent to run this command?`,skippedTitle:`Shell command permission`,detail:l,wildcardOptions:a,secondaryButtonLabel:`Skip`,resolvedDecision:o,successLabel:`Allowed`,onAllowOnce:u,onAllowWildcard:d,onSecondary:f}),t[9]=o,t[10]=s,t[11]=l,t[12]=u,t[13]=d,t[14]=f,t[15]=a,t[16]=p):p=t[16],p}function Mh({toolCallId:e,command:t}){let[n,r]=(0,Z.useState)(!1),[i,a]=(0,Z.useState)(!1),[o,s]=(0,Z.useState)(!1);async function c(t){if(!(o||n)){s(!0);try{await Uo(e,t),r(!0)}finally{s(!1)}}}async function l(){await navigator.clipboard.writeText(t),a(!0)}return n?(0,$.jsx)(`div`,{className:`my-2 rounded-lg border border-border p-4`,children:(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(W,{className:`h-5 w-5 text-brand`}),(0,$.jsx)(`span`,{className:U.label,children:`Sandbox escalation decision submitted`})]})}):(0,$.jsx)(`div`,{className:`my-2 rounded-lg border border-border p-4`,children:(0,$.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,$.jsx)(ee,{className:`mt-0.5 h-5 w-5 shrink-0 text-brand`}),(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,$.jsx)(`div`,{className:U.label,children:`Allow an unsandboxed retry?`}),(0,$.jsx)(`p`,{className:G(U.bodyMuted,`mt-1`),children:`Seatbelt blocked this npm install. The command will be retried once through a separately authorized path.`}),(0,$.jsx)(`code`,{className:G(U.mono,U.bodyMuted,`mt-2 block break-all rounded bg-muted/60 px-2 py-1`),children:t}),(0,$.jsxs)(`div`,{className:`mt-3 flex flex-wrap gap-2`,children:[(0,$.jsx)(Hr,{size:`sm`,disabled:o,onClick:()=>void c(`once`),children:`Allow once`}),(0,$.jsx)(Hr,{size:`sm`,variant:`outline`,disabled:o,onClick:()=>void c(`project`),children:`Allow for this project`}),(0,$.jsx)(Hr,{size:`sm`,variant:`outline`,disabled:o,onClick:()=>void c(`session`),children:`Allow for this session`}),(0,$.jsx)(Hr,{size:`sm`,variant:`outline`,disabled:o,onClick:()=>void c(`skip`),children:`Skip`}),(0,$.jsxs)(Hr,{size:`sm`,variant:`ghost`,onClick:()=>void l(),children:[(0,$.jsx)(Ze,{className:`mr-1 h-4 w-4`}),` `,i?`Copied`:`Copy command`]})]}),(0,$.jsx)(`p`,{className:G(U.bodyMuted,`mt-3`),children:`Sandbox is enabled. To disable it manually, go to Settings → General → Sandbox, or run the copied command in the project terminal.`})]})]})})}function Nh(e){let t=(0,Q.c)(9),{hostname:n,url:r}=e,i;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(i=G(U.mono,U.bodyMuted,`mt-2 block break-all rounded bg-muted/60 px-2 py-1`),t[0]=i):i=t[0];let a;t[1]===n?a=t[2]:(a=(0,$.jsx)(`code`,{className:i,children:n}),t[1]=n,t[2]=a);let o;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(o=G(U.caption,U.bodyMuted,`mt-1 break-all select-text`),t[3]=o):o=t[3];let s;t[4]===r?s=t[5]:(s=(0,$.jsx)(`div`,{className:o,children:r}),t[4]=r,t[5]=s);let c;return t[6]!==a||t[7]!==s?(c=(0,$.jsxs)($.Fragment,{children:[a,s]}),t[6]=a,t[7]=s,t[8]=c):c=t[8],c}function Ph(e){let t=(0,Q.c)(16),{toolCallId:n,hostname:r,url:i,wildcardOptions:a,resolvedDecision:o}=e,s=`web-fetch:${n}`,c;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,$.jsx)(R,{className:`h-5 w-5 text-brand shrink-0 mt-0.5`}),t[0]=c):c=t[0];let l;t[1]!==r||t[2]!==i?(l=(0,$.jsx)(Nh,{hostname:r,url:i}),t[1]=r,t[2]=i,t[3]=l):l=t[3];let u,d,f;t[4]===n?(u=t[5],d=t[6],f=t[7]):(u=()=>pa(n,`allow_once`),d=e=>pa(n,e.scope===`project`?`allow_domain_project`:`allow_domain_session`),f=()=>pa(n,`skip`),t[4]=n,t[5]=u,t[6]=d,t[7]=f);let p;return t[8]!==o||t[9]!==s||t[10]!==l||t[11]!==u||t[12]!==d||t[13]!==f||t[14]!==a?(p=(0,$.jsx)(kh,{persistenceKey:s,icon:c,promptTitle:`Allow the agent to fetch from this domain?`,skippedTitle:`Web fetch permission`,detail:l,wildcardOptions:a,secondaryButtonLabel:`Deny`,resolvedDecision:o,successLabel:`Allowed`,onAllowOnce:u,onAllowWildcard:d,onSecondary:f}),t[8]=o,t[9]=s,t[10]=l,t[11]=u,t[12]=d,t[13]=f,t[14]=a,t[15]=p):p=t[15],p}var Fh=`
26
25
 
27
26
  var __smartJsCatalog = [];
28
27
  var __smartJsCatalogByName = Object.create(null);
@@ -3302,7 +3301,7 @@ self.onmessage = async function (event) {
3302
3301
  self.postMessage({ type: "error", toolCallId: toolCallId, error: errMsg });
3303
3302
  }
3304
3303
  };
3305
- `;function Ph(e,t){return e?.status===`running`?`skip-running`:(e?.status===`success`||e?.status===`error`)&&e.code===t?`skip-same-code`:`start`}function Fh(e,t){return e===`running`?!0:e===`success`||e===`error`?!1:t}function Ih(e,t){return`${e}\0${t}`}var Lh=new Map,Rh=new Map,zh=new Map,Bh=Ut(`browser.js-executor`),Vh=new Map,Hh=null;function Uh(){return Hh||=URL.createObjectURL(new Blob([Nh],{type:`application/javascript`})),Hh}function Wh(e,t){return Lh.get(Ih(t,e))}function Gh(e,t){return Lh.get(Ih(t,e))?.proxiedCalls??[]}function Kh(e,t,n){let r=Ih(t,e),i=Vh.get(r);return i||(i=new Set,Vh.set(r,i)),i.add(n),()=>{i.delete(n),i.size===0&&Vh.delete(r)}}function qh(e){let t=Vh.get(e);if(t)for(let e of t)e()}function Jh(e){let t=zh.get(e);t&&(clearInterval(t),zh.delete(e))}function Yh(e){if(zh.has(e))return;let t=setInterval(()=>{let t=Lh.get(e);if(!t||t.status!==`running`){Jh(e);return}let n=Date.now(),r=!1;t.proxiedCalls=t.proxiedCalls.map(function(e){if(e.status!==`running`||e.toolName!==`bash`||e.startedAt==null)return e;let t=Math.floor((n-e.startedAt)/6e4);return t>=1&&t!==e.longRunningMinutes?(r=!0,{...e,longRunningMinutes:t}):e}),r&&qh(e)},6e4);zh.set(e,t)}function Xh(e,t){Jh(e),Rh.delete(e),Lh.set(e,t),qh(e)}var Zh=new Map;async function Qh(e,t){let n=Zh.get(t);if(n)return n;let r;return r=(async()=>{try{let n=await fetch(`${e}/api/browser-js/catalog?threadId=${encodeURIComponent(t)}`);if(!n.ok)return{smartJsEnabled:!1,tools:[]};let r=await n.json();return{smartJsEnabled:r.smartJsEnabled===!0,tools:Array.isArray(r.tools)?r.tools:[]}}catch(e){return Bh.warn(`Failed to load Smart JS catalog`,e),{smartJsEnabled:!1,tools:[]}}finally{Zh.get(t)===r&&Zh.delete(t)}})(),Zh.set(t,r),r}async function $h(e,t,n,r){let i=await fetch(e+`/api/browser-js/execute-tool`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({threadId:t,toolName:n,params:r})});if(!i.ok){let e=await i.text();try{let t=JSON.parse(e).error||{};e=t.details||t.message||e}catch{}let t=l(e,pe,`run_js tool error`);return{text:null,error:`Tool `+n+` failed: `+t.text,details:t.truncated?{proxyTruncated:!0,totalBytes:t.totalBytes}:void 0}}let a=await i.json(),o=a.content&&a.content[0]?a.content[0].text??null:null,s=a.details&&typeof a.details==`object`?a.details:void 0;if(o==null)return{text:null,error:null,details:s};let c=l(o,f);return c.truncated?{text:c.text,error:null,details:{...s,proxyTruncated:!0,totalBytes:c.totalBytes}}:{text:o,error:null,details:s}}function eg(e,t,n){let r=Ih(n,e),i=Ph(Lh.get(r),t);if(i===`skip-running`){Qi(e,n).catch(e=>{Bh.warn(`Failed to re-acknowledge in-flight run_js`,e)});return}if(i===`skip-same-code`)return;let a=Rh.get(r);a&&(a.terminate(),Rh.delete(r)),Jh(r),Lh.set(r,{status:`running`,code:t,proxiedCalls:[]}),qh(r);let o=Fa();Qi(e,n).catch(e=>{Bh.warn(`Failed to acknowledge run_js start`,e)}),(async()=>{let i=new Worker(Uh());Rh.set(r,i);try{let a=await Qh(o,n),s=async a=>{let s=a.data;if(s.type===`callTool`&&s.id&&s.toolName){let e=Lh.get(r),t={id:s.id,toolName:s.toolName,params:s.params,status:`running`,startedAt:s.toolName===`bash`?Date.now():void 0};e&&(e.proxiedCalls=[...e.proxiedCalls,t],qh(r),s.toolName===`bash`&&Yh(r));let a=await $h(o,n,s.toolName,s.params),c=Lh.get(r);c&&(c.proxiedCalls=c.proxiedCalls.map(e=>e.id===s.id?{...e,status:a.error?`error`:`success`,text:a.text,error:a.error,details:a.details}:e),qh(r)),i.postMessage({type:`callToolResult`,id:s.id,result:a});return}if(s.type===`done`&&s.toolCallId===e){i.terminate(),Xh(r,{status:`success`,code:t,result:s.result,proxiedCalls:Lh.get(r)?.proxiedCalls??[]}),await ia(e,s.result,n);return}if(s.type===`error`&&s.toolCallId===e){i.terminate();let a=s.error??`Unknown worker error`;Xh(r,{status:`error`,code:t,error:a,proxiedCalls:Lh.get(r)?.proxiedCalls??[]});try{await ia(e,{error:a},n)}catch(e){Bh.error(`Failed to submit browser JS error result`,e)}}};i.addEventListener(`message`,e=>{s(e)}),i.addEventListener(`error`,a=>{let o=a.message||`Web Worker failed`;Xh(r,{status:`error`,code:t,error:o,proxiedCalls:Lh.get(r)?.proxiedCalls??[]}),i.terminate(),ia(e,{error:o},n).catch(e=>{Bh.error(`Failed to submit browser JS worker error`,e)})}),i.postMessage({type:`execute`,toolCallId:e,code:t,smartJsEnabled:a.smartJsEnabled,catalog:a.tools})}catch(a){i.terminate();let o=a instanceof Error?a.stack||a.message:String(a);Xh(r,{status:`error`,code:t,error:o,proxiedCalls:Lh.get(r)?.proxiedCalls??[]});try{await ia(e,{error:o},n)}catch(e){Bh.error(`Failed to submit browser JS error result`,e)}}})()}var tg=`run_js`;function ng(e){return e==null?null:typeof e==`string`?e:JSON.stringify(e,null,2)}function rg(e){if(e&&typeof e==`object`&&`command`in e){let t=e.command;if(typeof t==`string`&&t.trim()){let e=t.trim().replace(/\s+/g,` `);return e.length>72?`${e.slice(0,72)}…`:e}}return`bash command`}function ig(e){return e.toolName===`bash`&&e.status===`running`&&e.longRunningMinutes!=null&&e.longRunningMinutes>=1?`${rg(e.params)} still running (${e.longRunningMinutes} min)`:e.error??(typeof e.text==`string`&&e.text.length>0?e.text.length>80?`${e.text.slice(0,80)}…`:e.text:null)}function ag(e){let t=(0,Q.c)(18),{call:n}=e,r=n.status===`running`,i=n.status===`error`,a;t[0]!==n.toolName||t[1]!==r?(a=r?ne(n.toolName):h(n.toolName),t[0]=n.toolName,t[1]=r,t[2]=a):a=t[2];let o=a,s;t[3]===n?s=t[4]:(s=ig(n),t[3]=n,t[4]=s);let c=s,l;t[5]!==n.toolName||t[6]!==o||t[7]!==r?(l=(0,$.jsx)(up,{toolName:n.toolName,displayName:o,isActive:r,showProgress:!1,className:`shrink-0`}),t[5]=n.toolName,t[6]=o,t[7]=r,t[8]=l):l=t[8];let u;t[9]===c?u=t[10]:(u=c?(0,$.jsx)(`span`,{className:G(U.caption,`font-mono truncate whitespace-nowrap min-w-0 flex-1`),children:c}):null,t[9]=c,t[10]=u);let d;t[11]!==n.toolName||t[12]!==i?(d=i?(0,$.jsx)(nt,{"aria-label":`${n.toolName} failed`,className:`h-3.5 w-3.5 shrink-0 text-destructive`}):null,t[11]=n.toolName,t[12]=i,t[13]=d):d=t[13];let f;return t[14]!==l||t[15]!==u||t[16]!==d?(f=(0,$.jsxs)(`div`,{className:`py-0.5 flex items-center gap-2 min-w-0 w-full pl-4`,children:[l,u,d]}),t[14]=l,t[15]=u,t[16]=d,t[17]=f):f=t[17],f}function og(e){let t=(0,Q.c)(13),{displayName:n,isActive:r,isError:i,summaryLabel:a,canOpenDetails:o,onOpenDetails:s}=e,c;t[0]!==n||t[1]!==r?(c=(0,$.jsx)(up,{toolName:tg,displayName:n,isActive:r,showProgress:!1,className:`shrink-0`}),t[0]=n,t[1]=r,t[2]=c):c=t[2];let l;t[3]!==o||t[4]!==s||t[5]!==a?(l=a?o?(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,onClick:s,className:G(U.caption,`font-mono hover:underline truncate whitespace-nowrap min-w-0 flex-1 cursor-pointer text-left`),children:a})}),(0,$.jsx)(Fr,{children:`View code and result`})]}):(0,$.jsx)(`span`,{className:G(U.caption,`font-mono truncate whitespace-nowrap min-w-0 flex-1`),children:a}):null,t[3]=o,t[4]=s,t[5]=a,t[6]=l):l=t[6];let u;t[7]===i?u=t[8]:(u=i?(0,$.jsx)(nt,{"aria-label":`Run JS failed`,className:`h-3.5 w-3.5 shrink-0 text-destructive`}):null,t[7]=i,t[8]=u);let d;return t[9]!==c||t[10]!==l||t[11]!==u?(d=(0,$.jsxs)(`div`,{className:`py-0.5 flex items-center gap-2 min-w-0 w-full flex-wrap`,children:[c,l,u]}),t[9]=c,t[10]=l,t[11]=u,t[12]=d):d=t[12],d}function sg(e){let t=(0,Q.c)(4),{calls:n}=e;if(n.length===0)return null;let r;t[0]===n?r=t[1]:(r=n.map(cg),t[0]=n,t[1]=r);let i;return t[2]===r?i=t[3]:(i=(0,$.jsx)(`div`,{className:`flex flex-col min-w-0 w-full border-l border-border/60 ml-2`,children:r}),t[2]=r,t[3]=i),i}function cg(e){return(0,$.jsx)(ag,{call:e},e.id)}function lg(e){let t=(0,Q.c)(15),{open:n,onOpenChange:r,title:i,code:a,errorDetails:o,resultText:s}=e,c;t[0]===a?c=t[1]:(c=a?(0,$.jsx)(`pre`,{className:Xf({padding:`3`}),children:a}):null,t[0]=a,t[1]=c);let l;t[2]===o?l=t[3]:(l=o?(0,$.jsx)(`pre`,{className:Xf({padding:`3`,className:`text-destructive`}),children:o}):null,t[2]=o,t[3]=l);let u;t[4]===s?u=t[5]:(u=s==null?null:(0,$.jsx)(`pre`,{className:Xf({padding:`3`}),children:s}),t[4]=s,t[5]=u);let d;t[6]!==c||t[7]!==l||t[8]!==u?(d=(0,$.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[c,l,u]}),t[6]=c,t[7]=l,t[8]=u,t[9]=d):d=t[9];let f;return t[10]!==r||t[11]!==n||t[12]!==d||t[13]!==i?(f=(0,$.jsx)(Zf,{open:n,onOpenChange:r,title:i,content:``,body:d}),t[10]=r,t[11]=n,t[12]=d,t[13]=i,t[14]=f):f=t[14],f}function ug({toolCallId:e,intention:t,code:n,resultContent:r,resultIsError:i,showActive:a=!1}){let o=X(e=>e.selectedThreadId),{todos:s,setTodos:c}=(0,Z.useContext)(zm),l=(0,Z.useRef)(new Set),u=(0,Z.useRef)(s);u.current=s;let d=r!==void 0,f=o?Wh(e,o):void 0,[p,m]=(0,Z.useState)(()=>f?.status?f.status:d?i?`error`:`success`:a?`running`:`success`),[g,_]=(0,Z.useState)(()=>f?.status===`success`?ng(f.result):d&&!i&&r||null),[v,y]=(0,Z.useState)(()=>f?.error?f.error:d&&i?r||`Run JS failed`:null),[b,x]=(0,Z.useState)(()=>o?Gh(e,o):[]),[S,C]=(0,Z.useState)(!1);(0,Z.useEffect)(()=>{l.current=new Set},[e,o]),(0,Z.useEffect)(()=>{if(o)return Kh(e,o,()=>{let t=Wh(e,o);t&&(m(t.status),x(t.proxiedCalls),t.status===`success`?_(ng(t.result)):t.status===`error`&&y(t.error??null))})},[e,o]),(0,Z.useEffect)(()=>{let e=u.current,t=!1;for(let n of b){if(n.toolName!==`todo`||n.status!==`success`||l.current.has(n.id))continue;let r=Hm(e,n);l.current.add(n.id),r&&(e=r,t=!0)}t&&c(e,Date.now())},[b,c]),(0,Z.useEffect)(()=>{!o||!a||eg(e,n,o)},[e,n,o,a]);let w=o?Wh(e,o)?.status:void 0,T=Fh(w,a);return{resultText:g,errorDetails:v,proxiedCalls:b,dialogOpen:S,setDialogOpen:C,isActive:T,isError:(w??p)===`error`,displayName:T?ne(tg):h(tg),summaryLabel:t.trim()||(T?null:`View output`),canOpenDetails:!T&&!!(n||g||v)}}function dg(e){let t=(0,Q.c)(24),{intention:n,code:r}=e,{resultText:i,errorDetails:a,proxiedCalls:o,dialogOpen:s,setDialogOpen:c,isActive:l,isError:u,displayName:d,summaryLabel:f,canOpenDetails:p}=ug(e),m;t[0]===c?m=t[1]:(m=()=>c(!0),t[0]=c,t[1]=m);let h;t[2]!==p||t[3]!==d||t[4]!==l||t[5]!==u||t[6]!==f||t[7]!==m?(h=(0,$.jsx)(og,{displayName:d,isActive:l,isError:u,summaryLabel:f,canOpenDetails:p,onOpenDetails:m}),t[2]=p,t[3]=d,t[4]=l,t[5]=u,t[6]=f,t[7]=m,t[8]=h):h=t[8];let g;t[9]===o?g=t[10]:(g=(0,$.jsx)(sg,{calls:o}),t[9]=o,t[10]=g);let _;t[11]!==p||t[12]!==r||t[13]!==s||t[14]!==d||t[15]!==a||t[16]!==n||t[17]!==i||t[18]!==c?(_=p?(0,$.jsx)(lg,{open:s,onOpenChange:c,title:n.trim()||d,code:r,errorDetails:a,resultText:i}):null,t[11]=p,t[12]=r,t[13]=s,t[14]=d,t[15]=a,t[16]=n,t[17]=i,t[18]=c,t[19]=_):_=t[19];let v;return t[20]!==h||t[21]!==g||t[22]!==_?(v=(0,$.jsxs)($.Fragment,{children:[h,g,_]}),t[20]=h,t[21]=g,t[22]=_,t[23]=v):v=t[23],v}function fg(e){let t=e?.trim();return!!t&&t!==`__thread__`}function pg(e,t,n){return fg(n)?e.some(e=>e.threadId===t&&e.conversationId===n):!1}function mg(e,t){return t===e.selectedThreadId?e.extraChatPanes:e.threadMultiPaneStates[t]?.extraChatPanes??{}}function hg(e,t,n){if(!fg(n))return;let r=mg(e,t);for(let[e,t]of Object.entries(r))if(t.conversationId===n)return e;let i=t===e.selectedThreadId;if(i&&e.primaryConversationId===n)return Ms;let a=Object.keys(r).length>0;if(!(i&&a&&e.primaryConversationId!==n))return Ms}function gg(e,t,n){let r=[],i=new Set;for(let a of t){if(!fg(a.conversationId)||n.isRecentlyFinalized(a.threadId)||n.isThreadBeingCreated(a.threadId))continue;let t=hg(e,a.threadId,a.conversationId);if(!t||n.hasSession(a.threadId,t))continue;let o=`${a.threadId}:${t}:${a.conversationId}`;i.has(o)||(i.add(o),r.push({threadId:a.threadId,paneId:t,conversationId:a.conversationId}))}return r}var _g=new Set,vg=new Map,yg=5e3;function bg(e){_g.add(e);let t=vg.get(e);t&&clearTimeout(t),vg.set(e,setTimeout(()=>{_g.delete(e),vg.delete(e)},yg))}function xg(e){return _g.has(e)}function Sg(e){return e.filter(e=>!_g.has(e))}var Cg;(function(e){e.Unimplemented=`UNIMPLEMENTED`,e.Unavailable=`UNAVAILABLE`})(Cg||={});var wg=class extends Error{constructor(e,t,n){super(e),this.message=e,this.code=t,this.data=n}},Tg=e=>e?.androidBridge?`android`:e?.webkit?.messageHandlers?.bridge?`ios`:`web`,Eg=e=>{let t=e.CapacitorCustomPlatform||null,n=e.Capacitor||{},r=n.Plugins=n.Plugins||{},i=()=>t===null?Tg(e):t.name,a=()=>i()!==`web`,o=e=>!!(l.get(e)?.platforms.has(i())||s(e)),s=e=>n.PluginHeaders?.find(t=>t.name===e),c=t=>e.console.error(t),l=new Map;return n.convertFileSrc||=e=>e,n.getPlatform=i,n.handleError=c,n.isNativePlatform=a,n.isPluginAvailable=o,n.registerPlugin=(e,a={})=>{let o=l.get(e);if(o)return console.warn(`Capacitor plugin "${e}" already registered. Cannot register plugins twice.`),o.proxy;let c=i(),u=s(e),d,f=async()=>(!d&&c in a?d=d=typeof a[c]==`function`?await a[c]():a[c]:t!==null&&!d&&`web`in a&&(d=d=typeof a.web==`function`?await a.web():a.web),d),p=(t,r)=>{if(u){let i=u?.methods.find(e=>r===e.name);if(i)return i.rtype===`promise`?t=>n.nativePromise(e,r.toString(),t):(t,i)=>n.nativeCallback(e,r.toString(),t,i);if(t)return t[r]?.bind(t)}else if(t)return t[r]?.bind(t);else throw new wg(`"${e}" plugin is not implemented on ${c}`,Cg.Unimplemented)},m=t=>{let n,r=(...r)=>{let i=f().then(i=>{let a=p(i,t);if(a){let e=a(...r);return n=e?.remove,e}else throw new wg(`"${e}.${t}()" is not implemented on ${c}`,Cg.Unimplemented)});return t===`addListener`&&(i.remove=async()=>n()),i};return r.toString=()=>`${t.toString()}() { [capacitor code] }`,Object.defineProperty(r,"name",{value:t,writable:!1,configurable:!1}),r},h=m(`addListener`),g=m(`removeListener`),_=(e,t)=>{let n=h({eventName:e},t),r=async()=>{g({eventName:e,callbackId:await n},t)},i=new Promise(e=>n.then(()=>e({remove:r})));return i.remove=async()=>{console.warn(`Using addListener() without 'await' is deprecated.`),await r()},i},v=new Proxy({},{get(e,t){switch(t){case`$$typeof`:return;case`toJSON`:return()=>({});case`addListener`:return u?_:h;case`removeListener`:return g;default:return m(t)}}});return r[e]=v,l.set(e,{name:e,proxy:v,platforms:new Set([...Object.keys(a),...u?[c]:[]])}),v},n.Exception=wg,n.DEBUG=!!n.DEBUG,n.isLoggingEnabled=!!n.isLoggingEnabled,n},Dg=(e=>e.Capacitor=Eg(e))(typeof globalThis<`u`?globalThis:typeof self<`u`?self:typeof window<`u`?window:typeof global<`u`?global:{}),Og=Dg.registerPlugin,kg=class{constructor(){this.listeners={},this.retainedEventArguments={},this.windowListeners={}}addListener(e,t){let n=!1;this.listeners[e]||(this.listeners[e]=[],n=!0),this.listeners[e].push(t);let r=this.windowListeners[e];return r&&!r.registered&&this.addWindowListener(r),n&&this.sendRetainedArgumentsForEvent(e),Promise.resolve({remove:async()=>this.removeListener(e,t)})}async removeAllListeners(){this.listeners={};for(let e in this.windowListeners)this.removeWindowListener(this.windowListeners[e]);this.windowListeners={}}notifyListeners(e,t,n){let r=this.listeners[e];if(!r){if(n){let n=this.retainedEventArguments[e];n||=[],n.push(t),this.retainedEventArguments[e]=n}return}r.forEach(e=>e(t))}hasListeners(e){return!!this.listeners[e]?.length}registerWindowListener(e,t){this.windowListeners[t]={registered:!1,windowEventName:e,pluginEventName:t,handler:e=>{this.notifyListeners(t,e)}}}unimplemented(e=`not implemented`){return new Dg.Exception(e,Cg.Unimplemented)}unavailable(e=`not available`){return new Dg.Exception(e,Cg.Unavailable)}async removeListener(e,t){let n=this.listeners[e];if(!n)return;let r=n.indexOf(t);this.listeners[e].splice(r,1),this.listeners[e].length||this.removeWindowListener(this.windowListeners[e])}addWindowListener(e){window.addEventListener(e.windowEventName,e.handler),e.registered=!0}removeWindowListener(e){e&&(window.removeEventListener(e.windowEventName,e.handler),e.registered=!1)}sendRetainedArgumentsForEvent(e){let t=this.retainedEventArguments[e];t&&(delete this.retainedEventArguments[e],t.forEach(t=>{this.notifyListeners(e,t)}))}},Ag=e=>encodeURIComponent(e).replace(/%(2[346B]|5E|60|7C)/g,decodeURIComponent).replace(/[()]/g,escape),jg=e=>e.replace(/(%[\dA-F]{2})+/gi,decodeURIComponent),Mg=class extends kg{async getCookies(){let e=document.cookie,t={};return e.split(`;`).forEach(e=>{if(e.length<=0)return;let[n,r]=e.replace(/=/,`CAP_COOKIE`).split(`CAP_COOKIE`);n=jg(n).trim(),r=jg(r).trim(),t[n]=r}),t}async setCookie(e){try{let t=Ag(e.key),n=Ag(e.value),r=e.expires?`; expires=${e.expires.replace(`expires=`,``)}`:``,i=(e.path||`/`).replace(`path=`,``),a=e.url!=null&&e.url.length>0?`domain=${e.url}`:``;document.cookie=`${t}=${n||``}${r}; path=${i}; ${a};`}catch(e){return Promise.reject(e)}}async deleteCookie(e){try{document.cookie=`${e.key}=; Max-Age=0`}catch(e){return Promise.reject(e)}}async clearCookies(){try{let e=document.cookie.split(`;`)||[];for(let t of e)document.cookie=t.replace(/^ +/,``).replace(/=.*/,`=;expires=${new Date().toUTCString()};path=/`)}catch(e){return Promise.reject(e)}}async clearAllCookies(){try{await this.clearCookies()}catch(e){return Promise.reject(e)}}};Og(`CapacitorCookies`,{web:()=>new Mg});var Ng=async e=>new Promise((t,n)=>{let r=new FileReader;r.onload=()=>{let e=r.result;t(e.indexOf(`,`)>=0?e.split(`,`)[1]:e)},r.onerror=e=>n(e),r.readAsDataURL(e)}),Pg=(e={})=>{let t=Object.keys(e);return Object.keys(e).map(e=>e.toLocaleLowerCase()).reduce((n,r,i)=>(n[r]=e[t[i]],n),{})},Fg=(e,t=!0)=>e?Object.entries(e).reduce((e,n)=>{let[r,i]=n,a,o;return Array.isArray(i)?(o=``,i.forEach(e=>{a=t?encodeURIComponent(e):e,o+=`${r}=${a}&`}),o.slice(0,-1)):(a=t?encodeURIComponent(i):i,o=`${r}=${a}`),`${e}&${o}`},``).substr(1):null,Ig=(e,t={})=>{let n=Object.assign({method:e.method||`GET`,headers:e.headers},t),r=Pg(e.headers)[`content-type`]||``;if(typeof e.data==`string`)n.body=e.data;else if(r.includes(`application/x-www-form-urlencoded`)){let t=new URLSearchParams;for(let[n,r]of Object.entries(e.data||{}))t.set(n,r);n.body=t.toString()}else if(r.includes(`multipart/form-data`)||e.data instanceof FormData){let t=new FormData;if(e.data instanceof FormData)e.data.forEach((e,n)=>{t.append(n,e)});else for(let n of Object.keys(e.data))t.append(n,e.data[n]);n.body=t;let r=new Headers(n.headers);r.delete(`content-type`),n.headers=r}else (r.includes(`application/json`)||typeof e.data==`object`)&&(n.body=JSON.stringify(e.data));return n},Lg=class extends kg{async request(e){let t=Ig(e,e.webFetchExtra),n=Fg(e.params,e.shouldEncodeUrlParams),r=n?`${e.url}?${n}`:e.url,i=await fetch(r,t),a=i.headers.get(`content-type`)||``,{responseType:o=`text`}=i.ok?e:{};a.includes(`application/json`)&&(o=`json`);let s,c;switch(o){case`arraybuffer`:case`blob`:c=await i.blob(),s=await Ng(c);break;case`json`:s=await i.json();break;default:s=await i.text()}let l={};return i.headers.forEach((e,t)=>{l[t]=e}),{data:s,headers:l,status:i.status,url:i.url}}async get(e){return this.request(Object.assign(Object.assign({},e),{method:`GET`}))}async post(e){return this.request(Object.assign(Object.assign({},e),{method:`POST`}))}async put(e){return this.request(Object.assign(Object.assign({},e),{method:`PUT`}))}async patch(e){return this.request(Object.assign(Object.assign({},e),{method:`PATCH`}))}async delete(e){return this.request(Object.assign(Object.assign({},e),{method:`DELETE`}))}};Og(`CapacitorHttp`,{web:()=>new Lg});var Rg;(function(e){e.Dark=`DARK`,e.Light=`LIGHT`,e.Default=`DEFAULT`})(Rg||={});var zg;(function(e){e.StatusBar=`StatusBar`,e.NavigationBar=`NavigationBar`})(zg||={});var Bg=class extends kg{async setStyle(){this.unavailable(`not available for web`)}async setAnimation(){this.unavailable(`not available for web`)}async show(){this.unavailable(`not available for web`)}async hide(){this.unavailable(`not available for web`)}};Og(`SystemBars`,{web:()=>new Bg});var Vg=Og(`KeepAwake`,{web:()=>us(()=>import(`./web-DHUv7oQP.js`).then(e=>new e.KeepAwakeWeb),[])}),Hg=0;function Ug(){return typeof window<`u`&&Za()}async function Wg(){if(Ug()&&(Hg+=1,!(Hg>1)))try{await Vg.keepAwake()}catch{Hg=0}}async function Gg(){if(Ug()&&Hg!==0&&(--Hg,!(Hg>0)))try{await Vg.allowSleep()}catch{Hg=0}}async function Kg(){if(Hg=0,Ug())try{await Vg.allowSleep()}catch{}}var qg=Ut(`app.use-chat-handlers.hook`),Jg=Ut(`git.checkpoint`);async function Yg(e,t,n,r,i,a){if(n===Ms&&!r?.trim())throw Error(`Refusing to reload primary chat history without a conversation ID`);let o=await ci(t,r);if(t===i.current&&!a?.isStale?.()){if(n!==Ms){e({type:Y.SetPaneMessages,paneId:n,messages:o.messages});return}e({type:Y.SetMessages,messages:o.messages,conversationId:r,historyEpoch:a?.historyEpoch})}}function Xg(e,t,n){return{...e,threadId:t,paneId:n}}var Zg=/^\/compact(?:\s+(.*))?$/i,Qg=/^\/send-event(?:\s+([a-zA-Z0-9._:-]+))?(?:\s+([\s\S]+))?$/i,$g=`[Compact] Compaction in progress...`;function e_(e,t,n){let r={type:`thinking`,content:$g,model:n};e(Xg({type:Y.SetStreaming,isStreaming:!0},t,`primary`)),e(Xg({type:Y.SetStreamModel,model:n},t,`primary`)),e(Xg({type:Y.AppendStreamChunk,chunkType:`thinking`,content:r.content??``,segments:zs([],`thinking`,r.content??``)},t,`primary`))}var t_=8e3;async function n_(e,t){try{let n=await Promise.race([qr(e,t),new Promise(e=>{setTimeout(()=>e(null),t_)})]);if(n===null){Jg.warn(`Checkpoint creation timed out`,{threadId:e,messageId:t});return}if(n.success&&n.checkpointRef)return n.stashed||Jg.debug(`Checkpoint recorded with clean working tree`,{threadId:e,messageId:t}),n.checkpointRef;`error`in n&&n.error?Jg.warn(`Checkpoint creation failed`,{threadId:e,messageId:t,error:n.error}):n.success||Jg.debug(`Checkpoint skipped`,{threadId:e,messageId:t,reason:n.reason})}catch(n){Jg.warn(`Checkpoint creation errored`,{threadId:e,messageId:t,error:n instanceof Error?n.message:String(n)})}}var r_=`tarsk-browser-tool-request`,i_=`tarsk-ask-user-prompt`,a_=new Set,o_=new Set,s_=new Map,c_=new Map,l_=new Map,u_=`tarsk.ask-user-tool-ownership.v1`,d_=1440*60*1e3;function f_(){if(!(typeof window>`u`))try{let e=window.localStorage.getItem(u_);if(!e)return;let t=JSON.parse(e),n=Date.now()-d_;for(let[e,r]of Object.entries(t.askUser??{}))r.updatedAt>=n&&r.paneId&&(c_.set(e,r.paneId),r.threadId&&s_.set(e,r.threadId));for(let[e,r]of Object.entries(t.subagents??{}))r.updatedAt>=n&&r.paneId&&l_.set(e,r.paneId)}catch{}}var p_=!1;function m_(){typeof window>`u`||p_||(p_=!0,window.setTimeout(()=>{p_=!1;try{let e=Date.now(),t={};for(let[n,r]of c_)t[n]={paneId:r,threadId:s_.get(n),updatedAt:e};let n={};for(let[t,r]of l_)n[t]={paneId:r,updatedAt:e};window.localStorage.setItem(u_,JSON.stringify({askUser:t,subagents:n}))}catch{}},0))}f_();function h_(e,t){l_.set(e,t),m_()}function g_(e){return l_.get(e)}function __(e){Pr()&&window.dispatchEvent(new CustomEvent(r_,{detail:e}))}function v_(e,t,n){!Pr()||a_.has(e)||t.action&&(a_.add(e),__({toolCallId:e,input:t,threadId:n}))}function y_(e,t,n){s_.set(e,t),n&&(c_.set(e,n),m_())}function b_(e,t,n){y_(e,t,n),!o_.has(e)&&(o_.add(e),window.dispatchEvent(new CustomEvent(i_,{detail:{toolCallId:e,threadId:t,paneId:n}})))}function x_(e){return s_.get(e)}function S_(e){return c_.get(e)}function C_(){return Pr()?`views://public/browser-preview-rpc.js`:`${Fa()}/browser-preview-rpc.js`}async function w_(e,t){await Zi(e,t)}async function T_(e,t){await ai(e,t)}function E_(e){if(typeof e!=`string`)return!1;let t=e.toLowerCase();return t===`run_js`||t===`run_web_worker`}function D_(e){if(!e||typeof e!=`object`)return null;let t=e.code;return typeof t==`string`&&t.length>0?t:null}function O_(e){let t=[];for(let n of e){if(!n||typeof n!=`object`)continue;let e=n;if(e.type!==`tool_use`||typeof e.id!=`string`||!e.id||!E_(e.name))continue;let r=D_(e.input??e.arguments);r&&t.push({id:e.id,code:r})}return t}function k_(e,t){if(t)for(let n of e)eg(n.id,n.code,t)}function A_(e,t){if(!(!t||!e.includes(`"run_js"`)))try{let n=JSON.parse(e.trim());if(!Array.isArray(n))return;k_(O_(n),t)}catch{}}function j_(e,t){if(!t||!e||!E_(e.toolName))return;let n=e.partial?.content;Array.isArray(n)&&k_(O_(n),t)}function M_(e,t){if(e.includes(`"browser"`))try{let n=JSON.parse(e.trim());if(!Array.isArray(n))return;for(let e of n)e?.type===`tool_use`&&e?.name===`browser`&&e?.id&&e?.input&&v_(e.id,e.input,t)}catch{}}function N_(e,t,n){if(e.includes(`"ask_user"`))try{let r=JSON.parse(e.trim());if(!Array.isArray(r))return;for(let e of r)e?.type===`tool_use`&&e?.name===`ask_user`&&e?.id&&b_(e.id,t,n)}catch{}}function P_(e){if(!(!e.includes(`"tool_use"`)||!e.includes(`"bash"`)))try{let t=JSON.parse(e.trim());if(!Array.isArray(t))return;for(let e of t)e?.type===`tool_use`&&e?.id&&typeof e.name==`string`&&e.name.toLowerCase()===`bash`&&typeof e.input?.command==`string`&&Wf(e.id,e.input.command)}catch{}}function F_(e){if(!(!e.includes(`"tool-result"`)||!e.includes(`"bash"`)))try{let t=JSON.parse(e.trim());if(!Array.isArray(t))return;for(let e of t)e?.type===`tool-result`&&e?.toolCallId&&typeof e.toolName==`string`&&e.toolName.toLowerCase()===`bash`&&Gf(e.toolCallId)}catch{}}function I_(e){let{dispatch:t,streamSessionsRef:n,connectThreadStreamRef:r,selectedThreadIdRef:i,getHistoryEpoch:a,getPaneConversationId:o}=e;function s(e,c,l){let u=Es(e,l.paneId);if(l.pendingTransientRecovery){l.pendingTransientRecovery=!1,(async()=>{try{if((await No()).includes(e)){r.current?.(e,t=>es(e,t,l.conversationId),c,l.paneId,l.conversationId);return}}catch(e){qg.error(`Failed to recover chat stream after disconnect:`,e)}s(e,c,l)})();return}if(n.current.get(u)!==l){n.current.has(u)||(bg(e),t(Xg({type:Y.ResetStream},e,l.paneId)),t({type:Y.RemoveProcessingThread,threadId:e}));return}if(n.current.delete(u),t({type:Y.ClearToolCallProgress}),l.keepsDeviceAwake&&(l.keepsDeviceAwake=!1,Gg()),bg(e),l.error&&!l.stopHandled){let n={messageId:`msg-${Date.now()}-error`,sender:`agent`,content:`Error: ${l.error}`,contentType:`text`,timestamp:new Date().toISOString(),model:c||`default`,isThinking:!1};t({type:Y.AddMessage,message:n,threadId:e,paneId:l.paneId}),t(Xg({type:Y.ResetStream},e,l.paneId)),t({type:Y.RemoveProcessingThread,threadId:e});return}if(l.stopHandled){if(l.segments.length>0){let n=Xs(l.segments);t({type:Y.AddMessage,message:{messageId:`msg-${Date.now()}-agent`,sender:`agent`,content:n,contentType:`markdown`,timestamp:new Date().toISOString(),model:c||`default`,isThinking:!1},threadId:e,paneId:l.paneId})}t({type:Y.AddMessage,message:{messageId:`msg-${Date.now()}-stopped`,sender:`agent`,content:`I've stopped working on your request.`,contentType:`text`,timestamp:new Date().toISOString(),model:c||`default`,isThinking:!1},threadId:e,paneId:l.paneId}),t(Xg({type:Y.ResetStream},e,l.paneId)),t({type:Y.SetActiveStreamPane,paneId:null}),t({type:Y.MarkThreadCompleted,threadId:e,paneId:l.paneId}),t({type:Y.RemoveProcessingThread,threadId:e});return}let d=Xs(l.segments)||`...`,f={messageId:`msg-${Date.now()}-agent`,sender:`agent`,content:d,contentType:`markdown`,timestamp:new Date().toISOString(),model:c||`default`,isThinking:!1};async function p(){let r=!1,s=a?.();function c(){if(n.current.has(u))return!0;let e=o?.(l.paneId)?.trim();return l.conversationId?.trim()&&e&&l.conversationId!==e?!0:s!==void 0&&a?.()!==s}for(let n=0;n<4;n++){if(n>0&&await new Promise(e=>setTimeout(e,150*n)),c())return;try{if(await Yg(t,e,l.paneId,l.conversationId,i,{isStale:c,historyEpoch:s}),c())return;r=!0;break}catch(e){qg.error(`Failed to reload chat history after stream:`,e);break}}c()||(r||t({type:Y.AddMessage,message:f,threadId:e,paneId:l.paneId}),t(Xg({type:Y.ResetStream},e,l.paneId)),t({type:Y.SetActiveStreamPane,paneId:null}),t({type:Y.MarkThreadCompleted,threadId:e,paneId:l.paneId}),t({type:Y.RemoveProcessingThread,threadId:e}))}p()}return s}function L_(e){let{dispatch:t,streamSessionsRef:n,setPaneError:r,setShowEmptyBalanceDialog:i,finalizeThreadStream:a}=e;function o(e,o,s,c,l){let u=Es(e,c),d=n.current.get(u);d&&(d.controller.abort(),d.cancel?.());let f=new AbortController,p={controller:f,cancel:null,segments:[],assistantMessage:``,assistantThinking:``,hasStructuredContent:!1,error:null,stopHandled:!1,pendingTransientRecovery:!1,activeSubagentToolCallId:null,paneId:c,conversationId:l,keepsDeviceAwake:!1};n.current.set(u,p),t(Xg({type:Y.ResetStream},e,c)),t({type:Y.AddProcessingThread,threadId:e}),t(Xg({type:Y.SetStreaming,isStreaming:!0},e,c)),t({type:Y.SetActiveStreamPane,paneId:c}),Wg().then(()=>{p.keepsDeviceAwake=!0});function m(o){if(o instanceof Error&&o.name===`AbortError`){if(p.stopHandled||!n.current.has(u))return;n.current.delete(u),t(Xg({type:Y.ResetStream},e,c)),t({type:Y.RemoveProcessingThread,threadId:e});return}if(o instanceof oi){n.current.delete(u),t(Xg({type:Y.ResetStream},e,c)),t({type:Y.RemoveProcessingThread,threadId:e}),i(!0);return}if(o instanceof Error&&o.message.includes(`not currently processing`)){n.current.delete(u),t(Xg({type:Y.ResetStream},e,c)),t({type:Y.RemoveProcessingThread,threadId:e});return}if(o instanceof Error&&eo(o.message)){p.pendingTransientRecovery=!0,a(e,s,p);return}let l=Mt((o instanceof Error?o.message:``).trim()||`Unknown error (no error details in response)`);p.error=l,r(e,c,l),qg.error(`Failed to subscribe to chat stream:`,o),a(e,s,p)}return(async()=>{let n=null;try{n=await o(f.signal)}catch(t){if(Sa(t,p.conversationId)&&!f.signal.aborted)try{n=await es(e,f.signal,p.conversationId)}catch(e){m(e);return}else{m(t);return}}if(!n||f.signal.aborted){a(e,s,p);return}p.cancel=Ro(n,n=>{if(t(Xg({type:Y.IncrementStreamEventCount},e,c)),n.type===`error`){let t=Mt(n.content?.trim()||n.error?.message?.trim()||n.message?.trim()||`Unknown error occurred`);p.error=t,r(e,c,t);return}if(n.type===`message`)return;if(n.type===`auto_compact`){let r=n.messagesBefore,i=n.content?.trim()||(typeof r==`number`?`Auto-compacted conversation (${r} → 1)`:`Auto-compacted conversation`);p.segments=zs(p.segments,`thinking`,`[Auto-compacted] ${i}\n`),t(Xg({type:Y.AppendStreamChunk,chunkType:`thinking`,content:i,segments:p.segments},e,c));return}if(n.type===`long_running_confirmation`){let r=n.prompt;if(!r)return;p.segments=Ns(p.segments,r),t(Xg({type:Y.AppendStreamChunk,chunkType:`content`,content:``,segments:p.segments},e,c));return}if(n.type===`shell_permission`){let r=n.shellPermission;if(!r)return;p.activeSubagentToolCallId&&t({type:Y.AppendToolExecutionOutput,toolCallId:p.activeSubagentToolCallId,threadId:e,toolName:`agent`,delta:`\n⏳ Waiting for shell approval: ${r.command}\n`}),p.segments=tc(p.segments,r),t(Xg({type:Y.AppendStreamChunk,chunkType:`content`,content:``,segments:p.segments},e,c));return}let i=n;if(i.type===`seatbelt_escalation`){let n=i.seatbeltEscalation;if(!n)return;p.segments=nc(p.segments,n),t(Xg({type:Y.AppendStreamChunk,chunkType:`content`,content:``,segments:p.segments},e,c));return}if(n.type===`web_fetch_permission`){let r=n.webFetchPermission;if(!r)return;p.activeSubagentToolCallId&&t({type:Y.AppendToolExecutionOutput,toolCallId:p.activeSubagentToolCallId,threadId:e,toolName:`agent`,delta:`\n⏳ Waiting for approval to fetch ${r.hostname}\n`}),p.segments=Ds(p.segments,r),t(Xg({type:Y.AppendStreamChunk,chunkType:`content`,content:``,segments:p.segments},e,c));return}if(n.type===`toolcall_delta`){if(n.partial?.content?.[0]?.id&&n.delta){let r=n.partial.content[0].id,i={toolCallId:r,threadId:e,toolName:n.partial.content[0].name,delta:n.delta,partial:n.partial};t({type:Y.UpdateToolCallProgress,toolCallId:r,progress:i}),j_(i,e)}return}if(n.type===`tool_execution_update`){n.toolCallId&&n.executionOutput!==void 0&&t({type:Y.UpdateToolExecutionOutput,toolCallId:n.toolCallId,threadId:e,toolName:n.toolName,executionOutput:n.executionOutput});return}if(n.type===`subagent_start`){if(n.toolCallId){p.activeSubagentToolCallId=n.toolCallId;let r=n.subagentName?.trim()||`subagent`;t({type:Y.UpdateToolExecutionOutput,toolCallId:n.toolCallId,threadId:e,toolName:`agent`,executionOutput:`Running ${r}…\n`})}return}if(n.type===`subagent_event`){if(n.toolCallId){if(h_(n.toolCallId,p.paneId),n.subagentEvent){t({type:Y.AppendSubagentEvent,toolCallId:n.toolCallId,event:n.subagentEvent});let r=typeof n.subagentEvent.content==`string`?n.subagentEvent.content:n.subagentEvent.content?JSON.stringify(n.subagentEvent.content):``;r&&(N_(r,e,p.paneId),A_(r,e))}let r=Yp(n);r&&t({type:Y.AppendToolExecutionOutput,toolCallId:n.toolCallId,threadId:e,toolName:`agent`,delta:r})}return}if(n.type===`subagent_complete`){n.toolCallId&&(p.activeSubagentToolCallId=null,n.subagentResult&&t({type:Y.UpdateToolExecutionOutput,toolCallId:n.toolCallId,threadId:e,toolName:`agent`,executionOutput:n.subagentResult}));return}if(n.type===`context_usage`){n.contextUsage&&t(Xg({type:Y.SetContextUsage,contextUsage:n.contextUsage},e,c));return}if(n.model&&t(Xg({type:Y.SetStreamModel,model:n.model},e,c)),n.type===`thinking`||n.isThinking){let r=n.content??``;if(A_(r,e),M_(r,e),N_(r,e,p.paneId),Is(r)){P_(r),F_(r),p.hasStructuredContent=!0,p.segments=$s(p.segments,r),p.assistantMessage=Js(p.segments),t(Xg({type:Y.AppendStreamChunk,chunkType:`content`,content:``,segments:p.segments},e,c));return}p.assistantThinking+=r,p.segments=zs(p.segments,`thinking`,r),t(Xg({type:Y.AppendStreamChunk,chunkType:`thinking`,content:r,segments:p.segments},e,c))}else if(n.type===`result`){p.hasStructuredContent=!0;let r=n.content??``;p.assistantMessage=r,p.segments=Fs(p.segments,r),t(Xg({type:Y.SetStreamContent,content:r},e,c)),typeof r==`string`&&(A_(r,e),M_(r,e),N_(r,e,p.paneId))}else{if(p.hasStructuredContent)return;let r=n.content??``;p.assistantMessage+=r,p.segments=zs(p.segments,`content`,r),t(Xg({type:Y.AppendStreamChunk,chunkType:`content`,content:r,segments:p.segments},e,c))}},()=>{a(e,s,p)},t=>{if(t.includes(`AbortError`)||t.includes(`canceled`)||t.includes(`BodyStreamBuffer was aborted`)){a(e,s,p);return}if(eo(t)){p.pendingTransientRecovery=!0;return}let n=Mt(t.trim()||`Unknown error (no error details in response)`);p.error=n,r(e,c,n),a(e,s,p)},n=>{if(t(Xg({type:Y.IncrementStreamEventCount},e,c)),n.role===`assistant`){let r=n.content??``,i=typeof r==`string`?r:JSON.stringify(r);if(n.isThinking??!1){A_(i,e),M_(i,e),N_(i,e,p.paneId),p.assistantThinking+=i,p.segments=zs(p.segments,`thinking`,i),t(Xg({type:Y.AppendStreamChunk,chunkType:`thinking`,content:i,segments:p.segments},e,c));return}let a=!1;if(typeof r==`object`&&Array.isArray(r)&&r.length>0)a=!0;else if(typeof i==`string`&&i.trim().startsWith(`[`))try{let e=JSON.parse(i);a=Array.isArray(e)&&e.length>0}catch{}a?(p.hasStructuredContent=!0,p.assistantMessage=i,p.segments=Fs(p.segments,i),t(Xg({type:Y.SetStreamContent,content:i},e,c)),A_(i,e),M_(i,e),N_(i,e,p.paneId)):(p.assistantMessage+=i,p.segments=zs(p.segments,`content`,i),t(Xg({type:Y.AppendStreamChunk,chunkType:`content`,content:i,segments:p.segments},e,c)))}else if(n.role===`tool`){let r=n.content??``,i=typeof r==`string`?r:JSON.stringify(r);i&&(P_(i),F_(i),Is(i)?(p.hasStructuredContent=!0,p.segments=$s(p.segments,i),p.assistantMessage=Js(p.segments),t(Xg({type:Y.AppendStreamChunk,chunkType:`content`,content:``,segments:p.segments},e,c))):i.trim().startsWith(`[`)||(p.assistantMessage+=i,p.segments=zs(p.segments,`content`,i),t(Xg({type:Y.AppendStreamChunk,chunkType:`content`,content:i,segments:p.segments},e,c))))}})})(),f}return o}async function R_(e){return Va(`api/projects/${ao(e)}/tasks`)}async function z_(e,t,n){return is(`api/projects/${ao(e)}/tasks`,{description:t,threadId:n?.threadId,provider:n?.provider,model:n?.model,tags:n?.tags,triggerType:n?.triggerType,scheduledAt:n?.scheduledAt,scheduleCron:n?.scheduleCron,timezone:n?.timezone,enabled:n?.enabled,eventKey:n?.eventKey})}async function B_(e,t,n){return Ho(`api/projects/${ao(e)}/tasks/${ao(t)}`,n)}async function V_(e,t){return Ho(`api/projects/${ao(e)}/tasks/${ao(t)}`,{runNow:!0})}async function H_(e,t,n){return is(`api/projects/${ao(e)}/events/dispatch`,{eventKey:t,payload:n})}async function U_(e,t){await yo(`api/projects/${ao(e)}/tasks/${ao(t)}`)}async function W_(e){return Va(`api/projects/${ao(e)}/tags`)}async function G_(e,t,n){return Ho(`api/projects/${ao(e)}/tags/${ao(t)}`,{name:n})}async function K_(e,t){return is(`api/projects/${ao(e)}/tags`,{name:t})}async function q_(e,t){await yo(`api/projects/${ao(e)}/tags/${ao(t)}`)}function J_(e){return e.trim().replace(/\n/g,` `).slice(0,100)}function Y_(e,t,n){return n(e)?.trim()||t?.trim()||void 0}function X_(e,t,n,r,i,a){i&&(Qa(n,{chatTitles:{...a,[r]:i}}).catch(e=>{qg.error(`Failed to update chat title:`,e)}),e({type:Y.UpdateChatTitle,projectId:t,threadId:n,paneId:r,title:i}))}function Z_(e){let{selectedThreadId:t,selectedProjectId:n,processingThreadIds:r,processingRuns:i,dispatch:a,toast:o,connectThreadStream:s,onPlanModeConsumed:c,setPaneError:l,setStopRequestedForThreadId:u,getPaneMessages:d,getPaneConversationId:f,isPaneStreaming:p,getChatTitles:m}=e;return(0,Z.useCallback)(async(e,h,g,_,v,y,b,x,S,C)=>{if(!t)return;let w=t,T=d(e);l(w,e,null),u(null);let E=g.trim().match(Zg);if(E){if(e!==`primary`)return;if(T.filter(e=>e.sender===`agent`).length<2){o({title:`Nothing to compact`,description:`Start a conversation with at least two exchanges first.`});return}if(r.includes(w)||p(w,e)){o({title:`Agent is busy`,description:`Wait for the agent to finish before compacting.`});return}let t=E[1]?.trim();e_(a,w,_);try{let n=await ho(w,{model:_,provider:y,instructions:t});a({type:Y.SetMessages,messages:n.messages}),a(Xg({type:Y.ResetStream},w,e)),o({title:`Conversation compacted`,description:`${n.messagesBefore} messages → ${n.messagesAfter} summary`})}catch(t){a(Xg({type:Y.ResetStream},w,e)),o({title:`Compaction failed`,description:t instanceof Error?t.message:`Failed to compact conversation`,variant:`destructive`})}return}let D=g.trim().match(Qg);if(D){if(e!==`primary`)return;if(!n){o({title:`No project selected`,description:`Open a project thread before sending an event.`,variant:`destructive`});return}let t=D[1]?.trim();if(!t){o({title:`Event key required`,description:`Use /send-event door.opened or /send-event door.opened {"doorId":"front"}`,variant:`destructive`});return}let r,i=D[2]?.trim();if(i)try{r=JSON.parse(i)}catch{o({title:`Invalid JSON payload`,description:`The optional payload after the event key must be valid JSON.`,variant:`destructive`});return}try{let e=await H_(n,t,r);o({title:`Event sent`,description:`Matched ${e.matched}, launched ${e.launched}, skipped ${e.skipped}`})}catch(e){o({title:`Event failed`,description:e instanceof Error?e.message:`Failed to send event`,variant:`destructive`})}return}let O=Y_(e,h,f);if(!x&&pg(i,w,O)&&!p(w,e)){s(w,e=>es(w,e,O),_,e,O),a({type:Y.EnqueueChatMessage,message:{id:`queued-${Date.now()}`,threadId:w,paneId:e,message:g,model:_,attachments:v,provider:y,planMode:b,imageMode:x,ralphMode:S,orchestrateMode:C}}),b&&c?.();return}let k=`msg-${Date.now()}`,A={messageId:k,sender:`user`,content:g,contentType:`text`,timestamp:new Date().toISOString(),model:_,attachments:v.map(e=>({fileName:e.fileName,content:e.content,mimeType:e.mimeType}))};a({type:Y.AddMessage,message:A,threadId:w,paneId:e});let j=await n_(w,k);if(j&&a({type:Y.UpdateMessageCheckpointRef,messageId:k,threadId:w,paneId:e,checkpointRef:j}),n){let t=J_(g);X_(a,n,w,e,t,m(w)),Mr(w,g,{provider:y,model:_}).then(r=>{r&&r!==t&&X_(a,n,w,e,r,m(w))}).catch(e=>{qg.error(`Failed to generate chat title:`,e)})}if(x){let t=y??void 0;if(!t&&typeof _==`string`){let e=_.split(/[:/]/)[0]?.trim();e&&(t=e)}if(!t){let t={messageId:`msg-${Date.now()}-error`,sender:`agent`,content:`Image generation is not available because no provider is configured for the selected model.`,contentType:`text`,timestamp:new Date().toISOString(),model:_,isThinking:!1};a({type:Y.AddMessage,message:t,threadId:w,paneId:e}),a(Xg({type:Y.ResetStream},w,e)),a({type:Y.SetActiveStreamPane,paneId:null});return}a(Xg({type:Y.SetStreaming,isStreaming:!0},w,e)),a({type:Y.SetActiveStreamPane,paneId:e});try{let n=await cs(g,_,t,w),r={messageId:`msg-${Date.now()}-agent`,sender:`agent`,content:g,contentType:`text`,timestamp:new Date().toISOString(),model:_,mode:`image`,isThinking:!1,generatedImageUrl:n.imageUrl,generatedImageData:n.imageData};a({type:Y.AddMessage,message:r,threadId:w,paneId:e})}catch(t){let n=t instanceof Error?t.message:`Image generation failed`,r={messageId:`msg-${Date.now()}-error`,sender:`agent`,content:`Error: ${n}`,contentType:`text`,timestamp:new Date().toISOString(),model:_,isThinking:!1};a({type:Y.AddMessage,message:r,threadId:w,paneId:e})}finally{a(Xg({type:Y.ResetStream},w,e)),a({type:Y.SetActiveStreamPane,paneId:null})}return}s(w,e=>to(w,g,_,v,e,y,b,S,j,O,C),_,e,O),a(Xg({type:Y.SetStreamAgentMode,mode:Gt({planMode:b,ralphMode:S,orchestrateMode:C})},w,e)),b&&c?.()},[t,n,a,s,r,i,o,c,d,f,p,m,l,u])}function Q_(e,t){for(let n of e.current){let r=n.split(`:`)[0];(!r||!t.has(r))&&e.current.delete(n)}}function $_(e,t,n){for(let r of n){let n=`${r.threadId}:${r.paneId}`;e.current.has(n)||(e.current.add(n),t(r.threadId,e=>es(r.threadId,e,r.conversationId),`default`,r.paneId,r.conversationId))}}function ev(e,t,n){if(!n.selectedThreadId)return;let r=n.getQueuedMessagesForPane(e);if(r.length===0||n.isPaneStreaming(n.selectedThreadId,e)||n.isProcessingQueueRef.current[e])return;let[i]=r;n.isProcessingQueueRef.current[e]=!0,t[e]=setTimeout(()=>{n.isProcessingQueueRef.current[e]=!1,n.dispatch({type:Y.RemoveQueuedChatMessage,queuedMessageId:i.id}),n.handleSend(e,n.getPaneConversationIdForHandlers(e),i.message,i.model,i.attachments,i.provider,i.planMode,i.imageMode,i.ralphMode,i.orchestrateMode)},0)}function tv(e,t,n){n.isPaneStreaming(n.selectedThreadId??``,t)||n.getPaneMessagesForHandlers(t).length>0||!n.selectedThreadId||n.handleSend(t,n.getPaneConversationIdForHandlers(t),e.message,e.model,e.attachments,e.provider,e.planMode,e.imageMode,e.ralphMode,e.orchestrateMode)}function nv(e,t){for(let n of e.projects){let e=n.threads.find(e=>e.threadId===t);if(e)return e.chatTitles}}function rv(e,t){let{selectedThreadId:n}=t;if(!n)return;t.onStopRequested(n);let r=Es(n,e),i=t.streamSessionsRef.current.get(r),a=t.getPaneStreamingModel(n,e),o=i?.conversationId??t.getPaneConversationIdForHandlers(e);if(Na(n,o?{conversationId:o}:void 0),i){i.stopHandled=!0,t.finalizeThreadStream(n,a,i),i.controller.abort(),i.cancel?.();return}t.dispatch(Xg({type:Y.ResetStream},n,e))}function iv(e,t){for(let[n,r]of t.current.entries()){r.controller.abort(),r.cancel?.(),r.keepsDeviceAwake&&(r.keepsDeviceAwake=!1,Gg());let[t,i]=n.split(`:`);e(Xg({type:Y.ResetStream},t,i))}t.current.clear()}function av(e,t){let{selectedThreadId:n}=t;if(!n)return;let r=Es(n,e),i=t.streamSessionsRef.current.get(r);i&&(t.streamSessionsRef.current.delete(r),i.controller.abort(),i.cancel?.(),i.keepsDeviceAwake&&(i.keepsDeviceAwake=!1,Gg())),t.dispatch(Xg({type:Y.ResetStream},n,e)),t.dispatch({type:Y.SetActiveStreamPane,paneId:null})}function ov(e,t,n){if(!n){if(!(t in e))return e;let{[t]:n,...r}=e;return r}return e[t]===n?e:{...e,[t]:n}}function sv(e){let t=new Set(e.processingThreadIds),n=e.storeRef.getState();Q_(e.autoSubscribePendingRef,t);let r=gg({...n,selectedThreadId:e.selectedThreadId,extraChatPanes:e.extraChatPanes,primaryConversationId:e.primaryConversationId},e.processingRuns,{hasSession:(t,n)=>e.streamSessionsRef.current.has(Es(t,n)),isRecentlyFinalized:xg,isThreadBeingCreated:e=>kc(n.threadToolSessions[e])});$_(e.autoSubscribePendingRef,e.connectThreadStream,r)}function cv(e){let t=e.pendingChatMessage;if(!t||t.threadId!==e.selectedThreadId||e.isPaneStreaming(e.selectedThreadId??``,`primary`))return;let n=setTimeout(()=>{e.dispatch({type:Y.ClearPendingChatMessage}),e.handleSend(`primary`,void 0,t.message,t.model,[],t.provider)},100);return()=>clearTimeout(n)}function lv(e){if(!e.selectedThreadId)return;let t={},n=new Set([`primary`,...Ts(e.storeRef.getState()),...e.queuedChatMessages.filter(t=>t.threadId===e.selectedThreadId).map(e=>e.paneId)]);for(let r of n)ev(r,t,e);return()=>{for(let e of n){let n=t[e];n&&clearTimeout(n)}}}function uv(e,t,n){let r=n.getQueuedMessagesForPane(e).find(e=>e.id===t);n.dispatch({type:Y.RemoveQueuedChatMessage,queuedMessageId:t}),r&&tv(r,e,{selectedThreadId:n.selectedThreadId,isPaneStreaming:n.isPaneStreaming,getPaneMessagesForHandlers:n.getPaneMessages,getPaneConversationIdForHandlers:n.getPaneConversationId,handleSend:n.handleSend})}function dv(){let e=Ks(),t=Vs(),n=X(e=>e.selectedThreadId),r=X(e=>e.selectedProjectId),i=X(e=>e.queuedChatMessages),a=X(e=>e.pendingChatMessage),o=X(e=>e.processingThreadIds),s=X(e=>e.processingRuns),c=X(e=>e.extraChatPanes),l=X(e=>e.primaryConversationId),u=(0,Z.useRef)(null),d=(0,Z.useRef)(new Map),f=(0,Z.useRef)(null),p=(0,Z.useRef)({}),m=(0,Z.useRef)(new Set);return u.current=n,{dispatch:e,storeRef:t,selectedThreadId:n,selectedProjectId:r,queuedChatMessages:i,pendingChatMessage:a,processingThreadIds:o,processingRuns:s,extraChatPanes:c,primaryConversationId:l,selectedThreadIdRef:u,streamSessionsRef:d,connectThreadStreamRef:f,isProcessingQueueRef:p,autoSubscribePendingRef:m}}function fv(e){let t=(0,Q.c)(20),{storeRef:n,selectedThreadId:r,queuedChatMessages:i}=e,a;t[0]===n?a=t[1]:(a=function(e){return ys(n.getState(),e)},t[0]=n,t[1]=a);let o=a,s;t[2]===n?s=t[3]:(s=function(e){return gs(n.getState(),e)},t[2]=n,t[3]=s);let c=s,l;t[4]===n?l=t[5]:(l=function(e,t){return As(n.getState().threadStreamingStates,e,t).isStreaming},t[4]=n,t[5]=l);let u=l,d;t[6]===n?d=t[7]:(d=function(e,t){return As(n.getState().threadStreamingStates,e,t).streamingModel||`default`},t[6]=n,t[7]=d);let f=d,p;t[8]===n?p=t[9]:(p=function(e){return nv(n.getState(),e)},t[8]=n,t[9]=p);let m=p,h;t[10]!==i||t[11]!==r?(h=e=>r?i.filter(t=>t.threadId===r&&t.paneId===e):[],t[10]=i,t[11]=r,t[12]=h):h=t[12];let g=h,_;return t[13]!==m||t[14]!==c||t[15]!==o||t[16]!==f||t[17]!==g||t[18]!==u?(_={getPaneMessages:o,getPaneConversationId:c,isPaneStreaming:u,getPaneStreamingModel:f,getChatTitles:m,getQueuedMessagesForPane:g},t[13]=m,t[14]=c,t[15]=o,t[16]=f,t[17]=g,t[18]=u,t[19]=_):_=t[19],_}function pv(){let e=(0,Q.c)(5),t;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t={},e[0]=t):t=e[0];let[n,r]=(0,Z.useState)(t),[i,a]=(0,Z.useState)(!1),o;e[1]===Symbol.for(`react.memo_cache_sentinel`)?(o=(e,t,n)=>{let i=Es(e,t);r(e=>ov(e,i,n))},e[1]=o):o=e[1];let s=o,c;return e[2]!==n||e[3]!==i?(c={paneErrors:n,setPaneError:s,showEmptyBalanceDialog:i,setShowEmptyBalanceDialog:a},e[2]=n,e[3]=i,e[4]=c):c=e[4],c}function mv(e){let{state:t,selectors:n,setPaneError:r,setShowEmptyBalanceDialog:i,setStopRequestedForThreadId:a}=e,{dispatch:o,storeRef:s,streamSessionsRef:c,connectThreadStreamRef:l,selectedThreadIdRef:u,autoSubscribePendingRef:d,processingThreadIds:f,selectedThreadId:p,extraChatPanes:m,primaryConversationId:h,processingRuns:g}=t,_=(0,Z.useCallback)(I_({dispatch:o,streamSessionsRef:c,connectThreadStreamRef:l,selectedThreadIdRef:u,getHistoryEpoch:()=>s.getState().chatHistoryEpoch,getPaneConversationId:e=>gs(s.getState(),e)}),[o,s]),v=(0,Z.useCallback)(e=>rv(e,{selectedThreadId:p,dispatch:o,finalizeThreadStream:_,streamSessionsRef:c,getPaneStreamingModel:n.getPaneStreamingModel,getPaneConversationIdForHandlers:n.getPaneConversationId,onStopRequested:a}),[p,o,_]);(0,Z.useEffect)(()=>()=>{iv(o,c)},[o]);let y=(0,Z.useCallback)(L_({dispatch:o,streamSessionsRef:c,setPaneError:r,setShowEmptyBalanceDialog:i,finalizeThreadStream:_}),[o,_,r]);return l.current=y,(0,Z.useEffect)(()=>{sv({autoSubscribePendingRef:d,processingThreadIds:f,selectedThreadId:p,extraChatPanes:m,primaryConversationId:h,processingRuns:g,connectThreadStream:y,streamSessionsRef:c,storeRef:s})},[y,m,h,g,f,p,s]),{finalizeThreadStream:_,connectThreadStream:y,handleStop:v}}function hv(e){let t=dv(),{dispatch:n,storeRef:r,selectedThreadId:i,selectedProjectId:a,processingThreadIds:o,processingRuns:s,pendingChatMessage:c,queuedChatMessages:l}=t,u=fv(t),{getPaneMessages:d,getPaneConversationId:f,isPaneStreaming:p,getChatTitles:m,getQueuedMessagesForPane:h}=u,{toast:g}=ic(),{paneErrors:_,setPaneError:v,showEmptyBalanceDialog:y,setShowEmptyBalanceDialog:b}=pv(),[x,S]=(0,Z.useState)(null),{connectThreadStream:C,handleStop:w}=mv({state:t,selectors:u,setPaneError:v,setShowEmptyBalanceDialog:b,setStopRequestedForThreadId:S}),T=Z_({selectedThreadId:i,selectedProjectId:a,processingThreadIds:o,processingRuns:s,dispatch:n,toast:g,connectThreadStream:C,onPlanModeConsumed:e,setPaneError:v,setStopRequestedForThreadId:S,getPaneMessages:d,getPaneConversationId:f,isPaneStreaming:p,getChatTitles:m});(0,Z.useEffect)(()=>cv({pendingChatMessage:c,selectedThreadId:i,isPaneStreaming:p,dispatch:n,handleSend:T}),[c,i,n,T,r]),(0,Z.useEffect)(()=>lv({selectedThreadId:i,dispatch:n,getQueuedMessagesForPane:h,isPaneStreaming:p,isProcessingQueueRef:t.isProcessingQueueRef,getPaneConversationIdForHandlers:f,handleSend:T,storeRef:r,queuedChatMessages:l}),[n,h,T,l,i,r]);let E=(0,Z.useCallback)((e,t)=>uv(e,t,{getQueuedMessagesForPane:h,dispatch:n,selectedThreadId:i,isPaneStreaming:p,getPaneMessages:d,getPaneConversationId:f,handleSend:T}),[n,h,T,i,r]),D=(0,Z.useCallback)(e=>{av(e,{selectedThreadId:i,dispatch:n,streamSessionsRef:t.streamSessionsRef})},[n,i,t.streamSessionsRef]);return(0,Z.useMemo)(()=>({paneErrors:_,setPaneError:v,handleSend:T,handleStop:w,handleDiscardPaneStream:D,getQueuedMessagesForPane:h,handleRemoveQueuedMessage:E,showEmptyBalanceDialog:y,setShowEmptyBalanceDialog:b}),[_,v,T,w,D,h,E,y,b])}var gv=(0,Z.createContext)(void 0);function _v(e){let t=(0,Q.c)(3),{children:n}=e,r=hv(),i;return t[0]!==n||t[1]!==r?(i=(0,$.jsx)(gv.Provider,{value:r,children:n}),t[0]=n,t[1]=r,t[2]=i):i=t[2],i}function vv(){let e=(0,Z.useContext)(gv);if(e===void 0)throw Error(`useChatHandlersContext must be used within a ChatHandlersProvider`);return e}var yv=(0,Z.createContext)(void 0);function bv(e){let t=(0,Q.c)(12),{paneId:n,conversationId:r,fillPane:i,children:a}=e,o=i===void 0?!1:i,s=Ks(),c=X(xv),l;t[0]!==s||t[1]!==n?(l=()=>{s({type:Y.SetFocusedPane,paneId:n})},t[0]=s,t[1]=n,t[2]=l):l=t[2];let u=l,d=c===n,f;t[3]!==r||t[4]!==o||t[5]!==n||t[6]!==u||t[7]!==d?(f={paneId:n,conversationId:r,isFocused:d,fillPane:o,setFocused:u},t[3]=r,t[4]=o,t[5]=n,t[6]=u,t[7]=d,t[8]=f):f=t[8];let p=f,m;return t[9]!==a||t[10]!==p?(m=(0,$.jsx)(yv.Provider,{value:p,children:a}),t[9]=a,t[10]=p,t[11]=m):m=t[11],m}function xv(e){return e.focusedPane}function Sv(){let e=(0,Q.c)(1),t=(0,Z.useContext)(yv);if(t===void 0){let t;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t={paneId:`primary`,conversationId:void 0,isFocused:!0,fillPane:!1,setFocused:Cv},e[0]=t):t=e[0],t}return t}function Cv(){}function wv(e){let t=(0,Q.c)(66),{toolCall:n,className:r}=e,{paneId:i}=Sv(),{handleStop:a}=vv(),[o,s]=(0,Z.useState)(!1),c;t[0]===n.id?c=t[1]:(c=e=>e.toolCallProgress[n.id],t[0]=n.id,t[1]=c);let l=X(c),u;t[2]!==n.activeDisplayName||t[3]!==n.name?(u=n.activeDisplayName??ne(n.name),t[2]=n.activeDisplayName,t[3]=n.name,t[4]=u):u=t[4];let d=u,f=Gd(n.name)?`searching`:`working`,p;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(p=()=>{s(Ev)},t[5]=p):p=t[5];let m=p,h;t[6]!==a||t[7]!==i?(h=function(){a(i)},t[6]=a,t[7]=i,t[8]=h):h=t[8];let g=h,_=Tv,v=n.name===`bash`&&typeof n.input?.command==`string`?n.input.command:null,y;t[9]===v?y=t[10]:(y=v===null?null:qd(v),t[9]=v,t[10]=y);let b=y,x=n.name===`fetch`&&typeof n.input?.url==`string`?n.input.url:null,S=n.name===`web_search`&&typeof n.input?.query==`string`?n.input.query:null,C=!v&&typeof n.input?.description==`string`?n.input.description:null,w;t[11]===r?w=t[12]:(w=G(`overflow-hidden mb-2`,r),t[11]=r,t[12]=w);let T;t[13]===d?T=t[14]:(T=(0,$.jsx)(`span`,{className:U.bodyMuted,children:d}),t[13]=d,t[14]=T);let E;t[15]===f?E=t[16]:(E=(0,$.jsx)(lp,{state:f}),t[15]=f,t[16]=E);let D;t[17]!==T||t[18]!==E?(D=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1`,children:[T,E]})}),t[17]=T,t[18]=E,t[19]=D):D=t[19];let O;t[20]===n.name?O=t[21]:(O=(0,$.jsx)(Fr,{children:n.name}),t[20]=n.name,t[21]=O);let k;t[22]!==O||t[23]!==D?(k=(0,$.jsxs)(Mi,{children:[D,O]}),t[22]=O,t[23]=D,t[24]=k):k=t[24];let A;t[25]===b?A=t[26]:(A=b!==null&&(0,$.jsx)(`code`,{className:G(U.mono,U.bodyMuted,`truncate whitespace-nowrap rounded bg-muted/60 px-1 py-0.5 max-w-full`),children:b.label}),t[25]=b,t[26]=A);let j;t[27]===x?j=t[28]:(j=x!==null&&(0,$.jsx)(`code`,{className:G(U.mono,U.bodyMuted,`break-all rounded bg-muted/60 px-1 py-0.5`),children:x.length>60?`${x.slice(0,59)}…`:x}),t[27]=x,t[28]=j);let M;t[29]===S?M=t[30]:(M=S!==null&&(0,$.jsx)(`code`,{className:G(U.mono,U.bodyMuted,`break-all rounded bg-muted/60 px-1 py-0.5`),children:S.length>60?`${S.slice(0,59)}…`:S}),t[29]=S,t[30]=M);let N;t[31]===C?N=t[32]:(N=C!==null&&(0,$.jsx)(`span`,{className:U.bodyMuted,children:C}),t[31]=C,t[32]=N);let P;t[33]===o?P=t[34]:(P=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`button`,{onClick:m,className:`p-1 hover:bg-muted/50 rounded transition-colors`,children:o?(0,$.jsx)(Yt,{className:`h-3 w-3`}):(0,$.jsx)(tn,{className:`h-3 w-3`})})}),t[33]=o,t[34]=P);let F=o?`Collapse`:`Expand`,I;t[35]===F?I=t[36]:(I=(0,$.jsx)(Fr,{children:F}),t[35]=F,t[36]=I);let L;t[37]!==P||t[38]!==I?(L=(0,$.jsxs)(Mi,{children:[P,I]}),t[37]=P,t[38]=I,t[39]=L):L=t[39];let R;t[40]===Symbol.for(`react.memo_cache_sentinel`)?(R=(0,$.jsx)(nt,{className:`h-3 w-3`}),t[40]=R):R=t[40];let z;t[41]===g?z=t[42]:(z=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`button`,{onClick:g,className:`p-1 hover:bg-red-200 dark:hover:bg-red-800 rounded transition-colors text-red-600 dark:text-red-400`,children:R})}),t[41]=g,t[42]=z);let B;t[43]===Symbol.for(`react.memo_cache_sentinel`)?(B=(0,$.jsx)(Fr,{className:`bg-red-600 text-white border-red-600`,children:`Stop this process`}),t[43]=B):B=t[43];let V;t[44]===z?V=t[45]:(V=(0,$.jsxs)(Mi,{children:[z,B]}),t[44]=z,t[45]=V);let H;t[46]!==L||t[47]!==V?(H=(0,$.jsxs)(`div`,{className:`flex items-center gap-1 ml-auto shrink-0`,children:[L,V]}),t[46]=L,t[47]=V,t[48]=H):H=t[48];let ee;t[49]!==k||t[50]!==A||t[51]!==j||t[52]!==M||t[53]!==N||t[54]!==H?(ee=(0,$.jsxs)(`div`,{className:`py-0.5 flex items-center gap-2 flex-wrap`,children:[k,A,j,M,N,H]}),t[49]=k,t[50]=A,t[51]=j,t[52]=M,t[53]=N,t[54]=H,t[55]=ee):ee=t[55];let te;t[56]!==o||t[57]!==f||t[58]!==n.id||t[59]!==n.input||t[60]!==l?(te=o&&(0,$.jsxs)(`div`,{className:`py-2 border-t border-border min-h-[8rem] overflow-auto`,children:[(0,$.jsxs)(`div`,{className:G(U.compact,U.bodyMuted,`mb-2 font-mono`),children:[`ID: `,n.id]}),(0,$.jsxs)(`div`,{className:`mb-2`,children:[(0,$.jsx)(`div`,{className:G(U.compact,U.label,`text-muted-foreground mb-1`),children:`Input:`}),(0,$.jsx)(`pre`,{className:Xf({className:`border border-border`}),children:_(n.input)})]}),l&&(0,$.jsxs)(`div`,{className:`mb-2`,children:[(0,$.jsx)(`div`,{className:G(U.compact,U.label,`text-muted-foreground mb-1`),children:`Progress:`}),(0,$.jsxs)(`div`,{className:G(U.body,`bg-green-50 dark:bg-green-900/20 p-2 rounded border border-green-200 dark:border-green-800`),children:[(0,$.jsx)(`div`,{className:G(U.mono,`text-green-700 dark:text-green-300`),children:l.delta}),l.partial?.content?.[0]?.arguments&&typeof l.partial.content[0].arguments==`object`&&`content`in l.partial.content[0].arguments&&typeof l.partial.content[0].arguments.content==`string`&&(0,$.jsxs)(`div`,{className:G(U.mono,`mt-1 text-green-600 dark:text-green-400`),children:[`Building: `,l.partial.content[0].arguments.content.slice(-50),l.partial.content[0].arguments.content.length>50&&`...`]})]})]}),(0,$.jsxs)(`div`,{className:G(U.compact,`flex items-center gap-1.5 text-muted-foreground`),children:[(0,$.jsx)(lp,{state:f}),`Executing`,l&&` with progress`,`...`]})]}),t[56]=o,t[57]=f,t[58]=n.id,t[59]=n.input,t[60]=l,t[61]=te):te=t[61];let re;return t[62]!==ee||t[63]!==te||t[64]!==w?(re=(0,$.jsxs)(`div`,{className:w,children:[ee,te]}),t[62]=ee,t[63]=te,t[64]=w,t[65]=re):re=t[65],re}function Tv(e){return JSON.stringify(e,null,2)}function Ev(e){return!e}function Dv(e){if(!Array.isArray(e))return[];let t=[];for(let n of e){if(typeof n==`string`&&n.trim()){t.push({label:n,description:``});continue}if(!n||typeof n!=`object`)continue;let e=n;typeof e.label!=`string`||!e.label.trim()||t.push({label:e.label,description:typeof e.description==`string`?e.description:``})}return t}function Ov(e){if(!e||typeof e!=`object`)return null;let t=e;if(typeof t.question!=`string`||!t.question.trim())return null;let n=Dv(t.options);return{question:t.question,header:typeof t.header==`string`?t.header:void 0,options:n.length>0?n:void 0,multiple:typeof t.multiple==`boolean`?t.multiple:void 0}}function kv(e){if(Array.isArray(e.questions))return e.questions.map(e=>Ov(e)).filter(e=>e!==null);if(typeof e.question==`string`&&e.question.trim()){let t=Dv(e.options);return[{question:e.question,header:typeof e.context==`string`?e.context:void 0,options:t.length>0?t:void 0}]}return[]}function Av(e){let t=kv(e),n=t[0];return{questions:t,question:n?.question??``,options:n?.options?.map(e=>e.label),context:n?.header}}function jv(e){return{intention:typeof e.intention==`string`?e.intention:``,code:typeof e.code==`string`?e.code:``}}function Mv(e){let t=(0,Q.c)(6),{prompt:n,answeredText:r}=e,i=n.toolCallId??`long-running-confirmation`,a;return t[0]!==r||t[1]!==n.context||t[2]!==n.options||t[3]!==n.question||t[4]!==i?(a=(0,$.jsx)(Ch,{toolCallId:i,question:n.question,options:n.options,context:n.context,answeredText:r,answeredLabel:`You answered`}),t[0]=r,t[1]=n.context,t[2]=n.options,t[3]=n.question,t[4]=i,t[5]=a):a=t[5],a}function Nv(e){let t=(0,Q.c)(6),{prompt:n,projectId:r,resolvedDecision:i}=e,a;return t[0]!==r||t[1]!==n.command||t[2]!==n.toolCallId||t[3]!==n.wildcardOptions||t[4]!==i?(a=(0,$.jsx)(kh,{toolCallId:n.toolCallId,command:n.command,projectId:r,wildcardOptions:n.wildcardOptions,resolvedDecision:i}),t[0]=r,t[1]=n.command,t[2]=n.toolCallId,t[3]=n.wildcardOptions,t[4]=i,t[5]=a):a=t[5],a}function Pv(e){let t=(0,Q.c)(2),{prompt:n}=e,r;return t[0]===n?r=t[1]:(r=(0,$.jsx)(Ah,{...n}),t[0]=n,t[1]=r),r}function Fv(e){let t=(0,Q.c)(7),{prompt:n,projectId:r,resolvedDecision:i}=e,a;return t[0]!==r||t[1]!==n.hostname||t[2]!==n.toolCallId||t[3]!==n.url||t[4]!==n.wildcardOptions||t[5]!==i?(a=(0,$.jsx)(Mh,{toolCallId:n.toolCallId,hostname:n.hostname,url:n.url,projectId:r,wildcardOptions:n.wildcardOptions,resolvedDecision:i}),t[0]=r,t[1]=n.hostname,t[2]=n.toolCallId,t[3]=n.url,t[4]=n.wildcardOptions,t[5]=i,t[6]=a):a=t[6],a}function Iv(e,t){if(e.name!==`ask_user`)return null;let n=Av(e.input);return(0,$.jsx)(Ch,{toolCallId:e.id,questions:n.questions,answeredText:t,interactive:!1})}function Lv(e,t,n,r){if(e.name!==`run_js`&&e.name!==`run_web_worker`)return null;let i=jv(e.input);return(0,$.jsx)(dg,{toolCallId:e.id,intention:i.intention,code:i.code,resultContent:t,resultIsError:n,showActive:r===!0})}function Rv(e){let t=(0,Q.c)(14),{block:n,resultContent:r,resultIsError:i,observation:a,showActive:o}=e,s;t[0]===n.id?s=t[1]:(s=e=>e.toolCallProgress[n.id],t[0]=n.id,t[1]=s);let c=X(s),l;t[2]===c?l=t[3]:(l=c??{},t[2]=c,t[3]=l);let u;t[4]===l?u=t[5]:(u=dh(l),t[4]=l,t[5]=u);let d=u,f=o&&r===void 0,p=n.name===`bash`||n.name===`read`||n.name===`file_read`||n.name===`get_observation`||nm(n.name,n.input);if(f&&!p){let e;return t[6]===n?e=t[7]:(e=(0,$.jsx)(wv,{toolCall:n}),t[6]=n,t[7]=e),e}let m=f?d:r,h;return t[8]!==n||t[9]!==f||t[10]!==a||t[11]!==i||t[12]!==m?(h=(0,$.jsx)(Im,{inline:!0,block:n,resultContent:m,resultIsError:i,isActive:f,observation:a}),t[8]=n,t[9]=f,t[10]=a,t[11]=i,t[12]=m,t[13]=h):h=t[13],h}function zv(e){let t=(0,Q.c)(19),{block:n,showActive:r,resultContent:i,resultIsError:a,observation:o}=e,s;t[0]!==n||t[1]!==i?(s=Iv(n,i),t[0]=n,t[1]=i,t[2]=s):s=t[2];let c=s;if(c)return c;let l;t[3]!==n||t[4]!==i||t[5]!==a||t[6]!==r?(l=Lv(n,i,a,r),t[3]=n,t[4]=i,t[5]=a,t[6]=r,t[7]=l):l=t[7];let u=l;if(u)return u;if(r){let e;return t[8]!==n||t[9]!==o||t[10]!==i||t[11]!==a||t[12]!==r?(e=(0,$.jsx)(Rv,{block:n,resultContent:i,resultIsError:a,observation:o,showActive:r}),t[8]=n,t[9]=o,t[10]=i,t[11]=a,t[12]=r,t[13]=e):e=t[13],e}let d;return t[14]!==n||t[15]!==o||t[16]!==i||t[17]!==a?(d=(0,$.jsx)(Im,{inline:!0,block:n,resultContent:i,resultIsError:a,isActive:!1,observation:o}),t[14]=n,t[15]=o,t[16]=i,t[17]=a,t[18]=d):d=t[18],d}function Bv(e){let t=(0,Q.c)(4),{block:n,sequence:r,params:i}=e,a;return t[0]!==n||t[1]!==i||t[2]!==r?(a=(0,$.jsx)(rh,{inline:!0,sequence:r,block:n,params:i}),t[0]=n,t[1]=i,t[2]=r,t[3]=a):a=t[3],a}function Vv(e){let t=(0,Q.c)(43),{items:n,allBlocks:r,completedToolCallIds:i,isStreaming:a,showActiveSummary:o,hideActiveLabel:s,initialExpanded:c,renderItem:l}=e,u=o===void 0?a:o,d=s===void 0?!1:s,[f,p]=(0,Z.useState)(c===void 0?!1:c),m;t[0]!==r||t[1]!==i||t[2]!==n?(m=Cs(n,r,i),t[0]=r,t[1]=i,t[2]=n,t[3]=m):m=t[3];let h=m,g;t[4]!==u||t[5]!==h?(g=Qs(h,{showActive:u}),t[4]=u,t[5]=h,t[6]=g):g=t[6];let _=g,v=_.activeLabel!==null,y=v&&!d,b;t[7]===f?b=t[8]:(b=()=>p(!f),t[7]=f,t[8]=b);let x;t[9]===f?x=t[10]:(x=f?(0,$.jsx)(tn,{className:`h-3 w-3 text-muted-foreground shrink-0`}):(0,$.jsx)(sn,{className:`h-3 w-3 text-muted-foreground shrink-0`}),t[9]=f,t[10]=x);let S;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(S=G(U.caption,`min-w-0 truncate`),t[11]=S):S=t[11];let C;t[12]!==_.lineStats||t[13]!==h?(C=_.lineStats?(0,$.jsxs)(`span`,{className:`text-muted-foreground/70`,children:[` · `,(0,$.jsxs)(`span`,{className:`text-brand`,children:[`+`,h.linesAdded]}),` `,(0,$.jsxs)(`span`,{className:`text-red-600 dark:text-red-400`,children:[`−`,h.linesRemoved]})]}):null,t[12]=_.lineStats,t[13]=h,t[14]=C):C=t[14];let w;t[15]!==_.text||t[16]!==C?(w=(0,$.jsxs)(`span`,{className:S,children:[_.text,C]}),t[15]=_.text,t[16]=C,t[17]=w):w=t[17];let T;t[18]!==_.activeLabel||t[19]!==y?(T=y?(0,$.jsx)(`span`,{className:G(U.caption,`shrink-0`),children:_.activeLabel}):null,t[18]=_.activeLabel,t[19]=y,t[20]=T):T=t[20];let E;t[21]===v?E=t[22]:(E=v?(0,$.jsx)(lp,{state:`working`,className:`shrink-0`}):null,t[21]=v,t[22]=E);let D;t[23]!==f||t[24]!==w||t[25]!==T||t[26]!==E||t[27]!==b||t[28]!==x?(D=(0,$.jsxs)(`button`,{type:`button`,className:`flex items-center gap-1.5 cursor-pointer select-none text-left w-full min-w-0`,onClick:b,"aria-expanded":f,children:[x,w,T,E]}),t[23]=f,t[24]=w,t[25]=T,t[26]=E,t[27]=b,t[28]=x,t[29]=D):D=t[29];let O=f?`flex`:`hidden`,k;t[30]===O?k=t[31]:(k=G(`ml-5 flex-col gap-0.5`,O),t[30]=O,t[31]=k);let A;if(t[32]!==n||t[33]!==l){let e;t[35]===l?e=t[36]:(e=e=>l(e),t[35]=l,t[36]=e),A=n.map(e),t[32]=n,t[33]=l,t[34]=A}else A=t[34];let j;t[37]!==k||t[38]!==A?(j=(0,$.jsx)(`div`,{className:k,children:A}),t[37]=k,t[38]=A,t[39]=j):j=t[39];let M;return t[40]!==D||t[41]!==j?(M=(0,$.jsxs)(`div`,{className:`flex flex-col gap-0.5`,children:[D,j]}),t[40]=D,t[41]=j,t[42]=M):M=t[42],M}function Hv(e){let t=e.length-1;for(;t>=0;){let n=e[t];if(!n||ms(n)||n.type!==`text`)break;--t}return t+1}function Uv(e,t){return t?e.some(e=>!hs(e)&&Us(e)&&e.id===t):!1}function Wv(e,t=0){if(hs(e))return`thinking-${t}-${e.label??`none`}`;switch(e.type){case`tool_use`:return`tool-${e.id}`;case`tool-result`:return`result-${e.toolCallId}`;case`long_running_confirmation`:return`lrc-${e.prompt.toolCallId??uh(e.prompt.question)}`;case`shell_permission`:return`shell-${e.prompt.toolCallId}`;case`seatbelt_escalation`:return`seatbelt-${e.prompt.toolCallId}`;case`web_fetch_permission`:return`fetch-${e.prompt.toolCallId}`;case`text`:return`text-${uh(e.text.slice(0,128))}`}}function Gv(e,t,n){let{lookupBlocks:r,toolResultMap:i,isStreaming:a,threadId:o,projectId:s,messageIndex:c,message:l,activeLocalToolCallId:u,completedToolCallIds:d,completedToolCallResults:f}=n;if(Us(e)&&e.name===`todo`)return null;if(ws(e)){if(e.toolName===`todo`)return(0,$.jsx)(Bv,{sequence:c,block:e,params:r.find(t=>Us(t)&&t.id===e.toolCallId)?.input},t);if(e.toolName===`ask_user`)return null}switch(e.type){case`long_running_confirmation`:return(0,$.jsx)(Mv,{prompt:e.prompt,answeredText:bh(r,e.prompt.toolCallId)},t);case`shell_permission`:return(0,$.jsx)(Nv,{prompt:e.prompt,projectId:s,resolvedDecision:vh(r,e.prompt.toolCallId,`shell`)},t);case`seatbelt_escalation`:return(0,$.jsx)(Pv,{prompt:e.prompt},t);case`web_fetch_permission`:return(0,$.jsx)(Fv,{prompt:e.prompt,projectId:s,resolvedDecision:vh(r,e.prompt.toolCallId,`web_fetch`)},t);case`text`:return(0,$.jsx)(cd,{content:e.text,threadId:o},t);case`tool_use`:{let n=f?.get(e.id),o=i.get(e.id),s=fh(o)??n?.resultContent,c=mh(o)||(n?.resultIsError??!1),p=ph(o)??n?.observation;return(0,$.jsx)(zv,{block:e,showActive:!(d?.has(e.id)===!0||n!==void 0)&&yh(r,l,e.id,u,a),resultContent:s,resultIsError:c,observation:p},t)}case`tool-result`:return(0,$.jsx)(Bv,{block:e},t)}}function Kv({blocks:e,isStreaming:t=!1,threadId:n,projectId:r,messageIndex:i=0,message:a,finalProseText:o=null}){let s=X(e=>{if(!e.selectedThreadId)return null;let t=e.threadToolSessions[e.selectedThreadId];if(t)return t.toolCallId;let n=e.devServerToolSession;return!n||n.threadId!==e.selectedThreadId?null:n.toolCallId}),c=(0,Z.useMemo)(()=>Ws(e),[e]),l=(0,Z.useMemo)(()=>hh(c),[c]),u=t||!!a?.isThinking,d=(0,Z.useRef)(new Set),f=(0,Z.useRef)(new Map);for(let e of c)if(ws(e)){d.current.add(e.toolCallId);let t=fh(e),n=mh(e),r=ph(e);t!==void 0&&f.current.set(e.toolCallId,{resultContent:t,resultIsError:n,observation:r})}let p=d.current,m=f.current,h=(0,Z.useMemo)(()=>ec(ps(c,u)),[c,u]),g=0;function _(e){let o=hs(e)?Wv(e,++g):Wv(e);return hs(e)?(0,$.jsx)(lh,{text:e.text,label:e.label,isStreaming:e.isCurrentlyStreaming,threadId:n},o):Gv(e,o,{lookupBlocks:c,toolResultMap:l,isStreaming:t,threadId:n,projectId:r,messageIndex:i,message:a,activeLocalToolCallId:s,completedToolCallIds:p,completedToolCallResults:m})}function v(e,n){return ms(e)?(0,$.jsx)(Vv,{items:e.items,allBlocks:c,completedToolCallIds:p,isStreaming:u,showActiveSummary:u||Uv(e.items,s),hideActiveLabel:t,renderItem:_},`tool-group-${i}-${n}`):_(e)}let y=o?Hv(h):h.length,b=h.slice(0,y),x=h.slice(y),S=!!o&&x.length>0&&x.every(e=>!ms(e)&&e.type===`text`);return(0,$.jsx)(om,{value:Kv,children:(0,$.jsxs)($.Fragment,{children:[b.map((e,t)=>v(e,t)),S&&o?(0,$.jsx)(zd,{text:o,children:(0,$.jsx)(`div`,{className:`flex flex-col gap-0.5 min-w-0`,children:x.map((e,t)=>v(e,y+t))})}):x.map((e,t)=>v(e,y+t))]})})}function qv(e){let t=(0,Q.c)(20),{content:n,children:r}=e,[i,a]=(0,Z.useState)(!1),[o,s]=(0,Z.useState)(!1),c=(0,Z.useRef)(null),l;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(l=()=>{a(!1)},t[0]=l):l=t[0];let u;t[1]===n?u=t[2]:(u=[n],t[1]=n,t[2]=u),(0,Z.useEffect)(l,u);let d;t[3]===i?d=t[4]:(d=()=>{let e=c.current;if(!e||i)return;let t=function(){e&&s(e.scrollHeight>e.clientHeight+1)};t();let n=new ResizeObserver(t);return n.observe(e),()=>n.disconnect()},t[3]=i,t[4]=d);let f;t[5]!==n||t[6]!==i?(f=[n,i],t[5]=n,t[6]=i,t[7]=f):f=t[7],(0,Z.useEffect)(d,f);let p=o||i,m;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(m=function(){a(Jv)},t[8]=m):m=t[8];let h=m,g=!i&&`line-clamp-10`,_;t[9]===g?_=t[10]:(_=G(g),t[9]=g,t[10]=_);let v;t[11]!==r||t[12]!==_?(v=(0,$.jsx)(`div`,{ref:c,className:_,children:r}),t[11]=r,t[12]=_,t[13]=v):v=t[13];let y;t[14]!==i||t[15]!==p?(y=p?(0,$.jsx)(`button`,{type:`button`,className:G(U.caption,`self-start text-background/70 underline-offset-2 hover:text-background hover:underline`),"aria-expanded":i,onClick:h,children:i?`Show less`:`Show more`}):null,t[14]=i,t[15]=p,t[16]=y):y=t[16];let b;return t[17]!==v||t[18]!==y?(b=(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-col gap-2`,children:[v,y]}),t[17]=v,t[18]=y,t[19]=b):b=t[19],b}function Jv(e){return!e}var Yv=(0,Z.memo)(function(e){let t=(0,Q.c)(21),{message:n,threadId:r,messageIndex:i,structuredContent:a,thinkingBlocks:o,finalProseText:s}=e;if(n.isThinking){if(o?.length){let e;return t[0]!==n||t[1]!==i||t[2]!==o||t[3]!==r?(e=(0,$.jsx)(Kv,{blocks:o,threadId:r,message:n,messageIndex:i}),t[0]=n,t[1]=i,t[2]=o,t[3]=r,t[4]=e):e=t[4],e}let e;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(e=G(U.caption,`whitespace-pre-wrap`),t[5]=e):e=t[5];let a;return t[6]!==n.content||t[7]!==r?(a=(0,$.jsx)(`div`,{className:e,children:(0,$.jsx)(cd,{content:n.content,threadId:r})}),t[6]=n.content,t[7]=r,t[8]=a):a=t[8],a}if(a){let e;return t[9]!==s||t[10]!==n||t[11]!==i||t[12]!==a||t[13]!==r?(e=(0,$.jsx)(Kv,{blocks:a,threadId:r,messageIndex:i,message:n,finalProseText:s}),t[9]=s,t[10]=n,t[11]=i,t[12]=a,t[13]=r,t[14]=e):e=t[14],e}let c;t[15]!==n.content||t[16]!==r?(c=(0,$.jsx)(cd,{content:n.content,threadId:r,className:U.conversationBody}),t[15]=n.content,t[16]=r,t[17]=c):c=t[17];let l=c;if(s){let e;return t[18]!==s||t[19]!==l?(e=(0,$.jsx)(zd,{text:s,children:l}),t[18]=s,t[19]=l,t[20]=e):e=t[20],e}return l}),Xv=(0,Z.memo)(function(e){let t=(0,Q.c)(51),{message:n,threadId:r,messageIndex:i,showCheckpointRestore:a,checkpointRestoreTooltip:o,showFinalProseCopy:s}=e,c=i===void 0?0:i,l=a===void 0?!1:a,u=s===void 0?!1:s,d=n.sender===`user`,f;t[0]!==d||t[1]!==n.content?(f=d?null:Hs(n.content),t[0]=d,t[1]=n.content,t[2]=f):f=t[2];let p=f,m;t[3]!==n.content||t[4]!==n.isThinking?(m=n.isThinking?Ss(n.content):null,t[3]=n.content,t[4]=n.isThinking,t[5]=m):m=t[5];let h=m,g;t[6]!==d||t[7]!==n.content||t[8]!==n.isThinking||t[9]!==u?(g=u&&!d&&!n.isThinking?Gs(n.content):null,t[6]=d,t[7]=n.content,t[8]=n.isThinking,t[9]=u,t[10]=g):g=t[10];let _=g,v;t[11]!==_||t[12]!==n||t[13]!==c||t[14]!==p||t[15]!==h||t[16]!==r?(v=(0,$.jsx)(Yv,{message:n,threadId:r,messageIndex:c,structuredContent:p,thinkingBlocks:h,finalProseText:_}),t[11]=_,t[12]=n,t[13]=c,t[14]=p,t[15]=h,t[16]=r,t[17]=v):v=t[17];let y=v,b=d&&`flex justify-end`,x;t[18]===b?x=t[19]:(x=G(`group px-4 py-4`,b),t[18]=b,t[19]=x);let S=d&&`items-end`,C;t[20]===S?C=t[21]:(C=G(`flex flex-col gap-1 min-w-0 max-w-full`,S),t[20]=S,t[21]=C);let w;t[22]!==o||t[23]!==n||t[24]!==l||t[25]!==r?(w=(0,$.jsx)(Rd,{message:n,threadId:r,showCheckpointRestore:l,checkpointRestoreTooltip:o}),t[22]=o,t[23]=n,t[24]=l,t[25]=r,t[26]=w):w=t[26];let T=d&&`rounded-xl px-4 py-3 bg-foreground text-background`,E;t[27]===T?E=t[28]:(E=G(`flex flex-col gap-0.5 min-w-0`,U.conversationBody,T),t[27]=T,t[28]=E);let D;t[29]!==y||t[30]!==d||t[31]!==n.content?(D=d?(0,$.jsx)(qv,{content:n.content,children:y}):y,t[29]=y,t[30]=d,t[31]=n.content,t[32]=D):D=t[32];let O;t[33]!==E||t[34]!==D?(O=(0,$.jsx)(`div`,{className:E,children:D}),t[33]=E,t[34]=D,t[35]=O):O=t[35];let k;t[36]!==n.generatedImageData||t[37]!==n.generatedImageUrl||t[38]!==r?(k=(n.generatedImageUrl||n.generatedImageData)&&(0,$.jsx)(Bd,{src:n.generatedImageData?`data:image/png;base64,${n.generatedImageData}`:n.generatedImageUrl,threadId:r}),t[36]=n.generatedImageData,t[37]=n.generatedImageUrl,t[38]=r,t[39]=k):k=t[39];let A;t[40]===n.attachments?A=t[41]:(A=n.attachments&&n.attachments.length>0&&(0,$.jsx)(pd,{attachments:n.attachments}),t[40]=n.attachments,t[41]=A);let j;t[42]!==C||t[43]!==w||t[44]!==O||t[45]!==k||t[46]!==A?(j=(0,$.jsxs)(`div`,{className:C,children:[w,O,k,A]}),t[42]=C,t[43]=w,t[44]=O,t[45]=k,t[46]=A,t[47]=j):j=t[47];let M;return t[48]!==j||t[49]!==x?(M=(0,$.jsx)(`div`,{className:x,children:j}),t[48]=j,t[49]=x,t[50]=M):M=t[50],M});function Zv(e){let t=e.length;for(let n of e)if(`chunks`in n){t+=n.chunks.length;for(let e of n.chunks)t+=e.length}return t}function Qv(e){let t=(0,Q.c)(2);Zv(e);let n;if(t[0]!==e){n=[];for(let t of e){if(t.type===`long_running_confirmation`){n.push({type:`long_running_confirmation`,prompt:t.prompt});continue}if(t.type===`shell_permission`){n.push({type:`shell_permission`,prompt:t.prompt});continue}if(t.type===`seatbelt_escalation`){n.push({type:`seatbelt_escalation`,prompt:t.prompt});continue}if(t.type===`web_fetch_permission`){n.push({type:`web_fetch_permission`,prompt:t.prompt});continue}n.push(...Rs(t))}t[0]=e,t[1]=n}else n=t[1];return n}function $v(e){let t=(0,Q.c)(25),{segments:n,model:r,mode:i,threadId:a,projectId:o,isCreatingProject:s,isProcessingThread:c,totalMessages:l,showProcessingLine:u}=e,d=l===void 0?0:l,f=u===void 0?!1:u,p=Qv(n),m=f?`pb-0`:`pb-4`,h;t[0]===m?h=t[1]:(h=G(`group px-4 pt-4`,m),t[0]=m,t[1]=h);let g;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(g=G(U.compact,`font-medium text-foreground`),t[2]=g):g=t[2];let _;t[3]===i?_=t[4]:(_=qe(i),t[3]=i,t[4]=_);let v;t[5]===_?v=t[6]:(v=(0,$.jsx)(`span`,{className:g,children:_}),t[5]=_,t[6]=v);let y;t[7]===r?y=t[8]:(y=r&&(0,$.jsxs)(`span`,{className:G(U.compact,`flex items-center gap-1 text-muted-foreground opacity-0 group-hover:opacity-100 transition-opacity`),children:[(0,$.jsx)(Kt,{className:`h-2.5 w-2.5`}),Ko(r)]}),t[7]=r,t[8]=y);let b;t[9]!==v||t[10]!==y?(b=(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[v,y]}),t[9]=v,t[10]=y,t[11]=b):b=t[11];let x;t[12]!==s||t[13]!==c||t[14]!==p||t[15]!==o||t[16]!==a||t[17]!==d?(x=p.length>0?(0,$.jsx)(`div`,{className:G(`flex flex-col gap-0.5 min-w-0`,U.conversationBody),children:(0,$.jsx)(Kv,{blocks:p,isStreaming:!0,threadId:a,projectId:o,messageIndex:d})}):s||c?(0,$.jsx)(`div`,{className:`min-w-0`,children:(0,$.jsx)(lh,{isStreaming:!0})}):null,t[12]=s,t[13]=c,t[14]=p,t[15]=o,t[16]=a,t[17]=d,t[18]=x):x=t[18];let S;t[19]!==x||t[20]!==b?(S=(0,$.jsxs)(`div`,{className:`flex flex-col gap-1 min-w-0`,children:[b,x]}),t[19]=x,t[20]=b,t[21]=S):S=t[21];let C;return t[22]!==S||t[23]!==h?(C=(0,$.jsx)(`div`,{className:h,children:S}),t[22]=S,t[23]=h,t[24]=C):C=t[24],C}var ey=3e3;function ty(e){let t=e?Nt.filter(t=>t!==e):Nt;return t[Math.floor(Math.random()*t.length)]}function ny(e){let t=(0,Q.c)(3),[n,r]=(0,Z.useState)(O),i=(0,Z.useRef)(O),a,o;return t[0]===e?(a=t[1],o=t[2]):(a=()=>{if(!e){r(O),i.current=O;return}let t=setInterval(()=>{let e=i.current===`Processing...`?ty():ty(i.current);i.current=e,r(e)},ey);return()=>clearInterval(t)},o=[e],t[0]=e,t[1]=a,t[2]=o),(0,Z.useEffect)(a,o),n}function ry(e){let t=(0,Q.c)(9),{active:n,label:r,className:i}=e,a=n===void 0?!0:n,o=ny(a&&!r),s=a?`animate-shimmer`:void 0,c;t[0]===s?c=t[1]:(c=G(U.caption,s),t[0]=s,t[1]=c);let l=r??o,u;t[2]!==c||t[3]!==l?(u=(0,$.jsx)(`span`,{className:c,children:l}),t[2]=c,t[3]=l,t[4]=u):u=t[4];let d;return t[5]!==a||t[6]!==i||t[7]!==u?(d=(0,$.jsx)(`div`,{className:i,"aria-live":`polite`,"aria-busy":a,children:u}),t[5]=a,t[6]=i,t[7]=u,t[8]=d):d=t[8],d}function iy(e){let t=(0,Q.c)(34),{projects:n,onSelectProject:r,onCreateThread:i,onConnectRepo:a,onNewApp:s,onOpenFolder:c}=e,l;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,$.jsx)(`img`,{src:`/tarsk-color.svg`,alt:`Tarsk`,className:`h-16 w-16 rounded-lg`}),t[0]=l):l=t[0];let u;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(u=(0,$.jsx)(`h1`,{className:G(U.pageTitle,`tracking-tight text-balance`),children:`Let's build it!`}),t[1]=u):u=t[1];let d=n.length===0?`Start or connect your first project`:`Select a project to start coding`,f;t[2]===d?f=t[3]:(f=(0,$.jsxs)(`div`,{className:`flex flex-col items-center gap-3`,children:[l,(0,$.jsxs)(`div`,{className:`text-center`,children:[u,(0,$.jsx)(`p`,{className:`mt-1 ${U.pageSubtitle}`,children:d})]})]}),t[2]=d,t[3]=f);let p;if(t[4]!==i||t[5]!==r||t[6]!==n){let e;t[8]!==i||t[9]!==r?(e=e=>(0,$.jsxs)(`button`,{type:`button`,className:`flex w-56 flex-col gap-2 rounded-xl border border-border bg-background p-4 text-left shadow-sm transition-colors hover:bg-muted`,onClick:()=>{e.threads.length===0?i(e.projectId):r(e.projectId,e.threads[0].threadId)},children:[(0,$.jsx)(o,{className:`h-5 w-5 text-muted-foreground`}),(0,$.jsx)(`span`,{className:`${U.body} text-foreground leading-snug font-medium`,children:e.name}),(0,$.jsxs)(`span`,{className:U.caption,children:[e.threads.length,` thread`,e.threads.length===1?``:`s`]})]},e.projectId),t[8]=i,t[9]=r,t[10]=e):e=t[10],p=n.map(e),t[4]=i,t[5]=r,t[6]=n,t[7]=p}else p=t[7];let m,h,g;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(m=(0,$.jsx)(M,{className:`h-5 w-5 text-muted-foreground`}),h=(0,$.jsx)(`span`,{className:`${U.body} text-foreground leading-snug font-medium`,children:`Connect a repo`}),g=(0,$.jsx)(`span`,{className:U.caption,children:`Clone an existing repository`}),t[11]=m,t[12]=h,t[13]=g):(m=t[11],h=t[12],g=t[13]);let _;t[14]===a?_=t[15]:(_=(0,$.jsxs)(`button`,{type:`button`,className:`flex w-56 flex-col gap-2 rounded-xl border border-border bg-background p-4 text-left shadow-sm transition-colors hover:bg-muted`,onClick:a,children:[m,h,g]}),t[14]=a,t[15]=_);let v,y,b;t[16]===Symbol.for(`react.memo_cache_sentinel`)?(v=(0,$.jsx)(Et,{className:`h-5 w-5 text-muted-foreground`}),y=(0,$.jsx)(`span`,{className:`${U.body} text-foreground leading-snug font-medium`,children:`New App`}),b=(0,$.jsx)(`span`,{className:U.caption,children:`Create a new project from template`}),t[16]=v,t[17]=y,t[18]=b):(v=t[16],y=t[17],b=t[18]);let x;t[19]===s?x=t[20]:(x=(0,$.jsxs)(`button`,{type:`button`,className:`flex w-56 flex-col gap-2 rounded-xl border border-border bg-background p-4 text-left shadow-sm transition-colors hover:bg-muted`,onClick:s,children:[v,y,b]}),t[19]=s,t[20]=x);let S,C,w;t[21]===Symbol.for(`react.memo_cache_sentinel`)?(S=(0,$.jsx)(fn,{className:`h-5 w-5 text-muted-foreground`}),C=(0,$.jsx)(`span`,{className:`${U.body} text-foreground leading-snug font-medium`,children:`Open Folder`}),w=(0,$.jsx)(`span`,{className:U.caption,children:`Use an existing local folder`}),t[21]=S,t[22]=C,t[23]=w):(S=t[21],C=t[22],w=t[23]);let T;t[24]===c?T=t[25]:(T=(0,$.jsxs)(`button`,{type:`button`,className:`flex w-56 flex-col gap-2 rounded-xl border border-border bg-background p-4 text-left shadow-sm transition-colors hover:bg-muted`,onClick:c,children:[S,C,w]}),t[24]=c,t[25]=T);let E;t[26]!==x||t[27]!==T||t[28]!==p||t[29]!==_?(E=(0,$.jsxs)(`div`,{className:`flex flex-wrap justify-center gap-3`,children:[p,_,x,T]}),t[26]=x,t[27]=T,t[28]=p,t[29]=_,t[30]=E):E=t[30];let D;return t[31]!==E||t[32]!==f?(D=(0,$.jsxs)(`div`,{className:`mx-auto flex max-w-3xl flex-1 flex-col items-center gap-8 overflow-y-auto px-4 py-8`,children:[f,E]}),t[31]=E,t[32]=f,t[33]=D):D=t[33],D}var ay=`md:mr-4`,oy=`cubic-bezier(0.22, 0.61, 0.36, 1)`,sy=`animate-in fade-in duration-200 ease-out`,cy=`[data-composer-surface]`;function ly(e){e.style.height=`auto`,e.style.height=`${Math.min(e.scrollHeight,160)}px`}function uy(e){return e?`w-full min-w-0 px-4`:`mx-auto max-w-3xl w-full min-w-0`}function dy(e){return G(e?`relative w-full min-w-0 pl-4`:`relative mx-auto w-full max-w-3xl min-w-0`,ay)}function fy(e){return`relative w-full min-w-0`}function py(e,t,n=!1,r=!1){return t?`absolute inset-x-0 bottom-0 mx-auto w-full max-w-3xl max-md:px-2 px-4 pb-4 pointer-events-none`:r?`relative w-full min-w-0`:n?`relative mx-auto w-full max-w-3xl px-0`:e?`relative w-full min-w-0 pb-2 md:pb-4`:`relative w-full max-w-3xl max-md:px-0 pb-2 md:pl-4 md:pb-4 md:-ml-[6px]`}function my(e,t=!1,n=!0){return e?`relative flex min-w-0 flex-1 flex-col bg-background pointer-events-auto`:G(`relative flex min-w-0 flex-1 flex-col rounded-[24px] border focus-within:ring-2 focus-within:ring-ring/40 pointer-events-auto`,t?`border-border/50 bg-background/80 shadow-lg backdrop-blur-sm`:G(`border-border bg-background`,n&&`shadow-2xl`))}var hy={onboarding:{status:()=>[`onboarding`,`status`]},app:{update:()=>[`app`,`update`]},models:{enabled:e=>[`models`,`enabled`,e],enabledImage:e=>[`models`,`enabled-image`,e]},userTasks:e=>[`user-tasks`,e],conversations:{recent:()=>[`conversations`,`recent`]}};function gy(e){let t=(0,Q.c)(10),n;t[0]===e?n=t[1]:(n=hy.models.enabled(e),t[0]=e,t[1]=n);let r;t[2]===n?r=t[3]:(r={queryKey:n,queryFn:Ki,placeholderData:cr},t[2]=n,t[3]=r);let i=vr(r),a;bb0:{if(!i.data){let e;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(e=[],t[4]=e):e=t[4],a=e;break bb0}let e;t[5]===i.data?e=t[6]:(e=Object.values(i.data).flat(),t[5]=i.data,t[6]=e),a=e}let o=a,s;return t[7]!==o||t[8]!==i?(s={...i,models:o},t[7]=o,t[8]=i,t[9]=s):s=t[9],s}function _y(e,t){let n=(0,Q.c)(11),r;n[0]===e?r=n[1]:(r=hy.models.enabledImage(e),n[0]=e,n[1]=r);let i;n[2]!==t||n[3]!==r?(i={queryKey:r,queryFn:Hi,placeholderData:cr,enabled:t},n[2]=t,n[3]=r,n[4]=i):i=n[4];let a=vr(i),o;bb0:{if(!a.data){let e;n[5]===Symbol.for(`react.memo_cache_sentinel`)?(e=[],n[5]=e):e=n[5],o=e;break bb0}let e;n[6]===a.data?e=n[7]:(e=Object.values(a.data).flat(),n[6]=a.data,n[7]=e),o=e}let s=o,c;return n[8]!==s||n[9]!==a?(c={...a,models:s},n[8]=s,n[9]=a,n[10]=c):c=n[10],c}var vy=Ut(`chat.input-state`);function yy(e,t){return t===`primary`?e:`${e}:${t}`}function by({availableModels:e,paneModel:t,storedThreadModel:n,currentThreadModelId:r,currentThreadModelProvider:i,projectLastSelectedModelId:a,projectLastSelectedModelProvider:o}){if(e.length===0)return{model:null,persistFallback:!1,pinPane:!1};let s=e[0];function c(t,n){return!t||!n?null:e.find(e=>e.id===t&&e.provider===n)??null}if(t){let e=c(t.id,t.provider);return{model:e??s,persistFallback:!1,pinPane:!e}}let l=[{id:r,provider:i}];n&&l.push({id:n.id,provider:n.provider}),l.push({id:a,provider:o});for(let e of l){let t=c(e.id,e.provider);if(t)return{model:t,persistFallback:!1,pinPane:!1}}return{model:s,persistFallback:l.length>0,pinPane:!1}}function xy(e,t){if(t.length===0)return null;if(e){let n=t.find(t=>t.id===e.id&&t.provider===e.provider);if(n)return n}return t[0]}function Sy(){let e=(0,Q.c)(15),t=Ks(),{paneId:n}=Sv(),r=X(jy),i=X(Ay),a=X(ky),o=X(Oy),s=X(Dy),c=X(Ey),l=X(Ty),u=X(wy),d=X(Cy),f;e[0]===n?f=e[1]:(f=e=>As(e.threadStreamingStates,e.selectedThreadId,n).isStreaming,e[0]=n,e[1]=f);let p=X(f),m;return e[2]!==c||e[3]!==l||e[4]!==t||e[5]!==u||e[6]!==d||e[7]!==p||e[8]!==n||e[9]!==s||e[10]!==o||e[11]!==a||e[12]!==i||e[13]!==r?(m={dispatch:t,paneId:n,selectedThreadId:r,selectedProjectId:i,projects:a,projectModelSelections:o,paneModelSelections:s,chatInputDrafts:c,configUpdatedAt:l,focusChatInput:u,focusedPane:d,isStreaming:p},e[2]=c,e[3]=l,e[4]=t,e[5]=u,e[6]=d,e[7]=p,e[8]=n,e[9]=s,e[10]=o,e[11]=a,e[12]=i,e[13]=r,e[14]=m):m=e[14],m}function Cy(e){return e.focusedPane}function wy(e){return e.focusChatInput}function Ty(e){return e.configUpdatedAt}function Ey(e){return e.chatInputDrafts}function Dy(e){return e.paneModelSelections}function Oy(e){return e.projectModelSelections}function ky(e){return e.projects}function Ay(e){return e.selectedProjectId}function jy(e){return e.selectedThreadId}function My(e){let t=(0,Q.c)(30),{initialValue:n,selectedThreadId:r,paneId:i,chatInputDrafts:a,dispatch:o}=e,s;t[0]!==a||t[1]!==n||t[2]!==i||t[3]!==r?(s=()=>{if(r){let e=yy(r,i);if(a[e])return a[e]}return n??``},t[0]=a,t[1]=n,t[2]=i,t[3]=r,t[4]=s):s=t[4];let[c,l]=(0,Z.useState)(s),[u,d]=(0,Z.useState)(-1),[f,p]=(0,Z.useState)(``),[m,h]=(0,Z.useState)(0),g=(0,Z.useRef)(c),_,v;t[5]===c?(_=t[6],v=t[7]):(_=()=>{g.current=c},v=[c],t[5]=c,t[6]=_,t[7]=v),(0,Z.useEffect)(_,v);let y=(0,Z.useRef)(a),b,x;t[8]===a?(b=t[9],x=t[10]):(b=()=>{y.current=a},x=[a],t[8]=a,t[9]=b,t[10]=x),(0,Z.useEffect)(b,x);let S=(0,Z.useRef)(!0),C,w;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(C=()=>(S.current=!0,()=>{S.current=!1}),w=[],t[11]=C,t[12]=w):(C=t[11],w=t[12]),(0,Z.useEffect)(C,w);let T=r?a[yy(r,i)]??``:``,E;t[13]!==r||t[14]!==T?(E=()=>{r&&l(T)},t[13]=r,t[14]=T,t[15]=E):E=t[15];let D;t[16]!==i||t[17]!==r||t[18]!==T?(D=[r,T,i],t[16]=i,t[17]=r,t[18]=T,t[19]=D):D=t[19],(0,Z.useEffect)(E,D);let O,k;t[20]!==o||t[21]!==i||t[22]!==r?(O=()=>{let e=r,t=e?yy(e,i):null;return()=>{t&&g.current.trim()&&y.current[t]!==g.current&&o({type:Y.SetChatInputDraft,threadId:t,draft:g.current})}},k=[r,i,o],t[20]=o,t[21]=i,t[22]=r,t[23]=O,t[24]=k):(O=t[23],k=t[24]),(0,Z.useEffect)(O,k);let A;return t[25]!==m||t[26]!==f||t[27]!==u||t[28]!==c?(A={message:c,setMessage:l,historyIndex:u,setHistoryIndex:d,draftMessage:f,setDraftMessage:p,cursorPosition:m,setCursorPosition:h,messageRef:g,chatInputDraftsRef:y,mountedRef:S},t[25]=m,t[26]=f,t[27]=u,t[28]=c,t[29]=A):A=t[29],A}function Ny({selectedProject:e,selectedProjectId:t}){let n=e?.defaultChatMode??`auto`,r=(0,Z.useRef)(rt(n)).current,[i,a]=(0,Z.useState)(r.planMode),[o,s]=(0,Z.useState)(r.ralphMode),[c,l]=(0,Z.useState)(r.orchestrateMode),[u,d]=(0,Z.useState)(r.autoMode),[f,p]=(0,Z.useState)(r.imageMode),m=(0,Z.useCallback)(function(e){let t=rt(e);a(t.planMode),p(t.imageMode),s(t.ralphMode),l(t.orchestrateMode),d(t.autoMode)},[]),h=(0,Z.useRef)(e?t:null);return(0,Z.useEffect)(()=>{!t||!e||h.current!==t&&(h.current=t,m(n))},[t,e,n,m]),{planMode:i,setPlanMode:a,ralphMode:o,setRalphMode:s,orchestrateMode:c,setOrchestrateMode:l,autoMode:u,setAutoMode:d,imageMode:f,setImageMode:p,applyChatMode:m,projectChatMode:n}}function Py({dispatch:e,paneId:t,selectedThreadId:n,selectedProjectId:r,model:i,shouldPersist:a,shouldPinPane:o,pendingModelPersistenceRef:s}){let c=n;if(!c||((o||a)&&e({type:Y.SetProjectModel,threadId:c,model:i,...o?{paneId:t}:{}}),!a))return;let l=`${c}:${i.provider??``}:${i.id}`;s.current!==l&&(s.current=l,vy.info(`Persisting model to thread`,{threadId:c,model:{id:i.id,provider:i.provider}}),Qa(c,{model:i.id,modelProvider:i.provider}).then(()=>{let e=r;e&&Fi(e,{lastSelectedModel:i.id,lastSelectedModelProvider:i.provider}).catch(e=>{vy.error(`Failed to save model to project`,{err:e})}),s.current===l&&(s.current=null),vy.info(`Model persisted successfully`)}).catch(e=>{s.current===l&&(s.current=null),vy.error(`Failed to save model to thread`,{err:e})}))}async function Fy({model:e,effort:t,dispatch:n,paneId:r,selectedThreadId:i,paneModelSelections:a,projectModelSelections:o,setAvailableModels:s,setSelectedModel:c,setAvailableImageModels:l,setSelectedImageModel:u}){if(!e.provider)return;try{await Eo(e.provider,e.id,{reasoningEffort:t})}catch(e){vy.error(`Failed to save model reasoning effort`,{err:e});return}function d(n){return n.id!==e.id||n.provider!==e.provider?n:{...n,settings:{...n.settings,reasoningEffort:t}}}s(e=>e.map(d)),c(e=>e&&d(e)),l(e=>e.map(d)),u(e=>e&&d(e));let f=i;if(f){let t=a[r],i=t??o[f];i&&i.id===e.id&&i.provider===e.provider&&n({type:Y.SetProjectModel,threadId:f,model:d(i),...t?{paneId:r}:{}})}}function Iy({allEnabledModels:e,enabledModelsFetched:t,selectedProjectId:n,projects:r,selectedThreadId:i,paneModelSelections:a,paneId:o,projectModelSelections:s,selectedModelIdRef:c,selectedModelProviderRef:l,setAvailableModels:u,setSelectedModel:d,selectModel:f}){let p=n?r.find(e=>e.projectId===n):void 0,m=p?.threads.find(e=>e.threadId===i),h=i?a[o]:void 0,g=i?s[i]:void 0;if(e.length===0){t&&(u([]),d(null));return}u(e);let _=by({availableModels:e,paneModel:h,storedThreadModel:g,currentThreadModelId:m?.model,currentThreadModelProvider:m?.modelProvider,projectLastSelectedModelId:p?.lastSelectedModel,projectLastSelectedModelProvider:p?.lastSelectedModelProvider}),v=_.model;if(!v)return;let y=c.current===v.id&&l.current===v.provider;if(_.pinPane||_.persistFallback){f(v,{persist:_.persistFallback,pinPane:_.pinPane});return}y||d(v)}function Ly(e){let t=(0,Q.c)(47),{dispatch:n,paneId:r,selectedThreadId:i,selectedProjectId:a,projects:o,projectModelSelections:s,paneModelSelections:c,configUpdatedAt:l,imageMode:u}=e,{models:d,isFetched:f}=gy(l),{models:p,isFetched:m}=_y(l,u),h;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(h=[],t[0]=h):h=t[0];let[g,_]=(0,Z.useState)(h),v;t[1]!==r||t[2]!==c||t[3]!==s||t[4]!==i?(v=()=>(i?c[r]??s[i]:void 0)??null,t[1]=r,t[2]=c,t[3]=s,t[4]=i,t[5]=v):v=t[5];let[y,b]=(0,Z.useState)(v),x=(0,Z.useRef)(y?.id??``),S=(0,Z.useRef)(y?.provider??``),C=(0,Z.useRef)(null),w;t[6]!==y?.id||t[7]!==y?.provider?(w=()=>{x.current=y?.id??``,S.current=y?.provider??``},t[6]=y?.id,t[7]=y?.provider,t[8]=w):w=t[8];let T=y?.id,E=y?.provider,D;t[9]!==T||t[10]!==E?(D=[T,E],t[9]=T,t[10]=E,t[11]=D):D=t[11],(0,Z.useEffect)(w,D);let O;t[12]!==n||t[13]!==r||t[14]!==a||t[15]!==i?(O=(e,t)=>{b(e),Py({dispatch:n,paneId:r,selectedThreadId:i,selectedProjectId:a,model:e,shouldPersist:t?.persist!==!1,shouldPinPane:t?.pinPane??!0,pendingModelPersistenceRef:C})},t[12]=n,t[13]=r,t[14]=a,t[15]=i,t[16]=O):O=t[16];let k=O,A;t[17]===Symbol.for(`react.memo_cache_sentinel`)?(A=[],t[17]=A):A=t[17];let[j,M]=(0,Z.useState)(A),[N,P]=(0,Z.useState)(null),F;t[18]!==n||t[19]!==r||t[20]!==c||t[21]!==s||t[22]!==i?(F=async function(e,t){await Fy({model:e,effort:t,dispatch:n,paneId:r,selectedThreadId:i,paneModelSelections:c,projectModelSelections:s,setAvailableModels:_,setSelectedModel:b,setAvailableImageModels:M,setSelectedImageModel:P})},t[18]=n,t[19]=r,t[20]=c,t[21]=s,t[22]=i,t[23]=F):F=t[23];let I=F,L,R;t[24]!==d||t[25]!==f||t[26]!==r||t[27]!==c||t[28]!==s||t[29]!==o||t[30]!==k||t[31]!==a||t[32]!==i?(L=()=>{Iy({allEnabledModels:d,enabledModelsFetched:f,selectedProjectId:a,projects:o,selectedThreadId:i,paneModelSelections:c,paneId:r,projectModelSelections:s,selectedModelIdRef:x,selectedModelProviderRef:S,setAvailableModels:_,setSelectedModel:b,selectModel:k})},R=[i,a,o,s,r,c,d,f,k],t[24]=d,t[25]=f,t[26]=r,t[27]=c,t[28]=s,t[29]=o,t[30]=k,t[31]=a,t[32]=i,t[33]=L,t[34]=R):(L=t[33],R=t[34]),(0,Z.useEffect)(L,R);let z,B;t[35]!==p||t[36]!==m||t[37]!==u?(z=()=>{!u||!m||(M(p),P(e=>xy(e,p)))},B=[u,m,p],t[35]=p,t[36]=m,t[37]=u,t[38]=z,t[39]=B):(z=t[38],B=t[39]),(0,Z.useEffect)(z,B);let V;return t[40]!==j||t[41]!==g||t[42]!==k||t[43]!==N||t[44]!==y||t[45]!==I?(V={availableModels:g,setAvailableModels:_,selectedModel:y,setSelectedModel:k,updateModelReasoningEffort:I,selectedModelIdRef:x,availableImageModels:j,setAvailableImageModels:M,selectedImageModel:N,setSelectedImageModel:P},t[40]=j,t[41]=g,t[42]=k,t[43]=N,t[44]=y,t[45]=I,t[46]=V):V=t[46],V}function Ry(){let e=(0,Q.c)(3),t;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=[],e[0]=t):t=e[0];let[n,r]=(0,Z.useState)(t),i;return e[1]===n?i=e[2]:(i={attachments:n,setAttachments:r},e[1]=n,e[2]=i),i}function zy(e){let t=(0,Q.c)(22),{selectedThreadId:n}=e,r;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=[],t[0]=r):r=t[0];let[i,a]=(0,Z.useState)(r),[o,s]=(0,Z.useState)(!1),[c,l]=(0,Z.useState)(``),[u,d]=(0,Z.useState)(0),f;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(f=[],t[1]=f):f=t[1];let[p,m]=(0,Z.useState)(f),h;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(h=[],t[2]=h):h=t[2];let[g,_]=(0,Z.useState)(h),v;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(v=[],t[3]=v):v=t[3];let[y,b]=(0,Z.useState)(v),[x,S]=(0,Z.useState)(!1),[C,w]=(0,Z.useState)(!1),[T,E]=(0,Z.useState)(``),D,O;t[4]===n?(D=t[5],O=t[6]):(D=()=>{n&&Xo(n).then(e=>{let{commands:t,skills:n,bundledSkills:r}=e;vy.debug(`Loaded slash commands and skills`,{commands:t,skills:n,bundledSkills:r}),m(t),_(n),b(r)}).catch(Vy)},O=[n],t[4]=n,t[5]=D,t[6]=O),(0,Z.useEffect)(D,O);let k=(0,Z.useRef)(!1),A,j;t[7]!==n||t[8]!==C?(A=()=>{C&&!k.current&&n&&Xo(n).then(e=>{let{commands:t,skills:n,bundledSkills:r}=e;m(t),_(n),b(r)}).catch(By),k.current=C},j=[C,n],t[7]=n,t[8]=C,t[9]=A,t[10]=j):(A=t[9],j=t[10]),(0,Z.useEffect)(A,j);let M;return t[11]!==i||t[12]!==x||t[13]!==y||t[14]!==T||t[15]!==u||t[16]!==C||t[17]!==o||t[18]!==g||t[19]!==p||t[20]!==c?(M={allFiles:i,setAllFiles:a,showSuggestions:o,setShowSuggestions:s,suggestionQuery:c,setSuggestionQuery:l,selectedIndex:u,setSelectedIndex:d,slashCommands:p,setSlashCommands:m,skills:g,setSkills:_,bundledSkills:y,setBundledSkills:b,bundledSkillMode:x,setBundledSkillMode:S,showCommandSuggestions:C,setShowCommandSuggestions:w,commandQuery:T,setCommandQuery:E},t[11]=i,t[12]=x,t[13]=y,t[14]=T,t[15]=u,t[16]=C,t[17]=o,t[18]=g,t[19]=p,t[20]=c,t[21]=M):M=t[21],M}function By(e){return vy.error(`Failed to refresh slash commands and skills:`,e)}function Vy(e){return vy.error(`Failed to load slash commands and skills`,{err:e})}function Hy(){let e=(0,Q.c)(1),t=(0,Z.useRef)(null),n=(0,Z.useRef)(null),r=(0,Z.useRef)(null),i=(0,Z.useRef)(null),a;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(a={fileInputRef:t,textareaRef:n,suggestionsRef:r,commandSuggestionsRef:i},e[0]=a):a=e[0],a}function Uy(){let e=(0,Q.c)(7),[t,n]=(0,Z.useState)(!1),[r,i]=(0,Z.useState)(!1),a=(0,Z.useRef)(null),o=(0,Z.useRef)(null),s,c;e[0]!==t||e[1]!==r?(s=()=>{let e=e=>{a.current&&!a.current.contains(e.target)&&n(!1),o.current&&!o.current.contains(e.target)&&i(!1)};if(t||r)return document.addEventListener(`mousedown`,e),()=>{document.removeEventListener(`mousedown`,e)}},c=[t,r],e[0]=t,e[1]=r,e[2]=s,e[3]=c):(s=e[2],c=e[3]),(0,Z.useEffect)(s,c);let l;return e[4]!==t||e[5]!==r?(l={showModelMenu:t,setShowModelMenu:n,showPlusMenu:r,setShowPlusMenu:i,modelMenuRef:a,plusMenuRef:o},e[4]=t,e[5]=r,e[6]=l):l=e[6],l}function Wy(e){let t=(0,Q.c)(25),{selectedThreadId:n,paneId:r,dispatch:i,projectChatMode:a,applyChatMode:o,messageRef:s,chatInputDraftsRef:c,mountedRef:l,setMessage:u,setAllFiles:d,setShowSuggestions:f,setSlashCommands:p,setSkills:m,setBundledSkills:h,setBundledSkillMode:g,setShowCommandSuggestions:_}=e,[v,y]=(0,Z.useState)(n),b;t[0]!==o||t[1]!==c||t[2]!==i||t[3]!==s||t[4]!==l||t[5]!==r||t[6]!==v||t[7]!==a||t[8]!==n||t[9]!==d||t[10]!==g||t[11]!==h||t[12]!==u||t[13]!==_||t[14]!==f||t[15]!==m||t[16]!==p?(b=()=>{if(n!==v){v&&s.current.trim()&&c.current[yy(v,r)]!==s.current&&i({type:Y.SetChatInputDraft,threadId:yy(v,r),draft:s.current});let e=!1;return queueMicrotask(()=>{e||!l.current||(y(n),u(n?c.current[yy(n,r)]??``:``),d([]),f(!1),p([]),m([]),h([]),g(!1),_(!1),o(a))}),()=>{e=!0}}},t[0]=o,t[1]=c,t[2]=i,t[3]=s,t[4]=l,t[5]=r,t[6]=v,t[7]=a,t[8]=n,t[9]=d,t[10]=g,t[11]=h,t[12]=u,t[13]=_,t[14]=f,t[15]=m,t[16]=p,t[17]=b):b=t[17];let x;t[18]!==o||t[19]!==i||t[20]!==r||t[21]!==v||t[22]!==a||t[23]!==n?(x=[n,v,r,i,o,a],t[18]=o,t[19]=i,t[20]=r,t[21]=v,t[22]=a,t[23]=n,t[24]=x):x=t[24],(0,Z.useEffect)(b,x)}function Gy(e){let t=(0,Q.c)(19),{textareaRef:n,message:r,focusChatInput:i,selectedThreadId:a,isStreaming:o,paneId:s,focusedPane:c,dispatch:l}=e,u;t[0]===n?u=t[1]:(u=()=>{let e=n.current;e&&ly(e)},t[0]=n,t[1]=u);let d;t[2]===r?d=t[3]:(d=[r],t[2]=r,t[3]=d),(0,Z.useLayoutEffect)(u,d);let f;t[4]!==l||t[5]!==i||t[6]!==c||t[7]!==o||t[8]!==s||t[9]!==a||t[10]!==n?(f=()=>{if(!i||!a||o||s!==c)return;let e=n.current;e&&(e.focus(),l({type:Y.ClearFocusChatInput}))},t[4]=l,t[5]=i,t[6]=c,t[7]=o,t[8]=s,t[9]=a,t[10]=n,t[11]=f):f=t[11];let p;t[12]!==l||t[13]!==i||t[14]!==c||t[15]!==o||t[16]!==s||t[17]!==a?(p=[i,a,o,s,c,l],t[12]=l,t[13]=i,t[14]=c,t[15]=o,t[16]=s,t[17]=a,t[18]=p):p=t[18],(0,Z.useEffect)(f,p)}function Ky(e){let t=(0,Q.c)(118),n;t[0]===e?n=t[1]:(n=e===void 0?{}:e,t[0]=e,t[1]=n);let{initialValue:r}=n,{dispatch:i,paneId:a,selectedThreadId:o,selectedProjectId:s,projects:c,projectModelSelections:l,paneModelSelections:u,chatInputDrafts:d,configUpdatedAt:f,focusChatInput:p,focusedPane:m,isStreaming:h}=Sy(),g;if(t[2]!==c||t[3]!==s){let e;t[5]===s?e=t[6]:(e=e=>e.projectId===s,t[5]=s,t[6]=e),g=c.find(e),t[2]=c,t[3]=s,t[4]=g}else g=t[4];let _=g,v;t[7]!==d||t[8]!==i||t[9]!==r||t[10]!==a||t[11]!==o?(v={initialValue:r,selectedThreadId:o,paneId:a,chatInputDrafts:d,dispatch:i},t[7]=d,t[8]=i,t[9]=r,t[10]=a,t[11]=o,t[12]=v):v=t[12];let y=My(v),b;t[13]!==_||t[14]!==s?(b={selectedProject:_,selectedProjectId:s},t[13]=_,t[14]=s,t[15]=b):b=t[15];let x=Ny(b),S;t[16]!==f||t[17]!==i||t[18]!==x.imageMode||t[19]!==a||t[20]!==u||t[21]!==l||t[22]!==c||t[23]!==s||t[24]!==o?(S={dispatch:i,paneId:a,selectedThreadId:o,selectedProjectId:s,projects:c,projectModelSelections:l,paneModelSelections:u,configUpdatedAt:f,imageMode:x.imageMode},t[16]=f,t[17]=i,t[18]=x.imageMode,t[19]=a,t[20]=u,t[21]=l,t[22]=c,t[23]=s,t[24]=o,t[25]=S):S=t[25];let C=Ly(S),{attachments:w,setAttachments:T}=Ry(),E;t[26]===o?E=t[27]:(E={selectedThreadId:o},t[26]=o,t[27]=E);let D=zy(E),O=Hy(),k=Uy(),A;t[28]!==D.setAllFiles||t[29]!==D.setBundledSkillMode||t[30]!==D.setBundledSkills||t[31]!==D.setShowCommandSuggestions||t[32]!==D.setShowSuggestions||t[33]!==D.setSkills||t[34]!==D.setSlashCommands||t[35]!==i||t[36]!==x.applyChatMode||t[37]!==x.projectChatMode||t[38]!==a||t[39]!==o||t[40]!==y.chatInputDraftsRef||t[41]!==y.messageRef||t[42]!==y.mountedRef||t[43]!==y.setMessage?(A={selectedThreadId:o,paneId:a,dispatch:i,projectChatMode:x.projectChatMode,applyChatMode:x.applyChatMode,messageRef:y.messageRef,chatInputDraftsRef:y.chatInputDraftsRef,mountedRef:y.mountedRef,setMessage:y.setMessage,setAllFiles:D.setAllFiles,setShowSuggestions:D.setShowSuggestions,setSlashCommands:D.setSlashCommands,setSkills:D.setSkills,setBundledSkills:D.setBundledSkills,setBundledSkillMode:D.setBundledSkillMode,setShowCommandSuggestions:D.setShowCommandSuggestions},t[28]=D.setAllFiles,t[29]=D.setBundledSkillMode,t[30]=D.setBundledSkills,t[31]=D.setShowCommandSuggestions,t[32]=D.setShowSuggestions,t[33]=D.setSkills,t[34]=D.setSlashCommands,t[35]=i,t[36]=x.applyChatMode,t[37]=x.projectChatMode,t[38]=a,t[39]=o,t[40]=y.chatInputDraftsRef,t[41]=y.messageRef,t[42]=y.mountedRef,t[43]=y.setMessage,t[44]=A):A=t[44],Wy(A);let j;t[45]!==i||t[46]!==p||t[47]!==m||t[48]!==h||t[49]!==a||t[50]!==O.textareaRef||t[51]!==o||t[52]!==y.message?(j={textareaRef:O.textareaRef,message:y.message,focusChatInput:p,selectedThreadId:o,isStreaming:h,paneId:a,focusedPane:m,dispatch:i},t[45]=i,t[46]=p,t[47]=m,t[48]=h,t[49]=a,t[50]=O.textareaRef,t[51]=o,t[52]=y.message,t[53]=j):j=t[53],Gy(j);let M;return t[54]!==w||t[55]!==D.allFiles||t[56]!==D.bundledSkillMode||t[57]!==D.bundledSkills||t[58]!==D.commandQuery||t[59]!==D.selectedIndex||t[60]!==D.setAllFiles||t[61]!==D.setBundledSkillMode||t[62]!==D.setBundledSkills||t[63]!==D.setCommandQuery||t[64]!==D.setSelectedIndex||t[65]!==D.setShowCommandSuggestions||t[66]!==D.setShowSuggestions||t[67]!==D.setSkills||t[68]!==D.setSlashCommands||t[69]!==D.setSuggestionQuery||t[70]!==D.showCommandSuggestions||t[71]!==D.showSuggestions||t[72]!==D.skills||t[73]!==D.slashCommands||t[74]!==D.suggestionQuery||t[75]!==i||t[76]!==k.modelMenuRef||t[77]!==k.plusMenuRef||t[78]!==k.setShowModelMenu||t[79]!==k.setShowPlusMenu||t[80]!==k.showModelMenu||t[81]!==k.showPlusMenu||t[82]!==x.autoMode||t[83]!==x.imageMode||t[84]!==x.orchestrateMode||t[85]!==x.planMode||t[86]!==x.ralphMode||t[87]!==x.setAutoMode||t[88]!==x.setImageMode||t[89]!==x.setOrchestrateMode||t[90]!==x.setPlanMode||t[91]!==x.setRalphMode||t[92]!==C.availableImageModels||t[93]!==C.availableModels||t[94]!==C.selectedImageModel||t[95]!==C.selectedModel||t[96]!==C.selectedModelIdRef||t[97]!==C.setAvailableImageModels||t[98]!==C.setAvailableModels||t[99]!==C.setSelectedImageModel||t[100]!==C.setSelectedModel||t[101]!==C.updateModelReasoningEffort||t[102]!==O.commandSuggestionsRef||t[103]!==O.fileInputRef||t[104]!==O.suggestionsRef||t[105]!==O.textareaRef||t[106]!==o||t[107]!==T||t[108]!==y.cursorPosition||t[109]!==y.draftMessage||t[110]!==y.historyIndex||t[111]!==y.message||t[112]!==y.messageRef||t[113]!==y.setCursorPosition||t[114]!==y.setDraftMessage||t[115]!==y.setHistoryIndex||t[116]!==y.setMessage?(M={message:y.message,setMessage:y.setMessage,historyIndex:y.historyIndex,setHistoryIndex:y.setHistoryIndex,draftMessage:y.draftMessage,setDraftMessage:y.setDraftMessage,cursorPosition:y.cursorPosition,setCursorPosition:y.setCursorPosition,availableModels:C.availableModels,setAvailableModels:C.setAvailableModels,selectedModel:C.selectedModel,setSelectedModel:C.setSelectedModel,updateModelReasoningEffort:C.updateModelReasoningEffort,selectedModelIdRef:C.selectedModelIdRef,showModelMenu:k.showModelMenu,setShowModelMenu:k.setShowModelMenu,showPlusMenu:k.showPlusMenu,setShowPlusMenu:k.setShowPlusMenu,attachments:w,setAttachments:T,planMode:x.planMode,setPlanMode:x.setPlanMode,ralphMode:x.ralphMode,setRalphMode:x.setRalphMode,orchestrateMode:x.orchestrateMode,setOrchestrateMode:x.setOrchestrateMode,autoMode:x.autoMode,setAutoMode:x.setAutoMode,imageMode:x.imageMode,setImageMode:x.setImageMode,availableImageModels:C.availableImageModels,setAvailableImageModels:C.setAvailableImageModels,selectedImageModel:C.selectedImageModel,setSelectedImageModel:C.setSelectedImageModel,allFiles:D.allFiles,setAllFiles:D.setAllFiles,showSuggestions:D.showSuggestions,setShowSuggestions:D.setShowSuggestions,suggestionQuery:D.suggestionQuery,setSuggestionQuery:D.setSuggestionQuery,selectedIndex:D.selectedIndex,setSelectedIndex:D.setSelectedIndex,slashCommands:D.slashCommands,setSlashCommands:D.setSlashCommands,skills:D.skills,setSkills:D.setSkills,bundledSkills:D.bundledSkills,setBundledSkills:D.setBundledSkills,bundledSkillMode:D.bundledSkillMode,setBundledSkillMode:D.setBundledSkillMode,showCommandSuggestions:D.showCommandSuggestions,setShowCommandSuggestions:D.setShowCommandSuggestions,commandQuery:D.commandQuery,setCommandQuery:D.setCommandQuery,messageRef:y.messageRef,fileInputRef:O.fileInputRef,textareaRef:O.textareaRef,modelMenuRef:k.modelMenuRef,plusMenuRef:k.plusMenuRef,suggestionsRef:O.suggestionsRef,commandSuggestionsRef:O.commandSuggestionsRef,selectedThreadId:o,dispatch:i},t[54]=w,t[55]=D.allFiles,t[56]=D.bundledSkillMode,t[57]=D.bundledSkills,t[58]=D.commandQuery,t[59]=D.selectedIndex,t[60]=D.setAllFiles,t[61]=D.setBundledSkillMode,t[62]=D.setBundledSkills,t[63]=D.setCommandQuery,t[64]=D.setSelectedIndex,t[65]=D.setShowCommandSuggestions,t[66]=D.setShowSuggestions,t[67]=D.setSkills,t[68]=D.setSlashCommands,t[69]=D.setSuggestionQuery,t[70]=D.showCommandSuggestions,t[71]=D.showSuggestions,t[72]=D.skills,t[73]=D.slashCommands,t[74]=D.suggestionQuery,t[75]=i,t[76]=k.modelMenuRef,t[77]=k.plusMenuRef,t[78]=k.setShowModelMenu,t[79]=k.setShowPlusMenu,t[80]=k.showModelMenu,t[81]=k.showPlusMenu,t[82]=x.autoMode,t[83]=x.imageMode,t[84]=x.orchestrateMode,t[85]=x.planMode,t[86]=x.ralphMode,t[87]=x.setAutoMode,t[88]=x.setImageMode,t[89]=x.setOrchestrateMode,t[90]=x.setPlanMode,t[91]=x.setRalphMode,t[92]=C.availableImageModels,t[93]=C.availableModels,t[94]=C.selectedImageModel,t[95]=C.selectedModel,t[96]=C.selectedModelIdRef,t[97]=C.setAvailableImageModels,t[98]=C.setAvailableModels,t[99]=C.setSelectedImageModel,t[100]=C.setSelectedModel,t[101]=C.updateModelReasoningEffort,t[102]=O.commandSuggestionsRef,t[103]=O.fileInputRef,t[104]=O.suggestionsRef,t[105]=O.textareaRef,t[106]=o,t[107]=T,t[108]=y.cursorPosition,t[109]=y.draftMessage,t[110]=y.historyIndex,t[111]=y.message,t[112]=y.messageRef,t[113]=y.setCursorPosition,t[114]=y.setDraftMessage,t[115]=y.setHistoryIndex,t[116]=y.setMessage,t[117]=M):M=t[117],M}var qy=e=>{Gr(e)},Jy=`pending-auto-route`;function Yy(e){return{messageId:Jy,sender:`user`,content:e.prompt,contentType:`text`,timestamp:e.startedAt,attachments:e.attachments}}function Xy(e){return{id:e.model,provider:e.provider}}function Zy(e,t,n){switch(e){case`cheap`:{let r=en(`cheap`,t);return{decision:e,model:r?Xy(r):n}}case`smart`:{let r=ue(t);return{decision:e,model:r?Xy(r):n}}default:return{decision:`default`,model:n}}}var Qy=`/orchestrate`,$y=/^\s*\/orchestrate(?:\s|$)/i;function eb(e){return $y.test(e)}function tb(e){if(eb(e))return e;let t=e.trimStart();return t?`${Qy} ${t}`:`${Qy} `}var nb=Ut(`app.use-chat-input-handlers.hook`);function rb(e,t){return t===`primary`?e:`${e}:${t}`}function ib({message:e,setMessage:t,userTasks:n,onMatchedUserTaskSend:r,attachments:i,selectedModel:a,onSend:o,isStreaming:s,selectedThreadId:c,isListening:l,stopListening:u,resetTranscript:d,dispatch:f,historyIndex:p,setHistoryIndex:m,draftMessage:h,setDraftMessage:g,cursorPosition:_,setCursorPosition:v,showSuggestions:y,setShowSuggestions:b,suggestionQuery:x,setSuggestionQuery:S,allFiles:C,setAllFiles:w,selectedIndex:T,setSelectedIndex:E,showCommandSuggestions:D,setShowCommandSuggestions:O,commandQuery:k,setCommandQuery:A,slashCommands:j,skills:M,bundledSkills:N,bundledSkillMode:P,setBundledSkillMode:F,messageRef:I,textareaRef:L,setAttachments:R,planMode:z,setPlanMode:B,ralphMode:V,setRalphMode:H,orchestrateMode:ee,setOrchestrateMode:te,autoMode:ne,setAutoMode:re,modelAliases:ie,onAutoRouteResolved:ae,ensureCanOrchestrate:oe,requestOrchestrateMode:se,imageMode:U,setImageMode:ce,selectedImageModel:le,hasConversationMessages:ue,isFirstUserPrompt:W}){let{paneId:de}=Sv(),{toast:fe}=ic(),[pe,me]=(0,Z.useState)(!1),he=(0,Z.useCallback)(()=>{t(``),I.current=``,R([]),m(-1),g(``),c&&f({type:Y.ClearChatInputDraft,threadId:rb(c,de)}),L.current&&(L.current.style.height=`auto`)},[f,I,de,c,R,g,m,t,L]),ge=(0,Z.useCallback)((e,n)=>{I.current.trim()||(t(e),I.current=e,R(n),L.current?.focus())},[I,R,t,L]),_e=(0,Z.useCallback)(async()=>{if(pe||!e.trim()&&i.length===0||!c)return;let t=U?le:a;if(!t)return;let p=e,m=i,h=ne&&!U&&W,g=h&&!s;function _(){!g||!c||f({type:Y.EndAutoRoute,threadId:c,paneId:de})}function v(){_(),g&&ge(p,m)}let y=null;if(h){me(!0),g&&(he(),f({type:Y.StartAutoRoute,route:{threadId:c,paneId:de,prompt:p,attachments:m,startedAt:new Date().toISOString()}}));try{y=Zy(await Ei(c,p),ie,t),ae?.(y)}catch(e){nb.warn(`Auto routing failed; returning the prompt to the composer`,{err:e}),v(),fe({title:`Couldn't pick a model`,description:`Send again, or choose a model yourself.`,variant:`destructive`});return}finally{me(!1)}}let b=y?.model??t;if(ee&&!oe()){v();return}let x=ee?tb(p):p;l&&(u(),d()),s?f({type:Y.EnqueueChatMessage,message:{id:`queued-${Date.now()}`,threadId:c,paneId:de,message:x,model:b.id,attachments:m,provider:b.provider,planMode:z,imageMode:U,ralphMode:V,orchestrateMode:ee}}):o(x,b.id,m,b.provider,z,U,V,ee),_(),qy(p),g||he();let S=n.find(e=>e.content===x);S&&r?.(S)},[e,i,a,o,l,u,d,s,f,c,de,he,ge,fe,z,V,ee,ne,ie,ae,oe,U,le,n,r,pe,W]),ve=(0,Z.useCallback)(n=>{let r=e.substring(0,_-x.length-1);t(`${r}${n} ${e.substring(_)}`),b(!1),setTimeout(()=>{if(L.current){L.current.focus();let e=r.length+n.length+1;L.current.setSelectionRange(e,e)}},0)},[e,_,x,t,b,L]),ye=(0,Z.useCallback)(n=>{let r=n.metadata.mode===`orchestrate`;if(r&&!se()){O(!1);return}let i=n.metadata.action===`compact`?`/compact`:n.metadata.action===`send-event`?`/send-event `:r?``:n.content,a=e.substring(0,_-k.length-1);t(`${a}${i}${e.substring(_)}`),O(!1),setTimeout(()=>{if(L.current){L.current.focus();let e=a.length+i.length;L.current.setSelectionRange(e,e)}},0),n.metadata.mode===`plan`?(B(!0),H(!1),te(!1),ce(!1),re(!1)):n.metadata.mode===`ralph`?(H(!0),B(!1),te(!1),ce(!1),re(!1)):n.metadata.mode===`orchestrate`&&(B(!1),H(!1),ce(!1),re(!1))},[e,_,k,t,O,B,H,te,ce,re,se,L]),be=(0,Z.useCallback)(e=>e.scope===`bundled`?`//${e.name}`:e.name.includes(` `)?`/"${e.name}"`:`/${e.name}`,[]),xe=(0,Z.useCallback)(n=>{let r=P?k.length+2:k.length+1,i=e.substring(0,_-r),a=e.substring(_),o=be(n);t(`${i}${o}${a}`),O(!1),F(!1),setTimeout(()=>{if(L.current){L.current.focus();let e=i.length+o.length;L.current.setSelectionRange(e,e)}},0)},[e,_,k,P,be,t,O,F,L]),Se=(0,Z.useCallback)(n=>{let r=`/${n.name}`,i=e.substring(0,_);t(`${i}${r}${e.substring(_)}`),O(!1),setTimeout(()=>{if(L.current){L.current.focus();let e=i.length+r.length;L.current.setSelectionRange(e,e)}},0)},[e,_,t,O,L]),Ce=(0,Z.useCallback)(n=>{let r=be(n),i=e.substring(0,_);t(`${i}${r}${e.substring(_)}`),O(!1),F(!1),setTimeout(()=>{if(L.current){L.current.focus();let e=i.length+r.length;L.current.setSelectionRange(e,e)}},0)},[e,_,be,t,O,F,L]),we=n=>{if(D){if(n.key===`ArrowDown`){n.preventDefault(),E((T+1)%ke.length);return}if(n.key===`ArrowUp`){n.preventDefault(),E((T-1+ke.length)%ke.length);return}if(n.key===`Enter`||n.key===`Tab`){n.preventDefault();let e=ke[T];e&&(e.type===`command`?ye(e.data):xe(e.data));return}if(n.key===`Escape`){O(!1);return}}if(y){let e=Ae.length>0;if(n.key===`ArrowDown`&&e){n.preventDefault(),E((T+1)%Ae.length);return}if(n.key===`ArrowUp`&&e){n.preventDefault(),E((T-1+Ae.length)%Ae.length);return}if(n.key===`Enter`||n.key===`Tab`){n.preventDefault(),Ae[T]&&ve(Ae[T]);return}if(n.key===`Escape`){b(!1);return}}if(n.key===`Enter`&&!n.shiftKey){n.preventDefault(),_e();return}let r=So();r.length!==0&&(n.key===`ArrowUp`?(n.preventDefault(),p===-1?(g(e),m(r.length-1),t(r[r.length-1])):p>0&&(m(p-1),t(r[p-1]))):n.key===`ArrowDown`&&(n.preventDefault(),p>0?(m(p-1),t(r[p-1])):p===0&&(m(-1),t(h))))},Te=e=>{let n=e.target.value,r=e.target.selectionStart;t(n),v(r);let i=n.substring(0,r),a=i.lastIndexOf(`//`);if(a!==-1){let t=a>0?i[a-1]:``;if(a===0||/\s/.test(t)){let t=i.substring(a+2);if(!t.includes(` `)){A(t),F(!0),O(!0),b(!1),E(0),ly(e.target);return}}}F(!1);let o=i.lastIndexOf(`/`),s=!1;if(o!==-1){let e=o>0?i[o-1]:``;if(o===0||/\s/.test(e)){let e=i.substring(o+1);e.includes(` `)?O(!1):(s=!0,A(e),O(!0),b(!1),E(0))}else O(!1)}else O(!1);if(!s){let e=i.lastIndexOf(`@`);if(e!==-1){let t=e>0?i[e-1]:``;if(e===0||/\s/.test(t)){let t=i.substring(e+1);t.includes(` `)?b(!1):(S(t),b(!0),E(0),C.length===0&&c&&$a(c).then(e=>{w(e)}).catch(e=>nb.error(`Failed to fetch files:`,e)))}else b(!1)}else b(!1)}ly(e.target)},Ee=k.toLowerCase(),De=j.filter(e=>e.metadata.action===`compact`&&!ue?!1:e.name.toLowerCase().includes(Ee)).sort((e,t)=>Number(!!t.isBuiltIn)-Number(!!e.isBuiltIn)),Oe=(P?N:M).filter(e=>e.name.toLowerCase().includes(Ee)),ke=[...P?[]:De.map(e=>({type:`command`,data:e})),...Oe.map(e=>({type:`skill`,data:e}))],Ae=y?C.filter(e=>e.toLowerCase().includes(x.toLowerCase())).slice(0,10):[];return{handleSend:_e,handleKeyDown:we,handleTextareaInput:Te,insertFileReference:ve,insertCommand:ye,insertSkill:xe,insertSkillAtCursor:Ce,insertSlashCommandAtCursor:Se,allSuggestions:ke,fileSuggestions:Ae,isRouting:pe}}var ab=1;function ob(e){let t=window.getComputedStyle(e);return(parseFloat(t.lineHeight)||parseFloat(t.fontSize)*1.5)+parseFloat(t.paddingTop)+parseFloat(t.paddingBottom)}function sb(e,t){let n=e.style.width,r=e.style.height,i=e.style.minHeight;e.style.width=`${t}px`,e.style.minHeight=`0px`,e.style.height=`auto`;let a=e.scrollHeight>ob(e)+ab;return e.style.width=n,e.style.minHeight=i,e.style.height=r,a}function cb({message:e,forceMultiline:t,textareaRef:n,rowRef:r}){let[i,a]=(0,Z.useState)(!0),o=(0,Z.useRef)(!0),s=(0,Z.useRef)(t),c=(0,Z.useRef)(null);return s.current=t,(0,Z.useLayoutEffect)(function(){o.current=i},[i]),(0,Z.useLayoutEffect)(function(){let e=n.current,t=r.current;if(!e||!t)return;let i=e,l=t;function u(){let e=o.current;if(e&&(c.current=l.clientWidth-i.offsetWidth),s.current){e&&(o.current=!1,a(!1)),ly(i);return}let t=c.current;if(t===null){ly(i);return}let n=!sb(i,Math.max(0,l.clientWidth-t));n!==e&&(o.current=n,a(n)),ly(i)}u();let d=null;function f(){d===null&&(d=requestAnimationFrame(function(){d=null,u()}))}let p=new ResizeObserver(f);return p.observe(l),function(){d!==null&&cancelAnimationFrame(d),p.disconnect()}},[e,t,r,n]),i&&!t}function lb(e){let t=(0,Q.c)(17),{visible:n,suggestions:r,skillReferencePrefix:i,query:a,selectedIndex:o,onSelectCommand:s,onSelectSkill:c,onMouseEnterSuggestion:l,containerRef:u}=e,d=i===void 0?`/`:i;if(!n)return null;let f=d===`//`,p,m;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(p=G(U.dropdownGroupHeading,`px-2 py-1.5 border-b border-border/50 mb-1 flex items-center gap-2`),m=(0,$.jsx)(le,{className:`h-3 w-3`}),t[0]=p,t[1]=m):(p=t[0],m=t[1]);let h=f?`Bundled Skills`:`Skills & Commands`,g=a&&` matching "${a}"`,_;t[2]!==h||t[3]!==g?(_=(0,$.jsxs)(`div`,{className:p,children:[m,h,g]}),t[2]=h,t[3]=g,t[4]=_):_=t[4];let v;t[5]!==f||t[6]!==l||t[7]!==s||t[8]!==c||t[9]!==o||t[10]!==d||t[11]!==r?(v=r.length>0?(()=>{let e=[],t=!1,n=!1;return r.forEach((r,i)=>{let a=i===o;if(r.type===`command`&&!n&&(n=!0,e.push((0,$.jsx)(`div`,{className:G(U.dropdownGroupHeading,`px-2 py-1.5 pt-2`),children:`Commands`},`group-commands`))),r.type===`skill`&&!t&&(t=!0,e.push((0,$.jsx)(`div`,{className:G(U.dropdownGroupHeading,`px-2 py-1.5 pt-2`),children:`Skills`},`group-skills`))),r.type===`command`){let t=r.data;e.push((0,$.jsxs)(`button`,{type:`button`,className:G(`flex w-full flex-col gap-1 rounded-lg px-3 py-2 text-left transition-colors`,a?`bg-accent text-accent-foreground`:`text-popover-foreground hover:bg-accent/50`),onClick:()=>s(t),onMouseEnter:()=>l(i),children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsxs)(`span`,{className:`font-medium`,children:[`/`,t.name]}),t.metadata.argumentHint&&(0,$.jsx)(`span`,{className:U.compact,children:t.metadata.argumentHint})]}),t.metadata.description&&(0,$.jsx)(`span`,{className:U.compact,children:t.metadata.description})]},`cmd-${t.name}`))}else{let t=r.data;e.push((0,$.jsxs)(`button`,{type:`button`,className:G(`flex w-full flex-col gap-1 rounded-lg px-3 py-2 text-left transition-colors`,a?`bg-accent text-accent-foreground`:`text-popover-foreground hover:bg-accent/50`),onClick:()=>c(t),onMouseEnter:()=>l(i),children:[(0,$.jsx)(`div`,{className:`flex items-center gap-2`,children:(0,$.jsxs)(`span`,{className:`font-medium`,children:[d,t.name]})}),(0,$.jsx)(`span`,{className:U.compact,children:t.description})]},`skill-${t.name}`))}}),e})():(0,$.jsxs)(`div`,{className:G(U.compact,`px-3 py-4 text-center text-muted-foreground`),children:[f?`No bundled skills found.`:`No commands or skills found.`,(0,$.jsx)(`br`,{}),(0,$.jsxs)(`span`,{className:U.compact,children:[f?(0,$.jsx)($.Fragment,{children:`Use bundled skills with syntax like `}):(0,$.jsx)($.Fragment,{children:`Create commands in `}),f?(0,$.jsx)(`code`,{className:`bg-muted px-1 rounded`,children:`//skill-name`}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`code`,{className:`bg-muted px-1 rounded`,children:`.agents/commands/`}),` or skills in`,` `,(0,$.jsx)(`code`,{className:`bg-muted px-1 rounded`,children:`.agents/skills/`})]})]})]}),t[5]=f,t[6]=l,t[7]=s,t[8]=c,t[9]=o,t[10]=d,t[11]=r,t[12]=v):v=t[12];let y;return t[13]!==u||t[14]!==_||t[15]!==v?(y=(0,$.jsxs)(`div`,{ref:u,className:`absolute bottom-full left-0 mb-2 w-full max-h-64 overflow-y-auto rounded-xl border border-border bg-popover p-1 shadow-lg z-50 animate-in fade-in slide-in-from-bottom-2`,children:[_,v]}),t[13]=u,t[14]=_,t[15]=v,t[16]=y):y=t[16],y}function ub(e){return e.startsWith(`image/`)}function db(e){return e.startsWith(`video/`)}function fb(e){return e.startsWith(`audio/`)}function pb(e){let t=(0,Q.c)(7),{attachments:n,onRemove:r}=e;if(n.length===0)return null;let i;if(t[0]!==n||t[1]!==r){let e;t[3]===r?e=t[4]:(e=(e,t)=>(0,$.jsx)(`div`,{className:G(U.compact,`group relative flex items-center gap-1 rounded-md bg-muted text-muted-foreground`),children:ub(e.mimeType)?(0,$.jsxs)(`div`,{className:`relative`,children:[(0,$.jsx)(`img`,{src:`data:${e.mimeType};base64,${e.content}`,alt:e.fileName,className:`h-16 w-16 rounded-md object-cover`}),(0,$.jsxs)(`button`,{type:`button`,onClick:()=>r(t),className:`absolute -right-1.5 -top-1.5 flex h-4 w-4 items-center justify-center rounded-full bg-foreground text-background opacity-0 transition-opacity group-hover:opacity-100`,children:[(0,$.jsx)(nt,{className:`h-2.5 w-2.5`}),(0,$.jsx)(`span`,{className:`sr-only`,children:`Remove attachment`})]})]}):db(e.mimeType)?(0,$.jsxs)(`span`,{className:`flex items-center gap-1 px-2 py-1`,children:[(0,$.jsx)(k,{className:`h-3 w-3`}),e.fileName,(0,$.jsxs)(`button`,{type:`button`,onClick:()=>r(t),className:`ml-1 hover:text-foreground`,children:[(0,$.jsx)(nt,{className:`h-3 w-3`}),(0,$.jsx)(`span`,{className:`sr-only`,children:`Remove attachment`})]})]}):fb(e.mimeType)?(0,$.jsxs)(`span`,{className:`flex items-center gap-1 px-2 py-1`,children:[(0,$.jsx)(Te,{className:`h-3 w-3`}),e.fileName,(0,$.jsxs)(`button`,{type:`button`,onClick:()=>r(t),className:`ml-1 hover:text-foreground`,children:[(0,$.jsx)(nt,{className:`h-3 w-3`}),(0,$.jsx)(`span`,{className:`sr-only`,children:`Remove attachment`})]})]}):(0,$.jsxs)(`span`,{className:`flex items-center gap-1 px-2 py-1`,children:[(0,$.jsx)(It,{className:`h-3 w-3`}),e.fileName,(0,$.jsxs)(`button`,{type:`button`,onClick:()=>r(t),className:`ml-1 hover:text-foreground`,children:[(0,$.jsx)(nt,{className:`h-3 w-3`}),(0,$.jsx)(`span`,{className:`sr-only`,children:`Remove attachment`})]})]})},t),t[3]=r,t[4]=e),i=n.map(e),t[0]=n,t[1]=r,t[2]=i}else i=t[2];let a;return t[5]===i?a=t[6]:(a=(0,$.jsx)(`div`,{className:`mb-2 flex flex-wrap gap-1.5`,children:i}),t[5]=i,t[6]=a),a}function mb(e){return e>=1e6?`${(e/1e6).toFixed(1)}M`:e>=1e3?`${(e/1e3).toFixed(1)}K`:e.toString()}function hb(e){return e>=1e6?`${Math.round(e/1e6)}M`:e>=1e3?`${Math.round(e/1e3)}K`:e.toString()}var gb=[{key:`systemPrompt`,label:`System prompt`,color:`#9CA3AF`},{key:`toolDefinitions`,label:`Tool definitions`,color:`#B088F0`},{key:`rules`,label:`Rules`,color:`#88D088`},{key:`skills`,label:`Skills`,color:`#D0A000`},{key:`subagentDefinitions`,label:`Subagent definitions`,color:`#2080D0`},{key:`conversation`,label:`Conversation`,color:`#E09030`}];function _b(e){return typeof e.effectiveWindow==`number`&&e.effectiveWindow>0?e.effectiveWindow:e.contextWindow}function vb(e,t=e.actualUsage){return t?{tokens:t.tokens,contextWindow:t.contextWindow,percent:Math.round(t.percent),isActual:!0}:{tokens:e.totalTokens,contextWindow:_b(e),percent:e.percentageFull,isActual:!1}}function yb({breakdown:e,actualUsage:t=e.actualUsage,threadId:n,conversationId:r,onClose:i,onToolDefinitionsOpen:a}){let{categories:o}=e,s=vb(e,t),c=s.tokens,l=s.percent,u=s.contextWindow,d=gb.filter(e=>o[e.key]>0),f=o.toolDefinitions>0&&n&&r;function p(){f&&a?.()}return(0,$.jsxs)(`div`,{className:`w-72 space-y-3`,children:[(0,$.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,$.jsx)(`h3`,{className:U.label,children:`Context`}),i&&(0,$.jsxs)(Hr,{variant:`ghost`,size:`icon-sm`,className:`text-muted-foreground hover:text-background`,onClick:i,children:[(0,$.jsx)(nt,{className:`h-4 w-4`}),(0,$.jsx)(`span`,{className:`sr-only`,children:`Close`})]})]}),(0,$.jsxs)(`div`,{className:G(U.compact,`flex items-center justify-between text-muted-foreground`),children:[(0,$.jsxs)(`span`,{children:[l,`% Full`]}),(0,$.jsxs)(`span`,{children:[s.isActual?``:`~`,mb(c),` / `,hb(u),` Tokens`]})]}),(0,$.jsx)(`div`,{className:`h-2 w-full overflow-hidden rounded-full bg-muted/60`,children:(0,$.jsx)(`div`,{className:`flex h-full w-full`,children:d.map(e=>{let t=o[e.key],n=u>0?t/u*100:0;return(0,$.jsx)(`div`,{style:{width:`${Math.max(n,t>0?.5:0)}%`,backgroundColor:e.color}},e.key)})})}),(0,$.jsx)(`div`,{className:`space-y-1.5`,children:gb.map(e=>{let t=e.key===`toolDefinitions`&&f;return(0,$.jsxs)(`div`,{role:t?`button`:void 0,tabIndex:t?0:void 0,onClick:t?p:void 0,onKeyDown:t?e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),p())}:void 0,className:G(U.compact,`flex items-center justify-between text-muted-foreground`,t&&`cursor-pointer rounded-sm hover:bg-muted/50 hover:text-foreground`),children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(`span`,{className:`h-2.5 w-2.5 shrink-0 rounded-sm`,style:{backgroundColor:e.color}}),(0,$.jsx)(`span`,{children:e.label}),t&&(0,$.jsx)(sn,{className:`h-3.5 w-3.5 shrink-0`})]}),(0,$.jsx)(`span`,{className:`tabular-nums`,children:mb(o[e.key])})]},e.key)})})]})}var bb=wn,xb=Wn,Sb=Kn,Cb=Ut(`app.tool-definitions-dialog.ui`);function wb(e){try{return JSON.stringify(e,null,2)}catch{return String(e)}}function Tb(e){let t=(0,Q.c)(23),{tool:n}=e,[r,i]=(0,Z.useState)(!1),a;t[0]===n.parameters?a=t[1]:(a=wb(n.parameters),t[0]=n.parameters,t[1]=a);let o=a,s=o!==`{}`&&o.length>0,c;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(c=G(U.sectionTitle,`min-w-0 break-all`),t[2]=c):c=t[2];let l;t[3]===n.name?l=t[4]:(l=(0,$.jsx)(`h3`,{className:c,children:n.name}),t[3]=n.name,t[4]=l);let u;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(u=G(U.compact,`shrink-0 tabular-nums text-muted-foreground`),t[5]=u):u=t[5];let d;t[6]===n.tokens?d=t[7]:(d=mb(n.tokens),t[6]=n.tokens,t[7]=d);let f;t[8]===d?f=t[9]:(f=(0,$.jsx)(`span`,{className:u,children:d}),t[8]=d,t[9]=f);let p;t[10]!==l||t[11]!==f?(p=(0,$.jsxs)(`div`,{className:`flex items-start justify-between gap-3`,children:[l,f]}),t[10]=l,t[11]=f,t[12]=p):p=t[12];let m;t[13]===n.description?m=t[14]:(m=n.description?(0,$.jsx)(`p`,{className:G(U.compact,`mt-2 whitespace-pre-wrap text-muted-foreground select-text`),children:n.description}):(0,$.jsx)(`p`,{className:G(U.compact,`mt-2 italic text-muted-foreground`),children:`No description`}),t[13]=n.description,t[14]=m);let h;t[15]!==s||t[16]!==r||t[17]!==o?(h=s&&(0,$.jsxs)(bb,{open:r,onOpenChange:i,className:`mt-2`,children:[(0,$.jsxs)(xb,{className:G(U.compact,`flex items-center gap-1 text-muted-foreground hover:text-foreground`),children:[(0,$.jsx)(tn,{className:G(`h-3.5 w-3.5 transition-transform`,r&&`rotate-180`)}),`Parameters`]}),(0,$.jsx)(Sb,{children:(0,$.jsx)(za,{className:`mt-2 h-48 rounded bg-muted`,children:(0,$.jsx)(`pre`,{className:G(U.compact,`p-2 font-mono whitespace-pre-wrap text-foreground`),children:o})})})]}),t[15]=s,t[16]=r,t[17]=o,t[18]=h):h=t[18];let g;return t[19]!==p||t[20]!==m||t[21]!==h?(g=(0,$.jsxs)(`div`,{className:`rounded-md border border-border/60 p-3`,children:[p,m,h]}),t[19]=p,t[20]=m,t[21]=h,t[22]=g):g=t[22],g}function Eb({open:e,onOpenChange:t,threadId:n,conversationId:r,expectedTotalTokens:i}){let[a,o]=(0,Z.useState)([]),[s,c]=(0,Z.useState)(i),[l,u]=(0,Z.useState)(!1),[d,f]=(0,Z.useState)(null);return(0,Z.useEffect)(()=>{if(!e||!n||!r)return;let t=!1;async function i(){u(!0),f(null);try{let e=await Ar(n,r);if(t)return;o(e.tools),c(e.totalTokens)}catch(e){Cb.error(`Failed to load tool definitions breakdown`,e),t||(f(`Failed to load tool definitions`),o([]))}finally{t||u(!1)}}return i(),()=>{t=!0}},[e,n,r]),(0,$.jsx)(Ni,{open:e,onOpenChange:t,children:(0,$.jsxs)(Ir,{className:`flex h-[80dvh] max-w-2xl flex-col gap-4 overflow-hidden`,children:[(0,$.jsx)(Dr,{className:`shrink-0`,children:(0,$.jsxs)(qa,{children:[`Tool definitions · `,mb(s),` tokens`]})}),(0,$.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col`,children:[l&&(0,$.jsx)(`p`,{className:G(U.compact,`text-muted-foreground`),children:`Loading tools...`}),d&&!l&&(0,$.jsx)(`p`,{className:G(U.compact,`text-destructive`),children:d}),!l&&!d&&(0,$.jsx)(za,{className:`min-h-0 flex-1`,children:(0,$.jsx)(`div`,{className:`space-y-2`,children:a.length===0?(0,$.jsx)(`p`,{className:G(U.compact,`text-muted-foreground`),children:`No tools loaded for this conversation.`}):a.map(e=>(0,$.jsx)(Tb,{tool:e},e.name))})})]})]})})}var Db=Ut(`app.token-usage-tooltip.ui`);function Ob({threadId:e,currentConversationId:t,initialBreakdown:n,actualUsage:r,refreshKey:i,children:a}){let[o,s]=(0,Z.useState)(n??null),[c,l]=(0,Z.useState)(!1),[u,d]=(0,Z.useState)(null),[f,p]=(0,Z.useState)(!1),[m,h]=(0,Z.useState)(!1),[g,_]=(0,Z.useState)(n?t:void 0),[v,y]=(0,Z.useState)(n?i:void 0);return(0,Z.useEffect)(()=>{n&&(s(n),_(t),y(i),d(null))},[n,t]),(0,Z.useEffect)(()=>{n||(t!==g||i!==v)&&(s(null),_(void 0),y(void 0),d(null))},[n,t,g,v,i]),(0,Z.useEffect)(()=>{if(!f||!e||!t||!(g!==t||v!==i))return;let n=!1;async function r(){let r=t;if(r){l(!0),d(null);try{let t=await ii(e,r,{forceRefresh:!0});if(n)return;s(t),_(r),y(i)}catch(e){if(Db.error(`[TokenUsageTooltip] Failed to load context data:`,e),n)return;s(e=>(e||d(`Failed to load context data`),e))}finally{n||l(!1)}}}return r(),()=>{n=!0}},[f,e,t,g,v,i]),!e||e===``?(0,$.jsx)($.Fragment,{children:a}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(jp,{open:f,onOpenChange:p,children:[(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(Mp,{asChild:!0,children:a})}),(0,$.jsx)(Fr,{side:`top`,className:`bg-popover text-popover-foreground`,children:`Show context usage`})]}),(0,$.jsxs)(Np,{side:`top`,align:`end`,className:`w-auto p-4`,children:[c&&(0,$.jsxs)(`div`,{className:G(U.compact,`flex w-72 items-center gap-2 text-muted-foreground`),children:[(0,$.jsx)(Zt,{className:`h-3 w-3 animate-pulse`}),(0,$.jsx)(`span`,{children:`Loading context...`})]}),u&&!c&&(0,$.jsxs)(`div`,{className:G(U.compact,`flex w-72 items-center gap-2 text-muted-foreground`),children:[(0,$.jsx)(Zt,{className:`h-3 w-3`}),(0,$.jsx)(`span`,{children:u})]}),!c&&!u&&o&&(0,$.jsx)(yb,{breakdown:o,actualUsage:r,threadId:e,conversationId:t,onClose:()=>p(!1),onToolDefinitionsOpen:()=>h(!0)})]})]}),t&&(0,$.jsx)(Eb,{open:m,onOpenChange:h,threadId:e,conversationId:t,expectedTotalTokens:o?.categories.toolDefinitions??0})]})}var kb=Ut(`app.token-usage-icon.ui`);function Ab(e){let t=e.filter(e=>e.sender===`agent`),n=t.length>0?t[t.length-1]:void 0,r=t.reduce((e,t)=>e+(t.metadata?.tokenCount??0),0);return[t.length,n?.messageId??``,n?.content.length??0,r].join(`:`)}function jb(e){return e>75?`text-red-500`:e>50?`text-orange-500`:`text-muted-foreground`}function Mb(e){let t=(0,Q.c)(8),{percentage:n}=e,r=2*Math.PI*7,i=r*(1-Math.min(n,100)/100),a;t[0]===n?a=t[1]:(a=jb(n),t[0]=n,t[1]=a);let o=`h-4 w-4 ${a}`,s;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,$.jsx)(`circle`,{className:`text-muted-foreground/25`,cx:`10`,cy:`10`,r:7,fill:`none`,stroke:`currentColor`,strokeWidth:`3`}),t[2]=s):s=t[2];let c;t[3]===i?c=t[4]:(c=(0,$.jsx)(`circle`,{cx:`10`,cy:`10`,r:7,fill:`none`,stroke:`currentColor`,strokeWidth:`3`,strokeLinecap:`round`,strokeDasharray:r,strokeDashoffset:i,transform:`rotate(-90 10 10)`}),t[3]=i,t[4]=c);let l;return t[5]!==o||t[6]!==c?(l=(0,$.jsxs)(`svg`,{className:o,viewBox:`0 0 20 20`,"aria-hidden":`true`,children:[s,c]}),t[5]=o,t[6]=c,t[7]=l):l=t[7],l}var Nb=500;function Pb(e){let t=(0,Q.c)(43),{threadId:n,conversationId:r,messages:i,isStreaming:a,liveContextUsage:o}=e,s;t[0]===i?s=t[1]:(s=i===void 0?[]:i,t[0]=i,t[1]=s);let c=s,l=a===void 0?!1:a,[u,d]=(0,Z.useState)(r),[f,p]=(0,Z.useState)(),m;t[2]===c?m=t[3]:(m=Ab(c),t[2]=c,t[3]=m);let h=m,[g,_]=(0,Z.useState)(h),v=(0,Z.useRef)(null),y=(0,Z.useRef)(n),b,x;t[4]===h?(b=t[5],x=t[6]):(b=()=>(v.current&&clearTimeout(v.current),v.current=setTimeout(()=>{_(h)},Nb),()=>{v.current&&clearTimeout(v.current)}),x=[h],t[4]=h,t[5]=b,t[6]=x),(0,Z.useEffect)(b,x);let S,C;t[7]===n?(S=t[8],C=t[9]):(S=()=>{y.current!==n&&(y.current&&(Ma.invalidate(`thread-${y.current}`),Ma.invalidatePattern(RegExp(`^context-breakdown-${y.current}-`))),y.current=n,d(void 0),p(void 0))},C=[n],t[7]=n,t[8]=S,t[9]=C),(0,Z.useEffect)(S,C);let w,T;t[10]===r?(w=t[11],T=t[12]):(T=()=>{if(r){d(r);return}},w=[r],t[10]=r,t[11]=w,t[12]=T),(0,Z.useEffect)(T,w);let E;t[13]!==r||t[14]!==n?(E=()=>{let e=!1;return(async function(){if(!n){d(void 0),p(void 0);return}if(r){d(r);return}try{let t=await Ur(n);if(e)return;d(t.currentConversationId)}catch(e){let t=e;kb.error(`Failed to fetch thread data:`,t)}})(),()=>{e=!0}},t[13]=r,t[14]=n,t[15]=E):E=t[15];let D;t[16]!==r||t[17]!==g||t[18]!==n?(D=[r,n,g],t[16]=r,t[17]=g,t[18]=n,t[19]=D):D=t[19],(0,Z.useEffect)(E,D);let O;t[20]!==l||t[21]!==c.length||t[22]!==u||t[23]!==n?(O=()=>{let e=!1;return(async function(){if(!l){if(!n||!u||c.length===0){p(void 0);return}try{let t=await ii(n,u,{forceRefresh:!0});if(e)return;p(t)}catch(e){let t=e;if(t instanceof Error&&t.message===`Conversation not found`){p(void 0);return}kb.error(`Failed to fetch context breakdown:`,t)}}})(),()=>{e=!0}},t[20]=l,t[21]=c.length,t[22]=u,t[23]=n,t[24]=O):O=t[24];let k;if(t[25]!==g||t[26]!==l||t[27]!==c.length||t[28]!==u||t[29]!==n?(k=[n,u,g,c.length,l],t[25]=g,t[26]=l,t[27]=c.length,t[28]=u,t[29]=n,t[30]=k):k=t[30],(0,Z.useEffect)(O,k),!n||n===``)return null;let A=o??f?.actualUsage,j=A?.percent??f?.percentageFull;if(!(typeof j==`number`&&j>0))return null;let M=String(g),N;t[31]===j?N=t[32]:(N=(0,$.jsx)(Mb,{percentage:j}),t[31]=j,t[32]=N);let P;t[33]===Symbol.for(`react.memo_cache_sentinel`)?(P=(0,$.jsx)(`span`,{className:`sr-only`,children:`Show context usage`}),t[33]=P):P=t[33];let F;t[34]===N?F=t[35]:(F=(0,$.jsxs)(Hr,{variant:`ghost`,size:`icon-sm`,className:`text-muted-foreground hover:text-background`,children:[N,P]}),t[34]=N,t[35]=F);let I;return t[36]!==A||t[37]!==f||t[38]!==u||t[39]!==M||t[40]!==F||t[41]!==n?(I=(0,$.jsx)(Ob,{threadId:n,currentConversationId:u,initialBreakdown:f,actualUsage:A,refreshKey:M,children:F}),t[36]=A,t[37]=f,t[38]=u,t[39]=M,t[40]=F,t[41]=n,t[42]=I):I=t[42],I}function Fb(e){return new Promise((t,n)=>{let r=new FileReader;r.onload=()=>{let n=r.result.split(`,`)[1];t({fileName:e.name,content:n,mimeType:e.type||`application/octet-stream`})},r.onerror=()=>{n(r.error??Error(`Failed to read file`))},r.readAsDataURL(e)})}async function Ib(e){return Promise.all(e.map(Fb))}function Lb(e,t){let n=e.target.files;if(!n||n.length===0)return;let r=Array.from(n);e.target.value=``,Ib(r).then(t)}function Rb(e,t){switch(e){case`archive`:return(0,$.jsx)(Ht,{className:t});case`audio`:return(0,$.jsx)(Pt,{className:t});case`code`:return(0,$.jsx)(oe,{className:t});case`config`:return(0,$.jsx)(Ne,{className:t});case`data`:return(0,$.jsx)(r,{className:t});case`document`:return(0,$.jsx)(he,{className:t});case`image`:return(0,$.jsx)(ke,{className:t});case`json`:return(0,$.jsx)(et,{className:t});case`presentation`:return(0,$.jsx)(Ee,{className:t});case`security`:return(0,$.jsx)(E,{className:t});case`spreadsheet`:return(0,$.jsx)(y,{className:t});case`text`:return(0,$.jsx)(xe,{className:t});case`video`:return(0,$.jsx)(b,{className:t});case`web`:return(0,$.jsx)(oe,{className:t});case`file`:return(0,$.jsx)(ve,{className:t})}}function zb({filename:e,className:t}){let n=`file`,r=`text-muted-foreground`;try{if(typeof ct==`function`&&e){let t=ct(e);n=t.name,r=t.className??r}}catch{}let i=G(`h-4 w-4 flex-shrink-0`,r,t);return Rb(n,i)}function Bb(e){let t=(0,Q.c)(17),{showSuggestions:n,fileSuggestions:r,suggestionQuery:i,selectedIndex:o,onSelectFile:s,onMouseEnterSuggestion:c,containerRef:l}=e;if(!n||r.length===0)return null;let u,d;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(u=G(U.dropdownGroupHeading,`px-2 py-1.5 border-b border-border/50 mb-1 flex items-center gap-2`),d=(0,$.jsx)(a,{className:`h-3 w-3`}),t[0]=u,t[1]=d):(u=t[0],d=t[1]);let f;t[2]===i?f=t[3]:(f=(0,$.jsxs)(`div`,{className:u,children:[d,`Files matching "`,i,`"`]}),t[2]=i,t[3]=f);let p;if(t[4]!==r||t[5]!==c||t[6]!==s||t[7]!==o){let e;t[9]!==c||t[10]!==s||t[11]!==o?(e=(e,t)=>{let n=e.split(`/`).pop()??e,r=t===o;return(0,$.jsxs)(`button`,{type:`button`,className:G(U.body,`flex w-full items-center gap-2 rounded-lg px-3 py-2 text-left transition-colors`,r?`bg-accent text-accent-foreground`:`text-popover-foreground hover:bg-accent/50`),onClick:()=>s(e),onMouseEnter:()=>c(t),children:[(0,$.jsx)(zb,{filename:n}),(0,$.jsxs)(`div`,{className:`flex flex-col overflow-hidden`,children:[(0,$.jsx)(`span`,{className:`truncate font-medium`,children:n}),(0,$.jsx)(`span`,{className:G(U.compact,`truncate text-muted-foreground opacity-70`),children:e})]})]},e)},t[9]=c,t[10]=s,t[11]=o,t[12]=e):e=t[12],p=r.map(e),t[4]=r,t[5]=c,t[6]=s,t[7]=o,t[8]=p}else p=t[8];let m;return t[13]!==l||t[14]!==f||t[15]!==p?(m=(0,$.jsxs)(`div`,{ref:l,className:`absolute bottom-full left-0 mb-2 w-full max-h-64 overflow-y-auto rounded-xl border border-border bg-popover p-1 shadow-lg z-50 animate-in fade-in slide-in-from-bottom-2`,children:[f,p]}),t[13]=l,t[14]=f,t[15]=p,t[16]=m):m=t[16],m}function Vb(e){return[`off`,...e]}function Hb(e){let t=(0,Q.c)(38),{selectedEffort:n,supportedEfforts:r,onReasoningEffortChange:i}=e;if(r.length===0)return null;let a,o,s,c,l,u,d,f,p;if(t[0]!==i||t[1]!==n||t[2]!==r){let e=Vb(r),m=n??`off`,h;t[12]===i?h=t[13]:(h=function(e){i(e)},t[12]=i,t[13]=h);let g=h;t[14]===Symbol.for(`react.memo_cache_sentinel`)?(p=(0,$.jsx)(Ai,{className:`my-1`}),t[14]=p):p=t[14],d=`px-3 py-1.5`,t[15]===Symbol.for(`react.memo_cache_sentinel`)?(f=(0,$.jsx)(`div`,{className:G(U.dropdownGroupHeading,`pb-1 uppercase tracking-wide`),children:`Reasoning`}),t[15]=f):f=t[15],o=vo,c=m,l=g;let _;t[16]===Symbol.for(`react.memo_cache_sentinel`)?(_=G(U.body,`h-9 w-full bg-popover text-popover-foreground`),t[16]=_):_=t[16];let v;t[17]===m?v=t[18]:(v=Xt(m),t[17]=m,t[18]=v),t[19]===v?u=t[20]:(u=(0,$.jsx)(na,{"aria-label":`Reasoning effort`,className:_,children:(0,$.jsx)(`span`,{children:v})}),t[19]=v,t[20]=u),a=io;let y;t[21]===Symbol.for(`react.memo_cache_sentinel`)?(y=function(e){return(0,$.jsx)(Ba,{value:e,className:U.body,children:Xt(e)},e)},t[21]=y):y=t[21],s=e.map(y),t[0]=i,t[1]=n,t[2]=r,t[3]=a,t[4]=o,t[5]=s,t[6]=c,t[7]=l,t[8]=u,t[9]=d,t[10]=f,t[11]=p}else a=t[3],o=t[4],s=t[5],c=t[6],l=t[7],u=t[8],d=t[9],f=t[10],p=t[11];let m;t[22]!==a||t[23]!==s?(m=(0,$.jsx)(a,{children:s}),t[22]=a,t[23]=s,t[24]=m):m=t[24];let h;t[25]!==o||t[26]!==c||t[27]!==l||t[28]!==u||t[29]!==m?(h=(0,$.jsxs)(o,{value:c,onValueChange:l,children:[u,m]}),t[25]=o,t[26]=c,t[27]=l,t[28]=u,t[29]=m,t[30]=h):h=t[30];let g;t[31]!==d||t[32]!==f||t[33]!==h?(g=(0,$.jsxs)(`div`,{className:d,children:[f,h]}),t[31]=d,t[32]=f,t[33]=h,t[34]=g):g=t[34];let _;return t[35]!==g||t[36]!==p?(_=(0,$.jsxs)($.Fragment,{children:[p,g]}),t[35]=g,t[36]=p,t[37]=_):_=t[37],_}function Ub(e){let t=(0,Q.c)(5),{providerSlug:n}=e;if(!n)return null;let r;t[0]===n?r=t[1]:(r=Ra(n),t[0]=n,t[1]=r);let i=`${n} logo`,a;return t[2]!==r||t[3]!==i?(a=(0,$.jsx)(`img`,{src:r,alt:i,className:`h-3.5 w-3.5 flex-shrink-0 dark:invert`,onError:Wb}),t[2]=r,t[3]=i,t[4]=a):a=t[4],a}function Wb(e){e.currentTarget.style.visibility=`hidden`}function Gb(e){let t=(0,Q.c)(17),{providerSlug:n,providerData:r}=e,i=r?.name??n,a;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(a=G(U.dropdownGroupHeading,`flex items-center gap-1.5 px-3 py-1.5 uppercase tracking-wide`),t[0]=a):a=t[0];let o=`/settings/providers/${encodeURIComponent(n)}`,s;t[1]===n?s=t[2]:(s=(0,$.jsx)(Ub,{providerSlug:n}),t[1]=n,t[2]=s);let c;t[3]!==o||t[4]!==s?(c=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(Cr,{to:o,className:`flex items-center hover:opacity-70 transition-opacity`,children:s})}),t[3]=o,t[4]=s,t[5]=c):c=t[5];let l=`Configure ${i} provider`,u;t[6]===l?u=t[7]:(u=(0,$.jsx)(Fr,{side:`left`,children:(0,$.jsx)(`p`,{children:l})}),t[6]=l,t[7]=u);let d;t[8]!==c||t[9]!==u?(d=(0,$.jsx)(Zo,{children:(0,$.jsxs)(Mi,{children:[c,u]})}),t[8]=c,t[9]=u,t[10]=d):d=t[10];let f;t[11]!==i||t[12]!==r?(f=r?.url?(0,$.jsx)(_a,{url:r.url,showIcon:!1,variant:`inline`,children:i}):i,t[11]=i,t[12]=r,t[13]=f):f=t[13];let p;return t[14]!==d||t[15]!==f?(p=(0,$.jsxs)(`div`,{className:a,children:[d,f]}),t[14]=d,t[15]=f,t[16]=p):p=t[16],p}function Kb(e){let t=e.pricing?.prompt;return t==null?null:Math.ceil(t*3)}function qb(e){return`$${Re(e)}`}function Jb(e,t){return e.pricing?(0,$.jsxs)(`div`,{className:G(U.body,`max-w-64 whitespace-normal break-words text-left leading-relaxed`),children:[(0,$.jsx)(`div`,{children:`${qb(e.pricing.prompt??0)} input per million tokens`}),(0,$.jsx)(`div`,{children:`${qb(e.pricing.completion??0)} output per million tokens`}),(0,$.jsx)(`div`,{children:`Displayed value of ${t} is a relative price.`})]}):null}function Yb(e,t){return[...e].sort((e,n)=>{let r=(e.provider??`Other`).localeCompare(n.provider??`Other`);if(r!==0)return r;if(t===`relative-price`){let t=(Kb(e)??2**53-1)-(Kb(n)??2**53-1);if(t!==0)return t}return Ko(e.id).localeCompare(Ko(n.id))})}function Xb(e){if(!e)return`Select Model`;let t=`${e.provider??`unknown`}/${e.id}`;return(e.supportedReasoningEfforts?.length??0)>0?`${t} ${Xt(d(e.settings,e.supportedReasoningEfforts??[]))}`:t}function Zb(e){return e instanceof Element&&!!(e.closest(`[data-radix-select-content]`)||e.closest(`[data-radix-popper-content-wrapper]`)||e.closest(`[role="listbox"]`))}function Qb(e){let t=(0,Q.c)(45),{availableModels:n,selectedModel:r,onModelSelect:i,onReasoningEffortChange:a}=e,[o,s]=Z.useState(!1),[l,u]=Z.useState(`relative-price`),f;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(f=new Map,t[0]=f):f=t[0];let[p,m]=Z.useState(f),h=Z.useRef(null),g,_;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(g=()=>{sa().then(function(e){m(new Map(e.map(tx)))})},_=[],t[1]=g,t[2]=_):(g=t[1],_=t[2]),Z.useEffect(g,_);let v,y;t[3]===o?(v=t[4],y=t[5]):(v=()=>{let e=function(e){Zb(e.target)||h.current&&!h.current.contains(e.target)&&s(!1)};if(o)return document.addEventListener(`mousedown`,e),()=>{document.removeEventListener(`mousedown`,e)}},y=[o],t[3]=o,t[4]=v,t[5]=y),Z.useEffect(v,y);let b;t[6]===i?b=t[7]:(b=function(e){i(e),s(!1)},t[6]=i,t[7]=b);let x=b,S;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(S=function(){u(function(e){return e===`relative-price`?`alphabetical`:`relative-price`})},t[8]=S):S=t[8];let C=S,w;t[9]!==n||t[10]!==l?(w=Yb(n,l),t[9]=n,t[10]=l,t[11]=w):w=t[11];let T=w,E=l===`relative-price`?c:P,D=l===`relative-price`?`Sort by relative price`:`Sort alphabetically`,O,k;t[12]===n.length?(O=t[13],k=t[14]):(k=()=>{let e=function(e){let t=e.key.toLowerCase();!((e.metaKey||e.ctrlKey)&&e.shiftKey&&!e.altKey)||t!==`m`||n.length===0||(e.preventDefault(),s(ex))};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},O=[n.length],t[12]=n.length,t[13]=O,t[14]=k),Z.useEffect(k,O);let A;t[15]===o?A=t[16]:(A=()=>s(!o),t[15]=o,t[16]=A);let j;t[17]===Symbol.for(`react.memo_cache_sentinel`)?(j=G(U.body,`font-normal`),t[17]=j):j=t[17];let M;t[18]===r?M=t[19]:(M=r?Ko(r.id):`No model`,t[18]=r,t[19]=M);let N;t[20]===M?N=t[21]:(N=(0,$.jsx)(`span`,{className:j,children:M}),t[20]=M,t[21]=N);let F;t[22]===Symbol.for(`react.memo_cache_sentinel`)?(F=(0,$.jsx)(Yt,{className:`h-3 w-3`}),t[22]=F):F=t[22];let I;t[23]!==A||t[24]!==N?(I=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(Hr,{variant:`action`,size:`icon-sm`,className:`gap-1 w-auto px-2`,onClick:A,children:[N,F]})}),t[23]=A,t[24]=N,t[25]=I):I=t[25];let L;t[26]===r?L=t[27]:(L=Xb(r),t[26]=r,t[27]=L);let R;t[28]===L?R=t[29]:(R=(0,$.jsx)(Fr,{children:L}),t[28]=L,t[29]=R);let z;t[30]!==I||t[31]!==R?(z=(0,$.jsxs)(Mi,{children:[I,R]}),t[30]=I,t[31]=R,t[32]=z):z=t[32];let B;t[33]!==E||t[34]!==x||t[35]!==a||t[36]!==p||t[37]!==r||t[38]!==o||t[39]!==D||t[40]!==T?(B=o&&(0,$.jsx)(`div`,{className:`absolute bottom-full right-0 mb-1 w-80 max-h-80 overflow-y-auto rounded-lg border border-border bg-popover p-1 shadow-md z-50`,children:(0,$.jsxs)(Zo,{children:[(0,$.jsx)(`div`,{className:`-mb-3 flex justify-end px-1 pb-1`,children:(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,"aria-label":D,className:`rounded-md p-1 text-muted-foreground transition-colors hover:bg-accent hover:text-accent-foreground`,onClick:C,children:(0,$.jsx)(E,{className:`h-3.5 w-3.5`})})}),(0,$.jsx)(Fr,{side:`left`,align:`start`,sideOffset:8,children:D})]})}),Object.entries(T.reduce($b,{})).map((e,t)=>{let[n,i]=e;return(0,$.jsxs)(`div`,{children:[t>0&&(0,$.jsx)(Ai,{className:`my-1`}),(0,$.jsx)(Gb,{providerSlug:n,providerData:p.get(n)}),i.map(e=>{let t=Kb(e),n=t==null?null:Jb(e,t),i=e.id===r?.id&&e.provider===r?.provider,a=Ko(e.id);return(0,$.jsxs)(`button`,{type:`button`,className:G(U.body,`flex w-full items-center justify-between gap-3 whitespace-nowrap rounded-md px-3 py-1.5 pl-8 text-popover-foreground hover:bg-accent`,i&&`bg-accent font-medium`),onClick:()=>x(e),children:[(0,$.jsx)(`span`,{className:`min-w-0 truncate`,children:a}),t!=null&&n&&(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`span`,{className:G(U.compact,`shrink-0 text-muted-foreground`),children:t})}),(0,$.jsx)(Fr,{side:`left`,align:`end`,sideOffset:8,className:`max-w-64`,children:n})]})]},`${e.provider??``}:${e.id}`)})]},n)}),r&&a&&(r.supportedReasoningEfforts?.length??0)>0&&(0,$.jsx)(`div`,{className:`sticky bottom-0 -mx-1 -mb-1 mt-1 bg-popover px-1 pb-1`,children:(0,$.jsx)(Hb,{selectedEffort:d(r.settings,r.supportedReasoningEfforts??[]),supportedEfforts:r.supportedReasoningEfforts??[],onReasoningEffortChange:e=>a(r,e)})})]})}),t[33]=E,t[34]=x,t[35]=a,t[36]=p,t[37]=r,t[38]=o,t[39]=D,t[40]=T,t[41]=B):B=t[41];let V;return t[42]!==z||t[43]!==B?(V=(0,$.jsxs)(`div`,{className:`relative`,ref:h,children:[z,B]}),t[42]=z,t[43]=B,t[44]=V):V=t[44],V}function $b(e,t){let n=t.provider??`Other`;return e[n]||(e[n]=[]),e[n].push(t),e}function ex(e){return!e}function tx(e){return[e.slug,e]}function nx(e){let t=(0,Q.c)(16),{value:n,onChange:r,disabled:i,disableOn:a,ariaLabel:o,className:s}=e,c=i===void 0?!1:i,l=a===void 0?!1:a,u;t[0]!==r||t[1]!==n?(u=function(){r(!n)},t[0]=r,t[1]=n,t[2]=u):u=t[2];let d=u,f=c||l&&!n,p;t[3]===s?p=t[4]:(p=G(`h-7 w-7 shrink-0 rounded-full border border-border bg-muted text-muted-foreground shadow-sm hover:bg-accent hover:text-foreground aria-checked:bg-foreground aria-checked:text-background aria-checked:border-transparent`,s),t[3]=s,t[4]=p);let m=!n&&`invisible`,h;t[5]===m?h=t[6]:(h=G(m),t[5]=m,t[6]=h);let g;t[7]===h?g=t[8]:(g=(0,$.jsx)(W,{"aria-hidden":`true`,className:h}),t[7]=h,t[8]=g);let _;return t[9]!==o||t[10]!==d||t[11]!==f||t[12]!==p||t[13]!==g||t[14]!==n?(_=(0,$.jsx)(Hr,{type:`button`,variant:`ghost`,size:`icon-sm`,role:`checkbox`,"aria-checked":n,"aria-label":o,disabled:f,onClick:d,className:p,children:g}),t[9]=o,t[10]=d,t[11]=f,t[12]=p,t[13]=g,t[14]=n,t[15]=_):_=t[15],_}var rx=Ut(`app.use-seatbelt-sandbox.hook`);function ix(){let[e,t]=(0,Z.useState)(!1),[n,r]=(0,Z.useState)(!1),[i,a]=(0,Z.useState)(!1),[o,s]=(0,Z.useState)(``),[c,l]=(0,Z.useState)(!0),[u,d]=(0,Z.useState)(!1);(0,Z.useEffect)(()=>{let e=!1;async function n(){try{let n=await Zr();e||(t(n.seatbeltSandboxEnabled),r(n.seatbeltSandboxSupported),a(n.seatbeltSandboxHealthy),s(n.seatbeltSandboxMessage))}catch(e){rx.error(`Failed to load seatbelt sandbox setting:`,e)}finally{e||l(!1)}}return n(),()=>{e=!0}},[]);async function f(e){d(!0);try{let n=await Jo({seatbeltSandboxEnabled:e});t(n.seatbeltSandboxEnabled),r(n.seatbeltSandboxSupported),a(n.seatbeltSandboxHealthy),s(n.seatbeltSandboxMessage)}catch(e){throw rx.error(`Failed to update seatbelt sandbox setting:`,e),e}finally{d(!1)}}return{isEnabled:e,isSupported:n,isHealthy:i,statusMessage:o,isLoading:c,isSaving:u,updateIsEnabled:f}}var ax=Ut(`app.session-learnings-dialog.ui`);function ox({open:e,onOpenChange:t,threadId:n}){let[r,i]=(0,Z.useState)([]),[a,o]=(0,Z.useState)(!1),[s,c]=(0,Z.useState)(null);return(0,Z.useEffect)(()=>{if(!e||!n)return;let t=n,r=!1;async function a(){o(!0),c(null);try{let e=await ha(t);r||i(e)}catch(e){ax.error(`Failed to load session tool learnings`,e),r||(c(`Failed to load session learnings`),i([]))}finally{r||o(!1)}}return a(),()=>{r=!0}},[e,n]),(0,$.jsx)(Ni,{open:e,onOpenChange:t,children:(0,$.jsxs)(Ir,{className:`flex max-h-[80dvh] max-w-lg flex-col gap-4 overflow-hidden`,children:[(0,$.jsxs)(Dr,{className:`shrink-0`,children:[(0,$.jsx)(qa,{children:`Session learnings`}),(0,$.jsx)(_i,{children:`Short tool-behavior notes kept in memory for this thread and injected into the next prompt. Cleared when the CLI restarts.`})]}),(0,$.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col`,children:[a&&(0,$.jsx)(`p`,{className:G(U.bodyMuted),children:`Loading learnings…`}),s&&!a&&(0,$.jsx)(`p`,{className:G(U.body,`text-destructive`),children:s}),!a&&!s&&(0,$.jsx)(za,{className:`min-h-0 max-h-[50dvh] flex-1`,children:r.length===0?(0,$.jsx)(`p`,{className:G(U.bodyMuted),children:`No session tool learnings yet. They appear when tools redirect the agent (for example Smart JS helper redirects).`}):(0,$.jsx)(`ul`,{className:`space-y-2`,children:r.map((e,t)=>(0,$.jsx)(`li`,{className:G(U.body,`rounded-md border border-border/60 px-3 py-2 whitespace-pre-wrap select-text`),children:e},`${t}-${e}`))})})]})]})})}var sx=[{value:`auto`,label:`Auto`,icon:N,description:`Picks the model for a thread's first prompt`},{value:`build`,label:`Build`,icon:_t,description:`Executes code changes and implements features`},{value:`plan`,label:`Plan`,icon:de,description:`Creates implementation plans without making changes`},{value:`image`,label:`Image`,icon:u,description:`Generates and edits images`},{value:`ralph`,label:`Ralph`,icon:_,description:`Implements todo stories one-by-one with a fresh context each iteration`},{value:`orchestrate`,label:`Orchestrate`,icon:xt,description:`Plans on a smart model and delegates implementation to a cheap model`}],cx={auto:{title:`Fast or Cheap model required`,description:`Auto needs a Fast or Cheap model alias to classify each prompt. Set one under Project Settings → Advanced → Model Aliases.`},orchestrate:{title:`Cheap model required`,description:`Orchestrate needs a Cheap model alias so implementation work can run on a lower-cost model. Set it under Project Settings → Advanced → Model Aliases.`}};function lx(e){let t=(0,Q.c)(17),{requirement:n,onOpenChange:r,onOpenSettings:i}=e,a=cx[n??`orchestrate`],o=n!==null,s;t[0]===a.title?s=t[1]:(s=(0,$.jsx)(sc,{children:a.title}),t[0]=a.title,t[1]=s);let c;t[2]===a.description?c=t[3]:(c=(0,$.jsx)(oc,{children:a.description}),t[2]=a.description,t[3]=c);let l;t[4]!==s||t[5]!==c?(l=(0,$.jsxs)(fc,{children:[s,c]}),t[4]=s,t[5]=c,t[6]=l):l=t[6];let u;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(u=(0,$.jsx)(dc,{children:`Cancel`}),t[7]=u):u=t[7];let d;t[8]===i?d=t[9]:(d=(0,$.jsxs)(uc,{children:[u,(0,$.jsx)(lc,{onClick:i,children:`Open Project Settings`})]}),t[8]=i,t[9]=d);let f;t[10]!==l||t[11]!==d?(f=(0,$.jsxs)(cc,{children:[l,d]}),t[10]=l,t[11]=d,t[12]=f):f=t[12];let p;return t[13]!==r||t[14]!==o||t[15]!==f?(p=(0,$.jsx)(pc,{open:o,onOpenChange:r,children:f}),t[13]=r,t[14]=o,t[15]=f,t[16]=p):p=t[16],p}var ux=Ut(`app.use-mode-menu.ui`);function dx(e,t,n){return t?`${e}: ${t.provider}/${t.model}`:`${e}: ${n}`}function fx({planMode:e,imageMode:t,ralphMode:n,orchestrateMode:r,autoMode:i,setPlanMode:a,setImageMode:o,setRalphMode:s,setOrchestrateMode:c,setAutoMode:l,lastAutoRouteDecision:u=null,projectId:d,onOpenProjectSettings:f}){let p=Ks(),m=X(function(e){if(d)return e.projects.find(e=>e.projectId===d)}),[h,g]=Z.useState(!0),[_,v]=Z.useState(!1),[y,b]=Z.useState(null),x=Xe({planMode:e,imageMode:t,ralphMode:n,orchestrateMode:r,autoMode:i}),S=sx.find(e=>e.value===x),C=Jt(m?.modelAliases),w=C||i?sx:sx.filter(e=>e.value!==`auto`),T=x===`auto`&&u?`last picked ${q[u]}`:S.description,E=Ue(m?.modelAliases),D=x===`auto`?[E?`Decides with: ${E.provider}/${E.model}`:`Decides with: Fast or Cheap, neither is set`,dx(St.cheap,en(`cheap`,m?.modelAliases),`not set`),dx(St.smart,ue(m?.modelAliases),`not set, uses your selected model`)]:[],O=(0,$.jsxs)(`div`,{className:G(U.body,`max-w-64 whitespace-normal text-left leading-relaxed`),children:[(0,$.jsx)(`p`,{children:`${S.label} - ${T}`}),D.map(e=>(0,$.jsx)(`p`,{children:e},e))]});Z.useEffect(()=>{m&&g(m.allowAllCommands===!1)},[m]),Z.useEffect(()=>{m&&i&&!C&&l(!1)},[i,C,m,l]);async function k(){if(!d||_)return;let e=!h;g(e),v(!0);try{await Fi(d,{allowAllCommands:!e}),Si(d);let t=await lo();p({type:Y.SetProjects,projects:t.projects,cloneRootPath:t.cloneRootPath})}catch(t){g(!e),ux.error(`Failed to update command confirmation setting:`,t)}finally{v(!1)}}function A(e){let t=rt(e);a(t.planMode),o(t.imageMode),s(t.ralphMode),c(t.orchestrateMode),l(t.autoMode)}async function j(e){if(d)try{await Fi(d,{defaultChatMode:e}),Si(d);let t=await lo();p({type:Y.SetProjects,projects:t.projects,cloneRootPath:t.cloneRootPath})}catch(e){ux.error(`Failed to save the project's default mode:`,e)}}function M(){A(`orchestrate`)}function N(){return on(m?.modelAliases)?!0:(b(`orchestrate`),!1)}function P(){return N()?(M(),!0):!1}function F(){return N()?(M(),!0):!1}function I(e){if(e===`orchestrate`){P()&&j(e);return}if(e===`auto`&&!C){b(`auto`);return}A(e),j(e)}function L(){b(null),d&&f&&f(d)}return{chatModes:w,confirmCommands:h,currentConfig:S,currentMode:x,modeTooltipContent:O,isUpdatingConfirmCommands:_,selectMode:I,trySelectOrchestrate:P,ensureCanOrchestrate:N,requestOrchestrateMode:F,toggleConfirmCommands:k,cheapAliasDialog:(0,$.jsx)(lx,{requirement:y,onOpenChange:e=>{e||b(null)},onOpenSettings:L})}}function px(e){return e.replace(/[-_]+/g,` `).trim().split(/\s+/g).filter(Boolean).map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(` `)}function mx(e,t){return t&&e.skillPath.startsWith(`${t}/`)?`${e.skillPath.slice(t.length+1)}/SKILL.md`:`.agents/skills/${e.name}/SKILL.md`}function hx(e){let t=(0,Q.c)(11),{skill:n,onOpen:r}=e,i;t[0]===n.name?i=t[1]:(i=px(n.name),t[0]=n.name,t[1]=i);let a=`Open ${i} in Files`,o;t[2]===r?o=t[3]:(o=e=>{e.stopPropagation(),r()},t[2]=r,t[3]=o);let s;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,$.jsx)(pt,{}),t[4]=s):s=t[4];let c;t[5]!==a||t[6]!==o?(c=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(Hr,{type:`button`,variant:`action`,size:`icon-xs`,className:`ml-auto shrink-0`,"aria-label":a,onClick:o,onPointerDown:gx,children:s})}),t[5]=a,t[6]=o,t[7]=c):c=t[7];let l;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,$.jsx)(Fr,{children:`Open in Files`}),t[8]=l):l=t[8];let u;return t[9]===c?u=t[10]:(u=(0,$.jsxs)(Mi,{children:[c,l]}),t[9]=c,t[10]=u),u}function gx(e){e.stopPropagation()}function _x(e){let t=(0,Q.c)(29),{icon:n,iconClassName:r,label:i,value:a,onChange:o,disabled:s,disableOn:c,ariaLabel:l}=e,u=s===void 0?!1:s,d=c===void 0?!1:c,f;t[0]!==d||t[1]!==u||t[2]!==o||t[3]!==a?(f=function(){u||d&&!a||o(!a)},t[0]=d,t[1]=u,t[2]=o,t[3]=a,t[4]=f):f=t[4];let p=f,m;t[5]===p?m=t[6]:(m=e=>{e.preventDefault(),p()},t[5]=p,t[6]=m);let h;t[7]!==n||t[8]!==r?(h=(0,$.jsx)(n,{className:r}),t[7]=n,t[8]=r,t[9]=h):h=t[9];let g;t[10]!==i||t[11]!==h?(g=(0,$.jsxs)(`span`,{className:`flex min-w-0 items-center gap-2`,children:[h,i]}),t[10]=i,t[11]=h,t[12]=g):g=t[12];let _;t[13]===p?_=t[14]:(_=e=>{e.stopPropagation(),p()},t[13]=p,t[14]=_);let v;t[15]!==l||t[16]!==d||t[17]!==u||t[18]!==o||t[19]!==a?(v=(0,$.jsx)(nx,{value:a,onChange:o,disabled:u,disableOn:d,ariaLabel:l}),t[15]=l,t[16]=d,t[17]=u,t[18]=o,t[19]=a,t[20]=v):v=t[20];let y;t[21]!==_||t[22]!==v?(y=(0,$.jsx)(`span`,{onPointerDown:vx,onClick:_,children:v}),t[21]=_,t[22]=v,t[23]=y):y=t[23];let b;return t[24]!==u||t[25]!==m||t[26]!==g||t[27]!==y?(b=(0,$.jsxs)(xl,{className:`flex items-center justify-between gap-2 [&_svg]:size-3.5`,onSelect:m,disabled:u,children:[g,y]}),t[24]=u,t[25]=m,t[26]=g,t[27]=y,t[28]=b):b=t[28],b}function vx(e){e.stopPropagation()}function yx(e){let t=(0,Q.c)(20),{disabled:n,currentConfig:r,sandboxSupported:i,isSandboxLoading:a,sandboxEnabled:o,modeTooltipContent:s}=e,c;t[0]===r.icon?c=t[1]:(c=(0,$.jsx)(r.icon,{className:`h-4 w-4`}),t[0]=r.icon,t[1]=c);let l;t[2]===r.label?l=t[3]:(l=(0,$.jsxs)(`span`,{className:`sr-only`,children:[r.label,` mode`]}),t[2]=r.label,t[3]=l);let u;t[4]!==n||t[5]!==c||t[6]!==l?(u=(0,$.jsx)(gl,{asChild:!0,children:(0,$.jsxs)(Hr,{variant:`action`,size:`icon-sm`,disabled:n,children:[c,l]})}),t[4]=n,t[5]=c,t[6]=l,t[7]=u):u=t[7];let d;t[8]!==a||t[9]!==o||t[10]!==i?(d=i&&!a&&!o&&(0,$.jsx)(`span`,{className:`absolute -right-0.5 -top-0.5 h-2.5 w-2.5 rounded-full bg-destructive ring-2 ring-background`}),t[8]=a,t[9]=o,t[10]=i,t[11]=d):d=t[11];let f;t[12]!==u||t[13]!==d?(f=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(`div`,{className:`relative`,children:[u,d]})}),t[12]=u,t[13]=d,t[14]=f):f=t[14];let p;t[15]===s?p=t[16]:(p=(0,$.jsx)(Fr,{children:s}),t[15]=s,t[16]=p);let m;return t[17]!==f||t[18]!==p?(m=(0,$.jsx)(Zo,{children:(0,$.jsxs)(Mi,{children:[f,p]})}),t[17]=f,t[18]=p,t[19]=m):m=t[19],m}function bx(e){let t=(0,Q.c)(16),{projectId:n,sandboxSupported:r,isSandboxLoading:i,confirmCommands:a,toggleConfirmCommands:o,isUpdatingConfirmCommands:s,sandboxEnabled:c,sandboxHealthy:l,updateSandbox:u,isSandboxSaving:d}=e;if(!n&&!(r&&!i))return null;let f;t[0]!==a||t[1]!==s||t[2]!==n||t[3]!==o?(f=n&&(0,$.jsx)(_x,{icon:le,label:`Confirm Commands`,value:a,onChange:()=>{o()},disabled:s,ariaLabel:`Confirm Commands`}),t[0]=a,t[1]=s,t[2]=n,t[3]=o,t[4]=f):f=t[4];let p;t[5]!==i||t[6]!==d||t[7]!==c||t[8]!==l||t[9]!==r||t[10]!==u?(p=r&&!i&&(0,$.jsx)(_x,{icon:L,iconClassName:G(c&&l?`text-brand`:`text-destructive`),label:`Sandbox`,value:c&&l,onChange:e=>{e&&!l||u(e).catch(xx)},disabled:d||!l&&!c,disableOn:!l,ariaLabel:`Sandbox`}),t[5]=i,t[6]=d,t[7]=c,t[8]=l,t[9]=r,t[10]=u,t[11]=p):p=t[11];let m;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(m=(0,$.jsx)(Tl,{}),t[12]=m):m=t[12];let h;return t[13]!==f||t[14]!==p?(h=(0,$.jsxs)($.Fragment,{children:[f,p,m]}),t[13]=f,t[14]=p,t[15]=h):h=t[15],h}function xx(){}function Sx(e){let t=(0,Q.c)(9),{chatModes:n,currentMode:r,selectMode:i}=e,a;if(t[0]!==n||t[1]!==r||t[2]!==i){let e;t[4]!==r||t[5]!==i?(e=e=>{let t=e.icon,n=e.value===r;return(0,$.jsxs)(xl,{onClick:()=>i(e.value),className:G(n&&`bg-accent`),children:[(0,$.jsx)(t,{className:`h-3.5 w-3.5`}),e.label,n&&(0,$.jsx)(W,{className:`ml-auto h-3.5 w-3.5`})]},e.value)},t[4]=r,t[5]=i,t[6]=e):e=t[6],a=n.map(e),t[0]=n,t[1]=r,t[2]=i,t[3]=a}else a=t[3];let o;return t[7]===a?o=t[8]:(o=(0,$.jsx)($.Fragment,{children:a}),t[7]=a,t[8]=o),o}function Cx(e){let t=(0,Q.c)(7),{sortedSkills:n,onSelectSkill:r,onOpenSkillInExplorer:i}=e,a;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(a=(0,$.jsxs)(vl,{children:[(0,$.jsx)(vt,{className:`h-3.5 w-3.5`}),`Skills`]}),t[0]=a):a=t[0];let o;t[1]!==i||t[2]!==r||t[3]!==n?(o=n.length===0?(0,$.jsx)(xl,{disabled:!0,children:`No skills available`}):n.map(e=>(0,$.jsxs)(xl,{onClick:()=>r(e),className:`gap-2 [&_svg]:size-3`,children:[(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:px(e.name)}),(0,$.jsx)(hx,{skill:e,onOpen:()=>i(e)})]},e.skillPath)),t[1]=i,t[2]=r,t[3]=n,t[4]=o):o=t[4];let s;return t[5]===o?s=t[6]:(s=(0,$.jsxs)(_l,{children:[a,(0,$.jsx)(yl,{className:`max-h-[min(400px,80vh)] w-64 overflow-y-auto`,children:o})]}),t[5]=o,t[6]=s),s}function wx(e){let t=(0,Q.c)(8),{slashCommands:n,onSelectSlashCommand:r}=e;if(n.length===0)return null;let i;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(i=(0,$.jsxs)(vl,{children:[(0,$.jsx)(ht,{className:`h-3.5 w-3.5`}),`Slash Commands`]}),t[0]=i):i=t[0];let a;if(t[1]!==r||t[2]!==n){let e;t[4]===r?e=t[5]:(e=e=>(0,$.jsxs)(xl,{onClick:()=>r(e),className:`gap-2 [&_svg]:size-3`,children:[(0,$.jsxs)(`span`,{className:`min-w-0 flex-1 truncate`,children:[`/`,e.name]}),e.metadata.description&&(0,$.jsx)(`span`,{className:G(U.compact,`text-muted-foreground truncate`),children:e.metadata.description})]},e.filePath),t[4]=r,t[5]=e),a=[...n].sort(Tx).map(e),t[1]=r,t[2]=n,t[3]=a}else a=t[3];let o;return t[6]===a?o=t[7]:(o=(0,$.jsxs)(_l,{children:[i,(0,$.jsx)(yl,{className:`max-h-[min(400px,80vh)] w-64 overflow-y-auto`,children:a})]}),t[6]=a,t[7]=o),o}function Tx(e,t){return e.name.localeCompare(t.name)}function Ex(e){let t=(0,Q.c)(15),{selectedThreadId:n,onOpenLearnings:r,onFileAttach:i,canAddTask:a,onAddTask:o}=e,s=!n,c;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,$.jsx)(Zt,{className:`h-3.5 w-3.5`}),t[0]=c):c=t[0];let l;t[1]!==r||t[2]!==s?(l=(0,$.jsxs)(xl,{disabled:s,onClick:r,children:[c,`Learnings`]}),t[1]=r,t[2]=s,t[3]=l):l=t[3];let u;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(u=(0,$.jsx)(Tl,{}),t[4]=u):u=t[4];let d;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(d=(0,$.jsx)(It,{className:`h-3.5 w-3.5`}),t[5]=d):d=t[5];let f;t[6]===i?f=t[7]:(f=(0,$.jsxs)(xl,{onClick:i,children:[d,`Attach File`]}),t[6]=i,t[7]=f);let p;t[8]!==a||t[9]!==o?(p=a&&(0,$.jsxs)(xl,{onClick:o,children:[(0,$.jsx)(rn,{className:`h-3.5 w-3.5`}),`Add Prompt`]}),t[8]=a,t[9]=o,t[10]=p):p=t[10];let m;return t[11]!==l||t[12]!==f||t[13]!==p?(m=(0,$.jsxs)($.Fragment,{children:[l,u,f,p]}),t[11]=l,t[12]=f,t[13]=p,t[14]=m):m=t[14],m}function Dx(e){let t=(0,Q.c)(73),{planMode:n,imageMode:r,ralphMode:i,orchestrateMode:a,autoMode:o,setPlanMode:s,setImageMode:c,setRalphMode:l,setOrchestrateMode:u,setAutoMode:d,lastAutoRouteDecision:f,projectId:p,disabled:m,canAddTask:h,skills:g,onSelectSkill:_,slashCommands:v,onSelectSlashCommand:y,onFileAttach:b,onAddTask:x}=e,S=f===void 0?null:f,C=m===void 0?!1:m,w=Yn(),[T,E]=(0,Z.useState)(!1),[D,O]=(0,Z.useState)(!1),{isEnabled:k,isSupported:A,isHealthy:j,isLoading:M,isSaving:N,updateIsEnabled:P}=ix(),{setPendingExplorerPath:F}=vc(),{openChatDockPanel:I}=Hd(),L=X(Ax),R=X(kx),z;t[0]!==o||t[1]!==r||t[2]!==S||t[3]!==w||t[4]!==a||t[5]!==n||t[6]!==p||t[7]!==i||t[8]!==d||t[9]!==c||t[10]!==u||t[11]!==s||t[12]!==l?(z={planMode:n,imageMode:r,ralphMode:i,orchestrateMode:a,autoMode:o,setPlanMode:s,setImageMode:c,setRalphMode:l,setOrchestrateMode:u,setAutoMode:d,lastAutoRouteDecision:S,projectId:p,onOpenProjectSettings(e){w(`/settings/project/${e}/model-aliases`)}},t[0]=o,t[1]=r,t[2]=S,t[3]=w,t[4]=a,t[5]=n,t[6]=p,t[7]=i,t[8]=d,t[9]=c,t[10]=u,t[11]=s,t[12]=l,t[13]=z):z=t[13];let{chatModes:B,confirmCommands:V,currentConfig:H,currentMode:ee,modeTooltipContent:te,isUpdatingConfirmCommands:ne,selectMode:re,toggleConfirmCommands:ie,cheapAliasDialog:ae}=fx(z),oe;t[14]===g?oe=t[15]:(oe=[...g].sort(Ox),t[14]=g,t[15]=oe);let se=oe,U;t[16]!==I||t[17]!==R||t[18]!==F?(U=function(e){F(mx(e,R)),I(`explorer`),E(!1)},t[16]=I,t[17]=R,t[18]=F,t[19]=U):U=t[19];let ce=U,le;t[20]!==H||t[21]!==C||t[22]!==M||t[23]!==te||t[24]!==k||t[25]!==A?(le=(0,$.jsx)(yx,{disabled:C,currentConfig:H,sandboxSupported:A,isSandboxLoading:M,sandboxEnabled:k,modeTooltipContent:te}),t[20]=H,t[21]=C,t[22]=M,t[23]=te,t[24]=k,t[25]=A,t[26]=le):le=t[26];let ue;t[27]!==V||t[28]!==M||t[29]!==N||t[30]!==ne||t[31]!==p||t[32]!==k||t[33]!==j||t[34]!==A||t[35]!==ie||t[36]!==P?(ue=(0,$.jsx)(bx,{projectId:p,sandboxSupported:A,isSandboxLoading:M,confirmCommands:V,toggleConfirmCommands:ie,isUpdatingConfirmCommands:ne,sandboxEnabled:k,sandboxHealthy:j,updateSandbox:P,isSandboxSaving:N}),t[27]=V,t[28]=M,t[29]=N,t[30]=ne,t[31]=p,t[32]=k,t[33]=j,t[34]=A,t[35]=ie,t[36]=P,t[37]=ue):ue=t[37];let W;t[38]!==B||t[39]!==ee||t[40]!==re?(W=(0,$.jsx)(Sx,{chatModes:B,currentMode:ee,selectMode:re}),t[38]=B,t[39]=ee,t[40]=re,t[41]=W):W=t[41];let de;t[42]===Symbol.for(`react.memo_cache_sentinel`)?(de=(0,$.jsx)(Tl,{}),t[42]=de):de=t[42];let fe;t[43]!==ce||t[44]!==_||t[45]!==se?(fe=(0,$.jsx)(Cx,{sortedSkills:se,onSelectSkill:_,onOpenSkillInExplorer:ce}),t[43]=ce,t[44]=_,t[45]=se,t[46]=fe):fe=t[46];let pe;t[47]!==y||t[48]!==v?(pe=(0,$.jsx)(wx,{slashCommands:v,onSelectSlashCommand:y}),t[47]=y,t[48]=v,t[49]=pe):pe=t[49];let me;t[50]===Symbol.for(`react.memo_cache_sentinel`)?(me=()=>{O(!0)},t[50]=me):me=t[50];let he;t[51]!==h||t[52]!==x||t[53]!==b||t[54]!==L?(he=(0,$.jsx)(Ex,{selectedThreadId:L,onOpenLearnings:me,onFileAttach:b,canAddTask:h,onAddTask:x}),t[51]=h,t[52]=x,t[53]=b,t[54]=L,t[55]=he):he=t[55];let ge;t[56]!==fe||t[57]!==pe||t[58]!==he||t[59]!==ue||t[60]!==W?(ge=(0,$.jsxs)(bl,{align:`start`,side:`top`,className:`w-64`,children:[ue,W,de,fe,pe,he]}),t[56]=fe,t[57]=pe,t[58]=he,t[59]=ue,t[60]=W,t[61]=ge):ge=t[61];let _e;t[62]!==T||t[63]!==ge||t[64]!==le?(_e=(0,$.jsxs)(hl,{open:T,onOpenChange:E,children:[le,ge]}),t[62]=T,t[63]=ge,t[64]=le,t[65]=_e):_e=t[65];let ve;t[66]!==D||t[67]!==L?(ve=(0,$.jsx)(ox,{open:D,onOpenChange:O,threadId:L}),t[66]=D,t[67]=L,t[68]=ve):ve=t[68];let ye;return t[69]!==ae||t[70]!==_e||t[71]!==ve?(ye=(0,$.jsxs)($.Fragment,{children:[_e,ae,ve]}),t[69]=ae,t[70]=_e,t[71]=ve,t[72]=ye):ye=t[72],ye}function Ox(e,t){return px(e.name).localeCompare(px(t.name))}function kx(e){return e.projects.find(t=>t.projectId===e.selectedProjectId)?.threads.find(t=>t.threadId===e.selectedThreadId)?.path}function Ax(e){return e.selectedThreadId}function jx(){if(typeof window>`u`)return null;let e=window;return e.SpeechRecognition??e.webkitSpeechRecognition??null}function Mx(){return jx()!==null}function Nx(){let e=jx();return e?new e:null}var Px=!1;function Fx(){Px||typeof globalThis.fetch!=`function`||(tt(e=>{if(e.event.startsWith(`voice.`))try{fetch(`/api/logs`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({level:[`DEBUG`,`INFO`,`WARN`,`ERROR`][e.level]??`INFO`,context:e.event,message:e.message,data:e.data})}).catch(()=>{})}catch{}}),Px=!0)}function Ix(e){Fx();let t=Ut(e);return{debug:(e,n)=>t.debug(e,n),info:(e,n)=>t.info(e,n),warn:(e,n)=>t.warn(e,n),error:(e,n)=>t.error(e,n),separator:e=>t.info(`${`─`.repeat(20)} ${e} ${`─`.repeat(20)}`)}}var Lx=Ix(`voice.stt.web`);function Rx(e){switch(e){case`not-allowed`:return`Microphone access was denied. Please allow microphone access to use voice input.`;case`service-not-allowed`:return`Speech recognition is not allowed in this environment.`;case`audio-capture`:return`No microphone was found. Please connect a microphone to use voice input.`;case`network`:return`Speech recognition requires a network connection.`;case`no-speech`:case`aborted`:return null;default:return`Speech recognition error: ${e}`}}function zx(e){let t=``;for(let n=0;n<e.results.length;n+=1)t+=e.results[n][0]?.transcript??``;return t}function Bx(){let[e,t]=(0,Z.useState)(`idle`),[n,r]=(0,Z.useState)(null),[i,a]=(0,Z.useState)(``),[o,s]=(0,Z.useState)(null),c=(0,Z.useRef)(null),l=(0,Z.useRef)(!1);(0,Z.useEffect)(()=>()=>{l.current=!1,c.current?.abort(),c.current=null},[]);let u=(0,Z.useCallback)(()=>{let e=Nx();if(!e){l.current=!1,t(`error`),r(!1),s(`Speech recognition is not supported in this environment.`);return}e.continuous=!0,e.interimResults=!0,e.lang=`en-US`,e.onresult=e=>{let t=zx(e).trim();t&&a(t)},e.onerror=e=>{let t=Rx(e.error);Lx.error(`Web Speech recognition error`,{error:e.error,message:e.message}),t&&s(t)},e.onend=()=>{if(c.current=null,!l.current){t(`ready`);return}Lx.info(`Web Speech recognition ended — restarting`),u()},c.current=e;try{e.start(),t(`recording`),Lx.info(`Web Speech recognition started`)}catch(e){c.current=null,l.current=!1;let n=e instanceof Error?e.message:`Unknown error`;Lx.error(`Failed to start Web Speech recognition`,{error:n}),t(`ready`),s(`Failed to start speech recognition: ${n}`)}},[]),d=(0,Z.useCallback)(async()=>{if(e===`ready`||e===`error`)return e;t(`checking-support`),s(null),Lx.info(`Checking Web Speech API support`,{userAgent:navigator.userAgent,platform:navigator.platform});let n=Mx();return r(n),n?(Lx.info(`Web Speech API available — ready`),t(`ready`),`ready`):(Lx.error(`Web Speech API not available`),t(`error`),s(`Speech recognition is not supported in this environment.`),`error`)},[e]);return{state:e,isSupported:n,transcript:i,error:o,downloadProgress:0,startListening:(0,Z.useCallback)(async()=>{l.current=!0,s(null),a(``),Lx.info(`Starting Web Speech recognition`),u()},[u]),stopListening:(0,Z.useCallback)(async()=>{l.current=!1,c.current?.stop(),c.current=null,t(`ready`),Lx.info(`Web Speech recognition stopped`)},[]),requestModelDownload:(0,Z.useCallback)(async()=>{},[]),ensureReady:d,resetTranscript:(0,Z.useCallback)(()=>{a(``),s(null)},[])}}var Vx=class{cacheEnabled=!0;log=Ut(`voice.vosk-cache`);async getCachedModelByUrl(e){return this.cacheEnabled?this.readCachedModelByUrl(e):null}async loadModelByUrl(e,t){let n=await this.getCachedModelByUrl(e);if(n)return this.log.info(`Voice model loaded from cache`,{url:e}),t?.(100),n;this.log.info(`Downloading voice model`,{url:e});let r=await fetch(e);if(!r.ok)throw Error(`Failed to download voice model: ${r.statusText}`);let i=await this.fetchBinaryWithProgress(r,t);return this.cacheEnabled&&await this.saveModelToCacheByUrl(e,i),t?.(100),i}async fetchBinaryWithProgress(e,t){let n=e.headers.get(`content-length`),r=n?parseInt(n,10):0,i=0,a=e.body?.getReader();if(!a)throw Error(`Response body is not readable`);let o=[];try{let e=!1;for(;!e;){let n=await a.read();e=n.done,!e&&n.value&&(o.push(n.value),i+=n.value.length,t&&r>0&&t(Math.round(i/r*100)))}}finally{a.releaseLock()}let s=o.reduce((e,t)=>e+t.length,0),c=new Uint8Array(s),l=0;for(let e of o)c.set(e,l),l+=e.length;return c}async readCachedModelByUrl(e){try{let t=(await this.openIndexedDB()).transaction([`modelsByUrl`],`readonly`).objectStore(`modelsByUrl`);return new Promise((n,r)=>{let i=t.get(e);i.onsuccess=()=>{let e=i.result;e?.data?n(e.data):n(null)},i.onerror=()=>r(i.error)})}catch(e){return this.log.error(`Error reading voice model from cache`,e),null}}async saveModelToCacheByUrl(e,t){try{let n=(await this.openIndexedDB()).transaction([`modelsByUrl`],`readwrite`).objectStore(`modelsByUrl`);await new Promise((r,i)=>{let a=n.put({url:e,data:t,timestamp:Date.now(),size:t.length});a.onsuccess=()=>r(),a.onerror=()=>i(a.error)}),this.log.info(`Voice model saved to cache`,{url:e})}catch(e){this.log.error(`Error saving voice model to cache`,e)}}async openIndexedDB(){return new Promise((e,t)=>{let n=indexedDB.open(`VoskModels`,1);n.onerror=()=>t(n.error),n.onsuccess=()=>e(n.result),n.onupgradeneeded=e=>{let t=e.target.result;if(!t.objectStoreNames.contains(`modelsByUrl`)){let e=t.createObjectStore(`modelsByUrl`,{keyPath:`url`});e.createIndex(`timestamp`,`timestamp`,{unique:!1}),e.createIndex(`size`,`size`,{unique:!1})}}})}},Hx=Ix(`voice.stt.vosk`),Ux=new URL(`data:text/javascript;base64,Y2xhc3MgUmVjb2duaXplckF1ZGlvUHJvY2Vzc29yIGV4dGVuZHMgQXVkaW9Xb3JrbGV0UHJvY2Vzc29yIHsKICBjb25zdHJ1Y3RvcihvcHRpb25zKSB7CiAgICBzdXBlcihvcHRpb25zKTsKICAgIHRoaXMucG9ydC5vbm1lc3NhZ2UgPSB0aGlzLl9wcm9jZXNzTWVzc2FnZS5iaW5kKHRoaXMpOwogIH0KCiAgX3Byb2Nlc3NNZXNzYWdlKGV2ZW50KSB7CiAgICBpZiAoZXZlbnQuZGF0YS5hY3Rpb24gPT09ICJpbml0IikgewogICAgICB0aGlzLl9yZWNvZ25pemVySWQgPSBldmVudC5kYXRhLnJlY29nbml6ZXJJZDsKICAgICAgdGhpcy5fcmVjb2duaXplclBvcnQgPSBldmVudC5wb3J0c1swXTsKICAgIH0KICB9CgogIHByb2Nlc3MoaW5wdXRzKSB7CiAgICBjb25zdCBkYXRhID0gaW5wdXRzWzBdWzBdOwogICAgaWYgKHRoaXMuX3JlY29nbml6ZXJQb3J0ICYmIGRhdGEpIHsKICAgICAgY29uc3QgYXVkaW9BcnJheSA9IGRhdGEubWFwKCh2YWx1ZSkgPT4gdmFsdWUgKiAweDgwMDApOwoKICAgICAgdGhpcy5fcmVjb2duaXplclBvcnQucG9zdE1lc3NhZ2UoCiAgICAgICAgewogICAgICAgICAgYWN0aW9uOiAiYXVkaW9DaHVuayIsCiAgICAgICAgICBkYXRhOiBhdWRpb0FycmF5LAogICAgICAgICAgcmVjb2duaXplcklkOiB0aGlzLl9yZWNvZ25pemVySWQsCiAgICAgICAgICBzYW1wbGVSYXRlLAogICAgICAgIH0sCiAgICAgICAgewogICAgICAgICAgdHJhbnNmZXI6IFthdWRpb0FycmF5LmJ1ZmZlcl0sCiAgICAgICAgfSwKICAgICAgKTsKICAgIH0KICAgIHJldHVybiB0cnVlOwogIH0KfQoKcmVnaXN0ZXJQcm9jZXNzb3IoInJlY29nbml6ZXItcHJvY2Vzc29yIiwgUmVjb2duaXplckF1ZGlvUHJvY2Vzc29yKTsK`,``+import.meta.url);async function Wx(t){let{createModel:n}=await us(async()=>{let{createModel:t}=await import(`./vosk-speech-Fi-g2v8n.js`).then(t=>e(t.t(),1));return{createModel:t}},__vite__mapDeps([2,1]));return n(t)}var Gx=class{model=null;modelBlobUrl=null;checkSupport(){return typeof WebAssembly<`u`&&typeof Worker<`u`&&typeof indexedDB<`u`}async initModel(e){Hx.info(`Initializing Vosk model`,{modelUrl:e});try{this.model=await Wx(e),Hx.info(`Vosk model ready`)}catch(e){let t=e instanceof Error?e.message:String(e);throw Hx.error(`Failed to initialize Vosk model`,{error:t}),Error(`Failed to initialize voice model: ${t}`)}}async initModelFromBytes(e){this.revokeModelBlobUrl();let t=new Uint8Array(e),n=new Blob([t],{type:`application/gzip`});this.modelBlobUrl=URL.createObjectURL(n);try{await this.initModel(this.modelBlobUrl)}catch(e){throw this.revokeModelBlobUrl(),e}}isModelLoaded(){return this.model?.ready===!0}async startMicPipeline(e){if(!this.model?.ready)throw Error(`Voice model is not loaded.`);let t=this.model,n=t.KaldiRecognizer,r=await navigator.mediaDevices.getUserMedia({video:!1,audio:{echoCancellation:!0,noiseSuppression:!0,autoGainControl:!0,channelCount:1}}),i=new AudioContext,a=new n(i.sampleRate),o=i.createMediaStreamSource(r);a.on(`partialresult`,t=>{let n=t.result.partial.trim();n&&e.onPartial(n)}),a.on(`result`,t=>{let n=t.result.text.trim();n&&e.onResult(n)});let s=await Kx(i,t,a,o);return s.audioNode.connect(i.destination),Hx.info(`Vosk mic pipeline started`,{sampleRate:i.sampleRate,processor:s.processorType}),{stop:async()=>{s.audioNode.disconnect(),o.disconnect(),s.messageChannel?.port1.close(),s.messageChannel?.port2.close(),r.getTracks().forEach(e=>e.stop()),a.retrieveFinalResult(),await i.close(),a.remove(),Hx.info(`Vosk mic pipeline stopped`)}}}terminate(){this.model?.terminate(),this.model=null,this.revokeModelBlobUrl()}revokeModelBlobUrl(){this.modelBlobUrl&&=(URL.revokeObjectURL(this.modelBlobUrl),null)}};async function Kx(e,t,n,r){return await qx(e,t,n,r)||(Hx.warn(`AudioWorklet unavailable — falling back to ScriptProcessorNode`),Jx(e,n,r))}async function qx(e,t,n,r){if(!e.audioWorklet)return null;try{await e.audioWorklet.addModule(Ux);let i=new MessageChannel;t.registerPort(i.port1);let a=new AudioWorkletNode(e,`recognizer-processor`,{channelCount:1,numberOfInputs:1,numberOfOutputs:1});return a.port.postMessage({action:`init`,recognizerId:n.id},[i.port2]),r.connect(a),{audioNode:a,messageChannel:i,processorType:`audioworklet`}}catch(e){return Hx.warn(`Failed to initialize AudioWorklet pipeline`,{error:e instanceof Error?e.message:String(e)}),null}}function Jx(e,t,n){let r=e.createScriptProcessor(4096,1,1);return r.onaudioprocess=e=>{try{t.acceptWaveform(e.inputBuffer)}catch(e){Hx.error(`acceptWaveform failed`,{error:e instanceof Error?e.message:String(e)})}},n.connect(r),{audioNode:r,processorType:`scriptprocessor`}}var Yx=`/api/voice-model/download`;function Xx(){return Yx}var Zx=Ix(`voice.stt.vosk-hook`);function Qx(e,t){let n=e.trim(),r=t.trim();return n&&r?`${n} ${r}`:n||r}function $x(){let[e,t]=(0,Z.useState)(`idle`),[n,r]=(0,Z.useState)(null),[i,a]=(0,Z.useState)(``),[o,s]=(0,Z.useState)(null),[c,l]=(0,Z.useState)(0),u=(0,Z.useRef)(null),d=(0,Z.useRef)(null),f=(0,Z.useRef)(null),p=(0,Z.useRef)(null),m=(0,Z.useRef)(!1),h=(0,Z.useRef)(``),g=(0,Z.useRef)(``),_=(0,Z.useCallback)(e=>{m.current=e},[]);(0,Z.useEffect)(()=>()=>{f.current?.stop(),f.current=null,u.current?.terminate(),u.current=null},[]);let v=(0,Z.useCallback)(()=>{a(Qx(h.current,g.current))},[]),y=(0,Z.useCallback)(async()=>{if(e===`ready`||e===`needs-model`||e===`error`)return e;if(p.current)return p.current;let n=Xx();async function i(){t(`checking-support`),_(!1),l(0),s(null),Zx.separator(`VOICE SESSION START`),Zx.info(`Checking Vosk support`,{userAgent:navigator.userAgent,platform:navigator.platform,url:n});try{let e=new Gx;u.current=e;let i=e.checkSupport();if(r(i),!i)return Zx.error(`Vosk not supported in this environment`),t(`error`),s(`Local speech recognition is not supported in this environment.`),`error`;let a=new Vx;d.current=a,Zx.info(`Checking IndexedDB model cache`,{url:n});let o=await a.getCachedModelByUrl(n);return o?(Zx.info(`Cached model found — initializing Vosk`,{sizeBytes:o.byteLength,sizeMB:(o.byteLength/1024/1024).toFixed(2)}),_(!0),t(`initializing`),await e.initModelFromBytes(o),Zx.info(`Vosk model initialized from cache — ready`),t(`ready`),`ready`):(Zx.info(`Model not in cache — download required`),t(`needs-model`),`needs-model`)}catch(e){let n=e instanceof Error?e.message:`Unknown error`;return Zx.error(`Failed to check speech recognition support`,{error:n}),t(`error`),s(`Failed to check speech recognition support: ${n}`),`error`}}let a=i();p.current=a;try{return await a}finally{p.current=null}},[e,_]),b=(0,Z.useCallback)(async()=>{if(!u.current||!d.current)return;let e=Xx();t(`downloading-model`),l(0),s(null),Zx.info(`Model download requested`,{url:e});try{let n=await d.current.loadModelByUrl(e,e=>{l(e),e%10==0&&Zx.debug(`Model download progress`,{progress:e})});Zx.info(`Model download complete — initializing Vosk`,{sizeBytes:n.byteLength,sizeMB:(n.byteLength/1024/1024).toFixed(2)}),t(`initializing`),await u.current.initModelFromBytes(n),Zx.info(`Vosk model initialized after download — ready`),_(!0),t(`ready`)}catch(e){let n=e instanceof Error?e.message:`An unknown error occurred.`;Zx.error(`Model download or initialization failed`,{error:n}),t(`needs-model`),s(n)}},[_]);return{state:e,isSupported:n,transcript:i,error:o,downloadProgress:c,startListening:(0,Z.useCallback)(async()=>{if(!(!u.current||!m.current)){if(t(`requesting-mic`),s(null),h.current=``,g.current=``,a(``),Zx.separator(`RECORDING START`),!navigator.mediaDevices?.getUserMedia){Zx.error(`navigator.mediaDevices.getUserMedia not available`),t(`ready`),s(`Microphone is not available in this environment.`);return}try{f.current=await u.current.startMicPipeline({onPartial:e=>{g.current=e,v()},onResult:e=>{let t=h.current.trim();h.current=t?`${t} ${e}`:e,g.current=``,v()}}),t(`recording`),Zx.info(`Recording started`)}catch(e){t(`ready`),e instanceof DOMException&&e.name===`NotAllowedError`?s(`Microphone access was denied. Please allow microphone access to use voice input.`):e instanceof DOMException&&e.name===`NotFoundError`?s(`No microphone was found. Please connect a microphone to use voice input.`):s(`Microphone error: ${e instanceof Error?e.message:`Unknown error`}`)}}},[v]),stopListening:(0,Z.useCallback)(async()=>{if(!f.current){Zx.info(`stopListening called but no active recording`),m.current&&t(`ready`);return}t(`transcribing`),Zx.info(`Stopping recording`);try{await f.current.stop(),g.current=``,v(),t(`ready`),Zx.info(`Recording stopped`)}catch(e){let n=e instanceof Error?e.message:`Unknown error`;Zx.error(`Failed to stop recording`,{error:n}),t(`ready`),s(`Failed to stop recording: ${n}`)}finally{f.current=null}},[v]),requestModelDownload:b,ensureReady:y,resetTranscript:(0,Z.useCallback)(()=>{h.current=``,g.current=``,a(``),s(null)},[])}}function eS(){let e=(0,Q.c)(22),t=$x(),n=Bx();if(Pr()){let n;return e[0]!==t.downloadProgress||e[1]!==t.ensureReady||e[2]!==t.error||e[3]!==t.isSupported||e[4]!==t.requestModelDownload||e[5]!==t.resetTranscript||e[6]!==t.startListening||e[7]!==t.state||e[8]!==t.stopListening||e[9]!==t.transcript?(n={state:t.state,isSupported:t.isSupported,usesLocalModel:!0,transcript:t.transcript,error:t.error,downloadProgress:t.downloadProgress,startListening:t.startListening,stopListening:t.stopListening,requestModelDownload:t.requestModelDownload,ensureReady:t.ensureReady,resetTranscript:t.resetTranscript},e[0]=t.downloadProgress,e[1]=t.ensureReady,e[2]=t.error,e[3]=t.isSupported,e[4]=t.requestModelDownload,e[5]=t.resetTranscript,e[6]=t.startListening,e[7]=t.state,e[8]=t.stopListening,e[9]=t.transcript,e[10]=n):n=e[10],n}let r;return e[11]!==n.downloadProgress||e[12]!==n.ensureReady||e[13]!==n.error||e[14]!==n.isSupported||e[15]!==n.requestModelDownload||e[16]!==n.resetTranscript||e[17]!==n.startListening||e[18]!==n.state||e[19]!==n.stopListening||e[20]!==n.transcript?(r={state:n.state,isSupported:n.isSupported,usesLocalModel:!1,transcript:n.transcript,error:n.error,downloadProgress:n.downloadProgress,startListening:n.startListening,stopListening:n.stopListening,requestModelDownload:n.requestModelDownload,ensureReady:n.ensureReady,resetTranscript:n.resetTranscript},e[11]=n.downloadProgress,e[12]=n.ensureReady,e[13]=n.error,e[14]=n.isSupported,e[15]=n.requestModelDownload,e[16]=n.resetTranscript,e[17]=n.startListening,e[18]=n.state,e[19]=n.stopListening,e[20]=n.transcript,e[21]=r):r=e[21],r}var tS=new Map;function nS(e){let t=tS.get(e);if(t)return t;let n=Ut(e);return tS.set(e,n),n}function rS({key:e,defaultValue:t,logScope:n,settingLabel:r}){let[i,a]=(0,Z.useState)(t),[o,s]=(0,Z.useState)(!0),[c,l]=(0,Z.useState)(!1);(0,Z.useEffect)(()=>{let t=!1,i=nS(n);async function o(){try{let n=await Zr();t||a(n[e])}catch(e){i.error(`Failed to load ${r} setting:`,e)}finally{t||s(!1)}}return o(),()=>{t=!0}},[e,n,r]);async function u(t){let i=nS(n);l(!0);try{a((await Jo({[e]:t}))[e])}catch(e){throw i.error(`Failed to update ${r} setting:`,e),e}finally{l(!1)}}return{isEnabled:i,isLoading:o,isSaving:c,updateIsEnabled:u}}function iS(){let e=(0,Q.c)(1),t;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t={key:`voiceAiProcessing`,defaultValue:!0,logScope:`app.use-voice-ai-processing.hook`,settingLabel:`voice AI processing`},e[0]=t):t=e[0],rS(t)}var aS=Z.forwardRef((e,t)=>{let n=(0,Q.c)(13),r,i,a;n[0]===e?(r=n[1],i=n[2],a=n[3]):({className:r,value:a,...i}=e,n[0]=e,n[1]=r,n[2]=i,n[3]=a);let o;n[4]===r?o=n[5]:(o=G(`relative h-4 w-full overflow-hidden rounded-full bg-secondary`,r),n[4]=r,n[5]=o);let s=`translateX(-${100-(a||0)}%)`,c;n[6]===s?c=n[7]:(c=(0,$.jsx)(Sr,{className:`h-full w-full flex-1 bg-primary transition-all`,style:{transform:s}}),n[6]=s,n[7]=c);let l;return n[8]!==i||n[9]!==t||n[10]!==o||n[11]!==c?(l=(0,$.jsx)(hn,{ref:t,className:o,...i,children:c}),n[8]=i,n[9]=t,n[10]=o,n[11]=c,n[12]=l):l=n[12],l});aS.displayName=hn.displayName;function oS(e,t,n){return t?`Preparing voice input…`:n<100?`Downloading voice model… ${n}%`:e?`Finishing download…`:`Downloading voice model…`}function sS(e){let t=(0,Q.c)(24),{open:n,onOpenChange:r,onRetry:i,isDownloading:a,isInitializing:o,progress:s,error:c}=e,l=a||o,u;t[0]!==l||t[1]!==r?(u=function(e){l&&!e||r(e)},t[0]=l,t[1]=r,t[2]=u):u=t[2];let d=u,f=c?`Voice model download failed`:`Setting up voice input`,p;t[3]===f?p=t[4]:(p=(0,$.jsx)(qa,{children:f}),t[3]=f,t[4]=p);let m=c?`The English voice model could not be downloaded or prepared.`:`First-time setup downloads a ~40 MB English speech model to your device.`,h;t[5]===m?h=t[6]:(h=(0,$.jsx)(_i,{children:m}),t[5]=m,t[6]=h);let g;t[7]!==p||t[8]!==h?(g=(0,$.jsxs)(Dr,{children:[p,h]}),t[7]=p,t[8]=h,t[9]=g):g=t[9];let _;t[10]!==c||t[11]!==a||t[12]!==o||t[13]!==r||t[14]!==i||t[15]!==s?(_=c?(0,$.jsxs)(`div`,{className:`space-y-4 py-2`,children:[(0,$.jsx)(mo,{variant:`error`,className:`mb-0`,children:c}),(0,$.jsxs)(Xa,{children:[(0,$.jsx)(Hr,{variant:`outline`,onClick:()=>r(!1),children:`Cancel`}),(0,$.jsx)(Hr,{onClick:i,children:`Try again`})]})]}):(0,$.jsxs)(`div`,{className:`space-y-4 py-2`,children:[(0,$.jsx)(mo,{variant:`info`,className:`mb-0`,children:`One-time download. After this finishes, voice input works offline and you will not need to download the model again.`}),(0,$.jsxs)(`div`,{className:`space-y-3`,children:[(0,$.jsx)(Ka,{title:oS(a,o,s)}),(0,$.jsx)(aS,{value:o?100:s,className:`w-full`}),(0,$.jsx)(`p`,{className:G(U.bodyMuted,`text-center`),children:o?`Loading the model into memory. This usually takes a few seconds.`:s<100?`About 40 MB — kept on this device for future use.`:`Saving the model locally…`})]})]}),t[10]=c,t[11]=a,t[12]=o,t[13]=r,t[14]=i,t[15]=s,t[16]=_):_=t[16];let v;t[17]!==g||t[18]!==_?(v=(0,$.jsxs)(Ir,{children:[g,_]}),t[17]=g,t[18]=_,t[19]=v):v=t[19];let y;return t[20]!==d||t[21]!==n||t[22]!==v?(y=(0,$.jsx)(Ni,{open:n,onOpenChange:d,children:v}),t[20]=d,t[21]=n,t[22]=v,t[23]=y):y=t[23],y}function cS({onTranscript:e,onVoiceSessionStart:t,threadId:n,provider:r,model:i,children:a}){let{state:o,isSupported:s,usesLocalModel:c,transcript:l,error:u,downloadProgress:d,startListening:f,stopListening:p,requestModelDownload:m,ensureReady:h,resetTranscript:g}=eS(),{isEnabled:_}=iS(),{toast:v}=ic(),[y,b]=(0,Z.useState)(!1),[x,S]=(0,Z.useState)(!1),C=(0,Z.useRef)(``),w=(0,Z.useRef)(null),T=(0,Z.useRef)(`idle`),E=o===`recording`,D=o===`transcribing`,O=E||D,k=o===`needs-model`,A=o===`downloading-model`,j=o===`initializing`,M=A||j,N=o===`checking-support`;(0,Z.useEffect)(()=>{u&&u!==w.current&&!y&&v({title:`Voice Input Error`,description:u,variant:`destructive`}),w.current=u},[u,y,v]),(0,Z.useEffect)(()=>{if(l&&l!==C.current){let t=l.substring(C.current.length);C.current=l,e(t)}},[l,e]),(0,Z.useEffect)(()=>{l||(C.current=``)},[l]),(0,Z.useEffect)(()=>{let t=T.current;if(T.current=o,(t===`recording`||t===`transcribing`)&&o===`ready`&&_&&C.current){let t=C.current;S(!0),qi(t,{threadId:n,provider:r,model:i}).then(t=>{e(t,{replace:!0})}).catch(()=>{e(t,{replace:!0})}).finally(()=>{S(!1)})}},[o,_,e,n,r,i]);function P(){b(!0),m()}let F=(0,Z.useCallback)(async()=>{if(O){p();return}if(k){P();return}if(o===`ready`){g(),t?.(),f();return}if(o===`idle`){let e=await h();e===`needs-model`?P():e===`ready`&&(g(),t?.(),f())}},[k,O,o,h,p,f,g,m,t]),I=(0,Z.useCallback)(()=>{m()},[m]);(0,Z.useEffect)(()=>{o===`ready`&&y&&b(!1)},[o,y]);let L=(0,Z.useCallback)(()=>N?`Checking voice input support...`:s===!1?`Voice input not supported in this browser`:u||(M?`Downloading speech model...`:x?`Processing transcription`:D?`Transcribing...`:E?`Stop listening`:k?`Click to download speech model`:`Start listening`),[u,x,N,M,E,D,s,k]),R=(0,Z.useCallback)(()=>M||D||x?(0,$.jsx)(ln,{className:`h-3 w-3 animate-spin`}):E?(0,$.jsxs)(`span`,{className:`recording-waveform`,"aria-hidden":!0,children:[(0,$.jsx)(`span`,{className:`recording-waveform-bar`,style:{animationDelay:`0ms`}}),(0,$.jsx)(`span`,{className:`recording-waveform-bar`,style:{animationDelay:`150ms`}}),(0,$.jsx)(`span`,{className:`recording-waveform-bar`,style:{animationDelay:`75ms`}}),(0,$.jsx)(`span`,{className:`recording-waveform-bar`,style:{animationDelay:`225ms`}})]}):(0,$.jsx)(at,{className:`h-3 w-3`}),[x,M,E,D]),z=L(),B=O||x?z:`Voice input`,V=a({onClick:F,disabled:N||M||D||x||s===!1,icon:R(),label:z,isRecording:E,isTranscribing:D||x,isDownloading:M,needsModel:k,isSupported:s!==!1});return(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`style`,{children:`
3304
+ `;function Ih(e,t){return e?.status===`running`?`skip-running`:(e?.status===`success`||e?.status===`error`)&&e.code===t?`skip-same-code`:`start`}function Lh(e,t){return e===`running`?!0:e===`success`||e===`error`?!1:t}function Rh(e,t){return`${e}\0${t}`}var zh=new Map,Bh=new Map,Vh=new Map,Hh=Ut(`browser.js-executor`),Uh=new Map,Wh=null;function Gh(){return Wh||=URL.createObjectURL(new Blob([Fh],{type:`application/javascript`})),Wh}function Kh(e,t){return zh.get(Rh(t,e))}function qh(e,t){return zh.get(Rh(t,e))?.proxiedCalls??[]}function Jh(e,t,n){let r=Rh(t,e),i=Uh.get(r);return i||(i=new Set,Uh.set(r,i)),i.add(n),()=>{i.delete(n),i.size===0&&Uh.delete(r)}}function Yh(e){let t=Uh.get(e);if(t)for(let e of t)e()}function Xh(e){let t=Vh.get(e);t&&(clearInterval(t),Vh.delete(e))}function Zh(e){if(Vh.has(e))return;let t=setInterval(()=>{let t=zh.get(e);if(!t||t.status!==`running`){Xh(e);return}let n=Date.now(),r=!1;t.proxiedCalls=t.proxiedCalls.map(function(e){if(e.status!==`running`||e.toolName!==`bash`||e.startedAt==null)return e;let t=Math.floor((n-e.startedAt)/6e4);return t>=1&&t!==e.longRunningMinutes?(r=!0,{...e,longRunningMinutes:t}):e}),r&&Yh(e)},6e4);Vh.set(e,t)}function Qh(e,t){Xh(e),Bh.delete(e),zh.set(e,t),Yh(e)}var $h=new Map;async function eg(e,t){let n=$h.get(t);if(n)return n;let r;return r=(async()=>{try{let n=await fetch(`${e}/api/browser-js/catalog?threadId=${encodeURIComponent(t)}`);if(!n.ok)return{smartJsEnabled:!1,tools:[]};let r=await n.json();return{smartJsEnabled:r.smartJsEnabled===!0,tools:Array.isArray(r.tools)?r.tools:[]}}catch(e){return Hh.warn(`Failed to load Smart JS catalog`,e),{smartJsEnabled:!1,tools:[]}}finally{$h.get(t)===r&&$h.delete(t)}})(),$h.set(t,r),r}async function tg(e,t,n,r){let i=await fetch(e+`/api/browser-js/execute-tool`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({threadId:t,toolName:n,params:r})});if(!i.ok){let e=await i.text();try{let t=JSON.parse(e).error||{};e=t.details||t.message||e}catch{}let t=l(e,pe,`run_js tool error`);return{text:null,error:`Tool `+n+` failed: `+t.text,details:t.truncated?{proxyTruncated:!0,totalBytes:t.totalBytes}:void 0}}let a=await i.json(),o=a.content&&a.content[0]?a.content[0].text??null:null,s=a.details&&typeof a.details==`object`?a.details:void 0;if(o==null)return{text:null,error:null,details:s};let c=l(o,f);return c.truncated?{text:c.text,error:null,details:{...s,proxyTruncated:!0,totalBytes:c.totalBytes}}:{text:o,error:null,details:s}}function ng(e,t,n){let r=Rh(n,e),i=Ih(zh.get(r),t);if(i===`skip-running`){Qi(e,n).catch(e=>{Hh.warn(`Failed to re-acknowledge in-flight run_js`,e)});return}if(i===`skip-same-code`)return;let a=Bh.get(r);a&&(a.terminate(),Bh.delete(r)),Xh(r),zh.set(r,{status:`running`,code:t,proxiedCalls:[]}),Yh(r);let o=Fa();Qi(e,n).catch(e=>{Hh.warn(`Failed to acknowledge run_js start`,e)}),(async()=>{let i=new Worker(Gh());Bh.set(r,i);try{let a=await eg(o,n),s=async a=>{let s=a.data;if(s.type===`callTool`&&s.id&&s.toolName){let e=zh.get(r),t={id:s.id,toolName:s.toolName,params:s.params,status:`running`,startedAt:s.toolName===`bash`?Date.now():void 0};e&&(e.proxiedCalls=[...e.proxiedCalls,t],Yh(r),s.toolName===`bash`&&Zh(r));let a=await tg(o,n,s.toolName,s.params),c=zh.get(r);c&&(c.proxiedCalls=c.proxiedCalls.map(e=>e.id===s.id?{...e,status:a.error?`error`:`success`,text:a.text,error:a.error,details:a.details}:e),Yh(r)),i.postMessage({type:`callToolResult`,id:s.id,result:a});return}if(s.type===`done`&&s.toolCallId===e){i.terminate(),Qh(r,{status:`success`,code:t,result:s.result,proxiedCalls:zh.get(r)?.proxiedCalls??[]}),await ia(e,s.result,n);return}if(s.type===`error`&&s.toolCallId===e){i.terminate();let a=s.error??`Unknown worker error`;Qh(r,{status:`error`,code:t,error:a,proxiedCalls:zh.get(r)?.proxiedCalls??[]});try{await ia(e,{error:a},n)}catch(e){Hh.error(`Failed to submit browser JS error result`,e)}}};i.addEventListener(`message`,e=>{s(e)}),i.addEventListener(`error`,a=>{let o=a.message||`Web Worker failed`;Qh(r,{status:`error`,code:t,error:o,proxiedCalls:zh.get(r)?.proxiedCalls??[]}),i.terminate(),ia(e,{error:o},n).catch(e=>{Hh.error(`Failed to submit browser JS worker error`,e)})}),i.postMessage({type:`execute`,toolCallId:e,code:t,smartJsEnabled:a.smartJsEnabled,catalog:a.tools})}catch(a){i.terminate();let o=a instanceof Error?a.stack||a.message:String(a);Qh(r,{status:`error`,code:t,error:o,proxiedCalls:zh.get(r)?.proxiedCalls??[]});try{await ia(e,{error:o},n)}catch(e){Hh.error(`Failed to submit browser JS error result`,e)}}})()}var rg=`run_js`;function ig(e){return e==null?null:typeof e==`string`?e:JSON.stringify(e,null,2)}function ag(e){if(e&&typeof e==`object`&&`command`in e){let t=e.command;if(typeof t==`string`&&t.trim()){let e=t.trim().replace(/\s+/g,` `);return e.length>72?`${e.slice(0,72)}…`:e}}return`bash command`}function og(e){return e.toolName===`bash`&&e.status===`running`&&e.longRunningMinutes!=null&&e.longRunningMinutes>=1?`${ag(e.params)} still running (${e.longRunningMinutes} min)`:e.error??(typeof e.text==`string`&&e.text.length>0?e.text.length>80?`${e.text.slice(0,80)}…`:e.text:null)}function sg(e){let t=(0,Q.c)(18),{call:n}=e,r=n.status===`running`,i=n.status===`error`,a;t[0]!==n.toolName||t[1]!==r?(a=r?ne(n.toolName):h(n.toolName),t[0]=n.toolName,t[1]=r,t[2]=a):a=t[2];let o=a,s;t[3]===n?s=t[4]:(s=og(n),t[3]=n,t[4]=s);let c=s,l;t[5]!==n.toolName||t[6]!==o||t[7]!==r?(l=(0,$.jsx)(fp,{toolName:n.toolName,displayName:o,isActive:r,showProgress:!1,className:`shrink-0`}),t[5]=n.toolName,t[6]=o,t[7]=r,t[8]=l):l=t[8];let u;t[9]===c?u=t[10]:(u=c?(0,$.jsx)(`span`,{className:G(U.caption,`font-mono truncate whitespace-nowrap min-w-0 flex-1`),children:c}):null,t[9]=c,t[10]=u);let d;t[11]!==n.toolName||t[12]!==i?(d=i?(0,$.jsx)(nt,{"aria-label":`${n.toolName} failed`,className:`h-3.5 w-3.5 shrink-0 text-destructive`}):null,t[11]=n.toolName,t[12]=i,t[13]=d):d=t[13];let f;return t[14]!==l||t[15]!==u||t[16]!==d?(f=(0,$.jsxs)(`div`,{className:`py-0.5 flex items-center gap-2 min-w-0 w-full pl-4`,children:[l,u,d]}),t[14]=l,t[15]=u,t[16]=d,t[17]=f):f=t[17],f}function cg(e){let t=(0,Q.c)(13),{displayName:n,isActive:r,isError:i,summaryLabel:a,canOpenDetails:o,onOpenDetails:s}=e,c;t[0]!==n||t[1]!==r?(c=(0,$.jsx)(fp,{toolName:rg,displayName:n,isActive:r,showProgress:!1,className:`shrink-0`}),t[0]=n,t[1]=r,t[2]=c):c=t[2];let l;t[3]!==o||t[4]!==s||t[5]!==a?(l=a?o?(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,onClick:s,className:G(U.caption,`font-mono hover:underline truncate whitespace-nowrap min-w-0 flex-1 cursor-pointer text-left`),children:a})}),(0,$.jsx)(Fr,{children:`View code and result`})]}):(0,$.jsx)(`span`,{className:G(U.caption,`font-mono truncate whitespace-nowrap min-w-0 flex-1`),children:a}):null,t[3]=o,t[4]=s,t[5]=a,t[6]=l):l=t[6];let u;t[7]===i?u=t[8]:(u=i?(0,$.jsx)(nt,{"aria-label":`Run JS failed`,className:`h-3.5 w-3.5 shrink-0 text-destructive`}):null,t[7]=i,t[8]=u);let d;return t[9]!==c||t[10]!==l||t[11]!==u?(d=(0,$.jsxs)(`div`,{className:`py-0.5 flex items-center gap-2 min-w-0 w-full flex-wrap`,children:[c,l,u]}),t[9]=c,t[10]=l,t[11]=u,t[12]=d):d=t[12],d}function lg(e){let t=(0,Q.c)(4),{calls:n}=e;if(n.length===0)return null;let r;t[0]===n?r=t[1]:(r=n.map(ug),t[0]=n,t[1]=r);let i;return t[2]===r?i=t[3]:(i=(0,$.jsx)(`div`,{className:`flex flex-col min-w-0 w-full border-l border-border/60 ml-2`,children:r}),t[2]=r,t[3]=i),i}function ug(e){return(0,$.jsx)(sg,{call:e},e.id)}function dg(e){let t=(0,Q.c)(15),{open:n,onOpenChange:r,title:i,code:a,errorDetails:o,resultText:s}=e,c;t[0]===a?c=t[1]:(c=a?(0,$.jsx)(`pre`,{className:Qf({padding:`3`}),children:a}):null,t[0]=a,t[1]=c);let l;t[2]===o?l=t[3]:(l=o?(0,$.jsx)(`pre`,{className:Qf({padding:`3`,className:`text-destructive`}),children:o}):null,t[2]=o,t[3]=l);let u;t[4]===s?u=t[5]:(u=s==null?null:(0,$.jsx)(`pre`,{className:Qf({padding:`3`}),children:s}),t[4]=s,t[5]=u);let d;t[6]!==c||t[7]!==l||t[8]!==u?(d=(0,$.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[c,l,u]}),t[6]=c,t[7]=l,t[8]=u,t[9]=d):d=t[9];let f;return t[10]!==r||t[11]!==n||t[12]!==d||t[13]!==i?(f=(0,$.jsx)($f,{open:n,onOpenChange:r,title:i,content:``,body:d}),t[10]=r,t[11]=n,t[12]=d,t[13]=i,t[14]=f):f=t[14],f}function fg({toolCallId:e,intention:t,code:n,resultContent:r,resultIsError:i,showActive:a=!1}){let o=X(e=>e.selectedThreadId),{todos:s,setTodos:c}=(0,Z.useContext)(Vm),l=(0,Z.useRef)(new Set),u=(0,Z.useRef)(s);u.current=s;let d=r!==void 0,f=o?Kh(e,o):void 0,[p,m]=(0,Z.useState)(()=>f?.status?f.status:d?i?`error`:`success`:a?`running`:`success`),[g,_]=(0,Z.useState)(()=>f?.status===`success`?ig(f.result):d&&!i&&r||null),[v,y]=(0,Z.useState)(()=>f?.error?f.error:d&&i?r||`Run JS failed`:null),[b,x]=(0,Z.useState)(()=>o?qh(e,o):[]),[S,C]=(0,Z.useState)(!1);(0,Z.useEffect)(()=>{l.current=new Set},[e,o]),(0,Z.useEffect)(()=>{if(o)return Jh(e,o,()=>{let t=Kh(e,o);t&&(m(t.status),x(t.proxiedCalls),t.status===`success`?_(ig(t.result)):t.status===`error`&&y(t.error??null))})},[e,o]),(0,Z.useEffect)(()=>{let e=u.current,t=!1;for(let n of b){if(n.toolName!==`todo`||n.status!==`success`||l.current.has(n.id))continue;let r=Wm(e,n);l.current.add(n.id),r&&(e=r,t=!0)}t&&c(e,Date.now())},[b,c]),(0,Z.useEffect)(()=>{!o||!a||ng(e,n,o)},[e,n,o,a]);let w=o?Kh(e,o)?.status:void 0,T=Lh(w,a);return{resultText:g,errorDetails:v,proxiedCalls:b,dialogOpen:S,setDialogOpen:C,isActive:T,isError:(w??p)===`error`,displayName:T?ne(rg):h(rg),summaryLabel:t.trim()||(T?null:`View output`),canOpenDetails:!T&&!!(n||g||v)}}function pg(e){let t=(0,Q.c)(24),{intention:n,code:r}=e,{resultText:i,errorDetails:a,proxiedCalls:o,dialogOpen:s,setDialogOpen:c,isActive:l,isError:u,displayName:d,summaryLabel:f,canOpenDetails:p}=fg(e),m;t[0]===c?m=t[1]:(m=()=>c(!0),t[0]=c,t[1]=m);let h;t[2]!==p||t[3]!==d||t[4]!==l||t[5]!==u||t[6]!==f||t[7]!==m?(h=(0,$.jsx)(cg,{displayName:d,isActive:l,isError:u,summaryLabel:f,canOpenDetails:p,onOpenDetails:m}),t[2]=p,t[3]=d,t[4]=l,t[5]=u,t[6]=f,t[7]=m,t[8]=h):h=t[8];let g;t[9]===o?g=t[10]:(g=(0,$.jsx)(lg,{calls:o}),t[9]=o,t[10]=g);let _;t[11]!==p||t[12]!==r||t[13]!==s||t[14]!==d||t[15]!==a||t[16]!==n||t[17]!==i||t[18]!==c?(_=p?(0,$.jsx)(dg,{open:s,onOpenChange:c,title:n.trim()||d,code:r,errorDetails:a,resultText:i}):null,t[11]=p,t[12]=r,t[13]=s,t[14]=d,t[15]=a,t[16]=n,t[17]=i,t[18]=c,t[19]=_):_=t[19];let v;return t[20]!==h||t[21]!==g||t[22]!==_?(v=(0,$.jsxs)($.Fragment,{children:[h,g,_]}),t[20]=h,t[21]=g,t[22]=_,t[23]=v):v=t[23],v}function mg(e){let t=e?.trim();return!!t&&t!==`__thread__`}function hg(e,t,n){return mg(n)?e.some(e=>e.threadId===t&&e.conversationId===n):!1}function gg(e,t){return t===e.selectedThreadId?e.extraChatPanes:e.threadMultiPaneStates[t]?.extraChatPanes??{}}function _g(e,t,n){if(!mg(n))return;let r=gg(e,t);for(let[e,t]of Object.entries(r))if(t.conversationId===n)return e;let i=t===e.selectedThreadId;if(i&&e.primaryConversationId===n)return Ms;let a=Object.keys(r).length>0;if(!(i&&a&&e.primaryConversationId!==n))return Ms}function vg(e,t,n){let r=[],i=new Set;for(let a of t){if(!mg(a.conversationId)||n.isRecentlyFinalized(a.threadId)||n.isThreadBeingCreated(a.threadId))continue;let t=_g(e,a.threadId,a.conversationId);if(!t||n.hasSession(a.threadId,t))continue;let o=`${a.threadId}:${t}:${a.conversationId}`;i.has(o)||(i.add(o),r.push({threadId:a.threadId,paneId:t,conversationId:a.conversationId}))}return r}var yg=new Set,bg=new Map,xg=5e3;function Sg(e){yg.add(e);let t=bg.get(e);t&&clearTimeout(t),bg.set(e,setTimeout(()=>{yg.delete(e),bg.delete(e)},xg))}function Cg(e){return yg.has(e)}function wg(e){return e.filter(e=>!yg.has(e))}var Tg;(function(e){e.Unimplemented=`UNIMPLEMENTED`,e.Unavailable=`UNAVAILABLE`})(Tg||={});var Eg=class extends Error{constructor(e,t,n){super(e),this.message=e,this.code=t,this.data=n}},Dg=e=>e?.androidBridge?`android`:e?.webkit?.messageHandlers?.bridge?`ios`:`web`,Og=e=>{let t=e.CapacitorCustomPlatform||null,n=e.Capacitor||{},r=n.Plugins=n.Plugins||{},i=()=>t===null?Dg(e):t.name,a=()=>i()!==`web`,o=e=>!!(l.get(e)?.platforms.has(i())||s(e)),s=e=>n.PluginHeaders?.find(t=>t.name===e),c=t=>e.console.error(t),l=new Map;return n.convertFileSrc||=e=>e,n.getPlatform=i,n.handleError=c,n.isNativePlatform=a,n.isPluginAvailable=o,n.registerPlugin=(e,a={})=>{let o=l.get(e);if(o)return console.warn(`Capacitor plugin "${e}" already registered. Cannot register plugins twice.`),o.proxy;let c=i(),u=s(e),d,f=async()=>(!d&&c in a?d=d=typeof a[c]==`function`?await a[c]():a[c]:t!==null&&!d&&`web`in a&&(d=d=typeof a.web==`function`?await a.web():a.web),d),p=(t,r)=>{if(u){let i=u?.methods.find(e=>r===e.name);if(i)return i.rtype===`promise`?t=>n.nativePromise(e,r.toString(),t):(t,i)=>n.nativeCallback(e,r.toString(),t,i);if(t)return t[r]?.bind(t)}else if(t)return t[r]?.bind(t);else throw new Eg(`"${e}" plugin is not implemented on ${c}`,Tg.Unimplemented)},m=t=>{let n,r=(...r)=>{let i=f().then(i=>{let a=p(i,t);if(a){let e=a(...r);return n=e?.remove,e}else throw new Eg(`"${e}.${t}()" is not implemented on ${c}`,Tg.Unimplemented)});return t===`addListener`&&(i.remove=async()=>n()),i};return r.toString=()=>`${t.toString()}() { [capacitor code] }`,Object.defineProperty(r,"name",{value:t,writable:!1,configurable:!1}),r},h=m(`addListener`),g=m(`removeListener`),_=(e,t)=>{let n=h({eventName:e},t),r=async()=>{g({eventName:e,callbackId:await n},t)},i=new Promise(e=>n.then(()=>e({remove:r})));return i.remove=async()=>{console.warn(`Using addListener() without 'await' is deprecated.`),await r()},i},v=new Proxy({},{get(e,t){switch(t){case`$$typeof`:return;case`toJSON`:return()=>({});case`addListener`:return u?_:h;case`removeListener`:return g;default:return m(t)}}});return r[e]=v,l.set(e,{name:e,proxy:v,platforms:new Set([...Object.keys(a),...u?[c]:[]])}),v},n.Exception=Eg,n.DEBUG=!!n.DEBUG,n.isLoggingEnabled=!!n.isLoggingEnabled,n},kg=(e=>e.Capacitor=Og(e))(typeof globalThis<`u`?globalThis:typeof self<`u`?self:typeof window<`u`?window:typeof global<`u`?global:{}),Ag=kg.registerPlugin,jg=class{constructor(){this.listeners={},this.retainedEventArguments={},this.windowListeners={}}addListener(e,t){let n=!1;this.listeners[e]||(this.listeners[e]=[],n=!0),this.listeners[e].push(t);let r=this.windowListeners[e];return r&&!r.registered&&this.addWindowListener(r),n&&this.sendRetainedArgumentsForEvent(e),Promise.resolve({remove:async()=>this.removeListener(e,t)})}async removeAllListeners(){this.listeners={};for(let e in this.windowListeners)this.removeWindowListener(this.windowListeners[e]);this.windowListeners={}}notifyListeners(e,t,n){let r=this.listeners[e];if(!r){if(n){let n=this.retainedEventArguments[e];n||=[],n.push(t),this.retainedEventArguments[e]=n}return}r.forEach(e=>e(t))}hasListeners(e){return!!this.listeners[e]?.length}registerWindowListener(e,t){this.windowListeners[t]={registered:!1,windowEventName:e,pluginEventName:t,handler:e=>{this.notifyListeners(t,e)}}}unimplemented(e=`not implemented`){return new kg.Exception(e,Tg.Unimplemented)}unavailable(e=`not available`){return new kg.Exception(e,Tg.Unavailable)}async removeListener(e,t){let n=this.listeners[e];if(!n)return;let r=n.indexOf(t);this.listeners[e].splice(r,1),this.listeners[e].length||this.removeWindowListener(this.windowListeners[e])}addWindowListener(e){window.addEventListener(e.windowEventName,e.handler),e.registered=!0}removeWindowListener(e){e&&(window.removeEventListener(e.windowEventName,e.handler),e.registered=!1)}sendRetainedArgumentsForEvent(e){let t=this.retainedEventArguments[e];t&&(delete this.retainedEventArguments[e],t.forEach(t=>{this.notifyListeners(e,t)}))}},Mg=e=>encodeURIComponent(e).replace(/%(2[346B]|5E|60|7C)/g,decodeURIComponent).replace(/[()]/g,escape),Ng=e=>e.replace(/(%[\dA-F]{2})+/gi,decodeURIComponent),Pg=class extends jg{async getCookies(){let e=document.cookie,t={};return e.split(`;`).forEach(e=>{if(e.length<=0)return;let[n,r]=e.replace(/=/,`CAP_COOKIE`).split(`CAP_COOKIE`);n=Ng(n).trim(),r=Ng(r).trim(),t[n]=r}),t}async setCookie(e){try{let t=Mg(e.key),n=Mg(e.value),r=e.expires?`; expires=${e.expires.replace(`expires=`,``)}`:``,i=(e.path||`/`).replace(`path=`,``),a=e.url!=null&&e.url.length>0?`domain=${e.url}`:``;document.cookie=`${t}=${n||``}${r}; path=${i}; ${a};`}catch(e){return Promise.reject(e)}}async deleteCookie(e){try{document.cookie=`${e.key}=; Max-Age=0`}catch(e){return Promise.reject(e)}}async clearCookies(){try{let e=document.cookie.split(`;`)||[];for(let t of e)document.cookie=t.replace(/^ +/,``).replace(/=.*/,`=;expires=${new Date().toUTCString()};path=/`)}catch(e){return Promise.reject(e)}}async clearAllCookies(){try{await this.clearCookies()}catch(e){return Promise.reject(e)}}};Ag(`CapacitorCookies`,{web:()=>new Pg});var Fg=async e=>new Promise((t,n)=>{let r=new FileReader;r.onload=()=>{let e=r.result;t(e.indexOf(`,`)>=0?e.split(`,`)[1]:e)},r.onerror=e=>n(e),r.readAsDataURL(e)}),Ig=(e={})=>{let t=Object.keys(e);return Object.keys(e).map(e=>e.toLocaleLowerCase()).reduce((n,r,i)=>(n[r]=e[t[i]],n),{})},Lg=(e,t=!0)=>e?Object.entries(e).reduce((e,n)=>{let[r,i]=n,a,o;return Array.isArray(i)?(o=``,i.forEach(e=>{a=t?encodeURIComponent(e):e,o+=`${r}=${a}&`}),o.slice(0,-1)):(a=t?encodeURIComponent(i):i,o=`${r}=${a}`),`${e}&${o}`},``).substr(1):null,Rg=(e,t={})=>{let n=Object.assign({method:e.method||`GET`,headers:e.headers},t),r=Ig(e.headers)[`content-type`]||``;if(typeof e.data==`string`)n.body=e.data;else if(r.includes(`application/x-www-form-urlencoded`)){let t=new URLSearchParams;for(let[n,r]of Object.entries(e.data||{}))t.set(n,r);n.body=t.toString()}else if(r.includes(`multipart/form-data`)||e.data instanceof FormData){let t=new FormData;if(e.data instanceof FormData)e.data.forEach((e,n)=>{t.append(n,e)});else for(let n of Object.keys(e.data))t.append(n,e.data[n]);n.body=t;let r=new Headers(n.headers);r.delete(`content-type`),n.headers=r}else (r.includes(`application/json`)||typeof e.data==`object`)&&(n.body=JSON.stringify(e.data));return n},zg=class extends jg{async request(e){let t=Rg(e,e.webFetchExtra),n=Lg(e.params,e.shouldEncodeUrlParams),r=n?`${e.url}?${n}`:e.url,i=await fetch(r,t),a=i.headers.get(`content-type`)||``,{responseType:o=`text`}=i.ok?e:{};a.includes(`application/json`)&&(o=`json`);let s,c;switch(o){case`arraybuffer`:case`blob`:c=await i.blob(),s=await Fg(c);break;case`json`:s=await i.json();break;default:s=await i.text()}let l={};return i.headers.forEach((e,t)=>{l[t]=e}),{data:s,headers:l,status:i.status,url:i.url}}async get(e){return this.request(Object.assign(Object.assign({},e),{method:`GET`}))}async post(e){return this.request(Object.assign(Object.assign({},e),{method:`POST`}))}async put(e){return this.request(Object.assign(Object.assign({},e),{method:`PUT`}))}async patch(e){return this.request(Object.assign(Object.assign({},e),{method:`PATCH`}))}async delete(e){return this.request(Object.assign(Object.assign({},e),{method:`DELETE`}))}};Ag(`CapacitorHttp`,{web:()=>new zg});var Bg;(function(e){e.Dark=`DARK`,e.Light=`LIGHT`,e.Default=`DEFAULT`})(Bg||={});var Vg;(function(e){e.StatusBar=`StatusBar`,e.NavigationBar=`NavigationBar`})(Vg||={});var Hg=class extends jg{async setStyle(){this.unavailable(`not available for web`)}async setAnimation(){this.unavailable(`not available for web`)}async show(){this.unavailable(`not available for web`)}async hide(){this.unavailable(`not available for web`)}};Ag(`SystemBars`,{web:()=>new Hg});var Ug=Ag(`KeepAwake`,{web:()=>us(()=>import(`./web-CEfF0992.js`).then(e=>new e.KeepAwakeWeb),[])}),Wg=0;function Gg(){return typeof window<`u`&&Za()}async function Kg(){if(Gg()&&(Wg+=1,!(Wg>1)))try{await Ug.keepAwake()}catch{Wg=0}}async function qg(){if(Gg()&&Wg!==0&&(--Wg,!(Wg>0)))try{await Ug.allowSleep()}catch{Wg=0}}async function Jg(){if(Wg=0,Gg())try{await Ug.allowSleep()}catch{}}var Yg=Ut(`app.use-chat-handlers.hook`),Xg=Ut(`git.checkpoint`);async function Zg(e,t,n,r,i,a){if(n===Ms&&!r?.trim())throw Error(`Refusing to reload primary chat history without a conversation ID`);let o=await ci(t,r);if(t===i.current&&!a?.isStale?.()){if(n!==Ms){e({type:Y.SetPaneMessages,paneId:n,messages:o.messages});return}e({type:Y.SetMessages,messages:o.messages,conversationId:r,historyEpoch:a?.historyEpoch})}}function Qg(e,t,n){return{...e,threadId:t,paneId:n}}var $g=/^\/compact(?:\s+(.*))?$/i,e_=/^\/send-event(?:\s+([a-zA-Z0-9._:-]+))?(?:\s+([\s\S]+))?$/i,t_=`[Compact] Compaction in progress...`;function n_(e,t,n){let r={type:`thinking`,content:t_,model:n};e(Qg({type:Y.SetStreaming,isStreaming:!0},t,`primary`)),e(Qg({type:Y.SetStreamModel,model:n},t,`primary`)),e(Qg({type:Y.AppendStreamChunk,chunkType:`thinking`,content:r.content??``,segments:zs([],`thinking`,r.content??``)},t,`primary`))}var r_=8e3;async function i_(e,t){try{let n=await Promise.race([qr(e,t),new Promise(e=>{setTimeout(()=>e(null),r_)})]);if(n===null){Xg.warn(`Checkpoint creation timed out`,{threadId:e,messageId:t});return}if(n.success&&n.checkpointRef)return n.stashed||Xg.debug(`Checkpoint recorded with clean working tree`,{threadId:e,messageId:t}),n.checkpointRef;`error`in n&&n.error?Xg.warn(`Checkpoint creation failed`,{threadId:e,messageId:t,error:n.error}):n.success||Xg.debug(`Checkpoint skipped`,{threadId:e,messageId:t,reason:n.reason})}catch(n){Xg.warn(`Checkpoint creation errored`,{threadId:e,messageId:t,error:n instanceof Error?n.message:String(n)})}}var a_=`tarsk-browser-tool-request`,o_=`tarsk-ask-user-prompt`,s_=new Set,c_=new Set,l_=new Map,u_=new Map,d_=new Map,f_=`tarsk.ask-user-tool-ownership.v1`,p_=1440*60*1e3;function m_(){if(!(typeof window>`u`))try{let e=window.localStorage.getItem(f_);if(!e)return;let t=JSON.parse(e),n=Date.now()-p_;for(let[e,r]of Object.entries(t.askUser??{}))r.updatedAt>=n&&r.paneId&&(u_.set(e,r.paneId),r.threadId&&l_.set(e,r.threadId));for(let[e,r]of Object.entries(t.subagents??{}))r.updatedAt>=n&&r.paneId&&d_.set(e,r.paneId)}catch{}}var h_=!1;function g_(){typeof window>`u`||h_||(h_=!0,window.setTimeout(()=>{h_=!1;try{let e=Date.now(),t={};for(let[n,r]of u_)t[n]={paneId:r,threadId:l_.get(n),updatedAt:e};let n={};for(let[t,r]of d_)n[t]={paneId:r,updatedAt:e};window.localStorage.setItem(f_,JSON.stringify({askUser:t,subagents:n}))}catch{}},0))}m_();function __(e,t){d_.set(e,t),g_()}function v_(e){return d_.get(e)}function y_(e){Pr()&&window.dispatchEvent(new CustomEvent(a_,{detail:e}))}function b_(e,t,n){!Pr()||s_.has(e)||t.action&&(s_.add(e),y_({toolCallId:e,input:t,threadId:n}))}function x_(e,t,n){l_.set(e,t),n&&(u_.set(e,n),g_())}function S_(e,t,n){x_(e,t,n),!c_.has(e)&&(c_.add(e),window.dispatchEvent(new CustomEvent(o_,{detail:{toolCallId:e,threadId:t,paneId:n}})))}function C_(e){return l_.get(e)}function w_(e){return u_.get(e)}function T_(){return Pr()?`views://public/browser-preview-rpc.js`:`${Fa()}/browser-preview-rpc.js`}async function E_(e,t){await Zi(e,t)}async function D_(e,t){await ai(e,t)}function O_(e){if(typeof e!=`string`)return!1;let t=e.toLowerCase();return t===`run_js`||t===`run_web_worker`}function k_(e){if(!e||typeof e!=`object`)return null;let t=e.code;return typeof t==`string`&&t.length>0?t:null}function A_(e){let t=[];for(let n of e){if(!n||typeof n!=`object`)continue;let e=n;if(e.type!==`tool_use`||typeof e.id!=`string`||!e.id||!O_(e.name))continue;let r=k_(e.input??e.arguments);r&&t.push({id:e.id,code:r})}return t}function j_(e,t){if(t)for(let n of e)ng(n.id,n.code,t)}function M_(e,t){if(!(!t||!e.includes(`"run_js"`)))try{let n=JSON.parse(e.trim());if(!Array.isArray(n))return;j_(A_(n),t)}catch{}}function N_(e,t){if(!t||!e||!O_(e.toolName))return;let n=e.partial?.content;Array.isArray(n)&&j_(A_(n),t)}function P_(e,t){if(e.includes(`"browser"`))try{let n=JSON.parse(e.trim());if(!Array.isArray(n))return;for(let e of n)e?.type===`tool_use`&&e?.name===`browser`&&e?.id&&e?.input&&b_(e.id,e.input,t)}catch{}}function F_(e,t,n){if(e.includes(`"ask_user"`))try{let r=JSON.parse(e.trim());if(!Array.isArray(r))return;for(let e of r)e?.type===`tool_use`&&e?.name===`ask_user`&&e?.id&&S_(e.id,t,n)}catch{}}function I_(e){if(!(!e.includes(`"tool_use"`)||!e.includes(`"bash"`)))try{let t=JSON.parse(e.trim());if(!Array.isArray(t))return;for(let e of t)e?.type===`tool_use`&&e?.id&&typeof e.name==`string`&&e.name.toLowerCase()===`bash`&&typeof e.input?.command==`string`&&Kf(e.id,e.input.command)}catch{}}function L_(e){if(!(!e.includes(`"tool-result"`)||!e.includes(`"bash"`)))try{let t=JSON.parse(e.trim());if(!Array.isArray(t))return;for(let e of t)e?.type===`tool-result`&&e?.toolCallId&&typeof e.toolName==`string`&&e.toolName.toLowerCase()===`bash`&&qf(e.toolCallId)}catch{}}function R_(e){let{dispatch:t,streamSessionsRef:n,connectThreadStreamRef:r,selectedThreadIdRef:i,getHistoryEpoch:a,getPaneConversationId:o}=e;function s(e,c,l){let u=Es(e,l.paneId);if(l.pendingTransientRecovery){l.pendingTransientRecovery=!1,(async()=>{try{if((await No()).includes(e)){r.current?.(e,t=>es(e,t,l.conversationId),c,l.paneId,l.conversationId);return}}catch(e){Yg.error(`Failed to recover chat stream after disconnect:`,e)}s(e,c,l)})();return}if(n.current.get(u)!==l){n.current.has(u)||(Sg(e),t(Qg({type:Y.ResetStream},e,l.paneId)),t({type:Y.RemoveProcessingThread,threadId:e}));return}if(n.current.delete(u),t({type:Y.ClearToolCallProgress}),l.keepsDeviceAwake&&(l.keepsDeviceAwake=!1,qg()),Sg(e),l.error&&!l.stopHandled){let n={messageId:`msg-${Date.now()}-error`,sender:`agent`,content:`Error: ${l.error}`,contentType:`text`,timestamp:new Date().toISOString(),model:c||`default`,isThinking:!1};t({type:Y.AddMessage,message:n,threadId:e,paneId:l.paneId}),t(Qg({type:Y.ResetStream},e,l.paneId)),t({type:Y.RemoveProcessingThread,threadId:e});return}if(l.stopHandled){if(l.segments.length>0){let n=Xs(l.segments);t({type:Y.AddMessage,message:{messageId:`msg-${Date.now()}-agent`,sender:`agent`,content:n,contentType:`markdown`,timestamp:new Date().toISOString(),model:c||`default`,isThinking:!1},threadId:e,paneId:l.paneId})}t({type:Y.AddMessage,message:{messageId:`msg-${Date.now()}-stopped`,sender:`agent`,content:`I've stopped working on your request.`,contentType:`text`,timestamp:new Date().toISOString(),model:c||`default`,isThinking:!1},threadId:e,paneId:l.paneId}),t(Qg({type:Y.ResetStream},e,l.paneId)),t({type:Y.SetActiveStreamPane,paneId:null}),t({type:Y.MarkThreadCompleted,threadId:e,paneId:l.paneId}),t({type:Y.RemoveProcessingThread,threadId:e});return}let d=Xs(l.segments)||`...`,f={messageId:`msg-${Date.now()}-agent`,sender:`agent`,content:d,contentType:`markdown`,timestamp:new Date().toISOString(),model:c||`default`,isThinking:!1};async function p(){let r=!1,s=a?.();function c(){if(n.current.has(u))return!0;let e=o?.(l.paneId)?.trim();return l.conversationId?.trim()&&e&&l.conversationId!==e?!0:s!==void 0&&a?.()!==s}for(let n=0;n<4;n++){if(n>0&&await new Promise(e=>setTimeout(e,150*n)),c())return;try{if(await Zg(t,e,l.paneId,l.conversationId,i,{isStale:c,historyEpoch:s}),c())return;r=!0;break}catch(e){Yg.error(`Failed to reload chat history after stream:`,e);break}}c()||(r||t({type:Y.AddMessage,message:f,threadId:e,paneId:l.paneId}),t(Qg({type:Y.ResetStream},e,l.paneId)),t({type:Y.SetActiveStreamPane,paneId:null}),t({type:Y.MarkThreadCompleted,threadId:e,paneId:l.paneId}),t({type:Y.RemoveProcessingThread,threadId:e}))}p()}return s}function z_(e){let{dispatch:t,streamSessionsRef:n,setPaneError:r,setShowEmptyBalanceDialog:i,finalizeThreadStream:a}=e;function o(e,o,s,c,l){let u=Es(e,c),d=n.current.get(u);d&&(d.controller.abort(),d.cancel?.());let f=new AbortController,p={controller:f,cancel:null,segments:[],assistantMessage:``,assistantThinking:``,hasStructuredContent:!1,error:null,stopHandled:!1,pendingTransientRecovery:!1,activeSubagentToolCallId:null,paneId:c,conversationId:l,keepsDeviceAwake:!1};n.current.set(u,p),t(Qg({type:Y.ResetStream},e,c)),t({type:Y.AddProcessingThread,threadId:e}),t(Qg({type:Y.SetStreaming,isStreaming:!0},e,c)),t({type:Y.SetActiveStreamPane,paneId:c}),Kg().then(()=>{p.keepsDeviceAwake=!0});function m(o){if(o instanceof Error&&o.name===`AbortError`){if(p.stopHandled||!n.current.has(u))return;n.current.delete(u),t(Qg({type:Y.ResetStream},e,c)),t({type:Y.RemoveProcessingThread,threadId:e});return}if(o instanceof oi){n.current.delete(u),t(Qg({type:Y.ResetStream},e,c)),t({type:Y.RemoveProcessingThread,threadId:e}),i(!0);return}if(o instanceof Error&&o.message.includes(`not currently processing`)){n.current.delete(u),t(Qg({type:Y.ResetStream},e,c)),t({type:Y.RemoveProcessingThread,threadId:e});return}if(o instanceof Error&&eo(o.message)){p.pendingTransientRecovery=!0,a(e,s,p);return}let l=Mt((o instanceof Error?o.message:``).trim()||`Unknown error (no error details in response)`);p.error=l,r(e,c,l),Yg.error(`Failed to subscribe to chat stream:`,o),a(e,s,p)}return(async()=>{let n=null;try{n=await o(f.signal)}catch(t){if(Sa(t,p.conversationId)&&!f.signal.aborted)try{n=await es(e,f.signal,p.conversationId)}catch(e){m(e);return}else{m(t);return}}if(!n||f.signal.aborted){a(e,s,p);return}p.cancel=Ro(n,n=>{if(t(Qg({type:Y.IncrementStreamEventCount},e,c)),n.type===`error`){let t=Mt(n.content?.trim()||n.error?.message?.trim()||n.message?.trim()||`Unknown error occurred`);p.error=t,r(e,c,t);return}if(n.type===`message`)return;if(n.type===`auto_compact`){let r=n.messagesBefore,i=n.content?.trim()||(typeof r==`number`?`Auto-compacted conversation (${r} → 1)`:`Auto-compacted conversation`);p.segments=zs(p.segments,`thinking`,`[Auto-compacted] ${i}\n`),t(Qg({type:Y.AppendStreamChunk,chunkType:`thinking`,content:i,segments:p.segments},e,c));return}if(n.type===`long_running_confirmation`){let r=n.prompt;if(!r)return;p.segments=Ns(p.segments,r),t(Qg({type:Y.AppendStreamChunk,chunkType:`content`,content:``,segments:p.segments},e,c));return}if(n.type===`shell_permission`){let r=n.shellPermission;if(!r)return;p.activeSubagentToolCallId&&t({type:Y.AppendToolExecutionOutput,toolCallId:p.activeSubagentToolCallId,threadId:e,toolName:`agent`,delta:`\n⏳ Waiting for shell approval: ${r.command}\n`}),p.segments=tc(p.segments,r),t(Qg({type:Y.AppendStreamChunk,chunkType:`content`,content:``,segments:p.segments},e,c));return}let i=n;if(i.type===`seatbelt_escalation`){let n=i.seatbeltEscalation;if(!n)return;p.segments=nc(p.segments,n),t(Qg({type:Y.AppendStreamChunk,chunkType:`content`,content:``,segments:p.segments},e,c));return}if(n.type===`web_fetch_permission`){let r=n.webFetchPermission;if(!r)return;p.activeSubagentToolCallId&&t({type:Y.AppendToolExecutionOutput,toolCallId:p.activeSubagentToolCallId,threadId:e,toolName:`agent`,delta:`\n⏳ Waiting for approval to fetch ${r.hostname}\n`}),p.segments=Ds(p.segments,r),t(Qg({type:Y.AppendStreamChunk,chunkType:`content`,content:``,segments:p.segments},e,c));return}if(n.type===`toolcall_delta`){if(n.partial?.content?.[0]?.id&&n.delta){let r=n.partial.content[0].id,i={toolCallId:r,threadId:e,toolName:n.partial.content[0].name,delta:n.delta,partial:n.partial};t({type:Y.UpdateToolCallProgress,toolCallId:r,progress:i}),N_(i,e)}return}if(n.type===`tool_execution_update`){n.toolCallId&&n.executionOutput!==void 0&&t({type:Y.UpdateToolExecutionOutput,toolCallId:n.toolCallId,threadId:e,toolName:n.toolName,executionOutput:n.executionOutput});return}if(n.type===`subagent_start`){if(n.toolCallId){p.activeSubagentToolCallId=n.toolCallId;let r=n.subagentName?.trim()||`subagent`;t({type:Y.UpdateToolExecutionOutput,toolCallId:n.toolCallId,threadId:e,toolName:`agent`,executionOutput:`Running ${r}…\n`})}return}if(n.type===`subagent_event`){if(n.toolCallId){if(__(n.toolCallId,p.paneId),n.subagentEvent){t({type:Y.AppendSubagentEvent,toolCallId:n.toolCallId,event:n.subagentEvent});let r=typeof n.subagentEvent.content==`string`?n.subagentEvent.content:n.subagentEvent.content?JSON.stringify(n.subagentEvent.content):``;r&&(F_(r,e,p.paneId),M_(r,e))}let r=Zp(n);r&&t({type:Y.AppendToolExecutionOutput,toolCallId:n.toolCallId,threadId:e,toolName:`agent`,delta:r})}return}if(n.type===`subagent_complete`){n.toolCallId&&(p.activeSubagentToolCallId=null,n.subagentResult&&t({type:Y.UpdateToolExecutionOutput,toolCallId:n.toolCallId,threadId:e,toolName:`agent`,executionOutput:n.subagentResult}));return}if(n.type===`context_usage`){n.contextUsage&&t(Qg({type:Y.SetContextUsage,contextUsage:n.contextUsage},e,c));return}if(n.model&&t(Qg({type:Y.SetStreamModel,model:n.model},e,c)),n.type===`thinking`||n.isThinking){let r=n.content??``;if(M_(r,e),P_(r,e),F_(r,e,p.paneId),Is(r)){I_(r),L_(r),p.hasStructuredContent=!0,p.segments=$s(p.segments,r),p.assistantMessage=Js(p.segments),t(Qg({type:Y.AppendStreamChunk,chunkType:`content`,content:``,segments:p.segments},e,c));return}p.assistantThinking+=r,p.segments=zs(p.segments,`thinking`,r),t(Qg({type:Y.AppendStreamChunk,chunkType:`thinking`,content:r,segments:p.segments},e,c))}else if(n.type===`result`){p.hasStructuredContent=!0;let r=n.content??``;p.assistantMessage=r,p.segments=Fs(p.segments,r),t(Qg({type:Y.SetStreamContent,content:r},e,c)),typeof r==`string`&&(M_(r,e),P_(r,e),F_(r,e,p.paneId))}else{if(p.hasStructuredContent)return;let r=n.content??``;p.assistantMessage+=r,p.segments=zs(p.segments,`content`,r),t(Qg({type:Y.AppendStreamChunk,chunkType:`content`,content:r,segments:p.segments},e,c))}},()=>{a(e,s,p)},t=>{if(t.includes(`AbortError`)||t.includes(`canceled`)||t.includes(`BodyStreamBuffer was aborted`)){a(e,s,p);return}if(eo(t)){p.pendingTransientRecovery=!0;return}let n=Mt(t.trim()||`Unknown error (no error details in response)`);p.error=n,r(e,c,n),a(e,s,p)},n=>{if(t(Qg({type:Y.IncrementStreamEventCount},e,c)),n.role===`assistant`){let r=n.content??``,i=typeof r==`string`?r:JSON.stringify(r);if(n.isThinking??!1){M_(i,e),P_(i,e),F_(i,e,p.paneId),p.assistantThinking+=i,p.segments=zs(p.segments,`thinking`,i),t(Qg({type:Y.AppendStreamChunk,chunkType:`thinking`,content:i,segments:p.segments},e,c));return}let a=!1;if(typeof r==`object`&&Array.isArray(r)&&r.length>0)a=!0;else if(typeof i==`string`&&i.trim().startsWith(`[`))try{let e=JSON.parse(i);a=Array.isArray(e)&&e.length>0}catch{}a?(p.hasStructuredContent=!0,p.assistantMessage=i,p.segments=Fs(p.segments,i),t(Qg({type:Y.SetStreamContent,content:i},e,c)),M_(i,e),P_(i,e),F_(i,e,p.paneId)):(p.assistantMessage+=i,p.segments=zs(p.segments,`content`,i),t(Qg({type:Y.AppendStreamChunk,chunkType:`content`,content:i,segments:p.segments},e,c)))}else if(n.role===`tool`){let r=n.content??``,i=typeof r==`string`?r:JSON.stringify(r);i&&(I_(i),L_(i),Is(i)?(p.hasStructuredContent=!0,p.segments=$s(p.segments,i),p.assistantMessage=Js(p.segments),t(Qg({type:Y.AppendStreamChunk,chunkType:`content`,content:``,segments:p.segments},e,c))):i.trim().startsWith(`[`)||(p.assistantMessage+=i,p.segments=zs(p.segments,`content`,i),t(Qg({type:Y.AppendStreamChunk,chunkType:`content`,content:i,segments:p.segments},e,c))))}})})(),f}return o}async function B_(e){return Va(`api/projects/${ao(e)}/tasks`)}async function V_(e,t,n){return is(`api/projects/${ao(e)}/tasks`,{description:t,threadId:n?.threadId,provider:n?.provider,model:n?.model,tags:n?.tags,triggerType:n?.triggerType,scheduledAt:n?.scheduledAt,scheduleCron:n?.scheduleCron,timezone:n?.timezone,enabled:n?.enabled,eventKey:n?.eventKey})}async function H_(e,t,n){return Ho(`api/projects/${ao(e)}/tasks/${ao(t)}`,n)}async function U_(e,t){return Ho(`api/projects/${ao(e)}/tasks/${ao(t)}`,{runNow:!0})}async function W_(e,t,n){return is(`api/projects/${ao(e)}/events/dispatch`,{eventKey:t,payload:n})}async function G_(e,t){await yo(`api/projects/${ao(e)}/tasks/${ao(t)}`)}async function K_(e){return Va(`api/projects/${ao(e)}/tags`)}async function q_(e,t,n){return Ho(`api/projects/${ao(e)}/tags/${ao(t)}`,{name:n})}async function J_(e,t){return is(`api/projects/${ao(e)}/tags`,{name:t})}async function Y_(e,t){await yo(`api/projects/${ao(e)}/tags/${ao(t)}`)}function X_(e){return e.trim().replace(/\n/g,` `).slice(0,100)}function Z_(e,t,n){return n(e)?.trim()||t?.trim()||void 0}function Q_(e,t,n,r,i,a){i&&(Qa(n,{chatTitles:{...a,[r]:i}}).catch(e=>{Yg.error(`Failed to update chat title:`,e)}),e({type:Y.UpdateChatTitle,projectId:t,threadId:n,paneId:r,title:i}))}function $_(e){let{selectedThreadId:t,selectedProjectId:n,processingThreadIds:r,processingRuns:i,dispatch:a,toast:o,connectThreadStream:s,onPlanModeConsumed:c,setPaneError:l,setStopRequestedForThreadId:u,getPaneMessages:d,getPaneConversationId:f,isPaneStreaming:p,getChatTitles:m}=e;return(0,Z.useCallback)(async(e,h,g,_,v,y,b,x,S,C)=>{if(!t)return;let w=t,T=d(e);l(w,e,null),u(null);let E=g.trim().match($g);if(E){if(e!==`primary`)return;if(T.filter(e=>e.sender===`agent`).length<2){o({title:`Nothing to compact`,description:`Start a conversation with at least two exchanges first.`});return}if(r.includes(w)||p(w,e)){o({title:`Agent is busy`,description:`Wait for the agent to finish before compacting.`});return}let t=E[1]?.trim();n_(a,w,_);try{let n=await ho(w,{model:_,provider:y,instructions:t});a({type:Y.SetMessages,messages:n.messages}),a(Qg({type:Y.ResetStream},w,e)),o({title:`Conversation compacted`,description:`${n.messagesBefore} messages → ${n.messagesAfter} summary`})}catch(t){a(Qg({type:Y.ResetStream},w,e)),o({title:`Compaction failed`,description:t instanceof Error?t.message:`Failed to compact conversation`,variant:`destructive`})}return}let D=g.trim().match(e_);if(D){if(e!==`primary`)return;if(!n){o({title:`No project selected`,description:`Open a project thread before sending an event.`,variant:`destructive`});return}let t=D[1]?.trim();if(!t){o({title:`Event key required`,description:`Use /send-event door.opened or /send-event door.opened {"doorId":"front"}`,variant:`destructive`});return}let r,i=D[2]?.trim();if(i)try{r=JSON.parse(i)}catch{o({title:`Invalid JSON payload`,description:`The optional payload after the event key must be valid JSON.`,variant:`destructive`});return}try{let e=await W_(n,t,r);o({title:`Event sent`,description:`Matched ${e.matched}, launched ${e.launched}, skipped ${e.skipped}`})}catch(e){o({title:`Event failed`,description:e instanceof Error?e.message:`Failed to send event`,variant:`destructive`})}return}let O=Z_(e,h,f);if(!x&&hg(i,w,O)&&!p(w,e)){s(w,e=>es(w,e,O),_,e,O),a({type:Y.EnqueueChatMessage,message:{id:`queued-${Date.now()}`,threadId:w,paneId:e,message:g,model:_,attachments:v,provider:y,planMode:b,imageMode:x,ralphMode:S,orchestrateMode:C}}),b&&c?.();return}let k=`msg-${Date.now()}`,A={messageId:k,sender:`user`,content:g,contentType:`text`,timestamp:new Date().toISOString(),model:_,attachments:v.map(e=>({fileName:e.fileName,content:e.content,mimeType:e.mimeType}))};a({type:Y.AddMessage,message:A,threadId:w,paneId:e});let j=await i_(w,k);if(j&&a({type:Y.UpdateMessageCheckpointRef,messageId:k,threadId:w,paneId:e,checkpointRef:j}),n){let t=X_(g);Q_(a,n,w,e,t,m(w)),Mr(w,g,{provider:y,model:_}).then(r=>{r&&r!==t&&Q_(a,n,w,e,r,m(w))}).catch(e=>{Yg.error(`Failed to generate chat title:`,e)})}if(x){let t=y??void 0;if(!t&&typeof _==`string`){let e=_.split(/[:/]/)[0]?.trim();e&&(t=e)}if(!t){let t={messageId:`msg-${Date.now()}-error`,sender:`agent`,content:`Image generation is not available because no provider is configured for the selected model.`,contentType:`text`,timestamp:new Date().toISOString(),model:_,isThinking:!1};a({type:Y.AddMessage,message:t,threadId:w,paneId:e}),a(Qg({type:Y.ResetStream},w,e)),a({type:Y.SetActiveStreamPane,paneId:null});return}a(Qg({type:Y.SetStreaming,isStreaming:!0},w,e)),a({type:Y.SetActiveStreamPane,paneId:e});try{let n=await cs(g,_,t,w),r={messageId:`msg-${Date.now()}-agent`,sender:`agent`,content:g,contentType:`text`,timestamp:new Date().toISOString(),model:_,mode:`image`,isThinking:!1,generatedImageUrl:n.imageUrl,generatedImageData:n.imageData};a({type:Y.AddMessage,message:r,threadId:w,paneId:e})}catch(t){let n=t instanceof Error?t.message:`Image generation failed`,r={messageId:`msg-${Date.now()}-error`,sender:`agent`,content:`Error: ${n}`,contentType:`text`,timestamp:new Date().toISOString(),model:_,isThinking:!1};a({type:Y.AddMessage,message:r,threadId:w,paneId:e})}finally{a(Qg({type:Y.ResetStream},w,e)),a({type:Y.SetActiveStreamPane,paneId:null})}return}s(w,e=>to(w,g,_,v,e,y,b,S,j,O,C),_,e,O),a(Qg({type:Y.SetStreamAgentMode,mode:Gt({planMode:b,ralphMode:S,orchestrateMode:C})},w,e)),b&&c?.()},[t,n,a,s,r,i,o,c,d,f,p,m,l,u])}function ev(e,t){for(let n of e.current){let r=n.split(`:`)[0];(!r||!t.has(r))&&e.current.delete(n)}}function tv(e,t,n){for(let r of n){let n=`${r.threadId}:${r.paneId}`;e.current.has(n)||(e.current.add(n),t(r.threadId,e=>es(r.threadId,e,r.conversationId),`default`,r.paneId,r.conversationId))}}function nv(e,t,n){if(!n.selectedThreadId)return;let r=n.getQueuedMessagesForPane(e);if(r.length===0||n.isPaneStreaming(n.selectedThreadId,e)||n.isProcessingQueueRef.current[e])return;let[i]=r;n.isProcessingQueueRef.current[e]=!0,t[e]=setTimeout(()=>{n.isProcessingQueueRef.current[e]=!1,n.dispatch({type:Y.RemoveQueuedChatMessage,queuedMessageId:i.id}),n.handleSend(e,n.getPaneConversationIdForHandlers(e),i.message,i.model,i.attachments,i.provider,i.planMode,i.imageMode,i.ralphMode,i.orchestrateMode)},0)}function rv(e,t,n){n.isPaneStreaming(n.selectedThreadId??``,t)||n.getPaneMessagesForHandlers(t).length>0||!n.selectedThreadId||n.handleSend(t,n.getPaneConversationIdForHandlers(t),e.message,e.model,e.attachments,e.provider,e.planMode,e.imageMode,e.ralphMode,e.orchestrateMode)}function iv(e,t){for(let n of e.projects){let e=n.threads.find(e=>e.threadId===t);if(e)return e.chatTitles}}function av(e,t){let{selectedThreadId:n}=t;if(!n)return;t.onStopRequested(n);let r=Es(n,e),i=t.streamSessionsRef.current.get(r),a=t.getPaneStreamingModel(n,e),o=i?.conversationId??t.getPaneConversationIdForHandlers(e);if(Na(n,o?{conversationId:o}:void 0),i){i.stopHandled=!0,t.finalizeThreadStream(n,a,i),i.controller.abort(),i.cancel?.();return}t.dispatch(Qg({type:Y.ResetStream},n,e))}function ov(e,t){for(let[n,r]of t.current.entries()){r.controller.abort(),r.cancel?.(),r.keepsDeviceAwake&&(r.keepsDeviceAwake=!1,qg());let[t,i]=n.split(`:`);e(Qg({type:Y.ResetStream},t,i))}t.current.clear()}function sv(e,t){let{selectedThreadId:n}=t;if(!n)return;let r=Es(n,e),i=t.streamSessionsRef.current.get(r);i&&(t.streamSessionsRef.current.delete(r),i.controller.abort(),i.cancel?.(),i.keepsDeviceAwake&&(i.keepsDeviceAwake=!1,qg())),t.dispatch(Qg({type:Y.ResetStream},n,e)),t.dispatch({type:Y.SetActiveStreamPane,paneId:null})}function cv(e,t,n){if(!n){if(!(t in e))return e;let{[t]:n,...r}=e;return r}return e[t]===n?e:{...e,[t]:n}}function lv(e){let t=new Set(e.processingThreadIds),n=e.storeRef.getState();ev(e.autoSubscribePendingRef,t);let r=vg({...n,selectedThreadId:e.selectedThreadId,extraChatPanes:e.extraChatPanes,primaryConversationId:e.primaryConversationId},e.processingRuns,{hasSession:(t,n)=>e.streamSessionsRef.current.has(Es(t,n)),isRecentlyFinalized:Cg,isThreadBeingCreated:e=>kc(n.threadToolSessions[e])});tv(e.autoSubscribePendingRef,e.connectThreadStream,r)}function uv(e){let t=e.pendingChatMessage;if(!t||t.threadId!==e.selectedThreadId||e.isPaneStreaming(e.selectedThreadId??``,`primary`))return;let n=setTimeout(()=>{e.dispatch({type:Y.ClearPendingChatMessage}),e.handleSend(`primary`,void 0,t.message,t.model,[],t.provider)},100);return()=>clearTimeout(n)}function dv(e){if(!e.selectedThreadId)return;let t={},n=new Set([`primary`,...Ts(e.storeRef.getState()),...e.queuedChatMessages.filter(t=>t.threadId===e.selectedThreadId).map(e=>e.paneId)]);for(let r of n)nv(r,t,e);return()=>{for(let e of n){let n=t[e];n&&clearTimeout(n)}}}function fv(e,t,n){let r=n.getQueuedMessagesForPane(e).find(e=>e.id===t);n.dispatch({type:Y.RemoveQueuedChatMessage,queuedMessageId:t}),r&&rv(r,e,{selectedThreadId:n.selectedThreadId,isPaneStreaming:n.isPaneStreaming,getPaneMessagesForHandlers:n.getPaneMessages,getPaneConversationIdForHandlers:n.getPaneConversationId,handleSend:n.handleSend})}function pv(){let e=Ks(),t=Vs(),n=X(e=>e.selectedThreadId),r=X(e=>e.selectedProjectId),i=X(e=>e.queuedChatMessages),a=X(e=>e.pendingChatMessage),o=X(e=>e.processingThreadIds),s=X(e=>e.processingRuns),c=X(e=>e.extraChatPanes),l=X(e=>e.primaryConversationId),u=(0,Z.useRef)(null),d=(0,Z.useRef)(new Map),f=(0,Z.useRef)(null),p=(0,Z.useRef)({}),m=(0,Z.useRef)(new Set);return u.current=n,{dispatch:e,storeRef:t,selectedThreadId:n,selectedProjectId:r,queuedChatMessages:i,pendingChatMessage:a,processingThreadIds:o,processingRuns:s,extraChatPanes:c,primaryConversationId:l,selectedThreadIdRef:u,streamSessionsRef:d,connectThreadStreamRef:f,isProcessingQueueRef:p,autoSubscribePendingRef:m}}function mv(e){let t=(0,Q.c)(20),{storeRef:n,selectedThreadId:r,queuedChatMessages:i}=e,a;t[0]===n?a=t[1]:(a=function(e){return ys(n.getState(),e)},t[0]=n,t[1]=a);let o=a,s;t[2]===n?s=t[3]:(s=function(e){return gs(n.getState(),e)},t[2]=n,t[3]=s);let c=s,l;t[4]===n?l=t[5]:(l=function(e,t){return As(n.getState().threadStreamingStates,e,t).isStreaming},t[4]=n,t[5]=l);let u=l,d;t[6]===n?d=t[7]:(d=function(e,t){return As(n.getState().threadStreamingStates,e,t).streamingModel||`default`},t[6]=n,t[7]=d);let f=d,p;t[8]===n?p=t[9]:(p=function(e){return iv(n.getState(),e)},t[8]=n,t[9]=p);let m=p,h;t[10]!==i||t[11]!==r?(h=e=>r?i.filter(t=>t.threadId===r&&t.paneId===e):[],t[10]=i,t[11]=r,t[12]=h):h=t[12];let g=h,_;return t[13]!==m||t[14]!==c||t[15]!==o||t[16]!==f||t[17]!==g||t[18]!==u?(_={getPaneMessages:o,getPaneConversationId:c,isPaneStreaming:u,getPaneStreamingModel:f,getChatTitles:m,getQueuedMessagesForPane:g},t[13]=m,t[14]=c,t[15]=o,t[16]=f,t[17]=g,t[18]=u,t[19]=_):_=t[19],_}function hv(){let e=(0,Q.c)(5),t;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t={},e[0]=t):t=e[0];let[n,r]=(0,Z.useState)(t),[i,a]=(0,Z.useState)(!1),o;e[1]===Symbol.for(`react.memo_cache_sentinel`)?(o=(e,t,n)=>{let i=Es(e,t);r(e=>cv(e,i,n))},e[1]=o):o=e[1];let s=o,c;return e[2]!==n||e[3]!==i?(c={paneErrors:n,setPaneError:s,showEmptyBalanceDialog:i,setShowEmptyBalanceDialog:a},e[2]=n,e[3]=i,e[4]=c):c=e[4],c}function gv(e){let{state:t,selectors:n,setPaneError:r,setShowEmptyBalanceDialog:i,setStopRequestedForThreadId:a}=e,{dispatch:o,storeRef:s,streamSessionsRef:c,connectThreadStreamRef:l,selectedThreadIdRef:u,autoSubscribePendingRef:d,processingThreadIds:f,selectedThreadId:p,extraChatPanes:m,primaryConversationId:h,processingRuns:g}=t,_=(0,Z.useCallback)(R_({dispatch:o,streamSessionsRef:c,connectThreadStreamRef:l,selectedThreadIdRef:u,getHistoryEpoch:()=>s.getState().chatHistoryEpoch,getPaneConversationId:e=>gs(s.getState(),e)}),[o,s]),v=(0,Z.useCallback)(e=>av(e,{selectedThreadId:p,dispatch:o,finalizeThreadStream:_,streamSessionsRef:c,getPaneStreamingModel:n.getPaneStreamingModel,getPaneConversationIdForHandlers:n.getPaneConversationId,onStopRequested:a}),[p,o,_]);(0,Z.useEffect)(()=>()=>{ov(o,c)},[o]);let y=(0,Z.useCallback)(z_({dispatch:o,streamSessionsRef:c,setPaneError:r,setShowEmptyBalanceDialog:i,finalizeThreadStream:_}),[o,_,r]);return l.current=y,(0,Z.useEffect)(()=>{lv({autoSubscribePendingRef:d,processingThreadIds:f,selectedThreadId:p,extraChatPanes:m,primaryConversationId:h,processingRuns:g,connectThreadStream:y,streamSessionsRef:c,storeRef:s})},[y,m,h,g,f,p,s]),{finalizeThreadStream:_,connectThreadStream:y,handleStop:v}}function _v(e){let t=pv(),{dispatch:n,storeRef:r,selectedThreadId:i,selectedProjectId:a,processingThreadIds:o,processingRuns:s,pendingChatMessage:c,queuedChatMessages:l}=t,u=mv(t),{getPaneMessages:d,getPaneConversationId:f,isPaneStreaming:p,getChatTitles:m,getQueuedMessagesForPane:h}=u,{toast:g}=ic(),{paneErrors:_,setPaneError:v,showEmptyBalanceDialog:y,setShowEmptyBalanceDialog:b}=hv(),[x,S]=(0,Z.useState)(null),{connectThreadStream:C,handleStop:w}=gv({state:t,selectors:u,setPaneError:v,setShowEmptyBalanceDialog:b,setStopRequestedForThreadId:S}),T=$_({selectedThreadId:i,selectedProjectId:a,processingThreadIds:o,processingRuns:s,dispatch:n,toast:g,connectThreadStream:C,onPlanModeConsumed:e,setPaneError:v,setStopRequestedForThreadId:S,getPaneMessages:d,getPaneConversationId:f,isPaneStreaming:p,getChatTitles:m});(0,Z.useEffect)(()=>uv({pendingChatMessage:c,selectedThreadId:i,isPaneStreaming:p,dispatch:n,handleSend:T}),[c,i,n,T,r]),(0,Z.useEffect)(()=>dv({selectedThreadId:i,dispatch:n,getQueuedMessagesForPane:h,isPaneStreaming:p,isProcessingQueueRef:t.isProcessingQueueRef,getPaneConversationIdForHandlers:f,handleSend:T,storeRef:r,queuedChatMessages:l}),[n,h,T,l,i,r]);let E=(0,Z.useCallback)((e,t)=>fv(e,t,{getQueuedMessagesForPane:h,dispatch:n,selectedThreadId:i,isPaneStreaming:p,getPaneMessages:d,getPaneConversationId:f,handleSend:T}),[n,h,T,i,r]),D=(0,Z.useCallback)(e=>{sv(e,{selectedThreadId:i,dispatch:n,streamSessionsRef:t.streamSessionsRef})},[n,i,t.streamSessionsRef]);return(0,Z.useMemo)(()=>({paneErrors:_,setPaneError:v,handleSend:T,handleStop:w,handleDiscardPaneStream:D,getQueuedMessagesForPane:h,handleRemoveQueuedMessage:E,showEmptyBalanceDialog:y,setShowEmptyBalanceDialog:b}),[_,v,T,w,D,h,E,y,b])}var vv=(0,Z.createContext)(void 0);function yv(e){let t=(0,Q.c)(3),{children:n}=e,r=_v(),i;return t[0]!==n||t[1]!==r?(i=(0,$.jsx)(vv.Provider,{value:r,children:n}),t[0]=n,t[1]=r,t[2]=i):i=t[2],i}function bv(){let e=(0,Z.useContext)(vv);if(e===void 0)throw Error(`useChatHandlersContext must be used within a ChatHandlersProvider`);return e}var xv=(0,Z.createContext)(void 0);function Sv(e){let t=(0,Q.c)(12),{paneId:n,conversationId:r,fillPane:i,children:a}=e,o=i===void 0?!1:i,s=Ks(),c=X(Cv),l;t[0]!==s||t[1]!==n?(l=()=>{s({type:Y.SetFocusedPane,paneId:n})},t[0]=s,t[1]=n,t[2]=l):l=t[2];let u=l,d=c===n,f;t[3]!==r||t[4]!==o||t[5]!==n||t[6]!==u||t[7]!==d?(f={paneId:n,conversationId:r,isFocused:d,fillPane:o,setFocused:u},t[3]=r,t[4]=o,t[5]=n,t[6]=u,t[7]=d,t[8]=f):f=t[8];let p=f,m;return t[9]!==a||t[10]!==p?(m=(0,$.jsx)(xv.Provider,{value:p,children:a}),t[9]=a,t[10]=p,t[11]=m):m=t[11],m}function Cv(e){return e.focusedPane}function wv(){let e=(0,Q.c)(1),t=(0,Z.useContext)(xv);if(t===void 0){let t;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t={paneId:`primary`,conversationId:void 0,isFocused:!0,fillPane:!1,setFocused:Tv},e[0]=t):t=e[0],t}return t}function Tv(){}function Ev(e){let t=(0,Q.c)(66),{toolCall:n,className:r}=e,{paneId:i}=wv(),{handleStop:a}=bv(),[o,s]=(0,Z.useState)(!1),c;t[0]===n.id?c=t[1]:(c=e=>e.toolCallProgress[n.id],t[0]=n.id,t[1]=c);let l=X(c),u;t[2]!==n.activeDisplayName||t[3]!==n.name?(u=n.activeDisplayName??ne(n.name),t[2]=n.activeDisplayName,t[3]=n.name,t[4]=u):u=t[4];let d=u,f=qd(n.name)?`searching`:`working`,p;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(p=()=>{s(Ov)},t[5]=p):p=t[5];let m=p,h;t[6]!==a||t[7]!==i?(h=function(){a(i)},t[6]=a,t[7]=i,t[8]=h):h=t[8];let g=h,_=Dv,v=n.name===`bash`&&typeof n.input?.command==`string`?n.input.command:null,y;t[9]===v?y=t[10]:(y=v===null?null:Yd(v),t[9]=v,t[10]=y);let b=y,x=n.name===`fetch`&&typeof n.input?.url==`string`?n.input.url:null,S=n.name===`web_search`&&typeof n.input?.query==`string`?n.input.query:null,C=!v&&typeof n.input?.description==`string`?n.input.description:null,w;t[11]===r?w=t[12]:(w=G(`overflow-hidden mb-2`,r),t[11]=r,t[12]=w);let T;t[13]===d?T=t[14]:(T=(0,$.jsx)(`span`,{className:U.bodyMuted,children:d}),t[13]=d,t[14]=T);let E;t[15]===f?E=t[16]:(E=(0,$.jsx)(dp,{state:f}),t[15]=f,t[16]=E);let D;t[17]!==T||t[18]!==E?(D=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1`,children:[T,E]})}),t[17]=T,t[18]=E,t[19]=D):D=t[19];let O;t[20]===n.name?O=t[21]:(O=(0,$.jsx)(Fr,{children:n.name}),t[20]=n.name,t[21]=O);let k;t[22]!==O||t[23]!==D?(k=(0,$.jsxs)(Mi,{children:[D,O]}),t[22]=O,t[23]=D,t[24]=k):k=t[24];let A;t[25]===b?A=t[26]:(A=b!==null&&(0,$.jsx)(`code`,{className:G(U.mono,U.bodyMuted,`truncate whitespace-nowrap rounded bg-muted/60 px-1 py-0.5 max-w-full`),children:b.label}),t[25]=b,t[26]=A);let j;t[27]===x?j=t[28]:(j=x!==null&&(0,$.jsx)(`code`,{className:G(U.mono,U.bodyMuted,`break-all rounded bg-muted/60 px-1 py-0.5`),children:x.length>60?`${x.slice(0,59)}…`:x}),t[27]=x,t[28]=j);let M;t[29]===S?M=t[30]:(M=S!==null&&(0,$.jsx)(`code`,{className:G(U.mono,U.bodyMuted,`break-all rounded bg-muted/60 px-1 py-0.5`),children:S.length>60?`${S.slice(0,59)}…`:S}),t[29]=S,t[30]=M);let N;t[31]===C?N=t[32]:(N=C!==null&&(0,$.jsx)(`span`,{className:U.bodyMuted,children:C}),t[31]=C,t[32]=N);let P;t[33]===o?P=t[34]:(P=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`button`,{onClick:m,className:`p-1 hover:bg-muted/50 rounded transition-colors`,children:o?(0,$.jsx)(Yt,{className:`h-3 w-3`}):(0,$.jsx)(tn,{className:`h-3 w-3`})})}),t[33]=o,t[34]=P);let F=o?`Collapse`:`Expand`,I;t[35]===F?I=t[36]:(I=(0,$.jsx)(Fr,{children:F}),t[35]=F,t[36]=I);let L;t[37]!==P||t[38]!==I?(L=(0,$.jsxs)(Mi,{children:[P,I]}),t[37]=P,t[38]=I,t[39]=L):L=t[39];let R;t[40]===Symbol.for(`react.memo_cache_sentinel`)?(R=(0,$.jsx)(nt,{className:`h-3 w-3`}),t[40]=R):R=t[40];let z;t[41]===g?z=t[42]:(z=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`button`,{onClick:g,className:`p-1 hover:bg-red-200 dark:hover:bg-red-800 rounded transition-colors text-red-600 dark:text-red-400`,children:R})}),t[41]=g,t[42]=z);let B;t[43]===Symbol.for(`react.memo_cache_sentinel`)?(B=(0,$.jsx)(Fr,{className:`bg-red-600 text-white border-red-600`,children:`Stop this process`}),t[43]=B):B=t[43];let V;t[44]===z?V=t[45]:(V=(0,$.jsxs)(Mi,{children:[z,B]}),t[44]=z,t[45]=V);let H;t[46]!==L||t[47]!==V?(H=(0,$.jsxs)(`div`,{className:`flex items-center gap-1 ml-auto shrink-0`,children:[L,V]}),t[46]=L,t[47]=V,t[48]=H):H=t[48];let ee;t[49]!==k||t[50]!==A||t[51]!==j||t[52]!==M||t[53]!==N||t[54]!==H?(ee=(0,$.jsxs)(`div`,{className:`py-0.5 flex items-center gap-2 flex-wrap`,children:[k,A,j,M,N,H]}),t[49]=k,t[50]=A,t[51]=j,t[52]=M,t[53]=N,t[54]=H,t[55]=ee):ee=t[55];let te;t[56]!==o||t[57]!==f||t[58]!==n.id||t[59]!==n.input||t[60]!==l?(te=o&&(0,$.jsxs)(`div`,{className:`py-2 border-t border-border min-h-[8rem] overflow-auto`,children:[(0,$.jsxs)(`div`,{className:G(U.compact,U.bodyMuted,`mb-2 font-mono`),children:[`ID: `,n.id]}),(0,$.jsxs)(`div`,{className:`mb-2`,children:[(0,$.jsx)(`div`,{className:G(U.compact,U.label,`text-muted-foreground mb-1`),children:`Input:`}),(0,$.jsx)(`pre`,{className:Qf({className:`border border-border`}),children:_(n.input)})]}),l&&(0,$.jsxs)(`div`,{className:`mb-2`,children:[(0,$.jsx)(`div`,{className:G(U.compact,U.label,`text-muted-foreground mb-1`),children:`Progress:`}),(0,$.jsxs)(`div`,{className:G(U.body,`bg-green-50 dark:bg-green-900/20 p-2 rounded border border-green-200 dark:border-green-800`),children:[(0,$.jsx)(`div`,{className:G(U.mono,`text-green-700 dark:text-green-300`),children:l.delta}),l.partial?.content?.[0]?.arguments&&typeof l.partial.content[0].arguments==`object`&&`content`in l.partial.content[0].arguments&&typeof l.partial.content[0].arguments.content==`string`&&(0,$.jsxs)(`div`,{className:G(U.mono,`mt-1 text-green-600 dark:text-green-400`),children:[`Building: `,l.partial.content[0].arguments.content.slice(-50),l.partial.content[0].arguments.content.length>50&&`...`]})]})]}),(0,$.jsxs)(`div`,{className:G(U.compact,`flex items-center gap-1.5 text-muted-foreground`),children:[(0,$.jsx)(dp,{state:f}),`Executing`,l&&` with progress`,`...`]})]}),t[56]=o,t[57]=f,t[58]=n.id,t[59]=n.input,t[60]=l,t[61]=te):te=t[61];let re;return t[62]!==ee||t[63]!==te||t[64]!==w?(re=(0,$.jsxs)(`div`,{className:w,children:[ee,te]}),t[62]=ee,t[63]=te,t[64]=w,t[65]=re):re=t[65],re}function Dv(e){return JSON.stringify(e,null,2)}function Ov(e){return!e}function kv(e){if(!Array.isArray(e))return[];let t=[];for(let n of e){if(typeof n==`string`&&n.trim()){t.push({label:n,description:``});continue}if(!n||typeof n!=`object`)continue;let e=n;typeof e.label!=`string`||!e.label.trim()||t.push({label:e.label,description:typeof e.description==`string`?e.description:``})}return t}function Av(e){if(!e||typeof e!=`object`)return null;let t=e;if(typeof t.question!=`string`||!t.question.trim())return null;let n=kv(t.options);return{question:t.question,header:typeof t.header==`string`?t.header:void 0,options:n.length>0?n:void 0,multiple:typeof t.multiple==`boolean`?t.multiple:void 0}}function jv(e){if(Array.isArray(e.questions))return e.questions.map(e=>Av(e)).filter(e=>e!==null);if(typeof e.question==`string`&&e.question.trim()){let t=kv(e.options);return[{question:e.question,header:typeof e.context==`string`?e.context:void 0,options:t.length>0?t:void 0}]}return[]}function Mv(e){let t=jv(e),n=t[0];return{questions:t,question:n?.question??``,options:n?.options?.map(e=>e.label),context:n?.header}}function Nv(e){return{intention:typeof e.intention==`string`?e.intention:``,code:typeof e.code==`string`?e.code:``}}function Pv(e){let t=(0,Q.c)(6),{prompt:n,answeredText:r}=e,i=n.toolCallId??`long-running-confirmation`,a;return t[0]!==r||t[1]!==n.context||t[2]!==n.options||t[3]!==n.question||t[4]!==i?(a=(0,$.jsx)(Th,{toolCallId:i,question:n.question,options:n.options,context:n.context,answeredText:r,answeredLabel:`You answered`}),t[0]=r,t[1]=n.context,t[2]=n.options,t[3]=n.question,t[4]=i,t[5]=a):a=t[5],a}function Fv(e){let t=(0,Q.c)(6),{prompt:n,projectId:r,resolvedDecision:i}=e,a;return t[0]!==r||t[1]!==n.command||t[2]!==n.toolCallId||t[3]!==n.wildcardOptions||t[4]!==i?(a=(0,$.jsx)(jh,{toolCallId:n.toolCallId,command:n.command,projectId:r,wildcardOptions:n.wildcardOptions,resolvedDecision:i}),t[0]=r,t[1]=n.command,t[2]=n.toolCallId,t[3]=n.wildcardOptions,t[4]=i,t[5]=a):a=t[5],a}function Iv(e){let t=(0,Q.c)(2),{prompt:n}=e,r;return t[0]===n?r=t[1]:(r=(0,$.jsx)(Mh,{...n}),t[0]=n,t[1]=r),r}function Lv(e){let t=(0,Q.c)(7),{prompt:n,projectId:r,resolvedDecision:i}=e,a;return t[0]!==r||t[1]!==n.hostname||t[2]!==n.toolCallId||t[3]!==n.url||t[4]!==n.wildcardOptions||t[5]!==i?(a=(0,$.jsx)(Ph,{toolCallId:n.toolCallId,hostname:n.hostname,url:n.url,projectId:r,wildcardOptions:n.wildcardOptions,resolvedDecision:i}),t[0]=r,t[1]=n.hostname,t[2]=n.toolCallId,t[3]=n.url,t[4]=n.wildcardOptions,t[5]=i,t[6]=a):a=t[6],a}function Rv(e,t){if(e.name!==`ask_user`)return null;let n=Mv(e.input);return(0,$.jsx)(Th,{toolCallId:e.id,questions:n.questions,answeredText:t,interactive:!1})}function zv(e,t,n,r){if(e.name!==`run_js`&&e.name!==`run_web_worker`)return null;let i=Nv(e.input);return(0,$.jsx)(pg,{toolCallId:e.id,intention:i.intention,code:i.code,resultContent:t,resultIsError:n,showActive:r===!0})}function Bv(e){let t=(0,Q.c)(14),{block:n,resultContent:r,resultIsError:i,observation:a,showActive:o}=e,s;t[0]===n.id?s=t[1]:(s=e=>e.toolCallProgress[n.id],t[0]=n.id,t[1]=s);let c=X(s),l;t[2]===c?l=t[3]:(l=c??{},t[2]=c,t[3]=l);let u;t[4]===l?u=t[5]:(u=ph(l),t[4]=l,t[5]=u);let d=u,f=o&&r===void 0,p=n.name===`bash`||n.name===`read`||n.name===`file_read`||n.name===`get_observation`||im(n.name,n.input);if(f&&!p){let e;return t[6]===n?e=t[7]:(e=(0,$.jsx)(Ev,{toolCall:n}),t[6]=n,t[7]=e),e}let m=f?d:r,h;return t[8]!==n||t[9]!==f||t[10]!==a||t[11]!==i||t[12]!==m?(h=(0,$.jsx)(Rm,{inline:!0,block:n,resultContent:m,resultIsError:i,isActive:f,observation:a}),t[8]=n,t[9]=f,t[10]=a,t[11]=i,t[12]=m,t[13]=h):h=t[13],h}function Vv(e){let t=(0,Q.c)(19),{block:n,showActive:r,resultContent:i,resultIsError:a,observation:o}=e,s;t[0]!==n||t[1]!==i?(s=Rv(n,i),t[0]=n,t[1]=i,t[2]=s):s=t[2];let c=s;if(c)return c;let l;t[3]!==n||t[4]!==i||t[5]!==a||t[6]!==r?(l=zv(n,i,a,r),t[3]=n,t[4]=i,t[5]=a,t[6]=r,t[7]=l):l=t[7];let u=l;if(u)return u;if(r){let e;return t[8]!==n||t[9]!==o||t[10]!==i||t[11]!==a||t[12]!==r?(e=(0,$.jsx)(Bv,{block:n,resultContent:i,resultIsError:a,observation:o,showActive:r}),t[8]=n,t[9]=o,t[10]=i,t[11]=a,t[12]=r,t[13]=e):e=t[13],e}let d;return t[14]!==n||t[15]!==o||t[16]!==i||t[17]!==a?(d=(0,$.jsx)(Rm,{inline:!0,block:n,resultContent:i,resultIsError:a,isActive:!1,observation:o}),t[14]=n,t[15]=o,t[16]=i,t[17]=a,t[18]=d):d=t[18],d}function Hv(e){let t=(0,Q.c)(4),{block:n,sequence:r,params:i}=e,a;return t[0]!==n||t[1]!==i||t[2]!==r?(a=(0,$.jsx)(ah,{inline:!0,sequence:r,block:n,params:i}),t[0]=n,t[1]=i,t[2]=r,t[3]=a):a=t[3],a}function Uv(e){let t=(0,Q.c)(43),{items:n,allBlocks:r,completedToolCallIds:i,isStreaming:a,showActiveSummary:o,hideActiveLabel:s,initialExpanded:c,renderItem:l}=e,u=o===void 0?a:o,d=s===void 0?!1:s,[f,p]=(0,Z.useState)(c===void 0?!1:c),m;t[0]!==r||t[1]!==i||t[2]!==n?(m=Cs(n,r,i),t[0]=r,t[1]=i,t[2]=n,t[3]=m):m=t[3];let h=m,g;t[4]!==u||t[5]!==h?(g=Qs(h,{showActive:u}),t[4]=u,t[5]=h,t[6]=g):g=t[6];let _=g,v=_.activeLabel!==null,y=v&&!d,b;t[7]===f?b=t[8]:(b=()=>p(!f),t[7]=f,t[8]=b);let x;t[9]===f?x=t[10]:(x=f?(0,$.jsx)(tn,{className:`h-3 w-3 text-muted-foreground shrink-0`}):(0,$.jsx)(sn,{className:`h-3 w-3 text-muted-foreground shrink-0`}),t[9]=f,t[10]=x);let S;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(S=G(U.caption,`min-w-0 truncate`),t[11]=S):S=t[11];let C;t[12]!==_.lineStats||t[13]!==h?(C=_.lineStats?(0,$.jsxs)(`span`,{className:`text-muted-foreground/70`,children:[` · `,(0,$.jsxs)(`span`,{className:`text-brand`,children:[`+`,h.linesAdded]}),` `,(0,$.jsxs)(`span`,{className:`text-red-600 dark:text-red-400`,children:[`−`,h.linesRemoved]})]}):null,t[12]=_.lineStats,t[13]=h,t[14]=C):C=t[14];let w;t[15]!==_.text||t[16]!==C?(w=(0,$.jsxs)(`span`,{className:S,children:[_.text,C]}),t[15]=_.text,t[16]=C,t[17]=w):w=t[17];let T;t[18]!==_.activeLabel||t[19]!==y?(T=y?(0,$.jsx)(`span`,{className:G(U.caption,`shrink-0`),children:_.activeLabel}):null,t[18]=_.activeLabel,t[19]=y,t[20]=T):T=t[20];let E;t[21]===v?E=t[22]:(E=v?(0,$.jsx)(dp,{state:`working`,className:`shrink-0`}):null,t[21]=v,t[22]=E);let D;t[23]!==f||t[24]!==w||t[25]!==T||t[26]!==E||t[27]!==b||t[28]!==x?(D=(0,$.jsxs)(`button`,{type:`button`,className:`flex items-center gap-1.5 cursor-pointer select-none text-left w-full min-w-0`,onClick:b,"aria-expanded":f,children:[x,w,T,E]}),t[23]=f,t[24]=w,t[25]=T,t[26]=E,t[27]=b,t[28]=x,t[29]=D):D=t[29];let O=f?`flex`:`hidden`,k;t[30]===O?k=t[31]:(k=G(`ml-5 flex-col gap-0.5`,O),t[30]=O,t[31]=k);let A;if(t[32]!==n||t[33]!==l){let e;t[35]===l?e=t[36]:(e=e=>l(e),t[35]=l,t[36]=e),A=n.map(e),t[32]=n,t[33]=l,t[34]=A}else A=t[34];let j;t[37]!==k||t[38]!==A?(j=(0,$.jsx)(`div`,{className:k,children:A}),t[37]=k,t[38]=A,t[39]=j):j=t[39];let M;return t[40]!==D||t[41]!==j?(M=(0,$.jsxs)(`div`,{className:`flex flex-col gap-0.5`,children:[D,j]}),t[40]=D,t[41]=j,t[42]=M):M=t[42],M}function Wv(e){let t=e.length-1;for(;t>=0;){let n=e[t];if(!n||ms(n)||n.type!==`text`)break;--t}return t+1}function Gv(e,t){return t?e.some(e=>!hs(e)&&Us(e)&&e.id===t):!1}function Kv(e,t=0){if(hs(e))return`thinking-${t}-${e.label??`none`}`;switch(e.type){case`tool_use`:return`tool-${e.id}`;case`tool-result`:return`result-${e.toolCallId}`;case`long_running_confirmation`:return`lrc-${e.prompt.toolCallId??fh(e.prompt.question)}`;case`shell_permission`:return`shell-${e.prompt.toolCallId}`;case`seatbelt_escalation`:return`seatbelt-${e.prompt.toolCallId}`;case`web_fetch_permission`:return`fetch-${e.prompt.toolCallId}`;case`text`:return`text-${fh(e.text.slice(0,128))}`}}function qv(e,t,n){let{lookupBlocks:r,toolResultMap:i,isStreaming:a,threadId:o,projectId:s,messageIndex:c,message:l,activeLocalToolCallId:u,completedToolCallIds:d,completedToolCallResults:f}=n;if(Us(e)&&e.name===`todo`)return null;if(ws(e)){if(e.toolName===`todo`)return(0,$.jsx)(Hv,{sequence:c,block:e,params:r.find(t=>Us(t)&&t.id===e.toolCallId)?.input},t);if(e.toolName===`ask_user`)return null}switch(e.type){case`long_running_confirmation`:return(0,$.jsx)(Pv,{prompt:e.prompt,answeredText:Sh(r,e.prompt.toolCallId)},t);case`shell_permission`:return(0,$.jsx)(Fv,{prompt:e.prompt,projectId:s,resolvedDecision:bh(r,e.prompt.toolCallId,`shell`)},t);case`seatbelt_escalation`:return(0,$.jsx)(Iv,{prompt:e.prompt},t);case`web_fetch_permission`:return(0,$.jsx)(Lv,{prompt:e.prompt,projectId:s,resolvedDecision:bh(r,e.prompt.toolCallId,`web_fetch`)},t);case`text`:return(0,$.jsx)(ud,{content:e.text,threadId:o},t);case`tool_use`:{let n=f?.get(e.id),o=i.get(e.id),s=mh(o)??n?.resultContent,c=gh(o)||(n?.resultIsError??!1),p=hh(o)??n?.observation;return(0,$.jsx)(Vv,{block:e,showActive:!(d?.has(e.id)===!0||n!==void 0)&&xh(r,l,e.id,u,a),resultContent:s,resultIsError:c,observation:p},t)}case`tool-result`:return(0,$.jsx)(Hv,{block:e},t)}}function Jv({blocks:e,isStreaming:t=!1,threadId:n,projectId:r,messageIndex:i=0,message:a,finalProseText:o=null}){let s=X(e=>{if(!e.selectedThreadId)return null;let t=e.threadToolSessions[e.selectedThreadId];if(t)return t.toolCallId;let n=e.devServerToolSession;return!n||n.threadId!==e.selectedThreadId?null:n.toolCallId}),c=(0,Z.useMemo)(()=>Ws(e),[e]),l=(0,Z.useMemo)(()=>_h(c),[c]),u=t||!!a?.isThinking,d=(0,Z.useRef)(new Set),f=(0,Z.useRef)(new Map);for(let e of c)if(ws(e)){d.current.add(e.toolCallId);let t=mh(e),n=gh(e),r=hh(e);t!==void 0&&f.current.set(e.toolCallId,{resultContent:t,resultIsError:n,observation:r})}let p=d.current,m=f.current,h=(0,Z.useMemo)(()=>ec(ps(c,u)),[c,u]),g=0;function _(e){let o=hs(e)?Kv(e,++g):Kv(e);return hs(e)?(0,$.jsx)(dh,{text:e.text,label:e.label,isStreaming:e.isCurrentlyStreaming,threadId:n},o):qv(e,o,{lookupBlocks:c,toolResultMap:l,isStreaming:t,threadId:n,projectId:r,messageIndex:i,message:a,activeLocalToolCallId:s,completedToolCallIds:p,completedToolCallResults:m})}function v(e,n){return ms(e)?(0,$.jsx)(Uv,{items:e.items,allBlocks:c,completedToolCallIds:p,isStreaming:u,showActiveSummary:u||Gv(e.items,s),hideActiveLabel:t,renderItem:_},`tool-group-${i}-${n}`):_(e)}let y=o?Wv(h):h.length,b=h.slice(0,y),x=h.slice(y),S=!!o&&x.length>0&&x.every(e=>!ms(e)&&e.type===`text`);return(0,$.jsx)(cm,{value:Jv,children:(0,$.jsxs)($.Fragment,{children:[b.map((e,t)=>v(e,t)),S&&o?(0,$.jsx)(Vd,{text:o,children:(0,$.jsx)(`div`,{className:`flex flex-col gap-0.5 min-w-0`,children:x.map((e,t)=>v(e,y+t))})}):x.map((e,t)=>v(e,y+t))]})})}function Yv(e){let t=(0,Q.c)(20),{content:n,children:r}=e,[i,a]=(0,Z.useState)(!1),[o,s]=(0,Z.useState)(!1),c=(0,Z.useRef)(null),l;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(l=()=>{a(!1)},t[0]=l):l=t[0];let u;t[1]===n?u=t[2]:(u=[n],t[1]=n,t[2]=u),(0,Z.useEffect)(l,u);let d;t[3]===i?d=t[4]:(d=()=>{let e=c.current;if(!e||i)return;let t=function(){e&&s(e.scrollHeight>e.clientHeight+1)};t();let n=new ResizeObserver(t);return n.observe(e),()=>n.disconnect()},t[3]=i,t[4]=d);let f;t[5]!==n||t[6]!==i?(f=[n,i],t[5]=n,t[6]=i,t[7]=f):f=t[7],(0,Z.useEffect)(d,f);let p=o||i,m;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(m=function(){a(Xv)},t[8]=m):m=t[8];let h=m,g=!i&&`line-clamp-10`,_;t[9]===g?_=t[10]:(_=G(g),t[9]=g,t[10]=_);let v;t[11]!==r||t[12]!==_?(v=(0,$.jsx)(`div`,{ref:c,className:_,children:r}),t[11]=r,t[12]=_,t[13]=v):v=t[13];let y;t[14]!==i||t[15]!==p?(y=p?(0,$.jsx)(`button`,{type:`button`,className:G(U.caption,`self-start text-background/70 underline-offset-2 hover:text-background hover:underline`),"aria-expanded":i,onClick:h,children:i?`Show less`:`Show more`}):null,t[14]=i,t[15]=p,t[16]=y):y=t[16];let b;return t[17]!==v||t[18]!==y?(b=(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-col gap-2`,children:[v,y]}),t[17]=v,t[18]=y,t[19]=b):b=t[19],b}function Xv(e){return!e}var Zv=(0,Z.memo)(function(e){let t=(0,Q.c)(21),{message:n,threadId:r,messageIndex:i,structuredContent:a,thinkingBlocks:o,finalProseText:s}=e;if(n.isThinking){if(o?.length){let e;return t[0]!==n||t[1]!==i||t[2]!==o||t[3]!==r?(e=(0,$.jsx)(Jv,{blocks:o,threadId:r,message:n,messageIndex:i}),t[0]=n,t[1]=i,t[2]=o,t[3]=r,t[4]=e):e=t[4],e}let e;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(e=G(U.caption,`whitespace-pre-wrap`),t[5]=e):e=t[5];let a;return t[6]!==n.content||t[7]!==r?(a=(0,$.jsx)(`div`,{className:e,children:(0,$.jsx)(ud,{content:n.content,threadId:r})}),t[6]=n.content,t[7]=r,t[8]=a):a=t[8],a}if(a){let e;return t[9]!==s||t[10]!==n||t[11]!==i||t[12]!==a||t[13]!==r?(e=(0,$.jsx)(Jv,{blocks:a,threadId:r,messageIndex:i,message:n,finalProseText:s}),t[9]=s,t[10]=n,t[11]=i,t[12]=a,t[13]=r,t[14]=e):e=t[14],e}let c;t[15]!==n.content||t[16]!==r?(c=(0,$.jsx)(ud,{content:n.content,threadId:r,className:U.conversationBody}),t[15]=n.content,t[16]=r,t[17]=c):c=t[17];let l=c;if(s){let e;return t[18]!==s||t[19]!==l?(e=(0,$.jsx)(Vd,{text:s,children:l}),t[18]=s,t[19]=l,t[20]=e):e=t[20],e}return l}),Qv=(0,Z.memo)(function(e){let t=(0,Q.c)(51),{message:n,threadId:r,messageIndex:i,showCheckpointRestore:a,checkpointRestoreTooltip:o,showFinalProseCopy:s}=e,c=i===void 0?0:i,l=a===void 0?!1:a,u=s===void 0?!1:s,d=n.sender===`user`,f;t[0]!==d||t[1]!==n.content?(f=d?null:Hs(n.content),t[0]=d,t[1]=n.content,t[2]=f):f=t[2];let p=f,m;t[3]!==n.content||t[4]!==n.isThinking?(m=n.isThinking?Ss(n.content):null,t[3]=n.content,t[4]=n.isThinking,t[5]=m):m=t[5];let h=m,g;t[6]!==d||t[7]!==n.content||t[8]!==n.isThinking||t[9]!==u?(g=u&&!d&&!n.isThinking?Gs(n.content):null,t[6]=d,t[7]=n.content,t[8]=n.isThinking,t[9]=u,t[10]=g):g=t[10];let _=g,v;t[11]!==_||t[12]!==n||t[13]!==c||t[14]!==p||t[15]!==h||t[16]!==r?(v=(0,$.jsx)(Zv,{message:n,threadId:r,messageIndex:c,structuredContent:p,thinkingBlocks:h,finalProseText:_}),t[11]=_,t[12]=n,t[13]=c,t[14]=p,t[15]=h,t[16]=r,t[17]=v):v=t[17];let y=v,b=d&&`flex justify-end`,x;t[18]===b?x=t[19]:(x=G(`group px-4 py-4`,b),t[18]=b,t[19]=x);let S=d&&`items-end`,C;t[20]===S?C=t[21]:(C=G(`flex flex-col gap-1 min-w-0 max-w-full`,S),t[20]=S,t[21]=C);let w;t[22]!==o||t[23]!==n||t[24]!==l||t[25]!==r?(w=(0,$.jsx)(Bd,{message:n,threadId:r,showCheckpointRestore:l,checkpointRestoreTooltip:o}),t[22]=o,t[23]=n,t[24]=l,t[25]=r,t[26]=w):w=t[26];let T=d&&`rounded-xl px-4 py-3 bg-foreground text-background`,E;t[27]===T?E=t[28]:(E=G(`flex flex-col gap-0.5 min-w-0`,U.conversationBody,T),t[27]=T,t[28]=E);let D;t[29]!==y||t[30]!==d||t[31]!==n.content?(D=d?(0,$.jsx)(Yv,{content:n.content,children:y}):y,t[29]=y,t[30]=d,t[31]=n.content,t[32]=D):D=t[32];let O;t[33]!==E||t[34]!==D?(O=(0,$.jsx)(`div`,{className:E,children:D}),t[33]=E,t[34]=D,t[35]=O):O=t[35];let k;t[36]!==n.generatedImageData||t[37]!==n.generatedImageUrl||t[38]!==r?(k=(n.generatedImageUrl||n.generatedImageData)&&(0,$.jsx)(Hd,{src:n.generatedImageData?`data:image/png;base64,${n.generatedImageData}`:n.generatedImageUrl,threadId:r}),t[36]=n.generatedImageData,t[37]=n.generatedImageUrl,t[38]=r,t[39]=k):k=t[39];let A;t[40]===n.attachments?A=t[41]:(A=n.attachments&&n.attachments.length>0&&(0,$.jsx)(hd,{attachments:n.attachments}),t[40]=n.attachments,t[41]=A);let j;t[42]!==C||t[43]!==w||t[44]!==O||t[45]!==k||t[46]!==A?(j=(0,$.jsxs)(`div`,{className:C,children:[w,O,k,A]}),t[42]=C,t[43]=w,t[44]=O,t[45]=k,t[46]=A,t[47]=j):j=t[47];let M;return t[48]!==j||t[49]!==x?(M=(0,$.jsx)(`div`,{className:x,children:j}),t[48]=j,t[49]=x,t[50]=M):M=t[50],M});function $v(e){let t=e.length;for(let n of e)if(`chunks`in n){t+=n.chunks.length;for(let e of n.chunks)t+=e.length}return t}function ey(e){let t=(0,Q.c)(2);$v(e);let n;if(t[0]!==e){n=[];for(let t of e){if(t.type===`long_running_confirmation`){n.push({type:`long_running_confirmation`,prompt:t.prompt});continue}if(t.type===`shell_permission`){n.push({type:`shell_permission`,prompt:t.prompt});continue}if(t.type===`seatbelt_escalation`){n.push({type:`seatbelt_escalation`,prompt:t.prompt});continue}if(t.type===`web_fetch_permission`){n.push({type:`web_fetch_permission`,prompt:t.prompt});continue}n.push(...Rs(t))}t[0]=e,t[1]=n}else n=t[1];return n}function ty(e){let t=(0,Q.c)(25),{segments:n,model:r,mode:i,threadId:a,projectId:o,isCreatingProject:s,isProcessingThread:c,totalMessages:l,showProcessingLine:u}=e,d=l===void 0?0:l,f=u===void 0?!1:u,p=ey(n),m=f?`pb-0`:`pb-4`,h;t[0]===m?h=t[1]:(h=G(`group px-4 pt-4`,m),t[0]=m,t[1]=h);let g;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(g=G(U.compact,`font-medium text-foreground`),t[2]=g):g=t[2];let _;t[3]===i?_=t[4]:(_=qe(i),t[3]=i,t[4]=_);let v;t[5]===_?v=t[6]:(v=(0,$.jsx)(`span`,{className:g,children:_}),t[5]=_,t[6]=v);let y;t[7]===r?y=t[8]:(y=r&&(0,$.jsxs)(`span`,{className:G(U.compact,`flex items-center gap-1 text-muted-foreground opacity-0 group-hover:opacity-100 transition-opacity`),children:[(0,$.jsx)(Kt,{className:`h-2.5 w-2.5`}),Ko(r)]}),t[7]=r,t[8]=y);let b;t[9]!==v||t[10]!==y?(b=(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[v,y]}),t[9]=v,t[10]=y,t[11]=b):b=t[11];let x;t[12]!==s||t[13]!==c||t[14]!==p||t[15]!==o||t[16]!==a||t[17]!==d?(x=p.length>0?(0,$.jsx)(`div`,{className:G(`flex flex-col gap-0.5 min-w-0`,U.conversationBody),children:(0,$.jsx)(Jv,{blocks:p,isStreaming:!0,threadId:a,projectId:o,messageIndex:d})}):s||c?(0,$.jsx)(`div`,{className:`min-w-0`,children:(0,$.jsx)(dh,{isStreaming:!0})}):null,t[12]=s,t[13]=c,t[14]=p,t[15]=o,t[16]=a,t[17]=d,t[18]=x):x=t[18];let S;t[19]!==x||t[20]!==b?(S=(0,$.jsxs)(`div`,{className:`flex flex-col gap-1 min-w-0`,children:[b,x]}),t[19]=x,t[20]=b,t[21]=S):S=t[21];let C;return t[22]!==S||t[23]!==h?(C=(0,$.jsx)(`div`,{className:h,children:S}),t[22]=S,t[23]=h,t[24]=C):C=t[24],C}var ny=3e3;function ry(e){let t=e?Nt.filter(t=>t!==e):Nt;return t[Math.floor(Math.random()*t.length)]}function iy(e){let t=(0,Q.c)(3),[n,r]=(0,Z.useState)(O),i=(0,Z.useRef)(O),a,o;return t[0]===e?(a=t[1],o=t[2]):(a=()=>{if(!e){r(O),i.current=O;return}let t=setInterval(()=>{let e=i.current===`Processing...`?ry():ry(i.current);i.current=e,r(e)},ny);return()=>clearInterval(t)},o=[e],t[0]=e,t[1]=a,t[2]=o),(0,Z.useEffect)(a,o),n}function ay(e){let t=(0,Q.c)(9),{active:n,label:r,className:i}=e,a=n===void 0?!0:n,o=iy(a&&!r),s=a?`animate-shimmer`:void 0,c;t[0]===s?c=t[1]:(c=G(U.caption,s),t[0]=s,t[1]=c);let l=r??o,u;t[2]!==c||t[3]!==l?(u=(0,$.jsx)(`span`,{className:c,children:l}),t[2]=c,t[3]=l,t[4]=u):u=t[4];let d;return t[5]!==a||t[6]!==i||t[7]!==u?(d=(0,$.jsx)(`div`,{className:i,"aria-live":`polite`,"aria-busy":a,children:u}),t[5]=a,t[6]=i,t[7]=u,t[8]=d):d=t[8],d}function oy(e){let t=(0,Q.c)(34),{projects:n,onSelectProject:r,onCreateThread:i,onConnectRepo:a,onNewApp:s,onOpenFolder:c}=e,l;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,$.jsx)(`img`,{src:`/tarsk-color.svg`,alt:`Tarsk`,className:`h-16 w-16 rounded-lg`}),t[0]=l):l=t[0];let u;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(u=(0,$.jsx)(`h1`,{className:G(U.pageTitle,`tracking-tight text-balance`),children:`Let's build it!`}),t[1]=u):u=t[1];let d=n.length===0?`Start or connect your first project`:`Select a project to start coding`,f;t[2]===d?f=t[3]:(f=(0,$.jsxs)(`div`,{className:`flex flex-col items-center gap-3`,children:[l,(0,$.jsxs)(`div`,{className:`text-center`,children:[u,(0,$.jsx)(`p`,{className:`mt-1 ${U.pageSubtitle}`,children:d})]})]}),t[2]=d,t[3]=f);let p;if(t[4]!==i||t[5]!==r||t[6]!==n){let e;t[8]!==i||t[9]!==r?(e=e=>(0,$.jsxs)(`button`,{type:`button`,className:`flex w-56 flex-col gap-2 rounded-xl border border-border bg-background p-4 text-left shadow-sm transition-colors hover:bg-muted`,onClick:()=>{e.threads.length===0?i(e.projectId):r(e.projectId,e.threads[0].threadId)},children:[(0,$.jsx)(o,{className:`h-5 w-5 text-muted-foreground`}),(0,$.jsx)(`span`,{className:`${U.body} text-foreground leading-snug font-medium`,children:e.name}),(0,$.jsxs)(`span`,{className:U.caption,children:[e.threads.length,` thread`,e.threads.length===1?``:`s`]})]},e.projectId),t[8]=i,t[9]=r,t[10]=e):e=t[10],p=n.map(e),t[4]=i,t[5]=r,t[6]=n,t[7]=p}else p=t[7];let m,h,g;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(m=(0,$.jsx)(M,{className:`h-5 w-5 text-muted-foreground`}),h=(0,$.jsx)(`span`,{className:`${U.body} text-foreground leading-snug font-medium`,children:`Connect a repo`}),g=(0,$.jsx)(`span`,{className:U.caption,children:`Clone an existing repository`}),t[11]=m,t[12]=h,t[13]=g):(m=t[11],h=t[12],g=t[13]);let _;t[14]===a?_=t[15]:(_=(0,$.jsxs)(`button`,{type:`button`,className:`flex w-56 flex-col gap-2 rounded-xl border border-border bg-background p-4 text-left shadow-sm transition-colors hover:bg-muted`,onClick:a,children:[m,h,g]}),t[14]=a,t[15]=_);let v,y,b;t[16]===Symbol.for(`react.memo_cache_sentinel`)?(v=(0,$.jsx)(Et,{className:`h-5 w-5 text-muted-foreground`}),y=(0,$.jsx)(`span`,{className:`${U.body} text-foreground leading-snug font-medium`,children:`New App`}),b=(0,$.jsx)(`span`,{className:U.caption,children:`Create a new project from template`}),t[16]=v,t[17]=y,t[18]=b):(v=t[16],y=t[17],b=t[18]);let x;t[19]===s?x=t[20]:(x=(0,$.jsxs)(`button`,{type:`button`,className:`flex w-56 flex-col gap-2 rounded-xl border border-border bg-background p-4 text-left shadow-sm transition-colors hover:bg-muted`,onClick:s,children:[v,y,b]}),t[19]=s,t[20]=x);let S,C,w;t[21]===Symbol.for(`react.memo_cache_sentinel`)?(S=(0,$.jsx)(fn,{className:`h-5 w-5 text-muted-foreground`}),C=(0,$.jsx)(`span`,{className:`${U.body} text-foreground leading-snug font-medium`,children:`Open Folder`}),w=(0,$.jsx)(`span`,{className:U.caption,children:`Use an existing local folder`}),t[21]=S,t[22]=C,t[23]=w):(S=t[21],C=t[22],w=t[23]);let T;t[24]===c?T=t[25]:(T=(0,$.jsxs)(`button`,{type:`button`,className:`flex w-56 flex-col gap-2 rounded-xl border border-border bg-background p-4 text-left shadow-sm transition-colors hover:bg-muted`,onClick:c,children:[S,C,w]}),t[24]=c,t[25]=T);let E;t[26]!==x||t[27]!==T||t[28]!==p||t[29]!==_?(E=(0,$.jsxs)(`div`,{className:`flex flex-wrap justify-center gap-3`,children:[p,_,x,T]}),t[26]=x,t[27]=T,t[28]=p,t[29]=_,t[30]=E):E=t[30];let D;return t[31]!==E||t[32]!==f?(D=(0,$.jsxs)(`div`,{className:`mx-auto flex max-w-3xl flex-1 flex-col items-center gap-8 overflow-y-auto px-4 py-8`,children:[f,E]}),t[31]=E,t[32]=f,t[33]=D):D=t[33],D}var sy=`md:mr-4`,cy=`cubic-bezier(0.22, 0.61, 0.36, 1)`,ly=`animate-in fade-in duration-200 ease-out`,uy=`[data-composer-surface]`;function dy(e){e.style.height=`auto`,e.style.height=`${Math.min(e.scrollHeight,160)}px`}function fy(e){return e?`w-full min-w-0 px-4`:`mx-auto max-w-3xl w-full min-w-0`}function py(e){return G(e?`relative w-full min-w-0 pl-4`:`relative mx-auto w-full max-w-3xl min-w-0`,sy)}function my(e){return`relative w-full min-w-0`}function hy(e,t,n=!1,r=!1){return t?`absolute inset-x-0 bottom-0 mx-auto w-full max-w-3xl max-md:px-2 px-4 pb-4 pointer-events-none`:r?`relative w-full min-w-0`:n?`relative mx-auto w-full max-w-3xl px-0`:e?`relative w-full min-w-0 pb-2 md:pb-4`:`relative w-full max-w-3xl max-md:px-0 pb-2 md:pl-4 md:pb-4 md:-ml-[6px]`}function gy(e,t=!1,n=!0){return e?`relative flex min-w-0 flex-1 flex-col bg-background pointer-events-auto`:G(`relative flex min-w-0 flex-1 flex-col rounded-[24px] border focus-within:ring-2 focus-within:ring-ring/40 pointer-events-auto`,t?`border-border/50 bg-background/80 shadow-lg backdrop-blur-sm`:G(`border-border bg-background`,n&&`shadow-2xl`))}var _y={onboarding:{status:()=>[`onboarding`,`status`]},app:{update:()=>[`app`,`update`]},models:{enabled:e=>[`models`,`enabled`,e],enabledImage:e=>[`models`,`enabled-image`,e]},userTasks:e=>[`user-tasks`,e],conversations:{recent:()=>[`conversations`,`recent`]}};function vy(e){let t=(0,Q.c)(10),n;t[0]===e?n=t[1]:(n=_y.models.enabled(e),t[0]=e,t[1]=n);let r;t[2]===n?r=t[3]:(r={queryKey:n,queryFn:Ki,placeholderData:cr},t[2]=n,t[3]=r);let i=vr(r),a;bb0:{if(!i.data){let e;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(e=[],t[4]=e):e=t[4],a=e;break bb0}let e;t[5]===i.data?e=t[6]:(e=Object.values(i.data).flat(),t[5]=i.data,t[6]=e),a=e}let o=a,s;return t[7]!==o||t[8]!==i?(s={...i,models:o},t[7]=o,t[8]=i,t[9]=s):s=t[9],s}function yy(e,t){let n=(0,Q.c)(11),r;n[0]===e?r=n[1]:(r=_y.models.enabledImage(e),n[0]=e,n[1]=r);let i;n[2]!==t||n[3]!==r?(i={queryKey:r,queryFn:Hi,placeholderData:cr,enabled:t},n[2]=t,n[3]=r,n[4]=i):i=n[4];let a=vr(i),o;bb0:{if(!a.data){let e;n[5]===Symbol.for(`react.memo_cache_sentinel`)?(e=[],n[5]=e):e=n[5],o=e;break bb0}let e;n[6]===a.data?e=n[7]:(e=Object.values(a.data).flat(),n[6]=a.data,n[7]=e),o=e}let s=o,c;return n[8]!==s||n[9]!==a?(c={...a,models:s},n[8]=s,n[9]=a,n[10]=c):c=n[10],c}var by=Ut(`chat.input-state`);function xy(e,t){return t===`primary`?e:`${e}:${t}`}function Sy({availableModels:e,paneModel:t,storedThreadModel:n,currentThreadModelId:r,currentThreadModelProvider:i,projectLastSelectedModelId:a,projectLastSelectedModelProvider:o}){if(e.length===0)return{model:null,persistFallback:!1,pinPane:!1};let s=e[0];function c(t,n){return!t||!n?null:e.find(e=>e.id===t&&e.provider===n)??null}if(t){let e=c(t.id,t.provider);return{model:e??s,persistFallback:!1,pinPane:!e}}let l=[{id:r,provider:i}];n&&l.push({id:n.id,provider:n.provider}),l.push({id:a,provider:o});for(let e of l){let t=c(e.id,e.provider);if(t)return{model:t,persistFallback:!1,pinPane:!1}}return{model:s,persistFallback:l.length>0,pinPane:!1}}function Cy(e,t){if(t.length===0)return null;if(e){let n=t.find(t=>t.id===e.id&&t.provider===e.provider);if(n)return n}return t[0]}function wy(){let e=(0,Q.c)(15),t=Ks(),{paneId:n}=wv(),r=X(Ny),i=X(My),a=X(jy),o=X(Ay),s=X(ky),c=X(Oy),l=X(Dy),u=X(Ey),d=X(Ty),f;e[0]===n?f=e[1]:(f=e=>As(e.threadStreamingStates,e.selectedThreadId,n).isStreaming,e[0]=n,e[1]=f);let p=X(f),m;return e[2]!==c||e[3]!==l||e[4]!==t||e[5]!==u||e[6]!==d||e[7]!==p||e[8]!==n||e[9]!==s||e[10]!==o||e[11]!==a||e[12]!==i||e[13]!==r?(m={dispatch:t,paneId:n,selectedThreadId:r,selectedProjectId:i,projects:a,projectModelSelections:o,paneModelSelections:s,chatInputDrafts:c,configUpdatedAt:l,focusChatInput:u,focusedPane:d,isStreaming:p},e[2]=c,e[3]=l,e[4]=t,e[5]=u,e[6]=d,e[7]=p,e[8]=n,e[9]=s,e[10]=o,e[11]=a,e[12]=i,e[13]=r,e[14]=m):m=e[14],m}function Ty(e){return e.focusedPane}function Ey(e){return e.focusChatInput}function Dy(e){return e.configUpdatedAt}function Oy(e){return e.chatInputDrafts}function ky(e){return e.paneModelSelections}function Ay(e){return e.projectModelSelections}function jy(e){return e.projects}function My(e){return e.selectedProjectId}function Ny(e){return e.selectedThreadId}function Py(e){let t=(0,Q.c)(30),{initialValue:n,selectedThreadId:r,paneId:i,chatInputDrafts:a,dispatch:o}=e,s;t[0]!==a||t[1]!==n||t[2]!==i||t[3]!==r?(s=()=>{if(r){let e=xy(r,i);if(a[e])return a[e]}return n??``},t[0]=a,t[1]=n,t[2]=i,t[3]=r,t[4]=s):s=t[4];let[c,l]=(0,Z.useState)(s),[u,d]=(0,Z.useState)(-1),[f,p]=(0,Z.useState)(``),[m,h]=(0,Z.useState)(0),g=(0,Z.useRef)(c),_,v;t[5]===c?(_=t[6],v=t[7]):(_=()=>{g.current=c},v=[c],t[5]=c,t[6]=_,t[7]=v),(0,Z.useEffect)(_,v);let y=(0,Z.useRef)(a),b,x;t[8]===a?(b=t[9],x=t[10]):(b=()=>{y.current=a},x=[a],t[8]=a,t[9]=b,t[10]=x),(0,Z.useEffect)(b,x);let S=(0,Z.useRef)(!0),C,w;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(C=()=>(S.current=!0,()=>{S.current=!1}),w=[],t[11]=C,t[12]=w):(C=t[11],w=t[12]),(0,Z.useEffect)(C,w);let T=r?a[xy(r,i)]??``:``,E;t[13]!==r||t[14]!==T?(E=()=>{r&&l(T)},t[13]=r,t[14]=T,t[15]=E):E=t[15];let D;t[16]!==i||t[17]!==r||t[18]!==T?(D=[r,T,i],t[16]=i,t[17]=r,t[18]=T,t[19]=D):D=t[19],(0,Z.useEffect)(E,D);let O,k;t[20]!==o||t[21]!==i||t[22]!==r?(O=()=>{let e=r,t=e?xy(e,i):null;return()=>{t&&g.current.trim()&&y.current[t]!==g.current&&o({type:Y.SetChatInputDraft,threadId:t,draft:g.current})}},k=[r,i,o],t[20]=o,t[21]=i,t[22]=r,t[23]=O,t[24]=k):(O=t[23],k=t[24]),(0,Z.useEffect)(O,k);let A;return t[25]!==m||t[26]!==f||t[27]!==u||t[28]!==c?(A={message:c,setMessage:l,historyIndex:u,setHistoryIndex:d,draftMessage:f,setDraftMessage:p,cursorPosition:m,setCursorPosition:h,messageRef:g,chatInputDraftsRef:y,mountedRef:S},t[25]=m,t[26]=f,t[27]=u,t[28]=c,t[29]=A):A=t[29],A}function Fy({selectedProject:e,selectedProjectId:t}){let n=e?.defaultChatMode??`auto`,r=(0,Z.useRef)(rt(n)).current,[i,a]=(0,Z.useState)(r.planMode),[o,s]=(0,Z.useState)(r.ralphMode),[c,l]=(0,Z.useState)(r.orchestrateMode),[u,d]=(0,Z.useState)(r.autoMode),[f,p]=(0,Z.useState)(r.imageMode),m=(0,Z.useCallback)(function(e){let t=rt(e);a(t.planMode),p(t.imageMode),s(t.ralphMode),l(t.orchestrateMode),d(t.autoMode)},[]),h=(0,Z.useRef)(e?t:null);return(0,Z.useEffect)(()=>{!t||!e||h.current!==t&&(h.current=t,m(n))},[t,e,n,m]),{planMode:i,setPlanMode:a,ralphMode:o,setRalphMode:s,orchestrateMode:c,setOrchestrateMode:l,autoMode:u,setAutoMode:d,imageMode:f,setImageMode:p,applyChatMode:m,projectChatMode:n}}function Iy({dispatch:e,paneId:t,selectedThreadId:n,selectedProjectId:r,model:i,shouldPersist:a,shouldPinPane:o,pendingModelPersistenceRef:s}){let c=n;if(!c||((o||a)&&e({type:Y.SetProjectModel,threadId:c,model:i,...o?{paneId:t}:{}}),!a))return;let l=`${c}:${i.provider??``}:${i.id}`;s.current!==l&&(s.current=l,by.info(`Persisting model to thread`,{threadId:c,model:{id:i.id,provider:i.provider}}),Qa(c,{model:i.id,modelProvider:i.provider}).then(()=>{let e=r;e&&Fi(e,{lastSelectedModel:i.id,lastSelectedModelProvider:i.provider}).catch(e=>{by.error(`Failed to save model to project`,{err:e})}),s.current===l&&(s.current=null),by.info(`Model persisted successfully`)}).catch(e=>{s.current===l&&(s.current=null),by.error(`Failed to save model to thread`,{err:e})}))}async function Ly({model:e,effort:t,dispatch:n,paneId:r,selectedThreadId:i,paneModelSelections:a,projectModelSelections:o,setAvailableModels:s,setSelectedModel:c,setAvailableImageModels:l,setSelectedImageModel:u}){if(!e.provider)return;try{await Eo(e.provider,e.id,{reasoningEffort:t})}catch(e){by.error(`Failed to save model reasoning effort`,{err:e});return}function d(n){return n.id!==e.id||n.provider!==e.provider?n:{...n,settings:{...n.settings,reasoningEffort:t}}}s(e=>e.map(d)),c(e=>e&&d(e)),l(e=>e.map(d)),u(e=>e&&d(e));let f=i;if(f){let t=a[r],i=t??o[f];i&&i.id===e.id&&i.provider===e.provider&&n({type:Y.SetProjectModel,threadId:f,model:d(i),...t?{paneId:r}:{}})}}function Ry({allEnabledModels:e,enabledModelsFetched:t,selectedProjectId:n,projects:r,selectedThreadId:i,paneModelSelections:a,paneId:o,projectModelSelections:s,selectedModelIdRef:c,selectedModelProviderRef:l,setAvailableModels:u,setSelectedModel:d,selectModel:f}){let p=n?r.find(e=>e.projectId===n):void 0,m=p?.threads.find(e=>e.threadId===i),h=i?a[o]:void 0,g=i?s[i]:void 0;if(e.length===0){t&&(u([]),d(null));return}u(e);let _=Sy({availableModels:e,paneModel:h,storedThreadModel:g,currentThreadModelId:m?.model,currentThreadModelProvider:m?.modelProvider,projectLastSelectedModelId:p?.lastSelectedModel,projectLastSelectedModelProvider:p?.lastSelectedModelProvider}),v=_.model;if(!v)return;let y=c.current===v.id&&l.current===v.provider;if(_.pinPane||_.persistFallback){f(v,{persist:_.persistFallback,pinPane:_.pinPane});return}y||d(v)}function zy(e){let t=(0,Q.c)(47),{dispatch:n,paneId:r,selectedThreadId:i,selectedProjectId:a,projects:o,projectModelSelections:s,paneModelSelections:c,configUpdatedAt:l,imageMode:u}=e,{models:d,isFetched:f}=vy(l),{models:p,isFetched:m}=yy(l,u),h;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(h=[],t[0]=h):h=t[0];let[g,_]=(0,Z.useState)(h),v;t[1]!==r||t[2]!==c||t[3]!==s||t[4]!==i?(v=()=>(i?c[r]??s[i]:void 0)??null,t[1]=r,t[2]=c,t[3]=s,t[4]=i,t[5]=v):v=t[5];let[y,b]=(0,Z.useState)(v),x=(0,Z.useRef)(y?.id??``),S=(0,Z.useRef)(y?.provider??``),C=(0,Z.useRef)(null),w;t[6]!==y?.id||t[7]!==y?.provider?(w=()=>{x.current=y?.id??``,S.current=y?.provider??``},t[6]=y?.id,t[7]=y?.provider,t[8]=w):w=t[8];let T=y?.id,E=y?.provider,D;t[9]!==T||t[10]!==E?(D=[T,E],t[9]=T,t[10]=E,t[11]=D):D=t[11],(0,Z.useEffect)(w,D);let O;t[12]!==n||t[13]!==r||t[14]!==a||t[15]!==i?(O=(e,t)=>{b(e),Iy({dispatch:n,paneId:r,selectedThreadId:i,selectedProjectId:a,model:e,shouldPersist:t?.persist!==!1,shouldPinPane:t?.pinPane??!0,pendingModelPersistenceRef:C})},t[12]=n,t[13]=r,t[14]=a,t[15]=i,t[16]=O):O=t[16];let k=O,A;t[17]===Symbol.for(`react.memo_cache_sentinel`)?(A=[],t[17]=A):A=t[17];let[j,M]=(0,Z.useState)(A),[N,P]=(0,Z.useState)(null),F;t[18]!==n||t[19]!==r||t[20]!==c||t[21]!==s||t[22]!==i?(F=async function(e,t){await Ly({model:e,effort:t,dispatch:n,paneId:r,selectedThreadId:i,paneModelSelections:c,projectModelSelections:s,setAvailableModels:_,setSelectedModel:b,setAvailableImageModels:M,setSelectedImageModel:P})},t[18]=n,t[19]=r,t[20]=c,t[21]=s,t[22]=i,t[23]=F):F=t[23];let I=F,L,R;t[24]!==d||t[25]!==f||t[26]!==r||t[27]!==c||t[28]!==s||t[29]!==o||t[30]!==k||t[31]!==a||t[32]!==i?(L=()=>{Ry({allEnabledModels:d,enabledModelsFetched:f,selectedProjectId:a,projects:o,selectedThreadId:i,paneModelSelections:c,paneId:r,projectModelSelections:s,selectedModelIdRef:x,selectedModelProviderRef:S,setAvailableModels:_,setSelectedModel:b,selectModel:k})},R=[i,a,o,s,r,c,d,f,k],t[24]=d,t[25]=f,t[26]=r,t[27]=c,t[28]=s,t[29]=o,t[30]=k,t[31]=a,t[32]=i,t[33]=L,t[34]=R):(L=t[33],R=t[34]),(0,Z.useEffect)(L,R);let z,B;t[35]!==p||t[36]!==m||t[37]!==u?(z=()=>{!u||!m||(M(p),P(e=>Cy(e,p)))},B=[u,m,p],t[35]=p,t[36]=m,t[37]=u,t[38]=z,t[39]=B):(z=t[38],B=t[39]),(0,Z.useEffect)(z,B);let V;return t[40]!==j||t[41]!==g||t[42]!==k||t[43]!==N||t[44]!==y||t[45]!==I?(V={availableModels:g,setAvailableModels:_,selectedModel:y,setSelectedModel:k,updateModelReasoningEffort:I,selectedModelIdRef:x,availableImageModels:j,setAvailableImageModels:M,selectedImageModel:N,setSelectedImageModel:P},t[40]=j,t[41]=g,t[42]=k,t[43]=N,t[44]=y,t[45]=I,t[46]=V):V=t[46],V}function By(){let e=(0,Q.c)(3),t;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=[],e[0]=t):t=e[0];let[n,r]=(0,Z.useState)(t),i;return e[1]===n?i=e[2]:(i={attachments:n,setAttachments:r},e[1]=n,e[2]=i),i}function Vy(e){let t=(0,Q.c)(22),{selectedThreadId:n}=e,r;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=[],t[0]=r):r=t[0];let[i,a]=(0,Z.useState)(r),[o,s]=(0,Z.useState)(!1),[c,l]=(0,Z.useState)(``),[u,d]=(0,Z.useState)(0),f;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(f=[],t[1]=f):f=t[1];let[p,m]=(0,Z.useState)(f),h;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(h=[],t[2]=h):h=t[2];let[g,_]=(0,Z.useState)(h),v;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(v=[],t[3]=v):v=t[3];let[y,b]=(0,Z.useState)(v),[x,S]=(0,Z.useState)(!1),[C,w]=(0,Z.useState)(!1),[T,E]=(0,Z.useState)(``),D,O;t[4]===n?(D=t[5],O=t[6]):(D=()=>{n&&Xo(n).then(e=>{let{commands:t,skills:n,bundledSkills:r}=e;by.debug(`Loaded slash commands and skills`,{commands:t,skills:n,bundledSkills:r}),m(t),_(n),b(r)}).catch(Uy)},O=[n],t[4]=n,t[5]=D,t[6]=O),(0,Z.useEffect)(D,O);let k=(0,Z.useRef)(!1),A,j;t[7]!==n||t[8]!==C?(A=()=>{C&&!k.current&&n&&Xo(n).then(e=>{let{commands:t,skills:n,bundledSkills:r}=e;m(t),_(n),b(r)}).catch(Hy),k.current=C},j=[C,n],t[7]=n,t[8]=C,t[9]=A,t[10]=j):(A=t[9],j=t[10]),(0,Z.useEffect)(A,j);let M;return t[11]!==i||t[12]!==x||t[13]!==y||t[14]!==T||t[15]!==u||t[16]!==C||t[17]!==o||t[18]!==g||t[19]!==p||t[20]!==c?(M={allFiles:i,setAllFiles:a,showSuggestions:o,setShowSuggestions:s,suggestionQuery:c,setSuggestionQuery:l,selectedIndex:u,setSelectedIndex:d,slashCommands:p,setSlashCommands:m,skills:g,setSkills:_,bundledSkills:y,setBundledSkills:b,bundledSkillMode:x,setBundledSkillMode:S,showCommandSuggestions:C,setShowCommandSuggestions:w,commandQuery:T,setCommandQuery:E},t[11]=i,t[12]=x,t[13]=y,t[14]=T,t[15]=u,t[16]=C,t[17]=o,t[18]=g,t[19]=p,t[20]=c,t[21]=M):M=t[21],M}function Hy(e){return by.error(`Failed to refresh slash commands and skills:`,e)}function Uy(e){return by.error(`Failed to load slash commands and skills`,{err:e})}function Wy(){let e=(0,Q.c)(1),t=(0,Z.useRef)(null),n=(0,Z.useRef)(null),r=(0,Z.useRef)(null),i=(0,Z.useRef)(null),a;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(a={fileInputRef:t,textareaRef:n,suggestionsRef:r,commandSuggestionsRef:i},e[0]=a):a=e[0],a}function Gy(){let e=(0,Q.c)(7),[t,n]=(0,Z.useState)(!1),[r,i]=(0,Z.useState)(!1),a=(0,Z.useRef)(null),o=(0,Z.useRef)(null),s,c;e[0]!==t||e[1]!==r?(s=()=>{let e=e=>{a.current&&!a.current.contains(e.target)&&n(!1),o.current&&!o.current.contains(e.target)&&i(!1)};if(t||r)return document.addEventListener(`mousedown`,e),()=>{document.removeEventListener(`mousedown`,e)}},c=[t,r],e[0]=t,e[1]=r,e[2]=s,e[3]=c):(s=e[2],c=e[3]),(0,Z.useEffect)(s,c);let l;return e[4]!==t||e[5]!==r?(l={showModelMenu:t,setShowModelMenu:n,showPlusMenu:r,setShowPlusMenu:i,modelMenuRef:a,plusMenuRef:o},e[4]=t,e[5]=r,e[6]=l):l=e[6],l}function Ky(e){let t=(0,Q.c)(25),{selectedThreadId:n,paneId:r,dispatch:i,projectChatMode:a,applyChatMode:o,messageRef:s,chatInputDraftsRef:c,mountedRef:l,setMessage:u,setAllFiles:d,setShowSuggestions:f,setSlashCommands:p,setSkills:m,setBundledSkills:h,setBundledSkillMode:g,setShowCommandSuggestions:_}=e,[v,y]=(0,Z.useState)(n),b;t[0]!==o||t[1]!==c||t[2]!==i||t[3]!==s||t[4]!==l||t[5]!==r||t[6]!==v||t[7]!==a||t[8]!==n||t[9]!==d||t[10]!==g||t[11]!==h||t[12]!==u||t[13]!==_||t[14]!==f||t[15]!==m||t[16]!==p?(b=()=>{if(n!==v){v&&s.current.trim()&&c.current[xy(v,r)]!==s.current&&i({type:Y.SetChatInputDraft,threadId:xy(v,r),draft:s.current});let e=!1;return queueMicrotask(()=>{e||!l.current||(y(n),u(n?c.current[xy(n,r)]??``:``),d([]),f(!1),p([]),m([]),h([]),g(!1),_(!1),o(a))}),()=>{e=!0}}},t[0]=o,t[1]=c,t[2]=i,t[3]=s,t[4]=l,t[5]=r,t[6]=v,t[7]=a,t[8]=n,t[9]=d,t[10]=g,t[11]=h,t[12]=u,t[13]=_,t[14]=f,t[15]=m,t[16]=p,t[17]=b):b=t[17];let x;t[18]!==o||t[19]!==i||t[20]!==r||t[21]!==v||t[22]!==a||t[23]!==n?(x=[n,v,r,i,o,a],t[18]=o,t[19]=i,t[20]=r,t[21]=v,t[22]=a,t[23]=n,t[24]=x):x=t[24],(0,Z.useEffect)(b,x)}function qy(e){let t=(0,Q.c)(19),{textareaRef:n,message:r,focusChatInput:i,selectedThreadId:a,isStreaming:o,paneId:s,focusedPane:c,dispatch:l}=e,u;t[0]===n?u=t[1]:(u=()=>{let e=n.current;e&&dy(e)},t[0]=n,t[1]=u);let d;t[2]===r?d=t[3]:(d=[r],t[2]=r,t[3]=d),(0,Z.useLayoutEffect)(u,d);let f;t[4]!==l||t[5]!==i||t[6]!==c||t[7]!==o||t[8]!==s||t[9]!==a||t[10]!==n?(f=()=>{if(!i||!a||o||s!==c)return;let e=n.current;e&&(e.focus(),l({type:Y.ClearFocusChatInput}))},t[4]=l,t[5]=i,t[6]=c,t[7]=o,t[8]=s,t[9]=a,t[10]=n,t[11]=f):f=t[11];let p;t[12]!==l||t[13]!==i||t[14]!==c||t[15]!==o||t[16]!==s||t[17]!==a?(p=[i,a,o,s,c,l],t[12]=l,t[13]=i,t[14]=c,t[15]=o,t[16]=s,t[17]=a,t[18]=p):p=t[18],(0,Z.useEffect)(f,p)}function Jy(e){let t=(0,Q.c)(118),n;t[0]===e?n=t[1]:(n=e===void 0?{}:e,t[0]=e,t[1]=n);let{initialValue:r}=n,{dispatch:i,paneId:a,selectedThreadId:o,selectedProjectId:s,projects:c,projectModelSelections:l,paneModelSelections:u,chatInputDrafts:d,configUpdatedAt:f,focusChatInput:p,focusedPane:m,isStreaming:h}=wy(),g;if(t[2]!==c||t[3]!==s){let e;t[5]===s?e=t[6]:(e=e=>e.projectId===s,t[5]=s,t[6]=e),g=c.find(e),t[2]=c,t[3]=s,t[4]=g}else g=t[4];let _=g,v;t[7]!==d||t[8]!==i||t[9]!==r||t[10]!==a||t[11]!==o?(v={initialValue:r,selectedThreadId:o,paneId:a,chatInputDrafts:d,dispatch:i},t[7]=d,t[8]=i,t[9]=r,t[10]=a,t[11]=o,t[12]=v):v=t[12];let y=Py(v),b;t[13]!==_||t[14]!==s?(b={selectedProject:_,selectedProjectId:s},t[13]=_,t[14]=s,t[15]=b):b=t[15];let x=Fy(b),S;t[16]!==f||t[17]!==i||t[18]!==x.imageMode||t[19]!==a||t[20]!==u||t[21]!==l||t[22]!==c||t[23]!==s||t[24]!==o?(S={dispatch:i,paneId:a,selectedThreadId:o,selectedProjectId:s,projects:c,projectModelSelections:l,paneModelSelections:u,configUpdatedAt:f,imageMode:x.imageMode},t[16]=f,t[17]=i,t[18]=x.imageMode,t[19]=a,t[20]=u,t[21]=l,t[22]=c,t[23]=s,t[24]=o,t[25]=S):S=t[25];let C=zy(S),{attachments:w,setAttachments:T}=By(),E;t[26]===o?E=t[27]:(E={selectedThreadId:o},t[26]=o,t[27]=E);let D=Vy(E),O=Wy(),k=Gy(),A;t[28]!==D.setAllFiles||t[29]!==D.setBundledSkillMode||t[30]!==D.setBundledSkills||t[31]!==D.setShowCommandSuggestions||t[32]!==D.setShowSuggestions||t[33]!==D.setSkills||t[34]!==D.setSlashCommands||t[35]!==i||t[36]!==x.applyChatMode||t[37]!==x.projectChatMode||t[38]!==a||t[39]!==o||t[40]!==y.chatInputDraftsRef||t[41]!==y.messageRef||t[42]!==y.mountedRef||t[43]!==y.setMessage?(A={selectedThreadId:o,paneId:a,dispatch:i,projectChatMode:x.projectChatMode,applyChatMode:x.applyChatMode,messageRef:y.messageRef,chatInputDraftsRef:y.chatInputDraftsRef,mountedRef:y.mountedRef,setMessage:y.setMessage,setAllFiles:D.setAllFiles,setShowSuggestions:D.setShowSuggestions,setSlashCommands:D.setSlashCommands,setSkills:D.setSkills,setBundledSkills:D.setBundledSkills,setBundledSkillMode:D.setBundledSkillMode,setShowCommandSuggestions:D.setShowCommandSuggestions},t[28]=D.setAllFiles,t[29]=D.setBundledSkillMode,t[30]=D.setBundledSkills,t[31]=D.setShowCommandSuggestions,t[32]=D.setShowSuggestions,t[33]=D.setSkills,t[34]=D.setSlashCommands,t[35]=i,t[36]=x.applyChatMode,t[37]=x.projectChatMode,t[38]=a,t[39]=o,t[40]=y.chatInputDraftsRef,t[41]=y.messageRef,t[42]=y.mountedRef,t[43]=y.setMessage,t[44]=A):A=t[44],Ky(A);let j;t[45]!==i||t[46]!==p||t[47]!==m||t[48]!==h||t[49]!==a||t[50]!==O.textareaRef||t[51]!==o||t[52]!==y.message?(j={textareaRef:O.textareaRef,message:y.message,focusChatInput:p,selectedThreadId:o,isStreaming:h,paneId:a,focusedPane:m,dispatch:i},t[45]=i,t[46]=p,t[47]=m,t[48]=h,t[49]=a,t[50]=O.textareaRef,t[51]=o,t[52]=y.message,t[53]=j):j=t[53],qy(j);let M;return t[54]!==w||t[55]!==D.allFiles||t[56]!==D.bundledSkillMode||t[57]!==D.bundledSkills||t[58]!==D.commandQuery||t[59]!==D.selectedIndex||t[60]!==D.setAllFiles||t[61]!==D.setBundledSkillMode||t[62]!==D.setBundledSkills||t[63]!==D.setCommandQuery||t[64]!==D.setSelectedIndex||t[65]!==D.setShowCommandSuggestions||t[66]!==D.setShowSuggestions||t[67]!==D.setSkills||t[68]!==D.setSlashCommands||t[69]!==D.setSuggestionQuery||t[70]!==D.showCommandSuggestions||t[71]!==D.showSuggestions||t[72]!==D.skills||t[73]!==D.slashCommands||t[74]!==D.suggestionQuery||t[75]!==i||t[76]!==k.modelMenuRef||t[77]!==k.plusMenuRef||t[78]!==k.setShowModelMenu||t[79]!==k.setShowPlusMenu||t[80]!==k.showModelMenu||t[81]!==k.showPlusMenu||t[82]!==x.autoMode||t[83]!==x.imageMode||t[84]!==x.orchestrateMode||t[85]!==x.planMode||t[86]!==x.ralphMode||t[87]!==x.setAutoMode||t[88]!==x.setImageMode||t[89]!==x.setOrchestrateMode||t[90]!==x.setPlanMode||t[91]!==x.setRalphMode||t[92]!==C.availableImageModels||t[93]!==C.availableModels||t[94]!==C.selectedImageModel||t[95]!==C.selectedModel||t[96]!==C.selectedModelIdRef||t[97]!==C.setAvailableImageModels||t[98]!==C.setAvailableModels||t[99]!==C.setSelectedImageModel||t[100]!==C.setSelectedModel||t[101]!==C.updateModelReasoningEffort||t[102]!==O.commandSuggestionsRef||t[103]!==O.fileInputRef||t[104]!==O.suggestionsRef||t[105]!==O.textareaRef||t[106]!==o||t[107]!==T||t[108]!==y.cursorPosition||t[109]!==y.draftMessage||t[110]!==y.historyIndex||t[111]!==y.message||t[112]!==y.messageRef||t[113]!==y.setCursorPosition||t[114]!==y.setDraftMessage||t[115]!==y.setHistoryIndex||t[116]!==y.setMessage?(M={message:y.message,setMessage:y.setMessage,historyIndex:y.historyIndex,setHistoryIndex:y.setHistoryIndex,draftMessage:y.draftMessage,setDraftMessage:y.setDraftMessage,cursorPosition:y.cursorPosition,setCursorPosition:y.setCursorPosition,availableModels:C.availableModels,setAvailableModels:C.setAvailableModels,selectedModel:C.selectedModel,setSelectedModel:C.setSelectedModel,updateModelReasoningEffort:C.updateModelReasoningEffort,selectedModelIdRef:C.selectedModelIdRef,showModelMenu:k.showModelMenu,setShowModelMenu:k.setShowModelMenu,showPlusMenu:k.showPlusMenu,setShowPlusMenu:k.setShowPlusMenu,attachments:w,setAttachments:T,planMode:x.planMode,setPlanMode:x.setPlanMode,ralphMode:x.ralphMode,setRalphMode:x.setRalphMode,orchestrateMode:x.orchestrateMode,setOrchestrateMode:x.setOrchestrateMode,autoMode:x.autoMode,setAutoMode:x.setAutoMode,imageMode:x.imageMode,setImageMode:x.setImageMode,availableImageModels:C.availableImageModels,setAvailableImageModels:C.setAvailableImageModels,selectedImageModel:C.selectedImageModel,setSelectedImageModel:C.setSelectedImageModel,allFiles:D.allFiles,setAllFiles:D.setAllFiles,showSuggestions:D.showSuggestions,setShowSuggestions:D.setShowSuggestions,suggestionQuery:D.suggestionQuery,setSuggestionQuery:D.setSuggestionQuery,selectedIndex:D.selectedIndex,setSelectedIndex:D.setSelectedIndex,slashCommands:D.slashCommands,setSlashCommands:D.setSlashCommands,skills:D.skills,setSkills:D.setSkills,bundledSkills:D.bundledSkills,setBundledSkills:D.setBundledSkills,bundledSkillMode:D.bundledSkillMode,setBundledSkillMode:D.setBundledSkillMode,showCommandSuggestions:D.showCommandSuggestions,setShowCommandSuggestions:D.setShowCommandSuggestions,commandQuery:D.commandQuery,setCommandQuery:D.setCommandQuery,messageRef:y.messageRef,fileInputRef:O.fileInputRef,textareaRef:O.textareaRef,modelMenuRef:k.modelMenuRef,plusMenuRef:k.plusMenuRef,suggestionsRef:O.suggestionsRef,commandSuggestionsRef:O.commandSuggestionsRef,selectedThreadId:o,dispatch:i},t[54]=w,t[55]=D.allFiles,t[56]=D.bundledSkillMode,t[57]=D.bundledSkills,t[58]=D.commandQuery,t[59]=D.selectedIndex,t[60]=D.setAllFiles,t[61]=D.setBundledSkillMode,t[62]=D.setBundledSkills,t[63]=D.setCommandQuery,t[64]=D.setSelectedIndex,t[65]=D.setShowCommandSuggestions,t[66]=D.setShowSuggestions,t[67]=D.setSkills,t[68]=D.setSlashCommands,t[69]=D.setSuggestionQuery,t[70]=D.showCommandSuggestions,t[71]=D.showSuggestions,t[72]=D.skills,t[73]=D.slashCommands,t[74]=D.suggestionQuery,t[75]=i,t[76]=k.modelMenuRef,t[77]=k.plusMenuRef,t[78]=k.setShowModelMenu,t[79]=k.setShowPlusMenu,t[80]=k.showModelMenu,t[81]=k.showPlusMenu,t[82]=x.autoMode,t[83]=x.imageMode,t[84]=x.orchestrateMode,t[85]=x.planMode,t[86]=x.ralphMode,t[87]=x.setAutoMode,t[88]=x.setImageMode,t[89]=x.setOrchestrateMode,t[90]=x.setPlanMode,t[91]=x.setRalphMode,t[92]=C.availableImageModels,t[93]=C.availableModels,t[94]=C.selectedImageModel,t[95]=C.selectedModel,t[96]=C.selectedModelIdRef,t[97]=C.setAvailableImageModels,t[98]=C.setAvailableModels,t[99]=C.setSelectedImageModel,t[100]=C.setSelectedModel,t[101]=C.updateModelReasoningEffort,t[102]=O.commandSuggestionsRef,t[103]=O.fileInputRef,t[104]=O.suggestionsRef,t[105]=O.textareaRef,t[106]=o,t[107]=T,t[108]=y.cursorPosition,t[109]=y.draftMessage,t[110]=y.historyIndex,t[111]=y.message,t[112]=y.messageRef,t[113]=y.setCursorPosition,t[114]=y.setDraftMessage,t[115]=y.setHistoryIndex,t[116]=y.setMessage,t[117]=M):M=t[117],M}var Yy=e=>{Gr(e)},Xy=`pending-auto-route`;function Zy(e){return{messageId:Xy,sender:`user`,content:e.prompt,contentType:`text`,timestamp:e.startedAt,attachments:e.attachments}}function Qy(e){return{id:e.model,provider:e.provider}}function $y(e,t,n){switch(e){case`cheap`:{let r=en(`cheap`,t);return{decision:e,model:r?Qy(r):n}}case`smart`:{let r=ue(t);return{decision:e,model:r?Qy(r):n}}default:return{decision:`default`,model:n}}}var eb=`/orchestrate`,tb=/^\s*\/orchestrate(?:\s|$)/i;function nb(e){return tb.test(e)}function rb(e){if(nb(e))return e;let t=e.trimStart();return t?`${eb} ${t}`:`${eb} `}var ib=Ut(`app.use-chat-input-handlers.hook`);function ab(e,t){return t===`primary`?e:`${e}:${t}`}function ob({message:e,setMessage:t,userTasks:n,onMatchedUserTaskSend:r,attachments:i,selectedModel:a,onSend:o,isStreaming:s,selectedThreadId:c,isListening:l,stopListening:u,resetTranscript:d,dispatch:f,historyIndex:p,setHistoryIndex:m,draftMessage:h,setDraftMessage:g,cursorPosition:_,setCursorPosition:v,showSuggestions:y,setShowSuggestions:b,suggestionQuery:x,setSuggestionQuery:S,allFiles:C,setAllFiles:w,selectedIndex:T,setSelectedIndex:E,showCommandSuggestions:D,setShowCommandSuggestions:O,commandQuery:k,setCommandQuery:A,slashCommands:j,skills:M,bundledSkills:N,bundledSkillMode:P,setBundledSkillMode:F,messageRef:I,textareaRef:L,setAttachments:R,planMode:z,setPlanMode:B,ralphMode:V,setRalphMode:H,orchestrateMode:ee,setOrchestrateMode:te,autoMode:ne,setAutoMode:re,modelAliases:ie,onAutoRouteResolved:ae,ensureCanOrchestrate:oe,requestOrchestrateMode:se,imageMode:U,setImageMode:ce,selectedImageModel:le,hasConversationMessages:ue,isFirstUserPrompt:W}){let{paneId:de}=wv(),{toast:fe}=ic(),[pe,me]=(0,Z.useState)(!1),he=(0,Z.useCallback)(()=>{t(``),I.current=``,R([]),m(-1),g(``),c&&f({type:Y.ClearChatInputDraft,threadId:ab(c,de)}),L.current&&(L.current.style.height=`auto`)},[f,I,de,c,R,g,m,t,L]),ge=(0,Z.useCallback)((e,n)=>{I.current.trim()||(t(e),I.current=e,R(n),L.current?.focus())},[I,R,t,L]),_e=(0,Z.useCallback)(async()=>{if(pe||!e.trim()&&i.length===0||!c)return;let t=U?le:a;if(!t)return;let p=e,m=i,h=ne&&!U&&W,g=h&&!s;function _(){!g||!c||f({type:Y.EndAutoRoute,threadId:c,paneId:de})}function v(){_(),g&&ge(p,m)}let y=null;if(h){me(!0),g&&(he(),f({type:Y.StartAutoRoute,route:{threadId:c,paneId:de,prompt:p,attachments:m,startedAt:new Date().toISOString()}}));try{y=$y(await Ei(c,p),ie,t),ae?.(y)}catch(e){ib.warn(`Auto routing failed; returning the prompt to the composer`,{err:e}),v(),fe({title:`Couldn't pick a model`,description:`Send again, or choose a model yourself.`,variant:`destructive`});return}finally{me(!1)}}let b=y?.model??t;if(ee&&!oe()){v();return}let x=ee?rb(p):p;l&&(u(),d()),s?f({type:Y.EnqueueChatMessage,message:{id:`queued-${Date.now()}`,threadId:c,paneId:de,message:x,model:b.id,attachments:m,provider:b.provider,planMode:z,imageMode:U,ralphMode:V,orchestrateMode:ee}}):o(x,b.id,m,b.provider,z,U,V,ee),_(),Yy(p),g||he();let S=n.find(e=>e.content===x);S&&r?.(S)},[e,i,a,o,l,u,d,s,f,c,de,he,ge,fe,z,V,ee,ne,ie,ae,oe,U,le,n,r,pe,W]),ve=(0,Z.useCallback)(n=>{let r=e.substring(0,_-x.length-1);t(`${r}${n} ${e.substring(_)}`),b(!1),setTimeout(()=>{if(L.current){L.current.focus();let e=r.length+n.length+1;L.current.setSelectionRange(e,e)}},0)},[e,_,x,t,b,L]),ye=(0,Z.useCallback)(n=>{let r=n.metadata.mode===`orchestrate`;if(r&&!se()){O(!1);return}let i=n.metadata.action===`compact`?`/compact`:n.metadata.action===`send-event`?`/send-event `:r?``:n.content,a=e.substring(0,_-k.length-1);t(`${a}${i}${e.substring(_)}`),O(!1),setTimeout(()=>{if(L.current){L.current.focus();let e=a.length+i.length;L.current.setSelectionRange(e,e)}},0),n.metadata.mode===`plan`?(B(!0),H(!1),te(!1),ce(!1),re(!1)):n.metadata.mode===`ralph`?(H(!0),B(!1),te(!1),ce(!1),re(!1)):n.metadata.mode===`orchestrate`&&(B(!1),H(!1),ce(!1),re(!1))},[e,_,k,t,O,B,H,te,ce,re,se,L]),be=(0,Z.useCallback)(e=>e.scope===`bundled`?`//${e.name}`:e.name.includes(` `)?`/"${e.name}"`:`/${e.name}`,[]),xe=(0,Z.useCallback)(n=>{let r=P?k.length+2:k.length+1,i=e.substring(0,_-r),a=e.substring(_),o=be(n);t(`${i}${o}${a}`),O(!1),F(!1),setTimeout(()=>{if(L.current){L.current.focus();let e=i.length+o.length;L.current.setSelectionRange(e,e)}},0)},[e,_,k,P,be,t,O,F,L]),Se=(0,Z.useCallback)(n=>{let r=`/${n.name}`,i=e.substring(0,_);t(`${i}${r}${e.substring(_)}`),O(!1),setTimeout(()=>{if(L.current){L.current.focus();let e=i.length+r.length;L.current.setSelectionRange(e,e)}},0)},[e,_,t,O,L]),Ce=(0,Z.useCallback)(n=>{let r=be(n),i=e.substring(0,_);t(`${i}${r}${e.substring(_)}`),O(!1),F(!1),setTimeout(()=>{if(L.current){L.current.focus();let e=i.length+r.length;L.current.setSelectionRange(e,e)}},0)},[e,_,be,t,O,F,L]),we=n=>{if(D){if(n.key===`ArrowDown`){n.preventDefault(),E((T+1)%ke.length);return}if(n.key===`ArrowUp`){n.preventDefault(),E((T-1+ke.length)%ke.length);return}if(n.key===`Enter`||n.key===`Tab`){n.preventDefault();let e=ke[T];e&&(e.type===`command`?ye(e.data):xe(e.data));return}if(n.key===`Escape`){O(!1);return}}if(y){let e=Ae.length>0;if(n.key===`ArrowDown`&&e){n.preventDefault(),E((T+1)%Ae.length);return}if(n.key===`ArrowUp`&&e){n.preventDefault(),E((T-1+Ae.length)%Ae.length);return}if(n.key===`Enter`||n.key===`Tab`){n.preventDefault(),Ae[T]&&ve(Ae[T]);return}if(n.key===`Escape`){b(!1);return}}if(n.key===`Enter`&&!n.shiftKey){n.preventDefault(),_e();return}let r=So();r.length!==0&&(n.key===`ArrowUp`?(n.preventDefault(),p===-1?(g(e),m(r.length-1),t(r[r.length-1])):p>0&&(m(p-1),t(r[p-1]))):n.key===`ArrowDown`&&(n.preventDefault(),p>0?(m(p-1),t(r[p-1])):p===0&&(m(-1),t(h))))},Te=e=>{let n=e.target.value,r=e.target.selectionStart;t(n),v(r);let i=n.substring(0,r),a=i.lastIndexOf(`//`);if(a!==-1){let t=a>0?i[a-1]:``;if(a===0||/\s/.test(t)){let t=i.substring(a+2);if(!t.includes(` `)){A(t),F(!0),O(!0),b(!1),E(0),dy(e.target);return}}}F(!1);let o=i.lastIndexOf(`/`),s=!1;if(o!==-1){let e=o>0?i[o-1]:``;if(o===0||/\s/.test(e)){let e=i.substring(o+1);e.includes(` `)?O(!1):(s=!0,A(e),O(!0),b(!1),E(0))}else O(!1)}else O(!1);if(!s){let e=i.lastIndexOf(`@`);if(e!==-1){let t=e>0?i[e-1]:``;if(e===0||/\s/.test(t)){let t=i.substring(e+1);t.includes(` `)?b(!1):(S(t),b(!0),E(0),C.length===0&&c&&$a(c).then(e=>{w(e)}).catch(e=>ib.error(`Failed to fetch files:`,e)))}else b(!1)}else b(!1)}dy(e.target)},Ee=k.toLowerCase(),De=j.filter(e=>e.metadata.action===`compact`&&!ue?!1:e.name.toLowerCase().includes(Ee)).sort((e,t)=>Number(!!t.isBuiltIn)-Number(!!e.isBuiltIn)),Oe=(P?N:M).filter(e=>e.name.toLowerCase().includes(Ee)),ke=[...P?[]:De.map(e=>({type:`command`,data:e})),...Oe.map(e=>({type:`skill`,data:e}))],Ae=y?C.filter(e=>e.toLowerCase().includes(x.toLowerCase())).slice(0,10):[];return{handleSend:_e,handleKeyDown:we,handleTextareaInput:Te,insertFileReference:ve,insertCommand:ye,insertSkill:xe,insertSkillAtCursor:Ce,insertSlashCommandAtCursor:Se,allSuggestions:ke,fileSuggestions:Ae,isRouting:pe}}var sb=1;function cb(e){let t=window.getComputedStyle(e);return(parseFloat(t.lineHeight)||parseFloat(t.fontSize)*1.5)+parseFloat(t.paddingTop)+parseFloat(t.paddingBottom)}function lb(e,t){let n=e.style.width,r=e.style.height,i=e.style.minHeight;e.style.width=`${t}px`,e.style.minHeight=`0px`,e.style.height=`auto`;let a=e.scrollHeight>cb(e)+sb;return e.style.width=n,e.style.minHeight=i,e.style.height=r,a}function ub({message:e,forceMultiline:t,textareaRef:n,rowRef:r}){let[i,a]=(0,Z.useState)(!0),o=(0,Z.useRef)(!0),s=(0,Z.useRef)(t),c=(0,Z.useRef)(null);return s.current=t,(0,Z.useLayoutEffect)(function(){o.current=i},[i]),(0,Z.useLayoutEffect)(function(){let e=n.current,t=r.current;if(!e||!t)return;let i=e,l=t;function u(){let e=o.current;if(e&&(c.current=l.clientWidth-i.offsetWidth),s.current){e&&(o.current=!1,a(!1)),dy(i);return}let t=c.current;if(t===null){dy(i);return}let n=!lb(i,Math.max(0,l.clientWidth-t));n!==e&&(o.current=n,a(n)),dy(i)}u();let d=null;function f(){d===null&&(d=requestAnimationFrame(function(){d=null,u()}))}let p=new ResizeObserver(f);return p.observe(l),function(){d!==null&&cancelAnimationFrame(d),p.disconnect()}},[e,t,r,n]),i&&!t}function db(e){let t=(0,Q.c)(17),{visible:n,suggestions:r,skillReferencePrefix:i,query:a,selectedIndex:o,onSelectCommand:s,onSelectSkill:c,onMouseEnterSuggestion:l,containerRef:u}=e,d=i===void 0?`/`:i;if(!n)return null;let f=d===`//`,p,m;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(p=G(U.dropdownGroupHeading,`px-2 py-1.5 border-b border-border/50 mb-1 flex items-center gap-2`),m=(0,$.jsx)(le,{className:`h-3 w-3`}),t[0]=p,t[1]=m):(p=t[0],m=t[1]);let h=f?`Bundled Skills`:`Skills & Commands`,g=a&&` matching "${a}"`,_;t[2]!==h||t[3]!==g?(_=(0,$.jsxs)(`div`,{className:p,children:[m,h,g]}),t[2]=h,t[3]=g,t[4]=_):_=t[4];let v;t[5]!==f||t[6]!==l||t[7]!==s||t[8]!==c||t[9]!==o||t[10]!==d||t[11]!==r?(v=r.length>0?(()=>{let e=[],t=!1,n=!1;return r.forEach((r,i)=>{let a=i===o;if(r.type===`command`&&!n&&(n=!0,e.push((0,$.jsx)(`div`,{className:G(U.dropdownGroupHeading,`px-2 py-1.5 pt-2`),children:`Commands`},`group-commands`))),r.type===`skill`&&!t&&(t=!0,e.push((0,$.jsx)(`div`,{className:G(U.dropdownGroupHeading,`px-2 py-1.5 pt-2`),children:`Skills`},`group-skills`))),r.type===`command`){let t=r.data;e.push((0,$.jsxs)(`button`,{type:`button`,className:G(`flex w-full flex-col gap-1 rounded-lg px-3 py-2 text-left transition-colors`,a?`bg-accent text-accent-foreground`:`text-popover-foreground hover:bg-accent/50`),onClick:()=>s(t),onMouseEnter:()=>l(i),children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsxs)(`span`,{className:`font-medium`,children:[`/`,t.name]}),t.metadata.argumentHint&&(0,$.jsx)(`span`,{className:U.compact,children:t.metadata.argumentHint})]}),t.metadata.description&&(0,$.jsx)(`span`,{className:U.compact,children:t.metadata.description})]},`cmd-${t.name}`))}else{let t=r.data;e.push((0,$.jsxs)(`button`,{type:`button`,className:G(`flex w-full flex-col gap-1 rounded-lg px-3 py-2 text-left transition-colors`,a?`bg-accent text-accent-foreground`:`text-popover-foreground hover:bg-accent/50`),onClick:()=>c(t),onMouseEnter:()=>l(i),children:[(0,$.jsx)(`div`,{className:`flex items-center gap-2`,children:(0,$.jsxs)(`span`,{className:`font-medium`,children:[d,t.name]})}),(0,$.jsx)(`span`,{className:U.compact,children:t.description})]},`skill-${t.name}`))}}),e})():(0,$.jsxs)(`div`,{className:G(U.compact,`px-3 py-4 text-center text-muted-foreground`),children:[f?`No bundled skills found.`:`No commands or skills found.`,(0,$.jsx)(`br`,{}),(0,$.jsxs)(`span`,{className:U.compact,children:[f?(0,$.jsx)($.Fragment,{children:`Use bundled skills with syntax like `}):(0,$.jsx)($.Fragment,{children:`Create commands in `}),f?(0,$.jsx)(`code`,{className:`bg-muted px-1 rounded`,children:`//skill-name`}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`code`,{className:`bg-muted px-1 rounded`,children:`.agents/commands/`}),` or skills in`,` `,(0,$.jsx)(`code`,{className:`bg-muted px-1 rounded`,children:`.agents/skills/`})]})]})]}),t[5]=f,t[6]=l,t[7]=s,t[8]=c,t[9]=o,t[10]=d,t[11]=r,t[12]=v):v=t[12];let y;return t[13]!==u||t[14]!==_||t[15]!==v?(y=(0,$.jsxs)(`div`,{ref:u,className:`absolute bottom-full left-0 mb-2 w-full max-h-64 overflow-y-auto rounded-xl border border-border bg-popover p-1 shadow-lg z-50 animate-in fade-in slide-in-from-bottom-2`,children:[_,v]}),t[13]=u,t[14]=_,t[15]=v,t[16]=y):y=t[16],y}function fb(e){return e.startsWith(`image/`)}function pb(e){return e.startsWith(`video/`)}function mb(e){return e.startsWith(`audio/`)}function hb(e){let t=(0,Q.c)(7),{attachments:n,onRemove:r}=e;if(n.length===0)return null;let i;if(t[0]!==n||t[1]!==r){let e;t[3]===r?e=t[4]:(e=(e,t)=>(0,$.jsx)(`div`,{className:G(U.compact,`group relative flex items-center gap-1 rounded-md bg-muted text-muted-foreground`),children:fb(e.mimeType)?(0,$.jsxs)(`div`,{className:`relative`,children:[(0,$.jsx)(`img`,{src:`data:${e.mimeType};base64,${e.content}`,alt:e.fileName,className:`h-16 w-16 rounded-md object-cover`}),(0,$.jsxs)(`button`,{type:`button`,onClick:()=>r(t),className:`absolute -right-1.5 -top-1.5 flex h-4 w-4 items-center justify-center rounded-full bg-foreground text-background opacity-0 transition-opacity group-hover:opacity-100`,children:[(0,$.jsx)(nt,{className:`h-2.5 w-2.5`}),(0,$.jsx)(`span`,{className:`sr-only`,children:`Remove attachment`})]})]}):pb(e.mimeType)?(0,$.jsxs)(`span`,{className:`flex items-center gap-1 px-2 py-1`,children:[(0,$.jsx)(k,{className:`h-3 w-3`}),e.fileName,(0,$.jsxs)(`button`,{type:`button`,onClick:()=>r(t),className:`ml-1 hover:text-foreground`,children:[(0,$.jsx)(nt,{className:`h-3 w-3`}),(0,$.jsx)(`span`,{className:`sr-only`,children:`Remove attachment`})]})]}):mb(e.mimeType)?(0,$.jsxs)(`span`,{className:`flex items-center gap-1 px-2 py-1`,children:[(0,$.jsx)(Te,{className:`h-3 w-3`}),e.fileName,(0,$.jsxs)(`button`,{type:`button`,onClick:()=>r(t),className:`ml-1 hover:text-foreground`,children:[(0,$.jsx)(nt,{className:`h-3 w-3`}),(0,$.jsx)(`span`,{className:`sr-only`,children:`Remove attachment`})]})]}):(0,$.jsxs)(`span`,{className:`flex items-center gap-1 px-2 py-1`,children:[(0,$.jsx)(It,{className:`h-3 w-3`}),e.fileName,(0,$.jsxs)(`button`,{type:`button`,onClick:()=>r(t),className:`ml-1 hover:text-foreground`,children:[(0,$.jsx)(nt,{className:`h-3 w-3`}),(0,$.jsx)(`span`,{className:`sr-only`,children:`Remove attachment`})]})]})},t),t[3]=r,t[4]=e),i=n.map(e),t[0]=n,t[1]=r,t[2]=i}else i=t[2];let a;return t[5]===i?a=t[6]:(a=(0,$.jsx)(`div`,{className:`mb-2 flex flex-wrap gap-1.5`,children:i}),t[5]=i,t[6]=a),a}function gb(e){return e>=1e6?`${(e/1e6).toFixed(1)}M`:e>=1e3?`${(e/1e3).toFixed(1)}K`:e.toString()}function _b(e){return e>=1e6?`${Math.round(e/1e6)}M`:e>=1e3?`${Math.round(e/1e3)}K`:e.toString()}var vb=[{key:`systemPrompt`,label:`System prompt`,color:`#9CA3AF`},{key:`toolDefinitions`,label:`Tool definitions`,color:`#B088F0`},{key:`rules`,label:`Rules`,color:`#88D088`},{key:`skills`,label:`Skills`,color:`#D0A000`},{key:`subagentDefinitions`,label:`Subagent definitions`,color:`#2080D0`},{key:`conversation`,label:`Conversation`,color:`#E09030`}];function yb(e){return typeof e.effectiveWindow==`number`&&e.effectiveWindow>0?e.effectiveWindow:e.contextWindow}function bb(e,t=e.actualUsage){return t?{tokens:t.tokens,contextWindow:t.contextWindow,percent:Math.round(t.percent),isActual:!0}:{tokens:e.totalTokens,contextWindow:yb(e),percent:e.percentageFull,isActual:!1}}function xb({breakdown:e,actualUsage:t=e.actualUsage,threadId:n,conversationId:r,onClose:i,onToolDefinitionsOpen:a}){let{categories:o}=e,s=bb(e,t),c=s.tokens,l=s.percent,u=s.contextWindow,d=vb.filter(e=>o[e.key]>0),f=o.toolDefinitions>0&&n&&r;function p(){f&&a?.()}return(0,$.jsxs)(`div`,{className:`w-72 space-y-3`,children:[(0,$.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,$.jsx)(`h3`,{className:U.label,children:`Context`}),i&&(0,$.jsxs)(Hr,{variant:`ghost`,size:`icon-sm`,className:`text-muted-foreground hover:text-background`,onClick:i,children:[(0,$.jsx)(nt,{className:`h-4 w-4`}),(0,$.jsx)(`span`,{className:`sr-only`,children:`Close`})]})]}),(0,$.jsxs)(`div`,{className:G(U.compact,`flex items-center justify-between text-muted-foreground`),children:[(0,$.jsxs)(`span`,{children:[l,`% Full`]}),(0,$.jsxs)(`span`,{children:[s.isActual?``:`~`,gb(c),` / `,_b(u),` Tokens`]})]}),(0,$.jsx)(`div`,{className:`h-2 w-full overflow-hidden rounded-full bg-muted/60`,children:(0,$.jsx)(`div`,{className:`flex h-full w-full`,children:d.map(e=>{let t=o[e.key],n=u>0?t/u*100:0;return(0,$.jsx)(`div`,{style:{width:`${Math.max(n,t>0?.5:0)}%`,backgroundColor:e.color}},e.key)})})}),(0,$.jsx)(`div`,{className:`space-y-1.5`,children:vb.map(e=>{let t=e.key===`toolDefinitions`&&f;return(0,$.jsxs)(`div`,{role:t?`button`:void 0,tabIndex:t?0:void 0,onClick:t?p:void 0,onKeyDown:t?e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),p())}:void 0,className:G(U.compact,`flex items-center justify-between text-muted-foreground`,t&&`cursor-pointer rounded-sm hover:bg-muted/50 hover:text-foreground`),children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(`span`,{className:`h-2.5 w-2.5 shrink-0 rounded-sm`,style:{backgroundColor:e.color}}),(0,$.jsx)(`span`,{children:e.label}),t&&(0,$.jsx)(sn,{className:`h-3.5 w-3.5 shrink-0`})]}),(0,$.jsx)(`span`,{className:`tabular-nums`,children:gb(o[e.key])})]},e.key)})})]})}var Sb=wn,Cb=Wn,wb=Kn,Tb=Ut(`app.tool-definitions-dialog.ui`);function Eb(e){try{return JSON.stringify(e,null,2)}catch{return String(e)}}function Db(e){let t=(0,Q.c)(23),{tool:n}=e,[r,i]=(0,Z.useState)(!1),a;t[0]===n.parameters?a=t[1]:(a=Eb(n.parameters),t[0]=n.parameters,t[1]=a);let o=a,s=o!==`{}`&&o.length>0,c;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(c=G(U.sectionTitle,`min-w-0 break-all`),t[2]=c):c=t[2];let l;t[3]===n.name?l=t[4]:(l=(0,$.jsx)(`h3`,{className:c,children:n.name}),t[3]=n.name,t[4]=l);let u;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(u=G(U.compact,`shrink-0 tabular-nums text-muted-foreground`),t[5]=u):u=t[5];let d;t[6]===n.tokens?d=t[7]:(d=gb(n.tokens),t[6]=n.tokens,t[7]=d);let f;t[8]===d?f=t[9]:(f=(0,$.jsx)(`span`,{className:u,children:d}),t[8]=d,t[9]=f);let p;t[10]!==l||t[11]!==f?(p=(0,$.jsxs)(`div`,{className:`flex items-start justify-between gap-3`,children:[l,f]}),t[10]=l,t[11]=f,t[12]=p):p=t[12];let m;t[13]===n.description?m=t[14]:(m=n.description?(0,$.jsx)(`p`,{className:G(U.compact,`mt-2 whitespace-pre-wrap text-muted-foreground select-text`),children:n.description}):(0,$.jsx)(`p`,{className:G(U.compact,`mt-2 italic text-muted-foreground`),children:`No description`}),t[13]=n.description,t[14]=m);let h;t[15]!==s||t[16]!==r||t[17]!==o?(h=s&&(0,$.jsxs)(Sb,{open:r,onOpenChange:i,className:`mt-2`,children:[(0,$.jsxs)(Cb,{className:G(U.compact,`flex items-center gap-1 text-muted-foreground hover:text-foreground`),children:[(0,$.jsx)(tn,{className:G(`h-3.5 w-3.5 transition-transform`,r&&`rotate-180`)}),`Parameters`]}),(0,$.jsx)(wb,{children:(0,$.jsx)(za,{className:`mt-2 h-48 rounded bg-muted`,children:(0,$.jsx)(`pre`,{className:G(U.compact,`p-2 font-mono whitespace-pre-wrap text-foreground`),children:o})})})]}),t[15]=s,t[16]=r,t[17]=o,t[18]=h):h=t[18];let g;return t[19]!==p||t[20]!==m||t[21]!==h?(g=(0,$.jsxs)(`div`,{className:`rounded-md border border-border/60 p-3`,children:[p,m,h]}),t[19]=p,t[20]=m,t[21]=h,t[22]=g):g=t[22],g}function Ob({open:e,onOpenChange:t,threadId:n,conversationId:r,expectedTotalTokens:i}){let[a,o]=(0,Z.useState)([]),[s,c]=(0,Z.useState)(i),[l,u]=(0,Z.useState)(!1),[d,f]=(0,Z.useState)(null);return(0,Z.useEffect)(()=>{if(!e||!n||!r)return;let t=!1;async function i(){u(!0),f(null);try{let e=await Ar(n,r);if(t)return;o(e.tools),c(e.totalTokens)}catch(e){Tb.error(`Failed to load tool definitions breakdown`,e),t||(f(`Failed to load tool definitions`),o([]))}finally{t||u(!1)}}return i(),()=>{t=!0}},[e,n,r]),(0,$.jsx)(Ni,{open:e,onOpenChange:t,children:(0,$.jsxs)(Ir,{className:`flex h-[80dvh] max-w-2xl flex-col gap-4 overflow-hidden`,children:[(0,$.jsx)(Dr,{className:`shrink-0`,children:(0,$.jsxs)(qa,{children:[`Tool definitions · `,gb(s),` tokens`]})}),(0,$.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col`,children:[l&&(0,$.jsx)(`p`,{className:G(U.compact,`text-muted-foreground`),children:`Loading tools...`}),d&&!l&&(0,$.jsx)(`p`,{className:G(U.compact,`text-destructive`),children:d}),!l&&!d&&(0,$.jsx)(za,{className:`min-h-0 flex-1`,children:(0,$.jsx)(`div`,{className:`space-y-2`,children:a.length===0?(0,$.jsx)(`p`,{className:G(U.compact,`text-muted-foreground`),children:`No tools loaded for this conversation.`}):a.map(e=>(0,$.jsx)(Db,{tool:e},e.name))})})]})]})})}var kb=Ut(`app.token-usage-tooltip.ui`);function Ab({threadId:e,currentConversationId:t,initialBreakdown:n,actualUsage:r,refreshKey:i,children:a}){let[o,s]=(0,Z.useState)(n??null),[c,l]=(0,Z.useState)(!1),[u,d]=(0,Z.useState)(null),[f,p]=(0,Z.useState)(!1),[m,h]=(0,Z.useState)(!1),[g,_]=(0,Z.useState)(n?t:void 0),[v,y]=(0,Z.useState)(n?i:void 0);return(0,Z.useEffect)(()=>{n&&(s(n),_(t),y(i),d(null))},[n,t]),(0,Z.useEffect)(()=>{n||(t!==g||i!==v)&&(s(null),_(void 0),y(void 0),d(null))},[n,t,g,v,i]),(0,Z.useEffect)(()=>{if(!f||!e||!t||!(g!==t||v!==i))return;let n=!1;async function r(){let r=t;if(r){l(!0),d(null);try{let t=await ii(e,r,{forceRefresh:!0});if(n)return;s(t),_(r),y(i)}catch(e){if(kb.error(`[TokenUsageTooltip] Failed to load context data:`,e),n)return;s(e=>(e||d(`Failed to load context data`),e))}finally{n||l(!1)}}}return r(),()=>{n=!0}},[f,e,t,g,v,i]),!e||e===``?(0,$.jsx)($.Fragment,{children:a}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(Np,{open:f,onOpenChange:p,children:[(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(Pp,{asChild:!0,children:a})}),(0,$.jsx)(Fr,{side:`top`,className:`bg-popover text-popover-foreground`,children:`Show context usage`})]}),(0,$.jsxs)(Fp,{side:`top`,align:`end`,className:`w-auto p-4`,children:[c&&(0,$.jsxs)(`div`,{className:G(U.compact,`flex w-72 items-center gap-2 text-muted-foreground`),children:[(0,$.jsx)(Zt,{className:`h-3 w-3 animate-pulse`}),(0,$.jsx)(`span`,{children:`Loading context...`})]}),u&&!c&&(0,$.jsxs)(`div`,{className:G(U.compact,`flex w-72 items-center gap-2 text-muted-foreground`),children:[(0,$.jsx)(Zt,{className:`h-3 w-3`}),(0,$.jsx)(`span`,{children:u})]}),!c&&!u&&o&&(0,$.jsx)(xb,{breakdown:o,actualUsage:r,threadId:e,conversationId:t,onClose:()=>p(!1),onToolDefinitionsOpen:()=>h(!0)})]})]}),t&&(0,$.jsx)(Ob,{open:m,onOpenChange:h,threadId:e,conversationId:t,expectedTotalTokens:o?.categories.toolDefinitions??0})]})}var jb=Ut(`app.token-usage-icon.ui`);function Mb(e){let t=e.filter(e=>e.sender===`agent`),n=t.length>0?t[t.length-1]:void 0,r=t.reduce((e,t)=>e+(t.metadata?.tokenCount??0),0);return[t.length,n?.messageId??``,n?.content.length??0,r].join(`:`)}function Nb(e){return e>75?`text-red-500`:e>50?`text-orange-500`:`text-muted-foreground`}function Pb(e){let t=(0,Q.c)(8),{percentage:n}=e,r=2*Math.PI*7,i=r*(1-Math.min(n,100)/100),a;t[0]===n?a=t[1]:(a=Nb(n),t[0]=n,t[1]=a);let o=`h-4 w-4 ${a}`,s;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,$.jsx)(`circle`,{className:`text-muted-foreground/25`,cx:`10`,cy:`10`,r:7,fill:`none`,stroke:`currentColor`,strokeWidth:`3`}),t[2]=s):s=t[2];let c;t[3]===i?c=t[4]:(c=(0,$.jsx)(`circle`,{cx:`10`,cy:`10`,r:7,fill:`none`,stroke:`currentColor`,strokeWidth:`3`,strokeLinecap:`round`,strokeDasharray:r,strokeDashoffset:i,transform:`rotate(-90 10 10)`}),t[3]=i,t[4]=c);let l;return t[5]!==o||t[6]!==c?(l=(0,$.jsxs)(`svg`,{className:o,viewBox:`0 0 20 20`,"aria-hidden":`true`,children:[s,c]}),t[5]=o,t[6]=c,t[7]=l):l=t[7],l}var Fb=500;function Ib(e){let t=(0,Q.c)(43),{threadId:n,conversationId:r,messages:i,isStreaming:a,liveContextUsage:o}=e,s;t[0]===i?s=t[1]:(s=i===void 0?[]:i,t[0]=i,t[1]=s);let c=s,l=a===void 0?!1:a,[u,d]=(0,Z.useState)(r),[f,p]=(0,Z.useState)(),m;t[2]===c?m=t[3]:(m=Mb(c),t[2]=c,t[3]=m);let h=m,[g,_]=(0,Z.useState)(h),v=(0,Z.useRef)(null),y=(0,Z.useRef)(n),b,x;t[4]===h?(b=t[5],x=t[6]):(b=()=>(v.current&&clearTimeout(v.current),v.current=setTimeout(()=>{_(h)},Fb),()=>{v.current&&clearTimeout(v.current)}),x=[h],t[4]=h,t[5]=b,t[6]=x),(0,Z.useEffect)(b,x);let S,C;t[7]===n?(S=t[8],C=t[9]):(S=()=>{y.current!==n&&(y.current&&(Ma.invalidate(`thread-${y.current}`),Ma.invalidatePattern(RegExp(`^context-breakdown-${y.current}-`))),y.current=n,d(void 0),p(void 0))},C=[n],t[7]=n,t[8]=S,t[9]=C),(0,Z.useEffect)(S,C);let w,T;t[10]===r?(w=t[11],T=t[12]):(T=()=>{if(r){d(r);return}},w=[r],t[10]=r,t[11]=w,t[12]=T),(0,Z.useEffect)(T,w);let E;t[13]!==r||t[14]!==n?(E=()=>{let e=!1;return(async function(){if(!n){d(void 0),p(void 0);return}if(r){d(r);return}try{let t=await Ur(n);if(e)return;d(t.currentConversationId)}catch(e){let t=e;jb.error(`Failed to fetch thread data:`,t)}})(),()=>{e=!0}},t[13]=r,t[14]=n,t[15]=E):E=t[15];let D;t[16]!==r||t[17]!==g||t[18]!==n?(D=[r,n,g],t[16]=r,t[17]=g,t[18]=n,t[19]=D):D=t[19],(0,Z.useEffect)(E,D);let O;t[20]!==l||t[21]!==c.length||t[22]!==u||t[23]!==n?(O=()=>{let e=!1;return(async function(){if(!l){if(!n||!u||c.length===0){p(void 0);return}try{let t=await ii(n,u,{forceRefresh:!0});if(e)return;p(t)}catch(e){let t=e;if(t instanceof Error&&t.message===`Conversation not found`){p(void 0);return}jb.error(`Failed to fetch context breakdown:`,t)}}})(),()=>{e=!0}},t[20]=l,t[21]=c.length,t[22]=u,t[23]=n,t[24]=O):O=t[24];let k;if(t[25]!==g||t[26]!==l||t[27]!==c.length||t[28]!==u||t[29]!==n?(k=[n,u,g,c.length,l],t[25]=g,t[26]=l,t[27]=c.length,t[28]=u,t[29]=n,t[30]=k):k=t[30],(0,Z.useEffect)(O,k),!n||n===``)return null;let A=o??f?.actualUsage,j=A?.percent??f?.percentageFull;if(!(typeof j==`number`&&j>0))return null;let M=String(g),N;t[31]===j?N=t[32]:(N=(0,$.jsx)(Pb,{percentage:j}),t[31]=j,t[32]=N);let P;t[33]===Symbol.for(`react.memo_cache_sentinel`)?(P=(0,$.jsx)(`span`,{className:`sr-only`,children:`Show context usage`}),t[33]=P):P=t[33];let F;t[34]===N?F=t[35]:(F=(0,$.jsxs)(Hr,{variant:`ghost`,size:`icon-sm`,className:`text-muted-foreground hover:text-background`,children:[N,P]}),t[34]=N,t[35]=F);let I;return t[36]!==A||t[37]!==f||t[38]!==u||t[39]!==M||t[40]!==F||t[41]!==n?(I=(0,$.jsx)(Ab,{threadId:n,currentConversationId:u,initialBreakdown:f,actualUsage:A,refreshKey:M,children:F}),t[36]=A,t[37]=f,t[38]=u,t[39]=M,t[40]=F,t[41]=n,t[42]=I):I=t[42],I}function Lb(e){return new Promise((t,n)=>{let r=new FileReader;r.onload=()=>{let n=r.result.split(`,`)[1];t({fileName:e.name,content:n,mimeType:e.type||`application/octet-stream`})},r.onerror=()=>{n(r.error??Error(`Failed to read file`))},r.readAsDataURL(e)})}async function Rb(e){return Promise.all(e.map(Lb))}function zb(e,t){let n=e.target.files;if(!n||n.length===0)return;let r=Array.from(n);e.target.value=``,Rb(r).then(t)}function Bb(e,t){switch(e){case`archive`:return(0,$.jsx)(Ht,{className:t});case`audio`:return(0,$.jsx)(Pt,{className:t});case`code`:return(0,$.jsx)(oe,{className:t});case`config`:return(0,$.jsx)(Ne,{className:t});case`data`:return(0,$.jsx)(r,{className:t});case`document`:return(0,$.jsx)(he,{className:t});case`image`:return(0,$.jsx)(ke,{className:t});case`json`:return(0,$.jsx)(et,{className:t});case`presentation`:return(0,$.jsx)(Ee,{className:t});case`security`:return(0,$.jsx)(E,{className:t});case`spreadsheet`:return(0,$.jsx)(y,{className:t});case`text`:return(0,$.jsx)(xe,{className:t});case`video`:return(0,$.jsx)(b,{className:t});case`web`:return(0,$.jsx)(oe,{className:t});case`file`:return(0,$.jsx)(ve,{className:t})}}function Vb({filename:e,className:t}){let n=`file`,r=`text-muted-foreground`;try{if(typeof ct==`function`&&e){let t=ct(e);n=t.name,r=t.className??r}}catch{}let i=G(`h-4 w-4 flex-shrink-0`,r,t);return Bb(n,i)}function Hb(e){let t=(0,Q.c)(17),{showSuggestions:n,fileSuggestions:r,suggestionQuery:i,selectedIndex:o,onSelectFile:s,onMouseEnterSuggestion:c,containerRef:l}=e;if(!n||r.length===0)return null;let u,d;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(u=G(U.dropdownGroupHeading,`px-2 py-1.5 border-b border-border/50 mb-1 flex items-center gap-2`),d=(0,$.jsx)(a,{className:`h-3 w-3`}),t[0]=u,t[1]=d):(u=t[0],d=t[1]);let f;t[2]===i?f=t[3]:(f=(0,$.jsxs)(`div`,{className:u,children:[d,`Files matching "`,i,`"`]}),t[2]=i,t[3]=f);let p;if(t[4]!==r||t[5]!==c||t[6]!==s||t[7]!==o){let e;t[9]!==c||t[10]!==s||t[11]!==o?(e=(e,t)=>{let n=e.split(`/`).pop()??e,r=t===o;return(0,$.jsxs)(`button`,{type:`button`,className:G(U.body,`flex w-full items-center gap-2 rounded-lg px-3 py-2 text-left transition-colors`,r?`bg-accent text-accent-foreground`:`text-popover-foreground hover:bg-accent/50`),onClick:()=>s(e),onMouseEnter:()=>c(t),children:[(0,$.jsx)(Vb,{filename:n}),(0,$.jsxs)(`div`,{className:`flex flex-col overflow-hidden`,children:[(0,$.jsx)(`span`,{className:`truncate font-medium`,children:n}),(0,$.jsx)(`span`,{className:G(U.compact,`truncate text-muted-foreground opacity-70`),children:e})]})]},e)},t[9]=c,t[10]=s,t[11]=o,t[12]=e):e=t[12],p=r.map(e),t[4]=r,t[5]=c,t[6]=s,t[7]=o,t[8]=p}else p=t[8];let m;return t[13]!==l||t[14]!==f||t[15]!==p?(m=(0,$.jsxs)(`div`,{ref:l,className:`absolute bottom-full left-0 mb-2 w-full max-h-64 overflow-y-auto rounded-xl border border-border bg-popover p-1 shadow-lg z-50 animate-in fade-in slide-in-from-bottom-2`,children:[f,p]}),t[13]=l,t[14]=f,t[15]=p,t[16]=m):m=t[16],m}function Ub(e){return[`off`,...e]}function Wb(e){let t=(0,Q.c)(38),{selectedEffort:n,supportedEfforts:r,onReasoningEffortChange:i}=e;if(r.length===0)return null;let a,o,s,c,l,u,d,f,p;if(t[0]!==i||t[1]!==n||t[2]!==r){let e=Ub(r),m=n??`off`,h;t[12]===i?h=t[13]:(h=function(e){i(e)},t[12]=i,t[13]=h);let g=h;t[14]===Symbol.for(`react.memo_cache_sentinel`)?(p=(0,$.jsx)(Ai,{className:`my-1`}),t[14]=p):p=t[14],d=`px-3 py-1.5`,t[15]===Symbol.for(`react.memo_cache_sentinel`)?(f=(0,$.jsx)(`div`,{className:G(U.dropdownGroupHeading,`pb-1 uppercase tracking-wide`),children:`Reasoning`}),t[15]=f):f=t[15],o=vo,c=m,l=g;let _;t[16]===Symbol.for(`react.memo_cache_sentinel`)?(_=G(U.body,`h-9 w-full bg-popover text-popover-foreground`),t[16]=_):_=t[16];let v;t[17]===m?v=t[18]:(v=Xt(m),t[17]=m,t[18]=v),t[19]===v?u=t[20]:(u=(0,$.jsx)(na,{"aria-label":`Reasoning effort`,className:_,children:(0,$.jsx)(`span`,{children:v})}),t[19]=v,t[20]=u),a=io;let y;t[21]===Symbol.for(`react.memo_cache_sentinel`)?(y=function(e){return(0,$.jsx)(Ba,{value:e,className:U.body,children:Xt(e)},e)},t[21]=y):y=t[21],s=e.map(y),t[0]=i,t[1]=n,t[2]=r,t[3]=a,t[4]=o,t[5]=s,t[6]=c,t[7]=l,t[8]=u,t[9]=d,t[10]=f,t[11]=p}else a=t[3],o=t[4],s=t[5],c=t[6],l=t[7],u=t[8],d=t[9],f=t[10],p=t[11];let m;t[22]!==a||t[23]!==s?(m=(0,$.jsx)(a,{children:s}),t[22]=a,t[23]=s,t[24]=m):m=t[24];let h;t[25]!==o||t[26]!==c||t[27]!==l||t[28]!==u||t[29]!==m?(h=(0,$.jsxs)(o,{value:c,onValueChange:l,children:[u,m]}),t[25]=o,t[26]=c,t[27]=l,t[28]=u,t[29]=m,t[30]=h):h=t[30];let g;t[31]!==d||t[32]!==f||t[33]!==h?(g=(0,$.jsxs)(`div`,{className:d,children:[f,h]}),t[31]=d,t[32]=f,t[33]=h,t[34]=g):g=t[34];let _;return t[35]!==g||t[36]!==p?(_=(0,$.jsxs)($.Fragment,{children:[p,g]}),t[35]=g,t[36]=p,t[37]=_):_=t[37],_}function Gb(e){let t=(0,Q.c)(5),{providerSlug:n}=e;if(!n)return null;let r;t[0]===n?r=t[1]:(r=Ra(n),t[0]=n,t[1]=r);let i=`${n} logo`,a;return t[2]!==r||t[3]!==i?(a=(0,$.jsx)(`img`,{src:r,alt:i,className:`h-3.5 w-3.5 flex-shrink-0 dark:invert`,onError:Kb}),t[2]=r,t[3]=i,t[4]=a):a=t[4],a}function Kb(e){e.currentTarget.style.visibility=`hidden`}function qb(e){let t=(0,Q.c)(17),{providerSlug:n,providerData:r}=e,i=r?.name??n,a;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(a=G(U.dropdownGroupHeading,`flex items-center gap-1.5 px-3 py-1.5 uppercase tracking-wide`),t[0]=a):a=t[0];let o=`/settings/providers/${encodeURIComponent(n)}`,s;t[1]===n?s=t[2]:(s=(0,$.jsx)(Gb,{providerSlug:n}),t[1]=n,t[2]=s);let c;t[3]!==o||t[4]!==s?(c=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(Cr,{to:o,className:`flex items-center hover:opacity-70 transition-opacity`,children:s})}),t[3]=o,t[4]=s,t[5]=c):c=t[5];let l=`Configure ${i} provider`,u;t[6]===l?u=t[7]:(u=(0,$.jsx)(Fr,{side:`left`,children:(0,$.jsx)(`p`,{children:l})}),t[6]=l,t[7]=u);let d;t[8]!==c||t[9]!==u?(d=(0,$.jsx)(Zo,{children:(0,$.jsxs)(Mi,{children:[c,u]})}),t[8]=c,t[9]=u,t[10]=d):d=t[10];let f;t[11]!==i||t[12]!==r?(f=r?.url?(0,$.jsx)(_a,{url:r.url,showIcon:!1,variant:`inline`,children:i}):i,t[11]=i,t[12]=r,t[13]=f):f=t[13];let p;return t[14]!==d||t[15]!==f?(p=(0,$.jsxs)(`div`,{className:a,children:[d,f]}),t[14]=d,t[15]=f,t[16]=p):p=t[16],p}function Jb(e){let t=e.pricing?.prompt;return t==null?null:Math.ceil(t*3)}function Yb(e){return`$${Re(e)}`}function Xb(e,t){return e.pricing?(0,$.jsxs)(`div`,{className:G(U.body,`max-w-64 whitespace-normal break-words text-left leading-relaxed`),children:[(0,$.jsx)(`div`,{children:`${Yb(e.pricing.prompt??0)} input per million tokens`}),(0,$.jsx)(`div`,{children:`${Yb(e.pricing.completion??0)} output per million tokens`}),(0,$.jsx)(`div`,{children:`Displayed value of ${t} is a relative price.`})]}):null}function Zb(e,t){return[...e].sort((e,n)=>{let r=(e.provider??`Other`).localeCompare(n.provider??`Other`);if(r!==0)return r;if(t===`relative-price`){let t=(Jb(e)??2**53-1)-(Jb(n)??2**53-1);if(t!==0)return t}return Ko(e.id).localeCompare(Ko(n.id))})}function Qb(e){if(!e)return`Select Model`;let t=`${e.provider??`unknown`}/${e.id}`;return(e.supportedReasoningEfforts?.length??0)>0?`${t} ${Xt(d(e.settings,e.supportedReasoningEfforts??[]))}`:t}function $b(e){return e instanceof Element&&!!(e.closest(`[data-radix-select-content]`)||e.closest(`[data-radix-popper-content-wrapper]`)||e.closest(`[role="listbox"]`))}function ex(e){let t=(0,Q.c)(45),{availableModels:n,selectedModel:r,onModelSelect:i,onReasoningEffortChange:a}=e,[o,s]=Z.useState(!1),[l,u]=Z.useState(`relative-price`),f;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(f=new Map,t[0]=f):f=t[0];let[p,m]=Z.useState(f),h=Z.useRef(null),g,_;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(g=()=>{sa().then(function(e){m(new Map(e.map(rx)))})},_=[],t[1]=g,t[2]=_):(g=t[1],_=t[2]),Z.useEffect(g,_);let v,y;t[3]===o?(v=t[4],y=t[5]):(v=()=>{let e=function(e){$b(e.target)||h.current&&!h.current.contains(e.target)&&s(!1)};if(o)return document.addEventListener(`mousedown`,e),()=>{document.removeEventListener(`mousedown`,e)}},y=[o],t[3]=o,t[4]=v,t[5]=y),Z.useEffect(v,y);let b;t[6]===i?b=t[7]:(b=function(e){i(e),s(!1)},t[6]=i,t[7]=b);let x=b,S;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(S=function(){u(function(e){return e===`relative-price`?`alphabetical`:`relative-price`})},t[8]=S):S=t[8];let C=S,w;t[9]!==n||t[10]!==l?(w=Zb(n,l),t[9]=n,t[10]=l,t[11]=w):w=t[11];let T=w,E=l===`relative-price`?c:P,D=l===`relative-price`?`Sort by relative price`:`Sort alphabetically`,O,k;t[12]===n.length?(O=t[13],k=t[14]):(k=()=>{let e=function(e){let t=e.key.toLowerCase();!((e.metaKey||e.ctrlKey)&&e.shiftKey&&!e.altKey)||t!==`m`||n.length===0||(e.preventDefault(),s(nx))};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},O=[n.length],t[12]=n.length,t[13]=O,t[14]=k),Z.useEffect(k,O);let A;t[15]===o?A=t[16]:(A=()=>s(!o),t[15]=o,t[16]=A);let j;t[17]===Symbol.for(`react.memo_cache_sentinel`)?(j=G(U.body,`font-normal`),t[17]=j):j=t[17];let M;t[18]===r?M=t[19]:(M=r?Ko(r.id):`No model`,t[18]=r,t[19]=M);let N;t[20]===M?N=t[21]:(N=(0,$.jsx)(`span`,{className:j,children:M}),t[20]=M,t[21]=N);let F;t[22]===Symbol.for(`react.memo_cache_sentinel`)?(F=(0,$.jsx)(Yt,{className:`h-3 w-3`}),t[22]=F):F=t[22];let I;t[23]!==A||t[24]!==N?(I=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(Hr,{variant:`action`,size:`icon-sm`,className:`gap-1 w-auto px-2`,onClick:A,children:[N,F]})}),t[23]=A,t[24]=N,t[25]=I):I=t[25];let L;t[26]===r?L=t[27]:(L=Qb(r),t[26]=r,t[27]=L);let R;t[28]===L?R=t[29]:(R=(0,$.jsx)(Fr,{children:L}),t[28]=L,t[29]=R);let z;t[30]!==I||t[31]!==R?(z=(0,$.jsxs)(Mi,{children:[I,R]}),t[30]=I,t[31]=R,t[32]=z):z=t[32];let B;t[33]!==E||t[34]!==x||t[35]!==a||t[36]!==p||t[37]!==r||t[38]!==o||t[39]!==D||t[40]!==T?(B=o&&(0,$.jsx)(`div`,{className:`absolute bottom-full right-0 mb-1 w-80 max-h-80 overflow-y-auto rounded-lg border border-border bg-popover p-1 shadow-md z-50`,children:(0,$.jsxs)(Zo,{children:[(0,$.jsx)(`div`,{className:`-mb-3 flex justify-end px-1 pb-1`,children:(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,"aria-label":D,className:`rounded-md p-1 text-muted-foreground transition-colors hover:bg-accent hover:text-accent-foreground`,onClick:C,children:(0,$.jsx)(E,{className:`h-3.5 w-3.5`})})}),(0,$.jsx)(Fr,{side:`left`,align:`start`,sideOffset:8,children:D})]})}),Object.entries(T.reduce(tx,{})).map((e,t)=>{let[n,i]=e;return(0,$.jsxs)(`div`,{children:[t>0&&(0,$.jsx)(Ai,{className:`my-1`}),(0,$.jsx)(qb,{providerSlug:n,providerData:p.get(n)}),i.map(e=>{let t=Jb(e),n=t==null?null:Xb(e,t),i=e.id===r?.id&&e.provider===r?.provider,a=Ko(e.id);return(0,$.jsxs)(`button`,{type:`button`,className:G(U.body,`flex w-full items-center justify-between gap-3 whitespace-nowrap rounded-md px-3 py-1.5 pl-8 text-popover-foreground hover:bg-accent`,i&&`bg-accent font-medium`),onClick:()=>x(e),children:[(0,$.jsx)(`span`,{className:`min-w-0 truncate`,children:a}),t!=null&&n&&(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`span`,{className:G(U.compact,`shrink-0 text-muted-foreground`),children:t})}),(0,$.jsx)(Fr,{side:`left`,align:`end`,sideOffset:8,className:`max-w-64`,children:n})]})]},`${e.provider??``}:${e.id}`)})]},n)}),r&&a&&(r.supportedReasoningEfforts?.length??0)>0&&(0,$.jsx)(`div`,{className:`sticky bottom-0 -mx-1 -mb-1 mt-1 bg-popover px-1 pb-1`,children:(0,$.jsx)(Wb,{selectedEffort:d(r.settings,r.supportedReasoningEfforts??[]),supportedEfforts:r.supportedReasoningEfforts??[],onReasoningEffortChange:e=>a(r,e)})})]})}),t[33]=E,t[34]=x,t[35]=a,t[36]=p,t[37]=r,t[38]=o,t[39]=D,t[40]=T,t[41]=B):B=t[41];let V;return t[42]!==z||t[43]!==B?(V=(0,$.jsxs)(`div`,{className:`relative`,ref:h,children:[z,B]}),t[42]=z,t[43]=B,t[44]=V):V=t[44],V}function tx(e,t){let n=t.provider??`Other`;return e[n]||(e[n]=[]),e[n].push(t),e}function nx(e){return!e}function rx(e){return[e.slug,e]}function ix(e){let t=(0,Q.c)(16),{value:n,onChange:r,disabled:i,disableOn:a,ariaLabel:o,className:s}=e,c=i===void 0?!1:i,l=a===void 0?!1:a,u;t[0]!==r||t[1]!==n?(u=function(){r(!n)},t[0]=r,t[1]=n,t[2]=u):u=t[2];let d=u,f=c||l&&!n,p;t[3]===s?p=t[4]:(p=G(`h-7 w-7 shrink-0 rounded-full border border-border bg-muted text-muted-foreground shadow-sm hover:bg-accent hover:text-foreground aria-checked:bg-foreground aria-checked:text-background aria-checked:border-transparent`,s),t[3]=s,t[4]=p);let m=!n&&`invisible`,h;t[5]===m?h=t[6]:(h=G(m),t[5]=m,t[6]=h);let g;t[7]===h?g=t[8]:(g=(0,$.jsx)(W,{"aria-hidden":`true`,className:h}),t[7]=h,t[8]=g);let _;return t[9]!==o||t[10]!==d||t[11]!==f||t[12]!==p||t[13]!==g||t[14]!==n?(_=(0,$.jsx)(Hr,{type:`button`,variant:`ghost`,size:`icon-sm`,role:`checkbox`,"aria-checked":n,"aria-label":o,disabled:f,onClick:d,className:p,children:g}),t[9]=o,t[10]=d,t[11]=f,t[12]=p,t[13]=g,t[14]=n,t[15]=_):_=t[15],_}var ax=Ut(`app.use-seatbelt-sandbox.hook`);function ox(){let[e,t]=(0,Z.useState)(!1),[n,r]=(0,Z.useState)(!1),[i,a]=(0,Z.useState)(!1),[o,s]=(0,Z.useState)(``),[c,l]=(0,Z.useState)(!0),[u,d]=(0,Z.useState)(!1);(0,Z.useEffect)(()=>{let e=!1;async function n(){try{let n=await Zr();e||(t(n.seatbeltSandboxEnabled),r(n.seatbeltSandboxSupported),a(n.seatbeltSandboxHealthy),s(n.seatbeltSandboxMessage))}catch(e){ax.error(`Failed to load seatbelt sandbox setting:`,e)}finally{e||l(!1)}}return n(),()=>{e=!0}},[]);async function f(e){d(!0);try{let n=await Jo({seatbeltSandboxEnabled:e});t(n.seatbeltSandboxEnabled),r(n.seatbeltSandboxSupported),a(n.seatbeltSandboxHealthy),s(n.seatbeltSandboxMessage)}catch(e){throw ax.error(`Failed to update seatbelt sandbox setting:`,e),e}finally{d(!1)}}return{isEnabled:e,isSupported:n,isHealthy:i,statusMessage:o,isLoading:c,isSaving:u,updateIsEnabled:f}}var sx=Ut(`app.session-learnings-dialog.ui`);function cx({open:e,onOpenChange:t,threadId:n}){let[r,i]=(0,Z.useState)([]),[a,o]=(0,Z.useState)(!1),[s,c]=(0,Z.useState)(null);return(0,Z.useEffect)(()=>{if(!e||!n)return;let t=n,r=!1;async function a(){o(!0),c(null);try{let e=await ha(t);r||i(e)}catch(e){sx.error(`Failed to load session tool learnings`,e),r||(c(`Failed to load session learnings`),i([]))}finally{r||o(!1)}}return a(),()=>{r=!0}},[e,n]),(0,$.jsx)(Ni,{open:e,onOpenChange:t,children:(0,$.jsxs)(Ir,{className:`flex max-h-[80dvh] max-w-lg flex-col gap-4 overflow-hidden`,children:[(0,$.jsxs)(Dr,{className:`shrink-0`,children:[(0,$.jsx)(qa,{children:`Session learnings`}),(0,$.jsx)(_i,{children:`Short tool-behavior notes kept in memory for this thread and injected into the next prompt. Cleared when the CLI restarts.`})]}),(0,$.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col`,children:[a&&(0,$.jsx)(`p`,{className:G(U.bodyMuted),children:`Loading learnings…`}),s&&!a&&(0,$.jsx)(`p`,{className:G(U.body,`text-destructive`),children:s}),!a&&!s&&(0,$.jsx)(za,{className:`min-h-0 max-h-[50dvh] flex-1`,children:r.length===0?(0,$.jsx)(`p`,{className:G(U.bodyMuted),children:`No session tool learnings yet. They appear when tools redirect the agent (for example Smart JS helper redirects).`}):(0,$.jsx)(`ul`,{className:`space-y-2`,children:r.map((e,t)=>(0,$.jsx)(`li`,{className:G(U.body,`rounded-md border border-border/60 px-3 py-2 whitespace-pre-wrap select-text`),children:e},`${t}-${e}`))})})]})]})})}var lx=[{value:`auto`,label:`Auto`,icon:N,description:`Picks the model for a thread's first prompt`},{value:`build`,label:`Build`,icon:_t,description:`Executes code changes and implements features`},{value:`plan`,label:`Plan`,icon:de,description:`Creates implementation plans without making changes`},{value:`image`,label:`Image`,icon:u,description:`Generates and edits images`},{value:`ralph`,label:`Ralph`,icon:_,description:`Implements todo stories one-by-one with a fresh context each iteration`},{value:`orchestrate`,label:`Orchestrate`,icon:xt,description:`Plans on a smart model and delegates implementation to a cheap model`}],ux={auto:{title:`Fast or Cheap model required`,description:`Auto needs a Fast or Cheap model alias to classify each prompt. Set one under Project Settings → Advanced → Model Aliases.`},orchestrate:{title:`Cheap model required`,description:`Orchestrate needs a Cheap model alias so implementation work can run on a lower-cost model. Set it under Project Settings → Advanced → Model Aliases.`}};function dx(e){let t=(0,Q.c)(17),{requirement:n,onOpenChange:r,onOpenSettings:i}=e,a=ux[n??`orchestrate`],o=n!==null,s;t[0]===a.title?s=t[1]:(s=(0,$.jsx)(sc,{children:a.title}),t[0]=a.title,t[1]=s);let c;t[2]===a.description?c=t[3]:(c=(0,$.jsx)(oc,{children:a.description}),t[2]=a.description,t[3]=c);let l;t[4]!==s||t[5]!==c?(l=(0,$.jsxs)(fc,{children:[s,c]}),t[4]=s,t[5]=c,t[6]=l):l=t[6];let u;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(u=(0,$.jsx)(dc,{children:`Cancel`}),t[7]=u):u=t[7];let d;t[8]===i?d=t[9]:(d=(0,$.jsxs)(uc,{children:[u,(0,$.jsx)(lc,{onClick:i,children:`Open Project Settings`})]}),t[8]=i,t[9]=d);let f;t[10]!==l||t[11]!==d?(f=(0,$.jsxs)(cc,{children:[l,d]}),t[10]=l,t[11]=d,t[12]=f):f=t[12];let p;return t[13]!==r||t[14]!==o||t[15]!==f?(p=(0,$.jsx)(pc,{open:o,onOpenChange:r,children:f}),t[13]=r,t[14]=o,t[15]=f,t[16]=p):p=t[16],p}var fx=Ut(`app.use-mode-menu.ui`);function px(e,t,n){return t?`${e}: ${t.provider}/${t.model}`:`${e}: ${n}`}function mx({planMode:e,imageMode:t,ralphMode:n,orchestrateMode:r,autoMode:i,setPlanMode:a,setImageMode:o,setRalphMode:s,setOrchestrateMode:c,setAutoMode:l,lastAutoRouteDecision:u=null,projectId:d,onOpenProjectSettings:f}){let p=Ks(),m=X(function(e){if(d)return e.projects.find(e=>e.projectId===d)}),[h,g]=Z.useState(!0),[_,v]=Z.useState(!1),[y,b]=Z.useState(null),x=Xe({planMode:e,imageMode:t,ralphMode:n,orchestrateMode:r,autoMode:i}),S=lx.find(e=>e.value===x),C=Jt(m?.modelAliases),w=C||i?lx:lx.filter(e=>e.value!==`auto`),T=x===`auto`&&u?`last picked ${q[u]}`:S.description,E=Ue(m?.modelAliases),D=x===`auto`?[E?`Decides with: ${E.provider}/${E.model}`:`Decides with: Fast or Cheap, neither is set`,px(St.cheap,en(`cheap`,m?.modelAliases),`not set`),px(St.smart,ue(m?.modelAliases),`not set, uses your selected model`)]:[],O=(0,$.jsxs)(`div`,{className:G(U.body,`max-w-64 whitespace-normal text-left leading-relaxed`),children:[(0,$.jsx)(`p`,{children:`${S.label} - ${T}`}),D.map(e=>(0,$.jsx)(`p`,{children:e},e))]});Z.useEffect(()=>{m&&g(m.allowAllCommands===!1)},[m]),Z.useEffect(()=>{m&&i&&!C&&l(!1)},[i,C,m,l]);async function k(){if(!d||_)return;let e=!h;g(e),v(!0);try{await Fi(d,{allowAllCommands:!e}),Si(d);let t=await lo();p({type:Y.SetProjects,projects:t.projects,cloneRootPath:t.cloneRootPath})}catch(t){g(!e),fx.error(`Failed to update command confirmation setting:`,t)}finally{v(!1)}}function A(e){let t=rt(e);a(t.planMode),o(t.imageMode),s(t.ralphMode),c(t.orchestrateMode),l(t.autoMode)}async function j(e){if(d)try{await Fi(d,{defaultChatMode:e}),Si(d);let t=await lo();p({type:Y.SetProjects,projects:t.projects,cloneRootPath:t.cloneRootPath})}catch(e){fx.error(`Failed to save the project's default mode:`,e)}}function M(){A(`orchestrate`)}function N(){return on(m?.modelAliases)?!0:(b(`orchestrate`),!1)}function P(){return N()?(M(),!0):!1}function F(){return N()?(M(),!0):!1}function I(e){if(e===`orchestrate`){P()&&j(e);return}if(e===`auto`&&!C){b(`auto`);return}A(e),j(e)}function L(){b(null),d&&f&&f(d)}return{chatModes:w,confirmCommands:h,currentConfig:S,currentMode:x,modeTooltipContent:O,isUpdatingConfirmCommands:_,selectMode:I,trySelectOrchestrate:P,ensureCanOrchestrate:N,requestOrchestrateMode:F,toggleConfirmCommands:k,cheapAliasDialog:(0,$.jsx)(dx,{requirement:y,onOpenChange:e=>{e||b(null)},onOpenSettings:L})}}function hx(e){return e.replace(/[-_]+/g,` `).trim().split(/\s+/g).filter(Boolean).map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(` `)}function gx(e,t){return t&&e.skillPath.startsWith(`${t}/`)?`${e.skillPath.slice(t.length+1)}/SKILL.md`:`.agents/skills/${e.name}/SKILL.md`}function _x(e){let t=(0,Q.c)(11),{skill:n,onOpen:r}=e,i;t[0]===n.name?i=t[1]:(i=hx(n.name),t[0]=n.name,t[1]=i);let a=`Open ${i} in Files`,o;t[2]===r?o=t[3]:(o=e=>{e.stopPropagation(),r()},t[2]=r,t[3]=o);let s;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,$.jsx)(pt,{}),t[4]=s):s=t[4];let c;t[5]!==a||t[6]!==o?(c=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(Hr,{type:`button`,variant:`action`,size:`icon-xs`,className:`ml-auto shrink-0`,"aria-label":a,onClick:o,onPointerDown:vx,children:s})}),t[5]=a,t[6]=o,t[7]=c):c=t[7];let l;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,$.jsx)(Fr,{children:`Open in Files`}),t[8]=l):l=t[8];let u;return t[9]===c?u=t[10]:(u=(0,$.jsxs)(Mi,{children:[c,l]}),t[9]=c,t[10]=u),u}function vx(e){e.stopPropagation()}function yx(e){let t=(0,Q.c)(29),{icon:n,iconClassName:r,label:i,value:a,onChange:o,disabled:s,disableOn:c,ariaLabel:l}=e,u=s===void 0?!1:s,d=c===void 0?!1:c,f;t[0]!==d||t[1]!==u||t[2]!==o||t[3]!==a?(f=function(){u||d&&!a||o(!a)},t[0]=d,t[1]=u,t[2]=o,t[3]=a,t[4]=f):f=t[4];let p=f,m;t[5]===p?m=t[6]:(m=e=>{e.preventDefault(),p()},t[5]=p,t[6]=m);let h;t[7]!==n||t[8]!==r?(h=(0,$.jsx)(n,{className:r}),t[7]=n,t[8]=r,t[9]=h):h=t[9];let g;t[10]!==i||t[11]!==h?(g=(0,$.jsxs)(`span`,{className:`flex min-w-0 items-center gap-2`,children:[h,i]}),t[10]=i,t[11]=h,t[12]=g):g=t[12];let _;t[13]===p?_=t[14]:(_=e=>{e.stopPropagation(),p()},t[13]=p,t[14]=_);let v;t[15]!==l||t[16]!==d||t[17]!==u||t[18]!==o||t[19]!==a?(v=(0,$.jsx)(ix,{value:a,onChange:o,disabled:u,disableOn:d,ariaLabel:l}),t[15]=l,t[16]=d,t[17]=u,t[18]=o,t[19]=a,t[20]=v):v=t[20];let y;t[21]!==_||t[22]!==v?(y=(0,$.jsx)(`span`,{onPointerDown:bx,onClick:_,children:v}),t[21]=_,t[22]=v,t[23]=y):y=t[23];let b;return t[24]!==u||t[25]!==m||t[26]!==g||t[27]!==y?(b=(0,$.jsxs)(xl,{className:`flex items-center justify-between gap-2 [&_svg]:size-3.5`,onSelect:m,disabled:u,children:[g,y]}),t[24]=u,t[25]=m,t[26]=g,t[27]=y,t[28]=b):b=t[28],b}function bx(e){e.stopPropagation()}function xx(e){let t=(0,Q.c)(20),{disabled:n,currentConfig:r,sandboxSupported:i,isSandboxLoading:a,sandboxEnabled:o,modeTooltipContent:s}=e,c;t[0]===r.icon?c=t[1]:(c=(0,$.jsx)(r.icon,{className:`h-4 w-4`}),t[0]=r.icon,t[1]=c);let l;t[2]===r.label?l=t[3]:(l=(0,$.jsxs)(`span`,{className:`sr-only`,children:[r.label,` mode`]}),t[2]=r.label,t[3]=l);let u;t[4]!==n||t[5]!==c||t[6]!==l?(u=(0,$.jsx)(gl,{asChild:!0,children:(0,$.jsxs)(Hr,{variant:`action`,size:`icon-sm`,disabled:n,children:[c,l]})}),t[4]=n,t[5]=c,t[6]=l,t[7]=u):u=t[7];let d;t[8]!==a||t[9]!==o||t[10]!==i?(d=i&&!a&&!o&&(0,$.jsx)(`span`,{className:`absolute -right-0.5 -top-0.5 h-2.5 w-2.5 rounded-full bg-destructive ring-2 ring-background`}),t[8]=a,t[9]=o,t[10]=i,t[11]=d):d=t[11];let f;t[12]!==u||t[13]!==d?(f=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(`div`,{className:`relative`,children:[u,d]})}),t[12]=u,t[13]=d,t[14]=f):f=t[14];let p;t[15]===s?p=t[16]:(p=(0,$.jsx)(Fr,{children:s}),t[15]=s,t[16]=p);let m;return t[17]!==f||t[18]!==p?(m=(0,$.jsx)(Zo,{children:(0,$.jsxs)(Mi,{children:[f,p]})}),t[17]=f,t[18]=p,t[19]=m):m=t[19],m}function Sx(e){let t=(0,Q.c)(16),{projectId:n,sandboxSupported:r,isSandboxLoading:i,confirmCommands:a,toggleConfirmCommands:o,isUpdatingConfirmCommands:s,sandboxEnabled:c,sandboxHealthy:l,updateSandbox:u,isSandboxSaving:d}=e;if(!n&&!(r&&!i))return null;let f;t[0]!==a||t[1]!==s||t[2]!==n||t[3]!==o?(f=n&&(0,$.jsx)(yx,{icon:le,label:`Confirm Commands`,value:a,onChange:()=>{o()},disabled:s,ariaLabel:`Confirm Commands`}),t[0]=a,t[1]=s,t[2]=n,t[3]=o,t[4]=f):f=t[4];let p;t[5]!==i||t[6]!==d||t[7]!==c||t[8]!==l||t[9]!==r||t[10]!==u?(p=r&&!i&&(0,$.jsx)(yx,{icon:L,iconClassName:G(c&&l?`text-brand`:`text-destructive`),label:`Sandbox`,value:c&&l,onChange:e=>{e&&!l||u(e).catch(Cx)},disabled:d||!l&&!c,disableOn:!l,ariaLabel:`Sandbox`}),t[5]=i,t[6]=d,t[7]=c,t[8]=l,t[9]=r,t[10]=u,t[11]=p):p=t[11];let m;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(m=(0,$.jsx)(Tl,{}),t[12]=m):m=t[12];let h;return t[13]!==f||t[14]!==p?(h=(0,$.jsxs)($.Fragment,{children:[f,p,m]}),t[13]=f,t[14]=p,t[15]=h):h=t[15],h}function Cx(){}function wx(e){let t=(0,Q.c)(9),{chatModes:n,currentMode:r,selectMode:i}=e,a;if(t[0]!==n||t[1]!==r||t[2]!==i){let e;t[4]!==r||t[5]!==i?(e=e=>{let t=e.icon,n=e.value===r;return(0,$.jsxs)(xl,{onClick:()=>i(e.value),className:G(n&&`bg-accent`),children:[(0,$.jsx)(t,{className:`h-3.5 w-3.5`}),e.label,n&&(0,$.jsx)(W,{className:`ml-auto h-3.5 w-3.5`})]},e.value)},t[4]=r,t[5]=i,t[6]=e):e=t[6],a=n.map(e),t[0]=n,t[1]=r,t[2]=i,t[3]=a}else a=t[3];let o;return t[7]===a?o=t[8]:(o=(0,$.jsx)($.Fragment,{children:a}),t[7]=a,t[8]=o),o}function Tx(e){let t=(0,Q.c)(7),{sortedSkills:n,onSelectSkill:r,onOpenSkillInExplorer:i}=e,a;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(a=(0,$.jsxs)(vl,{children:[(0,$.jsx)(vt,{className:`h-3.5 w-3.5`}),`Skills`]}),t[0]=a):a=t[0];let o;t[1]!==i||t[2]!==r||t[3]!==n?(o=n.length===0?(0,$.jsx)(xl,{disabled:!0,children:`No skills available`}):n.map(e=>(0,$.jsxs)(xl,{onClick:()=>r(e),className:`gap-2 [&_svg]:size-3`,children:[(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:hx(e.name)}),(0,$.jsx)(_x,{skill:e,onOpen:()=>i(e)})]},e.skillPath)),t[1]=i,t[2]=r,t[3]=n,t[4]=o):o=t[4];let s;return t[5]===o?s=t[6]:(s=(0,$.jsxs)(_l,{children:[a,(0,$.jsx)(yl,{className:`max-h-[min(400px,80vh)] w-64 overflow-y-auto`,children:o})]}),t[5]=o,t[6]=s),s}function Ex(e){let t=(0,Q.c)(8),{slashCommands:n,onSelectSlashCommand:r}=e;if(n.length===0)return null;let i;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(i=(0,$.jsxs)(vl,{children:[(0,$.jsx)(ht,{className:`h-3.5 w-3.5`}),`Slash Commands`]}),t[0]=i):i=t[0];let a;if(t[1]!==r||t[2]!==n){let e;t[4]===r?e=t[5]:(e=e=>(0,$.jsxs)(xl,{onClick:()=>r(e),className:`gap-2 [&_svg]:size-3`,children:[(0,$.jsxs)(`span`,{className:`min-w-0 flex-1 truncate`,children:[`/`,e.name]}),e.metadata.description&&(0,$.jsx)(`span`,{className:G(U.compact,`text-muted-foreground truncate`),children:e.metadata.description})]},e.filePath),t[4]=r,t[5]=e),a=[...n].sort(Dx).map(e),t[1]=r,t[2]=n,t[3]=a}else a=t[3];let o;return t[6]===a?o=t[7]:(o=(0,$.jsxs)(_l,{children:[i,(0,$.jsx)(yl,{className:`max-h-[min(400px,80vh)] w-64 overflow-y-auto`,children:a})]}),t[6]=a,t[7]=o),o}function Dx(e,t){return e.name.localeCompare(t.name)}function Ox(e){let t=(0,Q.c)(15),{selectedThreadId:n,onOpenLearnings:r,onFileAttach:i,canAddTask:a,onAddTask:o}=e,s=!n,c;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,$.jsx)(Zt,{className:`h-3.5 w-3.5`}),t[0]=c):c=t[0];let l;t[1]!==r||t[2]!==s?(l=(0,$.jsxs)(xl,{disabled:s,onClick:r,children:[c,`Learnings`]}),t[1]=r,t[2]=s,t[3]=l):l=t[3];let u;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(u=(0,$.jsx)(Tl,{}),t[4]=u):u=t[4];let d;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(d=(0,$.jsx)(It,{className:`h-3.5 w-3.5`}),t[5]=d):d=t[5];let f;t[6]===i?f=t[7]:(f=(0,$.jsxs)(xl,{onClick:i,children:[d,`Attach File`]}),t[6]=i,t[7]=f);let p;t[8]!==a||t[9]!==o?(p=a&&(0,$.jsxs)(xl,{onClick:o,children:[(0,$.jsx)(rn,{className:`h-3.5 w-3.5`}),`Add Prompt`]}),t[8]=a,t[9]=o,t[10]=p):p=t[10];let m;return t[11]!==l||t[12]!==f||t[13]!==p?(m=(0,$.jsxs)($.Fragment,{children:[l,u,f,p]}),t[11]=l,t[12]=f,t[13]=p,t[14]=m):m=t[14],m}function kx(e){let t=(0,Q.c)(73),{planMode:n,imageMode:r,ralphMode:i,orchestrateMode:a,autoMode:o,setPlanMode:s,setImageMode:c,setRalphMode:l,setOrchestrateMode:u,setAutoMode:d,lastAutoRouteDecision:f,projectId:p,disabled:m,canAddTask:h,skills:g,onSelectSkill:_,slashCommands:v,onSelectSlashCommand:y,onFileAttach:b,onAddTask:x}=e,S=f===void 0?null:f,C=m===void 0?!1:m,w=Yn(),[T,E]=(0,Z.useState)(!1),[D,O]=(0,Z.useState)(!1),{isEnabled:k,isSupported:A,isHealthy:j,isLoading:M,isSaving:N,updateIsEnabled:P}=ox(),{setPendingExplorerPath:F}=vc(),{openChatDockPanel:I}=Wd(),L=X(Mx),R=X(jx),z;t[0]!==o||t[1]!==r||t[2]!==S||t[3]!==w||t[4]!==a||t[5]!==n||t[6]!==p||t[7]!==i||t[8]!==d||t[9]!==c||t[10]!==u||t[11]!==s||t[12]!==l?(z={planMode:n,imageMode:r,ralphMode:i,orchestrateMode:a,autoMode:o,setPlanMode:s,setImageMode:c,setRalphMode:l,setOrchestrateMode:u,setAutoMode:d,lastAutoRouteDecision:S,projectId:p,onOpenProjectSettings(e){w(`/settings/project/${e}/model-aliases`)}},t[0]=o,t[1]=r,t[2]=S,t[3]=w,t[4]=a,t[5]=n,t[6]=p,t[7]=i,t[8]=d,t[9]=c,t[10]=u,t[11]=s,t[12]=l,t[13]=z):z=t[13];let{chatModes:B,confirmCommands:V,currentConfig:H,currentMode:ee,modeTooltipContent:te,isUpdatingConfirmCommands:ne,selectMode:re,toggleConfirmCommands:ie,cheapAliasDialog:ae}=mx(z),oe;t[14]===g?oe=t[15]:(oe=[...g].sort(Ax),t[14]=g,t[15]=oe);let se=oe,U;t[16]!==I||t[17]!==R||t[18]!==F?(U=function(e){F(gx(e,R)),I(`explorer`),E(!1)},t[16]=I,t[17]=R,t[18]=F,t[19]=U):U=t[19];let ce=U,le;t[20]!==H||t[21]!==C||t[22]!==M||t[23]!==te||t[24]!==k||t[25]!==A?(le=(0,$.jsx)(xx,{disabled:C,currentConfig:H,sandboxSupported:A,isSandboxLoading:M,sandboxEnabled:k,modeTooltipContent:te}),t[20]=H,t[21]=C,t[22]=M,t[23]=te,t[24]=k,t[25]=A,t[26]=le):le=t[26];let ue;t[27]!==V||t[28]!==M||t[29]!==N||t[30]!==ne||t[31]!==p||t[32]!==k||t[33]!==j||t[34]!==A||t[35]!==ie||t[36]!==P?(ue=(0,$.jsx)(Sx,{projectId:p,sandboxSupported:A,isSandboxLoading:M,confirmCommands:V,toggleConfirmCommands:ie,isUpdatingConfirmCommands:ne,sandboxEnabled:k,sandboxHealthy:j,updateSandbox:P,isSandboxSaving:N}),t[27]=V,t[28]=M,t[29]=N,t[30]=ne,t[31]=p,t[32]=k,t[33]=j,t[34]=A,t[35]=ie,t[36]=P,t[37]=ue):ue=t[37];let W;t[38]!==B||t[39]!==ee||t[40]!==re?(W=(0,$.jsx)(wx,{chatModes:B,currentMode:ee,selectMode:re}),t[38]=B,t[39]=ee,t[40]=re,t[41]=W):W=t[41];let de;t[42]===Symbol.for(`react.memo_cache_sentinel`)?(de=(0,$.jsx)(Tl,{}),t[42]=de):de=t[42];let fe;t[43]!==ce||t[44]!==_||t[45]!==se?(fe=(0,$.jsx)(Tx,{sortedSkills:se,onSelectSkill:_,onOpenSkillInExplorer:ce}),t[43]=ce,t[44]=_,t[45]=se,t[46]=fe):fe=t[46];let pe;t[47]!==y||t[48]!==v?(pe=(0,$.jsx)(Ex,{slashCommands:v,onSelectSlashCommand:y}),t[47]=y,t[48]=v,t[49]=pe):pe=t[49];let me;t[50]===Symbol.for(`react.memo_cache_sentinel`)?(me=()=>{O(!0)},t[50]=me):me=t[50];let he;t[51]!==h||t[52]!==x||t[53]!==b||t[54]!==L?(he=(0,$.jsx)(Ox,{selectedThreadId:L,onOpenLearnings:me,onFileAttach:b,canAddTask:h,onAddTask:x}),t[51]=h,t[52]=x,t[53]=b,t[54]=L,t[55]=he):he=t[55];let ge;t[56]!==fe||t[57]!==pe||t[58]!==he||t[59]!==ue||t[60]!==W?(ge=(0,$.jsxs)(bl,{align:`start`,side:`top`,className:`w-64`,children:[ue,W,de,fe,pe,he]}),t[56]=fe,t[57]=pe,t[58]=he,t[59]=ue,t[60]=W,t[61]=ge):ge=t[61];let _e;t[62]!==T||t[63]!==ge||t[64]!==le?(_e=(0,$.jsxs)(hl,{open:T,onOpenChange:E,children:[le,ge]}),t[62]=T,t[63]=ge,t[64]=le,t[65]=_e):_e=t[65];let ve;t[66]!==D||t[67]!==L?(ve=(0,$.jsx)(cx,{open:D,onOpenChange:O,threadId:L}),t[66]=D,t[67]=L,t[68]=ve):ve=t[68];let ye;return t[69]!==ae||t[70]!==_e||t[71]!==ve?(ye=(0,$.jsxs)($.Fragment,{children:[_e,ae,ve]}),t[69]=ae,t[70]=_e,t[71]=ve,t[72]=ye):ye=t[72],ye}function Ax(e,t){return hx(e.name).localeCompare(hx(t.name))}function jx(e){return e.projects.find(t=>t.projectId===e.selectedProjectId)?.threads.find(t=>t.threadId===e.selectedThreadId)?.path}function Mx(e){return e.selectedThreadId}function Nx(){if(typeof window>`u`)return null;let e=window;return e.SpeechRecognition??e.webkitSpeechRecognition??null}function Px(){return Nx()!==null}function Fx(){let e=Nx();return e?new e:null}var Ix=!1;function Lx(){Ix||typeof globalThis.fetch!=`function`||(tt(e=>{if(e.event.startsWith(`voice.`))try{fetch(`/api/logs`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({level:[`DEBUG`,`INFO`,`WARN`,`ERROR`][e.level]??`INFO`,context:e.event,message:e.message,data:e.data})}).catch(()=>{})}catch{}}),Ix=!0)}function Rx(e){Lx();let t=Ut(e);return{debug:(e,n)=>t.debug(e,n),info:(e,n)=>t.info(e,n),warn:(e,n)=>t.warn(e,n),error:(e,n)=>t.error(e,n),separator:e=>t.info(`${`─`.repeat(20)} ${e} ${`─`.repeat(20)}`)}}var zx=Rx(`voice.stt.web`);function Bx(e){switch(e){case`not-allowed`:return`Microphone access was denied. Please allow microphone access to use voice input.`;case`service-not-allowed`:return`Speech recognition is not allowed in this environment.`;case`audio-capture`:return`No microphone was found. Please connect a microphone to use voice input.`;case`network`:return`Speech recognition requires a network connection.`;case`no-speech`:case`aborted`:return null;default:return`Speech recognition error: ${e}`}}function Vx(e){let t=``;for(let n=0;n<e.results.length;n+=1)t+=e.results[n][0]?.transcript??``;return t}function Hx(){let[e,t]=(0,Z.useState)(`idle`),[n,r]=(0,Z.useState)(null),[i,a]=(0,Z.useState)(``),[o,s]=(0,Z.useState)(null),c=(0,Z.useRef)(null),l=(0,Z.useRef)(!1);(0,Z.useEffect)(()=>()=>{l.current=!1,c.current?.abort(),c.current=null},[]);let u=(0,Z.useCallback)(()=>{let e=Fx();if(!e){l.current=!1,t(`error`),r(!1),s(`Speech recognition is not supported in this environment.`);return}e.continuous=!0,e.interimResults=!0,e.lang=`en-US`,e.onresult=e=>{let t=Vx(e).trim();t&&a(t)},e.onerror=e=>{let t=Bx(e.error);zx.error(`Web Speech recognition error`,{error:e.error,message:e.message}),t&&s(t)},e.onend=()=>{if(c.current=null,!l.current){t(`ready`);return}zx.info(`Web Speech recognition ended — restarting`),u()},c.current=e;try{e.start(),t(`recording`),zx.info(`Web Speech recognition started`)}catch(e){c.current=null,l.current=!1;let n=e instanceof Error?e.message:`Unknown error`;zx.error(`Failed to start Web Speech recognition`,{error:n}),t(`ready`),s(`Failed to start speech recognition: ${n}`)}},[]),d=(0,Z.useCallback)(async()=>{if(e===`ready`||e===`error`)return e;t(`checking-support`),s(null),zx.info(`Checking Web Speech API support`,{userAgent:navigator.userAgent,platform:navigator.platform});let n=Px();return r(n),n?(zx.info(`Web Speech API available — ready`),t(`ready`),`ready`):(zx.error(`Web Speech API not available`),t(`error`),s(`Speech recognition is not supported in this environment.`),`error`)},[e]);return{state:e,isSupported:n,transcript:i,error:o,downloadProgress:0,startListening:(0,Z.useCallback)(async()=>{l.current=!0,s(null),a(``),zx.info(`Starting Web Speech recognition`),u()},[u]),stopListening:(0,Z.useCallback)(async()=>{l.current=!1,c.current?.stop(),c.current=null,t(`ready`),zx.info(`Web Speech recognition stopped`)},[]),requestModelDownload:(0,Z.useCallback)(async()=>{},[]),ensureReady:d,resetTranscript:(0,Z.useCallback)(()=>{a(``),s(null)},[])}}var Ux=class{cacheEnabled=!0;log=Ut(`voice.vosk-cache`);async getCachedModelByUrl(e){return this.cacheEnabled?this.readCachedModelByUrl(e):null}async loadModelByUrl(e,t){let n=await this.getCachedModelByUrl(e);if(n)return this.log.info(`Voice model loaded from cache`,{url:e}),t?.(100),n;this.log.info(`Downloading voice model`,{url:e});let r=await fetch(e);if(!r.ok)throw Error(`Failed to download voice model: ${r.statusText}`);let i=await this.fetchBinaryWithProgress(r,t);return this.cacheEnabled&&await this.saveModelToCacheByUrl(e,i),t?.(100),i}async fetchBinaryWithProgress(e,t){let n=e.headers.get(`content-length`),r=n?parseInt(n,10):0,i=0,a=e.body?.getReader();if(!a)throw Error(`Response body is not readable`);let o=[];try{let e=!1;for(;!e;){let n=await a.read();e=n.done,!e&&n.value&&(o.push(n.value),i+=n.value.length,t&&r>0&&t(Math.round(i/r*100)))}}finally{a.releaseLock()}let s=o.reduce((e,t)=>e+t.length,0),c=new Uint8Array(s),l=0;for(let e of o)c.set(e,l),l+=e.length;return c}async readCachedModelByUrl(e){try{let t=(await this.openIndexedDB()).transaction([`modelsByUrl`],`readonly`).objectStore(`modelsByUrl`);return new Promise((n,r)=>{let i=t.get(e);i.onsuccess=()=>{let e=i.result;e?.data?n(e.data):n(null)},i.onerror=()=>r(i.error)})}catch(e){return this.log.error(`Error reading voice model from cache`,e),null}}async saveModelToCacheByUrl(e,t){try{let n=(await this.openIndexedDB()).transaction([`modelsByUrl`],`readwrite`).objectStore(`modelsByUrl`);await new Promise((r,i)=>{let a=n.put({url:e,data:t,timestamp:Date.now(),size:t.length});a.onsuccess=()=>r(),a.onerror=()=>i(a.error)}),this.log.info(`Voice model saved to cache`,{url:e})}catch(e){this.log.error(`Error saving voice model to cache`,e)}}async openIndexedDB(){return new Promise((e,t)=>{let n=indexedDB.open(`VoskModels`,1);n.onerror=()=>t(n.error),n.onsuccess=()=>e(n.result),n.onupgradeneeded=e=>{let t=e.target.result;if(!t.objectStoreNames.contains(`modelsByUrl`)){let e=t.createObjectStore(`modelsByUrl`,{keyPath:`url`});e.createIndex(`timestamp`,`timestamp`,{unique:!1}),e.createIndex(`size`,`size`,{unique:!1})}}})}},Wx=Rx(`voice.stt.vosk`),Gx=new URL(`data:text/javascript;base64,Y2xhc3MgUmVjb2duaXplckF1ZGlvUHJvY2Vzc29yIGV4dGVuZHMgQXVkaW9Xb3JrbGV0UHJvY2Vzc29yIHsKICBjb25zdHJ1Y3RvcihvcHRpb25zKSB7CiAgICBzdXBlcihvcHRpb25zKTsKICAgIHRoaXMucG9ydC5vbm1lc3NhZ2UgPSB0aGlzLl9wcm9jZXNzTWVzc2FnZS5iaW5kKHRoaXMpOwogIH0KCiAgX3Byb2Nlc3NNZXNzYWdlKGV2ZW50KSB7CiAgICBpZiAoZXZlbnQuZGF0YS5hY3Rpb24gPT09ICJpbml0IikgewogICAgICB0aGlzLl9yZWNvZ25pemVySWQgPSBldmVudC5kYXRhLnJlY29nbml6ZXJJZDsKICAgICAgdGhpcy5fcmVjb2duaXplclBvcnQgPSBldmVudC5wb3J0c1swXTsKICAgIH0KICB9CgogIHByb2Nlc3MoaW5wdXRzKSB7CiAgICBjb25zdCBkYXRhID0gaW5wdXRzWzBdWzBdOwogICAgaWYgKHRoaXMuX3JlY29nbml6ZXJQb3J0ICYmIGRhdGEpIHsKICAgICAgY29uc3QgYXVkaW9BcnJheSA9IGRhdGEubWFwKCh2YWx1ZSkgPT4gdmFsdWUgKiAweDgwMDApOwoKICAgICAgdGhpcy5fcmVjb2duaXplclBvcnQucG9zdE1lc3NhZ2UoCiAgICAgICAgewogICAgICAgICAgYWN0aW9uOiAiYXVkaW9DaHVuayIsCiAgICAgICAgICBkYXRhOiBhdWRpb0FycmF5LAogICAgICAgICAgcmVjb2duaXplcklkOiB0aGlzLl9yZWNvZ25pemVySWQsCiAgICAgICAgICBzYW1wbGVSYXRlLAogICAgICAgIH0sCiAgICAgICAgewogICAgICAgICAgdHJhbnNmZXI6IFthdWRpb0FycmF5LmJ1ZmZlcl0sCiAgICAgICAgfSwKICAgICAgKTsKICAgIH0KICAgIHJldHVybiB0cnVlOwogIH0KfQoKcmVnaXN0ZXJQcm9jZXNzb3IoInJlY29nbml6ZXItcHJvY2Vzc29yIiwgUmVjb2duaXplckF1ZGlvUHJvY2Vzc29yKTsK`,``+import.meta.url);async function Kx(t){let{createModel:n}=await us(async()=>{let{createModel:t}=await import(`./vosk-speech-Fi-g2v8n.js`).then(t=>e(t.t(),1));return{createModel:t}},__vite__mapDeps([2,1]));return n(t)}var qx=class{model=null;modelBlobUrl=null;checkSupport(){return typeof WebAssembly<`u`&&typeof Worker<`u`&&typeof indexedDB<`u`}async initModel(e){Wx.info(`Initializing Vosk model`,{modelUrl:e});try{this.model=await Kx(e),Wx.info(`Vosk model ready`)}catch(e){let t=e instanceof Error?e.message:String(e);throw Wx.error(`Failed to initialize Vosk model`,{error:t}),Error(`Failed to initialize voice model: ${t}`)}}async initModelFromBytes(e){this.revokeModelBlobUrl();let t=new Uint8Array(e),n=new Blob([t],{type:`application/gzip`});this.modelBlobUrl=URL.createObjectURL(n);try{await this.initModel(this.modelBlobUrl)}catch(e){throw this.revokeModelBlobUrl(),e}}isModelLoaded(){return this.model?.ready===!0}async startMicPipeline(e){if(!this.model?.ready)throw Error(`Voice model is not loaded.`);let t=this.model,n=t.KaldiRecognizer,r=await navigator.mediaDevices.getUserMedia({video:!1,audio:{echoCancellation:!0,noiseSuppression:!0,autoGainControl:!0,channelCount:1}}),i=new AudioContext,a=new n(i.sampleRate),o=i.createMediaStreamSource(r);a.on(`partialresult`,t=>{let n=t.result.partial.trim();n&&e.onPartial(n)}),a.on(`result`,t=>{let n=t.result.text.trim();n&&e.onResult(n)});let s=await Jx(i,t,a,o);return s.audioNode.connect(i.destination),Wx.info(`Vosk mic pipeline started`,{sampleRate:i.sampleRate,processor:s.processorType}),{stop:async()=>{s.audioNode.disconnect(),o.disconnect(),s.messageChannel?.port1.close(),s.messageChannel?.port2.close(),r.getTracks().forEach(e=>e.stop()),a.retrieveFinalResult(),await i.close(),a.remove(),Wx.info(`Vosk mic pipeline stopped`)}}}terminate(){this.model?.terminate(),this.model=null,this.revokeModelBlobUrl()}revokeModelBlobUrl(){this.modelBlobUrl&&=(URL.revokeObjectURL(this.modelBlobUrl),null)}};async function Jx(e,t,n,r){return await Yx(e,t,n,r)||(Wx.warn(`AudioWorklet unavailable — falling back to ScriptProcessorNode`),Xx(e,n,r))}async function Yx(e,t,n,r){if(!e.audioWorklet)return null;try{await e.audioWorklet.addModule(Gx);let i=new MessageChannel;t.registerPort(i.port1);let a=new AudioWorkletNode(e,`recognizer-processor`,{channelCount:1,numberOfInputs:1,numberOfOutputs:1});return a.port.postMessage({action:`init`,recognizerId:n.id},[i.port2]),r.connect(a),{audioNode:a,messageChannel:i,processorType:`audioworklet`}}catch(e){return Wx.warn(`Failed to initialize AudioWorklet pipeline`,{error:e instanceof Error?e.message:String(e)}),null}}function Xx(e,t,n){let r=e.createScriptProcessor(4096,1,1);return r.onaudioprocess=e=>{try{t.acceptWaveform(e.inputBuffer)}catch(e){Wx.error(`acceptWaveform failed`,{error:e instanceof Error?e.message:String(e)})}},n.connect(r),{audioNode:r,processorType:`scriptprocessor`}}var Zx=`/api/voice-model/download`;function Qx(){return Zx}var $x=Rx(`voice.stt.vosk-hook`);function eS(e,t){let n=e.trim(),r=t.trim();return n&&r?`${n} ${r}`:n||r}function tS(){let[e,t]=(0,Z.useState)(`idle`),[n,r]=(0,Z.useState)(null),[i,a]=(0,Z.useState)(``),[o,s]=(0,Z.useState)(null),[c,l]=(0,Z.useState)(0),u=(0,Z.useRef)(null),d=(0,Z.useRef)(null),f=(0,Z.useRef)(null),p=(0,Z.useRef)(null),m=(0,Z.useRef)(!1),h=(0,Z.useRef)(``),g=(0,Z.useRef)(``),_=(0,Z.useCallback)(e=>{m.current=e},[]);(0,Z.useEffect)(()=>()=>{f.current?.stop(),f.current=null,u.current?.terminate(),u.current=null},[]);let v=(0,Z.useCallback)(()=>{a(eS(h.current,g.current))},[]),y=(0,Z.useCallback)(async()=>{if(e===`ready`||e===`needs-model`||e===`error`)return e;if(p.current)return p.current;let n=Qx();async function i(){t(`checking-support`),_(!1),l(0),s(null),$x.separator(`VOICE SESSION START`),$x.info(`Checking Vosk support`,{userAgent:navigator.userAgent,platform:navigator.platform,url:n});try{let e=new qx;u.current=e;let i=e.checkSupport();if(r(i),!i)return $x.error(`Vosk not supported in this environment`),t(`error`),s(`Local speech recognition is not supported in this environment.`),`error`;let a=new Ux;d.current=a,$x.info(`Checking IndexedDB model cache`,{url:n});let o=await a.getCachedModelByUrl(n);return o?($x.info(`Cached model found — initializing Vosk`,{sizeBytes:o.byteLength,sizeMB:(o.byteLength/1024/1024).toFixed(2)}),_(!0),t(`initializing`),await e.initModelFromBytes(o),$x.info(`Vosk model initialized from cache — ready`),t(`ready`),`ready`):($x.info(`Model not in cache — download required`),t(`needs-model`),`needs-model`)}catch(e){let n=e instanceof Error?e.message:`Unknown error`;return $x.error(`Failed to check speech recognition support`,{error:n}),t(`error`),s(`Failed to check speech recognition support: ${n}`),`error`}}let a=i();p.current=a;try{return await a}finally{p.current=null}},[e,_]),b=(0,Z.useCallback)(async()=>{if(!u.current||!d.current)return;let e=Qx();t(`downloading-model`),l(0),s(null),$x.info(`Model download requested`,{url:e});try{let n=await d.current.loadModelByUrl(e,e=>{l(e),e%10==0&&$x.debug(`Model download progress`,{progress:e})});$x.info(`Model download complete — initializing Vosk`,{sizeBytes:n.byteLength,sizeMB:(n.byteLength/1024/1024).toFixed(2)}),t(`initializing`),await u.current.initModelFromBytes(n),$x.info(`Vosk model initialized after download — ready`),_(!0),t(`ready`)}catch(e){let n=e instanceof Error?e.message:`An unknown error occurred.`;$x.error(`Model download or initialization failed`,{error:n}),t(`needs-model`),s(n)}},[_]);return{state:e,isSupported:n,transcript:i,error:o,downloadProgress:c,startListening:(0,Z.useCallback)(async()=>{if(!(!u.current||!m.current)){if(t(`requesting-mic`),s(null),h.current=``,g.current=``,a(``),$x.separator(`RECORDING START`),!navigator.mediaDevices?.getUserMedia){$x.error(`navigator.mediaDevices.getUserMedia not available`),t(`ready`),s(`Microphone is not available in this environment.`);return}try{f.current=await u.current.startMicPipeline({onPartial:e=>{g.current=e,v()},onResult:e=>{let t=h.current.trim();h.current=t?`${t} ${e}`:e,g.current=``,v()}}),t(`recording`),$x.info(`Recording started`)}catch(e){t(`ready`),e instanceof DOMException&&e.name===`NotAllowedError`?s(`Microphone access was denied. Please allow microphone access to use voice input.`):e instanceof DOMException&&e.name===`NotFoundError`?s(`No microphone was found. Please connect a microphone to use voice input.`):s(`Microphone error: ${e instanceof Error?e.message:`Unknown error`}`)}}},[v]),stopListening:(0,Z.useCallback)(async()=>{if(!f.current){$x.info(`stopListening called but no active recording`),m.current&&t(`ready`);return}t(`transcribing`),$x.info(`Stopping recording`);try{await f.current.stop(),g.current=``,v(),t(`ready`),$x.info(`Recording stopped`)}catch(e){let n=e instanceof Error?e.message:`Unknown error`;$x.error(`Failed to stop recording`,{error:n}),t(`ready`),s(`Failed to stop recording: ${n}`)}finally{f.current=null}},[v]),requestModelDownload:b,ensureReady:y,resetTranscript:(0,Z.useCallback)(()=>{h.current=``,g.current=``,a(``),s(null)},[])}}function nS(){let e=(0,Q.c)(22),t=tS(),n=Hx();if(Pr()){let n;return e[0]!==t.downloadProgress||e[1]!==t.ensureReady||e[2]!==t.error||e[3]!==t.isSupported||e[4]!==t.requestModelDownload||e[5]!==t.resetTranscript||e[6]!==t.startListening||e[7]!==t.state||e[8]!==t.stopListening||e[9]!==t.transcript?(n={state:t.state,isSupported:t.isSupported,usesLocalModel:!0,transcript:t.transcript,error:t.error,downloadProgress:t.downloadProgress,startListening:t.startListening,stopListening:t.stopListening,requestModelDownload:t.requestModelDownload,ensureReady:t.ensureReady,resetTranscript:t.resetTranscript},e[0]=t.downloadProgress,e[1]=t.ensureReady,e[2]=t.error,e[3]=t.isSupported,e[4]=t.requestModelDownload,e[5]=t.resetTranscript,e[6]=t.startListening,e[7]=t.state,e[8]=t.stopListening,e[9]=t.transcript,e[10]=n):n=e[10],n}let r;return e[11]!==n.downloadProgress||e[12]!==n.ensureReady||e[13]!==n.error||e[14]!==n.isSupported||e[15]!==n.requestModelDownload||e[16]!==n.resetTranscript||e[17]!==n.startListening||e[18]!==n.state||e[19]!==n.stopListening||e[20]!==n.transcript?(r={state:n.state,isSupported:n.isSupported,usesLocalModel:!1,transcript:n.transcript,error:n.error,downloadProgress:n.downloadProgress,startListening:n.startListening,stopListening:n.stopListening,requestModelDownload:n.requestModelDownload,ensureReady:n.ensureReady,resetTranscript:n.resetTranscript},e[11]=n.downloadProgress,e[12]=n.ensureReady,e[13]=n.error,e[14]=n.isSupported,e[15]=n.requestModelDownload,e[16]=n.resetTranscript,e[17]=n.startListening,e[18]=n.state,e[19]=n.stopListening,e[20]=n.transcript,e[21]=r):r=e[21],r}var rS=new Map;function iS(e){let t=rS.get(e);if(t)return t;let n=Ut(e);return rS.set(e,n),n}function aS({key:e,defaultValue:t,logScope:n,settingLabel:r}){let[i,a]=(0,Z.useState)(t),[o,s]=(0,Z.useState)(!0),[c,l]=(0,Z.useState)(!1);(0,Z.useEffect)(()=>{let t=!1,i=iS(n);async function o(){try{let n=await Zr();t||a(n[e])}catch(e){i.error(`Failed to load ${r} setting:`,e)}finally{t||s(!1)}}return o(),()=>{t=!0}},[e,n,r]);async function u(t){let i=iS(n);l(!0);try{a((await Jo({[e]:t}))[e])}catch(e){throw i.error(`Failed to update ${r} setting:`,e),e}finally{l(!1)}}return{isEnabled:i,isLoading:o,isSaving:c,updateIsEnabled:u}}function oS(){let e=(0,Q.c)(1),t;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t={key:`voiceAiProcessing`,defaultValue:!0,logScope:`app.use-voice-ai-processing.hook`,settingLabel:`voice AI processing`},e[0]=t):t=e[0],aS(t)}var sS=Z.forwardRef((e,t)=>{let n=(0,Q.c)(13),r,i,a;n[0]===e?(r=n[1],i=n[2],a=n[3]):({className:r,value:a,...i}=e,n[0]=e,n[1]=r,n[2]=i,n[3]=a);let o;n[4]===r?o=n[5]:(o=G(`relative h-4 w-full overflow-hidden rounded-full bg-secondary`,r),n[4]=r,n[5]=o);let s=`translateX(-${100-(a||0)}%)`,c;n[6]===s?c=n[7]:(c=(0,$.jsx)(Sr,{className:`h-full w-full flex-1 bg-primary transition-all`,style:{transform:s}}),n[6]=s,n[7]=c);let l;return n[8]!==i||n[9]!==t||n[10]!==o||n[11]!==c?(l=(0,$.jsx)(hn,{ref:t,className:o,...i,children:c}),n[8]=i,n[9]=t,n[10]=o,n[11]=c,n[12]=l):l=n[12],l});sS.displayName=hn.displayName;function cS(e,t,n){return t?`Preparing voice input…`:n<100?`Downloading voice model… ${n}%`:e?`Finishing download…`:`Downloading voice model…`}function lS(e){let t=(0,Q.c)(24),{open:n,onOpenChange:r,onRetry:i,isDownloading:a,isInitializing:o,progress:s,error:c}=e,l=a||o,u;t[0]!==l||t[1]!==r?(u=function(e){l&&!e||r(e)},t[0]=l,t[1]=r,t[2]=u):u=t[2];let d=u,f=c?`Voice model download failed`:`Setting up voice input`,p;t[3]===f?p=t[4]:(p=(0,$.jsx)(qa,{children:f}),t[3]=f,t[4]=p);let m=c?`The English voice model could not be downloaded or prepared.`:`First-time setup downloads a ~40 MB English speech model to your device.`,h;t[5]===m?h=t[6]:(h=(0,$.jsx)(_i,{children:m}),t[5]=m,t[6]=h);let g;t[7]!==p||t[8]!==h?(g=(0,$.jsxs)(Dr,{children:[p,h]}),t[7]=p,t[8]=h,t[9]=g):g=t[9];let _;t[10]!==c||t[11]!==a||t[12]!==o||t[13]!==r||t[14]!==i||t[15]!==s?(_=c?(0,$.jsxs)(`div`,{className:`space-y-4 py-2`,children:[(0,$.jsx)(mo,{variant:`error`,className:`mb-0`,children:c}),(0,$.jsxs)(Xa,{children:[(0,$.jsx)(Hr,{variant:`outline`,onClick:()=>r(!1),children:`Cancel`}),(0,$.jsx)(Hr,{onClick:i,children:`Try again`})]})]}):(0,$.jsxs)(`div`,{className:`space-y-4 py-2`,children:[(0,$.jsx)(mo,{variant:`info`,className:`mb-0`,children:`One-time download. After this finishes, voice input works offline and you will not need to download the model again.`}),(0,$.jsxs)(`div`,{className:`space-y-3`,children:[(0,$.jsx)(Ka,{title:cS(a,o,s)}),(0,$.jsx)(sS,{value:o?100:s,className:`w-full`}),(0,$.jsx)(`p`,{className:G(U.bodyMuted,`text-center`),children:o?`Loading the model into memory. This usually takes a few seconds.`:s<100?`About 40 MB — kept on this device for future use.`:`Saving the model locally…`})]})]}),t[10]=c,t[11]=a,t[12]=o,t[13]=r,t[14]=i,t[15]=s,t[16]=_):_=t[16];let v;t[17]!==g||t[18]!==_?(v=(0,$.jsxs)(Ir,{children:[g,_]}),t[17]=g,t[18]=_,t[19]=v):v=t[19];let y;return t[20]!==d||t[21]!==n||t[22]!==v?(y=(0,$.jsx)(Ni,{open:n,onOpenChange:d,children:v}),t[20]=d,t[21]=n,t[22]=v,t[23]=y):y=t[23],y}function uS({onTranscript:e,onVoiceSessionStart:t,threadId:n,provider:r,model:i,children:a}){let{state:o,isSupported:s,usesLocalModel:c,transcript:l,error:u,downloadProgress:d,startListening:f,stopListening:p,requestModelDownload:m,ensureReady:h,resetTranscript:g}=nS(),{isEnabled:_}=oS(),{toast:v}=ic(),[y,b]=(0,Z.useState)(!1),[x,S]=(0,Z.useState)(!1),C=(0,Z.useRef)(``),w=(0,Z.useRef)(null),T=(0,Z.useRef)(`idle`),E=o===`recording`,D=o===`transcribing`,O=E||D,k=o===`needs-model`,A=o===`downloading-model`,j=o===`initializing`,M=A||j,N=o===`checking-support`;(0,Z.useEffect)(()=>{u&&u!==w.current&&!y&&v({title:`Voice Input Error`,description:u,variant:`destructive`}),w.current=u},[u,y,v]),(0,Z.useEffect)(()=>{if(l&&l!==C.current){let t=l.substring(C.current.length);C.current=l,e(t)}},[l,e]),(0,Z.useEffect)(()=>{l||(C.current=``)},[l]),(0,Z.useEffect)(()=>{let t=T.current;if(T.current=o,(t===`recording`||t===`transcribing`)&&o===`ready`&&_&&C.current){let t=C.current;S(!0),qi(t,{threadId:n,provider:r,model:i}).then(t=>{e(t,{replace:!0})}).catch(()=>{e(t,{replace:!0})}).finally(()=>{S(!1)})}},[o,_,e,n,r,i]);function P(){b(!0),m()}let F=(0,Z.useCallback)(async()=>{if(O){p();return}if(k){P();return}if(o===`ready`){g(),t?.(),f();return}if(o===`idle`){let e=await h();e===`needs-model`?P():e===`ready`&&(g(),t?.(),f())}},[k,O,o,h,p,f,g,m,t]),I=(0,Z.useCallback)(()=>{m()},[m]);(0,Z.useEffect)(()=>{o===`ready`&&y&&b(!1)},[o,y]);let L=(0,Z.useCallback)(()=>N?`Checking voice input support...`:s===!1?`Voice input not supported in this browser`:u||(M?`Downloading speech model...`:x?`Processing transcription`:D?`Transcribing...`:E?`Stop listening`:k?`Click to download speech model`:`Start listening`),[u,x,N,M,E,D,s,k]),R=(0,Z.useCallback)(()=>M||D||x?(0,$.jsx)(ln,{className:`h-3 w-3 animate-spin`}):E?(0,$.jsxs)(`span`,{className:`recording-waveform`,"aria-hidden":!0,children:[(0,$.jsx)(`span`,{className:`recording-waveform-bar`,style:{animationDelay:`0ms`}}),(0,$.jsx)(`span`,{className:`recording-waveform-bar`,style:{animationDelay:`150ms`}}),(0,$.jsx)(`span`,{className:`recording-waveform-bar`,style:{animationDelay:`75ms`}}),(0,$.jsx)(`span`,{className:`recording-waveform-bar`,style:{animationDelay:`225ms`}})]}):(0,$.jsx)(at,{className:`h-3 w-3`}),[x,M,E,D]),z=L(),B=O||x?z:`Voice input`,V=a({onClick:F,disabled:N||M||D||x||s===!1,icon:R(),label:z,isRecording:E,isTranscribing:D||x,isDownloading:M,needsModel:k,isSupported:s!==!1});return(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`style`,{children:`
3306
3305
  .recording-waveform {
3307
3306
  display: flex;
3308
3307
  align-items: center;
@@ -3321,20 +3320,20 @@ self.onmessage = async function (event) {
3321
3320
  from { height: 3px; }
3322
3321
  to { height: 14px; }
3323
3322
  }
3324
- `}),(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:V}),(0,$.jsx)(Fr,{side:`top`,className:`bg-popover text-popover-foreground max-w-64`,children:B})]}),c?(0,$.jsx)(sS,{open:y,onOpenChange:b,onRetry:I,isDownloading:A,isInitializing:j,progress:d,error:y?u:null}):null]})}function lS(e){let t=(0,Q.c)(8),{queuedMessages:n,onRemoveQueuedMessage:r}=e;if(n.length===0)return null;let i;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(i=(0,$.jsx)(`div`,{className:U.dropdownGroupHeading,children:`Queued messages`}),t[0]=i):i=t[0];let a;if(t[1]!==r||t[2]!==n){let e;t[4]===r?e=t[5]:(e=e=>(0,$.jsxs)(`div`,{className:G(U.body,`flex items-start justify-between gap-3 rounded-md border border-border/60 bg-background px-3 py-2`),children:[(0,$.jsx)(`p`,{className:`flex-1 whitespace-pre-wrap text-foreground select-text line-clamp-3`,children:e.message}),(0,$.jsx)(`button`,{type:`button`,className:`rounded-full p-1 text-muted-foreground transition-colors hover:bg-foreground hover:text-background`,onClick:()=>r(e.id),"aria-label":`Remove queued message`,children:(0,$.jsx)(nt,{className:`h-3.5 w-3.5`})})]},e.id),t[4]=r,t[5]=e),a=n.map(e),t[1]=r,t[2]=n,t[3]=a}else a=t[3];let o;return t[6]===a?o=t[7]:(o=(0,$.jsxs)(mo,{className:`mb-3 border border-border/60 bg-muted/30 px-4 py-3`,children:[i,(0,$.jsx)(`div`,{className:`mt-2 flex flex-col gap-2`,children:a})]}),t[6]=a,t[7]=o),o}async function uS(e,t,n=!1){return Va(`api/threads/${ao(e)}/explorer?path=${encodeURIComponent(t)}&recursive=${n}`)}async function dS(e,t){return Va(`api/threads/${ao(e)}/ai-file?path=${encodeURIComponent(t)}`)}async function fS(e,t,n){return $o(`api/threads/${ao(e)}/ai-file`,{path:t,content:n})}async function pS(e,t){return yo(`api/threads/${ao(e)}/explorer?path=${encodeURIComponent(t)}`)}async function mS(e,t,n){return Ho(`api/threads/${ao(e)}/explorer`,{path:t,newName:n})}async function hS(e,t,n){return is(`api/threads/${ao(e)}/explorer/file`,{dirPath:t,name:n})}async function gS(e,t,n){let r=new URLSearchParams({dirPath:t,name:n.name});return fa(`api/threads/${ao(e)}/explorer/upload?${r.toString()}`,n)}async function _S(e,t){return ra(`api/threads/${ao(e)}/explorer/media?path=${encodeURIComponent(t)}`)}async function vS(e,t,n){return is(`api/threads/${ao(e)}/explorer/folder`,{dirPath:t,name:n})}async function yS(e,t){return is(`api/threads/${ao(e)}/explorer/open`,{path:t})}async function bS(e,t){return is(`api/threads/${ao(e)}/explorer/print-markdown`,{path:t})}function xS(e){return e?Array.from(e.types).includes(`Files`):!1}function SS(e){let t=Array.from(e.items??[]);if(t.length===0)return{files:Array.from(e.files),skippedFolders:0};let n=[],r=0;for(let e of t){if(e.kind!==`file`)continue;if(e.webkitGetAsEntry?.()?.isDirectory){r+=1;continue}let t=e.getAsFile();t&&n.push(t)}return{files:n,skippedFolders:r}}function CS(e){return e?`the "${e}/" folder`:`the repository root`}function wS(e){let t=e.slice(0,3).map(e=>`"${e.name}"`),n=e.length>3?` and ${e.length-3} more`:``;return`${t.join(`, `)}${n}`}async function TS(e,t,n){let r=await Promise.allSettled(n.map(n=>gS(e,t,n))),i=[],a=[];for(let e=0;e<r.length;e+=1){let t=r[e];t.status===`fulfilled`?i.push(n[e]):a.push(t.reason)}return{copied:i,failures:a}}function ES(e,t,n){if(n.length===0)return{title:t===1?`File copied`:`Files copied`,description:`Copied ${wS(e.files)} into ${CS(e.dirPath)}.`};let r=n[0];return{title:t>0?`Some files were not copied`:`Copy failed`,description:r instanceof Error?r.message:`Failed to copy the dropped file.`,variant:`destructive`}}function DS(e){let t=(0,Q.c)(30),{pendingDrop:n,dropCopying:r,onConfirm:i,onDismiss:a}=e,o=n!==null,s;t[0]!==r||t[1]!==a?(s=e=>{!e&&!r&&a()},t[0]=r,t[1]=a,t[2]=s):s=t[2];let c=n&&n.files.length>1?`files`:`file`,l;t[3]===c?l=t[4]:(l=(0,$.jsxs)(sc,{children:[`Copy `,c]}),t[3]=c,t[4]=l);let u;t[5]===n?u=t[6]:(u=n?`Copy ${wS(n.files)} into ${CS(n.dirPath)}?`:null,t[5]=n,t[6]=u);let d;t[7]===u?d=t[8]:(d=(0,$.jsx)(oc,{children:u}),t[7]=u,t[8]=d);let f;t[9]===r?f=t[10]:(f=(0,$.jsx)(dc,{disabled:r,children:`Cancel`}),t[9]=r,t[10]=f);let p;t[11]===i?p=t[12]:(p=e=>{e.preventDefault(),i()},t[11]=i,t[12]=p);let m;t[13]===r?m=t[14]:(m=r?(0,$.jsx)(ln,{className:`h-4 w-4 animate-spin`}):null,t[13]=r,t[14]=m);let h;t[15]!==r||t[16]!==p||t[17]!==m?(h=(0,$.jsxs)(lc,{disabled:r,onClick:p,children:[m,`Copy`]}),t[15]=r,t[16]=p,t[17]=m,t[18]=h):h=t[18];let g;t[19]!==h||t[20]!==f?(g=(0,$.jsxs)(`div`,{className:`flex justify-end gap-3`,children:[f,h]}),t[19]=h,t[20]=f,t[21]=g):g=t[21];let _;t[22]!==g||t[23]!==l||t[24]!==d?(_=(0,$.jsxs)(cc,{children:[l,d,g]}),t[22]=g,t[23]=l,t[24]=d,t[25]=_):_=t[25];let v;return t[26]!==o||t[27]!==_||t[28]!==s?(v=(0,$.jsx)(pc,{open:o,onOpenChange:s,children:_}),t[26]=o,t[27]=_,t[28]=s,t[29]=v):v=t[29],v}var OS=Ut(`app.use-composer-file-drop.hook`);function kS({threadId:e,mode:t,onAttachmentsAdded:n}){let{triggerExplorerRefresh:r}=vc(),[i,a]=(0,Z.useState)(null),[o,s]=(0,Z.useState)(!1),[c,l]=(0,Z.useState)(!1),u=(0,Z.useRef)(0),d=(0,Z.useCallback)(()=>{u.current=0,l(!1)},[]),f=(0,Z.useCallback)(e=>{xS(e.dataTransfer)&&(u.current+=1,l(!0))},[]),p=(0,Z.useCallback)(e=>{xS(e.dataTransfer)&&(e.preventDefault(),e.dataTransfer.dropEffect=`copy`)},[]),m=(0,Z.useCallback)(e=>{xS(e.dataTransfer)&&(u.current=Math.max(0,u.current-1),u.current===0&&l(!1))},[]),h=(0,Z.useCallback)(t=>{if(!xS(t.dataTransfer))return;if(t.preventDefault(),d(),!e){ac({title:`Select a thread first`,description:`Choose a thread before copying files into the project.`});return}let{files:n,skippedFolders:r}=SS(t.dataTransfer);r>0&&ac({title:`Folders skipped`,description:`Only files can be copied. Drop individual files instead of folders.`}),n.length!==0&&a({files:n,dirPath:``})},[d,e]),g=(0,Z.useCallback)(async()=>{if(!(!i||!e||o)){s(!0);try{let{copied:a,failures:o}=await TS(e,i.dirPath,i.files);if(a.length>0&&r(),ac(ES(i,a.length,o)),t===`attach`&&a.length>0&&n)try{n(await Ib(a))}catch(e){OS.error(`Failed to read dropped files as attachments`,{error:e}),ac({title:`Files copied but not attached`,description:`The files are in the project, but could not be added to the composer.`,variant:`destructive`})}}finally{s(!1),a(null)}}},[o,t,n,i,e,r]);return{isFileDragOver:c,dropTargetProps:{onDragEnter:f,onDragOver:p,onDragLeave:m,onDrop:h},dragOverSurfaceClassName:G(c&&`ring-2 ring-primary/40 ring-offset-0 border-primary/50`),confirmDialog:(0,$.jsx)(DS,{pendingDrop:i,dropCopying:o,onConfirm:()=>{g()},onDismiss:()=>{a(null)}})}}var AS=Ut(`app.chat-input.ui`);function jS({isStreaming:e,isVoiceActive:t,disabled:n,isRouting:r,canSubmitMessage:i,speechDisabled:a,hasMessageText:o,attachmentsLength:s,effectiveModel:c}){return!e&&!t&&((n??!1)||r||!i&&a||!o&&s>0&&!c||o&&!c)}function MS({isStreaming:e,isVoiceActive:t,label:n,canSubmitMessage:r}){return e?`Stop generation`:t?n:r?`Send message`:n}function NS(e){let t=(0,Q.c)(42),{onSpeechClick:n,speechDisabled:r,icon:i,label:a,isRecording:o,isTranscribing:s,isDownloading:c,isSupported:l,hasMessageText:u,setIsVoiceActive:d,isStreaming:f,disabled:p,canSubmitMessage:m,attachmentsLength:h,effectiveModel:g,onStop:_,onSend:v,isRouting:y}=e,b=y===void 0?!1:y,x=o||s||c,S,C;t[0]!==x||t[1]!==d?(S=()=>{d(x)},C=[x,d],t[0]=x,t[1]=d,t[2]=S,t[3]=C):(S=t[2],C=t[3]),(0,Z.useEffect)(S,C);let w;t[4]!==h||t[5]!==m||t[6]!==p||t[7]!==g||t[8]!==u||t[9]!==b||t[10]!==f||t[11]!==x||t[12]!==r?(w=jS({isStreaming:f,isVoiceActive:x,disabled:p,isRouting:b,canSubmitMessage:m,speechDisabled:r,hasMessageText:u,attachmentsLength:h,effectiveModel:g}),t[4]=h,t[5]=m,t[6]=p,t[7]=g,t[8]=u,t[9]=b,t[10]=f,t[11]=x,t[12]=r,t[13]=w):w=t[13];let T=w,E;t[14]!==m||t[15]!==f||t[16]!==x||t[17]!==v||t[18]!==n||t[19]!==_?(E=function(){if(f){_?.();return}if(x){n();return}if(m){v();return}n()},t[14]=m,t[15]=f,t[16]=x,t[17]=v,t[18]=n,t[19]=_,t[20]=E):E=t[20];let D=E,O;t[21]!==m||t[22]!==f||t[23]!==x||t[24]!==a?(O=MS({isStreaming:f,isVoiceActive:x,label:a,canSubmitMessage:m}),t[21]=m,t[22]=f,t[23]=x,t[24]=a,t[25]=O):O=t[25];let k=O,A=`relative h-7 w-7 rounded-full ${o?`bg-primary text-primary-foreground hover:bg-primary/90`:``} ${f?`before:absolute before:inset-[-1px] before:rounded-full before:border before:border-primary/60 before:animate-ping-subtle before:content-['']`:``}`,j;t[26]!==m||t[27]!==i||t[28]!==f||t[29]!==x?(j=f?(0,$.jsx)(`span`,{className:`block h-3 w-3 shrink-0 rounded-[2px] bg-current`,"aria-hidden":`true`}):x||!m?i:(0,$.jsx)(V,{className:`h-3 w-3`}),t[26]=m,t[27]=i,t[28]=f,t[29]=x,t[30]=j):j=t[30];let M;t[31]===k?M=t[32]:(M=(0,$.jsx)(`span`,{className:`sr-only`,children:k}),t[31]=k,t[32]=M);let N;t[33]===l?N=t[34]:(N=!l&&(0,$.jsx)(`span`,{className:`sr-only`,children:`Voice input not supported`}),t[33]=l,t[34]=N);let P;return t[35]!==D||t[36]!==T||t[37]!==N||t[38]!==A||t[39]!==j||t[40]!==M?(P=(0,$.jsxs)(Hr,{size:`icon`,className:A,onClick:D,disabled:T,children:[j,M,N]}),t[35]=D,t[36]=T,t[37]=N,t[38]=A,t[39]=j,t[40]=M,t[41]=P):P=t[41],P}function PS({ralphMode:e,effectivePlanMode:t,imageMode:n,isVoiceActive:r}){return e?`Describe stories for Ralph to implement autonomously...`:t?`Describe what you want Tarsk to plan...`:n?`Describe the image you want to generate...`:r?`Dictate your message...`:`Ask Tarsk anything, @ for files, / for commands & skills`}function FS(e,t,n,r){return r?t+n:(e===``||e.endsWith(` `),e+n)}function IS(e,t){if(!e)return!1;let n=Array.from(e).filter(e=>e.type.startsWith(`image/`));if(n.length===0)return!1;for(let e of n){let n=e.getAsFile();if(!n)continue;let r=new FileReader;r.onload=()=>{let e=r.result.split(`,`)[1];t({fileName:n.name||`pasted-image.${n.type.split(`/`)[1]||`png`}`,content:e,mimeType:n.type})},r.readAsDataURL(n)}return!0}function LS(e,t){return e.find(e=>e.id===t.model.id&&e.provider===t.model.provider)??null}function RS(e,t,n){let r=LS(e,t);return r&&(r.id!==n?.id||r.provider!==n?.provider)?r:null}function zS(e){let t=(0,Q.c)(29),{storeSelectedThreadId:n,imageMode:r,selectedImageModel:i,selectedModel:a,availableImageModels:o,availableModels:s,autoMode:c,message:l}=e,u=Yn(),{paneId:d,conversationId:f,setFocused:p,fillPane:m}=Sv(),h;t[0]!==d||t[1]!==n?(h=e=>As(e.threadStreamingStates,n,d).contextUsage,t[0]=d,t[1]=n,t[2]=h):h=t[2];let g=X(h),_;t[3]===d?_=t[4]:(_=e=>ys(e,d),t[3]=d,t[4]=_);let v=X(_),y=X(HS),b;t[5]===y?b=t[6]:(b=e=>{if(y)return e.projects.find(e=>e.projectId===y)?.modelAliases},t[5]=y,t[6]=b);let x=X(b),S;t[7]===v?S=t[8]:(S=v.some(VS),t[7]=v,t[8]=S);let C=S,w;t[9]===v?w=t[10]:(w=v.some(BS),t[9]=v,t[10]=w);let T=!w,E=r?i:a,D=r?o:s,O=c&&!r&&T,k;t[11]===l?k=t[12]:(k=l.trim(),t[11]=l,t[12]=k);let A=k.length>0,j;return t[13]!==f||t[14]!==D||t[15]!==E||t[16]!==m||t[17]!==C||t[18]!==A||t[19]!==O||t[20]!==T||t[21]!==g||t[22]!==v||t[23]!==x||t[24]!==u||t[25]!==d||t[26]!==y||t[27]!==p?(j={navigate:u,paneId:d,conversationId:f,setFocused:p,fillPane:m,liveContextUsage:g,messages:v,selectedProjectId:y,modelAliases:x,hasConversationMessages:C,isFirstUserPrompt:T,effectiveModel:E,effectiveAvailableModels:D,hideModelSelector:O,hasMessageText:A},t[13]=f,t[14]=D,t[15]=E,t[16]=m,t[17]=C,t[18]=A,t[19]=O,t[20]=T,t[21]=g,t[22]=v,t[23]=x,t[24]=u,t[25]=d,t[26]=y,t[27]=p,t[28]=j):j=t[28],j}function BS(e){return e.sender===`user`}function VS(e){return e.sender===`agent`}function HS(e){return e.selectedProjectId}function US(e){let t=(0,Q.c)(8),{storeSelectedThreadId:n,availableModels:r,selectedModel:i,setSelectedModel:a}=e,[o,s]=(0,Z.useState)(null),c=o&&o.threadId===n?o.resolution:null,l;t[0]!==r||t[1]!==i||t[2]!==a||t[3]!==n?(l=e=>{s({threadId:n,resolution:e});let t=RS(r,e,i);t&&a(t)},t[0]=r,t[1]=i,t[2]=a,t[3]=n,t[4]=l):l=t[4];let u=l,d;return t[5]!==c||t[6]!==u?(d={autoRoute:c,handleAutoRouteResolved:u},t[5]=c,t[6]=u,t[7]=d):d=t[7],d}function WS(e){let t=(0,Q.c)(10),{setMessage:n,setAttachments:r}=e,i=Z.useRef(``),a;t[0]===n?a=t[1]:(a=()=>{n(e=>(i.current=e,e))},t[0]=n,t[1]=a);let o=a,s;t[2]===n?s=t[3]:(s=(e,t)=>{n(n=>FS(n,i.current,e,t?.replace))},t[2]=n,t[3]=s);let c=s,l;t[4]===r?l=t[5]:(l=e=>{IS(e.clipboardData?.items,e=>{r(t=>[...t,e])})&&e.preventDefault()},t[4]=r,t[5]=l);let u=l,d;return t[6]!==u||t[7]!==c||t[8]!==o?(d={handleVoiceSessionStart:o,handleSpeechTranscript:c,handlePaste:u},t[6]=u,t[7]=c,t[8]=o,t[9]=d):d=t[9],d}function GS(e){let t=(0,Q.c)(13),{textareaRef:n,autoFocus:r,value:i,onChange:a,onKeyDown:o,onPaste:s,onFocus:c,placeholder:l,isSingleLine:u,disabled:d}=e,f=u?`order-2 flex-1 overflow-hidden py-1.5`:`order-1 min-h-[4.5rem] w-full pt-4 pb-2`,p;t[0]===f?p=t[1]:(p=G(U.body,`min-w-0 resize-none bg-transparent px-3 text-foreground placeholder:text-muted-foreground focus:outline-none`,f),t[0]=f,t[1]=p);let m;return t[2]!==r||t[3]!==d||t[4]!==a||t[5]!==c||t[6]!==o||t[7]!==s||t[8]!==l||t[9]!==p||t[10]!==n||t[11]!==i?(m=(0,$.jsx)(`textarea`,{ref:n,autoFocus:r,value:i,onChange:a,onKeyDown:o,onPaste:s,onFocus:c,placeholder:l,rows:1,className:p,disabled:d}),t[2]=r,t[3]=d,t[4]=a,t[5]=c,t[6]=o,t[7]=s,t[8]=l,t[9]=p,t[10]=n,t[11]=i,t[12]=m):m=t[12],m}function KS(e){let t=(0,Q.c)(11),{attachments:n,selectedModel:r,onRemove:i}=e,a;t[0]!==n||t[1]!==i?(a=(0,$.jsx)(pb,{attachments:n,onRemove:i}),t[0]=n,t[1]=i,t[2]=a):a=t[2];let o;t[3]!==n||t[4]!==r?.id||t[5]!==r?.name||t[6]!==r?.supportsImages?(o=n.some(qS)&&r?.supportsImages===!1&&(0,$.jsxs)(`div`,{className:G(U.compact,`mb-2 flex items-center gap-1.5 text-amber-500`),children:[(0,$.jsx)(an,{className:`h-3 w-3 shrink-0`}),(0,$.jsxs)(`span`,{children:[`Images are not supported by `,r?.name||r?.id]})]}),t[3]=n,t[4]=r?.id,t[5]=r?.name,t[6]=r?.supportsImages,t[7]=o):o=t[7];let s;return t[8]!==a||t[9]!==o?(s=(0,$.jsxs)(`div`,{className:`order-2 w-full px-1`,children:[a,o]}),t[8]=a,t[9]=o,t[10]=s):s=t[10],s}function qS(e){return e.mimeType.startsWith(`image/`)}function JS(e){let t=(0,Q.c)(36),{disabled:n,isRouting:r,canAddTask:i,isSingleLine:a,planMode:o,imageMode:s,ralphMode:c,orchestrateMode:l,autoMode:u,setPlanMode:d,setImageMode:f,setRalphMode:p,setOrchestrateMode:m,setAutoMode:h,lastAutoRouteDecision:g,projectId:_,skills:v,slashCommands:y,onSelectSkill:b,onSelectSlashCommand:x,onFileAttach:S,message:C,selectedThreadId:w,paneId:T,dispatch:E,textareaRef:D,onUserTaskCreated:O,setMessage:k,setAttachments:A}=e,j;t[0]!==E||t[1]!==C||t[2]!==O||t[3]!==T||t[4]!==_||t[5]!==w||t[6]!==A||t[7]!==k||t[8]!==D?(j=function(){if(!_||!w)return;let e=C.trim();e&&aa(_,e).then(e=>{O?.(e),k(``),A([]),E({type:Y.ClearChatInputDraft,threadId:T===`primary`?w:`${w}:${T}`}),D.current&&(D.current.style.height=`auto`)}).catch(YS)},t[0]=E,t[1]=C,t[2]=O,t[3]=T,t[4]=_,t[5]=w,t[6]=A,t[7]=k,t[8]=D,t[9]=j):j=t[9];let M=j,N=a?`order-1`:`order-3`,P;t[10]===N?P=t[11]:(P=G(`flex items-center`,N),t[10]=N,t[11]=P);let F=n||r,I=g??null,L;t[12]!==u||t[13]!==i||t[14]!==M||t[15]!==s||t[16]!==S||t[17]!==b||t[18]!==x||t[19]!==l||t[20]!==o||t[21]!==_||t[22]!==c||t[23]!==h||t[24]!==f||t[25]!==m||t[26]!==d||t[27]!==p||t[28]!==v||t[29]!==y||t[30]!==F||t[31]!==I?(L=(0,$.jsx)(Dx,{disabled:F,canAddTask:i,planMode:o,imageMode:s,ralphMode:c,orchestrateMode:l,autoMode:u,setPlanMode:d,setImageMode:f,setRalphMode:p,setOrchestrateMode:m,setAutoMode:h,lastAutoRouteDecision:I,projectId:_,skills:v,onSelectSkill:b,slashCommands:y,onSelectSlashCommand:x,onFileAttach:S,onAddTask:M}),t[12]=u,t[13]=i,t[14]=M,t[15]=s,t[16]=S,t[17]=b,t[18]=x,t[19]=l,t[20]=o,t[21]=_,t[22]=c,t[23]=h,t[24]=f,t[25]=m,t[26]=d,t[27]=p,t[28]=v,t[29]=y,t[30]=F,t[31]=I,t[32]=L):L=t[32];let R;return t[33]!==P||t[34]!==L?(R=(0,$.jsx)(`div`,{className:P,children:L}),t[33]=P,t[34]=L,t[35]=R):R=t[35],R}function YS(e){AS.error(`Failed to create user task:`,e)}function XS(e){let t=(0,Q.c)(37),{isSingleLine:n,hideModelSelector:r,availableModels:i,selectedModel:a,onModelSelect:o,onReasoningEffortChange:s,threadId:c,conversationId:l,messages:u,isStreaming:d,liveContextUsage:f,onSpeechTranscript:p,onVoiceSessionStart:m,speechProvider:h,speechModel:g,hasMessageText:_,setIsVoiceActive:v,disabled:y,canSubmitMessage:b,attachmentsLength:x,effectiveModel:S,onStop:C,onSend:w,isRouting:T}=e,E=n?`order-3`:`order-4`,D;t[0]===E?D=t[1]:(D=G(`flex items-center gap-1`,E),t[0]=E,t[1]=D);let O;t[2]!==i||t[3]!==r||t[4]!==o||t[5]!==s||t[6]!==a?(O=!r&&(0,$.jsx)(Qb,{availableModels:i,selectedModel:a,onModelSelect:o,onReasoningEffortChange:s}),t[2]=i,t[3]=r,t[4]=o,t[5]=s,t[6]=a,t[7]=O):O=t[7];let k=d?f:void 0,A;t[8]!==l||t[9]!==d||t[10]!==u||t[11]!==k||t[12]!==c?(A=(0,$.jsx)(Pb,{threadId:c,conversationId:l,messages:u,isStreaming:d,liveContextUsage:k}),t[8]=l,t[9]=d,t[10]=u,t[11]=k,t[12]=c,t[13]=A):A=t[13];let j;t[14]!==x||t[15]!==b||t[16]!==y||t[17]!==S||t[18]!==_||t[19]!==T||t[20]!==d||t[21]!==w||t[22]!==C||t[23]!==v?(j=e=>{let{onClick:t,disabled:n,icon:r,label:i,isRecording:a,isTranscribing:o,isDownloading:s,isSupported:c}=e;return(0,$.jsx)(NS,{onSpeechClick:t,speechDisabled:n,icon:r,label:i,isRecording:a,isTranscribing:o,isDownloading:s,isSupported:c,hasMessageText:_,setIsVoiceActive:v,isStreaming:d,disabled:y,canSubmitMessage:b,attachmentsLength:x,effectiveModel:S,onStop:C,onSend:w,isRouting:T})},t[14]=x,t[15]=b,t[16]=y,t[17]=S,t[18]=_,t[19]=T,t[20]=d,t[21]=w,t[22]=C,t[23]=v,t[24]=j):j=t[24];let M;t[25]!==p||t[26]!==m||t[27]!==g||t[28]!==h||t[29]!==j||t[30]!==c?(M=(0,$.jsx)(cS,{onTranscript:p,onVoiceSessionStart:m,threadId:c,provider:h,model:g,children:j}),t[25]=p,t[26]=m,t[27]=g,t[28]=h,t[29]=j,t[30]=c,t[31]=M):M=t[31];let N;return t[32]!==D||t[33]!==O||t[34]!==A||t[35]!==M?(N=(0,$.jsxs)(`div`,{className:D,children:[O,A,M]}),t[32]=D,t[33]=O,t[34]=A,t[35]=M,t[36]=N):N=t[36],N}function ZS(e){let t=(0,Q.c)(125),{fillPane:n,isOverlay:r,centered:i,embedded:a,elevated:o,queuedMessages:s,onRemoveQueuedMessage:c,dragOverSurfaceClassName:l,dropTargetProps:u,composerRowRef:d,isSingleLine:f,textareaRef:p,autoFocus:m,message:h,onTextareaChange:g,onKeyDown:_,onPaste:v,onFocus:y,placeholder:b,disabled:x,attachments:S,onRemoveAttachment:C,selectedModel:w,isRouting:T,canAddTask:E,planMode:D,imageMode:O,ralphMode:k,orchestrateMode:A,autoMode:j,setPlanMode:M,setImageMode:N,setRalphMode:P,setOrchestrateMode:F,setAutoMode:I,lastAutoRouteDecision:L,projectId:R,skills:z,slashCommands:B,onSelectSkill:V,onSelectSlashCommand:H,onFileAttach:ee,selectedThreadId:te,paneId:ne,dispatch:re,onUserTaskCreated:ie,setMessage:ae,setAttachments:oe,hideModelSelector:se,availableModels:U,effectiveModel:ce,onModelSelect:le,onReasoningEffortChange:ue,threadId:W,conversationId:de,messages:fe,isStreaming:pe,liveContextUsage:me,onSpeechTranscript:he,onVoiceSessionStart:ge,speechProvider:_e,speechModel:ve,hasMessageText:ye,setIsVoiceActive:be,onStop:xe,onSend:Se,showCommandSuggestions:Ce,suggestions:we,skillReferencePrefix:Te,commandQuery:Ee,selectedIndex:De,onSelectCommand:Oe,onSuggestionSkill:ke,onMouseEnterSuggestion:Ae,commandSuggestionsRef:je,showSuggestions:Me,fileSuggestions:Ne,suggestionQuery:Pe,onSelectFile:Fe,suggestionsRef:Ie,fileInputRef:Le,onFileInputChange:Re,orchestrateCheapAliasDialog:ze,confirmDialog:Be}=e,Ve;t[0]!==i||t[1]!==a||t[2]!==n||t[3]!==r?(Ve=py(n,r,i,a),t[0]=i,t[1]=a,t[2]=n,t[3]=r,t[4]=Ve):Ve=t[4];let He;t[5]!==l||t[6]!==o||t[7]!==a||t[8]!==r?(He=G(my(a,r,o),l),t[5]=l,t[6]=o,t[7]=a,t[8]=r,t[9]=He):He=t[9];let Ue;t[10]!==c||t[11]!==s?(Ue=(0,$.jsx)(lS,{queuedMessages:s,onRemoveQueuedMessage:c}),t[10]=c,t[11]=s,t[12]=Ue):Ue=t[12];let We=f?`py-2`:`gap-y-1 pb-2`,Ge;t[13]===We?Ge=t[14]:(Ge=G(`flex min-w-0 flex-wrap items-center justify-between gap-x-1 px-3`,We),t[13]=We,t[14]=Ge);let Ke;t[15]!==m||t[16]!==x||t[17]!==f||t[18]!==h||t[19]!==y||t[20]!==_||t[21]!==v||t[22]!==g||t[23]!==b||t[24]!==p?(Ke=(0,$.jsx)(GS,{textareaRef:p,autoFocus:m,value:h,onChange:g,onKeyDown:_,onPaste:v,onFocus:y,placeholder:b,isSingleLine:f,disabled:x}),t[15]=m,t[16]=x,t[17]=f,t[18]=h,t[19]=y,t[20]=_,t[21]=v,t[22]=g,t[23]=b,t[24]=p,t[25]=Ke):Ke=t[25];let qe;t[26]!==S||t[27]!==C||t[28]!==w?(qe=S.length>0&&(0,$.jsx)(KS,{attachments:S,selectedModel:w,onRemove:C}),t[26]=S,t[27]=C,t[28]=w,t[29]=qe):qe=t[29];let Je;t[30]!==j||t[31]!==E||t[32]!==x||t[33]!==re||t[34]!==O||t[35]!==T||t[36]!==f||t[37]!==L||t[38]!==h||t[39]!==ee||t[40]!==V||t[41]!==H||t[42]!==ie||t[43]!==A||t[44]!==ne||t[45]!==D||t[46]!==R||t[47]!==k||t[48]!==te||t[49]!==oe||t[50]!==I||t[51]!==N||t[52]!==ae||t[53]!==F||t[54]!==M||t[55]!==P||t[56]!==z||t[57]!==B||t[58]!==p?(Je=(0,$.jsx)(JS,{disabled:x,isRouting:T,canAddTask:E,isSingleLine:f,planMode:D,imageMode:O,ralphMode:k,orchestrateMode:A,autoMode:j,setPlanMode:M,setImageMode:N,setRalphMode:P,setOrchestrateMode:F,setAutoMode:I,lastAutoRouteDecision:L,projectId:R,skills:z,slashCommands:B,onSelectSkill:V,onSelectSlashCommand:H,onFileAttach:ee,message:h,selectedThreadId:te,paneId:ne,dispatch:re,textareaRef:p,onUserTaskCreated:ie,setMessage:ae,setAttachments:oe}),t[30]=j,t[31]=E,t[32]=x,t[33]=re,t[34]=O,t[35]=T,t[36]=f,t[37]=L,t[38]=h,t[39]=ee,t[40]=V,t[41]=H,t[42]=ie,t[43]=A,t[44]=ne,t[45]=D,t[46]=R,t[47]=k,t[48]=te,t[49]=oe,t[50]=I,t[51]=N,t[52]=ae,t[53]=F,t[54]=M,t[55]=P,t[56]=z,t[57]=B,t[58]=p,t[59]=Je):Je=t[59];let Ye=E||S.length>0,Xe;t[60]!==S.length||t[61]!==U||t[62]!==de||t[63]!==x||t[64]!==ce||t[65]!==ye||t[66]!==se||t[67]!==T||t[68]!==f||t[69]!==pe||t[70]!==me||t[71]!==fe||t[72]!==le||t[73]!==ue||t[74]!==Se||t[75]!==he||t[76]!==xe||t[77]!==ge||t[78]!==be||t[79]!==ve||t[80]!==_e||t[81]!==Ye||t[82]!==W?(Xe=(0,$.jsx)(XS,{isSingleLine:f,hideModelSelector:se,availableModels:U,selectedModel:ce,onModelSelect:le,onReasoningEffortChange:ue,threadId:W,conversationId:de,messages:fe,isStreaming:pe,liveContextUsage:me,onSpeechTranscript:he,onVoiceSessionStart:ge,speechProvider:_e,speechModel:ve,hasMessageText:ye,setIsVoiceActive:be,disabled:x,canSubmitMessage:Ye,attachmentsLength:S.length,effectiveModel:ce,onStop:xe,onSend:Se,isRouting:T}),t[60]=S.length,t[61]=U,t[62]=de,t[63]=x,t[64]=ce,t[65]=ye,t[66]=se,t[67]=T,t[68]=f,t[69]=pe,t[70]=me,t[71]=fe,t[72]=le,t[73]=ue,t[74]=Se,t[75]=he,t[76]=xe,t[77]=ge,t[78]=be,t[79]=ve,t[80]=_e,t[81]=Ye,t[82]=W,t[83]=Xe):Xe=t[83];let Ze;t[84]!==d||t[85]!==Ge||t[86]!==Ke||t[87]!==qe||t[88]!==Je||t[89]!==Xe?(Ze=(0,$.jsxs)(`div`,{ref:d,className:Ge,children:[Ke,qe,Je,Xe]}),t[84]=d,t[85]=Ge,t[86]=Ke,t[87]=qe,t[88]=Je,t[89]=Xe,t[90]=Ze):Ze=t[90];let Qe;t[91]!==Ee||t[92]!==je||t[93]!==Ae||t[94]!==Oe||t[95]!==ke||t[96]!==De||t[97]!==Ce||t[98]!==Te||t[99]!==we?(Qe=(0,$.jsx)(lb,{visible:Ce,suggestions:we,skillReferencePrefix:Te,query:Ee,selectedIndex:De,onSelectCommand:Oe,onSelectSkill:ke,onMouseEnterSuggestion:Ae,containerRef:je}),t[91]=Ee,t[92]=je,t[93]=Ae,t[94]=Oe,t[95]=ke,t[96]=De,t[97]=Ce,t[98]=Te,t[99]=we,t[100]=Qe):Qe=t[100];let $e;t[101]!==Ne||t[102]!==Ae||t[103]!==Fe||t[104]!==De||t[105]!==Me||t[106]!==Pe||t[107]!==Ie?($e=(0,$.jsx)(Bb,{showSuggestions:Me,fileSuggestions:Ne,suggestionQuery:Pe,selectedIndex:De,onSelectFile:Fe,onMouseEnterSuggestion:Ae,containerRef:Ie}),t[101]=Ne,t[102]=Ae,t[103]=Fe,t[104]=De,t[105]=Me,t[106]=Pe,t[107]=Ie,t[108]=$e):$e=t[108];let et;t[109]!==u||t[110]!==He||t[111]!==Ze||t[112]!==Qe||t[113]!==$e||t[114]!==Ue?(et=(0,$.jsx)(`div`,{className:`relative flex min-w-0 items-center gap-1`,children:(0,$.jsxs)(`div`,{"data-composer-surface":!0,className:He,...u,children:[Ue,Ze,Qe,$e]})}),t[109]=u,t[110]=He,t[111]=Ze,t[112]=Qe,t[113]=$e,t[114]=Ue,t[115]=et):et=t[115];let tt;t[116]!==Le||t[117]!==Re?(tt=(0,$.jsx)(`input`,{ref:Le,type:`file`,multiple:!0,className:`hidden`,onChange:Re}),t[116]=Le,t[117]=Re,t[118]=tt):tt=t[118];let nt;return t[119]!==Be||t[120]!==ze||t[121]!==Ve||t[122]!==et||t[123]!==tt?(nt=(0,$.jsxs)(`div`,{className:Ve,children:[et,tt,ze,Be]}),t[119]=Be,t[120]=ze,t[121]=Ve,t[122]=et,t[123]=tt,t[124]=nt):nt=t[124],nt}function QS(e){let t=(0,Q.c)(190),{planMode:n,setPlanMode:r,onSend:i,onStop:a,isStreaming:o,disabled:s,initialValue:c,queuedMessages:l,onRemoveQueuedMessage:u,isOverlay:d,placeholder:f,userTasks:p,onMatchedUserTaskSend:m,onUserTaskCreated:h,autoFocus:g,centered:_,embedded:v,elevated:y}=e,b=o===void 0?!1:o,x=d===void 0?!1:d,S;t[0]===p?S=t[1]:(S=p===void 0?[]:p,t[0]=p,t[1]=S);let C=S,w=g===void 0?!1:g,T=_===void 0?!1:_,E=v===void 0?!1:v,D=y===void 0?!0:y,O;t[2]===c?O=t[3]:(O={initialValue:c},t[2]=c,t[3]=O);let{message:k,setMessage:A,historyIndex:j,setHistoryIndex:M,draftMessage:N,setDraftMessage:P,cursorPosition:F,setCursorPosition:I,availableModels:L,selectedModel:R,setSelectedModel:z,updateModelReasoningEffort:B,attachments:V,setAttachments:H,planMode:ee,setPlanMode:te,ralphMode:ne,setRalphMode:re,orchestrateMode:ie,setOrchestrateMode:ae,autoMode:oe,setAutoMode:se,imageMode:U,setImageMode:ce,availableImageModels:le,selectedImageModel:ue,setSelectedImageModel:W,allFiles:de,setAllFiles:fe,showSuggestions:pe,setShowSuggestions:me,suggestionQuery:he,setSuggestionQuery:ge,selectedIndex:_e,setSelectedIndex:ve,slashCommands:ye,skills:be,bundledSkills:xe,bundledSkillMode:Se,setBundledSkillMode:Ce,showCommandSuggestions:we,setShowCommandSuggestions:Te,commandQuery:Ee,setCommandQuery:De,fileInputRef:Oe,messageRef:ke,textareaRef:Ae,suggestionsRef:je,commandSuggestionsRef:Me,selectedThreadId:Ne,dispatch:Pe}=Ky(O),Fe;t[4]!==oe||t[5]!==le||t[6]!==L||t[7]!==U||t[8]!==k||t[9]!==ue||t[10]!==R||t[11]!==Ne?(Fe={storeSelectedThreadId:Ne,imageMode:U,selectedImageModel:ue,selectedModel:R,availableImageModels:le,availableModels:L,autoMode:oe,message:k},t[4]=oe,t[5]=le,t[6]=L,t[7]=U,t[8]=k,t[9]=ue,t[10]=R,t[11]=Ne,t[12]=Fe):Fe=t[12];let{navigate:Ie,paneId:Le,conversationId:Re,setFocused:ze,fillPane:Be,liveContextUsage:Ve,messages:He,selectedProjectId:Ue,modelAliases:We,hasConversationMessages:Ge,isFirstUserPrompt:Ke,effectiveModel:qe,effectiveAvailableModels:Je,hideModelSelector:Ye,hasMessageText:Xe}=zS(Fe),Ze;t[13]!==L||t[14]!==R||t[15]!==z||t[16]!==Ne?(Ze={storeSelectedThreadId:Ne,availableModels:L,selectedModel:R,setSelectedModel:z},t[13]=L,t[14]=R,t[15]=z,t[16]=Ne,t[17]=Ze):Ze=t[17];let{autoRoute:Qe,handleAutoRouteResolved:$e}=US(Ze),[et,tt]=Z.useState(!1),nt=Z.useRef(null),rt=V.length>0,it;t[18]!==k||t[19]!==rt||t[20]!==Ae?(it={message:k,forceMultiline:rt,textareaRef:Ae,rowRef:nt},t[18]=k,t[19]=rt,t[20]=Ae,t[21]=it):it=t[21];let at=cb(it),ot=n??ee,st=r??te,ct=Qe?.decision??null,lt;t[22]!==oe||t[23]!==ot||t[24]!==st||t[25]!==U||t[26]!==Ie||t[27]!==ie||t[28]!==ne||t[29]!==Ue||t[30]!==se||t[31]!==ce||t[32]!==ae||t[33]!==re||t[34]!==ct?(lt={planMode:ot,imageMode:U,ralphMode:ne,orchestrateMode:ie,autoMode:oe,setPlanMode:st,setImageMode:ce,setRalphMode:re,setOrchestrateMode:ae,setAutoMode:se,lastAutoRouteDecision:ct,projectId:Ue,onOpenProjectSettings(e){Ie(`/settings/project/${e}/model-aliases`)}},t[22]=oe,t[23]=ot,t[24]=st,t[25]=U,t[26]=Ie,t[27]=ie,t[28]=ne,t[29]=Ue,t[30]=se,t[31]=ce,t[32]=ae,t[33]=re,t[34]=ct,t[35]=lt):lt=t[35];let{ensureCanOrchestrate:ut,requestOrchestrateMode:dt,cheapAliasDialog:G}=fx(lt),ft=Ne??void 0,pt;t[36]!==de||t[37]!==V||t[38]!==oe||t[39]!==Se||t[40]!==xe||t[41]!==Ee||t[42]!==F||t[43]!==Pe||t[44]!==N||t[45]!==ot||t[46]!==st||t[47]!==ut||t[48]!==$e||t[49]!==Ge||t[50]!==j||t[51]!==U||t[52]!==Ke||t[53]!==b||t[54]!==k||t[55]!==ke||t[56]!==We||t[57]!==m||t[58]!==i||t[59]!==ie||t[60]!==ne||t[61]!==dt||t[62]!==ue||t[63]!==_e||t[64]!==R||t[65]!==fe||t[66]!==H||t[67]!==se||t[68]!==Ce||t[69]!==De||t[70]!==I||t[71]!==P||t[72]!==M||t[73]!==ce||t[74]!==A||t[75]!==ae||t[76]!==re||t[77]!==ve||t[78]!==Te||t[79]!==me||t[80]!==ge||t[81]!==we||t[82]!==pe||t[83]!==be||t[84]!==ye||t[85]!==he||t[86]!==ft||t[87]!==Ae||t[88]!==C?(pt={message:k,setMessage:A,userTasks:C,onMatchedUserTaskSend:m,attachments:V,selectedModel:R,onSend:i,isStreaming:b,selectedThreadId:ft,isListening:!1,stopListening:eC,resetTranscript:$S,dispatch:Pe,historyIndex:j,setHistoryIndex:M,draftMessage:N,setDraftMessage:P,cursorPosition:F,setCursorPosition:I,showSuggestions:pe,setShowSuggestions:me,suggestionQuery:he,setSuggestionQuery:ge,allFiles:de,setAllFiles:fe,selectedIndex:_e,setSelectedIndex:ve,showCommandSuggestions:we,setShowCommandSuggestions:Te,commandQuery:Ee,setCommandQuery:De,slashCommands:ye,skills:be,bundledSkills:xe,bundledSkillMode:Se,setBundledSkillMode:Ce,messageRef:ke,textareaRef:Ae,setAttachments:H,planMode:ot,setPlanMode:st,ralphMode:ne,setRalphMode:re,orchestrateMode:ie,setOrchestrateMode:ae,autoMode:oe,setAutoMode:se,modelAliases:We,onAutoRouteResolved:$e,ensureCanOrchestrate:ut,requestOrchestrateMode:dt,imageMode:U,setImageMode:ce,selectedImageModel:ue,hasConversationMessages:Ge,isFirstUserPrompt:Ke},t[36]=de,t[37]=V,t[38]=oe,t[39]=Se,t[40]=xe,t[41]=Ee,t[42]=F,t[43]=Pe,t[44]=N,t[45]=ot,t[46]=st,t[47]=ut,t[48]=$e,t[49]=Ge,t[50]=j,t[51]=U,t[52]=Ke,t[53]=b,t[54]=k,t[55]=ke,t[56]=We,t[57]=m,t[58]=i,t[59]=ie,t[60]=ne,t[61]=dt,t[62]=ue,t[63]=_e,t[64]=R,t[65]=fe,t[66]=H,t[67]=se,t[68]=Ce,t[69]=De,t[70]=I,t[71]=P,t[72]=M,t[73]=ce,t[74]=A,t[75]=ae,t[76]=re,t[77]=ve,t[78]=Te,t[79]=me,t[80]=ge,t[81]=we,t[82]=pe,t[83]=be,t[84]=ye,t[85]=he,t[86]=ft,t[87]=Ae,t[88]=C,t[89]=pt):pt=t[89];let{handleSend:mt,handleKeyDown:ht,handleTextareaInput:gt,insertFileReference:_t,insertCommand:vt,insertSkill:yt,insertSkillAtCursor:bt,insertSlashCommandAtCursor:xt,allSuggestions:St,fileSuggestions:Ct,isRouting:wt}=ib(pt),Tt;t[90]!==H||t[91]!==Ne?(Tt={threadId:Ne,mode:`attach`,onAttachmentsAdded(e){H(t=>[...t,...e])}},t[90]=H,t[91]=Ne,t[92]=Tt):Tt=t[92];let{dropTargetProps:Et,dragOverSurfaceClassName:K,confirmDialog:q}=kS(Tt),Dt;t[93]!==H||t[94]!==A?(Dt={setMessage:A,setAttachments:H},t[93]=H,t[94]=A,t[95]=Dt):Dt=t[95];let{handleVoiceSessionStart:Ot,handleSpeechTranscript:kt,handlePaste:At}=WS(Dt),jt;t[96]!==ot||t[97]!==U||t[98]!==et||t[99]!==f||t[100]!==ne?(jt=f??PS({ralphMode:ne,effectivePlanMode:ot,imageMode:U,isVoiceActive:et}),t[96]=ot,t[97]=U,t[98]=et,t[99]=f,t[100]=ne,t[101]=jt):jt=t[101];let Mt=jt,Nt;t[102]===H?Nt=t[103]:(Nt=e=>H(t=>t.filter((t,n)=>n!==e)),t[102]=H,t[103]=Nt);let Pt=Qe?.decision??null,Ft;t[104]===Oe?Ft=t[105]:(Ft=()=>Oe.current?.click(),t[104]=Oe,t[105]=Ft);let It=U?W:z,Lt=Ne??void 0,Rt=R?.provider,zt=R?.id,Bt=Se?`//`:`/`,Vt;t[106]===H?Vt=t[107]:(Vt=e=>Lb(e,e=>H(t=>[...t,...e])),t[106]=H,t[107]=Vt);let Ht;return t[108]!==St||t[109]!==V||t[110]!==w||t[111]!==oe||t[112]!==T||t[113]!==Ee||t[114]!==Me||t[115]!==q||t[116]!==Re||t[117]!==s||t[118]!==Pe||t[119]!==K||t[120]!==Et||t[121]!==Je||t[122]!==qe||t[123]!==ot||t[124]!==st||t[125]!==D||t[126]!==E||t[127]!==Oe||t[128]!==Ct||t[129]!==Be||t[130]!==ht||t[131]!==At||t[132]!==mt||t[133]!==kt||t[134]!==gt||t[135]!==Ot||t[136]!==Xe||t[137]!==Ye||t[138]!==U||t[139]!==vt||t[140]!==_t||t[141]!==yt||t[142]!==bt||t[143]!==xt||t[144]!==x||t[145]!==wt||t[146]!==at||t[147]!==b||t[148]!==Ve||t[149]!==k||t[150]!==He||t[151]!==u||t[152]!==a||t[153]!==h||t[154]!==G||t[155]!==ie||t[156]!==Le||t[157]!==Mt||t[158]!==l||t[159]!==ne||t[160]!==_e||t[161]!==R||t[162]!==Ue||t[163]!==H||t[164]!==se||t[165]!==ze||t[166]!==ce||t[167]!==A||t[168]!==ae||t[169]!==re||t[170]!==ve||t[171]!==we||t[172]!==pe||t[173]!==be||t[174]!==ye||t[175]!==Ne||t[176]!==he||t[177]!==je||t[178]!==Nt||t[179]!==Pt||t[180]!==Ft||t[181]!==It||t[182]!==Lt||t[183]!==Rt||t[184]!==zt||t[185]!==Bt||t[186]!==Vt||t[187]!==Ae||t[188]!==B?(Ht=(0,$.jsx)(ZS,{fillPane:Be,isOverlay:x,centered:T,embedded:E,elevated:D,queuedMessages:l,onRemoveQueuedMessage:u,dragOverSurfaceClassName:K,dropTargetProps:Et,composerRowRef:nt,isSingleLine:at,textareaRef:Ae,autoFocus:w,message:k,onTextareaChange:gt,onKeyDown:ht,onPaste:At,onFocus:ze,placeholder:Mt,disabled:s,attachments:V,onRemoveAttachment:Nt,selectedModel:R,isRouting:wt,canAddTask:Xe,planMode:ot,imageMode:U,ralphMode:ne,orchestrateMode:ie,autoMode:oe,setPlanMode:st,setImageMode:ce,setRalphMode:re,setOrchestrateMode:ae,setAutoMode:se,lastAutoRouteDecision:Pt,projectId:Ue,skills:be,slashCommands:ye,onSelectSkill:bt,onSelectSlashCommand:xt,onFileAttach:Ft,selectedThreadId:Ne,paneId:Le,dispatch:Pe,onUserTaskCreated:h,setMessage:A,setAttachments:H,hideModelSelector:Ye,availableModels:Je,effectiveModel:qe,onModelSelect:It,onReasoningEffortChange:B,threadId:Lt,conversationId:Re,messages:He,isStreaming:b,liveContextUsage:Ve,onSpeechTranscript:kt,onVoiceSessionStart:Ot,speechProvider:Rt,speechModel:zt,hasMessageText:Xe,setIsVoiceActive:tt,onStop:a,onSend:mt,showCommandSuggestions:we,suggestions:St,skillReferencePrefix:Bt,commandQuery:Ee,selectedIndex:_e,onSelectCommand:vt,onSuggestionSkill:yt,onMouseEnterSuggestion:ve,commandSuggestionsRef:Me,showSuggestions:pe,fileSuggestions:Ct,suggestionQuery:he,onSelectFile:_t,suggestionsRef:je,fileInputRef:Oe,onFileInputChange:Vt,orchestrateCheapAliasDialog:G,confirmDialog:q}),t[108]=St,t[109]=V,t[110]=w,t[111]=oe,t[112]=T,t[113]=Ee,t[114]=Me,t[115]=q,t[116]=Re,t[117]=s,t[118]=Pe,t[119]=K,t[120]=Et,t[121]=Je,t[122]=qe,t[123]=ot,t[124]=st,t[125]=D,t[126]=E,t[127]=Oe,t[128]=Ct,t[129]=Be,t[130]=ht,t[131]=At,t[132]=mt,t[133]=kt,t[134]=gt,t[135]=Ot,t[136]=Xe,t[137]=Ye,t[138]=U,t[139]=vt,t[140]=_t,t[141]=yt,t[142]=bt,t[143]=xt,t[144]=x,t[145]=wt,t[146]=at,t[147]=b,t[148]=Ve,t[149]=k,t[150]=He,t[151]=u,t[152]=a,t[153]=h,t[154]=G,t[155]=ie,t[156]=Le,t[157]=Mt,t[158]=l,t[159]=ne,t[160]=_e,t[161]=R,t[162]=Ue,t[163]=H,t[164]=se,t[165]=ze,t[166]=ce,t[167]=A,t[168]=ae,t[169]=re,t[170]=ve,t[171]=we,t[172]=pe,t[173]=be,t[174]=ye,t[175]=Ne,t[176]=he,t[177]=je,t[178]=Nt,t[179]=Pt,t[180]=Ft,t[181]=It,t[182]=Lt,t[183]=Rt,t[184]=zt,t[185]=Bt,t[186]=Vt,t[187]=Ae,t[188]=B,t[189]=Ht):Ht=t[189],Ht}function $S(){}function eC(){}var tC=(0,Z.createContext)(null);function nC(e){let t=(0,Q.c)(8),{children:n,placement:r,embedded:i,composerPhase:a,composerReveal:o}=e,s=r===void 0?`overlay`:r,c=i===void 0?!1:i,l=a===void 0?`footer`:a,u=o===void 0?!1:o,d=(0,Z.useRef)(null),f=(0,Z.useRef)(null),p;t[0]!==l||t[1]!==u||t[2]!==c||t[3]!==s?(p={overlayRef:d,placement:s,embedded:c,composerPhase:l,composerReveal:u,centeredComposerTopRef:f},t[0]=l,t[1]=u,t[2]=c,t[3]=s,t[4]=p):p=t[4];let m=p,h;return t[5]!==n||t[6]!==m?(h=(0,$.jsx)(tC.Provider,{value:m,children:n}),t[5]=n,t[6]=m,t[7]=h):h=t[7],h}function rC(){return(0,Z.useContext)(tC)}function iC(){let e=(0,Z.useContext)(tC);return!e||e.embedded?`footer`:e.composerPhase}function aC(){let e=(0,Z.useContext)(tC);return!e||e.embedded?!1:e.composerReveal}function oC(e){return e!==`loading`&&e!==`centered`}function sC(e,t){let n=e.threadId===t.threadId;return t.loading?{phase:`loading`,reveal:!1}:e.loading&&n?{phase:t.centered?`centered`:`footer`,reveal:!0}:t.centered?{phase:`centered`,reveal:!1}:e.centered&&n?{phase:`moving-to-footer`,reveal:!1}:{phase:`footer`,reveal:!1}}function cC(e){let t=(0,Q.c)(9),{centered:n,loading:r,threadId:i}=e,a;t[0]!==n||t[1]!==r||t[2]!==i?(a={centered:n,loading:r,threadId:i},t[0]=n,t[1]=r,t[2]=i,t[3]=a):a=t[3];let o=a,s;t[4]===o?s=t[5]:(s=()=>sC(o,o),t[4]=o,t[5]=s);let[c,l]=(0,Z.useState)(s),[u,d]=(0,Z.useState)(o);(u.centered!==n||u.loading!==r||u.threadId!==i)&&(d(o),l(sC(u,o)));let f,p;return t[6]===c.phase?(f=t[7],p=t[8]):(f=()=>{if(c.phase!==`moving-to-footer`)return;let e=setTimeout(()=>{l(lC)},300);return()=>clearTimeout(e)},p=[c.phase],t[6]=c.phase,t[7]=f,t[8]=p),(0,Z.useEffect)(f,p),c}function lC(e){return e.phase===`moving-to-footer`?{phase:`footer`,reveal:!1}:e}var uC=Ut(`chat.ask-user-input`);function dC(e){let t=(0,Q.c)(86),{toolCallId:n,questions:r,onAnswered:i,onStop:a,elevated:o}=e,s=o===void 0?!0:o,{fillPane:c}=Sv(),l=X(pC),u=rC()?.embedded??!1,[d,f]=(0,Z.useState)(0),[p,m]=(0,Z.useState)(``),h;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(h=[],t[0]=h):h=t[0];let[g,_]=(0,Z.useState)(h),v;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(v=[],t[1]=v):v=t[1];let[y,b]=(0,Z.useState)(v),[x,S]=(0,Z.useState)(!1),C=(0,Z.useRef)(null),w=r[d],T=d===r.length-1,E=w?.multiple===!0,D;t[2]===r?D=t[3]:(D=JSON.stringify(r),t[2]=r,t[3]=D);let O=D,k;t[4]===l?k=t[5]:(k={threadId:l,mode:`copy-only`},t[4]=l,t[5]=k);let{dropTargetProps:A,dragOverSurfaceClassName:j,confirmDialog:M}=kS(k),N;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(N=()=>{f(0),m(``),_([]),b([]),S(!1),C.current?.focus()},t[6]=N):N=t[6];let P;t[7]!==O||t[8]!==n?(P=[n,O],t[7]=O,t[8]=n,t[9]=P):P=t[9],(0,Z.useEffect)(N,P);let F,I,L,R,z,B,H,ee,te,ne;if(t[10]!==y||t[11]!==d||t[12]!==p||t[13]!==j||t[14]!==A||t[15]!==s||t[16]!==u||t[17]!==c||t[18]!==T||t[19]!==E||t[20]!==x||t[21]!==i||t[22]!==a||t[23]!==w||t[24]!==r.length||t[25]!==g||t[26]!==n){ee=Symbol.for(`react.early_return_sentinel`);bb0:{let e=function(){m(``),_([]),window.setTimeout(()=>C.current?.focus(),0)},o=async function(t){if(x||!w)return;let r=[...y,t];if(!T){b(r),f(fC),e();return}S(!0);try{await Ia(n,r),i(n)}catch(e){let t=e;uC.error(`Failed to submit answer`,{err:t}),S(!1)}};L=function(){let e=p.trim();!e||x||o(E?[e]:e)};let l=function(e){if(!x){if(E){_(t=>t.includes(e)?t.filter(t=>t!==e):[...t,e]);return}o(e)}},h=function(){g.length===0||x||o(g)};if(I=function(e){e.key===`Enter`&&!e.shiftKey&&(e.preventDefault(),L())},!w){ee=null;break bb0}let v;t[37]!==p||t[38]!==x?(v=p.trim().length>0&&!x,t[37]=p,t[38]=x,t[39]=v):v=t[39],F=v;let D=g.length>0&&!x,O=r.length>1?`Question ${d+1} of ${r.length}`:null;t[40]!==u||t[41]!==c?(H=py(c,!1,!1,u),t[40]=u,t[41]=c,t[42]=H):H=t[42],t[43]!==j||t[44]!==s||t[45]!==u?(te=G(my(u,!1,s),j),t[43]=j,t[44]=s,t[45]=u,t[46]=te):te=t[46],ne=A,t[47]!==x||t[48]!==a?(R=a&&(0,$.jsx)(`div`,{className:`absolute top-2 right-2 z-10`,children:(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(Hr,{type:`button`,size:`icon`,variant:`action`,className:`h-7 w-7`,onClick:a,disabled:x,children:[(0,$.jsx)(nt,{className:`h-4 w-4`}),(0,$.jsx)(`span`,{className:`sr-only`,children:`Stop generation`})]})}),(0,$.jsx)(Fr,{children:`Stop generation`})]})}),t[47]=x,t[48]=a,t[49]=R):R=t[49];let k;t[50]===Symbol.for(`react.memo_cache_sentinel`)?(k=(0,$.jsx)(ut,{className:`h-5 w-5 shrink-0 text-brand`}),t[50]=k):k=t[50];let M;t[51]===O?M=t[52]:(M=O&&(0,$.jsx)(`p`,{className:G(U.caption,`mb-1`),children:O}),t[51]=O,t[52]=M);let N;t[53]===w.header?N=t[54]:(N=w.header&&(0,$.jsx)(`p`,{className:G(U.labelMuted,`mb-1`),children:w.header}),t[53]=w.header,t[54]=N);let P;t[55]===Symbol.for(`react.memo_cache_sentinel`)?(P=G(U.label,`text-foreground`),t[55]=P):P=t[55];let V;t[56]===w.question?V=t[57]:(V=(0,$.jsx)(`div`,{className:P,children:(0,$.jsx)(Du,{content:w.question})}),t[56]=w.question,t[57]=V),t[58]!==M||t[59]!==N||t[60]!==V?(z=(0,$.jsxs)(`div`,{className:`flex items-start gap-2 px-6 pt-4 pr-12`,children:[k,(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[M,N,V]})]}),t[58]=M,t[59]=N,t[60]=V,t[61]=z):z=t[61],B=w.options&&w.options.length>0&&(0,$.jsxs)(`div`,{className:`flex flex-col gap-2 px-6 pt-3`,children:[w.options.map(e=>{let t=g.includes(e.label);return(0,$.jsxs)(`button`,{type:`button`,onClick:()=>l(e.label),disabled:x,className:G(`flex items-start gap-2 rounded-md border px-3 py-2 text-left transition-colors disabled:opacity-50`,U.label,t?`border-foreground/20 bg-accent text-accent-foreground`:`border-foreground/20 bg-background text-foreground hover:bg-accent hover:text-accent-foreground`),children:[E&&(0,$.jsx)(`span`,{className:G(`mt-0.5 flex h-4 w-4 shrink-0 items-center justify-center rounded border`,t&&`bg-primary text-primary-foreground`),"aria-hidden":`true`,children:t&&(0,$.jsx)(W,{className:`h-3 w-3`})}),(0,$.jsxs)(`span`,{children:[(0,$.jsx)(`span`,{className:`block`,children:e.label}),e.description&&(0,$.jsx)(`span`,{className:U.bodyMuted,children:e.description})]})]},e.label)}),E&&(0,$.jsx)(Hr,{type:`button`,className:`self-start`,onClick:h,disabled:!D,children:`Confirm selection`})]})}t[10]=y,t[11]=d,t[12]=p,t[13]=j,t[14]=A,t[15]=s,t[16]=u,t[17]=c,t[18]=T,t[19]=E,t[20]=x,t[21]=i,t[22]=a,t[23]=w,t[24]=r.length,t[25]=g,t[26]=n,t[27]=F,t[28]=I,t[29]=L,t[30]=R,t[31]=z,t[32]=B,t[33]=H,t[34]=ee,t[35]=te,t[36]=ne}else F=t[27],I=t[28],L=t[29],R=t[30],z=t[31],B=t[32],H=t[33],ee=t[34],te=t[35],ne=t[36];if(ee!==Symbol.for(`react.early_return_sentinel`))return ee;let re;t[62]===Symbol.for(`react.memo_cache_sentinel`)?(re=e=>m(e.target.value),t[62]=re):re=t[62];let ie=w.options?.length?`Or type a custom answer...`:`Type your answer...`,ae;t[63]===Symbol.for(`react.memo_cache_sentinel`)?(ae=G(U.body,`min-h-[3rem] w-full resize-none bg-transparent px-6 pt-3 pb-2 text-foreground placeholder:text-muted-foreground focus:outline-none disabled:opacity-50`),t[63]=ae):ae=t[63];let oe;t[64]!==p||t[65]!==I||t[66]!==x||t[67]!==ie?(oe=(0,$.jsx)(`textarea`,{ref:C,autoFocus:!0,value:p,onChange:re,onKeyDown:I,placeholder:ie,disabled:x,rows:1,className:ae}),t[64]=p,t[65]=I,t[66]=x,t[67]=ie,t[68]=oe):oe=t[68];let se=!F,ce,le;t[69]===Symbol.for(`react.memo_cache_sentinel`)?(ce=(0,$.jsx)(V,{className:`h-3 w-3`}),le=(0,$.jsx)(`span`,{className:`sr-only`,children:`Submit answer`}),t[69]=ce,t[70]=le):(ce=t[69],le=t[70]);let ue;t[71]!==L||t[72]!==se?(ue=(0,$.jsx)(`div`,{className:`flex items-center justify-end px-3 pb-2`,children:(0,$.jsxs)(`button`,{type:`button`,onClick:L,disabled:se,className:`flex h-7 w-7 shrink-0 items-center justify-center rounded-full bg-primary text-primary-foreground transition-colors hover:bg-primary/90 disabled:opacity-50`,children:[ce,le]})}),t[71]=L,t[72]=se,t[73]=ue):ue=t[73];let de;t[74]!==R||t[75]!==z||t[76]!==B||t[77]!==oe||t[78]!==ue||t[79]!==te||t[80]!==ne?(de=(0,$.jsxs)(`div`,{className:te,...ne,children:[R,z,B,oe,ue]}),t[74]=R,t[75]=z,t[76]=B,t[77]=oe,t[78]=ue,t[79]=te,t[80]=ne,t[81]=de):de=t[81];let fe;return t[82]!==M||t[83]!==H||t[84]!==de?(fe=(0,$.jsxs)(`div`,{className:H,children:[de,M]}),t[82]=M,t[83]=H,t[84]=de,t[85]=fe):fe=t[85],fe}function fC(e){return e+1}function pC(e){return e.selectedThreadId}function mC(){let e=X(yC),t=X(vC),n=X(_C),r=X(gC),i=X(hC);return e!==`actions`||t==null?!1:i.some(e=>e.projectId===t)?!0:n===t&&r!=null}function hC(e){return e.projects}function gC(e){return e.selectedThreadId}function _C(e){return e.selectedProjectId}function vC(e){return e.projectPanelProjectId}function yC(e){return e.projectPanelView}var bC=40,xC=4,SC=10,CC=2*Math.PI*SC,wC={transitionDuration:`5000ms`,transitionProperty:`stroke-dashoffset`,transitionTimingFunction:`ease-out`};function TC(e,t){return`${Math.min(e+1,t)} of ${t}`}function EC(e){let t=(0,Q.c)(12),{todos:n}=e,r,i,a,o;if(t[0]!==n){let e=n.filter(OC).length;r=`space-y-1`,t[5]===n.length?i=t[6]:(i=n.length===0&&(0,$.jsx)(`p`,{className:U.compact,children:`No todo items.`}),t[5]=n.length,t[6]=i),a=n.map(DC),o=n.length>0&&(0,$.jsx)(`p`,{className:G(U.compact,`pt-1`),children:TC(e,n.length)}),t[0]=n,t[1]=r,t[2]=i,t[3]=a,t[4]=o}else r=t[1],i=t[2],a=t[3],o=t[4];let s;return t[7]!==r||t[8]!==i||t[9]!==a||t[10]!==o?(s=(0,$.jsxs)(`div`,{className:r,children:[i,a,o]}),t[7]=r,t[8]=i,t[9]=a,t[10]=o,t[11]=s):s=t[11],s}function DC(e){return(0,$.jsxs)(`div`,{className:G(U.caption,`flex items-start gap-2`),children:[e.status===`done`?(0,$.jsx)(st,{className:`h-4 w-4 shrink-0 mt-0.5 text-brand`}):e.status===`working`?(0,$.jsx)(it,{className:`h-4 w-4 shrink-0 mt-0.5 text-yellow-500`}):(0,$.jsx)(Ot,{className:`h-4 w-4 shrink-0 mt-0.5 text-muted-foreground`}),(0,$.jsx)(`span`,{className:e.status===`done`?`line-through text-muted-foreground`:`text-foreground`,children:e.description})]},e.id)}function OC(e){return e.status===`done`}function kC(e){let t=(0,Q.c)(6),{completedCount:n,totalCount:r}=e,i=Math.min(n+1,r),[a,o]=(0,Z.useState)(0),s=CC*(1-(r>0?Math.min(a,r)/r:0)),c=bC/2,l,u;t[0]===i?(l=t[1],u=t[2]):(l=()=>{let e=requestAnimationFrame(()=>{o(i)});return()=>cancelAnimationFrame(e)},u=[i],t[0]=i,t[1]=l,t[2]=u),(0,Z.useEffect)(l,u);let d;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(d=(0,$.jsx)(`circle`,{cx:c,cy:c,r:SC,fill:`none`,stroke:`currentColor`,strokeOpacity:`0.2`,strokeWidth:xC}),t[3]=d):d=t[3];let f;return t[4]===s?f=t[5]:(f=(0,$.jsxs)(`svg`,{"aria-hidden":`true`,viewBox:`0 0 ${bC} ${bC}`,className:`size-4 shrink-0`,children:[d,(0,$.jsx)(`circle`,{cx:c,cy:c,r:SC,fill:`none`,stroke:`currentColor`,strokeWidth:xC,strokeDasharray:CC,strokeDashoffset:s,strokeLinecap:`round`,transform:`rotate(-90 ${c} ${c})`,style:wC})]}),t[4]=s,t[5]=f),f}function AC(e){let t=(0,Q.c)(46),{layout:n}=e,r=n===void 0?`bar`:n,{todos:i}=(0,Z.useContext)(zm),[a,o]=(0,Z.useState)(!1),s;t[0]===i?s=t[1]:(s=i.filter(jC),t[0]=i,t[1]=s);let c=s.length,l=i.length-c,u;t[2]!==c||t[3]!==i.length?(u=TC(c,i.length),t[2]=c,t[3]=i.length,t[4]=u):u=t[4];let d=u;if(l<=0)return null;if(r===`menu`){let e;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(e=()=>o(!0),t[5]=e):e=t[5];let n;t[6]!==c||t[7]!==i.length?(n=(0,$.jsx)(kC,{completedCount:c,totalCount:i.length}),t[6]=c,t[7]=i.length,t[8]=n):n=t[8];let r;t[9]===d?r=t[10]:(r=(0,$.jsx)(`span`,{children:d}),t[9]=d,t[10]=r);let s;t[11]!==n||t[12]!==r?(s=(0,$.jsxs)(Hr,{variant:`ghost`,size:`sm`,className:`w-full justify-start gap-2`,onClick:e,children:[n,r]}),t[11]=n,t[12]=r,t[13]=s):s=t[13];let l;t[14]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,$.jsx)(Dr,{children:(0,$.jsx)(qa,{children:`Agent Todos`})}),t[14]=l):l=t[14];let u;t[15]===i?u=t[16]:(u=(0,$.jsxs)(Ir,{className:`max-w-md`,children:[l,(0,$.jsx)(EC,{todos:i})]}),t[15]=i,t[16]=u);let f;t[17]!==a||t[18]!==u?(f=(0,$.jsx)(Ni,{open:a,onOpenChange:o,children:u}),t[17]=a,t[18]=u,t[19]=f):f=t[19];let p;return t[20]!==f||t[21]!==s?(p=(0,$.jsxs)($.Fragment,{children:[s,f]}),t[20]=f,t[21]=s,t[22]=p):p=t[22],p}let f;t[23]===Symbol.for(`react.memo_cache_sentinel`)?(f=()=>o(!0),t[23]=f):f=t[23];let p;t[24]!==c||t[25]!==i.length?(p=(0,$.jsx)(kC,{completedCount:c,totalCount:i.length}),t[24]=c,t[25]=i.length,t[26]=p):p=t[26];let m;t[27]===d?m=t[28]:(m=(0,$.jsx)(`span`,{children:d}),t[27]=d,t[28]=m);let h;t[29]!==p||t[30]!==m?(h=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(Hr,{variant:`outline`,size:`sm`,onClick:f,children:[p,m]})}),t[29]=p,t[30]=m,t[31]=h):h=t[31];let g;t[32]===d?g=t[33]:(g=(0,$.jsx)(Fr,{children:d}),t[32]=d,t[33]=g);let _;t[34]!==h||t[35]!==g?(_=(0,$.jsx)(Zo,{children:(0,$.jsxs)(Mi,{children:[h,g]})}),t[34]=h,t[35]=g,t[36]=_):_=t[36];let v;t[37]===Symbol.for(`react.memo_cache_sentinel`)?(v=(0,$.jsx)(Dr,{children:(0,$.jsx)(qa,{children:`Agent Todos`})}),t[37]=v):v=t[37];let y;t[38]===i?y=t[39]:(y=(0,$.jsxs)(Ir,{className:`max-w-md`,children:[v,(0,$.jsx)(EC,{todos:i})]}),t[38]=i,t[39]=y);let b;t[40]!==a||t[41]!==y?(b=(0,$.jsx)(Ni,{open:a,onOpenChange:o,children:y}),t[40]=a,t[41]=y,t[42]=b):b=t[42];let x;return t[43]!==b||t[44]!==_?(x=(0,$.jsxs)($.Fragment,{children:[_,b]}),t[43]=b,t[44]=_,t[45]=x):x=t[45],x}function jC(e){return e.status===`done`}function MC(e){let t=(0,Q.c)(34),{tasks:n,disabled:r,onSelectTask:i,onTogglePinned:a,onRemoveTask:o,layout:s}=e,c=r===void 0?!1:r,l=s===void 0?`bar`:s,[u,d]=(0,Z.useState)(!1),f=n.length,p=`${f} ${f===1?`Prompt`:`Prompts`}`;if(f===0)return null;let m;t[0]===i?m=t[1]:(m=function(e){i(e),d(!1)},t[0]=i,t[1]=m);let h=m,g;t[2]!==o||t[3]!==f?(g=function(e){o(e),f===1&&d(!1)},t[2]=o,t[3]=f,t[4]=g):g=t[4];let _=g,v;t[5]===a?v=t[6]:(v=function(e){a(e)},t[5]=a,t[6]=v);let y=v,b=l===`menu`?`ghost`:`outline`,x=l===`bar`&&`bg-background`,S=l===`menu`&&`w-full justify-start`,C;t[7]!==x||t[8]!==S?(C=G(`gap-2`,x,S),t[7]=x,t[8]=S,t[9]=C):C=t[9];let w;t[10]===p?w=t[11]:(w=(0,$.jsx)(`span`,{children:p}),t[10]=p,t[11]=w);let T;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(T=(0,$.jsx)(Yt,{className:`h-4 w-4 shrink-0`}),t[12]=T):T=t[12];let E;t[13]!==c||t[14]!==w||t[15]!==b||t[16]!==C?(E=(0,$.jsx)(Mp,{asChild:!0,children:(0,$.jsxs)(Hr,{variant:b,size:`sm`,className:C,disabled:c,children:[w,T]})}),t[13]=c,t[14]=w,t[15]=b,t[16]=C,t[17]=E):E=t[17];let D;t[18]===Symbol.for(`react.memo_cache_sentinel`)?(D=(0,$.jsx)(`div`,{className:G(U.dropdownGroupHeading,`px-2 pb-1 pt-1`),children:`Prompts`}),t[18]=D):D=t[18];let O;if(t[19]!==_||t[20]!==h||t[21]!==y||t[22]!==n){let e;t[24]!==_||t[25]!==h||t[26]!==y?(e=e=>(0,$.jsxs)(`div`,{className:`flex items-start gap-2 rounded-md border border-transparent px-2 py-2 hover:bg-accent`,children:[(0,$.jsxs)(`button`,{type:`button`,className:`flex min-w-0 flex-1 items-start gap-2 text-left`,onClick:()=>h(e),children:[(0,$.jsx)(un,{className:`mt-0.5 h-4 w-4 shrink-0 text-muted-foreground`}),(0,$.jsx)(`span`,{className:G(U.body,`line-clamp-3 text-foreground`),children:e.content})]}),(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(Hr,{type:`button`,variant:`ghost`,size:`icon`,className:G(`h-7 w-7 shrink-0`,e.pinned&&`text-primary hover:text-primary`),onClick:()=>y(e.id),children:[(0,$.jsx)(ie,{className:G(`h-4 w-4`,e.pinned&&`fill-current`)}),(0,$.jsx)(`span`,{className:`sr-only`,children:e.pinned?`Unpin prompt`:`Pin prompt`})]})}),(0,$.jsx)(Fr,{children:e.pinned?`Unpin prompt`:`Pin prompt`})]}),(0,$.jsxs)(Hr,{type:`button`,variant:`ghost`,size:`icon`,className:`h-7 w-7 shrink-0`,onClick:()=>_(e.id),children:[(0,$.jsx)(nt,{className:`h-4 w-4`}),(0,$.jsx)(`span`,{className:`sr-only`,children:`Remove prompt`})]})]},e.id),t[24]=_,t[25]=h,t[26]=y,t[27]=e):e=t[27],O=n.map(e),t[19]=_,t[20]=h,t[21]=y,t[22]=n,t[23]=O}else O=t[23];let k;t[28]===O?k=t[29]:(k=(0,$.jsx)(Np,{align:`start`,className:`w-96 p-2`,children:(0,$.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[D,O]})}),t[28]=O,t[29]=k);let A;return t[30]!==u||t[31]!==E||t[32]!==k?(A=(0,$.jsx)(Zo,{children:(0,$.jsxs)(jp,{open:u,onOpenChange:d,children:[E,k]})}),t[30]=u,t[31]=E,t[32]=k,t[33]=A):A=t[33],A}function NC(e){let t=(0,Q.c)(23),n=Qn(),r;t[0]===e?r=t[1]:(r=hy.userTasks(e),t[0]=e,t[1]=r);let i;t[2]===e?i=t[3]:(i=()=>Ya(e),t[2]=e,t[3]=i);let a=!!e,o;t[4]!==r||t[5]!==i||t[6]!==a?(o={queryKey:r,queryFn:i,enabled:a},t[4]=r,t[5]=i,t[6]=a,t[7]=o):o=t[7];let s=vr(o),c;t[8]!==e||t[9]!==n?(c=t=>{e&&n.setQueryData(hy.userTasks(e),e=>typeof t==`function`?t(e??[]):t)},t[8]=e,t[9]=n,t[10]=c):c=t[10];let l=c,u;t[11]===s.data?u=t[12]:(u=s.data??[],t[11]=s.data,t[12]=u);let d;t[13]!==e||t[14]!==n?(d=()=>n.invalidateQueries({queryKey:hy.userTasks(e)}),t[13]=e,t[14]=n,t[15]=d):d=t[15];let f;return t[16]!==s.error||t[17]!==s.isError||t[18]!==s.isLoading||t[19]!==l||t[20]!==u||t[21]!==d?(f={userTasks:u,isLoading:s.isLoading,isError:s.isError,error:s.error,setUserTasks:l,invalidate:d},t[16]=s.error,t[17]=s.isError,t[18]=s.isLoading,t[19]=l,t[20]=u,t[21]=d,t[22]=f):f=t[22],f}function PC(e,t,n){let r=e.flatMap(e=>e.threads).find(e=>e.threadId===t),i=new Set(Object.values(r?.chatTitles??{}).filter(e=>typeof e==`string`&&e.trim().length>0).map(e=>e.trim())),a=1,o=`New Chat`;for(;i.has(o);)a+=1,o=`New Chat ${a}`;return o}var FC=Ut(`chat.input-toolbar`),IC=(0,Z.createContext)(void 0);function LC({children:e}){let t=Ks(),{paneId:n,conversationId:r}=Sv(),{handleDiscardPaneStream:i}=vv(),a=X(e=>e.selectedThreadId),o=X(e=>e.projects),s=X(e=>e.selectedProjectId),c=X(e=>e.isCreatingProject),l=X(e=>e.startingNewChatPaneIds.includes(n)),{toast:u}=ic(),d=Qn(),{userTasks:f,setUserTasks:p,isError:m}=NC(n===`primary`?s:null),h=X(e=>{let t=n===`primary`&&e.pendingChatMessage?.threadId===e.selectedThreadId;return e.selectedThreadId?As(e.threadStreamingStates,e.selectedThreadId,n).isStreaming||t:!1});(0,Z.useEffect)(()=>{m&&u({title:`Could not load prompts`,description:`Failed to load prompts for this project.`,variant:`destructive`})},[m,u]);let g=(0,Z.useCallback)(async()=>{if(a){t({type:Y.SetNewChatStarting,paneId:n,isStarting:!0});try{let e=r,c=PC(o,a,n),l={...o.flatMap(e=>e.threads).find(e=>e.threadId===a)?.chatTitles,[n]:c};s&&(Qa(a,{chatTitles:l}).catch(e=>{FC.error(`Failed to update chat title for new chat`,{error:e,threadId:a})}),t({type:Y.UpdateChatTitle,projectId:s,threadId:a,paneId:n,title:c})),bg(a),i(n),t(n===`primary`?{type:Y.ClearMessages}:{type:Y.SetPaneMessages,paneId:n,messages:[]});let u=e;if(!u&&n===`primary`)try{u=(await Ur(a)).currentConversationId}catch(e){FC.error(`Failed to resolve current conversation before starting new chat`,{error:e,threadId:a})}if(u&&await Na(a,{conversationId:u}),n!==`primary`){t({type:Y.SetPaneConversationId,paneId:n,conversationId:je()});return}try{let e=await Io(a);t({type:Y.SetPrimaryConversationId,conversationId:e}),FC.info(`New conversation started`,{conversationId:e,threadId:a})}catch(e){FC.error(`Failed to start new chat`,{error:e,threadId:a})}}finally{t({type:Y.SetNewChatStarting,paneId:n,isStarting:!1})}}},[s,a,t,o,n,r,i]),_=(0,Z.useCallback)(async e=>{if(s)try{await zr(s,e),d.setQueryData(hy.userTasks(s),t=>(t??[]).filter(t=>t.id!==e))}catch(t){FC.error(`Failed to delete user task`,{error:t,projectId:s,taskId:e}),u({title:`Could not remove prompt`,description:`Failed to delete the selected prompt.`,variant:`destructive`})}},[d,s,u]),v=(0,Z.useCallback)(e=>{p(t=>t.map(t=>t.id===e?{...t,pinned:!t.pinned}:t))},[p]),y=(0,Z.useCallback)(e=>{a&&t({type:Y.SetChatInputDraft,threadId:a,draft:e.content})},[a,t]),b=(0,Z.useMemo)(()=>({userTasks:f,setUserTasks:p,handleNewChat:g,handleSelectUserTask:y,handleRemoveUserTask:_,toggleUserTaskPinned:v,effectiveIsStreaming:h,isCreatingProject:c,isStartingNewChat:l}),[f,p,g,y,_,v,h,c,l]);return(0,$.jsx)(IC.Provider,{value:b,children:e})}function RC(){let e=(0,Z.useContext)(IC);if(e===void 0)throw Error(`useChatInputToolbar must be used within a ChatInputToolbarProvider`);return e}var zC=[`Removing threads`,`Deleting storage`,`Removing project`];function BC(e){let t=(0,Q.c)(32),{progress:n,onRetry:r,onClose:i}=e;if(!n)return null;let{projectName:a,step:o,status:s,errorMessage:c}=n,l=zC[Math.min(o,zC.length-1)],u=s===`progressing`,d;t[0]!==u||t[1]!==i?(d=e=>{!e&&!u&&i()},t[0]=u,t[1]=i,t[2]=d):d=t[2];let f;t[3]===u?f=t[4]:(f=e=>{u&&e.preventDefault()},t[3]=u,t[4]=f);let p=s===`error`?`Delete Failed`:`Deleting Project`,m;t[5]===p?m=t[6]:(m=(0,$.jsx)(sc,{children:p}),t[5]=p,t[6]=m);let h;t[7]!==c||t[8]!==l||t[9]!==a||t[10]!==s?(h=(0,$.jsx)(oc,{children:s===`error`?(0,$.jsxs)(`span`,{className:`text-destructive`,children:[`Failed at: `,l,`. `,c??`An unexpected error occurred.`]}):(0,$.jsxs)($.Fragment,{children:[`Deleting `,(0,$.jsxs)(`span`,{className:`font-semibold text-foreground`,children:[`"`,a,`"`]}),`. This cannot be undone.`]})}),t[7]=c,t[8]=l,t[9]=a,t[10]=s,t[11]=h):h=t[11];let g;t[12]!==m||t[13]!==h?(g=(0,$.jsxs)(fc,{children:[m,h]}),t[12]=m,t[13]=h,t[14]=g):g=t[14];let _;t[15]!==s||t[16]!==o?(_=zC.map((e,t)=>{let n=s===`progressing`&&t===o,r=s===`done`,i=s===`error`&&t===o;return(0,$.jsxs)(`div`,{className:G(`flex items-center gap-2 text-sm`,n&&`text-foreground`,r&&`text-muted-foreground`,t<o&&`text-muted-foreground`),children:[r||t<o?(0,$.jsx)(W,{className:`h-4 w-4 text-emerald-500`}):i?(0,$.jsx)(Fe,{className:`h-4 w-4 text-destructive`}):(0,$.jsx)(ln,{className:G(`h-4 w-4 text-muted-foreground`,n&&`animate-spin text-foreground`)}),(0,$.jsxs)(`span`,{className:G(U.body,n&&`font-medium`),children:[e,`…`]})]},e)}),t[15]=s,t[16]=o,t[17]=_):_=t[17];let v;t[18]===_?v=t[19]:(v=(0,$.jsx)(`div`,{className:`flex flex-col gap-2 py-2`,children:_}),t[18]=_,t[19]=v);let y;t[20]!==i||t[21]!==r||t[22]!==s?(y=s===`error`&&(0,$.jsxs)(uc,{children:[(0,$.jsx)(dc,{onClick:i,children:`Close`}),(0,$.jsx)(lc,{onClick:r,className:`bg-destructive text-destructive-foreground hover:bg-destructive/90`,children:`Retry`})]}),t[20]=i,t[21]=r,t[22]=s,t[23]=y):y=t[23];let b;t[24]!==f||t[25]!==g||t[26]!==v||t[27]!==y?(b=(0,$.jsxs)(cc,{onEscapeKeyDown:f,children:[g,v,y]}),t[24]=f,t[25]=g,t[26]=v,t[27]=y,t[28]=b):b=t[28];let x;return t[29]!==d||t[30]!==b?(x=(0,$.jsx)(pc,{open:!0,onOpenChange:d,children:b}),t[29]=d,t[30]=b,t[31]=x):x=t[31],x}var VC=xn,HC=Z.forwardRef((e,t)=>{let n=(0,Q.c)(9),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let a;n[3]===r?a=n[4]:(a=G(`fixed top-0 z-[100] flex max-h-screen w-full flex-col-reverse p-4 sm:bottom-0 sm:right-0 sm:top-auto sm:flex-col md:max-w-[420px]`,r),n[3]=r,n[4]=a);let o;return n[5]!==i||n[6]!==t||n[7]!==a?(o=(0,$.jsx)(zn,{ref:t,className:a,...i}),n[5]=i,n[6]=t,n[7]=a,n[8]=o):o=n[8],o});HC.displayName=zn.displayName;var UC=bi(`group pointer-events-auto relative flex w-full items-center justify-between space-x-4 overflow-hidden rounded-md border p-6 pr-8 shadow-lg transition-all data-[swipe=cancel]:translate-x-0 data-[swipe=end]:translate-x-[var(--radix-toast-swipe-end-x)] data-[swipe=move]:translate-x-[var(--radix-toast-swipe-move-x)] data-[swipe=move]:transition-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[swipe=end]:animate-out data-[state=closed]:fade-out-80 data-[state=closed]:slide-out-to-right-full data-[state=open]:slide-in-from-top-full data-[state=open]:sm:slide-in-from-bottom-full`,{variants:{variant:{default:`border bg-background text-foreground`,destructive:`destructive group border-destructive bg-destructive text-destructive-foreground`}},defaultVariants:{variant:`default`}}),WC=Z.forwardRef((e,t)=>{let n=(0,Q.c)(11),r,i,a;n[0]===e?(r=n[1],i=n[2],a=n[3]):({className:r,variant:a,...i}=e,n[0]=e,n[1]=r,n[2]=i,n[3]=a);let o;n[4]!==r||n[5]!==a?(o=G(UC({variant:a}),r),n[4]=r,n[5]=a,n[6]=o):o=n[6];let s;return n[7]!==i||n[8]!==t||n[9]!==o?(s=(0,$.jsx)(En,{ref:t,className:o,...i}),n[7]=i,n[8]=t,n[9]=o,n[10]=s):s=n[10],s});WC.displayName=En.displayName;var GC=Z.forwardRef((e,t)=>{let n=(0,Q.c)(9),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let a;n[3]===r?a=n[4]:(a=G(`inline-flex h-8 shrink-0 items-center justify-center rounded-md border bg-transparent px-3 font-medium ring-offset-background transition-colors hover:bg-secondary focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 group-[.destructive]:border-muted/40 group-[.destructive]:hover:border-destructive/30 group-[.destructive]:hover:bg-destructive group-[.destructive]:hover:text-destructive-foreground group-[.destructive]:focus:ring-destructive`,U.body,r),n[3]=r,n[4]=a);let o;return n[5]!==i||n[6]!==t||n[7]!==a?(o=(0,$.jsx)(jn,{ref:t,className:a,...i}),n[5]=i,n[6]=t,n[7]=a,n[8]=o):o=n[8],o});GC.displayName=jn.displayName;var KC=Z.forwardRef((e,t)=>{let n=(0,Q.c)(10),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let a;n[3]===r?a=n[4]:(a=G(`absolute right-2 top-2 rounded-md p-1 text-foreground/50 opacity-0 transition-opacity hover:text-foreground focus:opacity-100 focus:outline-none focus:ring-2 group-hover:opacity-100 group-[.destructive]:text-red-300 group-[.destructive]:hover:text-red-50 group-[.destructive]:focus:ring-red-400 group-[.destructive]:focus:ring-offset-red-600`,r),n[3]=r,n[4]=a);let o;n[5]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,$.jsx)(nt,{className:`h-4 w-4`}),n[5]=o):o=n[5];let s;return n[6]!==i||n[7]!==t||n[8]!==a?(s=(0,$.jsx)(Nn,{ref:t,className:a,"toast-close":``,...i,children:o}),n[6]=i,n[7]=t,n[8]=a,n[9]=s):s=n[9],s});KC.displayName=Nn.displayName;var qC=Z.forwardRef((e,t)=>{let n=(0,Q.c)(9),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let a;n[3]===r?a=n[4]:(a=G(U.dialogTitle,r),n[3]=r,n[4]=a);let o;return n[5]!==i||n[6]!==t||n[7]!==a?(o=(0,$.jsx)(kn,{ref:t,className:a,...i}),n[5]=i,n[6]=t,n[7]=a,n[8]=o):o=n[8],o});qC.displayName=kn.displayName;var JC=Z.forwardRef((e,t)=>{let n=(0,Q.c)(9),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let a;n[3]===r?a=n[4]:(a=G(U.body,`opacity-90 text-muted-foreground group-[.destructive]:text-destructive-foreground`,r),n[3]=r,n[4]=a);let o;return n[5]!==i||n[6]!==t||n[7]!==a?(o=(0,$.jsx)(Ln,{ref:t,className:a,...i}),n[5]=i,n[6]=t,n[7]=a,n[8]=o):o=n[8],o});JC.displayName=Ln.displayName;function YC(e){return(e?.match(/Removing (.+?)\.\.\./))?.[1]?.trim()||void 0}function XC(e,t){let n=YC(t),r=e.trim().toLowerCase();return eo(e)&&n?{summary:`The connection dropped while Tarsk was deleting files on disk.`,cause:`Removing a large folder can take longer than the browser keeps the progress stream open. WebKit reports this as "Load failed" even though deletion may still be running or may already have finished on the server.`,guidance:[`Refresh the project list and check whether the thread is gone.`,`If the thread is still listed, try deleting again or remove the folder manually: ${n}`],removingPath:n}:eo(e)?{summary:`The connection to Tarsk was lost during deletion.`,cause:`The progress stream closed before the server reported completion. This is usually a browser or network timeout, not a message from the delete operation itself.`,guidance:[`Refresh the project list and check whether the thread was removed.`,`Try deleting the thread again if it is still listed.`]}:r.includes(`not found`)?{summary:`Tarsk could not find that thread.`,cause:`The thread may have already been deleted in another window or by a previous attempt.`,guidance:[`Refresh the project list.`,`If the thread is gone, no further action is needed.`]}:r.includes(`failed to remove`)||r.includes(`eperm`)||r.includes(`ebusy`)?{summary:`Tarsk could not remove the thread folder from disk.`,cause:e,guidance:[n?`Close any apps using files in ${n}, then try again.`:`Close any apps using files in the thread folder, then try again.`,`If deletion keeps failing, remove the folder manually and refresh the project list.`],removingPath:n}:{summary:e||`Thread deletion failed for an unknown reason.`,cause:`See the progress output below for where deletion stopped.`,guidance:[`Try deleting the thread again.`,`If the problem persists, check Settings > Logs for details.`],removingPath:n}}function ZC(e,t){return[`Thread deletion failed (${e})`,t.summary,`Cause: ${t.cause}`,`What to do: ${t.guidance.join(` `)}`].join(`
3325
- `)}function QC(e){if(!e||typeof e!=`object`)return{};let t=e,n={};if(typeof t.stdout==`string`&&t.stdout.trim()&&(n.stdout=t.stdout),typeof t.stderr==`string`&&t.stderr.trim()&&(n.stderr=t.stderr),typeof t.details==`string`&&t.details.trim())n.details=t.details;else if(typeof t.error==`string`&&t.error.trim())n.details=t.error;else if(t.error&&typeof t.error==`object`){let e=t.error;typeof e.message==`string`&&e.message.trim()&&(n.details=e.message),typeof e.stdout==`string`&&e.stdout.trim()&&(n.stdout=n.stdout??e.stdout),typeof e.stderr==`string`&&e.stderr.trim()&&(n.stderr=n.stderr??e.stderr)}return n}function $C(e,t,n){let r=crypto.randomUUID(),i=n.message.trim()||`Unknown error`,a=XC(i,n.progressOutput),o=ZC(r,a),s={errorId:r,message:i,summary:a.summary,cause:a.cause,guidance:a.guidance,removingPath:a.removingPath,projectId:n.projectId,threadId:n.threadId,threadTitle:n.threadTitle,output:n.progressOutput,stdout:n.stdout,stderr:n.stderr,details:n.details,...n.cause===void 0?{}:{rawError:n.cause}};return e.error(o,s),Qr({level:`ERROR`,context:`app.use-projects.hook`,message:o,data:s}),ac({variant:`destructive`,title:`Failed to delete thread`,description:`Error ID: ${r}\n${a.summary}`,action:(0,$.jsx)(GC,{altText:`Go to Logs`,onClick:()=>{t(`/settings/logs?q=${encodeURIComponent(r)}`)},children:`Go to Logs`})}),r}var ew=Ut(`app.use-projects.hook`),tw=0;function nw(){let e=(0,Q.c)(17),t=Ks(),n=X(ow),r=X(aw),i=X(iw);i>0&&Si();let a=Nc(`projects:bootstrap:${i}`,lo),o=(0,Z.useRef)(!1),s;e[0]!==a.cloneRootPath||e[1]!==a.projects||e[2]!==t?(s=()=>{t({type:Y.SetProjects,projects:a.projects,cloneRootPath:a.cloneRootPath}),t({type:Y.SetProjectsLoading,projectsLoading:!1})},e[0]=a.cloneRootPath,e[1]=a.projects,e[2]=t,e[3]=s):s=e[3];let c;e[4]!==a||e[5]!==t?(c=[a,t],e[4]=a,e[5]=t,e[6]=c):c=e[6],(0,Z.useLayoutEffect)(s,c);let l;e[7]!==a.projects||e[8]!==t||e[9]!==r||e[10]!==n?(l=()=>{if(!o.current){if(n||r){o.current=!0;return}for(let e of a.projects){let n=e.threads.find(rw);if(n){t({type:Y.SelectThread,threadId:n.threadId,projectId:e.projectId}),o.current=!0;break}}}},e[7]=a.projects,e[8]=t,e[9]=r,e[10]=n,e[11]=l):l=e[11];let u;return e[12]!==a||e[13]!==t||e[14]!==r||e[15]!==n?(u=[a,t,n,r],e[12]=a,e[13]=t,e[14]=r,e[15]=n,e[16]=u):u=e[16],(0,Z.useLayoutEffect)(l,u),null}function rw(e){return e.isSelected}function iw(e){return e.configUpdatedAt}function aw(e){return e.selectedProjectId}function ow(e){return e.selectedThreadId}function sw(e){let t=Ks(),n=X(e=>e.projects),r=X(e=>e.selectedProjectId),i=X(e=>e.selectedThreadId),{toast:a}=ic(),o=Yn(),s=Gn(),[c,l]=(0,Z.useState)(null),u=(0,Z.useCallback)(async()=>{let e=++tw;try{t({type:Y.SetProjectsLoading,projectsLoading:!0}),Si(),Mc(`projects:bootstrap:`);let n=await lo();return e===tw&&t({type:Y.SetProjects,projects:n.projects,cloneRootPath:n.cloneRootPath}),n.projects}catch(e){return ew.error(`Failed to refresh projects:`,e),[]}finally{e===tw&&t({type:Y.SetProjectsLoading,projectsLoading:!1})}},[t]),d=(0,Z.useCallback)(async()=>{let e=await u();if(t({type:Y.ConfigUpdated}),!r||!i)return e;let n=e.find(e=>e.projectId===r);if(!n)return t({type:Y.ClearSelection}),e;if(!n.threads.some(e=>e.threadId===i)){t({type:Y.ClearThreadCreationSummary,threadId:i});let e=n.threads[0];t(e?{type:Y.SelectThread,threadId:e.threadId,projectId:r}:{type:Y.ClearSelection})}return e},[t,u,r,i]),f=(0,Z.useCallback)((e,n)=>{(i!==n||r!==e)&&t({type:Y.SelectThread,threadId:n,projectId:e}),ya(e,n).catch(e=>{ew.error(`Failed to select thread:`,e)})},[t,i,r]),p=(0,Z.useCallback)(async n=>{t({type:Y.SetCreatingProject,isCreating:!0});let r={current:null},i=``,o=!1;function s(e){if(!e)return;let n=`${e}\n`;i+=n;let a=r.current;a&&Ac(t,a.toolCallId,a.threadId,n)}let c=null,d=!1,f=null,p=null;function m(i,a){d=!0,f=i,p=a,t({type:Y.AddCreatingProject,projectId:i,threadId:a,projectName:n.optimisticProjectName,gitUrl:n.gitUrl??``}),t({type:Y.AddProcessingThread,threadId:a}),e?.onProjectCreated?.(i);let o=Ec({mode:n.mode,threadId:a,projectId:i,projectName:n.optimisticProjectName});r.current=o,xc(t,o,`${n.initialMessage}\n`)}function h(){d&&f&&(t({type:Y.RemoveCreatingProject,projectId:f}),p&&t({type:Y.RemoveProcessingThread,threadId:p}))}function g(e){!d&&typeof e.threadId==`string`&&typeof e.projectId==`string`&&m(e.projectId,e.threadId),s(typeof e.message==`string`?e.message:``)}function _(e){o=!0;let t=e.project;if(t){if(c=t.id,s(`Project created successfully at: ${n.includeThreadPath&&t.threads&&t.threads.length>0?`${t.path}/${t.threads[0]}`:t.path}`),r.current&&n.mode===`folder`){let e=t.path.split(/[/\\]/).filter(Boolean).pop();e&&e!==n.optimisticProjectName&&(r.current={...r.current,projectName:e})}n.handleSetupScript&&typeof e.suggestedSetupScript==`string`&&l({projectId:t.id,command:e.suggestedSetupScript,remainingScripts:t.pendingSetupScripts??[]})}}function v(e){let t=typeof e.message==`string`?e.message:`Unknown error`;h(),s(`Error: ${t}`),r.current||a({title:`Project Creation Failed`,description:t,variant:`destructive`})}function y(e){if(!e||typeof e!=`object`)return;let t=e;try{t.type===`progress`?g(t):t.type===`complete`?_(t):t.type===`error`&&v(t)}catch(e){ew.error(`Failed to parse ${n.logTag} event`,e)}}async function b(n){if(!c)return;let i=n.projects.find(e=>e.projectId===c);if(i&&i.threads.length>0){let e=i.threads[0].threadId;r.current?.threadId===e?t({type:Y.FocusChatInput}):t({type:Y.SelectThread,threadId:e,projectId:c,focusInput:!0})}e?.onProjectCreated?.(c)}async function x(){t({type:Y.SetCreatingProject,isCreating:!1});let e=r.current;e&&(Dc(t,e,i,{isError:!o}),t({type:Y.RemoveProcessingThread,threadId:e.threadId})),Si();let n=await lo();t({type:Y.SetProjects,projects:n.projects,cloneRootPath:n.cloneRootPath}),t({type:Y.SetProjectsLoading,projectsLoading:!1}),await b(n)}function S(e){ew.error(`Failed to ${n.logTag}:`,e),t({type:Y.SetCreatingProject,isCreating:!1});let o=r.current,c=`${n.catchErrorPrefix}: ${e instanceof Error?e.message:`Unknown error`}`;o?(s(c),Dc(t,o,i,{isError:!0}),t({type:Y.RemoveProcessingThread,threadId:o.threadId})):a({title:`Project Creation Failed`,description:c,variant:`destructive`})}try{let e=await n.apiCall();if(!e){t({type:Y.SetCreatingProject,isCreating:!1}),await u();return}await Fc(e,y),await x()}catch(e){S(e)}},[t,u,e?.onProjectCreated,a]),m=(0,Z.useCallback)(async(e,t)=>{let n=e.split(`/`).pop()?.replace(`.git`,``)??`project`;await p({apiCall:()=>no(e,t),initialMessage:`Cloning repository: ${e}...`,optimisticProjectName:n,gitUrl:e,mode:`clone`,includeThreadPath:!0,handleSetupScript:!0,logTag:`create project`,catchErrorPrefix:`Failed to create project`})},[p]),h=(0,Z.useCallback)(async(e,t,n)=>{await p({apiCall:()=>wa(e,t,n),initialMessage:`Creating app "${e}"...`,optimisticProjectName:e,mode:`webapp`,handleSetupScript:!1,logTag:`create web app`,catchErrorPrefix:`Failed to create web app`})},[p]),g=(0,Z.useCallback)(async e=>{await p({apiCall:()=>ba(e),initialMessage:`Creating folder "${e}"...`,optimisticProjectName:e,mode:`folder`,handleSetupScript:!1,logTag:`create folder`,catchErrorPrefix:`Failed to create folder`})},[p]),_=(0,Z.useCallback)(async(e,t,n)=>{let r=t.replace(/\.zip$/i,``)||`project`;await p({apiCall:()=>zo(e,t,n),initialMessage:n?`Replacing project from "${t}"...`:`Creating project from "${t}"...`,optimisticProjectName:r,mode:`zip`,handleSetupScript:!1,logTag:`create project from zip`,catchErrorPrefix:`Failed to create project from zip`})},[p]),v=(0,Z.useCallback)(async(r,i)=>{let o={current:null};try{let s=n.find(e=>e.projectId===r),c=s?Ke(s):`project`;e?.onThreadCreateStart?.(r);let l=i??(()=>{let e=s?.threads.map(e=>e.title)??[],t=/^thread-(\d+)$/i,n=0;for(let r of e){let e=r.match(t);e&&(n=Math.max(n,parseInt(e[1],10)))}return`thread-${n+1}`})(),d=await so(r,i);if(!d){await u();return}let f=!0,p,m=`Creating thread "${l}"...`,h=[{type:`system`,content:m}],g=`${m}\n`;function _(e,n){let r={type:n,content:e};g+=`${e}\n`;let i=o.current;if(!i){h.push(r);return}t({type:Y.AppendTerminalLine,threadId:i.threadId,line:r}),Ac(t,i.toolCallId,i.threadId,`${e}\n`)}function v(e){t({type:Y.AddCreatingThread,projectId:r,threadId:e,title:l}),t({type:Y.AddProcessingThread,threadId:e}),t({type:Y.ClearTerminalOutput,threadId:e});for(let n of h)t({type:Y.AppendTerminalLine,threadId:e,line:n});h.length=0;let n=Oc({threadId:e,projectId:r,projectName:c});o.current=n,xc(t,n,g)}function y(e){t({type:Y.RemoveCreatingThread,projectId:r,threadId:e}),t({type:Y.SelectProject,projectId:r})}try{await Fc(d,e=>{if(!e||typeof e!=`object`){typeof e==`string`&&ew.error(`Failed to parse thread event`,e);return}let t=e;if(t.type===`progress`)!o.current&&typeof t.threadId==`string`&&v(t.threadId),_(typeof t.message==`string`?t.message:``,`output`);else if(t.type===`complete`){let e=t.thread;typeof e?.currentBranch==`string`&&(p=e.currentBranch)}else if(t.type===`error`){let e=typeof t.message==`string`?t.message:`Unknown error`;_(`Error: ${e}`,`error`),ew.error(`Thread creation error:`,e),a({title:`Thread Creation Failed`,description:e,variant:`destructive`}),f=!1}});let e=o.current;e&&(Dc(t,e,g,{branch:p,isError:!f}),t({type:Y.RemoveProcessingThread,threadId:e.threadId}),f||y(e.threadId)),Si(),await u()}catch(e){let n=e instanceof Error?e.message:String(e),r=o.current;throw r&&(_(`Error: ${n}`,`error`),Dc(t,r,g,{isError:!0}),t({type:Y.RemoveProcessingThread,threadId:r.threadId}),y(r.threadId)),a({title:`Thread Creation Failed`,description:n,variant:`destructive`}),e}}catch(e){ew.error(`Failed to create thread:`,e);let n=`Failed to create thread: ${e instanceof Error?e.message:`Unknown error`}`;throw t({type:Y.AppendTerminalLine,line:{type:`error`,content:n}}),a({variant:`destructive`,title:`Thread Creation Failed`,description:n}),e}},[u,t,n,a,e?.onThreadCreateStart]),y=(0,Z.useCallback)(async(e,r)=>{t({type:Y.AddDeletingThread,threadId:r}),t({type:Y.ClearChatInputDraft,threadId:r});let a=n.find(t=>t.projectId===e),s=a?Ke(a):`project`,c=a?.threads.find(e=>e.threadId===r)?.title??`thread`,l=i===r,d=l?wc({threadId:r,projectId:e,projectName:s}):null,f=``,p=!0;function m(e){e.trim()&&(f+=`${e}\n`,d&&Ac(t,d.toolCallId,d.threadId,`${e}\n`))}d&&Tc(t,d,`Deleting thread "${c}"...\n`);try{let n=await Ii(e,r);n&&await Fc(n,t=>{if(!t||typeof t!=`object`)return;let n=t;if(n.type===`progress`)m(typeof n.message==`string`?n.message:``);else if(n.type===`error`){let t=typeof n.message==`string`?n.message:`Unknown error`,i=QC(n);m(`Error: ${t}`),$C(ew,o,{projectId:e,threadId:r,threadTitle:c,message:t,progressOutput:f,...i}),p=!1}}),d&&Dc(t,d,f,{isError:!p}),p&&(t({type:Y.ClearThreadCreationSummary,threadId:r}),t({type:Y.RemoveThread,projectId:e,threadId:r})),l&&p&&t({type:Y.ClearSelection}),await u(),t({type:Y.ConfigUpdated})}catch(n){let i=n instanceof Error?n.message:`Unknown error`,a=QC(n);if(eo(i)){m(`Deletion is still running on the server. Open Workspaces to refresh the list.`),d&&Dc(t,d,f,{isError:!1}),ew.info(`Thread deletion stream disconnected before completion`,{projectId:e,threadId:r,message:i,...a});return}if(i.toLowerCase().includes(`not found`)){t({type:Y.RemoveThread,projectId:e,threadId:r}),await u();return}m(`Error: ${i}`),d&&Dc(t,d,f,{isError:!0}),$C(ew,o,{projectId:e,threadId:r,threadTitle:c,message:i,progressOutput:f,cause:n,...a})}finally{t({type:Y.RemoveDeletingThread,threadId:r})}},[u,i,t,a,o,n]),b=(0,Z.useCallback)(async(e,r)=>{t({type:Y.AddDeletingProject,projectId:e});let i=n.find(t=>t.projectId===e),a=i?.threads.map(e=>e.threadId)??[];for(let e of a)t({type:Y.AddDeletingThread,threadId:e}),t({type:Y.ClearChatInputDraft,threadId:e});let c=0;r?.({projectId:e,projectName:i?.name??``,step:c,status:`progressing`});let l=window.setInterval(()=>{c=Math.min(c+1,zC.length-1),r?.({projectId:e,projectName:i?.name??``,step:c,status:`progressing`})},450);try{await ts(e),window.clearInterval(l),t({type:Y.CloseProjectPanel}),t({type:Y.SelectThread,threadId:``,projectId:``}),await u(),t({type:Y.ConfigUpdated}),s.pathname.startsWith(`/settings/`)&&o(`/`),r?.({projectId:e,projectName:i?.name??``,step:c,status:`done`})}catch(t){throw window.clearInterval(l),ew.error(`Failed to delete project:`,t),r?.({projectId:e,projectName:i?.name??``,step:c,status:`error`,errorMessage:t instanceof Error?t.message:`Failed to delete project`}),t}finally{t({type:Y.RemoveDeletingProject,projectId:e});for(let e of a)t({type:Y.RemoveDeletingThread,threadId:e})}},[u,n,t,o,s]),x=(0,Z.useCallback)(async e=>{let n=c;if(l(null),!n||!e)return;let{projectId:r,command:i,remainingScripts:a}=n,o=[i,...a||[]];try{t({type:Y.SetCreatingProject,isCreating:!0}),t({type:Y.SetTerminalOpen,open:!0}),t({type:Y.AppendTerminalLine,line:{type:`system`,content:`Installing dependencies for ${o.length} package${o.length===1?``:`s`}...`}});for(let e=0;e<o.length;e++){let n=o[e],i=n.match(/^cd "([^"]+)" && (.+)$/),a=i?i[1]:`root`;t({type:Y.AppendTerminalLine,line:{type:`system`,content:`Installing package ${e+1}/${o.length} in ${a}...`}}),t({type:Y.AppendTerminalLine,line:{type:`output`,content:`📦 Installing dependencies in ${a}: ${n}`}});let s=await yi(r,n,!0);s&&await Pc(s,{onOutput:e=>{t({type:Y.AppendTerminalLine,line:{type:`output`,content:e}})},onError:e=>{t({type:Y.AppendTerminalLine,line:{type:`error`,content:e}})}}),e<o.length-1&&(t({type:Y.AppendTerminalLine,line:{type:`system`,content:``}}),t({type:Y.AppendTerminalLine,line:{type:`system`,content:`---`}}),t({type:Y.AppendTerminalLine,line:{type:`system`,content:``}}))}t({type:Y.AppendTerminalLine,line:{type:`system`,content:`All dependencies installed successfully!`}}),t({type:Y.SetCreatingProject,isCreating:!1}),await u()}catch(e){t({type:Y.SetCreatingProject,isCreating:!1}),ew.error(`Failed to run setup script:`,e),t({type:Y.AppendTerminalLine,line:{type:`error`,content:`Failed to run setup script: ${e instanceof Error?e.message:`Unknown error`}`}})}},[c,t,u]);return{projects:n,selectedProjectId:r,selectedThreadId:i,refreshProjects:u,refreshWorkspaces:d,handleSelectThread:f,handleCreateProject:m,handleCreateWebApp:h,handleCreateFolder:g,handleCreateZip:_,handleOpenFolder:(0,Z.useCallback)(async()=>{await p({apiCall:ki,initialMessage:`Opening folder...`,optimisticProjectName:`Opening folder...`,mode:`folder`,handleSetupScript:!0,logTag:`open folder`,catchErrorPrefix:`Failed to open folder`})},[p]),handleOpenPath:(0,Z.useCallback)(async e=>{let t=e.split(/[/\\]/).filter(Boolean).pop()??`project`;await p({apiCall:()=>ls(e),initialMessage:`Opening folder: ${e}...`,optimisticProjectName:t,mode:`folder`,handleSetupScript:!0,logTag:`open path`,catchErrorPrefix:`Failed to open folder path`})},[p]),handleCreateThread:v,handleDeleteThread:y,confirmDeleteProject:b,pendingSetupScriptConfirmation:c,resolveSetupScriptConfirmation:x}}var cw;(function(e){e.Heavy=`HEAVY`,e.Medium=`MEDIUM`,e.Light=`LIGHT`})(cw||={});var lw;(function(e){e.Success=`SUCCESS`,e.Warning=`WARNING`,e.Error=`ERROR`})(lw||={});var uw=Og(`Haptics`,{web:()=>us(()=>import(`./web-JMCxQg4N.js`).then(e=>new e.HapticsWeb),[])});function dw(){return typeof window<`u`&&Za()}function fw(e=cw.Medium){dw()&&uw.impact({style:e}).catch(()=>{})}function pw(e){let t=(0,Q.c)(61),{projectId:n,onNewChat:r,isStartingNewChat:i,iconOnly:a,variant:o,size:s,className:c,buttonClassName:l,ariaLabel:u}=e,d=a===void 0?!1:a,f=o===void 0?`outline`:o,p=s===void 0?`sm`:s,{addWindow:m}=gc(),{handleCreateThread:h}=sw(),g;t[0]===r?g=t[1]:(g=function(){fw(),r()},t[0]=r,t[1]=g);let _=g,v;t[2]!==h||t[3]!==n?(v=function(){n&&(fw(),h(n,void 0))},t[2]=h,t[3]=n,t[4]=v):v=t[4];let y=v,b;t[5]===c?b=t[6]:(b=G(`inline-flex items-center`,c),t[5]=c,t[6]=b);let x=f===`outline`&&`border-r-0`,S;t[7]!==l||t[8]!==x?(S=G(l,`rounded-r-none`,x),t[7]=l,t[8]=x,t[9]=S):S=t[9];let C;t[10]!==u||t[11]!==d?(C=d?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(Se,{className:`h-3 w-3`}),(0,$.jsx)(`span`,{className:`sr-only`,children:u??`New Chat`})]}):`New Chat`,t[10]=u,t[11]=d,t[12]=C):C=t[12];let w;t[13]!==_||t[14]!==i||t[15]!==p||t[16]!==S||t[17]!==C||t[18]!==f?(w=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(Hr,{variant:f,size:p,disabled:i,className:S,onClick:_,children:C})}),t[13]=_,t[14]=i,t[15]=p,t[16]=S,t[17]=C,t[18]=f,t[19]=w):w=t[19];let T=i?`Starting Chat`:u??`New Chat`,E;t[20]===T?E=t[21]:(E=(0,$.jsx)(Fr,{children:T}),t[20]=T,t[21]=E);let D;t[22]!==w||t[23]!==E?(D=(0,$.jsx)(Zo,{children:(0,$.jsxs)(Mi,{children:[w,E]})}),t[22]=w,t[23]=E,t[24]=D):D=t[24];let O=f===`outline`&&`border-l-0`,k=d?`w-5 px-0`:`px-2`,A;t[25]!==l||t[26]!==O||t[27]!==k?(A=G(l,`rounded-l-none`,O,k),t[25]=l,t[26]=O,t[27]=k,t[28]=A):A=t[28];let j=d?`h-3 w-3`:`h-4 w-4`,N;t[29]===j?N=t[30]:(N=(0,$.jsx)(tn,{className:j}),t[29]=j,t[30]=N);let P;t[31]!==i||t[32]!==p||t[33]!==A||t[34]!==N||t[35]!==f?(P=(0,$.jsx)(gl,{asChild:!0,children:(0,$.jsx)(Hr,{variant:f,size:p,disabled:i,className:A,"aria-label":`New chat options`,children:N})}),t[31]=i,t[32]=p,t[33]=A,t[34]=N,t[35]=f,t[36]=P):P=t[36];let F;t[37]===m?F=t[38]:(F=()=>m(`chat`),t[37]=m,t[38]=F);let I;t[39]===Symbol.for(`react.memo_cache_sentinel`)?(I=(0,$.jsx)(dt,{}),t[39]=I):I=t[39];let L;t[40]===F?L=t[41]:(L=(0,$.jsxs)(xl,{onSelect:F,children:[I,`New Chat Window`]}),t[40]=F,t[41]=L);let R=!n,z;t[42]===Symbol.for(`react.memo_cache_sentinel`)?(z=(0,$.jsx)(M,{}),t[42]=z):z=t[42];let B;t[43]!==y||t[44]!==R?(B=(0,$.jsxs)(xl,{disabled:R,onSelect:y,children:[z,`New Workspace`]}),t[43]=y,t[44]=R,t[45]=B):B=t[45];let V;t[46]===Symbol.for(`react.memo_cache_sentinel`)?(V=(0,$.jsx)(Tl,{}),t[46]=V):V=t[46];let H;t[47]===Symbol.for(`react.memo_cache_sentinel`)?(H=(0,$.jsx)(Be,{}),t[47]=H):H=t[47];let ee;t[48]===_?ee=t[49]:(ee=(0,$.jsxs)(xl,{onSelect:_,children:[H,`Clear Chat`]}),t[48]=_,t[49]=ee);let te;t[50]!==L||t[51]!==B||t[52]!==ee?(te=(0,$.jsxs)(bl,{align:`start`,className:`min-w-44`,children:[L,B,V,ee]}),t[50]=L,t[51]=B,t[52]=ee,t[53]=te):te=t[53];let ne;t[54]!==P||t[55]!==te?(ne=(0,$.jsxs)(hl,{children:[P,te]}),t[54]=P,t[55]=te,t[56]=ne):ne=t[56];let re;return t[57]!==D||t[58]!==ne||t[59]!==b?(re=(0,$.jsxs)(`div`,{className:b,children:[D,ne]}),t[57]=D,t[58]=ne,t[59]=b,t[60]=re):re=t[60],re}var mw=(0,Z.createContext)(null);function hw({children:e}){let[t,n]=(0,Z.useState)(null),[r,i]=(0,Z.useState)(null),[a,o]=(0,Z.useState)(`idle`),[s,c]=(0,Z.useState)(null),[l,u]=(0,Z.useState)(!1),[d,f]=(0,Z.useState)(!1),[p,m]=(0,Z.useState)(null),[h,g]=(0,Z.useState)(null),_=(0,Z.useRef)(!1);function v(e){n(t=>{let n=typeof e==`function`?e(t):e;return n&&(i(n),f(!1)),n})}let y=(0,Z.useCallback)(e=>new Promise(t=>{g({...e,resolve:t})}),[]),b=(0,Z.useCallback)(()=>{g(null)},[]),x=a===`running`,S=a===`starting`||a===`stopping`;function C(e){o(t=>(typeof e==`function`?e(x):e)?`running`:t===`running`||t===`starting`?`idle`:t)}function w(e){o(t=>(typeof e==`function`?e(S):e)?t===`stopping`?`stopping`:`starting`:t===`starting`?l?`running`:t:t===`stopping`?`idle`:t)}let T=(0,Z.useMemo)(()=>({devServerUrl:t,setDevServerUrl:v,lastDevServerUrl:r,devServerState:a,setDevServerState:o,devServerFailureReason:s,setDevServerFailureReason:c,devServerProcessAlive:l,setDevServerProcessAlive:u,devServerStopped:d,setDevServerStopped:f,devServerProjectId:p,setDevServerProjectId:m,devServerStopRequestedRef:_,portConflictPrompt:h,requestPortConflictConfirmation:y,clearPortConflictPrompt:b,devServerRunning:x,devServerLoading:S,setDevServerRunning:C,setDevServerLoading:w}),[t,r,a,s,l,d,p,h,y,b,x,S]);return(0,$.jsx)(mw.Provider,{value:T,children:e})}function gw(){let e=(0,Z.useContext)(mw);if(!e)throw Error(`useDevServer must be used within a DevServerProvider`);return e}async function _w(e){if(e.useBuiltInBrowser){e.onTerminalMessage?.(`✓ Server running at: ${e.url}`),e.setDevServerUrl(e.url),e.openBrowserPanel();return}e.onTerminalMessage?.(`✓ Server running at: ${e.url} (opened in your browser)`),await e.openExternalUrl(e.url)}function vw(e){return typeof e==`object`&&!!e&&e.type===`url`&&typeof e.url==`string`}var yw=Z.forwardRef((e,t)=>{let n=(0,Q.c)(9),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let a;n[3]===r?a=n[4]:(a=G(`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`,r),n[3]=r,n[4]=a);let o;return n[5]!==i||n[6]!==t||n[7]!==a?(o=(0,$.jsx)(`textarea`,{className:a,ref:t,...i}),n[5]=i,n[6]=t,n[7]=a,n[8]=o):o=n[8],o});yw.displayName=`Textarea`;var bw=Ut(`app.commands-dialog.ui`),xw=`Play.Square.RotateCcw.Terminal.Bug.TestTube.FlaskConical.Wrench.Hammer.Zap.Search.FileCode.Code2.History.Settings.Activity.Cpu.Server.Database.Package.Box.GitBranch.Layers.ExternalLink.Eye.Shield.Flag.Star.Monitor.Smartphone`.split(`.`);function Sw({open:e,onOpenChange:t,projectId:n,commands:r,onRefresh:i,initialCommand:a}){let[o,s]=(0,Z.useState)(null),[c,l]=(0,Z.useState)(!1),[u,d]=(0,Z.useState)(!1),[f,p]=(0,Z.useState)([]),[m,h]=(0,Z.useState)(0),[g,_]=(0,Z.useState)(!1),v=(0,Z.useRef)(null),y=(0,Z.useRef)(null);(0,Z.useEffect)(()=>{!e||!a||(s({id:je(),icon:`Play`,...a}),d(!1),p([]))},[a,e]);let b=()=>{s({id:je(),name:``,icon:`Play`,commandLine:``}),d(!1),p([])},x=e=>{s({...e}),d(!1),p([])},S=async()=>{try{_(!0);let e=await Ga(n);p(e.scripts),h(0),d(e.scripts.length>0)}catch(e){bw.error(`Failed to load package scripts:`,e),ac({title:`Error`,description:`Failed to load package scripts`,variant:`destructive`})}finally{_(!1)}},C=e=>{s(t=>t?{...t,name:e.name,commandLine:e.commandLine,relativeFolder:e.relativePath||``}:null),d(!1),p([]),v.current?.focus()},w=e=>{u&&(e.key===`ArrowDown`?(e.preventDefault(),h(e=>e<f.length-1?e+1:e)):e.key===`ArrowUp`?(e.preventDefault(),h(e=>e>0?e-1:0)):e.key===`Enter`?(e.preventDefault(),m<f.length&&C(f[m])):e.key===`Escape`&&(e.preventDefault(),d(!1),p([])))};(0,Z.useEffect)(()=>{let e=e=>{y.current&&!y.current.contains(e.target)&&(d(!1),p([]))};return u&&document.addEventListener(`mousedown`,e),()=>{document.removeEventListener(`mousedown`,e)}},[u]);let T=async e=>{try{await os(n,e),ac({title:`Success`,description:`Command deleted`}),i()}catch{ac({title:`Error`,description:`Failed to delete command`,variant:`destructive`})}};return(0,$.jsx)(Ni,{open:e,onOpenChange:t,children:(0,$.jsxs)(Ir,{className:`sm:max-w-[500px]`,children:[(0,$.jsxs)(Dr,{children:[(0,$.jsx)(qa,{children:`Project Commands`}),(0,$.jsx)(_i,{children:`Manage custom commands for this project.`})]}),(0,$.jsx)(`div`,{className:`py-4 flex flex-col gap-4`,children:o?(0,$.jsxs)(`div`,{className:`p-4 border rounded-lg bg-muted/30 flex flex-col gap-4 animate-in slide-in-from-top-2`,children:[(0,$.jsxs)(`div`,{className:`grid gap-2`,children:[(0,$.jsx)(da,{htmlFor:`name`,children:`Command Name`}),(0,$.jsx)(Qo,{id:`name`,value:o.name,onChange:e=>s({...o,name:e.target.value}),placeholder:`e.g. Run Tests`,autoComplete:`off`})]}),(0,$.jsxs)(`div`,{className:`grid gap-2 relative`,children:[(0,$.jsx)(da,{htmlFor:`commandLine`,children:`Command Line`}),(0,$.jsxs)(`div`,{className:`relative`,children:[(0,$.jsx)(yw,{ref:v,id:`commandLine`,value:o.commandLine,onChange:e=>s({...o,commandLine:e.target.value}),onKeyDown:w,placeholder:`e.g. npm test`,className:`font-mono text-base min-h-[100px] resize-none pr-10`}),(0,$.jsx)(Zo,{children:(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(Hr,{type:`button`,variant:`ghost`,size:`icon`,className:`absolute right-2 top-2 h-6 w-6 text-muted-foreground transition-colors`,onClick:()=>void S(),disabled:g,children:(0,$.jsx)(tn,{className:`h-4 w-4`})})}),(0,$.jsx)(Fr,{children:(0,$.jsx)(`p`,{children:`Discover package scripts`})})]})})]}),u&&(0,$.jsx)(`div`,{ref:y,className:`absolute bottom-full left-0 right-0 mb-2 max-h-60 overflow-y-auto rounded-lg border border-border bg-popover shadow-lg z-50`,children:(0,$.jsxs)(`div`,{className:`p-2`,children:[(0,$.jsxs)(`div`,{className:G(U.dropdownGroupHeading,`px-2 py-1.5 border-b border-border/50 mb-1 flex items-center gap-2`),children:[(0,$.jsx)(tn,{className:`h-3 w-3`}),`Available Scripts `,g&&`(loading...)`]}),f.length>0?(()=>{let e={};f.forEach(t=>{e[t.relativePath]||(e[t.relativePath]=[]),e[t.relativePath].push(t)});let t=Object.keys(e).sort(),n=0;return t.map(t=>{let r=e[t].sort((e,t)=>e.name.localeCompare(t.name));return(0,$.jsxs)(`div`,{children:[(0,$.jsx)(`div`,{className:G(U.dropdownGroupHeading,`px-3 py-1.5 text-muted-foreground/70 bg-muted/30`),children:t}),r.map(e=>{let t=n===m;return n++,(0,$.jsxs)(`button`,{type:`button`,className:G(`flex w-full flex-col gap-1 rounded-lg mx-1 px-3 py-2 text-left transition-colors`,t?`bg-accent text-accent-foreground`:`text-popover-foreground hover:bg-accent/50`),onClick:()=>C(e),onMouseEnter:()=>h(n-1),children:[(0,$.jsx)(`span`,{className:`font-medium`,children:e.name}),(0,$.jsx)(`span`,{className:G(U.caption,`font-mono`),children:e.commandLine})]},e.commandLine)})]},t)})})():(0,$.jsx)(`div`,{className:G(U.caption,`px-3 py-4 text-center`),children:g?`Loading scripts...`:`No package scripts found`})]})})]}),(0,$.jsxs)(`div`,{className:`grid gap-2`,children:[(0,$.jsx)(da,{htmlFor:`relativeFolder`,children:`Relative Folder`}),(0,$.jsx)(Qo,{id:`relativeFolder`,value:o.relativeFolder??``,onChange:e=>s({...o,relativeFolder:e.target.value}),placeholder:`e.g. frontend, packages/api (optional)`,autoComplete:`off`}),(0,$.jsx)(`p`,{className:U.bodyMuted,children:`Folder path relative to project root where the command will be executed. Leave empty to run from project root.`})]}),(0,$.jsxs)(`div`,{className:`grid gap-2`,children:[(0,$.jsx)(da,{children:`Icon`}),(0,$.jsx)(Zo,{children:(0,$.jsx)(`div`,{className:`grid grid-cols-10 gap-1 p-2 bg-background rounded-md border border-border`,children:xw.map(e=>{let t=Wt[e]||ut;return(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(Hr,{variant:o.icon===e?`default`:`ghost`,size:`icon`,className:`h-8 w-8`,onClick:()=>s({...o,icon:e}),children:(0,$.jsx)(t,{className:`h-4 w-4`})})}),(0,$.jsx)(Fr,{children:e})]},e)})})})]}),(0,$.jsxs)(`div`,{className:`flex justify-end gap-2 mt-2`,children:[(0,$.jsxs)(Hr,{variant:`ghost`,size:`sm`,onClick:()=>s(null),children:[(0,$.jsx)(nt,{className:`h-4 w-4 mr-2`}),` Cancel`]}),(0,$.jsx)(Hr,{size:`sm`,onClick:async()=>{if(!o?.name||!o?.commandLine){ac({title:`Error`,description:`Name and Command Line are required`,variant:`destructive`});return}try{l(!0),await ka(n,o),ac({title:`Success`,description:`Command saved`}),s(null),i()}catch{ac({title:`Error`,description:`Failed to save command`,variant:`destructive`})}finally{l(!1)}},disabled:c,children:c?`Saving...`:`Save`})]})]}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(`div`,{className:`flex flex-col gap-2 max-h-[400px] overflow-y-auto pr-2`,children:[r.length===0&&(0,$.jsx)(`div`,{className:`text-center py-8 text-muted-foreground border-2 border-dashed rounded-lg`,children:`No commands defined yet.`}),r.map(e=>(0,$.jsxs)(`div`,{className:`flex items-center justify-between p-3 rounded-md border border-border bg-card hover:bg-muted/50 cursor-pointer group transition-colors`,onClick:()=>x(e),children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,$.jsx)(`div`,{className:`p-2 bg-muted rounded`,children:(0,$.jsx)(Wt[e.icon]||Ae,{className:`h-4 w-4`})}),(0,$.jsxs)(`div`,{className:`flex flex-col`,children:[(0,$.jsx)(`span`,{className:U.label,children:e.name}),(0,$.jsx)(`span`,{className:G(U.caption,`line-clamp-1 font-mono select-text`),children:e.commandLine})]})]}),(0,$.jsx)(`div`,{className:`flex items-center gap-1 opacity-0 group-hover:opacity-100 transition-opacity`,children:(0,$.jsx)(Hr,{variant:`ghost`,size:`icon`,className:`h-8 w-8 text-muted-foreground hover:bg-destructive hover:text-destructive-foreground transition-colors`,onClick:t=>{t.stopPropagation(),T(e.id)},children:(0,$.jsx)(He,{className:`h-4 w-4`})})})]},e.id))]}),(0,$.jsxs)(Hr,{variant:`outline`,className:`w-full border-dashed`,onClick:b,children:[(0,$.jsx)(Se,{className:`h-4 w-4 mr-2`}),` Add New Command`]})]})})]})})}function Cw(e){let t=e.match(/^cd\s+(.+?)\s+&&\s+(.+)$/);return t?{relativeFolder:t[1],commandLine:t[2]}:{commandLine:e}}function ww(e){let t=(0,Q.c)(10),{script:n,onPinClick:r}=e,i=`Add ${n.friendlyName} as a project command`,a;t[0]!==r||t[1]!==n?(a=e=>{e.stopPropagation(),r(n)},t[0]=r,t[1]=n,t[2]=a):a=t[2];let o;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,$.jsx)(ie,{className:`h-3.5 w-3.5`}),t[3]=o):o=t[3];let s;t[4]!==i||t[5]!==a?(s=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(Hr,{type:`button`,variant:`ghost`,size:`icon`,className:`ml-auto h-6 w-6 shrink-0 opacity-0 pointer-events-none transition-opacity can-hover:group-hover:opacity-100 can-hover:group-hover:pointer-events-auto focus-visible:opacity-100`,"aria-label":i,"data-script-pin":!0,onClick:a,children:o})}),t[4]=i,t[5]=a,t[6]=s):s=t[6];let c;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,$.jsx)(Fr,{children:`Add as project command`}),t[7]=c):c=t[7];let l;return t[8]===s?l=t[9]:(l=(0,$.jsxs)(Mi,{children:[s,c]}),t[8]=s,t[9]=l),l}function Tw({workspaceEntries:e,hasMultipleWorkspaces:t,runningScripts:n,onScriptClick:r,onPinClick:i}){return t?e.map(([e,t])=>(0,$.jsxs)(_l,{children:[(0,$.jsx)(vl,{children:e}),(0,$.jsx)(yl,{className:`max-h-[min(400px,80vh)] overflow-y-auto`,children:t.map(e=>(0,$.jsxs)(xl,{onClick:()=>{r(e)},className:`group gap-2`,children:[n.has(e.name)?(0,$.jsx)(ln,{className:`h-3 w-3 animate-spin shrink-0`}):(0,$.jsx)(`div`,{className:`h-3 w-3 shrink-0`}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:e.friendlyName}),(0,$.jsx)(ww,{script:e,onPinClick:i})]},e.name))})]},e)):e[0]?.[1].map(e=>(0,$.jsxs)(xl,{onClick:()=>{r(e)},className:`group gap-2`,children:[n.has(e.name)?(0,$.jsx)(ln,{className:`h-3 w-3 animate-spin shrink-0`}):(0,$.jsx)(`div`,{className:`h-3 w-3 shrink-0`}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:e.friendlyName}),(0,$.jsx)(ww,{script:e,onPinClick:i})]},e.name))}function Ew({workspaceEntries:e,hasMultipleWorkspaces:t,runningScripts:n,onScriptClick:r,onPinClick:i}){return t?e.map(([e,t])=>(0,$.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,$.jsx)(`div`,{className:`px-2 py-1 text-xs font-medium text-muted-foreground`,children:e}),t.map(e=>(0,$.jsxs)(`div`,{className:`group flex items-center rounded-sm hover:bg-accent`,children:[(0,$.jsxs)(`button`,{type:`button`,className:`flex min-w-0 flex-1 items-center gap-2 px-2 py-1.5 text-sm`,onClick:()=>{r(e)},children:[n.has(e.name)?(0,$.jsx)(ln,{className:`h-3 w-3 animate-spin shrink-0`}):(0,$.jsx)(`div`,{className:`h-3 w-3 shrink-0`}),(0,$.jsx)(`span`,{className:`truncate`,children:e.friendlyName})]}),(0,$.jsx)(ww,{script:e,onPinClick:i})]},e.name))]},e)):e[0]?.[1].map(e=>(0,$.jsxs)(`div`,{className:`group flex items-center rounded-sm hover:bg-accent`,children:[(0,$.jsxs)(`button`,{type:`button`,className:`flex min-w-0 flex-1 items-center gap-2 px-2 py-1.5 text-sm`,onClick:()=>{r(e)},children:[n.has(e.name)?(0,$.jsx)(ln,{className:`h-3 w-3 animate-spin shrink-0`}):(0,$.jsx)(`div`,{className:`h-3 w-3 shrink-0`}),(0,$.jsx)(`span`,{className:`truncate`,children:e.friendlyName})]}),(0,$.jsx)(ww,{script:e,onPinClick:i})]},e.name))}function Dw({threadId:e,layout:t=`bar`}){let n=Ks(),r=X(e=>e.projects).find(t=>t.threads.some(t=>t.threadId===e)),{openChatDockPanel:i}=Hd(),{setDevServerUrl:a}=gw(),o=mC(),[s,c]=(0,Z.useState)(null),[l,u]=(0,Z.useState)(new Set),[d,f]=(0,Z.useState)(null),p=(0,Z.useRef)(new Map);(0,Z.useEffect)(()=>((async()=>{try{let t=await Ea(e);if(t.length===0){c(null);return}c(t),u(new Set(t.filter(e=>e.isRunning).map(e=>e.name)))}catch{c(null)}})(),()=>{for(let e of p.current.values())e.abort();p.current.clear()}),[e]);function m(t){if(typeof t==`string`){n({type:Y.AppendTerminalLine,threadId:e,line:{type:`output`,content:t}});return}if(!(!t||typeof t!=`object`)){if(vw(t)){_w({url:t.url,useBuiltInBrowser:r?.useBuiltInBrowser!==!1,setDevServerUrl:a,openBrowserPanel:()=>{i(`browser`)},openExternalUrl:ui,onTerminalMessage:t=>{n({type:Y.AppendTerminalLine,threadId:e,line:{type:`system`,content:t}})}});return}`type`in t&&t.type===`error`&&`message`in t&&n({type:Y.AppendTerminalLine,threadId:e,line:{type:`error`,content:String(t.message)}})}}let h=async t=>{if(l.has(t.name)){let r=p.current.get(t.name);r&&(r.abort(),p.current.delete(t.name));try{await oo(e,t.name)}catch{}n({type:Y.AppendTerminalLine,threadId:e,line:{type:`system`,content:`■ ${t.friendlyName} stopped`}}),u(e=>{let n=new Set(e);return n.delete(t.name),n})}else{let r=new AbortController;p.current.set(t.name,r),u(e=>new Set([...e,t.name])),i(`terminal`),n({type:Y.AppendTerminalLine,threadId:e,line:{type:`system`,content:`▶ ${t.friendlyName}`}});try{let i=await Tr(e,t.name,t.command,{signal:r.signal});i&&await Fc(i,e=>{m(e)}),n({type:Y.AppendTerminalLine,threadId:e,line:{type:`system`,content:`✓ ${t.friendlyName} done`}})}catch{}finally{p.current.delete(t.name),u(e=>{let n=new Set(e);return n.delete(t.name),n})}}};if(!s)return null;let g=s.reduce((e,t)=>(e[t.workspace]||(e[t.workspace]=[]),e[t.workspace].push(t),e),{}),_=Object.entries(g).sort(([e],[t])=>e.localeCompare(t)).map(([e,t])=>[e,[...t].sort((e,t)=>e.friendlyName.localeCompare(t.friendlyName))]),v=_.length>1;function y(e){h(e)}function b(e){f(e)}function x(e){e||f(null)}function S(){f(null),n({type:Y.ConfigUpdated})}return t===`menu`?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(Zo,{children:(0,$.jsxs)(jp,{children:[(0,$.jsx)(Mp,{asChild:!0,children:(0,$.jsxs)(Hr,{variant:`ghost`,size:`sm`,className:`w-full justify-start gap-2`,children:[(0,$.jsx)(ge,{className:`h-4 w-4 shrink-0`}),`Project Scripts`]})}),(0,$.jsx)(Np,{align:`start`,className:`w-56 p-1`,children:(0,$.jsx)(Ew,{workspaceEntries:_,hasMultipleWorkspaces:v,runningScripts:l,onScriptClick:y,onPinClick:b})})]})}),r&&(0,$.jsx)(Sw,{open:d!==null,onOpenChange:x,projectId:r.projectId,commands:r.commands??[],onRefresh:S,initialCommand:d?{name:d.friendlyName,...Cw(d.command)}:void 0})]}):(0,$.jsxs)(hl,{children:[(0,$.jsx)(Zo,{children:(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(gl,{asChild:!0,children:(0,$.jsx)(Hr,{variant:`action`,size:`icon-md`,className:o?nl:void 0,children:(0,$.jsx)(ge,{})})})}),(0,$.jsx)(Fr,{children:`Project Scripts`})]})}),(0,$.jsx)(bl,{align:`end`,className:`min-w-[180px]`,children:(0,$.jsx)(Tw,{workspaceEntries:_,hasMultipleWorkspaces:v,runningScripts:l,onScriptClick:y,onPinClick:b})}),r&&(0,$.jsx)(Sw,{open:d!==null,onOpenChange:x,projectId:r.projectId,commands:r.commands??[],onRefresh:S,initialCommand:d?{name:d.friendlyName,...Cw(d.command)}:void 0})]})}function Ow({layout:e=`bar`,threadId:t}){let n=X(e=>e.selectedProjectId),r=X(e=>e.selectedThreadId),i=X(e=>e.projects),a=Ks(),{openChatDockPanel:o}=Hd(),{setDevServerUrl:s}=gw(),c=mC(),[l,u]=(0,Z.useState)(new Set),d=(0,Z.useRef)(new Map),f=t??r,p=i.find(e=>e.projectId===n),m=p?.commands??[];(0,Z.useEffect)(()=>()=>{let e=d.current;for(let t of e.values())t.abort();e.clear()},[f]);function h(e){if(f){if(typeof e==`string`){a({type:Y.AppendTerminalLine,threadId:f,line:{type:`output`,content:e}});return}if(!(!e||typeof e!=`object`)){if(vw(e)){_w({url:e.url,useBuiltInBrowser:p?.useBuiltInBrowser!==!1,setDevServerUrl:s,openBrowserPanel:()=>{o(`browser`)},openExternalUrl:ui,onTerminalMessage:e=>{a({type:Y.AppendTerminalLine,threadId:f,line:{type:`system`,content:e}})}});return}`type`in e&&e.type===`error`&&`message`in e&&a({type:Y.AppendTerminalLine,threadId:f,line:{type:`error`,content:String(e.message)}})}}}async function g(e){if(!f)return;if(l.has(e.id)){let t=d.current.get(e.id);t&&(t.abort(),d.current.delete(e.id));try{await oo(f,e.id)}catch{}a({type:Y.AppendTerminalLine,threadId:f,line:{type:`system`,content:`■ ${e.name} stopped`}}),u(t=>{let n=new Set(t);return n.delete(e.id),n});return}let t=new AbortController;d.current.set(e.id,t),u(t=>new Set([...t,e.id])),o(`terminal`),a({type:Y.AppendTerminalLine,threadId:f,line:{type:`system`,content:`▶ ${e.name}`}});try{let n=await Tr(f,e.id,e.commandLine,{signal:t.signal,relativeFolder:e.relativeFolder});n&&await Fc(n,e=>{h(e)}),t.signal.aborted||a({type:Y.AppendTerminalLine,threadId:f,line:{type:`system`,content:`✓ ${e.name} done`}})}catch{}finally{d.current.delete(e.id),u(t=>{let n=new Set(t);return n.delete(e.id),n})}}return!n||m.length===0?null:e===`menu`?(0,$.jsx)($.Fragment,{children:m.map(e=>{let t=l.has(e.id),n=Wt[e.icon]||Ae;return(0,$.jsx)(Zo,{children:(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(Hr,{variant:`ghost`,size:`sm`,className:G(`w-full justify-start gap-2`,t&&`text-muted-foreground opacity-80`),onClick:()=>g(e),children:[(0,$.jsxs)(`span`,{className:`relative inline-flex items-center justify-center`,children:[t&&(0,$.jsx)(`span`,{"aria-hidden":!0,className:`pointer-events-none absolute inset-[-8px] rounded-full border-2 border-brand/30 border-t-brand animate-spin`}),(0,$.jsx)(n,{className:G(`h-4 w-4 shrink-0`,t&&`opacity-60`)})]}),e.name]})}),(0,$.jsx)(Fr,{side:`right`,children:(0,$.jsxs)(`div`,{className:`flex flex-col gap-0.5`,children:[(0,$.jsx)(`span`,{className:`font-medium`,children:e.name}),(0,$.jsx)(`span`,{className:`text-[10px] opacity-70 font-mono whitespace-pre-wrap max-w-[300px] max-h-[100px] overflow-y-auto`,children:e.commandLine}),t&&(0,$.jsx)(`span`,{className:`text-[10px] text-primary font-medium`,children:`Click to stop`})]})})]})},e.id)})}):(0,$.jsx)(`div`,{className:`flex items-center gap-1`,children:(0,$.jsx)(Zo,{children:m.map(e=>{let t=l.has(e.id),n=Wt[e.icon]||Ae;return(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(Hr,{variant:`action`,size:`icon-md`,className:G(c&&!t&&`scenic-chrome-button hover:!bg-[hsl(var(--scenic-foreground))] hover:!text-[hsl(var(--scenic-foreground-inverse))]`,t&&`text-muted-foreground opacity-80`),onClick:()=>g(e),children:(0,$.jsxs)(`span`,{className:`relative inline-flex items-center justify-center`,children:[t&&(0,$.jsx)(`span`,{"aria-hidden":!0,className:`pointer-events-none absolute inset-[-8px] rounded-full border-2 border-brand/30 border-t-brand animate-spin`}),(0,$.jsx)(n,{className:G(t&&`opacity-60`)})]})})}),(0,$.jsx)(Fr,{children:(0,$.jsxs)(`div`,{className:`flex flex-col gap-0.5`,children:[(0,$.jsx)(`span`,{className:`font-medium`,children:e.name}),(0,$.jsx)(`span`,{className:`text-[10px] opacity-70 font-mono whitespace-pre-wrap max-w-[300px] max-h-[100px] overflow-y-auto`,children:e.commandLine}),t&&(0,$.jsx)(`span`,{className:`text-[10px] text-primary font-medium`,children:`Click to stop`})]})})]},e.id)})})})}var kw=Ut(`app.task-agent-run.ui`);async function Aw(e,t){let n=await Ur(t),r=n.model,i=n.modelProvider;if(r&&i)return{model:r,provider:i};try{let t=(await Va(`api/threads?projectId=${encodeURIComponent(e)}`)||[]).map(e=>{let t=e;return{model:t.model??void 0,modelProvider:t.modelProvider??void 0}}).find(e=>e.model&&e.modelProvider);if(t?.model&&t.modelProvider)return{model:t.model,provider:t.modelProvider}}catch(e){kw.error(`Failed to get project threads:`,e)}return null}function jw(e,t,n,r){e({type:Y.SetProjectModel,threadId:t,model:{id:n,provider:r,name:n,description:``}}),Qa(t,{model:n,modelProvider:r})}async function Mw(e,t,n,r,i,a){i||a(await B_(e,t.id,{status:n,working:!0,threadId:r}))}function Nw(e){return!e.hasChanges&&e.defaultBranchBehind>0}function Pw(e){return e.prExists&&e.prState===`OPEN`&&!e.hasChanges&&!e.hasUnpushedCommits}function Fw(e){return e.hasUnpushedCommits&&e.prExists}function Iw(e,t){return t?`Creating PR`:e.hasChanges?`Commit`:Fw(e)?`Update PR`:Pw(e)?`Open PR`:e.commitsAheadOfDefault&&!e.prExists&&!e.hasChanges?`Create PR`:Nw(e)?`Sync`:`Commit`}function Lw(e,t,n=!1){return t||n||e.hasChanges||Fw(e)||Pw(e)||e.commitsAheadOfDefault&&!e.prExists&&!e.hasChanges||!e.hasChanges&&!e.hasUnpushedCommits&&!Nw(e)?null:Nw(e)?(0,$.jsx)(gt,{className:`h-3.5 w-3.5`}):(0,$.jsx)(g,{className:`h-3.5 w-3.5`})}function Rw(e){if(e.hasChanges)return e.changedFilesCount>0?`Commit ${e.changedFilesCount} changed file${e.changedFilesCount===1?``:`s`}`:`No changes to commit`;if(Fw(e))return`Update pull request with unpushed commits`;if(Pw(e))return`View pull request in GitHub`;if(e.commitsAheadOfDefault&&!e.prExists&&!e.hasChanges)return`Create pull request for committed changes`;if(Nw(e)){let t=e.defaultBranch??`main`,n=`${e.defaultBranchBehind} commit${e.defaultBranchBehind===1?``:`s`} behind origin/${t}`,r=e.defaultBranchAhead>0?`, ${e.defaultBranchAhead} commit${e.defaultBranchAhead===1?``:`s`} ahead`:``;return e.currentBranch===e.defaultBranch?`Your branch is ${n}${r}. Click to pull the latest changes.`:`Your branch "${e.currentBranch}" is ${n}${r}. Click to rebase onto the latest ${t}.`}return`No actions available`}function zw(e,t,n=!1){return t||n?!0:Pw(e)||e.commitsAheadOfDefault&&!e.prExists&&!e.hasChanges||Nw(e)?!1:!e.hasChanges&&!e.hasUnpushedCommits}function Bw(e){return e.hasChanges||Pw(e)||Fw(e)||Nw(e)||e.commitsAheadOfDefault&&!e.prExists&&!e.hasChanges}var Vw=`flex items-center rounded-full frosted-surface text-foreground shadow-md backdrop-blur-sm transition-colors hover:bg-foreground hover:text-background dark:hover:bg-primary dark:hover:text-primary-foreground`,Hw=`flex items-center rounded-full bg-transparent scenic-chrome-button shadow-none backdrop-blur-none`,Uw=`h-10`,Ww=`max-w-[12rem] justify-start gap-1.5 px-3`,Gw=`h-3.5 w-3.5 shrink-0 opacity-60`;function Kw(e){let t=(0,Q.c)(104),{branchStatus:n,remoteUrl:r,hasRemoteBranch:i,hasUnpushedCommits:a,canCreateRepo:o,repoUrl:s,isRefreshing:c,isCreatingPR:l,hasChanges:u,commitsAheadOfDefault:d,prExists:f,defaultBranch:p,defaultBranchAhead:m,defaultBranchBehind:h,gitUser:_,isDirectCommitMode:v,autoGenerateCommitMessage:y,isLoading:b,isLoadingHistory:x,isQuickCommitting:S,onFetch:C,onPull:w,onPush:T,onOpenHistory:E,onCreatePR:O,onCreateRepo:k,onViewInGitHub:A,onQuickCommit:j,onSyncWithDefault:M,onOpenChange:N,open:P,layout:F}=e,I=l===void 0?!1:l,L=F===void 0?`bar`:F,R=!!p&&!!r&&h>0,z=!u&&!b,B;t[0]!==I||t[1]!==c?(B=I||c?(0,$.jsx)(ln,{className:`h-4 w-4 shrink-0 animate-spin`}):(0,$.jsx)(Yt,{className:`h-4 w-4 shrink-0`}),t[0]=I,t[1]=c,t[2]=B):B=t[2];let H=B,ee;t[3]!==I||t[4]!==b||t[5]!==c||t[6]!==L||t[7]!==H?(ee=(0,$.jsx)(gl,{asChild:!0,children:L===`sidebar`?(0,$.jsx)(Hr,{variant:`ghost`,size:`icon-sm`,className:`shrink-0 text-muted-foreground`,disabled:b||I,"aria-label":`Git Ops`,children:H}):L===`bar`?(0,$.jsx)(`button`,{type:`button`,className:`flex h-full shrink-0 items-center rounded-r-full pr-3 pl-0.5 disabled:opacity-50`,disabled:b||I,"aria-label":`Git Ops`,children:I||c?(0,$.jsx)(ln,{className:G(Gw,`animate-spin`)}):(0,$.jsx)(Yt,{className:Gw})}):(0,$.jsxs)(Hr,{variant:`outline`,size:`sm`,className:`h-8 w-full justify-start gap-2 rounded-md px-1`,disabled:b||I,children:[(0,$.jsx)(`span`,{children:`Git Ops`}),I||c?(0,$.jsx)(ln,{className:`h-3.5 w-3.5 animate-spin`}):(0,$.jsx)(Yt,{className:`h-3.5 w-3.5`})]})}),t[3]=I,t[4]=b,t[5]=c,t[6]=L,t[7]=H,t[8]=ee):ee=t[8];let te=L===`sidebar`?`start`:`end`,ne;t[9]!==n||t[10]!==r?(ne=n===`Behind`&&(0,$.jsxs)(`div`,{className:G(U.compact,`px-2 py-1 text-amber-600`),children:[`Branch is behind `,r?`origin`:`remote`]}),t[9]=n,t[10]=r,t[11]=ne):ne=t[11];let ie;t[12]===_?ie=t[13]:(ie=_&&(0,$.jsxs)(`div`,{className:G(U.compact,`px-2 py-1 text-muted-foreground`),children:[(0,$.jsx)(`span`,{className:`font-medium`,children:`User:`}),` `,_]}),t[12]=_,t[13]=ie);let ae;t[14]===Symbol.for(`react.memo_cache_sentinel`)?(ae=(0,$.jsx)(Tl,{}),t[14]=ae):ae=t[14];let oe;t[15]!==z||t[16]!==p||t[17]!==m||t[18]!==h||t[19]!==u||t[20]!==M||t[21]!==R?(oe=R&&(0,$.jsx)(Zo,{children:(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(xl,{onClick:()=>{z&&M()},className:z?``:`opacity-50 cursor-not-allowed`,children:[(0,$.jsx)(D,{className:`h-3.5 w-3.5 mr-2`}),`Sync with `,p,(0,$.jsxs)(`span`,{className:`ml-auto flex items-center gap-2 pl-3 text-xs tabular-nums text-muted-foreground`,children:[m>0&&(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-0.5`,children:[(0,$.jsx)(V,{className:`h-3 w-3`}),m]}),h>0&&(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-0.5`,children:[(0,$.jsx)(gt,{className:`h-3 w-3`}),h]})]})]})}),(0,$.jsx)(Fr,{side:`right`,children:u?`Commit or stash changes before syncing with the default branch`:`Pull latest changes from origin/${p} onto your current branch`})]})}),t[15]=z,t[16]=p,t[17]=m,t[18]=h,t[19]=u,t[20]=M,t[21]=R,t[22]=oe):oe=t[22];let se;t[23]!==y||t[24]!==u||t[25]!==b||t[26]!==S||t[27]!==j?(se=u&&y&&(0,$.jsx)(Zo,{children:(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(xl,{onClick:j,disabled:b||S,children:[S?(0,$.jsx)(ln,{className:`h-3.5 w-3.5 mr-2 animate-spin`}):(0,$.jsx)(Ye,{className:`h-3.5 w-3.5 mr-2`}),`Quick Commit`,(0,$.jsx)(El,{children:`⌘⇧C`})]})}),(0,$.jsx)(Fr,{side:`right`,children:`Generate the commit message and commit`})]})}),t[23]=y,t[24]=u,t[25]=b,t[26]=S,t[27]=j,t[28]=se):se=t[28];let ce;t[29]===Symbol.for(`react.memo_cache_sentinel`)?(ce=(0,$.jsx)(Rt,{className:`h-3.5 w-3.5 mr-2`}),t[29]=ce):ce=t[29];let le;t[30]!==b||t[31]!==C?(le=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(xl,{onClick:C,disabled:b,children:[ce,`Fetch`]})}),t[30]=b,t[31]=C,t[32]=le):le=t[32];let ue;t[33]===Symbol.for(`react.memo_cache_sentinel`)?(ue=(0,$.jsx)(Fr,{side:`right`,children:`Download latest information from remote without merging changes`}),t[33]=ue):ue=t[33];let W;t[34]===le?W=t[35]:(W=(0,$.jsx)(Zo,{children:(0,$.jsxs)(Mi,{children:[le,ue]})}),t[34]=le,t[35]=W);let de;t[36]!==i||t[37]!==b||t[38]!==w?(de=()=>{i&&!b&&w()},t[36]=i,t[37]=b,t[38]=w,t[39]=de):de=t[39];let fe=!i||b?`opacity-50 cursor-not-allowed`:``,pe;t[40]===Symbol.for(`react.memo_cache_sentinel`)?(pe=(0,$.jsx)(gt,{className:`h-3.5 w-3.5 mr-2`}),t[40]=pe):pe=t[40];let me;t[41]!==de||t[42]!==fe?(me=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(xl,{onClick:de,className:fe,children:[pe,`Pull`]})}),t[41]=de,t[42]=fe,t[43]=me):me=t[43];let he=i?`Pull latest changes from remote`:`No remote branch to pull from`,ge;t[44]===he?ge=t[45]:(ge=(0,$.jsx)(Fr,{side:`right`,children:he}),t[44]=he,t[45]=ge);let _e;t[46]!==me||t[47]!==ge?(_e=(0,$.jsx)(Zo,{children:(0,$.jsxs)(Mi,{children:[me,ge]})}),t[46]=me,t[47]=ge,t[48]=_e):_e=t[48];let ve;t[49]!==i||t[50]!==b||t[51]!==T?(ve=!i&&(0,$.jsx)(Zo,{children:(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(xl,{onClick:T,disabled:b,children:[(0,$.jsx)(Pe,{className:`h-3.5 w-3.5 mr-2`}),`Push Branch to Remote`]})}),(0,$.jsx)(Fr,{side:`right`,children:`Create remote branch and push local commits`})]})}),t[49]=i,t[50]=b,t[51]=T,t[52]=ve):ve=t[52];let ye;t[53]!==a||t[54]!==b||t[55]!==T?(ye=()=>{a&&!b&&T()},t[53]=a,t[54]=b,t[55]=T,t[56]=ye):ye=t[56];let be=!a||b?`opacity-50 cursor-not-allowed`:``,xe;t[57]===Symbol.for(`react.memo_cache_sentinel`)?(xe=(0,$.jsx)(Pe,{className:`h-3.5 w-3.5 mr-2`}),t[57]=xe):xe=t[57];let Se;t[58]!==ye||t[59]!==be?(Se=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(xl,{onClick:ye,className:be,children:[xe,`Push Commits`]})}),t[58]=ye,t[59]=be,t[60]=Se):Se=t[60];let Ce=a?b?`Push in progress...`:`Push your uncommitted commits to the remote branch`:`No commits to push - your branch is up to date with remote`,we;t[61]===Ce?we=t[62]:(we=(0,$.jsx)(Fr,{side:`right`,children:Ce}),t[61]=Ce,t[62]=we);let Te;t[63]!==Se||t[64]!==we?(Te=(0,$.jsx)(Zo,{children:(0,$.jsxs)(Mi,{children:[Se,we]})}),t[63]=Se,t[64]=we,t[65]=Te):Te=t[65];let Ee=b||x,De;t[66]===Symbol.for(`react.memo_cache_sentinel`)?(De=(0,$.jsx)(bt,{className:`h-3.5 w-3.5 mr-2`}),t[66]=De):De=t[66];let Oe;t[67]!==E||t[68]!==Ee?(Oe=(0,$.jsxs)(xl,{onClick:E,disabled:Ee,children:[De,`History`]}),t[67]=E,t[68]=Ee,t[69]=Oe):Oe=t[69];let ke;t[70]!==d||t[71]!==u||t[72]!==v||t[73]!==b||t[74]!==O||t[75]!==f?(ke=!v&&d&&!f&&!u&&(0,$.jsxs)(xl,{onClick:O,disabled:b,children:[(0,$.jsx)(g,{className:`h-3.5 w-3.5 mr-2`}),`Create Pull Request`,(0,$.jsx)(El,{children:`⌘⇧P`})]}),t[70]=d,t[71]=u,t[72]=v,t[73]=b,t[74]=O,t[75]=f,t[76]=ke):ke=t[76];let Ae;t[77]!==o||t[78]!==b||t[79]!==k?(Ae=o&&(0,$.jsxs)(xl,{onClick:k,disabled:b,children:[(0,$.jsx)(re,{className:`h-3.5 w-3.5 mr-2`}),`Create Repo`]}),t[77]=o,t[78]=b,t[79]=k,t[80]=Ae):Ae=t[80];let je;t[81]!==b||t[82]!==A||t[83]!==s?(je=s&&(0,$.jsxs)(xl,{onClick:A,disabled:b,children:[(0,$.jsx)(pt,{className:`h-3.5 w-3.5 mr-2`}),`View in GitHub`,(0,$.jsx)(El,{children:`⌘⇧G`})]}),t[81]=b,t[82]=A,t[83]=s,t[84]=je):je=t[84];let Me;t[85]!==se||t[86]!==W||t[87]!==_e||t[88]!==ve||t[89]!==Te||t[90]!==Oe||t[91]!==ke||t[92]!==Ae||t[93]!==je||t[94]!==te||t[95]!==ne||t[96]!==ie||t[97]!==oe?(Me=(0,$.jsxs)(bl,{align:te,children:[ne,ie,ae,oe,se,W,_e,ve,Te,Oe,ke,Ae,je]}),t[85]=se,t[86]=W,t[87]=_e,t[88]=ve,t[89]=Te,t[90]=Oe,t[91]=ke,t[92]=Ae,t[93]=je,t[94]=te,t[95]=ne,t[96]=ie,t[97]=oe,t[98]=Me):Me=t[98];let Ne;return t[99]!==N||t[100]!==P||t[101]!==Me||t[102]!==ee?(Ne=(0,$.jsxs)(hl,{open:P,onOpenChange:N,children:[ee,Me]}),t[99]=N,t[100]=P,t[101]=Me,t[102]=ee,t[103]=Ne):Ne=t[103],Ne}var qw=(0,Z.lazy)(()=>us(()=>import(`./commit-dialog-CYb1kJCq.js`).then(e=>({default:e.CommitDialog})),__vite__mapDeps([3,4,1,5]))),Jw=(0,Z.lazy)(()=>us(()=>import(`./pull-request-dialog-BAarT9EM.js`).then(e=>({default:e.PullRequestDialog})),__vite__mapDeps([6,4,1,5]))),Yw=(0,Z.lazy)(()=>us(()=>import(`./create-repo-dialog-CcFA8pXz.js`).then(e=>({default:e.CreateRepoDialog})),__vite__mapDeps([7,4,1,5]))),Xw=(0,Z.lazy)(()=>us(()=>import(`./git-history-dialog-V3kaff2G.js`).then(e=>({default:e.GitHistoryDialog})),__vite__mapDeps([8,4,1,5]))),Zw=(0,Z.lazy)(()=>us(()=>import(`./push-before-pr-dialog-BF0NzV2u.js`).then(e=>({default:e.PushBeforePRDialog})),__vite__mapDeps([9,4,1,5]))),Qw=(0,Z.lazy)(()=>us(()=>import(`./pull-with-changes-dialog-BcF25mjQ.js`).then(e=>({default:e.PullWithChangesDialog})),__vite__mapDeps([10,4,1,5]))),$w=(0,Z.lazy)(()=>us(()=>import(`./commit-error-dialog-DvxaNRcH.js`).then(e=>({default:e.CommitErrorDialog})),__vite__mapDeps([11,1,4,5])));function eT(){return null}function tT(e){let t=(0,Q.c)(72),{isLoading:n,currentBranch:r,commitError:i,onDismissCommitError:a,onFixCommitErrorInChat:o,commit:s,pullRequest:c,pushBeforePR:l,createRepo:u,history:d,pullWithChanges:f}=e,p;t[0]!==i||t[1]!==a||t[2]!==o?(p=i&&(0,$.jsx)(Z.Suspense,{fallback:(0,$.jsx)(eT,{}),children:(0,$.jsx)($w,{error:i,onDismiss:a,onFixInChat:o})}),t[0]=i,t[1]=a,t[2]=o,t[3]=p):p=t[3];let m;t[4]!==s.autoGenerate||t[5]!==s.isGenerating||t[6]!==s.isOpen||t[7]!==s.message||t[8]!==s.onAutoGenerateChange||t[9]!==s.onCommit||t[10]!==s.onGenerateMessage||t[11]!==s.onMessageChange||t[12]!==s.onOpenChange||t[13]!==r||t[14]!==n?(m=s.isOpen&&(0,$.jsx)(Z.Suspense,{fallback:(0,$.jsx)(eT,{}),children:(0,$.jsx)(qw,{open:s.isOpen,onOpenChange:s.onOpenChange,commitMessage:s.message,onCommitMessageChange:s.onMessageChange,autoGenerateCommitMessage:s.autoGenerate,onAutoGenerateChange:s.onAutoGenerateChange,isGeneratingMessage:s.isGenerating,isLoading:n,onGenerateMessage:s.onGenerateMessage,onCommit:s.onCommit,currentBranch:r})}),t[4]=s.autoGenerate,t[5]=s.isGenerating,t[6]=s.isOpen,t[7]=s.message,t[8]=s.onAutoGenerateChange,t[9]=s.onCommit,t[10]=s.onGenerateMessage,t[11]=s.onMessageChange,t[12]=s.onOpenChange,t[13]=r,t[14]=n,t[15]=m):m=t[15];let h;t[16]!==r||t[17]!==n||t[18]!==c.autoGenerate||t[19]!==c.createBranchAfterPR||t[20]!==c.description||t[21]!==c.isGeneratingInfo||t[22]!==c.isOpen||t[23]!==c.onAutoGenerateChange||t[24]!==c.onCreateBranchAfterPRChange||t[25]!==c.onCreatePR||t[26]!==c.onDescriptionChange||t[27]!==c.onGenerateInfo||t[28]!==c.onOpenChange||t[29]!==c.onTitleChange||t[30]!==c.title?(h=c.isOpen&&(0,$.jsx)(Z.Suspense,{fallback:(0,$.jsx)(eT,{}),children:(0,$.jsx)(Jw,{open:c.isOpen,onOpenChange:c.onOpenChange,prTitle:c.title,onPrTitleChange:c.onTitleChange,prDescription:c.description,onPrDescriptionChange:c.onDescriptionChange,isGeneratingPRInfo:c.isGeneratingInfo,isLoading:n,onGeneratePRInfo:c.onGenerateInfo,onCreatePR:c.onCreatePR,currentBranch:r,autoGeneratePRInfo:c.autoGenerate,onAutoGeneratePRInfoChange:c.onAutoGenerateChange,createBranchAfterPR:c.createBranchAfterPR,onCreateBranchAfterPRChange:c.onCreateBranchAfterPRChange})}),t[16]=r,t[17]=n,t[18]=c.autoGenerate,t[19]=c.createBranchAfterPR,t[20]=c.description,t[21]=c.isGeneratingInfo,t[22]=c.isOpen,t[23]=c.onAutoGenerateChange,t[24]=c.onCreateBranchAfterPRChange,t[25]=c.onCreatePR,t[26]=c.onDescriptionChange,t[27]=c.onGenerateInfo,t[28]=c.onOpenChange,t[29]=c.onTitleChange,t[30]=c.title,t[31]=h):h=t[31];let g;t[32]!==n||t[33]!==l.isOpen||t[34]!==l.onCancel||t[35]!==l.onOpenChange||t[36]!==l.onPushAndCreatePR?(g=l.isOpen&&(0,$.jsx)(Z.Suspense,{fallback:(0,$.jsx)(eT,{}),children:(0,$.jsx)(Zw,{open:l.isOpen,onOpenChange:l.onOpenChange,isLoading:n,onPushAndCreatePR:l.onPushAndCreatePR,onCancel:l.onCancel})}),t[32]=n,t[33]=l.isOpen,t[34]=l.onCancel,t[35]=l.onOpenChange,t[36]=l.onPushAndCreatePR,t[37]=g):g=t[37];let _;t[38]!==u.description||t[39]!==u.isOpen||t[40]!==u.isPrivate||t[41]!==u.name||t[42]!==u.onCreateRepo||t[43]!==u.onDescriptionChange||t[44]!==u.onNameChange||t[45]!==u.onOpenChange||t[46]!==u.onPrivateChange||t[47]!==n?(_=u.isOpen&&(0,$.jsx)(Z.Suspense,{fallback:(0,$.jsx)(eT,{}),children:(0,$.jsx)(Yw,{open:u.isOpen,onOpenChange:u.onOpenChange,repoName:u.name,onRepoNameChange:u.onNameChange,repoDescription:u.description,onRepoDescriptionChange:u.onDescriptionChange,isPrivateRepo:u.isPrivate,onPrivateRepoChange:u.onPrivateChange,isLoading:n,onCreateRepo:u.onCreateRepo})}),t[38]=u.description,t[39]=u.isOpen,t[40]=u.isPrivate,t[41]=u.name,t[42]=u.onCreateRepo,t[43]=u.onDescriptionChange,t[44]=u.onNameChange,t[45]=u.onOpenChange,t[46]=u.onPrivateChange,t[47]=n,t[48]=_):_=t[48];let v;t[49]!==r||t[50]!==d.commits||t[51]!==d.displayedCommits||t[52]!==d.isLoadingMore||t[53]!==d.isOpen||t[54]!==d.onOpenChange||t[55]!==d.onScroll?(v=d.isOpen&&(0,$.jsx)(Z.Suspense,{fallback:(0,$.jsx)(eT,{}),children:(0,$.jsx)(Xw,{open:d.isOpen,onOpenChange:d.onOpenChange,commits:d.commits,displayedCommits:d.displayedCommits,isLoadingMore:d.isLoadingMore,onScroll:d.onScroll,currentBranch:r})}),t[49]=r,t[50]=d.commits,t[51]=d.displayedCommits,t[52]=d.isLoadingMore,t[53]=d.isOpen,t[54]=d.onOpenChange,t[55]=d.onScroll,t[56]=v):v=t[56];let y;t[57]!==n||t[58]!==f.isOpen||t[59]!==f.onCancel||t[60]!==f.onCommitFirst||t[61]!==f.onOpenChange||t[62]!==f.onStashAndPull?(y=f.isOpen&&(0,$.jsx)(Z.Suspense,{fallback:(0,$.jsx)(eT,{}),children:(0,$.jsx)(Qw,{open:f.isOpen,onOpenChange:f.onOpenChange,onCommitFirst:f.onCommitFirst,onStashAndPull:f.onStashAndPull,onCancel:f.onCancel,isLoading:n})}),t[57]=n,t[58]=f.isOpen,t[59]=f.onCancel,t[60]=f.onCommitFirst,t[61]=f.onOpenChange,t[62]=f.onStashAndPull,t[63]=y):y=t[63];let b;return t[64]!==p||t[65]!==m||t[66]!==h||t[67]!==g||t[68]!==_||t[69]!==v||t[70]!==y?(b=(0,$.jsxs)($.Fragment,{children:[p,m,h,g,_,v,y]}),t[64]=p,t[65]=m,t[66]=h,t[67]=g,t[68]=_,t[69]=v,t[70]=y,t[71]=b):b=t[71],b}function nT(e){let t=e.split(`/`);return t.length>=2?{provider:t[0],model:t.slice(1).join(`/`)}:{provider:void 0,model:e}}var rT=Ut(`app.use-ai-generation.hook`);function iT(e,t,n){let[r,i]=(0,Z.useState)(!1),[a,o]=(0,Z.useState)(!1),s=()=>n?.id?n.provider?{provider:n.provider,model:n.id}:nT(n.id):{provider:void 0,model:void 0};return{isGeneratingMessage:r,isGeneratingPRInfo:a,generateCommitMessageWithAI:(0,Z.useCallback)(async()=>{if(!e)return null;try{i(!0);let{provider:t,model:n}=s();return await Co(e,n,t)}catch(e){return rT.error(`Failed to generate commit message:`,e),ac({title:`Error`,description:e instanceof Error?e.message:`Failed to generate commit message`,variant:`destructive`}),null}finally{i(!1)}},[e,n]),generatePRInfoWithAI:(0,Z.useCallback)(async()=>{if(!e)return null;try{o(!0);let{provider:t,model:n}=s();return await ri(e,n,t)}catch(e){return rT.error(`Failed to generate PR info:`,e),ac({title:`Error`,description:e instanceof Error?e.message:`Failed to generate PR info`,variant:`destructive`}),null}finally{o(!1)}},[e,n])}}function aT(){return{autoGenerateCommitMessage:Di(),autoGeneratePRInfo:ss(),createBranchAfterPR:Xr(),privateRepositoryDefault:$i(),newChatOnNewBranch:ni()}}function oT(e){e.autoGenerateCommitMessage!==void 0&&go(e.autoGenerateCommitMessage),e.autoGeneratePRInfo!==void 0&&Mo(e.autoGeneratePRInfo),e.createBranchAfterPR!==void 0&&Bo(e.createBranchAfterPR),e.privateRepositoryDefault!==void 0&&oa(e.privateRepositoryDefault),e.newChatOnNewBranch!==void 0&&co(e.newChatOnNewBranch)}function sT(e){return e?!0:(ac({title:`Error`,description:`No thread selected`,variant:`destructive`}),!1)}async function cT(e,t,n,r){r&&(await Qa(e,{title:r}),n({type:Y.UpdateThreadTitle,projectId:t,threadId:e,title:r}))}var lT=2e3,uT=6;function dT(e,t){let n=0;e.current!==null&&clearInterval(e.current),e.current=setInterval(async()=>{if(n++,n>=uT){e.current!==null&&(clearInterval(e.current),e.current=null);return}await t(!0)},lT)}var fT=new Set;function pT(e){return fT.add(e),function(){fT.delete(e)}}function mT(){for(let e of fT)e()}var hT=Ut(`app.git-ops-button.ui`),gT=10;function _T(e){let{projectId:t,threadId:n,projectName:r,dispatch:i,aiGeneration:a,unifiedGitStatus:o}=e,[s,c]=(0,Z.useState)(!1),[l,u]=(0,Z.useState)(!1),[d,f]=(0,Z.useState)(!1),[p,m]=(0,Z.useState)(!1),[h,g]=(0,Z.useState)(``),[_,v]=(0,Z.useState)(``),[y,b]=(0,Z.useState)(``),[x,S]=(0,Z.useState)(!1),[C,w]=(0,Z.useState)(null),T=(0,Z.useRef)(!1),E=(0,Z.useRef)(!1),D=(0,Z.useRef)(_),O=(0,Z.useRef)(y);D.current=_,O.current=y;let[k,A]=(0,Z.useState)(!1),[j,M]=(0,Z.useState)([]),[N,P]=(0,Z.useState)(!1),[F,I]=(0,Z.useState)([]),[L,R]=(0,Z.useState)(!1),[z,B]=(0,Z.useState)(!1),[V,H]=(0,Z.useState)(``),[ee,te]=(0,Z.useState)(``),[ne,re]=(0,Z.useState)(``),[ie,ae]=(0,Z.useState)(!1),[oe,se]=(0,Z.useState)(!1),[U,ce]=(0,Z.useState)(!1),[le,ue]=(0,Z.useState)(null),[W,de]=(0,Z.useState)(!1),[fe,pe]=(0,Z.useState)(null),me=(0,Z.useRef)(!1),he=(0,Z.useRef)(null);(0,Z.useEffect)(()=>()=>{he.current!==null&&(clearInterval(he.current),he.current=null)},[]);async function ge(){Si();let e=await lo();i({type:Y.SetProjects,projects:e.projects,cloneRootPath:e.cloneRootPath})}async function _e(e){if(ve.createBranchAfterPR)try{let t=await Po(n,e);e&&pe(e),ac({title:`New branch created`,description:e?`Created new branch "${t.branchName}" from PR branch "${e}"`:`Created new branch "${t.branchName}" from the latest default branch`}),await o.fetchUnifiedStatus(!0),ge()}catch(e){hT.error(`Failed to create new branch after PR:`,e),ac({title:`Failed to create new branch`,description:e instanceof Error?e.message:`Unknown error occurred`,variant:`destructive`})}}let[ve,ye]=(0,Z.useState)(()=>aT());(0,Z.useEffect)(()=>{z&&r&&!V&&H(r)},[z,r,V]),(0,Z.useEffect)(()=>{oT(ve)},[ve]);function be(){ie||(ae(!0),Ti().then(e=>re(e)).catch(()=>{}))}function xe(e){de(e),e&&(be(),o.fetchUnifiedStatus(!0))}(0,Z.useEffect)(()=>{l&&o.prExists&&o.prState===`OPEN`&&u(!1)},[o.prExists,o.prState,l]),(0,Z.useEffect)(()=>{if(!l)return;let e=setTimeout(()=>{u(!1)},15e3);return()=>clearTimeout(e)},[l]),(0,Z.useEffect)(()=>{let e=o.prExists&&o.prState===`OPEN`&&!o.hasChanges&&!o.hasUnpushedCommits;e&&!me.current&&ge(),me.current=e},[o.hasChanges,o.hasUnpushedCommits,o.prExists,o.prState]);async function Se(){if(h.trim()&&sT(n))try{c(!0),await Oa(n,h),g(``),f(!1),await o.fetchUnifiedStatus(!0),ge(),ac({title:`Changes committed successfully`,description:`Your changes have been committed to '${o.currentBranch}'.`}),U&&(ce(!1),await je())}catch(e){hT.error(`Failed to commit:`,e),ue({title:`Commit failed`,message:e instanceof Error?e.message:`Failed to commit changes`})}finally{c(!1)}}function Ce(){ue(null)}async function we(){if(!sT(n))return;let e=o.prUrl;if(!e)try{e=(await wi(n)).url}catch(e){hT.error(`Failed to fetch pull request URL:`,e),ac({title:`Could not open pull request`,description:e instanceof Error?e.message:`Failed to fetch pull request URL`,variant:`destructive`});return}if(!e){ac({title:`Could not open pull request`,description:`Pull request URL is unavailable. Try refreshing git status.`,variant:`destructive`});return}try{await ui(e)}catch(e){hT.error(`Failed to open pull request:`,e),ac({title:`Could not open pull request`,description:e instanceof Error?e.message:`Failed to open URL in browser`,variant:`destructive`})}}async function Te(){if(o.hasChanges){f(!0);return}if(o.hasUnpushedCommits&&o.prExists){let e=o.prState;try{e=(await wi(n)).state??e}catch(e){hT.warn(`Could not refresh pull request state before update:`,e)}if(e===`MERGED`){mT();return}await ke();return}if(o.prExists&&o.prState===`OPEN`&&!o.hasChanges&&!o.hasUnpushedCommits){await we();return}if(o.commitsAheadOfDefault&&!o.prExists&&!o.hasChanges){m(!0);return}if(o.defaultBranchBehind>0){await Pe();return}}async function Ee(){let e=await a.generateCommitMessageWithAI();e&&g(e)}async function De(){if(sT(n))try{c(!0);let e=await a.generateCommitMessageWithAI();if(!e){ac({title:`Quick Commit failed`,description:`Could not generate commit message`,variant:`destructive`});return}await Oa(n,e),await o.fetchUnifiedStatus(!0),ge(),ac({title:`Changes committed successfully`,description:`Committed: ${e}`})}catch(e){hT.error(`Quick commit failed:`,e),ue({title:`Quick Commit failed`,message:e instanceof Error?e.message:`Failed to commit changes`})}finally{c(!1)}}async function Oe(){if(sT(n))try{c(!0),await To(n),await o.fetchUnifiedStatus()}catch(e){hT.error(`Failed to fetch:`,e)}finally{c(!1)}}async function ke(){if(sT(n))try{c(!0),await ca(n),await o.fetchUnifiedStatus(!0),ge(),o.hasRemoteBranch?ac({title:`Branch pushed successfully`,description:`Your branch '${o.currentBranch}' has been pushed to the remote.`}):ac({title:`Push completed`,description:`Changes have been pushed successfully.`})}catch(e){hT.error(`Failed to push:`,e),ac({title:`Push failed`,description:e instanceof Error?e.message:`Failed to push to remote`,variant:`destructive`})}finally{c(!1)}}async function Ae(){if(sT(n)){if(o.hasChanges){se(!0);return}await je()}}async function je(){try{c(!0),await Ha(n),await o.fetchUnifiedStatus(!0),ge(),ac({title:`Pull successful`,description:`Latest changes have been pulled from remote.`})}catch(e){hT.error(`Failed to pull:`,e),ac({title:`Pull failed`,description:e instanceof Error?e.message:`Failed to pull from remote`,variant:`destructive`})}finally{c(!1)}}function Me(){se(!1),ce(!0),f(!0)}async function Ne(){se(!1),await je()}async function Pe(){if(sT(n))try{c(!0),await Ao(n),await o.fetchUnifiedStatus(!0),ge(),ac({title:`Branch synced successfully`,description:`Your branch '${o.currentBranch}' has been synced with the latest changes`})}catch(e){hT.error(`[sync] ✗ Failed to sync branch:`,e),ac({title:`Sync failed`,description:e instanceof Error?e.message:`Failed to sync with default branch`,variant:`destructive`})}finally{c(!1)}}async function Fe(){if(sT(n))try{c(!0),u(!0);let e=await uo(n,_,y,fe??void 0);await cT(n,t,i,e.title??_),e.prUrl&&await ui(e.prUrl),v(``),b(``),m(!1),await o.fetchUnifiedStatus(!0),ge(),await _e(e.branchName),dT(he,o.fetchUnifiedStatus)}catch(e){hT.error(`Failed to create PR:`,e);let t=e instanceof Error?e.message:`Failed to create PR`;t.includes(`push the current branch`)||t.includes(`--head flag`)?(m(!1),Re({title:_,description:y})):(u(!1),ac({title:`Create PR Failed`,description:t,variant:`destructive`}))}finally{c(!1)}}async function Ie(){if(sT(n))try{c(!0);let e=await si(n,V,ee,ve.privateRepositoryDefault);e.repoUrl&&setTimeout(()=>{ui(e.repoUrl)},3e3),H(``),te(``),B(!1),await o.fetchUnifiedStatus(),ge()}catch(e){hT.error(`Failed to create repo:`,e)}finally{c(!1)}}async function Le(){let e=await a.generatePRInfoWithAI();e&&(v(e.title),b(e.description),ac({title:`Success`,description:`PR title and description generated`}))}async function Re(e){let r=e??C;if(!(!n||!r))try{c(!0),u(!0);try{await ca(n)}catch(e){let t=e?.message??``;if(t.includes(`non-fast-forward`)||t.includes(`Updates were rejected because the tip of your current branch is behind`)){ac({title:`Syncing branch before push`,description:`Your branch is behind remote. Pulling latest changes first...`});try{await Ao(n),await ca(n)}catch{throw e}}else throw e}let e=await uo(n,r.title,r.description,fe??void 0);await cT(n,t,i,e.title??r.title),e.prUrl&&await ui(e.prUrl),v(``),b(``),w(null),S(!1),await o.fetchUnifiedStatus(!0),ge(),await _e(e.branchName),dT(he,o.fetchUnifiedStatus)}catch(e){hT.error(`Failed to push and create PR:`,e);let t=e instanceof Error?e.message:`Failed to push and create PR`;u(!1),ac({title:`Push & Create PR Failed`,description:t,variant:`destructive`})}finally{c(!1)}}async function ze(){if(sT(n))try{P(!0);let e=await Yi(n,100);M(e),I(e.slice(0,gT)),A(!0)}catch(e){hT.error(`Failed to fetch git history:`,e)}finally{P(!1)}}function Be(){L||(R(!0),setTimeout(()=>{let e=F.length+gT;I(j.slice(0,e)),R(!1)},300))}function Ve(e){let t=e.currentTarget;t.scrollHeight-t.scrollTop-t.clientHeight<100&&F.length<j.length&&!L&&Be()}function He(){o.repoUrl&&ui(o.repoUrl)}function Ue(){S(!1),w(null)}return{isLoading:s,isCreatingPR:l,isCommitDialogOpen:d,setIsCommitDialogOpen:f,isPRDialogOpen:p,setIsPRDialogOpen:m,commitMessage:h,setCommitMessage:g,prTitle:_,setPrTitle:v,prDescription:y,setPrDescription:b,isPushBeforePRDialogOpen:x,setIsPushBeforePRDialogOpen:S,prGenerationRef:T,commitGenerationRef:E,prTitleRef:D,prDescriptionRef:O,isHistoryDialogOpen:k,setIsHistoryDialogOpen:A,commits:j,displayedCommits:F,isLoadingHistory:N,isLoadingMore:L,isRepoDialogOpen:z,setIsRepoDialogOpen:B,repoName:V,setRepoName:H,repoDescription:ee,setRepoDescription:te,gitUser:ne,isPullWithChangesDialogOpen:oe,setIsPullWithChangesDialogOpen:se,commitError:le,dismissCommitError:Ce,isGitOpsMenuOpen:W,userPrefs:ve,setUserPrefsState:ye,handleGitOpsMenuOpenChange:xe,handleCommit:Se,handleOpenPullRequest:we,handleMainButtonClick:Te,handleGenerateCommitMessage:Ee,handleQuickCommit:De,handleFetch:Oe,handlePush:ke,handlePull:Ae,handleSyncBranch:Pe,handleCreatePR:Fe,handleCreateRepo:Ie,handleGeneratePRInfo:Le,handlePushAndCreatePR:Re,handleOpenHistory:ze,handleScroll:Ve,handleViewInGitHub:He,handleCancelPushBeforePR:Ue,handleCommitFirstAndPull:Me,handleStashAndPull:Ne}}function vT(e){let t=(0,Q.c)(29),{threadId:n,aiGeneration:r,isCommitDialogOpen:i,commitMessage:a,setCommitMessage:o,autoGenerateCommitMessage:s,commitGenerationRef:c,isPRDialogOpen:l,prTitleRef:u,prDescriptionRef:d,setPrTitle:f,setPrDescription:p,autoGeneratePRInfo:m,prGenerationRef:h}=e,g;t[0]!==r||t[1]!==s||t[2]!==c||t[3]!==a||t[4]!==i||t[5]!==o||t[6]!==n?(g=()=>{if(!i){c.current=!1;return}i&&s&&!a.trim()&&n&&!c.current&&(c.current=!0,(async function(){let e=await r.generateCommitMessageWithAI();e&&o(e)})())},t[0]=r,t[1]=s,t[2]=c,t[3]=a,t[4]=i,t[5]=o,t[6]=n,t[7]=g):g=t[7];let _;t[8]!==r.generateCommitMessageWithAI||t[9]!==s||t[10]!==a||t[11]!==i||t[12]!==n?(_=[i,s,n,r.generateCommitMessageWithAI,a],t[8]=r.generateCommitMessageWithAI,t[9]=s,t[10]=a,t[11]=i,t[12]=n,t[13]=_):_=t[13],(0,Z.useEffect)(g,_);let v;t[14]!==r||t[15]!==m||t[16]!==l||t[17]!==d||t[18]!==h||t[19]!==u||t[20]!==p||t[21]!==f||t[22]!==n?(v=()=>{if(!l){h.current=!1;return}l&&m&&!u.current.trim()&&!d.current.trim()&&n&&!h.current&&(h.current=!0,(async function(){let e=await r.generatePRInfoWithAI();e&&(f(e.title),p(e.description))})())},t[14]=r,t[15]=m,t[16]=l,t[17]=d,t[18]=h,t[19]=u,t[20]=p,t[21]=f,t[22]=n,t[23]=v):v=t[23];let y;t[24]!==r.generatePRInfoWithAI||t[25]!==m||t[26]!==l||t[27]!==n?(y=[l,m,n,r.generatePRInfoWithAI],t[24]=r.generatePRInfoWithAI,t[25]=m,t[26]=l,t[27]=n,t[28]=y):y=t[28],(0,Z.useEffect)(v,y)}function yT(e){let{unifiedGitStatus:t,autoGenerateCommitMessage:n,isLoading:r,isCreatingPR:i,isDirectCommitMode:a,onQuickCommit:o,onCreatePR:s,onViewInGitHub:c,onOpenGitOpsMenu:l}=e,u=(0,Z.useRef)(o),d=(0,Z.useRef)(s),f=(0,Z.useRef)(c),p=(0,Z.useRef)(l);u.current=o,d.current=s,f.current=c,p.current=l,(0,Z.useEffect)(()=>{function e(e){let o=e.key.toLowerCase();if((e.metaKey||e.ctrlKey)&&e.shiftKey&&!e.altKey){if(o===`c`){t.hasChanges&&n&&!r&&(e.preventDefault(),u.current());return}if(o===`p`){t.commitsAheadOfDefault&&!t.prExists&&!t.hasChanges&&!r&&!a&&(e.preventDefault(),d.current());return}if(o===`g`){t.repoUrl&&!r&&(e.preventDefault(),f.current());return}o===`b`&&!r&&!i&&(e.preventDefault(),p.current())}}return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[t.commitsAheadOfDefault,t.hasChanges,t.prExists,t.repoUrl,n,r,i,a])}var bT=Ut(`app.git-ops-button`);function xT(e){return[`The git commit in this thread failed with the error below.`,`Diagnose the cause and fix the project so I can retry the commit.`,``,`Git error:`,e.message].join(`
3326
- `)}function ST(e){let t=(0,Q.c)(28),{isBrandState:n,isMainButtonVisuallyDisabled:r,isMainButtonHardDisabled:i,mainButtonDisabled:a,mainButtonText:o,mainButtonIcon:s,tooltip:c,onMainButtonClick:l,dropdown:u}=e,d=n&&`border-transparent bg-brand !text-white hover:bg-brand/90 hover:!text-white dark:bg-brand dark:hover:bg-brand/90`,f=n&&r&&`cursor-default opacity-50 hover:bg-brand hover:!text-white`,p=!n&&r&&`cursor-default`,m;t[0]!==d||t[1]!==f||t[2]!==p?(m=G(`min-w-0 w-full justify-start`,d,f,p),t[0]=d,t[1]=f,t[2]=p,t[3]=m):m=t[3];let h=a?void 0:l,g=!n&&r&&`text-muted-foreground opacity-50`,_=n&&`font-medium text-white`,v;t[4]!==g||t[5]!==_?(v=G(`flex min-w-0 flex-1 items-center gap-2`,g,_),t[4]=g,t[5]=_,t[6]=v):v=t[6];let y;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(y=G(U.body,`truncate`),t[7]=y):y=t[7];let b;t[8]===o?b=t[9]:(b=(0,$.jsx)(`span`,{className:y,children:o}),t[8]=o,t[9]=b);let x;t[10]!==s||t[11]!==v||t[12]!==b?(x=(0,$.jsxs)(`span`,{className:v,children:[s,b]}),t[10]=s,t[11]=v,t[12]=b,t[13]=x):x=t[13];let S;t[14]!==i||t[15]!==a||t[16]!==x||t[17]!==m||t[18]!==h?(S=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(ja,{asChild:!0,className:`min-w-0 flex-1`,children:(0,$.jsx)(`button`,{type:`button`,className:m,disabled:i,"aria-disabled":a,onClick:h,children:x})})}),t[14]=i,t[15]=a,t[16]=x,t[17]=m,t[18]=h,t[19]=S):S=t[19];let C;t[20]===c?C=t[21]:(C=(0,$.jsx)(Fr,{side:`right`,children:c}),t[20]=c,t[21]=C);let w;t[22]!==S||t[23]!==C?(w=(0,$.jsx)(Zo,{children:(0,$.jsxs)(Mi,{children:[S,C]})}),t[22]=S,t[23]=C,t[24]=w):w=t[24];let T;return t[25]!==u||t[26]!==w?(T=(0,$.jsxs)(`div`,{className:`flex w-full min-w-0 items-center`,children:[w,u]}),t[25]=u,t[26]=w,t[27]=T):T=t[27],T}function CT(e){let t=(0,Q.c)(31),{footerPillButtonClass:n,isBrandState:r,isMainButtonVisuallyDisabled:i,isMainButtonHardDisabled:a,mainButtonDisabled:o,mainButtonText:s,mainButtonIcon:c,tooltip:l,onMainButtonClick:u,dropdown:d}=e,f=r&&`border-transparent bg-brand !text-white hover:bg-brand/90 hover:!text-white dark:bg-brand dark:hover:bg-brand/90`,p=r&&i&&`cursor-default opacity-50 hover:bg-brand hover:!text-white`,m;t[0]!==n||t[1]!==f||t[2]!==p?(m=G(n,Uw,Ww,`group min-w-0 gap-0 px-0`,f,p),t[0]=n,t[1]=f,t[2]=p,t[3]=m):m=t[3];let h=i&&`cursor-default`,g=r&&`text-white`,_;t[4]!==h||t[5]!==g?(_=G(U.compact,`flex min-w-0 flex-1 items-center gap-1.5 rounded-l-full pl-3 pr-0.5 disabled:opacity-50`,h,g),t[4]=h,t[5]=g,t[6]=_):_=t[6];let v=o?void 0:u,y=r&&`font-medium`,b=!r&&i&&`opacity-50`,x;t[7]!==y||t[8]!==b?(x=G(`inline-flex min-w-0 items-center gap-1.5 truncate`,y,b),t[7]=y,t[8]=b,t[9]=x):x=t[9];let S;t[10]===s?S=t[11]:(S=(0,$.jsx)(`span`,{className:`truncate`,children:s}),t[10]=s,t[11]=S);let C;t[12]!==c||t[13]!==S||t[14]!==x?(C=(0,$.jsxs)(`span`,{className:x,children:[c,S]}),t[12]=c,t[13]=S,t[14]=x,t[15]=C):C=t[15];let w;t[16]!==a||t[17]!==o||t[18]!==C||t[19]!==_||t[20]!==v?(w=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,className:_,disabled:a,"aria-disabled":o,onClick:v,children:C})}),t[16]=a,t[17]=o,t[18]=C,t[19]=_,t[20]=v,t[21]=w):w=t[21];let T;t[22]===l?T=t[23]:(T=(0,$.jsx)(Fr,{side:`top`,children:l}),t[22]=l,t[23]=T);let E;t[24]!==w||t[25]!==T?(E=(0,$.jsx)(Zo,{children:(0,$.jsxs)(Mi,{children:[w,T]})}),t[24]=w,t[25]=T,t[26]=E):E=t[26];let D;return t[27]!==d||t[28]!==E||t[29]!==m?(D=(0,$.jsxs)(`div`,{className:m,children:[E,d]}),t[27]=d,t[28]=E,t[29]=m,t[30]=D):D=t[30],D}function wT(e){let t=(0,Q.c)(26),{isBrandState:n,isMainButtonVisuallyDisabled:r,isMainButtonHardDisabled:i,mainButtonDisabled:a,mainButtonText:o,mainButtonIcon:s,tooltip:c,onMainButtonClick:l,dropdown:u}=e,d;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(d=G(`flex w-full flex-col gap-1 items-stretch [&_button]:w-full [&_button]:justify-start`),t[0]=d):d=t[0];let f=n&&`border-transparent bg-brand !text-white hover:bg-brand/90 hover:!text-white dark:bg-brand dark:hover:bg-brand/90`,p=r&&`cursor-default hover:bg-background hover:text-foreground`,m;t[1]!==f||t[2]!==p?(m=G(`h-8 gap-1.5 rounded-md border`,f,p),t[1]=f,t[2]=p,t[3]=m):m=t[3];let h=a?void 0:l,g=n&&`text-white`,_=r&&!n&&`text-muted-foreground opacity-50`,v=r&&n&&`opacity-50`,y;t[4]!==g||t[5]!==_||t[6]!==v?(y=G(`inline-flex items-center gap-1.5`,g,_,v),t[4]=g,t[5]=_,t[6]=v,t[7]=y):y=t[7];let b;t[8]!==s||t[9]!==o||t[10]!==y?(b=(0,$.jsxs)(`span`,{className:y,children:[s,o]}),t[8]=s,t[9]=o,t[10]=y,t[11]=b):b=t[11];let x;t[12]!==i||t[13]!==a||t[14]!==m||t[15]!==h||t[16]!==b?(x=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(Hr,{variant:`outline`,size:`sm`,className:m,disabled:i,"aria-disabled":a,onClick:h,children:b})}),t[12]=i,t[13]=a,t[14]=m,t[15]=h,t[16]=b,t[17]=x):x=t[17];let S;t[18]===c?S=t[19]:(S=(0,$.jsx)(Fr,{children:c}),t[18]=c,t[19]=S);let C;t[20]!==x||t[21]!==S?(C=(0,$.jsx)(Zo,{children:(0,$.jsxs)(Mi,{children:[x,S]})}),t[20]=x,t[21]=S,t[22]=C):C=t[22];let w;return t[23]!==u||t[24]!==C?(w=(0,$.jsxs)(`div`,{className:d,children:[C,u]}),t[23]=u,t[24]=C,t[25]=w):w=t[25],w}function TT(e){let t=(0,Q.c)(43),{unifiedGitStatus:n,actions:r,isDirectCommitMode:i,aiGeneration:a,layout:o}=e,s=n.defaultBranch??null,c=a.isGeneratingMessage&&r.isLoading,l,u,d,f,p,m;t[0]===r?(l=t[1],u=t[2],d=t[3],f=t[4],p=t[5],m=t[6]):(l=()=>void r.handleFetch(),u=()=>void r.handlePull(),d=()=>void r.handlePush(),f=()=>void r.handleOpenHistory(),p=()=>r.setIsPRDialogOpen(!0),m=()=>r.setIsRepoDialogOpen(!0),t[0]=r,t[1]=l,t[2]=u,t[3]=d,t[4]=f,t[5]=p,t[6]=m);let h,g;t[7]===r?(h=t[8],g=t[9]):(h=()=>void r.handleQuickCommit(),g=()=>void r.handleSyncBranch(),t[7]=r,t[8]=h,t[9]=g);let _;return t[10]!==r.gitUser||t[11]!==r.handleGitOpsMenuOpenChange||t[12]!==r.handleViewInGitHub||t[13]!==r.isCreatingPR||t[14]!==r.isGitOpsMenuOpen||t[15]!==r.isLoading||t[16]!==r.isLoadingHistory||t[17]!==r.userPrefs.autoGenerateCommitMessage||t[18]!==i||t[19]!==o||t[20]!==s||t[21]!==c||t[22]!==l||t[23]!==u||t[24]!==d||t[25]!==f||t[26]!==p||t[27]!==m||t[28]!==h||t[29]!==g||t[30]!==n.canCreateRepo||t[31]!==n.commitsAheadOfDefault||t[32]!==n.defaultBranchAhead||t[33]!==n.defaultBranchBehind||t[34]!==n.hasChanges||t[35]!==n.hasRemoteBranch||t[36]!==n.hasUnpushedCommits||t[37]!==n.isRefreshing||t[38]!==n.prExists||t[39]!==n.remoteUrl||t[40]!==n.repoUrl||t[41]!==n.status?(_=(0,$.jsx)(Kw,{branchStatus:n.status,remoteUrl:n.remoteUrl,hasRemoteBranch:n.hasRemoteBranch,hasUnpushedCommits:n.hasUnpushedCommits,canCreateRepo:n.canCreateRepo,repoUrl:n.repoUrl,isRefreshing:n.isRefreshing,isCreatingPR:r.isCreatingPR,hasChanges:n.hasChanges,commitsAheadOfDefault:n.commitsAheadOfDefault,prExists:n.prExists,defaultBranch:s,defaultBranchAhead:n.defaultBranchAhead,defaultBranchBehind:n.defaultBranchBehind,gitUser:r.gitUser,isDirectCommitMode:i,autoGenerateCommitMessage:r.userPrefs.autoGenerateCommitMessage,isLoading:r.isLoading,isLoadingHistory:r.isLoadingHistory,isQuickCommitting:c,onFetch:l,onPull:u,onPush:d,onOpenHistory:f,onCreatePR:p,onCreateRepo:m,onViewInGitHub:r.handleViewInGitHub,onQuickCommit:h,onSyncWithDefault:g,open:r.isGitOpsMenuOpen,onOpenChange:r.handleGitOpsMenuOpenChange,layout:o}),t[10]=r.gitUser,t[11]=r.handleGitOpsMenuOpenChange,t[12]=r.handleViewInGitHub,t[13]=r.isCreatingPR,t[14]=r.isGitOpsMenuOpen,t[15]=r.isLoading,t[16]=r.isLoadingHistory,t[17]=r.userPrefs.autoGenerateCommitMessage,t[18]=i,t[19]=o,t[20]=s,t[21]=c,t[22]=l,t[23]=u,t[24]=d,t[25]=f,t[26]=p,t[27]=m,t[28]=h,t[29]=g,t[30]=n.canCreateRepo,t[31]=n.commitsAheadOfDefault,t[32]=n.defaultBranchAhead,t[33]=n.defaultBranchBehind,t[34]=n.hasChanges,t[35]=n.hasRemoteBranch,t[36]=n.hasUnpushedCommits,t[37]=n.isRefreshing,t[38]=n.prExists,t[39]=n.remoteUrl,t[40]=n.repoUrl,t[41]=n.status,t[42]=_):_=t[42],_}function ET(e){let t=(0,Q.c)(76),{actions:n,aiGeneration:r,currentBranch:i,onFixCommitErrorInChat:a}=e,o;t[0]===n?o=t[1]:(o=e=>n.setUserPrefsState(t=>({...t,autoGenerateCommitMessage:e})),t[0]=n,t[1]=o);let s;t[2]!==n.commitMessage||t[3]!==n.handleCommit||t[4]!==n.handleGenerateCommitMessage||t[5]!==n.isCommitDialogOpen||t[6]!==n.setCommitMessage||t[7]!==n.setIsCommitDialogOpen||t[8]!==n.userPrefs.autoGenerateCommitMessage||t[9]!==r.isGeneratingMessage||t[10]!==o?(s={isOpen:n.isCommitDialogOpen,onOpenChange:n.setIsCommitDialogOpen,message:n.commitMessage,onMessageChange:n.setCommitMessage,autoGenerate:n.userPrefs.autoGenerateCommitMessage,onAutoGenerateChange:o,isGenerating:r.isGeneratingMessage,onGenerateMessage:n.handleGenerateCommitMessage,onCommit:n.handleCommit},t[2]=n.commitMessage,t[3]=n.handleCommit,t[4]=n.handleGenerateCommitMessage,t[5]=n.isCommitDialogOpen,t[6]=n.setCommitMessage,t[7]=n.setIsCommitDialogOpen,t[8]=n.userPrefs.autoGenerateCommitMessage,t[9]=r.isGeneratingMessage,t[10]=o,t[11]=s):s=t[11];let c;t[12]===n?c=t[13]:(c=e=>n.setUserPrefsState(t=>({...t,autoGeneratePRInfo:e})),t[12]=n,t[13]=c);let l;t[14]===n?l=t[15]:(l=e=>n.setUserPrefsState(t=>({...t,createBranchAfterPR:e})),t[14]=n,t[15]=l);let u;t[16]!==n.handleCreatePR||t[17]!==n.handleGeneratePRInfo||t[18]!==n.isPRDialogOpen||t[19]!==n.prDescription||t[20]!==n.prTitle||t[21]!==n.setIsPRDialogOpen||t[22]!==n.setPrDescription||t[23]!==n.setPrTitle||t[24]!==n.userPrefs.autoGeneratePRInfo||t[25]!==n.userPrefs.createBranchAfterPR||t[26]!==r.isGeneratingPRInfo||t[27]!==c||t[28]!==l?(u={isOpen:n.isPRDialogOpen,onOpenChange:n.setIsPRDialogOpen,title:n.prTitle,onTitleChange:n.setPrTitle,description:n.prDescription,onDescriptionChange:n.setPrDescription,isGeneratingInfo:r.isGeneratingPRInfo,onGenerateInfo:n.handleGeneratePRInfo,onCreatePR:n.handleCreatePR,autoGenerate:n.userPrefs.autoGeneratePRInfo,onAutoGenerateChange:c,createBranchAfterPR:n.userPrefs.createBranchAfterPR,onCreateBranchAfterPRChange:l},t[16]=n.handleCreatePR,t[17]=n.handleGeneratePRInfo,t[18]=n.isPRDialogOpen,t[19]=n.prDescription,t[20]=n.prTitle,t[21]=n.setIsPRDialogOpen,t[22]=n.setPrDescription,t[23]=n.setPrTitle,t[24]=n.userPrefs.autoGeneratePRInfo,t[25]=n.userPrefs.createBranchAfterPR,t[26]=r.isGeneratingPRInfo,t[27]=c,t[28]=l,t[29]=u):u=t[29];let d;t[30]===n?d=t[31]:(d=()=>n.handlePushAndCreatePR(),t[30]=n,t[31]=d);let f;t[32]!==n.handleCancelPushBeforePR||t[33]!==n.isPushBeforePRDialogOpen||t[34]!==n.setIsPushBeforePRDialogOpen||t[35]!==d?(f={isOpen:n.isPushBeforePRDialogOpen,onOpenChange:n.setIsPushBeforePRDialogOpen,onPushAndCreatePR:d,onCancel:n.handleCancelPushBeforePR},t[32]=n.handleCancelPushBeforePR,t[33]=n.isPushBeforePRDialogOpen,t[34]=n.setIsPushBeforePRDialogOpen,t[35]=d,t[36]=f):f=t[36];let p;t[37]===n?p=t[38]:(p=e=>n.setUserPrefsState(t=>({...t,privateRepositoryDefault:e})),t[37]=n,t[38]=p);let m;t[39]!==n.handleCreateRepo||t[40]!==n.isRepoDialogOpen||t[41]!==n.repoDescription||t[42]!==n.repoName||t[43]!==n.setIsRepoDialogOpen||t[44]!==n.setRepoDescription||t[45]!==n.setRepoName||t[46]!==n.userPrefs.privateRepositoryDefault||t[47]!==p?(m={isOpen:n.isRepoDialogOpen,onOpenChange:n.setIsRepoDialogOpen,name:n.repoName,onNameChange:n.setRepoName,description:n.repoDescription,onDescriptionChange:n.setRepoDescription,isPrivate:n.userPrefs.privateRepositoryDefault,onPrivateChange:p,onCreateRepo:n.handleCreateRepo},t[39]=n.handleCreateRepo,t[40]=n.isRepoDialogOpen,t[41]=n.repoDescription,t[42]=n.repoName,t[43]=n.setIsRepoDialogOpen,t[44]=n.setRepoDescription,t[45]=n.setRepoName,t[46]=n.userPrefs.privateRepositoryDefault,t[47]=p,t[48]=m):m=t[48];let h;t[49]!==n.commits||t[50]!==n.displayedCommits||t[51]!==n.handleScroll||t[52]!==n.isHistoryDialogOpen||t[53]!==n.isLoadingMore||t[54]!==n.setIsHistoryDialogOpen?(h={isOpen:n.isHistoryDialogOpen,onOpenChange:n.setIsHistoryDialogOpen,commits:n.commits,displayedCommits:n.displayedCommits,isLoadingMore:n.isLoadingMore,onScroll:n.handleScroll},t[49]=n.commits,t[50]=n.displayedCommits,t[51]=n.handleScroll,t[52]=n.isHistoryDialogOpen,t[53]=n.isLoadingMore,t[54]=n.setIsHistoryDialogOpen,t[55]=h):h=t[55];let g;t[56]===n?g=t[57]:(g=()=>n.setIsPullWithChangesDialogOpen(!1),t[56]=n,t[57]=g);let _;t[58]!==n.handleCommitFirstAndPull||t[59]!==n.handleStashAndPull||t[60]!==n.isPullWithChangesDialogOpen||t[61]!==n.setIsPullWithChangesDialogOpen||t[62]!==g?(_={isOpen:n.isPullWithChangesDialogOpen,onOpenChange:n.setIsPullWithChangesDialogOpen,onCommitFirst:n.handleCommitFirstAndPull,onStashAndPull:n.handleStashAndPull,onCancel:g},t[58]=n.handleCommitFirstAndPull,t[59]=n.handleStashAndPull,t[60]=n.isPullWithChangesDialogOpen,t[61]=n.setIsPullWithChangesDialogOpen,t[62]=g,t[63]=_):_=t[63];let v;return t[64]!==n.commitError||t[65]!==n.dismissCommitError||t[66]!==n.isLoading||t[67]!==i||t[68]!==a||t[69]!==s||t[70]!==_||t[71]!==u||t[72]!==f||t[73]!==m||t[74]!==h?(v=(0,$.jsx)(tT,{isLoading:n.isLoading,currentBranch:i,commitError:n.commitError,onDismissCommitError:n.dismissCommitError,onFixCommitErrorInChat:a,commit:s,pullRequest:u,pushBeforePR:f,createRepo:m,history:h,pullWithChanges:_}),t[64]=n.commitError,t[65]=n.dismissCommitError,t[66]=n.isLoading,t[67]=i,t[68]=a,t[69]=s,t[70]=_,t[71]=u,t[72]=f,t[73]=m,t[74]=h,t[75]=v):v=t[75],v}function DT(e){let t=(0,Q.c)(89),{projectId:n,threadId:r,layout:i}=e,a=i===void 0?`bar`:i,o=Ks(),s=mC(),c;t[0]===r?c=t[1]:(c=e=>e.projectModelSelections[r],t[0]=r,t[1]=c);let l=X(c),u;t[2]===n?u=t[3]:(u=e=>e.projects.find(e=>e.projectId===n),t[2]=n,t[3]=u);let d=X(u),f=Nd(),p=iT(r,n,l),m=d?.commitMethod===ft.Direct,h=d?.name,g;t[4]!==p||t[5]!==o||t[6]!==n||t[7]!==h||t[8]!==r||t[9]!==f?(g={projectId:n,threadId:r,projectName:h,dispatch:o,aiGeneration:p,unifiedGitStatus:f},t[4]=p,t[5]=o,t[6]=n,t[7]=h,t[8]=r,t[9]=f,t[10]=g):g=t[10];let _=_T(g),v;t[11]!==_.commitGenerationRef||t[12]!==_.commitMessage||t[13]!==_.isCommitDialogOpen||t[14]!==_.isPRDialogOpen||t[15]!==_.prDescriptionRef||t[16]!==_.prGenerationRef||t[17]!==_.prTitleRef||t[18]!==_.setCommitMessage||t[19]!==_.setPrDescription||t[20]!==_.setPrTitle||t[21]!==_.userPrefs.autoGenerateCommitMessage||t[22]!==_.userPrefs.autoGeneratePRInfo||t[23]!==p||t[24]!==r?(v={threadId:r,aiGeneration:p,isCommitDialogOpen:_.isCommitDialogOpen,commitMessage:_.commitMessage,setCommitMessage:_.setCommitMessage,autoGenerateCommitMessage:_.userPrefs.autoGenerateCommitMessage,commitGenerationRef:_.commitGenerationRef,isPRDialogOpen:_.isPRDialogOpen,prTitleRef:_.prTitleRef,prDescriptionRef:_.prDescriptionRef,setPrTitle:_.setPrTitle,setPrDescription:_.setPrDescription,autoGeneratePRInfo:_.userPrefs.autoGeneratePRInfo,prGenerationRef:_.prGenerationRef},t[11]=_.commitGenerationRef,t[12]=_.commitMessage,t[13]=_.isCommitDialogOpen,t[14]=_.isPRDialogOpen,t[15]=_.prDescriptionRef,t[16]=_.prGenerationRef,t[17]=_.prTitleRef,t[18]=_.setCommitMessage,t[19]=_.setPrDescription,t[20]=_.setPrTitle,t[21]=_.userPrefs.autoGenerateCommitMessage,t[22]=_.userPrefs.autoGeneratePRInfo,t[23]=p,t[24]=r,t[25]=v):v=t[25],vT(v);let y;t[26]!==_||t[27]!==o||t[28]!==n||t[29]!==r||t[30]!==l?(y=async function(e){let t=l?.id&&l.provider?{model:l.id,provider:l.provider}:await Aw(n,r);if(!t){bT.error(`No model configuration found. Please configure a model and provider for this project first.`);return}jw(o,r,t.model,t.provider),o({type:Y.SetPendingChatMessage,message:{threadId:r,message:xT(e),model:t.model,provider:t.provider}}),_.setIsCommitDialogOpen(!1),_.dismissCommitError()},t[26]=_,t[27]=o,t[28]=n,t[29]=r,t[30]=l,t[31]=y):y=t[31];let b=y,x;t[32]===_?x=t[33]:(x=()=>_.setIsPRDialogOpen(!0),t[32]=_,t[33]=x);let S;t[34]===_?S=t[35]:(S=()=>{_.isLoading||_.isCreatingPR||_.handleGitOpsMenuOpenChange(!0)},t[34]=_,t[35]=S);let C;t[36]!==_.handleQuickCommit||t[37]!==_.handleViewInGitHub||t[38]!==_.isCreatingPR||t[39]!==_.isLoading||t[40]!==_.userPrefs.autoGenerateCommitMessage||t[41]!==m||t[42]!==x||t[43]!==S||t[44]!==f?(C={unifiedGitStatus:f,autoGenerateCommitMessage:_.userPrefs.autoGenerateCommitMessage,isLoading:_.isLoading,isCreatingPR:_.isCreatingPR,isDirectCommitMode:m,onQuickCommit:_.handleQuickCommit,onCreatePR:x,onViewInGitHub:_.handleViewInGitHub,onOpenGitOpsMenu:S},t[36]=_.handleQuickCommit,t[37]=_.handleViewInGitHub,t[38]=_.isCreatingPR,t[39]=_.isLoading,t[40]=_.userPrefs.autoGenerateCommitMessage,t[41]=m,t[42]=x,t[43]=S,t[44]=f,t[45]=C):C=t[45],yT(C);let w;t[46]===f?w=t[47]:(w=Bw(f),t[46]=f,t[47]=w);let T=w,E;t[48]!==_.isCreatingPR||t[49]!==_.isLoading||t[50]!==f?(E=zw(f,_.isLoading,_.isCreatingPR),t[48]=_.isCreatingPR,t[49]=_.isLoading,t[50]=f,t[51]=E):E=t[51];let D=E,O=_.isLoading||_.isCreatingPR,k=D&&!O,A;t[52]!==_.isCreatingPR||t[53]!==f?(A=Iw(f,_.isCreatingPR),t[52]=_.isCreatingPR,t[53]=f,t[54]=A):A=t[54];let j=A,N;t[55]!==_.isCreatingPR||t[56]!==_.isLoading||t[57]!==f?(N=_.isCreatingPR?(0,$.jsx)(lp,{size:`sm`}):Lw(f,_.isCreatingPR,_.isLoading)??(0,$.jsx)(M,{className:`h-4 w-4 shrink-0`}),t[55]=_.isCreatingPR,t[56]=_.isLoading,t[57]=f,t[58]=N):N=t[58];let P=N,F=s&&!T?Hw:Vw,I;t[59]===f?I=t[60]:(I=Rw(f),t[59]=f,t[60]=I);let L;t[61]!==_||t[62]!==p||t[63]!==m||t[64]!==a||t[65]!==f?(L=(0,$.jsx)(TT,{unifiedGitStatus:f,actions:_,isDirectCommitMode:m,aiGeneration:p,layout:a}),t[61]=_,t[62]=p,t[63]=m,t[64]=a,t[65]=f,t[66]=L):L=t[66];let R;t[67]!==_.handleMainButtonClick||t[68]!==T||t[69]!==O||t[70]!==k||t[71]!==D||t[72]!==P||t[73]!==j||t[74]!==I||t[75]!==L?(R={isBrandState:T,isMainButtonVisuallyDisabled:k,isMainButtonHardDisabled:O,mainButtonDisabled:D,mainButtonText:j,mainButtonIcon:P,tooltip:I,onMainButtonClick:_.handleMainButtonClick,dropdown:L},t[67]=_.handleMainButtonClick,t[68]=T,t[69]=O,t[70]=k,t[71]=D,t[72]=P,t[73]=j,t[74]=I,t[75]=L,t[76]=R):R=t[76];let z=R,B;t[77]!==F||t[78]!==a||t[79]!==z?(B=a===`sidebar`?(0,$.jsx)(ST,{...z}):a===`bar`?(0,$.jsx)(CT,{footerPillButtonClass:F,...z}):(0,$.jsx)(wT,{...z}),t[77]=F,t[78]=a,t[79]=z,t[80]=B):B=t[80];let V;t[81]!==_||t[82]!==p||t[83]!==b||t[84]!==f.currentBranch?(V=(0,$.jsx)(ET,{actions:_,aiGeneration:p,currentBranch:f.currentBranch,onFixCommitErrorInChat:b}),t[81]=_,t[82]=p,t[83]=b,t[84]=f.currentBranch,t[85]=V):V=t[85];let H;return t[86]!==B||t[87]!==V?(H=(0,$.jsxs)($.Fragment,{children:[B,V]}),t[86]=B,t[87]=V,t[88]=H):H=t[88],H}var OT=Ut(`app.open-with-button.ui`),kT=`VS Code`;function AT(e){return e||Ji(kT)}var jT={"VS Code":`vscode`,Antigravity:`antigravity`,Cursor:`cursor`,"Devin Desktop":`devin`,Windsurf:`windsurf`,Xcode:`xcode`,"Android Studio":`android-studio`,Kiro:`kiro`,Terminal:`terminal`},MT=`h-4 w-4 dark:invert`,NT=`h-4 w-4 dark:invert group-hover:invert dark:group-hover:invert-0`;function PT({projectId:e,threadId:t,openWith:n,layout:r=`bar`}){let i=mC(),[a,o]=(0,Z.useState)(!1),[s,c]=(0,Z.useState)([]),[l,u]=(0,Z.useState)(()=>AT(n)),[d,f]=(0,Z.useState)(!0);(0,Z.useEffect)(()=>{(async()=>{try{let e=await Jr();c(e);let t=AT(n);e.includes(t)?u(t):e.length>0&&u(e[0])}catch(e){OT.error(`Failed to fetch available programs:`,e),c([kT])}finally{f(!1)}})()},[]),(0,Z.useEffect)(()=>{if(n&&s.includes(n)){u(n);return}let e=Ji(kT);!n&&s.includes(e)&&u(e)},[n,s]);async function p(t){u(t),La(t),await Rr(e,t)}let m=async n=>{try{o(!0),await p(n),t?await Wi(t,n):await Nr(e,n),ac({title:`Success`,description:`Opened project in ${n}`})}catch(e){OT.error(`Failed to open project in ${n}:`,e);let t=`Failed to open project in ${n}`;if(e instanceof Error){let n=e;t=n.details?n.details:e.message}ac({title:`Error`,description:t,variant:`destructive`})}finally{o(!1)}};async function h(e){try{await p(e)}catch(t){OT.error(`Failed to save preferred IDE (${e}):`,t),ac({title:`Error`,description:`Failed to save IDE preference`,variant:`destructive`})}}let g=async()=>{await m(l)},_=i?`ghost`:`outline`,v=i?nl:`border-transparent`;return d?(0,$.jsx)(Hr,{variant:_,size:`sm`,className:G(`h-8`,v),disabled:!0,children:(0,$.jsx)(`div`,{className:`h-4 w-4 animate-pulse bg-muted rounded`})}):r===`menu`?(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(Hr,{variant:`ghost`,size:`sm`,className:`group w-full justify-start gap-2`,disabled:a,onClick:()=>{g()},children:[(0,$.jsx)(`img`,{src:`/ide/${jT[l]||jT[kT]}.svg`,alt:l,className:G(NT,`shrink-0`)}),`Open in `,l]}),(0,$.jsxs)(jp,{children:[(0,$.jsx)(Mp,{asChild:!0,children:(0,$.jsxs)(Hr,{variant:`ghost`,size:`sm`,className:`w-full justify-start gap-2`,children:[(0,$.jsx)(tn,{className:`h-4 w-4 shrink-0`}),`Change IDE`]})}),(0,$.jsx)(Np,{align:`start`,className:`w-56 p-1`,children:s.map(e=>(0,$.jsxs)(`button`,{type:`button`,className:`flex w-full items-center gap-2 rounded-sm px-2 py-1.5 text-sm hover:bg-accent disabled:opacity-50`,onClick:()=>{h(e)},disabled:a,children:[(0,$.jsx)(`img`,{src:`/ide/${jT[e]||jT[kT]}.svg`,alt:e,className:G(MT,`shrink-0`)}),e]},e))})]})]}):(0,$.jsxs)(`div`,{className:`flex items-center gap-0`,children:[(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(Hr,{variant:_,size:`sm`,className:G(`h-8 rounded-r-none`,i?G(`group`,nl):`border-r-0 border-transparent`),disabled:a,onClick:g,children:(0,$.jsx)(`img`,{src:`/ide/${jT[l]||jT[kT]}.svg`,alt:l,className:i?NT:MT})})}),(0,$.jsx)(Fr,{children:`Open in ${l}`})]}),(0,$.jsxs)(hl,{children:[(0,$.jsx)(gl,{asChild:!0,children:(0,$.jsx)(Hr,{variant:_,size:`sm`,className:G(`h-8 w-8 rounded-l-none px-1`,v),disabled:a,children:(0,$.jsx)(tn,{className:`h-3.5 w-3.5`})})}),(0,$.jsx)(bl,{align:`end`,children:s.map(e=>(0,$.jsxs)(xl,{onClick:()=>void h(e),disabled:a,className:`flex items-center gap-2`,children:[(0,$.jsx)(`img`,{src:`/ide/${jT[e]||jT[kT]}.svg`,alt:e,className:MT}),e]},e))})]})]})}function FT(){return`dev-server-${Date.now()}-${Math.random().toString(36).slice(2,9)}`}function IT(e,t){return Cc({messageId:`msg-dev-server-${t}`,command:e,toolCallId:t})}function LT(e,t){e({type:Y.AddMessage,message:IT(t.command,t.toolCallId),threadId:t.threadId}),e({type:Y.SetDevServerToolSession,session:t})}function RT(e,t,n,r){r&&e({type:Y.AppendToolExecutionOutput,toolCallId:t,threadId:n,toolName:`bash`,delta:r})}function zT(e,t,n,r){e({type:Y.UpdateMessage,messageId:t.messageId,threadId:t.threadId,content:jc(Sc(t.command,t.toolCallId),t.toolCallId,n,r)}),e({type:Y.ClearToolCallProgress,toolCallId:t.toolCallId}),e({type:Y.SetDevServerToolSession,session:null})}function BT(e,t){`content`in e&&typeof e.content==`string`&&t(e.content)}function VT(e,t){e.isUrlDetected?.()||(e.markUrlDetected?.(),vw(t)&&Promise.resolve(e.onUrl?.(t.url)))}function HT(e,t){Promise.resolve(e.onPortInUse?.({port:`port`in t&&typeof t.port==`number`?t.port:void 0,pid:`pid`in t&&typeof t.pid==`number`?t.pid:void 0,command:`command`in t&&typeof t.command==`string`?t.command:void 0}))}function UT(e,t){`exitCode`in t&&typeof t.exitCode==`number`&&e.onExitCode?.(t.exitCode)}function WT(e,t){let n=`message`in t&&t.message!=null?String(t.message):`error`in t&&t.error!=null?String(t.error):`Dev server error`;RT(e.dispatch,e.toolCallId,e.threadId,`${n}\n`)}function GT(e){let t=``;function n(n){if(RT(e.dispatch,e.toolCallId,e.threadId,n),t+=n,e.isUrlDetected?.())return;let r=m(t);r&&(e.markUrlDetected?.(),Promise.resolve(e.onUrl?.(r)))}function r(t){if(t.type===`stdout`||t.type===`stderr`){BT(t,n);return}if(vw(t)){VT(e,t);return}if(t.type===`port_in_use`){HT(e,t);return}if(t.type===`complete`){UT(e,t);return}t.type===`error`&&WT(e,t)}return function(e){if(typeof e==`string`){n(e);return}!e||typeof e!=`object`||`type`in e&&r(e)}}function KT(e){return e instanceof DOMException&&e.name===`AbortError`}async function qT(e,t,n){let r=e.getReader(),i=new TextDecoder,a=``;try{for(;;){if(n?.aborted){await r.cancel();return}let{done:e,value:o}=await r.read();if(e)break;a+=i.decode(o,{stream:!0});let s=a.split(`
3327
- `);a=s.pop()??``;for(let e of s)if(e.trim())try{t(JSON.parse(e))}catch{t(e)}}if(a.trim())try{t(JSON.parse(a))}catch{t(a)}}catch(e){if(n?.aborted||KT(e))return;throw e}finally{r.releaseLock()}}var JT=Ut(`app.use-start-dev-server.hook`);function YT(e){return new Promise(t=>{setTimeout(t,e)})}function XT(e){return e==null?`Dev server port is already in use.`:`Port ${e} is already in use.`}function ZT(){let e=X(e=>e.selectedThreadId),t=Ks(),n=Vs(),{openChatDockPanel:r}=Hd(),{setDevServerUrl:i,setDevServerState:a,setDevServerFailureReason:o,setDevServerProcessAlive:s,setDevServerProjectId:c,setDevServerStopped:l,devServerStopRequestedRef:u,requestPortConflictConfirmation:d}=gw(),f=(0,Z.useRef)(null),p=(0,Z.useRef)(!1),h=(0,Z.useRef)(!1),g=(0,Z.useRef)(!1),_=(0,Z.useRef)(!1),v=(0,Z.useRef)(null);function y(e){return n.getState().toolCallProgress[e.toolCallId]?.executionOutput??``}function b(e){let t=y(e);return u.current?(u.current=!1,`${t}${t.endsWith(`
3323
+ `}),(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:V}),(0,$.jsx)(Fr,{side:`top`,className:`bg-popover text-popover-foreground max-w-64`,children:B})]}),c?(0,$.jsx)(lS,{open:y,onOpenChange:b,onRetry:I,isDownloading:A,isInitializing:j,progress:d,error:y?u:null}):null]})}function dS(e){let t=(0,Q.c)(8),{queuedMessages:n,onRemoveQueuedMessage:r}=e;if(n.length===0)return null;let i;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(i=(0,$.jsx)(`div`,{className:U.dropdownGroupHeading,children:`Queued messages`}),t[0]=i):i=t[0];let a;if(t[1]!==r||t[2]!==n){let e;t[4]===r?e=t[5]:(e=e=>(0,$.jsxs)(`div`,{className:G(U.body,`flex items-start justify-between gap-3 rounded-md border border-border/60 bg-background px-3 py-2`),children:[(0,$.jsx)(`p`,{className:`flex-1 whitespace-pre-wrap text-foreground select-text line-clamp-3`,children:e.message}),(0,$.jsx)(`button`,{type:`button`,className:`rounded-full p-1 text-muted-foreground transition-colors hover:bg-foreground hover:text-background`,onClick:()=>r(e.id),"aria-label":`Remove queued message`,children:(0,$.jsx)(nt,{className:`h-3.5 w-3.5`})})]},e.id),t[4]=r,t[5]=e),a=n.map(e),t[1]=r,t[2]=n,t[3]=a}else a=t[3];let o;return t[6]===a?o=t[7]:(o=(0,$.jsxs)(mo,{className:`mb-3 border border-border/60 bg-muted/30 px-4 py-3`,children:[i,(0,$.jsx)(`div`,{className:`mt-2 flex flex-col gap-2`,children:a})]}),t[6]=a,t[7]=o),o}async function fS(e,t,n=!1){return Va(`api/threads/${ao(e)}/explorer?path=${encodeURIComponent(t)}&recursive=${n}`)}async function pS(e,t){return Va(`api/threads/${ao(e)}/ai-file?path=${encodeURIComponent(t)}`)}async function mS(e,t,n){return $o(`api/threads/${ao(e)}/ai-file`,{path:t,content:n})}async function hS(e,t){return yo(`api/threads/${ao(e)}/explorer?path=${encodeURIComponent(t)}`)}async function gS(e,t,n){return Ho(`api/threads/${ao(e)}/explorer`,{path:t,newName:n})}async function _S(e,t,n){return is(`api/threads/${ao(e)}/explorer/file`,{dirPath:t,name:n})}async function vS(e,t,n){let r=new URLSearchParams({dirPath:t,name:n.name});return fa(`api/threads/${ao(e)}/explorer/upload?${r.toString()}`,n)}async function yS(e,t){return ra(`api/threads/${ao(e)}/explorer/media?path=${encodeURIComponent(t)}`)}async function bS(e,t,n){return is(`api/threads/${ao(e)}/explorer/folder`,{dirPath:t,name:n})}async function xS(e,t){return is(`api/threads/${ao(e)}/explorer/open`,{path:t})}async function SS(e,t){return is(`api/threads/${ao(e)}/explorer/print-markdown`,{path:t})}function CS(e){return e?Array.from(e.types).includes(`Files`):!1}function wS(e){let t=Array.from(e.items??[]);if(t.length===0)return{files:Array.from(e.files),skippedFolders:0};let n=[],r=0;for(let e of t){if(e.kind!==`file`)continue;if(e.webkitGetAsEntry?.()?.isDirectory){r+=1;continue}let t=e.getAsFile();t&&n.push(t)}return{files:n,skippedFolders:r}}function TS(e){return e?`the "${e}/" folder`:`the repository root`}function ES(e){let t=e.slice(0,3).map(e=>`"${e.name}"`),n=e.length>3?` and ${e.length-3} more`:``;return`${t.join(`, `)}${n}`}async function DS(e,t,n){let r=await Promise.allSettled(n.map(n=>vS(e,t,n))),i=[],a=[];for(let e=0;e<r.length;e+=1){let t=r[e];t.status===`fulfilled`?i.push(n[e]):a.push(t.reason)}return{copied:i,failures:a}}function OS(e,t,n){if(n.length===0)return{title:t===1?`File copied`:`Files copied`,description:`Copied ${ES(e.files)} into ${TS(e.dirPath)}.`};let r=n[0];return{title:t>0?`Some files were not copied`:`Copy failed`,description:r instanceof Error?r.message:`Failed to copy the dropped file.`,variant:`destructive`}}function kS(e){let t=(0,Q.c)(30),{pendingDrop:n,dropCopying:r,onConfirm:i,onDismiss:a}=e,o=n!==null,s;t[0]!==r||t[1]!==a?(s=e=>{!e&&!r&&a()},t[0]=r,t[1]=a,t[2]=s):s=t[2];let c=n&&n.files.length>1?`files`:`file`,l;t[3]===c?l=t[4]:(l=(0,$.jsxs)(sc,{children:[`Copy `,c]}),t[3]=c,t[4]=l);let u;t[5]===n?u=t[6]:(u=n?`Copy ${ES(n.files)} into ${TS(n.dirPath)}?`:null,t[5]=n,t[6]=u);let d;t[7]===u?d=t[8]:(d=(0,$.jsx)(oc,{children:u}),t[7]=u,t[8]=d);let f;t[9]===r?f=t[10]:(f=(0,$.jsx)(dc,{disabled:r,children:`Cancel`}),t[9]=r,t[10]=f);let p;t[11]===i?p=t[12]:(p=e=>{e.preventDefault(),i()},t[11]=i,t[12]=p);let m;t[13]===r?m=t[14]:(m=r?(0,$.jsx)(ln,{className:`h-4 w-4 animate-spin`}):null,t[13]=r,t[14]=m);let h;t[15]!==r||t[16]!==p||t[17]!==m?(h=(0,$.jsxs)(lc,{disabled:r,onClick:p,children:[m,`Copy`]}),t[15]=r,t[16]=p,t[17]=m,t[18]=h):h=t[18];let g;t[19]!==h||t[20]!==f?(g=(0,$.jsxs)(`div`,{className:`flex justify-end gap-3`,children:[f,h]}),t[19]=h,t[20]=f,t[21]=g):g=t[21];let _;t[22]!==g||t[23]!==l||t[24]!==d?(_=(0,$.jsxs)(cc,{children:[l,d,g]}),t[22]=g,t[23]=l,t[24]=d,t[25]=_):_=t[25];let v;return t[26]!==o||t[27]!==_||t[28]!==s?(v=(0,$.jsx)(pc,{open:o,onOpenChange:s,children:_}),t[26]=o,t[27]=_,t[28]=s,t[29]=v):v=t[29],v}var AS=Ut(`app.use-composer-file-drop.hook`);function jS({threadId:e,mode:t,onAttachmentsAdded:n}){let{triggerExplorerRefresh:r}=vc(),[i,a]=(0,Z.useState)(null),[o,s]=(0,Z.useState)(!1),[c,l]=(0,Z.useState)(!1),u=(0,Z.useRef)(0),d=(0,Z.useCallback)(()=>{u.current=0,l(!1)},[]),f=(0,Z.useCallback)(e=>{CS(e.dataTransfer)&&(u.current+=1,l(!0))},[]),p=(0,Z.useCallback)(e=>{CS(e.dataTransfer)&&(e.preventDefault(),e.dataTransfer.dropEffect=`copy`)},[]),m=(0,Z.useCallback)(e=>{CS(e.dataTransfer)&&(u.current=Math.max(0,u.current-1),u.current===0&&l(!1))},[]),h=(0,Z.useCallback)(t=>{if(!CS(t.dataTransfer))return;if(t.preventDefault(),d(),!e){ac({title:`Select a thread first`,description:`Choose a thread before copying files into the project.`});return}let{files:n,skippedFolders:r}=wS(t.dataTransfer);r>0&&ac({title:`Folders skipped`,description:`Only files can be copied. Drop individual files instead of folders.`}),n.length!==0&&a({files:n,dirPath:``})},[d,e]),g=(0,Z.useCallback)(async()=>{if(!(!i||!e||o)){s(!0);try{let{copied:a,failures:o}=await DS(e,i.dirPath,i.files);if(a.length>0&&r(),ac(OS(i,a.length,o)),t===`attach`&&a.length>0&&n)try{n(await Rb(a))}catch(e){AS.error(`Failed to read dropped files as attachments`,{error:e}),ac({title:`Files copied but not attached`,description:`The files are in the project, but could not be added to the composer.`,variant:`destructive`})}}finally{s(!1),a(null)}}},[o,t,n,i,e,r]);return{isFileDragOver:c,dropTargetProps:{onDragEnter:f,onDragOver:p,onDragLeave:m,onDrop:h},dragOverSurfaceClassName:G(c&&`ring-2 ring-primary/40 ring-offset-0 border-primary/50`),confirmDialog:(0,$.jsx)(kS,{pendingDrop:i,dropCopying:o,onConfirm:()=>{g()},onDismiss:()=>{a(null)}})}}var MS=Ut(`app.chat-input.ui`);function NS({isStreaming:e,isVoiceActive:t,disabled:n,isRouting:r,canSubmitMessage:i,speechDisabled:a,hasMessageText:o,attachmentsLength:s,effectiveModel:c}){return!e&&!t&&((n??!1)||r||!i&&a||!o&&s>0&&!c||o&&!c)}function PS({isStreaming:e,isVoiceActive:t,label:n,canSubmitMessage:r}){return e?`Stop generation`:t?n:r?`Send message`:n}function FS(e){let t=(0,Q.c)(42),{onSpeechClick:n,speechDisabled:r,icon:i,label:a,isRecording:o,isTranscribing:s,isDownloading:c,isSupported:l,hasMessageText:u,setIsVoiceActive:d,isStreaming:f,disabled:p,canSubmitMessage:m,attachmentsLength:h,effectiveModel:g,onStop:_,onSend:v,isRouting:y}=e,b=y===void 0?!1:y,x=o||s||c,S,C;t[0]!==x||t[1]!==d?(S=()=>{d(x)},C=[x,d],t[0]=x,t[1]=d,t[2]=S,t[3]=C):(S=t[2],C=t[3]),(0,Z.useEffect)(S,C);let w;t[4]!==h||t[5]!==m||t[6]!==p||t[7]!==g||t[8]!==u||t[9]!==b||t[10]!==f||t[11]!==x||t[12]!==r?(w=NS({isStreaming:f,isVoiceActive:x,disabled:p,isRouting:b,canSubmitMessage:m,speechDisabled:r,hasMessageText:u,attachmentsLength:h,effectiveModel:g}),t[4]=h,t[5]=m,t[6]=p,t[7]=g,t[8]=u,t[9]=b,t[10]=f,t[11]=x,t[12]=r,t[13]=w):w=t[13];let T=w,E;t[14]!==m||t[15]!==f||t[16]!==x||t[17]!==v||t[18]!==n||t[19]!==_?(E=function(){if(f){_?.();return}if(x){n();return}if(m){v();return}n()},t[14]=m,t[15]=f,t[16]=x,t[17]=v,t[18]=n,t[19]=_,t[20]=E):E=t[20];let D=E,O;t[21]!==m||t[22]!==f||t[23]!==x||t[24]!==a?(O=PS({isStreaming:f,isVoiceActive:x,label:a,canSubmitMessage:m}),t[21]=m,t[22]=f,t[23]=x,t[24]=a,t[25]=O):O=t[25];let k=O,A=`relative h-7 w-7 rounded-full ${o?`bg-primary text-primary-foreground hover:bg-primary/90`:``} ${f?`before:absolute before:inset-[-1px] before:rounded-full before:border before:border-primary/60 before:animate-ping-subtle before:content-['']`:``}`,j;t[26]!==m||t[27]!==i||t[28]!==f||t[29]!==x?(j=f?(0,$.jsx)(`span`,{className:`block h-3 w-3 shrink-0 rounded-[2px] bg-current`,"aria-hidden":`true`}):x||!m?i:(0,$.jsx)(V,{className:`h-3 w-3`}),t[26]=m,t[27]=i,t[28]=f,t[29]=x,t[30]=j):j=t[30];let M;t[31]===k?M=t[32]:(M=(0,$.jsx)(`span`,{className:`sr-only`,children:k}),t[31]=k,t[32]=M);let N;t[33]===l?N=t[34]:(N=!l&&(0,$.jsx)(`span`,{className:`sr-only`,children:`Voice input not supported`}),t[33]=l,t[34]=N);let P;return t[35]!==D||t[36]!==T||t[37]!==N||t[38]!==A||t[39]!==j||t[40]!==M?(P=(0,$.jsxs)(Hr,{size:`icon`,className:A,onClick:D,disabled:T,children:[j,M,N]}),t[35]=D,t[36]=T,t[37]=N,t[38]=A,t[39]=j,t[40]=M,t[41]=P):P=t[41],P}function IS({ralphMode:e,effectivePlanMode:t,imageMode:n,isVoiceActive:r}){return e?`Describe stories for Ralph to implement autonomously...`:t?`Describe what you want Tarsk to plan...`:n?`Describe the image you want to generate...`:r?`Dictate your message...`:`Ask Tarsk anything, @ for files, / for commands & skills`}function LS(e,t,n,r){return r?t+n:(e===``||e.endsWith(` `),e+n)}function RS(e,t){if(!e)return!1;let n=Array.from(e).filter(e=>e.type.startsWith(`image/`));if(n.length===0)return!1;for(let e of n){let n=e.getAsFile();if(!n)continue;let r=new FileReader;r.onload=()=>{let e=r.result.split(`,`)[1];t({fileName:n.name||`pasted-image.${n.type.split(`/`)[1]||`png`}`,content:e,mimeType:n.type})},r.readAsDataURL(n)}return!0}function zS(e,t){return e.find(e=>e.id===t.model.id&&e.provider===t.model.provider)??null}function BS(e,t,n){let r=zS(e,t);return r&&(r.id!==n?.id||r.provider!==n?.provider)?r:null}function VS(e){let t=(0,Q.c)(29),{storeSelectedThreadId:n,imageMode:r,selectedImageModel:i,selectedModel:a,availableImageModels:o,availableModels:s,autoMode:c,message:l}=e,u=Yn(),{paneId:d,conversationId:f,setFocused:p,fillPane:m}=wv(),h;t[0]!==d||t[1]!==n?(h=e=>As(e.threadStreamingStates,n,d).contextUsage,t[0]=d,t[1]=n,t[2]=h):h=t[2];let g=X(h),_;t[3]===d?_=t[4]:(_=e=>ys(e,d),t[3]=d,t[4]=_);let v=X(_),y=X(WS),b;t[5]===y?b=t[6]:(b=e=>{if(y)return e.projects.find(e=>e.projectId===y)?.modelAliases},t[5]=y,t[6]=b);let x=X(b),S;t[7]===v?S=t[8]:(S=v.some(US),t[7]=v,t[8]=S);let C=S,w;t[9]===v?w=t[10]:(w=v.some(HS),t[9]=v,t[10]=w);let T=!w,E=r?i:a,D=r?o:s,O=c&&!r&&T,k;t[11]===l?k=t[12]:(k=l.trim(),t[11]=l,t[12]=k);let A=k.length>0,j;return t[13]!==f||t[14]!==D||t[15]!==E||t[16]!==m||t[17]!==C||t[18]!==A||t[19]!==O||t[20]!==T||t[21]!==g||t[22]!==v||t[23]!==x||t[24]!==u||t[25]!==d||t[26]!==y||t[27]!==p?(j={navigate:u,paneId:d,conversationId:f,setFocused:p,fillPane:m,liveContextUsage:g,messages:v,selectedProjectId:y,modelAliases:x,hasConversationMessages:C,isFirstUserPrompt:T,effectiveModel:E,effectiveAvailableModels:D,hideModelSelector:O,hasMessageText:A},t[13]=f,t[14]=D,t[15]=E,t[16]=m,t[17]=C,t[18]=A,t[19]=O,t[20]=T,t[21]=g,t[22]=v,t[23]=x,t[24]=u,t[25]=d,t[26]=y,t[27]=p,t[28]=j):j=t[28],j}function HS(e){return e.sender===`user`}function US(e){return e.sender===`agent`}function WS(e){return e.selectedProjectId}function GS(e){let t=(0,Q.c)(8),{storeSelectedThreadId:n,availableModels:r,selectedModel:i,setSelectedModel:a}=e,[o,s]=(0,Z.useState)(null),c=o&&o.threadId===n?o.resolution:null,l;t[0]!==r||t[1]!==i||t[2]!==a||t[3]!==n?(l=e=>{s({threadId:n,resolution:e});let t=BS(r,e,i);t&&a(t)},t[0]=r,t[1]=i,t[2]=a,t[3]=n,t[4]=l):l=t[4];let u=l,d;return t[5]!==c||t[6]!==u?(d={autoRoute:c,handleAutoRouteResolved:u},t[5]=c,t[6]=u,t[7]=d):d=t[7],d}function KS(e){let t=(0,Q.c)(10),{setMessage:n,setAttachments:r}=e,i=Z.useRef(``),a;t[0]===n?a=t[1]:(a=()=>{n(e=>(i.current=e,e))},t[0]=n,t[1]=a);let o=a,s;t[2]===n?s=t[3]:(s=(e,t)=>{n(n=>LS(n,i.current,e,t?.replace))},t[2]=n,t[3]=s);let c=s,l;t[4]===r?l=t[5]:(l=e=>{RS(e.clipboardData?.items,e=>{r(t=>[...t,e])})&&e.preventDefault()},t[4]=r,t[5]=l);let u=l,d;return t[6]!==u||t[7]!==c||t[8]!==o?(d={handleVoiceSessionStart:o,handleSpeechTranscript:c,handlePaste:u},t[6]=u,t[7]=c,t[8]=o,t[9]=d):d=t[9],d}function qS(e){let t=(0,Q.c)(13),{textareaRef:n,autoFocus:r,value:i,onChange:a,onKeyDown:o,onPaste:s,onFocus:c,placeholder:l,isSingleLine:u,disabled:d}=e,f=u?`order-2 flex-1 overflow-hidden py-1.5`:`order-1 min-h-[4.5rem] w-full pt-4 pb-2`,p;t[0]===f?p=t[1]:(p=G(U.body,`min-w-0 resize-none bg-transparent px-3 text-foreground placeholder:text-muted-foreground focus:outline-none`,f),t[0]=f,t[1]=p);let m;return t[2]!==r||t[3]!==d||t[4]!==a||t[5]!==c||t[6]!==o||t[7]!==s||t[8]!==l||t[9]!==p||t[10]!==n||t[11]!==i?(m=(0,$.jsx)(`textarea`,{ref:n,autoFocus:r,value:i,onChange:a,onKeyDown:o,onPaste:s,onFocus:c,placeholder:l,rows:1,className:p,disabled:d}),t[2]=r,t[3]=d,t[4]=a,t[5]=c,t[6]=o,t[7]=s,t[8]=l,t[9]=p,t[10]=n,t[11]=i,t[12]=m):m=t[12],m}function JS(e){let t=(0,Q.c)(11),{attachments:n,selectedModel:r,onRemove:i}=e,a;t[0]!==n||t[1]!==i?(a=(0,$.jsx)(hb,{attachments:n,onRemove:i}),t[0]=n,t[1]=i,t[2]=a):a=t[2];let o;t[3]!==n||t[4]!==r?.id||t[5]!==r?.name||t[6]!==r?.supportsImages?(o=n.some(YS)&&r?.supportsImages===!1&&(0,$.jsxs)(`div`,{className:G(U.compact,`mb-2 flex items-center gap-1.5 text-amber-500`),children:[(0,$.jsx)(an,{className:`h-3 w-3 shrink-0`}),(0,$.jsxs)(`span`,{children:[`Images are not supported by `,r?.name||r?.id]})]}),t[3]=n,t[4]=r?.id,t[5]=r?.name,t[6]=r?.supportsImages,t[7]=o):o=t[7];let s;return t[8]!==a||t[9]!==o?(s=(0,$.jsxs)(`div`,{className:`order-2 w-full px-1`,children:[a,o]}),t[8]=a,t[9]=o,t[10]=s):s=t[10],s}function YS(e){return e.mimeType.startsWith(`image/`)}function XS(e){let t=(0,Q.c)(36),{disabled:n,isRouting:r,canAddTask:i,isSingleLine:a,planMode:o,imageMode:s,ralphMode:c,orchestrateMode:l,autoMode:u,setPlanMode:d,setImageMode:f,setRalphMode:p,setOrchestrateMode:m,setAutoMode:h,lastAutoRouteDecision:g,projectId:_,skills:v,slashCommands:y,onSelectSkill:b,onSelectSlashCommand:x,onFileAttach:S,message:C,selectedThreadId:w,paneId:T,dispatch:E,textareaRef:D,onUserTaskCreated:O,setMessage:k,setAttachments:A}=e,j;t[0]!==E||t[1]!==C||t[2]!==O||t[3]!==T||t[4]!==_||t[5]!==w||t[6]!==A||t[7]!==k||t[8]!==D?(j=function(){if(!_||!w)return;let e=C.trim();e&&aa(_,e).then(e=>{O?.(e),k(``),A([]),E({type:Y.ClearChatInputDraft,threadId:T===`primary`?w:`${w}:${T}`}),D.current&&(D.current.style.height=`auto`)}).catch(ZS)},t[0]=E,t[1]=C,t[2]=O,t[3]=T,t[4]=_,t[5]=w,t[6]=A,t[7]=k,t[8]=D,t[9]=j):j=t[9];let M=j,N=a?`order-1`:`order-3`,P;t[10]===N?P=t[11]:(P=G(`flex items-center`,N),t[10]=N,t[11]=P);let F=n||r,I=g??null,L;t[12]!==u||t[13]!==i||t[14]!==M||t[15]!==s||t[16]!==S||t[17]!==b||t[18]!==x||t[19]!==l||t[20]!==o||t[21]!==_||t[22]!==c||t[23]!==h||t[24]!==f||t[25]!==m||t[26]!==d||t[27]!==p||t[28]!==v||t[29]!==y||t[30]!==F||t[31]!==I?(L=(0,$.jsx)(kx,{disabled:F,canAddTask:i,planMode:o,imageMode:s,ralphMode:c,orchestrateMode:l,autoMode:u,setPlanMode:d,setImageMode:f,setRalphMode:p,setOrchestrateMode:m,setAutoMode:h,lastAutoRouteDecision:I,projectId:_,skills:v,onSelectSkill:b,slashCommands:y,onSelectSlashCommand:x,onFileAttach:S,onAddTask:M}),t[12]=u,t[13]=i,t[14]=M,t[15]=s,t[16]=S,t[17]=b,t[18]=x,t[19]=l,t[20]=o,t[21]=_,t[22]=c,t[23]=h,t[24]=f,t[25]=m,t[26]=d,t[27]=p,t[28]=v,t[29]=y,t[30]=F,t[31]=I,t[32]=L):L=t[32];let R;return t[33]!==P||t[34]!==L?(R=(0,$.jsx)(`div`,{className:P,children:L}),t[33]=P,t[34]=L,t[35]=R):R=t[35],R}function ZS(e){MS.error(`Failed to create user task:`,e)}function QS(e){let t=(0,Q.c)(37),{isSingleLine:n,hideModelSelector:r,availableModels:i,selectedModel:a,onModelSelect:o,onReasoningEffortChange:s,threadId:c,conversationId:l,messages:u,isStreaming:d,liveContextUsage:f,onSpeechTranscript:p,onVoiceSessionStart:m,speechProvider:h,speechModel:g,hasMessageText:_,setIsVoiceActive:v,disabled:y,canSubmitMessage:b,attachmentsLength:x,effectiveModel:S,onStop:C,onSend:w,isRouting:T}=e,E=n?`order-3`:`order-4`,D;t[0]===E?D=t[1]:(D=G(`flex items-center gap-1`,E),t[0]=E,t[1]=D);let O;t[2]!==i||t[3]!==r||t[4]!==o||t[5]!==s||t[6]!==a?(O=!r&&(0,$.jsx)(ex,{availableModels:i,selectedModel:a,onModelSelect:o,onReasoningEffortChange:s}),t[2]=i,t[3]=r,t[4]=o,t[5]=s,t[6]=a,t[7]=O):O=t[7];let k=d?f:void 0,A;t[8]!==l||t[9]!==d||t[10]!==u||t[11]!==k||t[12]!==c?(A=(0,$.jsx)(Ib,{threadId:c,conversationId:l,messages:u,isStreaming:d,liveContextUsage:k}),t[8]=l,t[9]=d,t[10]=u,t[11]=k,t[12]=c,t[13]=A):A=t[13];let j;t[14]!==x||t[15]!==b||t[16]!==y||t[17]!==S||t[18]!==_||t[19]!==T||t[20]!==d||t[21]!==w||t[22]!==C||t[23]!==v?(j=e=>{let{onClick:t,disabled:n,icon:r,label:i,isRecording:a,isTranscribing:o,isDownloading:s,isSupported:c}=e;return(0,$.jsx)(FS,{onSpeechClick:t,speechDisabled:n,icon:r,label:i,isRecording:a,isTranscribing:o,isDownloading:s,isSupported:c,hasMessageText:_,setIsVoiceActive:v,isStreaming:d,disabled:y,canSubmitMessage:b,attachmentsLength:x,effectiveModel:S,onStop:C,onSend:w,isRouting:T})},t[14]=x,t[15]=b,t[16]=y,t[17]=S,t[18]=_,t[19]=T,t[20]=d,t[21]=w,t[22]=C,t[23]=v,t[24]=j):j=t[24];let M;t[25]!==p||t[26]!==m||t[27]!==g||t[28]!==h||t[29]!==j||t[30]!==c?(M=(0,$.jsx)(uS,{onTranscript:p,onVoiceSessionStart:m,threadId:c,provider:h,model:g,children:j}),t[25]=p,t[26]=m,t[27]=g,t[28]=h,t[29]=j,t[30]=c,t[31]=M):M=t[31];let N;return t[32]!==D||t[33]!==O||t[34]!==A||t[35]!==M?(N=(0,$.jsxs)(`div`,{className:D,children:[O,A,M]}),t[32]=D,t[33]=O,t[34]=A,t[35]=M,t[36]=N):N=t[36],N}function $S(e){let t=(0,Q.c)(125),{fillPane:n,isOverlay:r,centered:i,embedded:a,elevated:o,queuedMessages:s,onRemoveQueuedMessage:c,dragOverSurfaceClassName:l,dropTargetProps:u,composerRowRef:d,isSingleLine:f,textareaRef:p,autoFocus:m,message:h,onTextareaChange:g,onKeyDown:_,onPaste:v,onFocus:y,placeholder:b,disabled:x,attachments:S,onRemoveAttachment:C,selectedModel:w,isRouting:T,canAddTask:E,planMode:D,imageMode:O,ralphMode:k,orchestrateMode:A,autoMode:j,setPlanMode:M,setImageMode:N,setRalphMode:P,setOrchestrateMode:F,setAutoMode:I,lastAutoRouteDecision:L,projectId:R,skills:z,slashCommands:B,onSelectSkill:V,onSelectSlashCommand:H,onFileAttach:ee,selectedThreadId:te,paneId:ne,dispatch:re,onUserTaskCreated:ie,setMessage:ae,setAttachments:oe,hideModelSelector:se,availableModels:U,effectiveModel:ce,onModelSelect:le,onReasoningEffortChange:ue,threadId:W,conversationId:de,messages:fe,isStreaming:pe,liveContextUsage:me,onSpeechTranscript:he,onVoiceSessionStart:ge,speechProvider:_e,speechModel:ve,hasMessageText:ye,setIsVoiceActive:be,onStop:xe,onSend:Se,showCommandSuggestions:Ce,suggestions:we,skillReferencePrefix:Te,commandQuery:Ee,selectedIndex:De,onSelectCommand:Oe,onSuggestionSkill:ke,onMouseEnterSuggestion:Ae,commandSuggestionsRef:je,showSuggestions:Me,fileSuggestions:Ne,suggestionQuery:Pe,onSelectFile:Fe,suggestionsRef:Ie,fileInputRef:Le,onFileInputChange:Re,orchestrateCheapAliasDialog:ze,confirmDialog:Be}=e,Ve;t[0]!==i||t[1]!==a||t[2]!==n||t[3]!==r?(Ve=hy(n,r,i,a),t[0]=i,t[1]=a,t[2]=n,t[3]=r,t[4]=Ve):Ve=t[4];let He;t[5]!==l||t[6]!==o||t[7]!==a||t[8]!==r?(He=G(gy(a,r,o),l),t[5]=l,t[6]=o,t[7]=a,t[8]=r,t[9]=He):He=t[9];let Ue;t[10]!==c||t[11]!==s?(Ue=(0,$.jsx)(dS,{queuedMessages:s,onRemoveQueuedMessage:c}),t[10]=c,t[11]=s,t[12]=Ue):Ue=t[12];let We=f?`py-2`:`gap-y-1 pb-2`,Ge;t[13]===We?Ge=t[14]:(Ge=G(`flex min-w-0 flex-wrap items-center justify-between gap-x-1 px-3`,We),t[13]=We,t[14]=Ge);let Ke;t[15]!==m||t[16]!==x||t[17]!==f||t[18]!==h||t[19]!==y||t[20]!==_||t[21]!==v||t[22]!==g||t[23]!==b||t[24]!==p?(Ke=(0,$.jsx)(qS,{textareaRef:p,autoFocus:m,value:h,onChange:g,onKeyDown:_,onPaste:v,onFocus:y,placeholder:b,isSingleLine:f,disabled:x}),t[15]=m,t[16]=x,t[17]=f,t[18]=h,t[19]=y,t[20]=_,t[21]=v,t[22]=g,t[23]=b,t[24]=p,t[25]=Ke):Ke=t[25];let qe;t[26]!==S||t[27]!==C||t[28]!==w?(qe=S.length>0&&(0,$.jsx)(JS,{attachments:S,selectedModel:w,onRemove:C}),t[26]=S,t[27]=C,t[28]=w,t[29]=qe):qe=t[29];let Je;t[30]!==j||t[31]!==E||t[32]!==x||t[33]!==re||t[34]!==O||t[35]!==T||t[36]!==f||t[37]!==L||t[38]!==h||t[39]!==ee||t[40]!==V||t[41]!==H||t[42]!==ie||t[43]!==A||t[44]!==ne||t[45]!==D||t[46]!==R||t[47]!==k||t[48]!==te||t[49]!==oe||t[50]!==I||t[51]!==N||t[52]!==ae||t[53]!==F||t[54]!==M||t[55]!==P||t[56]!==z||t[57]!==B||t[58]!==p?(Je=(0,$.jsx)(XS,{disabled:x,isRouting:T,canAddTask:E,isSingleLine:f,planMode:D,imageMode:O,ralphMode:k,orchestrateMode:A,autoMode:j,setPlanMode:M,setImageMode:N,setRalphMode:P,setOrchestrateMode:F,setAutoMode:I,lastAutoRouteDecision:L,projectId:R,skills:z,slashCommands:B,onSelectSkill:V,onSelectSlashCommand:H,onFileAttach:ee,message:h,selectedThreadId:te,paneId:ne,dispatch:re,textareaRef:p,onUserTaskCreated:ie,setMessage:ae,setAttachments:oe}),t[30]=j,t[31]=E,t[32]=x,t[33]=re,t[34]=O,t[35]=T,t[36]=f,t[37]=L,t[38]=h,t[39]=ee,t[40]=V,t[41]=H,t[42]=ie,t[43]=A,t[44]=ne,t[45]=D,t[46]=R,t[47]=k,t[48]=te,t[49]=oe,t[50]=I,t[51]=N,t[52]=ae,t[53]=F,t[54]=M,t[55]=P,t[56]=z,t[57]=B,t[58]=p,t[59]=Je):Je=t[59];let Ye=E||S.length>0,Xe;t[60]!==S.length||t[61]!==U||t[62]!==de||t[63]!==x||t[64]!==ce||t[65]!==ye||t[66]!==se||t[67]!==T||t[68]!==f||t[69]!==pe||t[70]!==me||t[71]!==fe||t[72]!==le||t[73]!==ue||t[74]!==Se||t[75]!==he||t[76]!==xe||t[77]!==ge||t[78]!==be||t[79]!==ve||t[80]!==_e||t[81]!==Ye||t[82]!==W?(Xe=(0,$.jsx)(QS,{isSingleLine:f,hideModelSelector:se,availableModels:U,selectedModel:ce,onModelSelect:le,onReasoningEffortChange:ue,threadId:W,conversationId:de,messages:fe,isStreaming:pe,liveContextUsage:me,onSpeechTranscript:he,onVoiceSessionStart:ge,speechProvider:_e,speechModel:ve,hasMessageText:ye,setIsVoiceActive:be,disabled:x,canSubmitMessage:Ye,attachmentsLength:S.length,effectiveModel:ce,onStop:xe,onSend:Se,isRouting:T}),t[60]=S.length,t[61]=U,t[62]=de,t[63]=x,t[64]=ce,t[65]=ye,t[66]=se,t[67]=T,t[68]=f,t[69]=pe,t[70]=me,t[71]=fe,t[72]=le,t[73]=ue,t[74]=Se,t[75]=he,t[76]=xe,t[77]=ge,t[78]=be,t[79]=ve,t[80]=_e,t[81]=Ye,t[82]=W,t[83]=Xe):Xe=t[83];let Ze;t[84]!==d||t[85]!==Ge||t[86]!==Ke||t[87]!==qe||t[88]!==Je||t[89]!==Xe?(Ze=(0,$.jsxs)(`div`,{ref:d,className:Ge,children:[Ke,qe,Je,Xe]}),t[84]=d,t[85]=Ge,t[86]=Ke,t[87]=qe,t[88]=Je,t[89]=Xe,t[90]=Ze):Ze=t[90];let Qe;t[91]!==Ee||t[92]!==je||t[93]!==Ae||t[94]!==Oe||t[95]!==ke||t[96]!==De||t[97]!==Ce||t[98]!==Te||t[99]!==we?(Qe=(0,$.jsx)(db,{visible:Ce,suggestions:we,skillReferencePrefix:Te,query:Ee,selectedIndex:De,onSelectCommand:Oe,onSelectSkill:ke,onMouseEnterSuggestion:Ae,containerRef:je}),t[91]=Ee,t[92]=je,t[93]=Ae,t[94]=Oe,t[95]=ke,t[96]=De,t[97]=Ce,t[98]=Te,t[99]=we,t[100]=Qe):Qe=t[100];let $e;t[101]!==Ne||t[102]!==Ae||t[103]!==Fe||t[104]!==De||t[105]!==Me||t[106]!==Pe||t[107]!==Ie?($e=(0,$.jsx)(Hb,{showSuggestions:Me,fileSuggestions:Ne,suggestionQuery:Pe,selectedIndex:De,onSelectFile:Fe,onMouseEnterSuggestion:Ae,containerRef:Ie}),t[101]=Ne,t[102]=Ae,t[103]=Fe,t[104]=De,t[105]=Me,t[106]=Pe,t[107]=Ie,t[108]=$e):$e=t[108];let et;t[109]!==u||t[110]!==He||t[111]!==Ze||t[112]!==Qe||t[113]!==$e||t[114]!==Ue?(et=(0,$.jsx)(`div`,{className:`relative flex min-w-0 items-center gap-1`,children:(0,$.jsxs)(`div`,{"data-composer-surface":!0,className:He,...u,children:[Ue,Ze,Qe,$e]})}),t[109]=u,t[110]=He,t[111]=Ze,t[112]=Qe,t[113]=$e,t[114]=Ue,t[115]=et):et=t[115];let tt;t[116]!==Le||t[117]!==Re?(tt=(0,$.jsx)(`input`,{ref:Le,type:`file`,multiple:!0,className:`hidden`,onChange:Re}),t[116]=Le,t[117]=Re,t[118]=tt):tt=t[118];let nt;return t[119]!==Be||t[120]!==ze||t[121]!==Ve||t[122]!==et||t[123]!==tt?(nt=(0,$.jsxs)(`div`,{className:Ve,children:[et,tt,ze,Be]}),t[119]=Be,t[120]=ze,t[121]=Ve,t[122]=et,t[123]=tt,t[124]=nt):nt=t[124],nt}function eC(e){let t=(0,Q.c)(190),{planMode:n,setPlanMode:r,onSend:i,onStop:a,isStreaming:o,disabled:s,initialValue:c,queuedMessages:l,onRemoveQueuedMessage:u,isOverlay:d,placeholder:f,userTasks:p,onMatchedUserTaskSend:m,onUserTaskCreated:h,autoFocus:g,centered:_,embedded:v,elevated:y}=e,b=o===void 0?!1:o,x=d===void 0?!1:d,S;t[0]===p?S=t[1]:(S=p===void 0?[]:p,t[0]=p,t[1]=S);let C=S,w=g===void 0?!1:g,T=_===void 0?!1:_,E=v===void 0?!1:v,D=y===void 0?!0:y,O;t[2]===c?O=t[3]:(O={initialValue:c},t[2]=c,t[3]=O);let{message:k,setMessage:A,historyIndex:j,setHistoryIndex:M,draftMessage:N,setDraftMessage:P,cursorPosition:F,setCursorPosition:I,availableModels:L,selectedModel:R,setSelectedModel:z,updateModelReasoningEffort:B,attachments:V,setAttachments:H,planMode:ee,setPlanMode:te,ralphMode:ne,setRalphMode:re,orchestrateMode:ie,setOrchestrateMode:ae,autoMode:oe,setAutoMode:se,imageMode:U,setImageMode:ce,availableImageModels:le,selectedImageModel:ue,setSelectedImageModel:W,allFiles:de,setAllFiles:fe,showSuggestions:pe,setShowSuggestions:me,suggestionQuery:he,setSuggestionQuery:ge,selectedIndex:_e,setSelectedIndex:ve,slashCommands:ye,skills:be,bundledSkills:xe,bundledSkillMode:Se,setBundledSkillMode:Ce,showCommandSuggestions:we,setShowCommandSuggestions:Te,commandQuery:Ee,setCommandQuery:De,fileInputRef:Oe,messageRef:ke,textareaRef:Ae,suggestionsRef:je,commandSuggestionsRef:Me,selectedThreadId:Ne,dispatch:Pe}=Jy(O),Fe;t[4]!==oe||t[5]!==le||t[6]!==L||t[7]!==U||t[8]!==k||t[9]!==ue||t[10]!==R||t[11]!==Ne?(Fe={storeSelectedThreadId:Ne,imageMode:U,selectedImageModel:ue,selectedModel:R,availableImageModels:le,availableModels:L,autoMode:oe,message:k},t[4]=oe,t[5]=le,t[6]=L,t[7]=U,t[8]=k,t[9]=ue,t[10]=R,t[11]=Ne,t[12]=Fe):Fe=t[12];let{navigate:Ie,paneId:Le,conversationId:Re,setFocused:ze,fillPane:Be,liveContextUsage:Ve,messages:He,selectedProjectId:Ue,modelAliases:We,hasConversationMessages:Ge,isFirstUserPrompt:Ke,effectiveModel:qe,effectiveAvailableModels:Je,hideModelSelector:Ye,hasMessageText:Xe}=VS(Fe),Ze;t[13]!==L||t[14]!==R||t[15]!==z||t[16]!==Ne?(Ze={storeSelectedThreadId:Ne,availableModels:L,selectedModel:R,setSelectedModel:z},t[13]=L,t[14]=R,t[15]=z,t[16]=Ne,t[17]=Ze):Ze=t[17];let{autoRoute:Qe,handleAutoRouteResolved:$e}=GS(Ze),[et,tt]=Z.useState(!1),nt=Z.useRef(null),rt=V.length>0,it;t[18]!==k||t[19]!==rt||t[20]!==Ae?(it={message:k,forceMultiline:rt,textareaRef:Ae,rowRef:nt},t[18]=k,t[19]=rt,t[20]=Ae,t[21]=it):it=t[21];let at=ub(it),ot=n??ee,st=r??te,ct=Qe?.decision??null,lt;t[22]!==oe||t[23]!==ot||t[24]!==st||t[25]!==U||t[26]!==Ie||t[27]!==ie||t[28]!==ne||t[29]!==Ue||t[30]!==se||t[31]!==ce||t[32]!==ae||t[33]!==re||t[34]!==ct?(lt={planMode:ot,imageMode:U,ralphMode:ne,orchestrateMode:ie,autoMode:oe,setPlanMode:st,setImageMode:ce,setRalphMode:re,setOrchestrateMode:ae,setAutoMode:se,lastAutoRouteDecision:ct,projectId:Ue,onOpenProjectSettings(e){Ie(`/settings/project/${e}/model-aliases`)}},t[22]=oe,t[23]=ot,t[24]=st,t[25]=U,t[26]=Ie,t[27]=ie,t[28]=ne,t[29]=Ue,t[30]=se,t[31]=ce,t[32]=ae,t[33]=re,t[34]=ct,t[35]=lt):lt=t[35];let{ensureCanOrchestrate:ut,requestOrchestrateMode:dt,cheapAliasDialog:G}=mx(lt),ft=Ne??void 0,pt;t[36]!==de||t[37]!==V||t[38]!==oe||t[39]!==Se||t[40]!==xe||t[41]!==Ee||t[42]!==F||t[43]!==Pe||t[44]!==N||t[45]!==ot||t[46]!==st||t[47]!==ut||t[48]!==$e||t[49]!==Ge||t[50]!==j||t[51]!==U||t[52]!==Ke||t[53]!==b||t[54]!==k||t[55]!==ke||t[56]!==We||t[57]!==m||t[58]!==i||t[59]!==ie||t[60]!==ne||t[61]!==dt||t[62]!==ue||t[63]!==_e||t[64]!==R||t[65]!==fe||t[66]!==H||t[67]!==se||t[68]!==Ce||t[69]!==De||t[70]!==I||t[71]!==P||t[72]!==M||t[73]!==ce||t[74]!==A||t[75]!==ae||t[76]!==re||t[77]!==ve||t[78]!==Te||t[79]!==me||t[80]!==ge||t[81]!==we||t[82]!==pe||t[83]!==be||t[84]!==ye||t[85]!==he||t[86]!==ft||t[87]!==Ae||t[88]!==C?(pt={message:k,setMessage:A,userTasks:C,onMatchedUserTaskSend:m,attachments:V,selectedModel:R,onSend:i,isStreaming:b,selectedThreadId:ft,isListening:!1,stopListening:nC,resetTranscript:tC,dispatch:Pe,historyIndex:j,setHistoryIndex:M,draftMessage:N,setDraftMessage:P,cursorPosition:F,setCursorPosition:I,showSuggestions:pe,setShowSuggestions:me,suggestionQuery:he,setSuggestionQuery:ge,allFiles:de,setAllFiles:fe,selectedIndex:_e,setSelectedIndex:ve,showCommandSuggestions:we,setShowCommandSuggestions:Te,commandQuery:Ee,setCommandQuery:De,slashCommands:ye,skills:be,bundledSkills:xe,bundledSkillMode:Se,setBundledSkillMode:Ce,messageRef:ke,textareaRef:Ae,setAttachments:H,planMode:ot,setPlanMode:st,ralphMode:ne,setRalphMode:re,orchestrateMode:ie,setOrchestrateMode:ae,autoMode:oe,setAutoMode:se,modelAliases:We,onAutoRouteResolved:$e,ensureCanOrchestrate:ut,requestOrchestrateMode:dt,imageMode:U,setImageMode:ce,selectedImageModel:ue,hasConversationMessages:Ge,isFirstUserPrompt:Ke},t[36]=de,t[37]=V,t[38]=oe,t[39]=Se,t[40]=xe,t[41]=Ee,t[42]=F,t[43]=Pe,t[44]=N,t[45]=ot,t[46]=st,t[47]=ut,t[48]=$e,t[49]=Ge,t[50]=j,t[51]=U,t[52]=Ke,t[53]=b,t[54]=k,t[55]=ke,t[56]=We,t[57]=m,t[58]=i,t[59]=ie,t[60]=ne,t[61]=dt,t[62]=ue,t[63]=_e,t[64]=R,t[65]=fe,t[66]=H,t[67]=se,t[68]=Ce,t[69]=De,t[70]=I,t[71]=P,t[72]=M,t[73]=ce,t[74]=A,t[75]=ae,t[76]=re,t[77]=ve,t[78]=Te,t[79]=me,t[80]=ge,t[81]=we,t[82]=pe,t[83]=be,t[84]=ye,t[85]=he,t[86]=ft,t[87]=Ae,t[88]=C,t[89]=pt):pt=t[89];let{handleSend:mt,handleKeyDown:ht,handleTextareaInput:gt,insertFileReference:_t,insertCommand:vt,insertSkill:yt,insertSkillAtCursor:bt,insertSlashCommandAtCursor:xt,allSuggestions:St,fileSuggestions:Ct,isRouting:wt}=ob(pt),Tt;t[90]!==H||t[91]!==Ne?(Tt={threadId:Ne,mode:`attach`,onAttachmentsAdded(e){H(t=>[...t,...e])}},t[90]=H,t[91]=Ne,t[92]=Tt):Tt=t[92];let{dropTargetProps:Et,dragOverSurfaceClassName:K,confirmDialog:q}=jS(Tt),Dt;t[93]!==H||t[94]!==A?(Dt={setMessage:A,setAttachments:H},t[93]=H,t[94]=A,t[95]=Dt):Dt=t[95];let{handleVoiceSessionStart:Ot,handleSpeechTranscript:kt,handlePaste:At}=KS(Dt),jt;t[96]!==ot||t[97]!==U||t[98]!==et||t[99]!==f||t[100]!==ne?(jt=f??IS({ralphMode:ne,effectivePlanMode:ot,imageMode:U,isVoiceActive:et}),t[96]=ot,t[97]=U,t[98]=et,t[99]=f,t[100]=ne,t[101]=jt):jt=t[101];let Mt=jt,Nt;t[102]===H?Nt=t[103]:(Nt=e=>H(t=>t.filter((t,n)=>n!==e)),t[102]=H,t[103]=Nt);let Pt=Qe?.decision??null,Ft;t[104]===Oe?Ft=t[105]:(Ft=()=>Oe.current?.click(),t[104]=Oe,t[105]=Ft);let It=U?W:z,Lt=Ne??void 0,Rt=R?.provider,zt=R?.id,Bt=Se?`//`:`/`,Vt;t[106]===H?Vt=t[107]:(Vt=e=>zb(e,e=>H(t=>[...t,...e])),t[106]=H,t[107]=Vt);let Ht;return t[108]!==St||t[109]!==V||t[110]!==w||t[111]!==oe||t[112]!==T||t[113]!==Ee||t[114]!==Me||t[115]!==q||t[116]!==Re||t[117]!==s||t[118]!==Pe||t[119]!==K||t[120]!==Et||t[121]!==Je||t[122]!==qe||t[123]!==ot||t[124]!==st||t[125]!==D||t[126]!==E||t[127]!==Oe||t[128]!==Ct||t[129]!==Be||t[130]!==ht||t[131]!==At||t[132]!==mt||t[133]!==kt||t[134]!==gt||t[135]!==Ot||t[136]!==Xe||t[137]!==Ye||t[138]!==U||t[139]!==vt||t[140]!==_t||t[141]!==yt||t[142]!==bt||t[143]!==xt||t[144]!==x||t[145]!==wt||t[146]!==at||t[147]!==b||t[148]!==Ve||t[149]!==k||t[150]!==He||t[151]!==u||t[152]!==a||t[153]!==h||t[154]!==G||t[155]!==ie||t[156]!==Le||t[157]!==Mt||t[158]!==l||t[159]!==ne||t[160]!==_e||t[161]!==R||t[162]!==Ue||t[163]!==H||t[164]!==se||t[165]!==ze||t[166]!==ce||t[167]!==A||t[168]!==ae||t[169]!==re||t[170]!==ve||t[171]!==we||t[172]!==pe||t[173]!==be||t[174]!==ye||t[175]!==Ne||t[176]!==he||t[177]!==je||t[178]!==Nt||t[179]!==Pt||t[180]!==Ft||t[181]!==It||t[182]!==Lt||t[183]!==Rt||t[184]!==zt||t[185]!==Bt||t[186]!==Vt||t[187]!==Ae||t[188]!==B?(Ht=(0,$.jsx)($S,{fillPane:Be,isOverlay:x,centered:T,embedded:E,elevated:D,queuedMessages:l,onRemoveQueuedMessage:u,dragOverSurfaceClassName:K,dropTargetProps:Et,composerRowRef:nt,isSingleLine:at,textareaRef:Ae,autoFocus:w,message:k,onTextareaChange:gt,onKeyDown:ht,onPaste:At,onFocus:ze,placeholder:Mt,disabled:s,attachments:V,onRemoveAttachment:Nt,selectedModel:R,isRouting:wt,canAddTask:Xe,planMode:ot,imageMode:U,ralphMode:ne,orchestrateMode:ie,autoMode:oe,setPlanMode:st,setImageMode:ce,setRalphMode:re,setOrchestrateMode:ae,setAutoMode:se,lastAutoRouteDecision:Pt,projectId:Ue,skills:be,slashCommands:ye,onSelectSkill:bt,onSelectSlashCommand:xt,onFileAttach:Ft,selectedThreadId:Ne,paneId:Le,dispatch:Pe,onUserTaskCreated:h,setMessage:A,setAttachments:H,hideModelSelector:Ye,availableModels:Je,effectiveModel:qe,onModelSelect:It,onReasoningEffortChange:B,threadId:Lt,conversationId:Re,messages:He,isStreaming:b,liveContextUsage:Ve,onSpeechTranscript:kt,onVoiceSessionStart:Ot,speechProvider:Rt,speechModel:zt,hasMessageText:Xe,setIsVoiceActive:tt,onStop:a,onSend:mt,showCommandSuggestions:we,suggestions:St,skillReferencePrefix:Bt,commandQuery:Ee,selectedIndex:_e,onSelectCommand:vt,onSuggestionSkill:yt,onMouseEnterSuggestion:ve,commandSuggestionsRef:Me,showSuggestions:pe,fileSuggestions:Ct,suggestionQuery:he,onSelectFile:_t,suggestionsRef:je,fileInputRef:Oe,onFileInputChange:Vt,orchestrateCheapAliasDialog:G,confirmDialog:q}),t[108]=St,t[109]=V,t[110]=w,t[111]=oe,t[112]=T,t[113]=Ee,t[114]=Me,t[115]=q,t[116]=Re,t[117]=s,t[118]=Pe,t[119]=K,t[120]=Et,t[121]=Je,t[122]=qe,t[123]=ot,t[124]=st,t[125]=D,t[126]=E,t[127]=Oe,t[128]=Ct,t[129]=Be,t[130]=ht,t[131]=At,t[132]=mt,t[133]=kt,t[134]=gt,t[135]=Ot,t[136]=Xe,t[137]=Ye,t[138]=U,t[139]=vt,t[140]=_t,t[141]=yt,t[142]=bt,t[143]=xt,t[144]=x,t[145]=wt,t[146]=at,t[147]=b,t[148]=Ve,t[149]=k,t[150]=He,t[151]=u,t[152]=a,t[153]=h,t[154]=G,t[155]=ie,t[156]=Le,t[157]=Mt,t[158]=l,t[159]=ne,t[160]=_e,t[161]=R,t[162]=Ue,t[163]=H,t[164]=se,t[165]=ze,t[166]=ce,t[167]=A,t[168]=ae,t[169]=re,t[170]=ve,t[171]=we,t[172]=pe,t[173]=be,t[174]=ye,t[175]=Ne,t[176]=he,t[177]=je,t[178]=Nt,t[179]=Pt,t[180]=Ft,t[181]=It,t[182]=Lt,t[183]=Rt,t[184]=zt,t[185]=Bt,t[186]=Vt,t[187]=Ae,t[188]=B,t[189]=Ht):Ht=t[189],Ht}function tC(){}function nC(){}var rC=(0,Z.createContext)(null);function iC(e){let t=(0,Q.c)(8),{children:n,placement:r,embedded:i,composerPhase:a,composerReveal:o}=e,s=r===void 0?`overlay`:r,c=i===void 0?!1:i,l=a===void 0?`footer`:a,u=o===void 0?!1:o,d=(0,Z.useRef)(null),f=(0,Z.useRef)(null),p;t[0]!==l||t[1]!==u||t[2]!==c||t[3]!==s?(p={overlayRef:d,placement:s,embedded:c,composerPhase:l,composerReveal:u,centeredComposerTopRef:f},t[0]=l,t[1]=u,t[2]=c,t[3]=s,t[4]=p):p=t[4];let m=p,h;return t[5]!==n||t[6]!==m?(h=(0,$.jsx)(rC.Provider,{value:m,children:n}),t[5]=n,t[6]=m,t[7]=h):h=t[7],h}function aC(){return(0,Z.useContext)(rC)}function oC(){let e=(0,Z.useContext)(rC);return!e||e.embedded?`footer`:e.composerPhase}function sC(){let e=(0,Z.useContext)(rC);return!e||e.embedded?!1:e.composerReveal}function cC(e){return e!==`loading`&&e!==`centered`}function lC(e,t){let n=e.threadId===t.threadId;return t.loading?{phase:`loading`,reveal:!1}:e.loading&&n?{phase:t.centered?`centered`:`footer`,reveal:!0}:t.centered?{phase:`centered`,reveal:!1}:e.centered&&n?{phase:`moving-to-footer`,reveal:!1}:{phase:`footer`,reveal:!1}}function uC(e){let t=(0,Q.c)(9),{centered:n,loading:r,threadId:i}=e,a;t[0]!==n||t[1]!==r||t[2]!==i?(a={centered:n,loading:r,threadId:i},t[0]=n,t[1]=r,t[2]=i,t[3]=a):a=t[3];let o=a,s;t[4]===o?s=t[5]:(s=()=>lC(o,o),t[4]=o,t[5]=s);let[c,l]=(0,Z.useState)(s),[u,d]=(0,Z.useState)(o);(u.centered!==n||u.loading!==r||u.threadId!==i)&&(d(o),l(lC(u,o)));let f,p;return t[6]===c.phase?(f=t[7],p=t[8]):(f=()=>{if(c.phase!==`moving-to-footer`)return;let e=setTimeout(()=>{l(dC)},300);return()=>clearTimeout(e)},p=[c.phase],t[6]=c.phase,t[7]=f,t[8]=p),(0,Z.useEffect)(f,p),c}function dC(e){return e.phase===`moving-to-footer`?{phase:`footer`,reveal:!1}:e}var fC=Ut(`chat.ask-user-input`);function pC(e){let t=(0,Q.c)(86),{toolCallId:n,questions:r,onAnswered:i,onStop:a,elevated:o}=e,s=o===void 0?!0:o,{fillPane:c}=wv(),l=X(hC),u=aC()?.embedded??!1,[d,f]=(0,Z.useState)(0),[p,m]=(0,Z.useState)(``),h;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(h=[],t[0]=h):h=t[0];let[g,_]=(0,Z.useState)(h),v;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(v=[],t[1]=v):v=t[1];let[y,b]=(0,Z.useState)(v),[x,S]=(0,Z.useState)(!1),C=(0,Z.useRef)(null),w=r[d],T=d===r.length-1,E=w?.multiple===!0,D;t[2]===r?D=t[3]:(D=JSON.stringify(r),t[2]=r,t[3]=D);let O=D,k;t[4]===l?k=t[5]:(k={threadId:l,mode:`copy-only`},t[4]=l,t[5]=k);let{dropTargetProps:A,dragOverSurfaceClassName:j,confirmDialog:M}=jS(k),N;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(N=()=>{f(0),m(``),_([]),b([]),S(!1),C.current?.focus()},t[6]=N):N=t[6];let P;t[7]!==O||t[8]!==n?(P=[n,O],t[7]=O,t[8]=n,t[9]=P):P=t[9],(0,Z.useEffect)(N,P);let F,I,L,R,z,B,H,ee,te,ne;if(t[10]!==y||t[11]!==d||t[12]!==p||t[13]!==j||t[14]!==A||t[15]!==s||t[16]!==u||t[17]!==c||t[18]!==T||t[19]!==E||t[20]!==x||t[21]!==i||t[22]!==a||t[23]!==w||t[24]!==r.length||t[25]!==g||t[26]!==n){ee=Symbol.for(`react.early_return_sentinel`);bb0:{let e=function(){m(``),_([]),window.setTimeout(()=>C.current?.focus(),0)},o=async function(t){if(x||!w)return;let r=[...y,t];if(!T){b(r),f(mC),e();return}S(!0);try{await Ia(n,r),i(n)}catch(e){let t=e;fC.error(`Failed to submit answer`,{err:t}),S(!1)}};L=function(){let e=p.trim();!e||x||o(E?[e]:e)};let l=function(e){if(!x){if(E){_(t=>t.includes(e)?t.filter(t=>t!==e):[...t,e]);return}o(e)}},h=function(){g.length===0||x||o(g)};if(I=function(e){e.key===`Enter`&&!e.shiftKey&&(e.preventDefault(),L())},!w){ee=null;break bb0}let v;t[37]!==p||t[38]!==x?(v=p.trim().length>0&&!x,t[37]=p,t[38]=x,t[39]=v):v=t[39],F=v;let D=g.length>0&&!x,O=r.length>1?`Question ${d+1} of ${r.length}`:null;t[40]!==u||t[41]!==c?(H=hy(c,!1,!1,u),t[40]=u,t[41]=c,t[42]=H):H=t[42],t[43]!==j||t[44]!==s||t[45]!==u?(te=G(gy(u,!1,s),j),t[43]=j,t[44]=s,t[45]=u,t[46]=te):te=t[46],ne=A,t[47]!==x||t[48]!==a?(R=a&&(0,$.jsx)(`div`,{className:`absolute top-2 right-2 z-10`,children:(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(Hr,{type:`button`,size:`icon`,variant:`action`,className:`h-7 w-7`,onClick:a,disabled:x,children:[(0,$.jsx)(nt,{className:`h-4 w-4`}),(0,$.jsx)(`span`,{className:`sr-only`,children:`Stop generation`})]})}),(0,$.jsx)(Fr,{children:`Stop generation`})]})}),t[47]=x,t[48]=a,t[49]=R):R=t[49];let k;t[50]===Symbol.for(`react.memo_cache_sentinel`)?(k=(0,$.jsx)(ut,{className:`h-5 w-5 shrink-0 text-brand`}),t[50]=k):k=t[50];let M;t[51]===O?M=t[52]:(M=O&&(0,$.jsx)(`p`,{className:G(U.caption,`mb-1`),children:O}),t[51]=O,t[52]=M);let N;t[53]===w.header?N=t[54]:(N=w.header&&(0,$.jsx)(`p`,{className:G(U.labelMuted,`mb-1`),children:w.header}),t[53]=w.header,t[54]=N);let P;t[55]===Symbol.for(`react.memo_cache_sentinel`)?(P=G(U.label,`text-foreground`),t[55]=P):P=t[55];let V;t[56]===w.question?V=t[57]:(V=(0,$.jsx)(`div`,{className:P,children:(0,$.jsx)(ku,{content:w.question})}),t[56]=w.question,t[57]=V),t[58]!==M||t[59]!==N||t[60]!==V?(z=(0,$.jsxs)(`div`,{className:`flex items-start gap-2 px-6 pt-4 pr-12`,children:[k,(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[M,N,V]})]}),t[58]=M,t[59]=N,t[60]=V,t[61]=z):z=t[61],B=w.options&&w.options.length>0&&(0,$.jsxs)(`div`,{className:`flex flex-col gap-2 px-6 pt-3`,children:[w.options.map(e=>{let t=g.includes(e.label);return(0,$.jsxs)(`button`,{type:`button`,onClick:()=>l(e.label),disabled:x,className:G(`flex items-start gap-2 rounded-md border px-3 py-2 text-left transition-colors disabled:opacity-50`,U.label,t?`border-foreground/20 bg-accent text-accent-foreground`:`border-foreground/20 bg-background text-foreground hover:bg-accent hover:text-accent-foreground`),children:[E&&(0,$.jsx)(`span`,{className:G(`mt-0.5 flex h-4 w-4 shrink-0 items-center justify-center rounded border`,t&&`bg-primary text-primary-foreground`),"aria-hidden":`true`,children:t&&(0,$.jsx)(W,{className:`h-3 w-3`})}),(0,$.jsxs)(`span`,{children:[(0,$.jsx)(`span`,{className:`block`,children:e.label}),e.description&&(0,$.jsx)(`span`,{className:U.bodyMuted,children:e.description})]})]},e.label)}),E&&(0,$.jsx)(Hr,{type:`button`,className:`self-start`,onClick:h,disabled:!D,children:`Confirm selection`})]})}t[10]=y,t[11]=d,t[12]=p,t[13]=j,t[14]=A,t[15]=s,t[16]=u,t[17]=c,t[18]=T,t[19]=E,t[20]=x,t[21]=i,t[22]=a,t[23]=w,t[24]=r.length,t[25]=g,t[26]=n,t[27]=F,t[28]=I,t[29]=L,t[30]=R,t[31]=z,t[32]=B,t[33]=H,t[34]=ee,t[35]=te,t[36]=ne}else F=t[27],I=t[28],L=t[29],R=t[30],z=t[31],B=t[32],H=t[33],ee=t[34],te=t[35],ne=t[36];if(ee!==Symbol.for(`react.early_return_sentinel`))return ee;let re;t[62]===Symbol.for(`react.memo_cache_sentinel`)?(re=e=>m(e.target.value),t[62]=re):re=t[62];let ie=w.options?.length?`Or type a custom answer...`:`Type your answer...`,ae;t[63]===Symbol.for(`react.memo_cache_sentinel`)?(ae=G(U.body,`min-h-[3rem] w-full resize-none bg-transparent px-6 pt-3 pb-2 text-foreground placeholder:text-muted-foreground focus:outline-none disabled:opacity-50`),t[63]=ae):ae=t[63];let oe;t[64]!==p||t[65]!==I||t[66]!==x||t[67]!==ie?(oe=(0,$.jsx)(`textarea`,{ref:C,autoFocus:!0,value:p,onChange:re,onKeyDown:I,placeholder:ie,disabled:x,rows:1,className:ae}),t[64]=p,t[65]=I,t[66]=x,t[67]=ie,t[68]=oe):oe=t[68];let se=!F,ce,le;t[69]===Symbol.for(`react.memo_cache_sentinel`)?(ce=(0,$.jsx)(V,{className:`h-3 w-3`}),le=(0,$.jsx)(`span`,{className:`sr-only`,children:`Submit answer`}),t[69]=ce,t[70]=le):(ce=t[69],le=t[70]);let ue;t[71]!==L||t[72]!==se?(ue=(0,$.jsx)(`div`,{className:`flex items-center justify-end px-3 pb-2`,children:(0,$.jsxs)(`button`,{type:`button`,onClick:L,disabled:se,className:`flex h-7 w-7 shrink-0 items-center justify-center rounded-full bg-primary text-primary-foreground transition-colors hover:bg-primary/90 disabled:opacity-50`,children:[ce,le]})}),t[71]=L,t[72]=se,t[73]=ue):ue=t[73];let de;t[74]!==R||t[75]!==z||t[76]!==B||t[77]!==oe||t[78]!==ue||t[79]!==te||t[80]!==ne?(de=(0,$.jsxs)(`div`,{className:te,...ne,children:[R,z,B,oe,ue]}),t[74]=R,t[75]=z,t[76]=B,t[77]=oe,t[78]=ue,t[79]=te,t[80]=ne,t[81]=de):de=t[81];let fe;return t[82]!==M||t[83]!==H||t[84]!==de?(fe=(0,$.jsxs)(`div`,{className:H,children:[de,M]}),t[82]=M,t[83]=H,t[84]=de,t[85]=fe):fe=t[85],fe}function mC(e){return e+1}function hC(e){return e.selectedThreadId}function gC(){let e=X(xC),t=X(bC),n=X(yC),r=X(vC),i=X(_C);return e!==`actions`||t==null?!1:i.some(e=>e.projectId===t)?!0:n===t&&r!=null}function _C(e){return e.projects}function vC(e){return e.selectedThreadId}function yC(e){return e.selectedProjectId}function bC(e){return e.projectPanelProjectId}function xC(e){return e.projectPanelView}var SC=40,CC=4,wC=10,TC=2*Math.PI*wC,EC={transitionDuration:`5000ms`,transitionProperty:`stroke-dashoffset`,transitionTimingFunction:`ease-out`};function DC(e,t){return`${Math.min(e+1,t)} of ${t}`}function OC(e){let t=(0,Q.c)(12),{todos:n}=e,r,i,a,o;if(t[0]!==n){let e=n.filter(AC).length;r=`space-y-1`,t[5]===n.length?i=t[6]:(i=n.length===0&&(0,$.jsx)(`p`,{className:U.compact,children:`No todo items.`}),t[5]=n.length,t[6]=i),a=n.map(kC),o=n.length>0&&(0,$.jsx)(`p`,{className:G(U.compact,`pt-1`),children:DC(e,n.length)}),t[0]=n,t[1]=r,t[2]=i,t[3]=a,t[4]=o}else r=t[1],i=t[2],a=t[3],o=t[4];let s;return t[7]!==r||t[8]!==i||t[9]!==a||t[10]!==o?(s=(0,$.jsxs)(`div`,{className:r,children:[i,a,o]}),t[7]=r,t[8]=i,t[9]=a,t[10]=o,t[11]=s):s=t[11],s}function kC(e){return(0,$.jsxs)(`div`,{className:G(U.caption,`flex items-start gap-2`),children:[e.status===`done`?(0,$.jsx)(st,{className:`h-4 w-4 shrink-0 mt-0.5 text-brand`}):e.status===`working`?(0,$.jsx)(it,{className:`h-4 w-4 shrink-0 mt-0.5 text-yellow-500`}):(0,$.jsx)(Ot,{className:`h-4 w-4 shrink-0 mt-0.5 text-muted-foreground`}),(0,$.jsx)(`span`,{className:e.status===`done`?`line-through text-muted-foreground`:`text-foreground`,children:e.description})]},e.id)}function AC(e){return e.status===`done`}function jC(e){let t=(0,Q.c)(6),{completedCount:n,totalCount:r}=e,i=Math.min(n+1,r),[a,o]=(0,Z.useState)(0),s=TC*(1-(r>0?Math.min(a,r)/r:0)),c=SC/2,l,u;t[0]===i?(l=t[1],u=t[2]):(l=()=>{let e=requestAnimationFrame(()=>{o(i)});return()=>cancelAnimationFrame(e)},u=[i],t[0]=i,t[1]=l,t[2]=u),(0,Z.useEffect)(l,u);let d;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(d=(0,$.jsx)(`circle`,{cx:c,cy:c,r:wC,fill:`none`,stroke:`currentColor`,strokeOpacity:`0.2`,strokeWidth:CC}),t[3]=d):d=t[3];let f;return t[4]===s?f=t[5]:(f=(0,$.jsxs)(`svg`,{"aria-hidden":`true`,viewBox:`0 0 ${SC} ${SC}`,className:`size-4 shrink-0`,children:[d,(0,$.jsx)(`circle`,{cx:c,cy:c,r:wC,fill:`none`,stroke:`currentColor`,strokeWidth:CC,strokeDasharray:TC,strokeDashoffset:s,strokeLinecap:`round`,transform:`rotate(-90 ${c} ${c})`,style:EC})]}),t[4]=s,t[5]=f),f}function MC(e){let t=(0,Q.c)(46),{layout:n}=e,r=n===void 0?`bar`:n,{todos:i}=(0,Z.useContext)(Vm),[a,o]=(0,Z.useState)(!1),s;t[0]===i?s=t[1]:(s=i.filter(NC),t[0]=i,t[1]=s);let c=s.length,l=i.length-c,u;t[2]!==c||t[3]!==i.length?(u=DC(c,i.length),t[2]=c,t[3]=i.length,t[4]=u):u=t[4];let d=u;if(l<=0)return null;if(r===`menu`){let e;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(e=()=>o(!0),t[5]=e):e=t[5];let n;t[6]!==c||t[7]!==i.length?(n=(0,$.jsx)(jC,{completedCount:c,totalCount:i.length}),t[6]=c,t[7]=i.length,t[8]=n):n=t[8];let r;t[9]===d?r=t[10]:(r=(0,$.jsx)(`span`,{children:d}),t[9]=d,t[10]=r);let s;t[11]!==n||t[12]!==r?(s=(0,$.jsxs)(Hr,{variant:`ghost`,size:`sm`,className:`w-full justify-start gap-2`,onClick:e,children:[n,r]}),t[11]=n,t[12]=r,t[13]=s):s=t[13];let l;t[14]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,$.jsx)(Dr,{children:(0,$.jsx)(qa,{children:`Agent Todos`})}),t[14]=l):l=t[14];let u;t[15]===i?u=t[16]:(u=(0,$.jsxs)(Ir,{className:`max-w-md`,children:[l,(0,$.jsx)(OC,{todos:i})]}),t[15]=i,t[16]=u);let f;t[17]!==a||t[18]!==u?(f=(0,$.jsx)(Ni,{open:a,onOpenChange:o,children:u}),t[17]=a,t[18]=u,t[19]=f):f=t[19];let p;return t[20]!==f||t[21]!==s?(p=(0,$.jsxs)($.Fragment,{children:[s,f]}),t[20]=f,t[21]=s,t[22]=p):p=t[22],p}let f;t[23]===Symbol.for(`react.memo_cache_sentinel`)?(f=()=>o(!0),t[23]=f):f=t[23];let p;t[24]!==c||t[25]!==i.length?(p=(0,$.jsx)(jC,{completedCount:c,totalCount:i.length}),t[24]=c,t[25]=i.length,t[26]=p):p=t[26];let m;t[27]===d?m=t[28]:(m=(0,$.jsx)(`span`,{children:d}),t[27]=d,t[28]=m);let h;t[29]!==p||t[30]!==m?(h=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(Hr,{variant:`outline`,size:`sm`,onClick:f,children:[p,m]})}),t[29]=p,t[30]=m,t[31]=h):h=t[31];let g;t[32]===d?g=t[33]:(g=(0,$.jsx)(Fr,{children:d}),t[32]=d,t[33]=g);let _;t[34]!==h||t[35]!==g?(_=(0,$.jsx)(Zo,{children:(0,$.jsxs)(Mi,{children:[h,g]})}),t[34]=h,t[35]=g,t[36]=_):_=t[36];let v;t[37]===Symbol.for(`react.memo_cache_sentinel`)?(v=(0,$.jsx)(Dr,{children:(0,$.jsx)(qa,{children:`Agent Todos`})}),t[37]=v):v=t[37];let y;t[38]===i?y=t[39]:(y=(0,$.jsxs)(Ir,{className:`max-w-md`,children:[v,(0,$.jsx)(OC,{todos:i})]}),t[38]=i,t[39]=y);let b;t[40]!==a||t[41]!==y?(b=(0,$.jsx)(Ni,{open:a,onOpenChange:o,children:y}),t[40]=a,t[41]=y,t[42]=b):b=t[42];let x;return t[43]!==b||t[44]!==_?(x=(0,$.jsxs)($.Fragment,{children:[_,b]}),t[43]=b,t[44]=_,t[45]=x):x=t[45],x}function NC(e){return e.status===`done`}function PC(e){let t=(0,Q.c)(34),{tasks:n,disabled:r,onSelectTask:i,onTogglePinned:a,onRemoveTask:o,layout:s}=e,c=r===void 0?!1:r,l=s===void 0?`bar`:s,[u,d]=(0,Z.useState)(!1),f=n.length,p=`${f} ${f===1?`Prompt`:`Prompts`}`;if(f===0)return null;let m;t[0]===i?m=t[1]:(m=function(e){i(e),d(!1)},t[0]=i,t[1]=m);let h=m,g;t[2]!==o||t[3]!==f?(g=function(e){o(e),f===1&&d(!1)},t[2]=o,t[3]=f,t[4]=g):g=t[4];let _=g,v;t[5]===a?v=t[6]:(v=function(e){a(e)},t[5]=a,t[6]=v);let y=v,b=l===`menu`?`ghost`:`outline`,x=l===`bar`&&`bg-background`,S=l===`menu`&&`w-full justify-start`,C;t[7]!==x||t[8]!==S?(C=G(`gap-2`,x,S),t[7]=x,t[8]=S,t[9]=C):C=t[9];let w;t[10]===p?w=t[11]:(w=(0,$.jsx)(`span`,{children:p}),t[10]=p,t[11]=w);let T;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(T=(0,$.jsx)(Yt,{className:`h-4 w-4 shrink-0`}),t[12]=T):T=t[12];let E;t[13]!==c||t[14]!==w||t[15]!==b||t[16]!==C?(E=(0,$.jsx)(Pp,{asChild:!0,children:(0,$.jsxs)(Hr,{variant:b,size:`sm`,className:C,disabled:c,children:[w,T]})}),t[13]=c,t[14]=w,t[15]=b,t[16]=C,t[17]=E):E=t[17];let D;t[18]===Symbol.for(`react.memo_cache_sentinel`)?(D=(0,$.jsx)(`div`,{className:G(U.dropdownGroupHeading,`px-2 pb-1 pt-1`),children:`Prompts`}),t[18]=D):D=t[18];let O;if(t[19]!==_||t[20]!==h||t[21]!==y||t[22]!==n){let e;t[24]!==_||t[25]!==h||t[26]!==y?(e=e=>(0,$.jsxs)(`div`,{className:`flex items-start gap-2 rounded-md border border-transparent px-2 py-2 hover:bg-accent`,children:[(0,$.jsxs)(`button`,{type:`button`,className:`flex min-w-0 flex-1 items-start gap-2 text-left`,onClick:()=>h(e),children:[(0,$.jsx)(un,{className:`mt-0.5 h-4 w-4 shrink-0 text-muted-foreground`}),(0,$.jsx)(`span`,{className:G(U.body,`line-clamp-3 text-foreground`),children:e.content})]}),(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(Hr,{type:`button`,variant:`ghost`,size:`icon`,className:G(`h-7 w-7 shrink-0`,e.pinned&&`text-primary hover:text-primary`),onClick:()=>y(e.id),children:[(0,$.jsx)(ie,{className:G(`h-4 w-4`,e.pinned&&`fill-current`)}),(0,$.jsx)(`span`,{className:`sr-only`,children:e.pinned?`Unpin prompt`:`Pin prompt`})]})}),(0,$.jsx)(Fr,{children:e.pinned?`Unpin prompt`:`Pin prompt`})]}),(0,$.jsxs)(Hr,{type:`button`,variant:`ghost`,size:`icon`,className:`h-7 w-7 shrink-0`,onClick:()=>_(e.id),children:[(0,$.jsx)(nt,{className:`h-4 w-4`}),(0,$.jsx)(`span`,{className:`sr-only`,children:`Remove prompt`})]})]},e.id),t[24]=_,t[25]=h,t[26]=y,t[27]=e):e=t[27],O=n.map(e),t[19]=_,t[20]=h,t[21]=y,t[22]=n,t[23]=O}else O=t[23];let k;t[28]===O?k=t[29]:(k=(0,$.jsx)(Fp,{align:`start`,className:`w-96 p-2`,children:(0,$.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[D,O]})}),t[28]=O,t[29]=k);let A;return t[30]!==u||t[31]!==E||t[32]!==k?(A=(0,$.jsx)(Zo,{children:(0,$.jsxs)(Np,{open:u,onOpenChange:d,children:[E,k]})}),t[30]=u,t[31]=E,t[32]=k,t[33]=A):A=t[33],A}function FC(e){let t=(0,Q.c)(23),n=Qn(),r;t[0]===e?r=t[1]:(r=_y.userTasks(e),t[0]=e,t[1]=r);let i;t[2]===e?i=t[3]:(i=()=>Ya(e),t[2]=e,t[3]=i);let a=!!e,o;t[4]!==r||t[5]!==i||t[6]!==a?(o={queryKey:r,queryFn:i,enabled:a},t[4]=r,t[5]=i,t[6]=a,t[7]=o):o=t[7];let s=vr(o),c;t[8]!==e||t[9]!==n?(c=t=>{e&&n.setQueryData(_y.userTasks(e),e=>typeof t==`function`?t(e??[]):t)},t[8]=e,t[9]=n,t[10]=c):c=t[10];let l=c,u;t[11]===s.data?u=t[12]:(u=s.data??[],t[11]=s.data,t[12]=u);let d;t[13]!==e||t[14]!==n?(d=()=>n.invalidateQueries({queryKey:_y.userTasks(e)}),t[13]=e,t[14]=n,t[15]=d):d=t[15];let f;return t[16]!==s.error||t[17]!==s.isError||t[18]!==s.isLoading||t[19]!==l||t[20]!==u||t[21]!==d?(f={userTasks:u,isLoading:s.isLoading,isError:s.isError,error:s.error,setUserTasks:l,invalidate:d},t[16]=s.error,t[17]=s.isError,t[18]=s.isLoading,t[19]=l,t[20]=u,t[21]=d,t[22]=f):f=t[22],f}function IC(e,t,n){let r=e.flatMap(e=>e.threads).find(e=>e.threadId===t),i=new Set(Object.values(r?.chatTitles??{}).filter(e=>typeof e==`string`&&e.trim().length>0).map(e=>e.trim())),a=1,o=`New Chat`;for(;i.has(o);)a+=1,o=`New Chat ${a}`;return o}var LC=Ut(`chat.input-toolbar`),RC=(0,Z.createContext)(void 0);function zC({children:e}){let t=Ks(),{paneId:n,conversationId:r}=wv(),{handleDiscardPaneStream:i}=bv(),a=X(e=>e.selectedThreadId),o=X(e=>e.projects),s=X(e=>e.selectedProjectId),c=X(e=>e.isCreatingProject),l=X(e=>e.startingNewChatPaneIds.includes(n)),{toast:u}=ic(),d=Qn(),{userTasks:f,setUserTasks:p,isError:m}=FC(n===`primary`?s:null),h=X(e=>{let t=n===`primary`&&e.pendingChatMessage?.threadId===e.selectedThreadId;return e.selectedThreadId?As(e.threadStreamingStates,e.selectedThreadId,n).isStreaming||t:!1});(0,Z.useEffect)(()=>{m&&u({title:`Could not load prompts`,description:`Failed to load prompts for this project.`,variant:`destructive`})},[m,u]);let g=(0,Z.useCallback)(async()=>{if(a){t({type:Y.SetNewChatStarting,paneId:n,isStarting:!0});try{let e=r,c=IC(o,a,n),l={...o.flatMap(e=>e.threads).find(e=>e.threadId===a)?.chatTitles,[n]:c};s&&(Qa(a,{chatTitles:l}).catch(e=>{LC.error(`Failed to update chat title for new chat`,{error:e,threadId:a})}),t({type:Y.UpdateChatTitle,projectId:s,threadId:a,paneId:n,title:c})),Sg(a),i(n),t(n===`primary`?{type:Y.ClearMessages}:{type:Y.SetPaneMessages,paneId:n,messages:[]});let u=e;if(!u&&n===`primary`)try{u=(await Ur(a)).currentConversationId}catch(e){LC.error(`Failed to resolve current conversation before starting new chat`,{error:e,threadId:a})}if(u&&await Na(a,{conversationId:u}),n!==`primary`){t({type:Y.SetPaneConversationId,paneId:n,conversationId:je()});return}try{let e=await Io(a);t({type:Y.SetPrimaryConversationId,conversationId:e}),LC.info(`New conversation started`,{conversationId:e,threadId:a})}catch(e){LC.error(`Failed to start new chat`,{error:e,threadId:a})}}finally{t({type:Y.SetNewChatStarting,paneId:n,isStarting:!1})}}},[s,a,t,o,n,r,i]),_=(0,Z.useCallback)(async e=>{if(s)try{await zr(s,e),d.setQueryData(_y.userTasks(s),t=>(t??[]).filter(t=>t.id!==e))}catch(t){LC.error(`Failed to delete user task`,{error:t,projectId:s,taskId:e}),u({title:`Could not remove prompt`,description:`Failed to delete the selected prompt.`,variant:`destructive`})}},[d,s,u]),v=(0,Z.useCallback)(e=>{p(t=>t.map(t=>t.id===e?{...t,pinned:!t.pinned}:t))},[p]),y=(0,Z.useCallback)(e=>{a&&t({type:Y.SetChatInputDraft,threadId:a,draft:e.content})},[a,t]),b=(0,Z.useMemo)(()=>({userTasks:f,setUserTasks:p,handleNewChat:g,handleSelectUserTask:y,handleRemoveUserTask:_,toggleUserTaskPinned:v,effectiveIsStreaming:h,isCreatingProject:c,isStartingNewChat:l}),[f,p,g,y,_,v,h,c,l]);return(0,$.jsx)(RC.Provider,{value:b,children:e})}function BC(){let e=(0,Z.useContext)(RC);if(e===void 0)throw Error(`useChatInputToolbar must be used within a ChatInputToolbarProvider`);return e}var VC=[`Removing threads`,`Deleting storage`,`Removing project`];function HC(e){let t=(0,Q.c)(32),{progress:n,onRetry:r,onClose:i}=e;if(!n)return null;let{projectName:a,step:o,status:s,errorMessage:c}=n,l=VC[Math.min(o,VC.length-1)],u=s===`progressing`,d;t[0]!==u||t[1]!==i?(d=e=>{!e&&!u&&i()},t[0]=u,t[1]=i,t[2]=d):d=t[2];let f;t[3]===u?f=t[4]:(f=e=>{u&&e.preventDefault()},t[3]=u,t[4]=f);let p=s===`error`?`Delete Failed`:`Deleting Project`,m;t[5]===p?m=t[6]:(m=(0,$.jsx)(sc,{children:p}),t[5]=p,t[6]=m);let h;t[7]!==c||t[8]!==l||t[9]!==a||t[10]!==s?(h=(0,$.jsx)(oc,{children:s===`error`?(0,$.jsxs)(`span`,{className:`text-destructive`,children:[`Failed at: `,l,`. `,c??`An unexpected error occurred.`]}):(0,$.jsxs)($.Fragment,{children:[`Deleting `,(0,$.jsxs)(`span`,{className:`font-semibold text-foreground`,children:[`"`,a,`"`]}),`. This cannot be undone.`]})}),t[7]=c,t[8]=l,t[9]=a,t[10]=s,t[11]=h):h=t[11];let g;t[12]!==m||t[13]!==h?(g=(0,$.jsxs)(fc,{children:[m,h]}),t[12]=m,t[13]=h,t[14]=g):g=t[14];let _;t[15]!==s||t[16]!==o?(_=VC.map((e,t)=>{let n=s===`progressing`&&t===o,r=s===`done`,i=s===`error`&&t===o;return(0,$.jsxs)(`div`,{className:G(`flex items-center gap-2 text-sm`,n&&`text-foreground`,r&&`text-muted-foreground`,t<o&&`text-muted-foreground`),children:[r||t<o?(0,$.jsx)(W,{className:`h-4 w-4 text-emerald-500`}):i?(0,$.jsx)(Fe,{className:`h-4 w-4 text-destructive`}):(0,$.jsx)(ln,{className:G(`h-4 w-4 text-muted-foreground`,n&&`animate-spin text-foreground`)}),(0,$.jsxs)(`span`,{className:G(U.body,n&&`font-medium`),children:[e,`…`]})]},e)}),t[15]=s,t[16]=o,t[17]=_):_=t[17];let v;t[18]===_?v=t[19]:(v=(0,$.jsx)(`div`,{className:`flex flex-col gap-2 py-2`,children:_}),t[18]=_,t[19]=v);let y;t[20]!==i||t[21]!==r||t[22]!==s?(y=s===`error`&&(0,$.jsxs)(uc,{children:[(0,$.jsx)(dc,{onClick:i,children:`Close`}),(0,$.jsx)(lc,{onClick:r,className:`bg-destructive text-destructive-foreground hover:bg-destructive/90`,children:`Retry`})]}),t[20]=i,t[21]=r,t[22]=s,t[23]=y):y=t[23];let b;t[24]!==f||t[25]!==g||t[26]!==v||t[27]!==y?(b=(0,$.jsxs)(cc,{onEscapeKeyDown:f,children:[g,v,y]}),t[24]=f,t[25]=g,t[26]=v,t[27]=y,t[28]=b):b=t[28];let x;return t[29]!==d||t[30]!==b?(x=(0,$.jsx)(pc,{open:!0,onOpenChange:d,children:b}),t[29]=d,t[30]=b,t[31]=x):x=t[31],x}var UC=xn,WC=Z.forwardRef((e,t)=>{let n=(0,Q.c)(9),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let a;n[3]===r?a=n[4]:(a=G(`fixed top-0 z-[100] flex max-h-screen w-full flex-col-reverse p-4 sm:bottom-0 sm:right-0 sm:top-auto sm:flex-col md:max-w-[420px]`,r),n[3]=r,n[4]=a);let o;return n[5]!==i||n[6]!==t||n[7]!==a?(o=(0,$.jsx)(zn,{ref:t,className:a,...i}),n[5]=i,n[6]=t,n[7]=a,n[8]=o):o=n[8],o});WC.displayName=zn.displayName;var GC=bi(`group pointer-events-auto relative flex w-full items-center justify-between space-x-4 overflow-hidden rounded-md border p-6 pr-8 shadow-lg transition-all data-[swipe=cancel]:translate-x-0 data-[swipe=end]:translate-x-[var(--radix-toast-swipe-end-x)] data-[swipe=move]:translate-x-[var(--radix-toast-swipe-move-x)] data-[swipe=move]:transition-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[swipe=end]:animate-out data-[state=closed]:fade-out-80 data-[state=closed]:slide-out-to-right-full data-[state=open]:slide-in-from-top-full data-[state=open]:sm:slide-in-from-bottom-full`,{variants:{variant:{default:`border bg-background text-foreground`,destructive:`destructive group border-destructive bg-destructive text-destructive-foreground`}},defaultVariants:{variant:`default`}}),KC=Z.forwardRef((e,t)=>{let n=(0,Q.c)(11),r,i,a;n[0]===e?(r=n[1],i=n[2],a=n[3]):({className:r,variant:a,...i}=e,n[0]=e,n[1]=r,n[2]=i,n[3]=a);let o;n[4]!==r||n[5]!==a?(o=G(GC({variant:a}),r),n[4]=r,n[5]=a,n[6]=o):o=n[6];let s;return n[7]!==i||n[8]!==t||n[9]!==o?(s=(0,$.jsx)(En,{ref:t,className:o,...i}),n[7]=i,n[8]=t,n[9]=o,n[10]=s):s=n[10],s});KC.displayName=En.displayName;var qC=Z.forwardRef((e,t)=>{let n=(0,Q.c)(9),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let a;n[3]===r?a=n[4]:(a=G(`inline-flex h-8 shrink-0 items-center justify-center rounded-md border bg-transparent px-3 font-medium ring-offset-background transition-colors hover:bg-secondary focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 group-[.destructive]:border-muted/40 group-[.destructive]:hover:border-destructive/30 group-[.destructive]:hover:bg-destructive group-[.destructive]:hover:text-destructive-foreground group-[.destructive]:focus:ring-destructive`,U.body,r),n[3]=r,n[4]=a);let o;return n[5]!==i||n[6]!==t||n[7]!==a?(o=(0,$.jsx)(jn,{ref:t,className:a,...i}),n[5]=i,n[6]=t,n[7]=a,n[8]=o):o=n[8],o});qC.displayName=jn.displayName;var JC=Z.forwardRef((e,t)=>{let n=(0,Q.c)(10),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let a;n[3]===r?a=n[4]:(a=G(`absolute right-2 top-2 rounded-md p-1 text-foreground/50 opacity-0 transition-opacity hover:text-foreground focus:opacity-100 focus:outline-none focus:ring-2 group-hover:opacity-100 group-[.destructive]:text-red-300 group-[.destructive]:hover:text-red-50 group-[.destructive]:focus:ring-red-400 group-[.destructive]:focus:ring-offset-red-600`,r),n[3]=r,n[4]=a);let o;n[5]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,$.jsx)(nt,{className:`h-4 w-4`}),n[5]=o):o=n[5];let s;return n[6]!==i||n[7]!==t||n[8]!==a?(s=(0,$.jsx)(Nn,{ref:t,className:a,"toast-close":``,...i,children:o}),n[6]=i,n[7]=t,n[8]=a,n[9]=s):s=n[9],s});JC.displayName=Nn.displayName;var YC=Z.forwardRef((e,t)=>{let n=(0,Q.c)(9),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let a;n[3]===r?a=n[4]:(a=G(U.dialogTitle,r),n[3]=r,n[4]=a);let o;return n[5]!==i||n[6]!==t||n[7]!==a?(o=(0,$.jsx)(kn,{ref:t,className:a,...i}),n[5]=i,n[6]=t,n[7]=a,n[8]=o):o=n[8],o});YC.displayName=kn.displayName;var XC=Z.forwardRef((e,t)=>{let n=(0,Q.c)(9),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let a;n[3]===r?a=n[4]:(a=G(U.body,`opacity-90 text-muted-foreground group-[.destructive]:text-destructive-foreground`,r),n[3]=r,n[4]=a);let o;return n[5]!==i||n[6]!==t||n[7]!==a?(o=(0,$.jsx)(Ln,{ref:t,className:a,...i}),n[5]=i,n[6]=t,n[7]=a,n[8]=o):o=n[8],o});XC.displayName=Ln.displayName;function ZC(e){return(e?.match(/Removing (.+?)\.\.\./))?.[1]?.trim()||void 0}function QC(e,t){let n=ZC(t),r=e.trim().toLowerCase();return eo(e)&&n?{summary:`The connection dropped while Tarsk was deleting files on disk.`,cause:`Removing a large folder can take longer than the browser keeps the progress stream open. WebKit reports this as "Load failed" even though deletion may still be running or may already have finished on the server.`,guidance:[`Refresh the project list and check whether the thread is gone.`,`If the thread is still listed, try deleting again or remove the folder manually: ${n}`],removingPath:n}:eo(e)?{summary:`The connection to Tarsk was lost during deletion.`,cause:`The progress stream closed before the server reported completion. This is usually a browser or network timeout, not a message from the delete operation itself.`,guidance:[`Refresh the project list and check whether the thread was removed.`,`Try deleting the thread again if it is still listed.`]}:r.includes(`not found`)?{summary:`Tarsk could not find that thread.`,cause:`The thread may have already been deleted in another window or by a previous attempt.`,guidance:[`Refresh the project list.`,`If the thread is gone, no further action is needed.`]}:r.includes(`failed to remove`)||r.includes(`eperm`)||r.includes(`ebusy`)?{summary:`Tarsk could not remove the thread folder from disk.`,cause:e,guidance:[n?`Close any apps using files in ${n}, then try again.`:`Close any apps using files in the thread folder, then try again.`,`If deletion keeps failing, remove the folder manually and refresh the project list.`],removingPath:n}:{summary:e||`Thread deletion failed for an unknown reason.`,cause:`See the progress output below for where deletion stopped.`,guidance:[`Try deleting the thread again.`,`If the problem persists, check Settings > Logs for details.`],removingPath:n}}function $C(e,t){return[`Thread deletion failed (${e})`,t.summary,`Cause: ${t.cause}`,`What to do: ${t.guidance.join(` `)}`].join(`
3324
+ `)}function ew(e){if(!e||typeof e!=`object`)return{};let t=e,n={};if(typeof t.stdout==`string`&&t.stdout.trim()&&(n.stdout=t.stdout),typeof t.stderr==`string`&&t.stderr.trim()&&(n.stderr=t.stderr),typeof t.details==`string`&&t.details.trim())n.details=t.details;else if(typeof t.error==`string`&&t.error.trim())n.details=t.error;else if(t.error&&typeof t.error==`object`){let e=t.error;typeof e.message==`string`&&e.message.trim()&&(n.details=e.message),typeof e.stdout==`string`&&e.stdout.trim()&&(n.stdout=n.stdout??e.stdout),typeof e.stderr==`string`&&e.stderr.trim()&&(n.stderr=n.stderr??e.stderr)}return n}function tw(e,t,n){let r=crypto.randomUUID(),i=n.message.trim()||`Unknown error`,a=QC(i,n.progressOutput),o=$C(r,a),s={errorId:r,message:i,summary:a.summary,cause:a.cause,guidance:a.guidance,removingPath:a.removingPath,projectId:n.projectId,threadId:n.threadId,threadTitle:n.threadTitle,output:n.progressOutput,stdout:n.stdout,stderr:n.stderr,details:n.details,...n.cause===void 0?{}:{rawError:n.cause}};return e.error(o,s),Qr({level:`ERROR`,context:`app.use-projects.hook`,message:o,data:s}),ac({variant:`destructive`,title:`Failed to delete thread`,description:`Error ID: ${r}\n${a.summary}`,action:(0,$.jsx)(qC,{altText:`Go to Logs`,onClick:()=>{t(`/settings/logs?q=${encodeURIComponent(r)}`)},children:`Go to Logs`})}),r}var nw=Ut(`app.use-projects.hook`),rw=0;function iw(){let e=(0,Q.c)(17),t=Ks(),n=X(cw),r=X(sw),i=X(ow);i>0&&Si();let a=Nc(`projects:bootstrap:${i}`,lo),o=(0,Z.useRef)(!1),s;e[0]!==a.cloneRootPath||e[1]!==a.projects||e[2]!==t?(s=()=>{t({type:Y.SetProjects,projects:a.projects,cloneRootPath:a.cloneRootPath}),t({type:Y.SetProjectsLoading,projectsLoading:!1})},e[0]=a.cloneRootPath,e[1]=a.projects,e[2]=t,e[3]=s):s=e[3];let c;e[4]!==a||e[5]!==t?(c=[a,t],e[4]=a,e[5]=t,e[6]=c):c=e[6],(0,Z.useLayoutEffect)(s,c);let l;e[7]!==a.projects||e[8]!==t||e[9]!==r||e[10]!==n?(l=()=>{if(!o.current){if(n||r){o.current=!0;return}for(let e of a.projects){let n=e.threads.find(aw);if(n){t({type:Y.SelectThread,threadId:n.threadId,projectId:e.projectId}),o.current=!0;break}}}},e[7]=a.projects,e[8]=t,e[9]=r,e[10]=n,e[11]=l):l=e[11];let u;return e[12]!==a||e[13]!==t||e[14]!==r||e[15]!==n?(u=[a,t,n,r],e[12]=a,e[13]=t,e[14]=r,e[15]=n,e[16]=u):u=e[16],(0,Z.useLayoutEffect)(l,u),null}function aw(e){return e.isSelected}function ow(e){return e.configUpdatedAt}function sw(e){return e.selectedProjectId}function cw(e){return e.selectedThreadId}function lw(e){let t=Ks(),n=X(e=>e.projects),r=X(e=>e.selectedProjectId),i=X(e=>e.selectedThreadId),{toast:a}=ic(),o=Yn(),s=Gn(),[c,l]=(0,Z.useState)(null),u=(0,Z.useCallback)(async()=>{let e=++rw;try{t({type:Y.SetProjectsLoading,projectsLoading:!0}),Si(),Mc(`projects:bootstrap:`);let n=await lo();return e===rw&&t({type:Y.SetProjects,projects:n.projects,cloneRootPath:n.cloneRootPath}),n.projects}catch(e){return nw.error(`Failed to refresh projects:`,e),[]}finally{e===rw&&t({type:Y.SetProjectsLoading,projectsLoading:!1})}},[t]),d=(0,Z.useCallback)(async()=>{let e=await u();if(t({type:Y.ConfigUpdated}),!r||!i)return e;let n=e.find(e=>e.projectId===r);if(!n)return t({type:Y.ClearSelection}),e;if(!n.threads.some(e=>e.threadId===i)){t({type:Y.ClearThreadCreationSummary,threadId:i});let e=n.threads[0];t(e?{type:Y.SelectThread,threadId:e.threadId,projectId:r}:{type:Y.ClearSelection})}return e},[t,u,r,i]),f=(0,Z.useCallback)((e,n)=>{(i!==n||r!==e)&&t({type:Y.SelectThread,threadId:n,projectId:e}),ya(e,n).catch(e=>{nw.error(`Failed to select thread:`,e)})},[t,i,r]),p=(0,Z.useCallback)(async n=>{t({type:Y.SetCreatingProject,isCreating:!0});let r={current:null},i=``,o=!1;function s(e){if(!e)return;let n=`${e}\n`;i+=n;let a=r.current;a&&Ac(t,a.toolCallId,a.threadId,n)}let c=null,d=!1,f=null,p=null;function m(i,a){d=!0,f=i,p=a,t({type:Y.AddCreatingProject,projectId:i,threadId:a,projectName:n.optimisticProjectName,gitUrl:n.gitUrl??``}),t({type:Y.AddProcessingThread,threadId:a}),e?.onProjectCreated?.(i);let o=Ec({mode:n.mode,threadId:a,projectId:i,projectName:n.optimisticProjectName});r.current=o,xc(t,o,`${n.initialMessage}\n`)}function h(){d&&f&&(t({type:Y.RemoveCreatingProject,projectId:f}),p&&t({type:Y.RemoveProcessingThread,threadId:p}))}function g(e){!d&&typeof e.threadId==`string`&&typeof e.projectId==`string`&&m(e.projectId,e.threadId),s(typeof e.message==`string`?e.message:``)}function _(e){o=!0;let t=e.project;if(t){if(c=t.id,s(`Project created successfully at: ${n.includeThreadPath&&t.threads&&t.threads.length>0?`${t.path}/${t.threads[0]}`:t.path}`),r.current&&n.mode===`folder`){let e=t.path.split(/[/\\]/).filter(Boolean).pop();e&&e!==n.optimisticProjectName&&(r.current={...r.current,projectName:e})}n.handleSetupScript&&typeof e.suggestedSetupScript==`string`&&l({projectId:t.id,command:e.suggestedSetupScript,remainingScripts:t.pendingSetupScripts??[]})}}function v(e){let t=typeof e.message==`string`?e.message:`Unknown error`;h(),s(`Error: ${t}`),r.current||a({title:`Project Creation Failed`,description:t,variant:`destructive`})}function y(e){if(!e||typeof e!=`object`)return;let t=e;try{t.type===`progress`?g(t):t.type===`complete`?_(t):t.type===`error`&&v(t)}catch(e){nw.error(`Failed to parse ${n.logTag} event`,e)}}async function b(n){if(!c)return;let i=n.projects.find(e=>e.projectId===c);if(i&&i.threads.length>0){let e=i.threads[0].threadId;r.current?.threadId===e?t({type:Y.FocusChatInput}):t({type:Y.SelectThread,threadId:e,projectId:c,focusInput:!0})}e?.onProjectCreated?.(c)}async function x(){t({type:Y.SetCreatingProject,isCreating:!1});let e=r.current;e&&(Dc(t,e,i,{isError:!o}),t({type:Y.RemoveProcessingThread,threadId:e.threadId})),Si();let n=await lo();t({type:Y.SetProjects,projects:n.projects,cloneRootPath:n.cloneRootPath}),t({type:Y.SetProjectsLoading,projectsLoading:!1}),await b(n)}function S(e){nw.error(`Failed to ${n.logTag}:`,e),t({type:Y.SetCreatingProject,isCreating:!1});let o=r.current,c=`${n.catchErrorPrefix}: ${e instanceof Error?e.message:`Unknown error`}`;o?(s(c),Dc(t,o,i,{isError:!0}),t({type:Y.RemoveProcessingThread,threadId:o.threadId})):a({title:`Project Creation Failed`,description:c,variant:`destructive`})}try{let e=await n.apiCall();if(!e){t({type:Y.SetCreatingProject,isCreating:!1}),await u();return}await Fc(e,y),await x()}catch(e){S(e)}},[t,u,e?.onProjectCreated,a]),m=(0,Z.useCallback)(async(e,t)=>{let n=e.split(`/`).pop()?.replace(`.git`,``)??`project`;await p({apiCall:()=>no(e,t),initialMessage:`Cloning repository: ${e}...`,optimisticProjectName:n,gitUrl:e,mode:`clone`,includeThreadPath:!0,handleSetupScript:!0,logTag:`create project`,catchErrorPrefix:`Failed to create project`})},[p]),h=(0,Z.useCallback)(async(e,t,n)=>{await p({apiCall:()=>wa(e,t,n),initialMessage:`Creating app "${e}"...`,optimisticProjectName:e,mode:`webapp`,handleSetupScript:!1,logTag:`create web app`,catchErrorPrefix:`Failed to create web app`})},[p]),g=(0,Z.useCallback)(async e=>{await p({apiCall:()=>ba(e),initialMessage:`Creating folder "${e}"...`,optimisticProjectName:e,mode:`folder`,handleSetupScript:!1,logTag:`create folder`,catchErrorPrefix:`Failed to create folder`})},[p]),_=(0,Z.useCallback)(async(e,t,n)=>{let r=t.replace(/\.zip$/i,``)||`project`;await p({apiCall:()=>zo(e,t,n),initialMessage:n?`Replacing project from "${t}"...`:`Creating project from "${t}"...`,optimisticProjectName:r,mode:`zip`,handleSetupScript:!1,logTag:`create project from zip`,catchErrorPrefix:`Failed to create project from zip`})},[p]),v=(0,Z.useCallback)(async(r,i)=>{let o={current:null};try{let s=n.find(e=>e.projectId===r),c=s?Ke(s):`project`;e?.onThreadCreateStart?.(r);let l=i??(()=>{let e=s?.threads.map(e=>e.title)??[],t=/^thread-(\d+)$/i,n=0;for(let r of e){let e=r.match(t);e&&(n=Math.max(n,parseInt(e[1],10)))}return`thread-${n+1}`})(),d=await so(r,i);if(!d){await u();return}let f=!0,p,m=`Creating thread "${l}"...`,h=[{type:`system`,content:m}],g=`${m}\n`;function _(e,n){let r={type:n,content:e};g+=`${e}\n`;let i=o.current;if(!i){h.push(r);return}t({type:Y.AppendTerminalLine,threadId:i.threadId,line:r}),Ac(t,i.toolCallId,i.threadId,`${e}\n`)}function v(e){t({type:Y.AddCreatingThread,projectId:r,threadId:e,title:l}),t({type:Y.AddProcessingThread,threadId:e}),t({type:Y.ClearTerminalOutput,threadId:e});for(let n of h)t({type:Y.AppendTerminalLine,threadId:e,line:n});h.length=0;let n=Oc({threadId:e,projectId:r,projectName:c});o.current=n,xc(t,n,g)}function y(e){t({type:Y.RemoveCreatingThread,projectId:r,threadId:e}),t({type:Y.SelectProject,projectId:r})}try{await Fc(d,e=>{if(!e||typeof e!=`object`){typeof e==`string`&&nw.error(`Failed to parse thread event`,e);return}let t=e;if(t.type===`progress`)!o.current&&typeof t.threadId==`string`&&v(t.threadId),_(typeof t.message==`string`?t.message:``,`output`);else if(t.type===`complete`){let e=t.thread;typeof e?.currentBranch==`string`&&(p=e.currentBranch)}else if(t.type===`error`){let e=typeof t.message==`string`?t.message:`Unknown error`;_(`Error: ${e}`,`error`),nw.error(`Thread creation error:`,e),a({title:`Thread Creation Failed`,description:e,variant:`destructive`}),f=!1}});let e=o.current;e&&(Dc(t,e,g,{branch:p,isError:!f}),t({type:Y.RemoveProcessingThread,threadId:e.threadId}),f||y(e.threadId)),Si(),await u()}catch(e){let n=e instanceof Error?e.message:String(e),r=o.current;throw r&&(_(`Error: ${n}`,`error`),Dc(t,r,g,{isError:!0}),t({type:Y.RemoveProcessingThread,threadId:r.threadId}),y(r.threadId)),a({title:`Thread Creation Failed`,description:n,variant:`destructive`}),e}}catch(e){nw.error(`Failed to create thread:`,e);let n=`Failed to create thread: ${e instanceof Error?e.message:`Unknown error`}`;throw t({type:Y.AppendTerminalLine,line:{type:`error`,content:n}}),a({variant:`destructive`,title:`Thread Creation Failed`,description:n}),e}},[u,t,n,a,e?.onThreadCreateStart]),y=(0,Z.useCallback)(async(e,r)=>{t({type:Y.AddDeletingThread,threadId:r}),t({type:Y.ClearChatInputDraft,threadId:r});let a=n.find(t=>t.projectId===e),s=a?Ke(a):`project`,c=a?.threads.find(e=>e.threadId===r)?.title??`thread`,l=i===r,d=l?wc({threadId:r,projectId:e,projectName:s}):null,f=``,p=!0;function m(e){e.trim()&&(f+=`${e}\n`,d&&Ac(t,d.toolCallId,d.threadId,`${e}\n`))}d&&Tc(t,d,`Deleting thread "${c}"...\n`);try{let n=await Ii(e,r);n&&await Fc(n,t=>{if(!t||typeof t!=`object`)return;let n=t;if(n.type===`progress`)m(typeof n.message==`string`?n.message:``);else if(n.type===`error`){let t=typeof n.message==`string`?n.message:`Unknown error`,i=ew(n);m(`Error: ${t}`),tw(nw,o,{projectId:e,threadId:r,threadTitle:c,message:t,progressOutput:f,...i}),p=!1}}),d&&Dc(t,d,f,{isError:!p}),p&&(t({type:Y.ClearThreadCreationSummary,threadId:r}),t({type:Y.RemoveThread,projectId:e,threadId:r})),l&&p&&t({type:Y.ClearSelection}),await u(),t({type:Y.ConfigUpdated})}catch(n){let i=n instanceof Error?n.message:`Unknown error`,a=ew(n);if(eo(i)){m(`Deletion is still running on the server. Open Workspaces to refresh the list.`),d&&Dc(t,d,f,{isError:!1}),nw.info(`Thread deletion stream disconnected before completion`,{projectId:e,threadId:r,message:i,...a});return}if(i.toLowerCase().includes(`not found`)){t({type:Y.RemoveThread,projectId:e,threadId:r}),await u();return}m(`Error: ${i}`),d&&Dc(t,d,f,{isError:!0}),tw(nw,o,{projectId:e,threadId:r,threadTitle:c,message:i,progressOutput:f,cause:n,...a})}finally{t({type:Y.RemoveDeletingThread,threadId:r})}},[u,i,t,a,o,n]),b=(0,Z.useCallback)(async(e,r)=>{t({type:Y.AddDeletingProject,projectId:e});let i=n.find(t=>t.projectId===e),a=i?.threads.map(e=>e.threadId)??[];for(let e of a)t({type:Y.AddDeletingThread,threadId:e}),t({type:Y.ClearChatInputDraft,threadId:e});let c=0;r?.({projectId:e,projectName:i?.name??``,step:c,status:`progressing`});let l=window.setInterval(()=>{c=Math.min(c+1,VC.length-1),r?.({projectId:e,projectName:i?.name??``,step:c,status:`progressing`})},450);try{await ts(e),window.clearInterval(l),t({type:Y.CloseProjectPanel}),t({type:Y.SelectThread,threadId:``,projectId:``}),await u(),t({type:Y.ConfigUpdated}),s.pathname.startsWith(`/settings/`)&&o(`/`),r?.({projectId:e,projectName:i?.name??``,step:c,status:`done`})}catch(t){throw window.clearInterval(l),nw.error(`Failed to delete project:`,t),r?.({projectId:e,projectName:i?.name??``,step:c,status:`error`,errorMessage:t instanceof Error?t.message:`Failed to delete project`}),t}finally{t({type:Y.RemoveDeletingProject,projectId:e});for(let e of a)t({type:Y.RemoveDeletingThread,threadId:e})}},[u,n,t,o,s]),x=(0,Z.useCallback)(async e=>{let n=c;if(l(null),!n||!e)return;let{projectId:r,command:i,remainingScripts:a}=n,o=[i,...a||[]];try{t({type:Y.SetCreatingProject,isCreating:!0}),t({type:Y.SetTerminalOpen,open:!0}),t({type:Y.AppendTerminalLine,line:{type:`system`,content:`Installing dependencies for ${o.length} package${o.length===1?``:`s`}...`}});for(let e=0;e<o.length;e++){let n=o[e],i=n.match(/^cd "([^"]+)" && (.+)$/),a=i?i[1]:`root`;t({type:Y.AppendTerminalLine,line:{type:`system`,content:`Installing package ${e+1}/${o.length} in ${a}...`}}),t({type:Y.AppendTerminalLine,line:{type:`output`,content:`📦 Installing dependencies in ${a}: ${n}`}});let s=await yi(r,n,!0);s&&await Pc(s,{onOutput:e=>{t({type:Y.AppendTerminalLine,line:{type:`output`,content:e}})},onError:e=>{t({type:Y.AppendTerminalLine,line:{type:`error`,content:e}})}}),e<o.length-1&&(t({type:Y.AppendTerminalLine,line:{type:`system`,content:``}}),t({type:Y.AppendTerminalLine,line:{type:`system`,content:`---`}}),t({type:Y.AppendTerminalLine,line:{type:`system`,content:``}}))}t({type:Y.AppendTerminalLine,line:{type:`system`,content:`All dependencies installed successfully!`}}),t({type:Y.SetCreatingProject,isCreating:!1}),await u()}catch(e){t({type:Y.SetCreatingProject,isCreating:!1}),nw.error(`Failed to run setup script:`,e),t({type:Y.AppendTerminalLine,line:{type:`error`,content:`Failed to run setup script: ${e instanceof Error?e.message:`Unknown error`}`}})}},[c,t,u]);return{projects:n,selectedProjectId:r,selectedThreadId:i,refreshProjects:u,refreshWorkspaces:d,handleSelectThread:f,handleCreateProject:m,handleCreateWebApp:h,handleCreateFolder:g,handleCreateZip:_,handleOpenFolder:(0,Z.useCallback)(async()=>{await p({apiCall:ki,initialMessage:`Opening folder...`,optimisticProjectName:`Opening folder...`,mode:`folder`,handleSetupScript:!0,logTag:`open folder`,catchErrorPrefix:`Failed to open folder`})},[p]),handleOpenPath:(0,Z.useCallback)(async e=>{let t=e.split(/[/\\]/).filter(Boolean).pop()??`project`;await p({apiCall:()=>ls(e),initialMessage:`Opening folder: ${e}...`,optimisticProjectName:t,mode:`folder`,handleSetupScript:!0,logTag:`open path`,catchErrorPrefix:`Failed to open folder path`})},[p]),handleCreateThread:v,handleDeleteThread:y,confirmDeleteProject:b,pendingSetupScriptConfirmation:c,resolveSetupScriptConfirmation:x}}var uw;(function(e){e.Heavy=`HEAVY`,e.Medium=`MEDIUM`,e.Light=`LIGHT`})(uw||={});var dw;(function(e){e.Success=`SUCCESS`,e.Warning=`WARNING`,e.Error=`ERROR`})(dw||={});var fw=Ag(`Haptics`,{web:()=>us(()=>import(`./web-D7CwlITA.js`).then(e=>new e.HapticsWeb),[])});function pw(){return typeof window<`u`&&Za()}function mw(e=uw.Medium){pw()&&fw.impact({style:e}).catch(()=>{})}function hw(e){let t=(0,Q.c)(61),{projectId:n,onNewChat:r,isStartingNewChat:i,iconOnly:a,variant:o,size:s,className:c,buttonClassName:l,ariaLabel:u}=e,d=a===void 0?!1:a,f=o===void 0?`outline`:o,p=s===void 0?`sm`:s,{addWindow:m}=gc(),{handleCreateThread:h}=lw(),g;t[0]===r?g=t[1]:(g=function(){mw(),r()},t[0]=r,t[1]=g);let _=g,v;t[2]!==h||t[3]!==n?(v=function(){n&&(mw(),h(n,void 0))},t[2]=h,t[3]=n,t[4]=v):v=t[4];let y=v,b;t[5]===c?b=t[6]:(b=G(`inline-flex items-center`,c),t[5]=c,t[6]=b);let x=f===`outline`&&`border-r-0`,S;t[7]!==l||t[8]!==x?(S=G(l,`rounded-r-none`,x),t[7]=l,t[8]=x,t[9]=S):S=t[9];let C;t[10]!==u||t[11]!==d?(C=d?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(Se,{className:`h-3 w-3`}),(0,$.jsx)(`span`,{className:`sr-only`,children:u??`New Chat`})]}):`New Chat`,t[10]=u,t[11]=d,t[12]=C):C=t[12];let w;t[13]!==_||t[14]!==i||t[15]!==p||t[16]!==S||t[17]!==C||t[18]!==f?(w=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(Hr,{variant:f,size:p,disabled:i,className:S,onClick:_,children:C})}),t[13]=_,t[14]=i,t[15]=p,t[16]=S,t[17]=C,t[18]=f,t[19]=w):w=t[19];let T=i?`Starting Chat`:u??`New Chat`,E;t[20]===T?E=t[21]:(E=(0,$.jsx)(Fr,{children:T}),t[20]=T,t[21]=E);let D;t[22]!==w||t[23]!==E?(D=(0,$.jsx)(Zo,{children:(0,$.jsxs)(Mi,{children:[w,E]})}),t[22]=w,t[23]=E,t[24]=D):D=t[24];let O=f===`outline`&&`border-l-0`,k=d?`w-5 px-0`:`px-2`,A;t[25]!==l||t[26]!==O||t[27]!==k?(A=G(l,`rounded-l-none`,O,k),t[25]=l,t[26]=O,t[27]=k,t[28]=A):A=t[28];let j=d?`h-3 w-3`:`h-4 w-4`,N;t[29]===j?N=t[30]:(N=(0,$.jsx)(tn,{className:j}),t[29]=j,t[30]=N);let P;t[31]!==i||t[32]!==p||t[33]!==A||t[34]!==N||t[35]!==f?(P=(0,$.jsx)(gl,{asChild:!0,children:(0,$.jsx)(Hr,{variant:f,size:p,disabled:i,className:A,"aria-label":`New chat options`,children:N})}),t[31]=i,t[32]=p,t[33]=A,t[34]=N,t[35]=f,t[36]=P):P=t[36];let F;t[37]===m?F=t[38]:(F=()=>m(`chat`),t[37]=m,t[38]=F);let I;t[39]===Symbol.for(`react.memo_cache_sentinel`)?(I=(0,$.jsx)(dt,{}),t[39]=I):I=t[39];let L;t[40]===F?L=t[41]:(L=(0,$.jsxs)(xl,{onSelect:F,children:[I,`New Chat Window`]}),t[40]=F,t[41]=L);let R=!n,z;t[42]===Symbol.for(`react.memo_cache_sentinel`)?(z=(0,$.jsx)(M,{}),t[42]=z):z=t[42];let B;t[43]!==y||t[44]!==R?(B=(0,$.jsxs)(xl,{disabled:R,onSelect:y,children:[z,`New Workspace`]}),t[43]=y,t[44]=R,t[45]=B):B=t[45];let V;t[46]===Symbol.for(`react.memo_cache_sentinel`)?(V=(0,$.jsx)(Tl,{}),t[46]=V):V=t[46];let H;t[47]===Symbol.for(`react.memo_cache_sentinel`)?(H=(0,$.jsx)(Be,{}),t[47]=H):H=t[47];let ee;t[48]===_?ee=t[49]:(ee=(0,$.jsxs)(xl,{onSelect:_,children:[H,`Clear Chat`]}),t[48]=_,t[49]=ee);let te;t[50]!==L||t[51]!==B||t[52]!==ee?(te=(0,$.jsxs)(bl,{align:`start`,className:`min-w-44`,children:[L,B,V,ee]}),t[50]=L,t[51]=B,t[52]=ee,t[53]=te):te=t[53];let ne;t[54]!==P||t[55]!==te?(ne=(0,$.jsxs)(hl,{children:[P,te]}),t[54]=P,t[55]=te,t[56]=ne):ne=t[56];let re;return t[57]!==D||t[58]!==ne||t[59]!==b?(re=(0,$.jsxs)(`div`,{className:b,children:[D,ne]}),t[57]=D,t[58]=ne,t[59]=b,t[60]=re):re=t[60],re}var gw=(0,Z.createContext)(null);function _w({children:e}){let[t,n]=(0,Z.useState)(null),[r,i]=(0,Z.useState)(null),[a,o]=(0,Z.useState)(`idle`),[s,c]=(0,Z.useState)(null),[l,u]=(0,Z.useState)(!1),[d,f]=(0,Z.useState)(!1),[p,m]=(0,Z.useState)(null),[h,g]=(0,Z.useState)(null),_=(0,Z.useRef)(!1);function v(e){n(t=>{let n=typeof e==`function`?e(t):e;return n&&(i(n),f(!1)),n})}let y=(0,Z.useCallback)(e=>new Promise(t=>{g({...e,resolve:t})}),[]),b=(0,Z.useCallback)(()=>{g(null)},[]),x=a===`running`,S=a===`starting`||a===`stopping`;function C(e){o(t=>(typeof e==`function`?e(x):e)?`running`:t===`running`||t===`starting`?`idle`:t)}function w(e){o(t=>(typeof e==`function`?e(S):e)?t===`stopping`?`stopping`:`starting`:t===`starting`?l?`running`:t:t===`stopping`?`idle`:t)}let T=(0,Z.useMemo)(()=>({devServerUrl:t,setDevServerUrl:v,lastDevServerUrl:r,devServerState:a,setDevServerState:o,devServerFailureReason:s,setDevServerFailureReason:c,devServerProcessAlive:l,setDevServerProcessAlive:u,devServerStopped:d,setDevServerStopped:f,devServerProjectId:p,setDevServerProjectId:m,devServerStopRequestedRef:_,portConflictPrompt:h,requestPortConflictConfirmation:y,clearPortConflictPrompt:b,devServerRunning:x,devServerLoading:S,setDevServerRunning:C,setDevServerLoading:w}),[t,r,a,s,l,d,p,h,y,b,x,S]);return(0,$.jsx)(gw.Provider,{value:T,children:e})}function vw(){let e=(0,Z.useContext)(gw);if(!e)throw Error(`useDevServer must be used within a DevServerProvider`);return e}async function yw(e){if(e.useBuiltInBrowser){e.onTerminalMessage?.(`✓ Server running at: ${e.url}`),e.setDevServerUrl(e.url),e.openBrowserPanel();return}e.onTerminalMessage?.(`✓ Server running at: ${e.url} (opened in your browser)`),await e.openExternalUrl(e.url)}function bw(e){return typeof e==`object`&&!!e&&e.type===`url`&&typeof e.url==`string`}var xw=Z.forwardRef((e,t)=>{let n=(0,Q.c)(9),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let a;n[3]===r?a=n[4]:(a=G(`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`,r),n[3]=r,n[4]=a);let o;return n[5]!==i||n[6]!==t||n[7]!==a?(o=(0,$.jsx)(`textarea`,{className:a,ref:t,...i}),n[5]=i,n[6]=t,n[7]=a,n[8]=o):o=n[8],o});xw.displayName=`Textarea`;var Sw=Ut(`app.commands-dialog.ui`),Cw=`Play.Square.RotateCcw.Terminal.Bug.TestTube.FlaskConical.Wrench.Hammer.Zap.Search.FileCode.Code2.History.Settings.Activity.Cpu.Server.Database.Package.Box.GitBranch.Layers.ExternalLink.Eye.Shield.Flag.Star.Monitor.Smartphone`.split(`.`);function ww({open:e,onOpenChange:t,projectId:n,commands:r,onRefresh:i,initialCommand:a}){let[o,s]=(0,Z.useState)(null),[c,l]=(0,Z.useState)(!1),[u,d]=(0,Z.useState)(!1),[f,p]=(0,Z.useState)([]),[m,h]=(0,Z.useState)(0),[g,_]=(0,Z.useState)(!1),v=(0,Z.useRef)(null),y=(0,Z.useRef)(null);(0,Z.useEffect)(()=>{!e||!a||(s({id:je(),icon:`Play`,...a}),d(!1),p([]))},[a,e]);let b=()=>{s({id:je(),name:``,icon:`Play`,commandLine:``}),d(!1),p([])},x=e=>{s({...e}),d(!1),p([])},S=async()=>{try{_(!0);let e=await Ga(n);p(e.scripts),h(0),d(e.scripts.length>0)}catch(e){Sw.error(`Failed to load package scripts:`,e),ac({title:`Error`,description:`Failed to load package scripts`,variant:`destructive`})}finally{_(!1)}},C=e=>{s(t=>t?{...t,name:e.name,commandLine:e.commandLine,relativeFolder:e.relativePath||``}:null),d(!1),p([]),v.current?.focus()},w=e=>{u&&(e.key===`ArrowDown`?(e.preventDefault(),h(e=>e<f.length-1?e+1:e)):e.key===`ArrowUp`?(e.preventDefault(),h(e=>e>0?e-1:0)):e.key===`Enter`?(e.preventDefault(),m<f.length&&C(f[m])):e.key===`Escape`&&(e.preventDefault(),d(!1),p([])))};(0,Z.useEffect)(()=>{let e=e=>{y.current&&!y.current.contains(e.target)&&(d(!1),p([]))};return u&&document.addEventListener(`mousedown`,e),()=>{document.removeEventListener(`mousedown`,e)}},[u]);let T=async e=>{try{await os(n,e),ac({title:`Success`,description:`Command deleted`}),i()}catch{ac({title:`Error`,description:`Failed to delete command`,variant:`destructive`})}};return(0,$.jsx)(Ni,{open:e,onOpenChange:t,children:(0,$.jsxs)(Ir,{className:`sm:max-w-[500px]`,children:[(0,$.jsxs)(Dr,{children:[(0,$.jsx)(qa,{children:`Project Commands`}),(0,$.jsx)(_i,{children:`Manage custom commands for this project.`})]}),(0,$.jsx)(`div`,{className:`py-4 flex flex-col gap-4`,children:o?(0,$.jsxs)(`div`,{className:`p-4 border rounded-lg bg-muted/30 flex flex-col gap-4 animate-in slide-in-from-top-2`,children:[(0,$.jsxs)(`div`,{className:`grid gap-2`,children:[(0,$.jsx)(da,{htmlFor:`name`,children:`Command Name`}),(0,$.jsx)(Qo,{id:`name`,value:o.name,onChange:e=>s({...o,name:e.target.value}),placeholder:`e.g. Run Tests`,autoComplete:`off`})]}),(0,$.jsxs)(`div`,{className:`grid gap-2 relative`,children:[(0,$.jsx)(da,{htmlFor:`commandLine`,children:`Command Line`}),(0,$.jsxs)(`div`,{className:`relative`,children:[(0,$.jsx)(xw,{ref:v,id:`commandLine`,value:o.commandLine,onChange:e=>s({...o,commandLine:e.target.value}),onKeyDown:w,placeholder:`e.g. npm test`,className:`font-mono text-base min-h-[100px] resize-none pr-10`}),(0,$.jsx)(Zo,{children:(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(Hr,{type:`button`,variant:`ghost`,size:`icon`,className:`absolute right-2 top-2 h-6 w-6 text-muted-foreground transition-colors`,onClick:()=>void S(),disabled:g,children:(0,$.jsx)(tn,{className:`h-4 w-4`})})}),(0,$.jsx)(Fr,{children:(0,$.jsx)(`p`,{children:`Discover package scripts`})})]})})]}),u&&(0,$.jsx)(`div`,{ref:y,className:`absolute bottom-full left-0 right-0 mb-2 max-h-60 overflow-y-auto rounded-lg border border-border bg-popover shadow-lg z-50`,children:(0,$.jsxs)(`div`,{className:`p-2`,children:[(0,$.jsxs)(`div`,{className:G(U.dropdownGroupHeading,`px-2 py-1.5 border-b border-border/50 mb-1 flex items-center gap-2`),children:[(0,$.jsx)(tn,{className:`h-3 w-3`}),`Available Scripts `,g&&`(loading...)`]}),f.length>0?(()=>{let e={};f.forEach(t=>{e[t.relativePath]||(e[t.relativePath]=[]),e[t.relativePath].push(t)});let t=Object.keys(e).sort(),n=0;return t.map(t=>{let r=e[t].sort((e,t)=>e.name.localeCompare(t.name));return(0,$.jsxs)(`div`,{children:[(0,$.jsx)(`div`,{className:G(U.dropdownGroupHeading,`px-3 py-1.5 text-muted-foreground/70 bg-muted/30`),children:t}),r.map(e=>{let t=n===m;return n++,(0,$.jsxs)(`button`,{type:`button`,className:G(`flex w-full flex-col gap-1 rounded-lg mx-1 px-3 py-2 text-left transition-colors`,t?`bg-accent text-accent-foreground`:`text-popover-foreground hover:bg-accent/50`),onClick:()=>C(e),onMouseEnter:()=>h(n-1),children:[(0,$.jsx)(`span`,{className:`font-medium`,children:e.name}),(0,$.jsx)(`span`,{className:G(U.caption,`font-mono`),children:e.commandLine})]},e.commandLine)})]},t)})})():(0,$.jsx)(`div`,{className:G(U.caption,`px-3 py-4 text-center`),children:g?`Loading scripts...`:`No package scripts found`})]})})]}),(0,$.jsxs)(`div`,{className:`grid gap-2`,children:[(0,$.jsx)(da,{htmlFor:`relativeFolder`,children:`Relative Folder`}),(0,$.jsx)(Qo,{id:`relativeFolder`,value:o.relativeFolder??``,onChange:e=>s({...o,relativeFolder:e.target.value}),placeholder:`e.g. frontend, packages/api (optional)`,autoComplete:`off`}),(0,$.jsx)(`p`,{className:U.bodyMuted,children:`Folder path relative to project root where the command will be executed. Leave empty to run from project root.`})]}),(0,$.jsxs)(`div`,{className:`grid gap-2`,children:[(0,$.jsx)(da,{children:`Icon`}),(0,$.jsx)(Zo,{children:(0,$.jsx)(`div`,{className:`grid grid-cols-10 gap-1 p-2 bg-background rounded-md border border-border`,children:Cw.map(e=>{let t=Wt[e]||ut;return(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(Hr,{variant:o.icon===e?`default`:`ghost`,size:`icon`,className:`h-8 w-8`,onClick:()=>s({...o,icon:e}),children:(0,$.jsx)(t,{className:`h-4 w-4`})})}),(0,$.jsx)(Fr,{children:e})]},e)})})})]}),(0,$.jsxs)(`div`,{className:`flex justify-end gap-2 mt-2`,children:[(0,$.jsxs)(Hr,{variant:`ghost`,size:`sm`,onClick:()=>s(null),children:[(0,$.jsx)(nt,{className:`h-4 w-4 mr-2`}),` Cancel`]}),(0,$.jsx)(Hr,{size:`sm`,onClick:async()=>{if(!o?.name||!o?.commandLine){ac({title:`Error`,description:`Name and Command Line are required`,variant:`destructive`});return}try{l(!0),await ka(n,o),ac({title:`Success`,description:`Command saved`}),s(null),i()}catch{ac({title:`Error`,description:`Failed to save command`,variant:`destructive`})}finally{l(!1)}},disabled:c,children:c?`Saving...`:`Save`})]})]}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(`div`,{className:`flex flex-col gap-2 max-h-[400px] overflow-y-auto pr-2`,children:[r.length===0&&(0,$.jsx)(`div`,{className:`text-center py-8 text-muted-foreground border-2 border-dashed rounded-lg`,children:`No commands defined yet.`}),r.map(e=>(0,$.jsxs)(`div`,{className:`flex items-center justify-between p-3 rounded-md border border-border bg-card hover:bg-muted/50 cursor-pointer group transition-colors`,onClick:()=>x(e),children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,$.jsx)(`div`,{className:`p-2 bg-muted rounded`,children:(0,$.jsx)(Wt[e.icon]||Ae,{className:`h-4 w-4`})}),(0,$.jsxs)(`div`,{className:`flex flex-col`,children:[(0,$.jsx)(`span`,{className:U.label,children:e.name}),(0,$.jsx)(`span`,{className:G(U.caption,`line-clamp-1 font-mono select-text`),children:e.commandLine})]})]}),(0,$.jsx)(`div`,{className:`flex items-center gap-1 opacity-0 group-hover:opacity-100 transition-opacity`,children:(0,$.jsx)(Hr,{variant:`ghost`,size:`icon`,className:`h-8 w-8 text-muted-foreground hover:bg-destructive hover:text-destructive-foreground transition-colors`,onClick:t=>{t.stopPropagation(),T(e.id)},children:(0,$.jsx)(He,{className:`h-4 w-4`})})})]},e.id))]}),(0,$.jsxs)(Hr,{variant:`outline`,className:`w-full border-dashed`,onClick:b,children:[(0,$.jsx)(Se,{className:`h-4 w-4 mr-2`}),` Add New Command`]})]})})]})})}function Tw(e){let t=e.match(/^cd\s+(.+?)\s+&&\s+(.+)$/);return t?{relativeFolder:t[1],commandLine:t[2]}:{commandLine:e}}function Ew(e){let t=(0,Q.c)(10),{script:n,onPinClick:r}=e,i=`Add ${n.friendlyName} as a project command`,a;t[0]!==r||t[1]!==n?(a=e=>{e.stopPropagation(),r(n)},t[0]=r,t[1]=n,t[2]=a):a=t[2];let o;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,$.jsx)(ie,{className:`h-3.5 w-3.5`}),t[3]=o):o=t[3];let s;t[4]!==i||t[5]!==a?(s=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(Hr,{type:`button`,variant:`ghost`,size:`icon`,className:`ml-auto h-6 w-6 shrink-0 opacity-0 pointer-events-none transition-opacity can-hover:group-hover:opacity-100 can-hover:group-hover:pointer-events-auto focus-visible:opacity-100`,"aria-label":i,"data-script-pin":!0,onClick:a,children:o})}),t[4]=i,t[5]=a,t[6]=s):s=t[6];let c;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,$.jsx)(Fr,{children:`Add as project command`}),t[7]=c):c=t[7];let l;return t[8]===s?l=t[9]:(l=(0,$.jsxs)(Mi,{children:[s,c]}),t[8]=s,t[9]=l),l}function Dw({workspaceEntries:e,hasMultipleWorkspaces:t,runningScripts:n,onScriptClick:r,onPinClick:i}){return t?e.map(([e,t])=>(0,$.jsxs)(_l,{children:[(0,$.jsx)(vl,{children:e}),(0,$.jsx)(yl,{className:`max-h-[min(400px,80vh)] overflow-y-auto`,children:t.map(e=>(0,$.jsxs)(xl,{onClick:()=>{r(e)},className:`group gap-2`,children:[n.has(e.name)?(0,$.jsx)(ln,{className:`h-3 w-3 animate-spin shrink-0`}):(0,$.jsx)(`div`,{className:`h-3 w-3 shrink-0`}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:e.friendlyName}),(0,$.jsx)(Ew,{script:e,onPinClick:i})]},e.name))})]},e)):e[0]?.[1].map(e=>(0,$.jsxs)(xl,{onClick:()=>{r(e)},className:`group gap-2`,children:[n.has(e.name)?(0,$.jsx)(ln,{className:`h-3 w-3 animate-spin shrink-0`}):(0,$.jsx)(`div`,{className:`h-3 w-3 shrink-0`}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:e.friendlyName}),(0,$.jsx)(Ew,{script:e,onPinClick:i})]},e.name))}function Ow({workspaceEntries:e,hasMultipleWorkspaces:t,runningScripts:n,onScriptClick:r,onPinClick:i}){return t?e.map(([e,t])=>(0,$.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,$.jsx)(`div`,{className:`px-2 py-1 text-xs font-medium text-muted-foreground`,children:e}),t.map(e=>(0,$.jsxs)(`div`,{className:`group flex items-center rounded-sm hover:bg-accent`,children:[(0,$.jsxs)(`button`,{type:`button`,className:`flex min-w-0 flex-1 items-center gap-2 px-2 py-1.5 text-sm`,onClick:()=>{r(e)},children:[n.has(e.name)?(0,$.jsx)(ln,{className:`h-3 w-3 animate-spin shrink-0`}):(0,$.jsx)(`div`,{className:`h-3 w-3 shrink-0`}),(0,$.jsx)(`span`,{className:`truncate`,children:e.friendlyName})]}),(0,$.jsx)(Ew,{script:e,onPinClick:i})]},e.name))]},e)):e[0]?.[1].map(e=>(0,$.jsxs)(`div`,{className:`group flex items-center rounded-sm hover:bg-accent`,children:[(0,$.jsxs)(`button`,{type:`button`,className:`flex min-w-0 flex-1 items-center gap-2 px-2 py-1.5 text-sm`,onClick:()=>{r(e)},children:[n.has(e.name)?(0,$.jsx)(ln,{className:`h-3 w-3 animate-spin shrink-0`}):(0,$.jsx)(`div`,{className:`h-3 w-3 shrink-0`}),(0,$.jsx)(`span`,{className:`truncate`,children:e.friendlyName})]}),(0,$.jsx)(Ew,{script:e,onPinClick:i})]},e.name))}function kw({threadId:e,layout:t=`bar`}){let n=Ks(),r=X(e=>e.projects).find(t=>t.threads.some(t=>t.threadId===e)),{openChatDockPanel:i}=Wd(),{setDevServerUrl:a}=vw(),o=gC(),[s,c]=(0,Z.useState)(null),[l,u]=(0,Z.useState)(new Set),[d,f]=(0,Z.useState)(null),p=(0,Z.useRef)(new Map);(0,Z.useEffect)(()=>((async()=>{try{let t=await Ea(e);if(t.length===0){c(null);return}c(t),u(new Set(t.filter(e=>e.isRunning).map(e=>e.name)))}catch{c(null)}})(),()=>{for(let e of p.current.values())e.abort();p.current.clear()}),[e]);function m(t){if(typeof t==`string`){n({type:Y.AppendTerminalLine,threadId:e,line:{type:`output`,content:t}});return}if(!(!t||typeof t!=`object`)){if(bw(t)){yw({url:t.url,useBuiltInBrowser:r?.useBuiltInBrowser!==!1,setDevServerUrl:a,openBrowserPanel:()=>{i(`browser`)},openExternalUrl:ui,onTerminalMessage:t=>{n({type:Y.AppendTerminalLine,threadId:e,line:{type:`system`,content:t}})}});return}`type`in t&&t.type===`error`&&`message`in t&&n({type:Y.AppendTerminalLine,threadId:e,line:{type:`error`,content:String(t.message)}})}}let h=async t=>{if(l.has(t.name)){let r=p.current.get(t.name);r&&(r.abort(),p.current.delete(t.name));try{await oo(e,t.name)}catch{}n({type:Y.AppendTerminalLine,threadId:e,line:{type:`system`,content:`■ ${t.friendlyName} stopped`}}),u(e=>{let n=new Set(e);return n.delete(t.name),n})}else{let r=new AbortController;p.current.set(t.name,r),u(e=>new Set([...e,t.name])),i(`terminal`),n({type:Y.AppendTerminalLine,threadId:e,line:{type:`system`,content:`▶ ${t.friendlyName}`}});try{let i=await Tr(e,t.name,t.command,{signal:r.signal});i&&await Fc(i,e=>{m(e)}),n({type:Y.AppendTerminalLine,threadId:e,line:{type:`system`,content:`✓ ${t.friendlyName} done`}})}catch{}finally{p.current.delete(t.name),u(e=>{let n=new Set(e);return n.delete(t.name),n})}}};if(!s)return null;let g=s.reduce((e,t)=>(e[t.workspace]||(e[t.workspace]=[]),e[t.workspace].push(t),e),{}),_=Object.entries(g).sort(([e],[t])=>e.localeCompare(t)).map(([e,t])=>[e,[...t].sort((e,t)=>e.friendlyName.localeCompare(t.friendlyName))]),v=_.length>1;function y(e){h(e)}function b(e){f(e)}function x(e){e||f(null)}function S(){f(null),n({type:Y.ConfigUpdated})}return t===`menu`?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(Zo,{children:(0,$.jsxs)(Np,{children:[(0,$.jsx)(Pp,{asChild:!0,children:(0,$.jsxs)(Hr,{variant:`ghost`,size:`sm`,className:`w-full justify-start gap-2`,children:[(0,$.jsx)(ge,{className:`h-4 w-4 shrink-0`}),`Project Scripts`]})}),(0,$.jsx)(Fp,{align:`start`,className:`w-56 p-1`,children:(0,$.jsx)(Ow,{workspaceEntries:_,hasMultipleWorkspaces:v,runningScripts:l,onScriptClick:y,onPinClick:b})})]})}),r&&(0,$.jsx)(ww,{open:d!==null,onOpenChange:x,projectId:r.projectId,commands:r.commands??[],onRefresh:S,initialCommand:d?{name:d.friendlyName,...Tw(d.command)}:void 0})]}):(0,$.jsxs)(hl,{children:[(0,$.jsx)(Zo,{children:(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(gl,{asChild:!0,children:(0,$.jsx)(Hr,{variant:`action`,size:`icon-md`,className:o?nl:void 0,children:(0,$.jsx)(ge,{})})})}),(0,$.jsx)(Fr,{children:`Project Scripts`})]})}),(0,$.jsx)(bl,{align:`end`,className:`min-w-[180px]`,children:(0,$.jsx)(Dw,{workspaceEntries:_,hasMultipleWorkspaces:v,runningScripts:l,onScriptClick:y,onPinClick:b})}),r&&(0,$.jsx)(ww,{open:d!==null,onOpenChange:x,projectId:r.projectId,commands:r.commands??[],onRefresh:S,initialCommand:d?{name:d.friendlyName,...Tw(d.command)}:void 0})]})}function Aw({layout:e=`bar`,threadId:t}){let n=X(e=>e.selectedProjectId),r=X(e=>e.selectedThreadId),i=X(e=>e.projects),a=Ks(),{openChatDockPanel:o}=Wd(),{setDevServerUrl:s}=vw(),c=gC(),[l,u]=(0,Z.useState)(new Set),d=(0,Z.useRef)(new Map),f=t??r,p=i.find(e=>e.projectId===n),m=p?.commands??[];(0,Z.useEffect)(()=>()=>{let e=d.current;for(let t of e.values())t.abort();e.clear()},[f]);function h(e){if(f){if(typeof e==`string`){a({type:Y.AppendTerminalLine,threadId:f,line:{type:`output`,content:e}});return}if(!(!e||typeof e!=`object`)){if(bw(e)){yw({url:e.url,useBuiltInBrowser:p?.useBuiltInBrowser!==!1,setDevServerUrl:s,openBrowserPanel:()=>{o(`browser`)},openExternalUrl:ui,onTerminalMessage:e=>{a({type:Y.AppendTerminalLine,threadId:f,line:{type:`system`,content:e}})}});return}`type`in e&&e.type===`error`&&`message`in e&&a({type:Y.AppendTerminalLine,threadId:f,line:{type:`error`,content:String(e.message)}})}}}async function g(e){if(!f)return;if(l.has(e.id)){let t=d.current.get(e.id);t&&(t.abort(),d.current.delete(e.id));try{await oo(f,e.id)}catch{}a({type:Y.AppendTerminalLine,threadId:f,line:{type:`system`,content:`■ ${e.name} stopped`}}),u(t=>{let n=new Set(t);return n.delete(e.id),n});return}let t=new AbortController;d.current.set(e.id,t),u(t=>new Set([...t,e.id])),o(`terminal`),a({type:Y.AppendTerminalLine,threadId:f,line:{type:`system`,content:`▶ ${e.name}`}});try{let n=await Tr(f,e.id,e.commandLine,{signal:t.signal,relativeFolder:e.relativeFolder});n&&await Fc(n,e=>{h(e)}),t.signal.aborted||a({type:Y.AppendTerminalLine,threadId:f,line:{type:`system`,content:`✓ ${e.name} done`}})}catch{}finally{d.current.delete(e.id),u(t=>{let n=new Set(t);return n.delete(e.id),n})}}return!n||m.length===0?null:e===`menu`?(0,$.jsx)($.Fragment,{children:m.map(e=>{let t=l.has(e.id),n=Wt[e.icon]||Ae;return(0,$.jsx)(Zo,{children:(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(Hr,{variant:`ghost`,size:`sm`,className:G(`w-full justify-start gap-2`,t&&`text-muted-foreground opacity-80`),onClick:()=>g(e),children:[(0,$.jsxs)(`span`,{className:`relative inline-flex items-center justify-center`,children:[t&&(0,$.jsx)(`span`,{"aria-hidden":!0,className:`pointer-events-none absolute inset-[-8px] rounded-full border-2 border-brand/30 border-t-brand animate-spin`}),(0,$.jsx)(n,{className:G(`h-4 w-4 shrink-0`,t&&`opacity-60`)})]}),e.name]})}),(0,$.jsx)(Fr,{side:`right`,children:(0,$.jsxs)(`div`,{className:`flex flex-col gap-0.5`,children:[(0,$.jsx)(`span`,{className:`font-medium`,children:e.name}),(0,$.jsx)(`span`,{className:`text-[10px] opacity-70 font-mono whitespace-pre-wrap max-w-[300px] max-h-[100px] overflow-y-auto`,children:e.commandLine}),t&&(0,$.jsx)(`span`,{className:`text-[10px] text-primary font-medium`,children:`Click to stop`})]})})]})},e.id)})}):(0,$.jsx)(`div`,{className:`flex items-center gap-1`,children:(0,$.jsx)(Zo,{children:m.map(e=>{let t=l.has(e.id),n=Wt[e.icon]||Ae;return(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(Hr,{variant:`action`,size:`icon-md`,className:G(c&&!t&&`scenic-chrome-button hover:!bg-[hsl(var(--scenic-foreground))] hover:!text-[hsl(var(--scenic-foreground-inverse))]`,t&&`text-muted-foreground opacity-80`),onClick:()=>g(e),children:(0,$.jsxs)(`span`,{className:`relative inline-flex items-center justify-center`,children:[t&&(0,$.jsx)(`span`,{"aria-hidden":!0,className:`pointer-events-none absolute inset-[-8px] rounded-full border-2 border-brand/30 border-t-brand animate-spin`}),(0,$.jsx)(n,{className:G(t&&`opacity-60`)})]})})}),(0,$.jsx)(Fr,{children:(0,$.jsxs)(`div`,{className:`flex flex-col gap-0.5`,children:[(0,$.jsx)(`span`,{className:`font-medium`,children:e.name}),(0,$.jsx)(`span`,{className:`text-[10px] opacity-70 font-mono whitespace-pre-wrap max-w-[300px] max-h-[100px] overflow-y-auto`,children:e.commandLine}),t&&(0,$.jsx)(`span`,{className:`text-[10px] text-primary font-medium`,children:`Click to stop`})]})})]},e.id)})})})}var jw=Ut(`app.task-agent-run.ui`);async function Mw(e,t){let n=await Ur(t),r=n.model,i=n.modelProvider;if(r&&i)return{model:r,provider:i};try{let t=(await Va(`api/threads?projectId=${encodeURIComponent(e)}`)||[]).map(e=>{let t=e;return{model:t.model??void 0,modelProvider:t.modelProvider??void 0}}).find(e=>e.model&&e.modelProvider);if(t?.model&&t.modelProvider)return{model:t.model,provider:t.modelProvider}}catch(e){jw.error(`Failed to get project threads:`,e)}return null}function Nw(e,t,n,r){e({type:Y.SetProjectModel,threadId:t,model:{id:n,provider:r,name:n,description:``}}),Qa(t,{model:n,modelProvider:r})}async function Pw(e,t,n,r,i,a){i||a(await H_(e,t.id,{status:n,working:!0,threadId:r}))}function Fw(e){return!e.hasChanges&&e.defaultBranchBehind>0}function Iw(e){return e.prExists&&e.prState===`OPEN`&&!e.hasChanges&&!e.hasUnpushedCommits}function Lw(e){return e.hasUnpushedCommits&&e.prExists}function Rw(e,t){return t?`Creating PR`:e.hasChanges?`Commit`:Lw(e)?`Update PR`:Iw(e)?`Open PR`:e.commitsAheadOfDefault&&!e.prExists&&!e.hasChanges?`Create PR`:Fw(e)?`Sync`:`Commit`}function zw(e,t,n=!1){return t||n||e.hasChanges||Lw(e)||Iw(e)||e.commitsAheadOfDefault&&!e.prExists&&!e.hasChanges||!e.hasChanges&&!e.hasUnpushedCommits&&!Fw(e)?null:Fw(e)?(0,$.jsx)(gt,{className:`h-3.5 w-3.5`}):(0,$.jsx)(g,{className:`h-3.5 w-3.5`})}function Bw(e){if(e.hasChanges)return e.changedFilesCount>0?`Commit ${e.changedFilesCount} changed file${e.changedFilesCount===1?``:`s`}`:`No changes to commit`;if(Lw(e))return`Update pull request with unpushed commits`;if(Iw(e))return`View pull request in GitHub`;if(e.commitsAheadOfDefault&&!e.prExists&&!e.hasChanges)return`Create pull request for committed changes`;if(Fw(e)){let t=e.defaultBranch??`main`,n=`${e.defaultBranchBehind} commit${e.defaultBranchBehind===1?``:`s`} behind origin/${t}`,r=e.defaultBranchAhead>0?`, ${e.defaultBranchAhead} commit${e.defaultBranchAhead===1?``:`s`} ahead`:``;return e.currentBranch===e.defaultBranch?`Your branch is ${n}${r}. Click to pull the latest changes.`:`Your branch "${e.currentBranch}" is ${n}${r}. Click to rebase onto the latest ${t}.`}return`No actions available`}function Vw(e,t,n=!1){return t||n?!0:Iw(e)||e.commitsAheadOfDefault&&!e.prExists&&!e.hasChanges||Fw(e)?!1:!e.hasChanges&&!e.hasUnpushedCommits}function Hw(e){return e.hasChanges||Iw(e)||Lw(e)||Fw(e)||e.commitsAheadOfDefault&&!e.prExists&&!e.hasChanges}var Uw=`flex items-center rounded-full frosted-surface text-foreground shadow-md backdrop-blur-sm transition-colors hover:bg-foreground hover:text-background dark:hover:bg-primary dark:hover:text-primary-foreground`,Ww=`flex items-center rounded-full bg-transparent scenic-chrome-button shadow-none backdrop-blur-none`,Gw=`h-10`,Kw=`max-w-[12rem] justify-start gap-1.5 px-3`,qw=`h-3.5 w-3.5 shrink-0 opacity-60`;function Jw(e){let t=(0,Q.c)(104),{branchStatus:n,remoteUrl:r,hasRemoteBranch:i,hasUnpushedCommits:a,canCreateRepo:o,repoUrl:s,isRefreshing:c,isCreatingPR:l,hasChanges:u,commitsAheadOfDefault:d,prExists:f,defaultBranch:p,defaultBranchAhead:m,defaultBranchBehind:h,gitUser:_,isDirectCommitMode:v,autoGenerateCommitMessage:y,isLoading:b,isLoadingHistory:x,isQuickCommitting:S,onFetch:C,onPull:w,onPush:T,onOpenHistory:E,onCreatePR:O,onCreateRepo:k,onViewInGitHub:A,onQuickCommit:j,onSyncWithDefault:M,onOpenChange:N,open:P,layout:F}=e,I=l===void 0?!1:l,L=F===void 0?`bar`:F,R=!!p&&!!r&&h>0,z=!u&&!b,B;t[0]!==I||t[1]!==c?(B=I||c?(0,$.jsx)(ln,{className:`h-4 w-4 shrink-0 animate-spin`}):(0,$.jsx)(Yt,{className:`h-4 w-4 shrink-0`}),t[0]=I,t[1]=c,t[2]=B):B=t[2];let H=B,ee;t[3]!==I||t[4]!==b||t[5]!==c||t[6]!==L||t[7]!==H?(ee=(0,$.jsx)(gl,{asChild:!0,children:L===`sidebar`?(0,$.jsx)(Hr,{variant:`ghost`,size:`icon-sm`,className:`shrink-0 text-muted-foreground`,disabled:b||I,"aria-label":`Git Ops`,children:H}):L===`bar`?(0,$.jsx)(`button`,{type:`button`,className:`flex h-full shrink-0 items-center rounded-r-full pr-3 pl-0.5 disabled:opacity-50`,disabled:b||I,"aria-label":`Git Ops`,children:I||c?(0,$.jsx)(ln,{className:G(qw,`animate-spin`)}):(0,$.jsx)(Yt,{className:qw})}):(0,$.jsxs)(Hr,{variant:`outline`,size:`sm`,className:`h-8 w-full justify-start gap-2 rounded-md px-1`,disabled:b||I,children:[(0,$.jsx)(`span`,{children:`Git Ops`}),I||c?(0,$.jsx)(ln,{className:`h-3.5 w-3.5 animate-spin`}):(0,$.jsx)(Yt,{className:`h-3.5 w-3.5`})]})}),t[3]=I,t[4]=b,t[5]=c,t[6]=L,t[7]=H,t[8]=ee):ee=t[8];let te=L===`sidebar`?`start`:`end`,ne;t[9]!==n||t[10]!==r?(ne=n===`Behind`&&(0,$.jsxs)(`div`,{className:G(U.compact,`px-2 py-1 text-amber-600`),children:[`Branch is behind `,r?`origin`:`remote`]}),t[9]=n,t[10]=r,t[11]=ne):ne=t[11];let ie;t[12]===_?ie=t[13]:(ie=_&&(0,$.jsxs)(`div`,{className:G(U.compact,`px-2 py-1 text-muted-foreground`),children:[(0,$.jsx)(`span`,{className:`font-medium`,children:`User:`}),` `,_]}),t[12]=_,t[13]=ie);let ae;t[14]===Symbol.for(`react.memo_cache_sentinel`)?(ae=(0,$.jsx)(Tl,{}),t[14]=ae):ae=t[14];let oe;t[15]!==z||t[16]!==p||t[17]!==m||t[18]!==h||t[19]!==u||t[20]!==M||t[21]!==R?(oe=R&&(0,$.jsx)(Zo,{children:(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(xl,{onClick:()=>{z&&M()},className:z?``:`opacity-50 cursor-not-allowed`,children:[(0,$.jsx)(D,{className:`h-3.5 w-3.5 mr-2`}),`Sync with `,p,(0,$.jsxs)(`span`,{className:`ml-auto flex items-center gap-2 pl-3 text-xs tabular-nums text-muted-foreground`,children:[m>0&&(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-0.5`,children:[(0,$.jsx)(V,{className:`h-3 w-3`}),m]}),h>0&&(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-0.5`,children:[(0,$.jsx)(gt,{className:`h-3 w-3`}),h]})]})]})}),(0,$.jsx)(Fr,{side:`right`,children:u?`Commit or stash changes before syncing with the default branch`:`Pull latest changes from origin/${p} onto your current branch`})]})}),t[15]=z,t[16]=p,t[17]=m,t[18]=h,t[19]=u,t[20]=M,t[21]=R,t[22]=oe):oe=t[22];let se;t[23]!==y||t[24]!==u||t[25]!==b||t[26]!==S||t[27]!==j?(se=u&&y&&(0,$.jsx)(Zo,{children:(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(xl,{onClick:j,disabled:b||S,children:[S?(0,$.jsx)(ln,{className:`h-3.5 w-3.5 mr-2 animate-spin`}):(0,$.jsx)(Ye,{className:`h-3.5 w-3.5 mr-2`}),`Quick Commit`,(0,$.jsx)(El,{children:`⌘⇧C`})]})}),(0,$.jsx)(Fr,{side:`right`,children:`Generate the commit message and commit`})]})}),t[23]=y,t[24]=u,t[25]=b,t[26]=S,t[27]=j,t[28]=se):se=t[28];let ce;t[29]===Symbol.for(`react.memo_cache_sentinel`)?(ce=(0,$.jsx)(Rt,{className:`h-3.5 w-3.5 mr-2`}),t[29]=ce):ce=t[29];let le;t[30]!==b||t[31]!==C?(le=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(xl,{onClick:C,disabled:b,children:[ce,`Fetch`]})}),t[30]=b,t[31]=C,t[32]=le):le=t[32];let ue;t[33]===Symbol.for(`react.memo_cache_sentinel`)?(ue=(0,$.jsx)(Fr,{side:`right`,children:`Download latest information from remote without merging changes`}),t[33]=ue):ue=t[33];let W;t[34]===le?W=t[35]:(W=(0,$.jsx)(Zo,{children:(0,$.jsxs)(Mi,{children:[le,ue]})}),t[34]=le,t[35]=W);let de;t[36]!==i||t[37]!==b||t[38]!==w?(de=()=>{i&&!b&&w()},t[36]=i,t[37]=b,t[38]=w,t[39]=de):de=t[39];let fe=!i||b?`opacity-50 cursor-not-allowed`:``,pe;t[40]===Symbol.for(`react.memo_cache_sentinel`)?(pe=(0,$.jsx)(gt,{className:`h-3.5 w-3.5 mr-2`}),t[40]=pe):pe=t[40];let me;t[41]!==de||t[42]!==fe?(me=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(xl,{onClick:de,className:fe,children:[pe,`Pull`]})}),t[41]=de,t[42]=fe,t[43]=me):me=t[43];let he=i?`Pull latest changes from remote`:`No remote branch to pull from`,ge;t[44]===he?ge=t[45]:(ge=(0,$.jsx)(Fr,{side:`right`,children:he}),t[44]=he,t[45]=ge);let _e;t[46]!==me||t[47]!==ge?(_e=(0,$.jsx)(Zo,{children:(0,$.jsxs)(Mi,{children:[me,ge]})}),t[46]=me,t[47]=ge,t[48]=_e):_e=t[48];let ve;t[49]!==i||t[50]!==b||t[51]!==T?(ve=!i&&(0,$.jsx)(Zo,{children:(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(xl,{onClick:T,disabled:b,children:[(0,$.jsx)(Pe,{className:`h-3.5 w-3.5 mr-2`}),`Push Branch to Remote`]})}),(0,$.jsx)(Fr,{side:`right`,children:`Create remote branch and push local commits`})]})}),t[49]=i,t[50]=b,t[51]=T,t[52]=ve):ve=t[52];let ye;t[53]!==a||t[54]!==b||t[55]!==T?(ye=()=>{a&&!b&&T()},t[53]=a,t[54]=b,t[55]=T,t[56]=ye):ye=t[56];let be=!a||b?`opacity-50 cursor-not-allowed`:``,xe;t[57]===Symbol.for(`react.memo_cache_sentinel`)?(xe=(0,$.jsx)(Pe,{className:`h-3.5 w-3.5 mr-2`}),t[57]=xe):xe=t[57];let Se;t[58]!==ye||t[59]!==be?(Se=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(xl,{onClick:ye,className:be,children:[xe,`Push Commits`]})}),t[58]=ye,t[59]=be,t[60]=Se):Se=t[60];let Ce=a?b?`Push in progress...`:`Push your uncommitted commits to the remote branch`:`No commits to push - your branch is up to date with remote`,we;t[61]===Ce?we=t[62]:(we=(0,$.jsx)(Fr,{side:`right`,children:Ce}),t[61]=Ce,t[62]=we);let Te;t[63]!==Se||t[64]!==we?(Te=(0,$.jsx)(Zo,{children:(0,$.jsxs)(Mi,{children:[Se,we]})}),t[63]=Se,t[64]=we,t[65]=Te):Te=t[65];let Ee=b||x,De;t[66]===Symbol.for(`react.memo_cache_sentinel`)?(De=(0,$.jsx)(bt,{className:`h-3.5 w-3.5 mr-2`}),t[66]=De):De=t[66];let Oe;t[67]!==E||t[68]!==Ee?(Oe=(0,$.jsxs)(xl,{onClick:E,disabled:Ee,children:[De,`History`]}),t[67]=E,t[68]=Ee,t[69]=Oe):Oe=t[69];let ke;t[70]!==d||t[71]!==u||t[72]!==v||t[73]!==b||t[74]!==O||t[75]!==f?(ke=!v&&d&&!f&&!u&&(0,$.jsxs)(xl,{onClick:O,disabled:b,children:[(0,$.jsx)(g,{className:`h-3.5 w-3.5 mr-2`}),`Create Pull Request`,(0,$.jsx)(El,{children:`⌘⇧P`})]}),t[70]=d,t[71]=u,t[72]=v,t[73]=b,t[74]=O,t[75]=f,t[76]=ke):ke=t[76];let Ae;t[77]!==o||t[78]!==b||t[79]!==k?(Ae=o&&(0,$.jsxs)(xl,{onClick:k,disabled:b,children:[(0,$.jsx)(re,{className:`h-3.5 w-3.5 mr-2`}),`Create Repo`]}),t[77]=o,t[78]=b,t[79]=k,t[80]=Ae):Ae=t[80];let je;t[81]!==b||t[82]!==A||t[83]!==s?(je=s&&(0,$.jsxs)(xl,{onClick:A,disabled:b,children:[(0,$.jsx)(pt,{className:`h-3.5 w-3.5 mr-2`}),`View in GitHub`,(0,$.jsx)(El,{children:`⌘⇧G`})]}),t[81]=b,t[82]=A,t[83]=s,t[84]=je):je=t[84];let Me;t[85]!==se||t[86]!==W||t[87]!==_e||t[88]!==ve||t[89]!==Te||t[90]!==Oe||t[91]!==ke||t[92]!==Ae||t[93]!==je||t[94]!==te||t[95]!==ne||t[96]!==ie||t[97]!==oe?(Me=(0,$.jsxs)(bl,{align:te,children:[ne,ie,ae,oe,se,W,_e,ve,Te,Oe,ke,Ae,je]}),t[85]=se,t[86]=W,t[87]=_e,t[88]=ve,t[89]=Te,t[90]=Oe,t[91]=ke,t[92]=Ae,t[93]=je,t[94]=te,t[95]=ne,t[96]=ie,t[97]=oe,t[98]=Me):Me=t[98];let Ne;return t[99]!==N||t[100]!==P||t[101]!==Me||t[102]!==ee?(Ne=(0,$.jsxs)(hl,{open:P,onOpenChange:N,children:[ee,Me]}),t[99]=N,t[100]=P,t[101]=Me,t[102]=ee,t[103]=Ne):Ne=t[103],Ne}var Yw=(0,Z.lazy)(()=>us(()=>import(`./commit-dialog-BfdxNX_T.js`).then(e=>({default:e.CommitDialog})),__vite__mapDeps([3,4,1,5]))),Xw=(0,Z.lazy)(()=>us(()=>import(`./pull-request-dialog-CitbRcub.js`).then(e=>({default:e.PullRequestDialog})),__vite__mapDeps([6,4,1,5]))),Zw=(0,Z.lazy)(()=>us(()=>import(`./create-repo-dialog-CkFACtMf.js`).then(e=>({default:e.CreateRepoDialog})),__vite__mapDeps([7,4,1,5]))),Qw=(0,Z.lazy)(()=>us(()=>import(`./git-history-dialog-X6sVwgPT.js`).then(e=>({default:e.GitHistoryDialog})),__vite__mapDeps([8,4,1,5]))),$w=(0,Z.lazy)(()=>us(()=>import(`./push-before-pr-dialog-CrcNZDLb.js`).then(e=>({default:e.PushBeforePRDialog})),__vite__mapDeps([9,4,1,5]))),eT=(0,Z.lazy)(()=>us(()=>import(`./pull-with-changes-dialog-CpgHqvKf.js`).then(e=>({default:e.PullWithChangesDialog})),__vite__mapDeps([10,4,1,5]))),tT=(0,Z.lazy)(()=>us(()=>import(`./commit-error-dialog-DrsDKL-B.js`).then(e=>({default:e.CommitErrorDialog})),__vite__mapDeps([11,1,4,5])));function nT(){return null}function rT(e){let t=(0,Q.c)(72),{isLoading:n,currentBranch:r,commitError:i,onDismissCommitError:a,onFixCommitErrorInChat:o,commit:s,pullRequest:c,pushBeforePR:l,createRepo:u,history:d,pullWithChanges:f}=e,p;t[0]!==i||t[1]!==a||t[2]!==o?(p=i&&(0,$.jsx)(Z.Suspense,{fallback:(0,$.jsx)(nT,{}),children:(0,$.jsx)(tT,{error:i,onDismiss:a,onFixInChat:o})}),t[0]=i,t[1]=a,t[2]=o,t[3]=p):p=t[3];let m;t[4]!==s.autoGenerate||t[5]!==s.isGenerating||t[6]!==s.isOpen||t[7]!==s.message||t[8]!==s.onAutoGenerateChange||t[9]!==s.onCommit||t[10]!==s.onGenerateMessage||t[11]!==s.onMessageChange||t[12]!==s.onOpenChange||t[13]!==r||t[14]!==n?(m=s.isOpen&&(0,$.jsx)(Z.Suspense,{fallback:(0,$.jsx)(nT,{}),children:(0,$.jsx)(Yw,{open:s.isOpen,onOpenChange:s.onOpenChange,commitMessage:s.message,onCommitMessageChange:s.onMessageChange,autoGenerateCommitMessage:s.autoGenerate,onAutoGenerateChange:s.onAutoGenerateChange,isGeneratingMessage:s.isGenerating,isLoading:n,onGenerateMessage:s.onGenerateMessage,onCommit:s.onCommit,currentBranch:r})}),t[4]=s.autoGenerate,t[5]=s.isGenerating,t[6]=s.isOpen,t[7]=s.message,t[8]=s.onAutoGenerateChange,t[9]=s.onCommit,t[10]=s.onGenerateMessage,t[11]=s.onMessageChange,t[12]=s.onOpenChange,t[13]=r,t[14]=n,t[15]=m):m=t[15];let h;t[16]!==r||t[17]!==n||t[18]!==c.autoGenerate||t[19]!==c.createBranchAfterPR||t[20]!==c.description||t[21]!==c.isGeneratingInfo||t[22]!==c.isOpen||t[23]!==c.onAutoGenerateChange||t[24]!==c.onCreateBranchAfterPRChange||t[25]!==c.onCreatePR||t[26]!==c.onDescriptionChange||t[27]!==c.onGenerateInfo||t[28]!==c.onOpenChange||t[29]!==c.onTitleChange||t[30]!==c.title?(h=c.isOpen&&(0,$.jsx)(Z.Suspense,{fallback:(0,$.jsx)(nT,{}),children:(0,$.jsx)(Xw,{open:c.isOpen,onOpenChange:c.onOpenChange,prTitle:c.title,onPrTitleChange:c.onTitleChange,prDescription:c.description,onPrDescriptionChange:c.onDescriptionChange,isGeneratingPRInfo:c.isGeneratingInfo,isLoading:n,onGeneratePRInfo:c.onGenerateInfo,onCreatePR:c.onCreatePR,currentBranch:r,autoGeneratePRInfo:c.autoGenerate,onAutoGeneratePRInfoChange:c.onAutoGenerateChange,createBranchAfterPR:c.createBranchAfterPR,onCreateBranchAfterPRChange:c.onCreateBranchAfterPRChange})}),t[16]=r,t[17]=n,t[18]=c.autoGenerate,t[19]=c.createBranchAfterPR,t[20]=c.description,t[21]=c.isGeneratingInfo,t[22]=c.isOpen,t[23]=c.onAutoGenerateChange,t[24]=c.onCreateBranchAfterPRChange,t[25]=c.onCreatePR,t[26]=c.onDescriptionChange,t[27]=c.onGenerateInfo,t[28]=c.onOpenChange,t[29]=c.onTitleChange,t[30]=c.title,t[31]=h):h=t[31];let g;t[32]!==n||t[33]!==l.isOpen||t[34]!==l.onCancel||t[35]!==l.onOpenChange||t[36]!==l.onPushAndCreatePR?(g=l.isOpen&&(0,$.jsx)(Z.Suspense,{fallback:(0,$.jsx)(nT,{}),children:(0,$.jsx)($w,{open:l.isOpen,onOpenChange:l.onOpenChange,isLoading:n,onPushAndCreatePR:l.onPushAndCreatePR,onCancel:l.onCancel})}),t[32]=n,t[33]=l.isOpen,t[34]=l.onCancel,t[35]=l.onOpenChange,t[36]=l.onPushAndCreatePR,t[37]=g):g=t[37];let _;t[38]!==u.description||t[39]!==u.isOpen||t[40]!==u.isPrivate||t[41]!==u.name||t[42]!==u.onCreateRepo||t[43]!==u.onDescriptionChange||t[44]!==u.onNameChange||t[45]!==u.onOpenChange||t[46]!==u.onPrivateChange||t[47]!==n?(_=u.isOpen&&(0,$.jsx)(Z.Suspense,{fallback:(0,$.jsx)(nT,{}),children:(0,$.jsx)(Zw,{open:u.isOpen,onOpenChange:u.onOpenChange,repoName:u.name,onRepoNameChange:u.onNameChange,repoDescription:u.description,onRepoDescriptionChange:u.onDescriptionChange,isPrivateRepo:u.isPrivate,onPrivateRepoChange:u.onPrivateChange,isLoading:n,onCreateRepo:u.onCreateRepo})}),t[38]=u.description,t[39]=u.isOpen,t[40]=u.isPrivate,t[41]=u.name,t[42]=u.onCreateRepo,t[43]=u.onDescriptionChange,t[44]=u.onNameChange,t[45]=u.onOpenChange,t[46]=u.onPrivateChange,t[47]=n,t[48]=_):_=t[48];let v;t[49]!==r||t[50]!==d.commits||t[51]!==d.displayedCommits||t[52]!==d.isLoadingMore||t[53]!==d.isOpen||t[54]!==d.onOpenChange||t[55]!==d.onScroll?(v=d.isOpen&&(0,$.jsx)(Z.Suspense,{fallback:(0,$.jsx)(nT,{}),children:(0,$.jsx)(Qw,{open:d.isOpen,onOpenChange:d.onOpenChange,commits:d.commits,displayedCommits:d.displayedCommits,isLoadingMore:d.isLoadingMore,onScroll:d.onScroll,currentBranch:r})}),t[49]=r,t[50]=d.commits,t[51]=d.displayedCommits,t[52]=d.isLoadingMore,t[53]=d.isOpen,t[54]=d.onOpenChange,t[55]=d.onScroll,t[56]=v):v=t[56];let y;t[57]!==n||t[58]!==f.isOpen||t[59]!==f.onCancel||t[60]!==f.onCommitFirst||t[61]!==f.onOpenChange||t[62]!==f.onStashAndPull?(y=f.isOpen&&(0,$.jsx)(Z.Suspense,{fallback:(0,$.jsx)(nT,{}),children:(0,$.jsx)(eT,{open:f.isOpen,onOpenChange:f.onOpenChange,onCommitFirst:f.onCommitFirst,onStashAndPull:f.onStashAndPull,onCancel:f.onCancel,isLoading:n})}),t[57]=n,t[58]=f.isOpen,t[59]=f.onCancel,t[60]=f.onCommitFirst,t[61]=f.onOpenChange,t[62]=f.onStashAndPull,t[63]=y):y=t[63];let b;return t[64]!==p||t[65]!==m||t[66]!==h||t[67]!==g||t[68]!==_||t[69]!==v||t[70]!==y?(b=(0,$.jsxs)($.Fragment,{children:[p,m,h,g,_,v,y]}),t[64]=p,t[65]=m,t[66]=h,t[67]=g,t[68]=_,t[69]=v,t[70]=y,t[71]=b):b=t[71],b}function iT(e){let t=e.split(`/`);return t.length>=2?{provider:t[0],model:t.slice(1).join(`/`)}:{provider:void 0,model:e}}var aT=Ut(`app.use-ai-generation.hook`);function oT(e,t,n){let[r,i]=(0,Z.useState)(!1),[a,o]=(0,Z.useState)(!1),s=()=>n?.id?n.provider?{provider:n.provider,model:n.id}:iT(n.id):{provider:void 0,model:void 0};return{isGeneratingMessage:r,isGeneratingPRInfo:a,generateCommitMessageWithAI:(0,Z.useCallback)(async()=>{if(!e)return null;try{i(!0);let{provider:t,model:n}=s();return await Co(e,n,t)}catch(e){return aT.error(`Failed to generate commit message:`,e),ac({title:`Error`,description:e instanceof Error?e.message:`Failed to generate commit message`,variant:`destructive`}),null}finally{i(!1)}},[e,n]),generatePRInfoWithAI:(0,Z.useCallback)(async()=>{if(!e)return null;try{o(!0);let{provider:t,model:n}=s();return await ri(e,n,t)}catch(e){return aT.error(`Failed to generate PR info:`,e),ac({title:`Error`,description:e instanceof Error?e.message:`Failed to generate PR info`,variant:`destructive`}),null}finally{o(!1)}},[e,n])}}function sT(){return{autoGenerateCommitMessage:Di(),autoGeneratePRInfo:ss(),createBranchAfterPR:Xr(),privateRepositoryDefault:$i(),newChatOnNewBranch:ni()}}function cT(e){e.autoGenerateCommitMessage!==void 0&&go(e.autoGenerateCommitMessage),e.autoGeneratePRInfo!==void 0&&Mo(e.autoGeneratePRInfo),e.createBranchAfterPR!==void 0&&Bo(e.createBranchAfterPR),e.privateRepositoryDefault!==void 0&&oa(e.privateRepositoryDefault),e.newChatOnNewBranch!==void 0&&co(e.newChatOnNewBranch)}function lT(e){return e?!0:(ac({title:`Error`,description:`No thread selected`,variant:`destructive`}),!1)}async function uT(e,t,n,r){r&&(await Qa(e,{title:r}),n({type:Y.UpdateThreadTitle,projectId:t,threadId:e,title:r}))}var dT=2e3,fT=6;function pT(e,t){let n=0;e.current!==null&&clearInterval(e.current),e.current=setInterval(async()=>{if(n++,n>=fT){e.current!==null&&(clearInterval(e.current),e.current=null);return}await t(!0)},dT)}var mT=new Set;function hT(e){return mT.add(e),function(){mT.delete(e)}}function gT(){for(let e of mT)e()}var _T=Ut(`app.git-ops-button.ui`),vT=10;function yT(e){let{projectId:t,threadId:n,projectName:r,dispatch:i,aiGeneration:a,unifiedGitStatus:o}=e,[s,c]=(0,Z.useState)(!1),[l,u]=(0,Z.useState)(!1),[d,f]=(0,Z.useState)(!1),[p,m]=(0,Z.useState)(!1),[h,g]=(0,Z.useState)(``),[_,v]=(0,Z.useState)(``),[y,b]=(0,Z.useState)(``),[x,S]=(0,Z.useState)(!1),[C,w]=(0,Z.useState)(null),T=(0,Z.useRef)(!1),E=(0,Z.useRef)(!1),D=(0,Z.useRef)(_),O=(0,Z.useRef)(y);D.current=_,O.current=y;let[k,A]=(0,Z.useState)(!1),[j,M]=(0,Z.useState)([]),[N,P]=(0,Z.useState)(!1),[F,I]=(0,Z.useState)([]),[L,R]=(0,Z.useState)(!1),[z,B]=(0,Z.useState)(!1),[V,H]=(0,Z.useState)(``),[ee,te]=(0,Z.useState)(``),[ne,re]=(0,Z.useState)(``),[ie,ae]=(0,Z.useState)(!1),[oe,se]=(0,Z.useState)(!1),[U,ce]=(0,Z.useState)(!1),[le,ue]=(0,Z.useState)(null),[W,de]=(0,Z.useState)(!1),[fe,pe]=(0,Z.useState)(null),me=(0,Z.useRef)(!1),he=(0,Z.useRef)(null);(0,Z.useEffect)(()=>()=>{he.current!==null&&(clearInterval(he.current),he.current=null)},[]);async function ge(){Si();let e=await lo();i({type:Y.SetProjects,projects:e.projects,cloneRootPath:e.cloneRootPath})}async function _e(e){if(ve.createBranchAfterPR)try{let t=await Po(n,e);e&&pe(e),ac({title:`New branch created`,description:e?`Created new branch "${t.branchName}" from PR branch "${e}"`:`Created new branch "${t.branchName}" from the latest default branch`}),await o.fetchUnifiedStatus(!0),ge()}catch(e){_T.error(`Failed to create new branch after PR:`,e),ac({title:`Failed to create new branch`,description:e instanceof Error?e.message:`Unknown error occurred`,variant:`destructive`})}}let[ve,ye]=(0,Z.useState)(()=>sT());(0,Z.useEffect)(()=>{z&&r&&!V&&H(r)},[z,r,V]),(0,Z.useEffect)(()=>{cT(ve)},[ve]);function be(){ie||(ae(!0),Ti().then(e=>re(e)).catch(()=>{}))}function xe(e){de(e),e&&(be(),o.fetchUnifiedStatus(!0))}(0,Z.useEffect)(()=>{l&&o.prExists&&o.prState===`OPEN`&&u(!1)},[o.prExists,o.prState,l]),(0,Z.useEffect)(()=>{if(!l)return;let e=setTimeout(()=>{u(!1)},15e3);return()=>clearTimeout(e)},[l]),(0,Z.useEffect)(()=>{let e=o.prExists&&o.prState===`OPEN`&&!o.hasChanges&&!o.hasUnpushedCommits;e&&!me.current&&ge(),me.current=e},[o.hasChanges,o.hasUnpushedCommits,o.prExists,o.prState]);async function Se(){if(h.trim()&&lT(n))try{c(!0),await Oa(n,h),g(``),f(!1),await o.fetchUnifiedStatus(!0),ge(),ac({title:`Changes committed successfully`,description:`Your changes have been committed to '${o.currentBranch}'.`}),U&&(ce(!1),await je())}catch(e){_T.error(`Failed to commit:`,e),ue({title:`Commit failed`,message:e instanceof Error?e.message:`Failed to commit changes`})}finally{c(!1)}}function Ce(){ue(null)}async function we(){if(!lT(n))return;let e=o.prUrl;if(!e)try{e=(await wi(n)).url}catch(e){_T.error(`Failed to fetch pull request URL:`,e),ac({title:`Could not open pull request`,description:e instanceof Error?e.message:`Failed to fetch pull request URL`,variant:`destructive`});return}if(!e){ac({title:`Could not open pull request`,description:`Pull request URL is unavailable. Try refreshing git status.`,variant:`destructive`});return}try{await ui(e)}catch(e){_T.error(`Failed to open pull request:`,e),ac({title:`Could not open pull request`,description:e instanceof Error?e.message:`Failed to open URL in browser`,variant:`destructive`})}}async function Te(){if(o.hasChanges){f(!0);return}if(o.hasUnpushedCommits&&o.prExists){let e=o.prState;try{e=(await wi(n)).state??e}catch(e){_T.warn(`Could not refresh pull request state before update:`,e)}if(e===`MERGED`){gT();return}await ke();return}if(o.prExists&&o.prState===`OPEN`&&!o.hasChanges&&!o.hasUnpushedCommits){await we();return}if(o.commitsAheadOfDefault&&!o.prExists&&!o.hasChanges){m(!0);return}if(o.defaultBranchBehind>0){await Pe();return}}async function Ee(){let e=await a.generateCommitMessageWithAI();e&&g(e)}async function De(){if(lT(n))try{c(!0);let e=await a.generateCommitMessageWithAI();if(!e){ac({title:`Quick Commit failed`,description:`Could not generate commit message`,variant:`destructive`});return}await Oa(n,e),await o.fetchUnifiedStatus(!0),ge(),ac({title:`Changes committed successfully`,description:`Committed: ${e}`})}catch(e){_T.error(`Quick commit failed:`,e),ue({title:`Quick Commit failed`,message:e instanceof Error?e.message:`Failed to commit changes`})}finally{c(!1)}}async function Oe(){if(lT(n))try{c(!0),await To(n),await o.fetchUnifiedStatus()}catch(e){_T.error(`Failed to fetch:`,e)}finally{c(!1)}}async function ke(){if(lT(n))try{c(!0),await ca(n),await o.fetchUnifiedStatus(!0),ge(),o.hasRemoteBranch?ac({title:`Branch pushed successfully`,description:`Your branch '${o.currentBranch}' has been pushed to the remote.`}):ac({title:`Push completed`,description:`Changes have been pushed successfully.`})}catch(e){_T.error(`Failed to push:`,e),ac({title:`Push failed`,description:e instanceof Error?e.message:`Failed to push to remote`,variant:`destructive`})}finally{c(!1)}}async function Ae(){if(lT(n)){if(o.hasChanges){se(!0);return}await je()}}async function je(){try{c(!0),await Ha(n),await o.fetchUnifiedStatus(!0),ge(),ac({title:`Pull successful`,description:`Latest changes have been pulled from remote.`})}catch(e){_T.error(`Failed to pull:`,e),ac({title:`Pull failed`,description:e instanceof Error?e.message:`Failed to pull from remote`,variant:`destructive`})}finally{c(!1)}}function Me(){se(!1),ce(!0),f(!0)}async function Ne(){se(!1),await je()}async function Pe(){if(lT(n))try{c(!0),await Ao(n),await o.fetchUnifiedStatus(!0),ge(),ac({title:`Branch synced successfully`,description:`Your branch '${o.currentBranch}' has been synced with the latest changes`})}catch(e){_T.error(`[sync] ✗ Failed to sync branch:`,e),ac({title:`Sync failed`,description:e instanceof Error?e.message:`Failed to sync with default branch`,variant:`destructive`})}finally{c(!1)}}async function Fe(){if(lT(n))try{c(!0),u(!0);let e=await uo(n,_,y,fe??void 0);await uT(n,t,i,e.title??_),e.prUrl&&await ui(e.prUrl),v(``),b(``),m(!1),await o.fetchUnifiedStatus(!0),ge(),await _e(e.branchName),pT(he,o.fetchUnifiedStatus)}catch(e){_T.error(`Failed to create PR:`,e);let t=e instanceof Error?e.message:`Failed to create PR`;t.includes(`push the current branch`)||t.includes(`--head flag`)?(m(!1),Re({title:_,description:y})):(u(!1),ac({title:`Create PR Failed`,description:t,variant:`destructive`}))}finally{c(!1)}}async function Ie(){if(lT(n))try{c(!0);let e=await si(n,V,ee,ve.privateRepositoryDefault);e.repoUrl&&setTimeout(()=>{ui(e.repoUrl)},3e3),H(``),te(``),B(!1),await o.fetchUnifiedStatus(),ge()}catch(e){_T.error(`Failed to create repo:`,e)}finally{c(!1)}}async function Le(){let e=await a.generatePRInfoWithAI();e&&(v(e.title),b(e.description),ac({title:`Success`,description:`PR title and description generated`}))}async function Re(e){let r=e??C;if(!(!n||!r))try{c(!0),u(!0);try{await ca(n)}catch(e){let t=e?.message??``;if(t.includes(`non-fast-forward`)||t.includes(`Updates were rejected because the tip of your current branch is behind`)){ac({title:`Syncing branch before push`,description:`Your branch is behind remote. Pulling latest changes first...`});try{await Ao(n),await ca(n)}catch{throw e}}else throw e}let e=await uo(n,r.title,r.description,fe??void 0);await uT(n,t,i,e.title??r.title),e.prUrl&&await ui(e.prUrl),v(``),b(``),w(null),S(!1),await o.fetchUnifiedStatus(!0),ge(),await _e(e.branchName),pT(he,o.fetchUnifiedStatus)}catch(e){_T.error(`Failed to push and create PR:`,e);let t=e instanceof Error?e.message:`Failed to push and create PR`;u(!1),ac({title:`Push & Create PR Failed`,description:t,variant:`destructive`})}finally{c(!1)}}async function ze(){if(lT(n))try{P(!0);let e=await Yi(n,100);M(e),I(e.slice(0,vT)),A(!0)}catch(e){_T.error(`Failed to fetch git history:`,e)}finally{P(!1)}}function Be(){L||(R(!0),setTimeout(()=>{let e=F.length+vT;I(j.slice(0,e)),R(!1)},300))}function Ve(e){let t=e.currentTarget;t.scrollHeight-t.scrollTop-t.clientHeight<100&&F.length<j.length&&!L&&Be()}function He(){o.repoUrl&&ui(o.repoUrl)}function Ue(){S(!1),w(null)}return{isLoading:s,isCreatingPR:l,isCommitDialogOpen:d,setIsCommitDialogOpen:f,isPRDialogOpen:p,setIsPRDialogOpen:m,commitMessage:h,setCommitMessage:g,prTitle:_,setPrTitle:v,prDescription:y,setPrDescription:b,isPushBeforePRDialogOpen:x,setIsPushBeforePRDialogOpen:S,prGenerationRef:T,commitGenerationRef:E,prTitleRef:D,prDescriptionRef:O,isHistoryDialogOpen:k,setIsHistoryDialogOpen:A,commits:j,displayedCommits:F,isLoadingHistory:N,isLoadingMore:L,isRepoDialogOpen:z,setIsRepoDialogOpen:B,repoName:V,setRepoName:H,repoDescription:ee,setRepoDescription:te,gitUser:ne,isPullWithChangesDialogOpen:oe,setIsPullWithChangesDialogOpen:se,commitError:le,dismissCommitError:Ce,isGitOpsMenuOpen:W,userPrefs:ve,setUserPrefsState:ye,handleGitOpsMenuOpenChange:xe,handleCommit:Se,handleOpenPullRequest:we,handleMainButtonClick:Te,handleGenerateCommitMessage:Ee,handleQuickCommit:De,handleFetch:Oe,handlePush:ke,handlePull:Ae,handleSyncBranch:Pe,handleCreatePR:Fe,handleCreateRepo:Ie,handleGeneratePRInfo:Le,handlePushAndCreatePR:Re,handleOpenHistory:ze,handleScroll:Ve,handleViewInGitHub:He,handleCancelPushBeforePR:Ue,handleCommitFirstAndPull:Me,handleStashAndPull:Ne}}function bT(e){let t=(0,Q.c)(29),{threadId:n,aiGeneration:r,isCommitDialogOpen:i,commitMessage:a,setCommitMessage:o,autoGenerateCommitMessage:s,commitGenerationRef:c,isPRDialogOpen:l,prTitleRef:u,prDescriptionRef:d,setPrTitle:f,setPrDescription:p,autoGeneratePRInfo:m,prGenerationRef:h}=e,g;t[0]!==r||t[1]!==s||t[2]!==c||t[3]!==a||t[4]!==i||t[5]!==o||t[6]!==n?(g=()=>{if(!i){c.current=!1;return}i&&s&&!a.trim()&&n&&!c.current&&(c.current=!0,(async function(){let e=await r.generateCommitMessageWithAI();e&&o(e)})())},t[0]=r,t[1]=s,t[2]=c,t[3]=a,t[4]=i,t[5]=o,t[6]=n,t[7]=g):g=t[7];let _;t[8]!==r.generateCommitMessageWithAI||t[9]!==s||t[10]!==a||t[11]!==i||t[12]!==n?(_=[i,s,n,r.generateCommitMessageWithAI,a],t[8]=r.generateCommitMessageWithAI,t[9]=s,t[10]=a,t[11]=i,t[12]=n,t[13]=_):_=t[13],(0,Z.useEffect)(g,_);let v;t[14]!==r||t[15]!==m||t[16]!==l||t[17]!==d||t[18]!==h||t[19]!==u||t[20]!==p||t[21]!==f||t[22]!==n?(v=()=>{if(!l){h.current=!1;return}l&&m&&!u.current.trim()&&!d.current.trim()&&n&&!h.current&&(h.current=!0,(async function(){let e=await r.generatePRInfoWithAI();e&&(f(e.title),p(e.description))})())},t[14]=r,t[15]=m,t[16]=l,t[17]=d,t[18]=h,t[19]=u,t[20]=p,t[21]=f,t[22]=n,t[23]=v):v=t[23];let y;t[24]!==r.generatePRInfoWithAI||t[25]!==m||t[26]!==l||t[27]!==n?(y=[l,m,n,r.generatePRInfoWithAI],t[24]=r.generatePRInfoWithAI,t[25]=m,t[26]=l,t[27]=n,t[28]=y):y=t[28],(0,Z.useEffect)(v,y)}function xT(e){let{unifiedGitStatus:t,autoGenerateCommitMessage:n,isLoading:r,isCreatingPR:i,isDirectCommitMode:a,onQuickCommit:o,onCreatePR:s,onViewInGitHub:c,onOpenGitOpsMenu:l}=e,u=(0,Z.useRef)(o),d=(0,Z.useRef)(s),f=(0,Z.useRef)(c),p=(0,Z.useRef)(l);u.current=o,d.current=s,f.current=c,p.current=l,(0,Z.useEffect)(()=>{function e(e){let o=e.key.toLowerCase();if((e.metaKey||e.ctrlKey)&&e.shiftKey&&!e.altKey){if(o===`c`){t.hasChanges&&n&&!r&&(e.preventDefault(),u.current());return}if(o===`p`){t.commitsAheadOfDefault&&!t.prExists&&!t.hasChanges&&!r&&!a&&(e.preventDefault(),d.current());return}if(o===`g`){t.repoUrl&&!r&&(e.preventDefault(),f.current());return}o===`b`&&!r&&!i&&(e.preventDefault(),p.current())}}return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[t.commitsAheadOfDefault,t.hasChanges,t.prExists,t.repoUrl,n,r,i,a])}var ST=Ut(`app.git-ops-button`);function CT(e){return[`The git commit in this thread failed with the error below.`,`Diagnose the cause and fix the project so I can retry the commit.`,``,`Git error:`,e.message].join(`
3325
+ `)}function wT(e){let t=(0,Q.c)(28),{isBrandState:n,isMainButtonVisuallyDisabled:r,isMainButtonHardDisabled:i,mainButtonDisabled:a,mainButtonText:o,mainButtonIcon:s,tooltip:c,onMainButtonClick:l,dropdown:u}=e,d=n&&`border-transparent bg-brand !text-white hover:bg-brand/90 hover:!text-white dark:bg-brand dark:hover:bg-brand/90`,f=n&&r&&`cursor-default opacity-50 hover:bg-brand hover:!text-white`,p=!n&&r&&`cursor-default`,m;t[0]!==d||t[1]!==f||t[2]!==p?(m=G(`min-w-0 w-full justify-start`,d,f,p),t[0]=d,t[1]=f,t[2]=p,t[3]=m):m=t[3];let h=a?void 0:l,g=!n&&r&&`text-muted-foreground opacity-50`,_=n&&`font-medium text-white`,v;t[4]!==g||t[5]!==_?(v=G(`flex min-w-0 flex-1 items-center gap-2`,g,_),t[4]=g,t[5]=_,t[6]=v):v=t[6];let y;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(y=G(U.body,`truncate`),t[7]=y):y=t[7];let b;t[8]===o?b=t[9]:(b=(0,$.jsx)(`span`,{className:y,children:o}),t[8]=o,t[9]=b);let x;t[10]!==s||t[11]!==v||t[12]!==b?(x=(0,$.jsxs)(`span`,{className:v,children:[s,b]}),t[10]=s,t[11]=v,t[12]=b,t[13]=x):x=t[13];let S;t[14]!==i||t[15]!==a||t[16]!==x||t[17]!==m||t[18]!==h?(S=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(ja,{asChild:!0,className:`min-w-0 flex-1`,children:(0,$.jsx)(`button`,{type:`button`,className:m,disabled:i,"aria-disabled":a,onClick:h,children:x})})}),t[14]=i,t[15]=a,t[16]=x,t[17]=m,t[18]=h,t[19]=S):S=t[19];let C;t[20]===c?C=t[21]:(C=(0,$.jsx)(Fr,{side:`right`,children:c}),t[20]=c,t[21]=C);let w;t[22]!==S||t[23]!==C?(w=(0,$.jsx)(Zo,{children:(0,$.jsxs)(Mi,{children:[S,C]})}),t[22]=S,t[23]=C,t[24]=w):w=t[24];let T;return t[25]!==u||t[26]!==w?(T=(0,$.jsxs)(`div`,{className:`flex w-full min-w-0 items-center`,children:[w,u]}),t[25]=u,t[26]=w,t[27]=T):T=t[27],T}function TT(e){let t=(0,Q.c)(31),{footerPillButtonClass:n,isBrandState:r,isMainButtonVisuallyDisabled:i,isMainButtonHardDisabled:a,mainButtonDisabled:o,mainButtonText:s,mainButtonIcon:c,tooltip:l,onMainButtonClick:u,dropdown:d}=e,f=r&&`border-transparent bg-brand !text-white hover:bg-brand/90 hover:!text-white dark:bg-brand dark:hover:bg-brand/90`,p=r&&i&&`cursor-default opacity-50 hover:bg-brand hover:!text-white`,m;t[0]!==n||t[1]!==f||t[2]!==p?(m=G(n,Gw,Kw,`group min-w-0 gap-0 px-0`,f,p),t[0]=n,t[1]=f,t[2]=p,t[3]=m):m=t[3];let h=i&&`cursor-default`,g=r&&`text-white`,_;t[4]!==h||t[5]!==g?(_=G(U.compact,`flex min-w-0 flex-1 items-center gap-1.5 rounded-l-full pl-3 pr-0.5 disabled:opacity-50`,h,g),t[4]=h,t[5]=g,t[6]=_):_=t[6];let v=o?void 0:u,y=r&&`font-medium`,b=!r&&i&&`opacity-50`,x;t[7]!==y||t[8]!==b?(x=G(`inline-flex min-w-0 items-center gap-1.5 truncate`,y,b),t[7]=y,t[8]=b,t[9]=x):x=t[9];let S;t[10]===s?S=t[11]:(S=(0,$.jsx)(`span`,{className:`truncate`,children:s}),t[10]=s,t[11]=S);let C;t[12]!==c||t[13]!==S||t[14]!==x?(C=(0,$.jsxs)(`span`,{className:x,children:[c,S]}),t[12]=c,t[13]=S,t[14]=x,t[15]=C):C=t[15];let w;t[16]!==a||t[17]!==o||t[18]!==C||t[19]!==_||t[20]!==v?(w=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,className:_,disabled:a,"aria-disabled":o,onClick:v,children:C})}),t[16]=a,t[17]=o,t[18]=C,t[19]=_,t[20]=v,t[21]=w):w=t[21];let T;t[22]===l?T=t[23]:(T=(0,$.jsx)(Fr,{side:`top`,children:l}),t[22]=l,t[23]=T);let E;t[24]!==w||t[25]!==T?(E=(0,$.jsx)(Zo,{children:(0,$.jsxs)(Mi,{children:[w,T]})}),t[24]=w,t[25]=T,t[26]=E):E=t[26];let D;return t[27]!==d||t[28]!==E||t[29]!==m?(D=(0,$.jsxs)(`div`,{className:m,children:[E,d]}),t[27]=d,t[28]=E,t[29]=m,t[30]=D):D=t[30],D}function ET(e){let t=(0,Q.c)(26),{isBrandState:n,isMainButtonVisuallyDisabled:r,isMainButtonHardDisabled:i,mainButtonDisabled:a,mainButtonText:o,mainButtonIcon:s,tooltip:c,onMainButtonClick:l,dropdown:u}=e,d;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(d=G(`flex w-full flex-col gap-1 items-stretch [&_button]:w-full [&_button]:justify-start`),t[0]=d):d=t[0];let f=n&&`border-transparent bg-brand !text-white hover:bg-brand/90 hover:!text-white dark:bg-brand dark:hover:bg-brand/90`,p=r&&`cursor-default hover:bg-background hover:text-foreground`,m;t[1]!==f||t[2]!==p?(m=G(`h-8 gap-1.5 rounded-md border`,f,p),t[1]=f,t[2]=p,t[3]=m):m=t[3];let h=a?void 0:l,g=n&&`text-white`,_=r&&!n&&`text-muted-foreground opacity-50`,v=r&&n&&`opacity-50`,y;t[4]!==g||t[5]!==_||t[6]!==v?(y=G(`inline-flex items-center gap-1.5`,g,_,v),t[4]=g,t[5]=_,t[6]=v,t[7]=y):y=t[7];let b;t[8]!==s||t[9]!==o||t[10]!==y?(b=(0,$.jsxs)(`span`,{className:y,children:[s,o]}),t[8]=s,t[9]=o,t[10]=y,t[11]=b):b=t[11];let x;t[12]!==i||t[13]!==a||t[14]!==m||t[15]!==h||t[16]!==b?(x=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(Hr,{variant:`outline`,size:`sm`,className:m,disabled:i,"aria-disabled":a,onClick:h,children:b})}),t[12]=i,t[13]=a,t[14]=m,t[15]=h,t[16]=b,t[17]=x):x=t[17];let S;t[18]===c?S=t[19]:(S=(0,$.jsx)(Fr,{children:c}),t[18]=c,t[19]=S);let C;t[20]!==x||t[21]!==S?(C=(0,$.jsx)(Zo,{children:(0,$.jsxs)(Mi,{children:[x,S]})}),t[20]=x,t[21]=S,t[22]=C):C=t[22];let w;return t[23]!==u||t[24]!==C?(w=(0,$.jsxs)(`div`,{className:d,children:[C,u]}),t[23]=u,t[24]=C,t[25]=w):w=t[25],w}function DT(e){let t=(0,Q.c)(43),{unifiedGitStatus:n,actions:r,isDirectCommitMode:i,aiGeneration:a,layout:o}=e,s=n.defaultBranch??null,c=a.isGeneratingMessage&&r.isLoading,l,u,d,f,p,m;t[0]===r?(l=t[1],u=t[2],d=t[3],f=t[4],p=t[5],m=t[6]):(l=()=>void r.handleFetch(),u=()=>void r.handlePull(),d=()=>void r.handlePush(),f=()=>void r.handleOpenHistory(),p=()=>r.setIsPRDialogOpen(!0),m=()=>r.setIsRepoDialogOpen(!0),t[0]=r,t[1]=l,t[2]=u,t[3]=d,t[4]=f,t[5]=p,t[6]=m);let h,g;t[7]===r?(h=t[8],g=t[9]):(h=()=>void r.handleQuickCommit(),g=()=>void r.handleSyncBranch(),t[7]=r,t[8]=h,t[9]=g);let _;return t[10]!==r.gitUser||t[11]!==r.handleGitOpsMenuOpenChange||t[12]!==r.handleViewInGitHub||t[13]!==r.isCreatingPR||t[14]!==r.isGitOpsMenuOpen||t[15]!==r.isLoading||t[16]!==r.isLoadingHistory||t[17]!==r.userPrefs.autoGenerateCommitMessage||t[18]!==i||t[19]!==o||t[20]!==s||t[21]!==c||t[22]!==l||t[23]!==u||t[24]!==d||t[25]!==f||t[26]!==p||t[27]!==m||t[28]!==h||t[29]!==g||t[30]!==n.canCreateRepo||t[31]!==n.commitsAheadOfDefault||t[32]!==n.defaultBranchAhead||t[33]!==n.defaultBranchBehind||t[34]!==n.hasChanges||t[35]!==n.hasRemoteBranch||t[36]!==n.hasUnpushedCommits||t[37]!==n.isRefreshing||t[38]!==n.prExists||t[39]!==n.remoteUrl||t[40]!==n.repoUrl||t[41]!==n.status?(_=(0,$.jsx)(Jw,{branchStatus:n.status,remoteUrl:n.remoteUrl,hasRemoteBranch:n.hasRemoteBranch,hasUnpushedCommits:n.hasUnpushedCommits,canCreateRepo:n.canCreateRepo,repoUrl:n.repoUrl,isRefreshing:n.isRefreshing,isCreatingPR:r.isCreatingPR,hasChanges:n.hasChanges,commitsAheadOfDefault:n.commitsAheadOfDefault,prExists:n.prExists,defaultBranch:s,defaultBranchAhead:n.defaultBranchAhead,defaultBranchBehind:n.defaultBranchBehind,gitUser:r.gitUser,isDirectCommitMode:i,autoGenerateCommitMessage:r.userPrefs.autoGenerateCommitMessage,isLoading:r.isLoading,isLoadingHistory:r.isLoadingHistory,isQuickCommitting:c,onFetch:l,onPull:u,onPush:d,onOpenHistory:f,onCreatePR:p,onCreateRepo:m,onViewInGitHub:r.handleViewInGitHub,onQuickCommit:h,onSyncWithDefault:g,open:r.isGitOpsMenuOpen,onOpenChange:r.handleGitOpsMenuOpenChange,layout:o}),t[10]=r.gitUser,t[11]=r.handleGitOpsMenuOpenChange,t[12]=r.handleViewInGitHub,t[13]=r.isCreatingPR,t[14]=r.isGitOpsMenuOpen,t[15]=r.isLoading,t[16]=r.isLoadingHistory,t[17]=r.userPrefs.autoGenerateCommitMessage,t[18]=i,t[19]=o,t[20]=s,t[21]=c,t[22]=l,t[23]=u,t[24]=d,t[25]=f,t[26]=p,t[27]=m,t[28]=h,t[29]=g,t[30]=n.canCreateRepo,t[31]=n.commitsAheadOfDefault,t[32]=n.defaultBranchAhead,t[33]=n.defaultBranchBehind,t[34]=n.hasChanges,t[35]=n.hasRemoteBranch,t[36]=n.hasUnpushedCommits,t[37]=n.isRefreshing,t[38]=n.prExists,t[39]=n.remoteUrl,t[40]=n.repoUrl,t[41]=n.status,t[42]=_):_=t[42],_}function OT(e){let t=(0,Q.c)(76),{actions:n,aiGeneration:r,currentBranch:i,onFixCommitErrorInChat:a}=e,o;t[0]===n?o=t[1]:(o=e=>n.setUserPrefsState(t=>({...t,autoGenerateCommitMessage:e})),t[0]=n,t[1]=o);let s;t[2]!==n.commitMessage||t[3]!==n.handleCommit||t[4]!==n.handleGenerateCommitMessage||t[5]!==n.isCommitDialogOpen||t[6]!==n.setCommitMessage||t[7]!==n.setIsCommitDialogOpen||t[8]!==n.userPrefs.autoGenerateCommitMessage||t[9]!==r.isGeneratingMessage||t[10]!==o?(s={isOpen:n.isCommitDialogOpen,onOpenChange:n.setIsCommitDialogOpen,message:n.commitMessage,onMessageChange:n.setCommitMessage,autoGenerate:n.userPrefs.autoGenerateCommitMessage,onAutoGenerateChange:o,isGenerating:r.isGeneratingMessage,onGenerateMessage:n.handleGenerateCommitMessage,onCommit:n.handleCommit},t[2]=n.commitMessage,t[3]=n.handleCommit,t[4]=n.handleGenerateCommitMessage,t[5]=n.isCommitDialogOpen,t[6]=n.setCommitMessage,t[7]=n.setIsCommitDialogOpen,t[8]=n.userPrefs.autoGenerateCommitMessage,t[9]=r.isGeneratingMessage,t[10]=o,t[11]=s):s=t[11];let c;t[12]===n?c=t[13]:(c=e=>n.setUserPrefsState(t=>({...t,autoGeneratePRInfo:e})),t[12]=n,t[13]=c);let l;t[14]===n?l=t[15]:(l=e=>n.setUserPrefsState(t=>({...t,createBranchAfterPR:e})),t[14]=n,t[15]=l);let u;t[16]!==n.handleCreatePR||t[17]!==n.handleGeneratePRInfo||t[18]!==n.isPRDialogOpen||t[19]!==n.prDescription||t[20]!==n.prTitle||t[21]!==n.setIsPRDialogOpen||t[22]!==n.setPrDescription||t[23]!==n.setPrTitle||t[24]!==n.userPrefs.autoGeneratePRInfo||t[25]!==n.userPrefs.createBranchAfterPR||t[26]!==r.isGeneratingPRInfo||t[27]!==c||t[28]!==l?(u={isOpen:n.isPRDialogOpen,onOpenChange:n.setIsPRDialogOpen,title:n.prTitle,onTitleChange:n.setPrTitle,description:n.prDescription,onDescriptionChange:n.setPrDescription,isGeneratingInfo:r.isGeneratingPRInfo,onGenerateInfo:n.handleGeneratePRInfo,onCreatePR:n.handleCreatePR,autoGenerate:n.userPrefs.autoGeneratePRInfo,onAutoGenerateChange:c,createBranchAfterPR:n.userPrefs.createBranchAfterPR,onCreateBranchAfterPRChange:l},t[16]=n.handleCreatePR,t[17]=n.handleGeneratePRInfo,t[18]=n.isPRDialogOpen,t[19]=n.prDescription,t[20]=n.prTitle,t[21]=n.setIsPRDialogOpen,t[22]=n.setPrDescription,t[23]=n.setPrTitle,t[24]=n.userPrefs.autoGeneratePRInfo,t[25]=n.userPrefs.createBranchAfterPR,t[26]=r.isGeneratingPRInfo,t[27]=c,t[28]=l,t[29]=u):u=t[29];let d;t[30]===n?d=t[31]:(d=()=>n.handlePushAndCreatePR(),t[30]=n,t[31]=d);let f;t[32]!==n.handleCancelPushBeforePR||t[33]!==n.isPushBeforePRDialogOpen||t[34]!==n.setIsPushBeforePRDialogOpen||t[35]!==d?(f={isOpen:n.isPushBeforePRDialogOpen,onOpenChange:n.setIsPushBeforePRDialogOpen,onPushAndCreatePR:d,onCancel:n.handleCancelPushBeforePR},t[32]=n.handleCancelPushBeforePR,t[33]=n.isPushBeforePRDialogOpen,t[34]=n.setIsPushBeforePRDialogOpen,t[35]=d,t[36]=f):f=t[36];let p;t[37]===n?p=t[38]:(p=e=>n.setUserPrefsState(t=>({...t,privateRepositoryDefault:e})),t[37]=n,t[38]=p);let m;t[39]!==n.handleCreateRepo||t[40]!==n.isRepoDialogOpen||t[41]!==n.repoDescription||t[42]!==n.repoName||t[43]!==n.setIsRepoDialogOpen||t[44]!==n.setRepoDescription||t[45]!==n.setRepoName||t[46]!==n.userPrefs.privateRepositoryDefault||t[47]!==p?(m={isOpen:n.isRepoDialogOpen,onOpenChange:n.setIsRepoDialogOpen,name:n.repoName,onNameChange:n.setRepoName,description:n.repoDescription,onDescriptionChange:n.setRepoDescription,isPrivate:n.userPrefs.privateRepositoryDefault,onPrivateChange:p,onCreateRepo:n.handleCreateRepo},t[39]=n.handleCreateRepo,t[40]=n.isRepoDialogOpen,t[41]=n.repoDescription,t[42]=n.repoName,t[43]=n.setIsRepoDialogOpen,t[44]=n.setRepoDescription,t[45]=n.setRepoName,t[46]=n.userPrefs.privateRepositoryDefault,t[47]=p,t[48]=m):m=t[48];let h;t[49]!==n.commits||t[50]!==n.displayedCommits||t[51]!==n.handleScroll||t[52]!==n.isHistoryDialogOpen||t[53]!==n.isLoadingMore||t[54]!==n.setIsHistoryDialogOpen?(h={isOpen:n.isHistoryDialogOpen,onOpenChange:n.setIsHistoryDialogOpen,commits:n.commits,displayedCommits:n.displayedCommits,isLoadingMore:n.isLoadingMore,onScroll:n.handleScroll},t[49]=n.commits,t[50]=n.displayedCommits,t[51]=n.handleScroll,t[52]=n.isHistoryDialogOpen,t[53]=n.isLoadingMore,t[54]=n.setIsHistoryDialogOpen,t[55]=h):h=t[55];let g;t[56]===n?g=t[57]:(g=()=>n.setIsPullWithChangesDialogOpen(!1),t[56]=n,t[57]=g);let _;t[58]!==n.handleCommitFirstAndPull||t[59]!==n.handleStashAndPull||t[60]!==n.isPullWithChangesDialogOpen||t[61]!==n.setIsPullWithChangesDialogOpen||t[62]!==g?(_={isOpen:n.isPullWithChangesDialogOpen,onOpenChange:n.setIsPullWithChangesDialogOpen,onCommitFirst:n.handleCommitFirstAndPull,onStashAndPull:n.handleStashAndPull,onCancel:g},t[58]=n.handleCommitFirstAndPull,t[59]=n.handleStashAndPull,t[60]=n.isPullWithChangesDialogOpen,t[61]=n.setIsPullWithChangesDialogOpen,t[62]=g,t[63]=_):_=t[63];let v;return t[64]!==n.commitError||t[65]!==n.dismissCommitError||t[66]!==n.isLoading||t[67]!==i||t[68]!==a||t[69]!==s||t[70]!==_||t[71]!==u||t[72]!==f||t[73]!==m||t[74]!==h?(v=(0,$.jsx)(rT,{isLoading:n.isLoading,currentBranch:i,commitError:n.commitError,onDismissCommitError:n.dismissCommitError,onFixCommitErrorInChat:a,commit:s,pullRequest:u,pushBeforePR:f,createRepo:m,history:h,pullWithChanges:_}),t[64]=n.commitError,t[65]=n.dismissCommitError,t[66]=n.isLoading,t[67]=i,t[68]=a,t[69]=s,t[70]=_,t[71]=u,t[72]=f,t[73]=m,t[74]=h,t[75]=v):v=t[75],v}function kT(e){let t=(0,Q.c)(89),{projectId:n,threadId:r,layout:i}=e,a=i===void 0?`bar`:i,o=Ks(),s=gC(),c;t[0]===r?c=t[1]:(c=e=>e.projectModelSelections[r],t[0]=r,t[1]=c);let l=X(c),u;t[2]===n?u=t[3]:(u=e=>e.projects.find(e=>e.projectId===n),t[2]=n,t[3]=u);let d=X(u),f=Fd(),p=oT(r,n,l),m=d?.commitMethod===ft.Direct,h=d?.name,g;t[4]!==p||t[5]!==o||t[6]!==n||t[7]!==h||t[8]!==r||t[9]!==f?(g={projectId:n,threadId:r,projectName:h,dispatch:o,aiGeneration:p,unifiedGitStatus:f},t[4]=p,t[5]=o,t[6]=n,t[7]=h,t[8]=r,t[9]=f,t[10]=g):g=t[10];let _=yT(g),v;t[11]!==_.commitGenerationRef||t[12]!==_.commitMessage||t[13]!==_.isCommitDialogOpen||t[14]!==_.isPRDialogOpen||t[15]!==_.prDescriptionRef||t[16]!==_.prGenerationRef||t[17]!==_.prTitleRef||t[18]!==_.setCommitMessage||t[19]!==_.setPrDescription||t[20]!==_.setPrTitle||t[21]!==_.userPrefs.autoGenerateCommitMessage||t[22]!==_.userPrefs.autoGeneratePRInfo||t[23]!==p||t[24]!==r?(v={threadId:r,aiGeneration:p,isCommitDialogOpen:_.isCommitDialogOpen,commitMessage:_.commitMessage,setCommitMessage:_.setCommitMessage,autoGenerateCommitMessage:_.userPrefs.autoGenerateCommitMessage,commitGenerationRef:_.commitGenerationRef,isPRDialogOpen:_.isPRDialogOpen,prTitleRef:_.prTitleRef,prDescriptionRef:_.prDescriptionRef,setPrTitle:_.setPrTitle,setPrDescription:_.setPrDescription,autoGeneratePRInfo:_.userPrefs.autoGeneratePRInfo,prGenerationRef:_.prGenerationRef},t[11]=_.commitGenerationRef,t[12]=_.commitMessage,t[13]=_.isCommitDialogOpen,t[14]=_.isPRDialogOpen,t[15]=_.prDescriptionRef,t[16]=_.prGenerationRef,t[17]=_.prTitleRef,t[18]=_.setCommitMessage,t[19]=_.setPrDescription,t[20]=_.setPrTitle,t[21]=_.userPrefs.autoGenerateCommitMessage,t[22]=_.userPrefs.autoGeneratePRInfo,t[23]=p,t[24]=r,t[25]=v):v=t[25],bT(v);let y;t[26]!==_||t[27]!==o||t[28]!==n||t[29]!==r||t[30]!==l?(y=async function(e){let t=l?.id&&l.provider?{model:l.id,provider:l.provider}:await Mw(n,r);if(!t){ST.error(`No model configuration found. Please configure a model and provider for this project first.`);return}Nw(o,r,t.model,t.provider),o({type:Y.SetPendingChatMessage,message:{threadId:r,message:CT(e),model:t.model,provider:t.provider}}),_.setIsCommitDialogOpen(!1),_.dismissCommitError()},t[26]=_,t[27]=o,t[28]=n,t[29]=r,t[30]=l,t[31]=y):y=t[31];let b=y,x;t[32]===_?x=t[33]:(x=()=>_.setIsPRDialogOpen(!0),t[32]=_,t[33]=x);let S;t[34]===_?S=t[35]:(S=()=>{_.isLoading||_.isCreatingPR||_.handleGitOpsMenuOpenChange(!0)},t[34]=_,t[35]=S);let C;t[36]!==_.handleQuickCommit||t[37]!==_.handleViewInGitHub||t[38]!==_.isCreatingPR||t[39]!==_.isLoading||t[40]!==_.userPrefs.autoGenerateCommitMessage||t[41]!==m||t[42]!==x||t[43]!==S||t[44]!==f?(C={unifiedGitStatus:f,autoGenerateCommitMessage:_.userPrefs.autoGenerateCommitMessage,isLoading:_.isLoading,isCreatingPR:_.isCreatingPR,isDirectCommitMode:m,onQuickCommit:_.handleQuickCommit,onCreatePR:x,onViewInGitHub:_.handleViewInGitHub,onOpenGitOpsMenu:S},t[36]=_.handleQuickCommit,t[37]=_.handleViewInGitHub,t[38]=_.isCreatingPR,t[39]=_.isLoading,t[40]=_.userPrefs.autoGenerateCommitMessage,t[41]=m,t[42]=x,t[43]=S,t[44]=f,t[45]=C):C=t[45],xT(C);let w;t[46]===f?w=t[47]:(w=Hw(f),t[46]=f,t[47]=w);let T=w,E;t[48]!==_.isCreatingPR||t[49]!==_.isLoading||t[50]!==f?(E=Vw(f,_.isLoading,_.isCreatingPR),t[48]=_.isCreatingPR,t[49]=_.isLoading,t[50]=f,t[51]=E):E=t[51];let D=E,O=_.isLoading||_.isCreatingPR,k=D&&!O,A;t[52]!==_.isCreatingPR||t[53]!==f?(A=Rw(f,_.isCreatingPR),t[52]=_.isCreatingPR,t[53]=f,t[54]=A):A=t[54];let j=A,N;t[55]!==_.isCreatingPR||t[56]!==_.isLoading||t[57]!==f?(N=_.isCreatingPR?(0,$.jsx)(dp,{size:`sm`}):zw(f,_.isCreatingPR,_.isLoading)??(0,$.jsx)(M,{className:`h-4 w-4 shrink-0`}),t[55]=_.isCreatingPR,t[56]=_.isLoading,t[57]=f,t[58]=N):N=t[58];let P=N,F=s&&!T?Ww:Uw,I;t[59]===f?I=t[60]:(I=Bw(f),t[59]=f,t[60]=I);let L;t[61]!==_||t[62]!==p||t[63]!==m||t[64]!==a||t[65]!==f?(L=(0,$.jsx)(DT,{unifiedGitStatus:f,actions:_,isDirectCommitMode:m,aiGeneration:p,layout:a}),t[61]=_,t[62]=p,t[63]=m,t[64]=a,t[65]=f,t[66]=L):L=t[66];let R;t[67]!==_.handleMainButtonClick||t[68]!==T||t[69]!==O||t[70]!==k||t[71]!==D||t[72]!==P||t[73]!==j||t[74]!==I||t[75]!==L?(R={isBrandState:T,isMainButtonVisuallyDisabled:k,isMainButtonHardDisabled:O,mainButtonDisabled:D,mainButtonText:j,mainButtonIcon:P,tooltip:I,onMainButtonClick:_.handleMainButtonClick,dropdown:L},t[67]=_.handleMainButtonClick,t[68]=T,t[69]=O,t[70]=k,t[71]=D,t[72]=P,t[73]=j,t[74]=I,t[75]=L,t[76]=R):R=t[76];let z=R,B;t[77]!==F||t[78]!==a||t[79]!==z?(B=a===`sidebar`?(0,$.jsx)(wT,{...z}):a===`bar`?(0,$.jsx)(TT,{footerPillButtonClass:F,...z}):(0,$.jsx)(ET,{...z}),t[77]=F,t[78]=a,t[79]=z,t[80]=B):B=t[80];let V;t[81]!==_||t[82]!==p||t[83]!==b||t[84]!==f.currentBranch?(V=(0,$.jsx)(OT,{actions:_,aiGeneration:p,currentBranch:f.currentBranch,onFixCommitErrorInChat:b}),t[81]=_,t[82]=p,t[83]=b,t[84]=f.currentBranch,t[85]=V):V=t[85];let H;return t[86]!==B||t[87]!==V?(H=(0,$.jsxs)($.Fragment,{children:[B,V]}),t[86]=B,t[87]=V,t[88]=H):H=t[88],H}var AT=Ut(`app.open-with-button.ui`),jT=`VS Code`;function MT(e){return e||Ji(jT)}var NT={"VS Code":`vscode`,Antigravity:`antigravity`,Cursor:`cursor`,"Devin Desktop":`devin`,Windsurf:`windsurf`,Xcode:`xcode`,"Android Studio":`android-studio`,Kiro:`kiro`,Terminal:`terminal`},PT=`h-4 w-4 dark:invert`,FT=`h-4 w-4 dark:invert group-hover:invert dark:group-hover:invert-0`;function IT({projectId:e,threadId:t,openWith:n,layout:r=`bar`}){let i=gC(),[a,o]=(0,Z.useState)(!1),[s,c]=(0,Z.useState)([]),[l,u]=(0,Z.useState)(()=>MT(n)),[d,f]=(0,Z.useState)(!0);(0,Z.useEffect)(()=>{(async()=>{try{let e=await Jr();c(e);let t=MT(n);e.includes(t)?u(t):e.length>0&&u(e[0])}catch(e){AT.error(`Failed to fetch available programs:`,e),c([jT])}finally{f(!1)}})()},[]),(0,Z.useEffect)(()=>{if(n&&s.includes(n)){u(n);return}let e=Ji(jT);!n&&s.includes(e)&&u(e)},[n,s]);async function p(t){u(t),La(t),await Rr(e,t)}let m=async n=>{try{o(!0),await p(n),t?await Wi(t,n):await Nr(e,n),ac({title:`Success`,description:`Opened project in ${n}`})}catch(e){AT.error(`Failed to open project in ${n}:`,e);let t=`Failed to open project in ${n}`;if(e instanceof Error){let n=e;t=n.details?n.details:e.message}ac({title:`Error`,description:t,variant:`destructive`})}finally{o(!1)}};async function h(e){try{await p(e)}catch(t){AT.error(`Failed to save preferred IDE (${e}):`,t),ac({title:`Error`,description:`Failed to save IDE preference`,variant:`destructive`})}}let g=async()=>{await m(l)},_=i?`ghost`:`outline`,v=i?nl:`border-transparent`;return d?(0,$.jsx)(Hr,{variant:_,size:`sm`,className:G(`h-8`,v),disabled:!0,children:(0,$.jsx)(`div`,{className:`h-4 w-4 animate-pulse bg-muted rounded`})}):r===`menu`?(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(Hr,{variant:`ghost`,size:`sm`,className:`group w-full justify-start gap-2`,disabled:a,onClick:()=>{g()},children:[(0,$.jsx)(`img`,{src:`/ide/${NT[l]||NT[jT]}.svg`,alt:l,className:G(FT,`shrink-0`)}),`Open in `,l]}),(0,$.jsxs)(Np,{children:[(0,$.jsx)(Pp,{asChild:!0,children:(0,$.jsxs)(Hr,{variant:`ghost`,size:`sm`,className:`w-full justify-start gap-2`,children:[(0,$.jsx)(tn,{className:`h-4 w-4 shrink-0`}),`Change IDE`]})}),(0,$.jsx)(Fp,{align:`start`,className:`w-56 p-1`,children:s.map(e=>(0,$.jsxs)(`button`,{type:`button`,className:`flex w-full items-center gap-2 rounded-sm px-2 py-1.5 text-sm hover:bg-accent disabled:opacity-50`,onClick:()=>{h(e)},disabled:a,children:[(0,$.jsx)(`img`,{src:`/ide/${NT[e]||NT[jT]}.svg`,alt:e,className:G(PT,`shrink-0`)}),e]},e))})]})]}):(0,$.jsxs)(`div`,{className:`flex items-center gap-0`,children:[(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(Hr,{variant:_,size:`sm`,className:G(`h-8 rounded-r-none`,i?G(`group`,nl):`border-r-0 border-transparent`),disabled:a,onClick:g,children:(0,$.jsx)(`img`,{src:`/ide/${NT[l]||NT[jT]}.svg`,alt:l,className:i?FT:PT})})}),(0,$.jsx)(Fr,{children:`Open in ${l}`})]}),(0,$.jsxs)(hl,{children:[(0,$.jsx)(gl,{asChild:!0,children:(0,$.jsx)(Hr,{variant:_,size:`sm`,className:G(`h-8 w-8 rounded-l-none px-1`,v),disabled:a,children:(0,$.jsx)(tn,{className:`h-3.5 w-3.5`})})}),(0,$.jsx)(bl,{align:`end`,children:s.map(e=>(0,$.jsxs)(xl,{onClick:()=>void h(e),disabled:a,className:`flex items-center gap-2`,children:[(0,$.jsx)(`img`,{src:`/ide/${NT[e]||NT[jT]}.svg`,alt:e,className:PT}),e]},e))})]})]})}function LT(){return`dev-server-${Date.now()}-${Math.random().toString(36).slice(2,9)}`}function RT(e,t){return Cc({messageId:`msg-dev-server-${t}`,command:e,toolCallId:t})}function zT(e,t){e({type:Y.AddMessage,message:RT(t.command,t.toolCallId),threadId:t.threadId}),e({type:Y.SetDevServerToolSession,session:t})}function BT(e,t,n,r){r&&e({type:Y.AppendToolExecutionOutput,toolCallId:t,threadId:n,toolName:`bash`,delta:r})}function VT(e,t,n,r){e({type:Y.UpdateMessage,messageId:t.messageId,threadId:t.threadId,content:jc(Sc(t.command,t.toolCallId),t.toolCallId,n,r)}),e({type:Y.ClearToolCallProgress,toolCallId:t.toolCallId}),e({type:Y.SetDevServerToolSession,session:null})}function HT(e,t){`content`in e&&typeof e.content==`string`&&t(e.content)}function UT(e,t){e.isUrlDetected?.()||(e.markUrlDetected?.(),bw(t)&&Promise.resolve(e.onUrl?.(t.url)))}function WT(e,t){Promise.resolve(e.onPortInUse?.({port:`port`in t&&typeof t.port==`number`?t.port:void 0,pid:`pid`in t&&typeof t.pid==`number`?t.pid:void 0,command:`command`in t&&typeof t.command==`string`?t.command:void 0}))}function GT(e,t){`exitCode`in t&&typeof t.exitCode==`number`&&e.onExitCode?.(t.exitCode)}function KT(e,t){let n=`message`in t&&t.message!=null?String(t.message):`error`in t&&t.error!=null?String(t.error):`Dev server error`;BT(e.dispatch,e.toolCallId,e.threadId,`${n}\n`)}function qT(e){let t=``;function n(n){if(BT(e.dispatch,e.toolCallId,e.threadId,n),t+=n,e.isUrlDetected?.())return;let r=m(t);r&&(e.markUrlDetected?.(),Promise.resolve(e.onUrl?.(r)))}function r(t){if(t.type===`stdout`||t.type===`stderr`){HT(t,n);return}if(bw(t)){UT(e,t);return}if(t.type===`port_in_use`){WT(e,t);return}if(t.type===`complete`){GT(e,t);return}t.type===`error`&&KT(e,t)}return function(e){if(typeof e==`string`){n(e);return}!e||typeof e!=`object`||`type`in e&&r(e)}}function JT(e){return e instanceof DOMException&&e.name===`AbortError`}async function YT(e,t,n){let r=e.getReader(),i=new TextDecoder,a=``;try{for(;;){if(n?.aborted){await r.cancel();return}let{done:e,value:o}=await r.read();if(e)break;a+=i.decode(o,{stream:!0});let s=a.split(`
3326
+ `);a=s.pop()??``;for(let e of s)if(e.trim())try{t(JSON.parse(e))}catch{t(e)}}if(a.trim())try{t(JSON.parse(a))}catch{t(a)}}catch(e){if(n?.aborted||JT(e))return;throw e}finally{r.releaseLock()}}var XT=Ut(`app.use-start-dev-server.hook`);function ZT(e){return new Promise(t=>{setTimeout(t,e)})}function QT(e){return e==null?`Dev server port is already in use.`:`Port ${e} is already in use.`}function $T(){let e=X(e=>e.selectedThreadId),t=Ks(),n=Vs(),{openChatDockPanel:r}=Wd(),{setDevServerUrl:i,setDevServerState:a,setDevServerFailureReason:o,setDevServerProcessAlive:s,setDevServerProjectId:c,setDevServerStopped:l,devServerStopRequestedRef:u,requestPortConflictConfirmation:d}=vw(),f=(0,Z.useRef)(null),p=(0,Z.useRef)(!1),h=(0,Z.useRef)(!1),g=(0,Z.useRef)(!1),_=(0,Z.useRef)(!1),v=(0,Z.useRef)(null);function y(e){return n.getState().toolCallProgress[e.toolCallId]?.executionOutput??``}function b(e){let t=y(e);return u.current?(u.current=!1,`${t}${t.endsWith(`
3328
3327
  `)?`Server stopped.
3329
3328
  `:`
3330
3329
  Server stopped.
3331
3330
  `}`):t.trim()?t:`Dev server exited.
3332
- `}function x(e,t=!1){a(`failed`),o(e),s(t),ac({title:`Dev server failed to start`,description:e,variant:`destructive`})}function C(e){if(p.current)return;p.current=!0;let n=y(e);zT(t,e,n.trim()?n:`Dev server started.
3333
- `),f.current?.abort(),f.current=null,a(`running`),s(!0),o(null)}function w(e,n){if(p.current)return;p.current=!0;let r=n!==void 0&&n!==0;zT(t,e,b(e),r),s(!1),r?x(y(e).trim()||`Dev server failed to start.`,!1):(a(`idle`),o(null)),c(null)}async function T(e,n,r){if(_.current||(_.current=!0,!await d({projectId:e.projectId,port:n.port,pid:n.pid,command:n.command})))return!1;if(n.port==null)return ac({title:`Couldn't free port`,description:`Port in use but the port number couldn't be determined. Check the output.`,variant:`destructive`}),!1;let i=await Oi(e.projectId,n.port);if(!i.success){let e=i.killCommand??se(n.port);return ac({title:`Couldn't free port`,description:i.error??`Port ${n.port} is still in use.`,variant:`destructive`}),t({type:Y.AppendToolExecutionOutput,toolCallId:`dev-server-port-${Date.now()}`,threadId:r.threadId,toolName:`bash`,delta:`Manual fix: ${e}\n`}),!1}return!0}function E(){h.current=!0}function D(e,n,a){return E(),_w({url:e,useBuiltInBrowser:n.useBuiltInBrowser!==!1,setDevServerUrl:i,openBrowserPanel:()=>{r(`browser`,{navigateToChat:!1})},openExternalUrl:ui,onTerminalMessage:e=>{t({type:Y.AppendToolExecutionOutput,toolCallId:a.toolCallId,threadId:a.threadId,toolName:`bash`,delta:`${e}\n`})}}).then(()=>{C(a)})}async function O(n,r,i){_.current=!1,h.current=!1,g.current=!1,p.current=!1;let o,s=null;v.current=null;let l=setTimeout(()=>{if(h.current||i.aborted||p.current||g.current)return;let e=m(y(r));if(e){D(e,n,r);return}g.current=!0,ac({title:`No dev URL detected yet`,description:`Check the output or enter the URL manually in the Browser panel.`})},j);try{let l=await Ca(n.projectId,e??void 0,i);if(!l)return zT(t,r,`Failed to start dev server.
3334
- `,!0),x(`Failed to start dev server.`),p.current=!0,`failed`;a(`starting`),await qT(l,GT({dispatch:t,toolCallId:r.toolCallId,threadId:r.threadId,isUrlDetected:()=>h.current,markUrlDetected:E,onUrl:async e=>{await D(e,n,r)},onPortInUse:e=>{v.current=e,t({type:Y.AppendToolExecutionOutput,toolCallId:r.toolCallId,threadId:r.threadId,toolName:`bash`,delta:e.port?`Port ${e.port} is already in use.\n`:`Dev server port is already in use.
3335
- `}),s||=T(n,e,r)},onExitCode:e=>{o=e}}),i);let u=v.current;if(u!=null&&!p.current){if(await s??!1)return`retry`;let e=XT(u.port);return zT(t,r,`${y(r)}${e}\n`.trimStart(),!0),p.current=!0,x(e,!1),c(null),`failed`}return p.current||w(r,o),p.current&&o===0?`success`:`failed`}catch(e){return i.aborted&&p.current?`failed`:(JT.error(`Failed to start dev server:`,e),p.current||=(zT(t,r,`${y(r)}Failed to start dev server.\n`.trimStart(),!0),!0),x(`Failed to start dev server.`),c(null),`failed`)}finally{clearTimeout(l)}}let k=async n=>{if(!n?.runCommand||!n?.projectId||!e)return;u.current=!1,f.current?.abort(),f.current=new AbortController;try{(await Kr(n.projectId)).isRunning&&await bo(n.projectId)}catch{}c(n.projectId),a(`starting`),o(null),s(!0);let r=FT(),i={threadId:e,toolCallId:r,messageId:`msg-dev-server-${r}`,command:n.runCommand};LT(t,i);let l=0;for(;l<2;){l+=1;let e=new AbortController;if(f.current=e,await O(n,i,e.signal)!==`retry`)break}};async function A(e){u.current=!0,a(`stopping`);try{await bo(e);let t=Date.now();for(;Date.now()-t<S&&(await Kr(e)).isRunning;)await YT(200);i(null),l(!0),a(`idle`),o(null),s(!1),c(null)}catch(e){ac({title:`Error`,description:e instanceof Error?e.message:`Failed to stop dev server`,variant:`destructive`}),a(`running`)}}function M(){a(`idle`),o(null),s(!1),c(null)}return{startServer:k,stopServer:A,dismissFailed:M,setServerUrl:i}}var QT=3e4,$T=2e3,eE=5e3;function tE(e,t,n){return!e||t!==e?!1:n!==`idle`}function nE(e){let{devServerState:t,setDevServerState:n,devServerProjectId:r,setDevServerProjectId:i,setDevServerProcessAlive:a,setDevServerFailureReason:o}=gw(),s=t===`running`&&r===e,c=t===`starting`||t===`stopping`,l=t===`failed`&&r===e,u=(0,Z.useRef)(!1),d=(0,Z.useRef)(t),f=(0,Z.useRef)(r);d.current=t,f.current=r;let p=(0,Z.useCallback)(t=>{if(e){if(t){i(e),n(`running`),a(!0),o(null);return}r===e&&d.current!==`failed`&&(n(`idle`),i(null),a(!1))}},[e,r,i,n,a,o]);return(0,Z.useEffect)(()=>{e&&(u.current=!1,(async()=>{try{let t=await Kr(e),n=tE(e,f.current,d.current);if(!t.isRunning&&n&&d.current===`starting`||!t.isRunning&&d.current===`failed`)return;p(t.isRunning)}catch{tE(e,f.current,d.current)||p(!1)}finally{u.current=!0}})())},[e,p]),(0,Z.useEffect)(()=>{if(!e||t!==`starting`)return;let n=Date.now(),r=setInterval(()=>{if(Date.now()-n>QT){clearInterval(r);return}Kr(e).then(e=>{e.isRunning&&(p(!0),clearInterval(r))}).catch(()=>{})},$T);return()=>clearInterval(r)},[e,t,p]),(0,Z.useEffect)(()=>{if(!e||!s)return;let t=setInterval(()=>{Kr(e).then(e=>{e.isRunning||p(!1)}).catch(()=>{})},eE);return()=>clearInterval(t)},[e,s,p]),{isRunning:s,isLoading:c,isFailed:l,recheck:(0,Z.useCallback)(async()=>{if(e)try{p((await Kr(e)).isRunning)}catch{p(!1)}},[e,p])}}function rE(e,t,n,r){return e?`Stopping...`:t?`Starting...`:n?`Retry dev server`:r?`Stop dev server`:`Start dev server`}function iE(e){let t=(0,Q.c)(15),{isLoading:n,isFailed:r,isRunning:i,className:a,playClassName:o}=e,s=o===void 0?``:o;if(n){let e;t[0]===a?e=t[1]:(e=G(a,`animate-spin`),t[0]=a,t[1]=e);let n;return t[2]===e?n=t[3]:(n=(0,$.jsx)(ln,{className:e}),t[2]=e,t[3]=n),n}if(r){let e;return t[4]===a?e=t[5]:(e=(0,$.jsx)(Fe,{className:a}),t[4]=a,t[5]=e),e}if(i){let e;t[6]===a?e=t[7]:(e=G(a,`fill-current`),t[6]=a,t[7]=e);let n;return t[8]===e?n=t[9]:(n=(0,$.jsx)(z,{className:e}),t[8]=e,t[9]=n),n}let c;t[10]!==a||t[11]!==s?(c=G(a,s),t[10]=a,t[11]=s,t[12]=c):c=t[12];let l;return t[13]===c?l=t[14]:(l=(0,$.jsx)(Ae,{className:c}),t[13]=c,t[14]=l),l}function aE(e,t,n,r){return e||!n&&!t&&!r}function oE(e){let t=(0,Q.c)(13),{isLoading:n,isFailed:r,isRunning:i,label:a,handleClick:o,disabled:s}=e,c=`flex flex-col items-center gap-3 group disabled:opacity-40 disabled:cursor-not-allowed ${i?`text-orange-500`:r?`text-destructive`:`text-muted-foreground`}`,l;t[0]!==r||t[1]!==n||t[2]!==i?(l=(0,$.jsx)(iE,{isLoading:n,isFailed:r,isRunning:i,className:`h-10 w-10`,playClassName:`fill-current group-hover:text-foreground transition-colors`}),t[0]=r,t[1]=n,t[2]=i,t[3]=l):l=t[3];let u;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(u=G(U.body,`group-hover:text-foreground transition-colors`),t[4]=u):u=t[4];let d;t[5]===a?d=t[6]:(d=(0,$.jsx)(`span`,{className:u,children:a}),t[5]=a,t[6]=d);let f;return t[7]!==s||t[8]!==o||t[9]!==c||t[10]!==l||t[11]!==d?(f=(0,$.jsxs)(`button`,{onClick:o,disabled:s,className:c,children:[l,d]}),t[7]=s,t[8]=o,t[9]=c,t[10]=l,t[11]=d,t[12]=f):f=t[12],f}function sE(e){let t=(0,Q.c)(9),{isRunning:n,isFailed:r,icon:i,label:a,handleClick:o,disabled:s}=e,c=n&&`text-orange-500`,l=r&&`text-destructive`,u;t[0]!==c||t[1]!==l?(u=G(`w-full justify-start gap-2`,c,l),t[0]=c,t[1]=l,t[2]=u):u=t[2];let d;return t[3]!==s||t[4]!==o||t[5]!==i||t[6]!==a||t[7]!==u?(d=(0,$.jsxs)(Hr,{variant:`ghost`,size:`sm`,className:u,onClick:o,disabled:s,children:[i,a]}),t[3]=s,t[4]=o,t[5]=i,t[6]=a,t[7]=u,t[8]=d):d=t[8],d}function cE(e){let t=(0,Q.c)(15),{buttonClassName:n,icon:r,label:i,tooltip:a,handleClick:o,disabled:s}=e,c;t[0]===n?c=t[1]:(c=G(`relative h-8 w-8`,n),t[0]=n,t[1]=c);let l;t[2]===i?l=t[3]:(l=(0,$.jsx)(`span`,{className:`sr-only`,children:i}),t[2]=i,t[3]=l);let u;t[4]!==s||t[5]!==o||t[6]!==r||t[7]!==c||t[8]!==l?(u=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(Hr,{variant:`ghost`,size:`icon`,className:c,onClick:o,disabled:s,children:[r,l]})}),t[4]=s,t[5]=o,t[6]=r,t[7]=c,t[8]=l,t[9]=u):u=t[9];let d;t[10]===a?d=t[11]:(d=(0,$.jsx)(Fr,{children:a}),t[10]=a,t[11]=d);let f;return t[12]!==u||t[13]!==d?(f=(0,$.jsx)(Zo,{children:(0,$.jsxs)(Mi,{children:[u,d]})}),t[12]=u,t[13]=d,t[14]=f):f=t[14],f}function lE(e){let t=(0,Q.c)(65),{projectId:n,runCommand:r,large:i,layout:a}=e,o=a===void 0?`bar`:a,s=X(uE),c;if(t[0]!==n||t[1]!==s){let e;t[3]===n?e=t[4]:(e=e=>e.projectId===n,t[3]=n,t[4]=e),c=s.find(e),t[0]=n,t[1]=s,t[2]=c}else c=t[2];let l=c,{devServerState:u,devServerFailureReason:d,devServerProcessAlive:f,setDevServerProjectId:p}=gw(),{startServer:m,stopServer:h,dismissFailed:g}=ZT();nE(n);let _=mC(),v=u===`starting`,y=u===`stopping`,b=u===`running`,x=u===`failed`,S=v||y,C;t[5]!==n||t[6]!==r||t[7]!==l?.useBuiltInBrowser||t[8]!==m?(C=function(){m({projectId:n,runCommand:r||``,useBuiltInBrowser:l?.useBuiltInBrowser!==!1})},t[5]=n,t[6]=r,t[7]=l?.useBuiltInBrowser,t[8]=m,t[9]=C):C=t[9];let w=C,T;t[10]!==f||t[11]!==g||t[12]!==x||t[13]!==n||t[14]!==p||t[15]!==h?(T=async function(){if(x&&!f){g();return}p(n);try{await h(n)}catch(e){let t=e;ac({title:`Error`,description:t instanceof Error?t.message:`Failed to stop dev server`,variant:`destructive`})}},t[10]=f,t[11]=g,t[12]=x,t[13]=n,t[14]=p,t[15]=h,t[16]=T):T=t[16];let E=T,D;t[17]!==w||t[18]!==E||t[19]!==x||t[20]!==b||t[21]!==v?(D=function(){if(x){w();return}if(b||v){E();return}w()},t[17]=w,t[18]=E,t[19]=x,t[20]=b,t[21]=v,t[22]=D):D=t[22];let O=D,k;t[23]===r?k=t[24]:(k=r?.trim(),t[23]=r,t[24]=k);let A=!!k,j;t[25]!==x||t[26]!==b||t[27]!==v||t[28]!==y?(j=rE(y,v,x,b),t[25]=x,t[26]=b,t[27]=v,t[28]=y,t[29]=j):j=t[29];let M=j,N;t[30]!==A||t[31]!==x||t[32]!==S||t[33]!==b?(N=aE(S,x,b,A),t[30]=A,t[31]=x,t[32]=S,t[33]=b,t[34]=N):N=t[34];let P=N;if(_&&!A&&!b&&!S&&!x)return null;let F=b&&`text-orange-500 bg-orange-500/10`,I=x&&`text-destructive bg-destructive/10`,L=!b&&!x&&(_?`scenic-chrome-button hover:!bg-[hsl(var(--scenic-foreground))] hover:!text-[hsl(var(--scenic-foreground-inverse))]`:`text-muted-foreground`),R=b&&`before:absolute before:inset-[-1px] before:rounded-full before:border before:border-orange-500/60 before:animate-ping-subtle before:content-['']`,z;t[35]!==I||t[36]!==L||t[37]!==R||t[38]!==F?(z=G(F,I,L,R),t[35]=I,t[36]=L,t[37]=R,t[38]=F,t[39]=z):z=t[39];let B=z,V;t[40]!==x||t[41]!==S||t[42]!==b?(V=(0,$.jsx)(iE,{isLoading:S,isFailed:x,isRunning:b,className:`h-4 w-4`}),t[40]=x,t[41]=S,t[42]=b,t[43]=V):V=t[43];let H=V,ee=x?d??`Dev server failed to start`:b?`Stop dev server`:A?`Start dev server: ${r}`:`Set run command in project settings`;if(i){let e;return t[44]!==P||t[45]!==O||t[46]!==x||t[47]!==S||t[48]!==b||t[49]!==M?(e=(0,$.jsx)(oE,{isLoading:S,isFailed:x,isRunning:b,label:M,handleClick:O,disabled:P}),t[44]=P,t[45]=O,t[46]=x,t[47]=S,t[48]=b,t[49]=M,t[50]=e):e=t[50],e}if(o===`menu`){let e;return t[51]!==P||t[52]!==O||t[53]!==H||t[54]!==x||t[55]!==b||t[56]!==M?(e=(0,$.jsx)(sE,{isRunning:b,isFailed:x,icon:H,label:M,handleClick:O,disabled:P}),t[51]=P,t[52]=O,t[53]=H,t[54]=x,t[55]=b,t[56]=M,t[57]=e):e=t[57],e}let te;return t[58]!==B||t[59]!==P||t[60]!==O||t[61]!==H||t[62]!==M||t[63]!==ee?(te=(0,$.jsx)(cE,{buttonClassName:B,icon:H,label:M,tooltip:ee,handleClick:O,disabled:P}),t[58]=B,t[59]=P,t[60]=O,t[61]=H,t[62]=M,t[63]=ee,t[64]=te):te=t[64],te}function uE(e){return e.projects}function dE(e){return e===`menu`?`w-full justify-start gap-2`:`gap-2`}function fE(e){let t=(0,Q.c)(4),{threadId:n,projectId:r,messages:i,userTasks:a}=e,{hasChanges:o}=Nd(),s=i.length>0,c=!!n&&(s||o||a.length>0||!!(n&&r)),l;return t[0]!==o||t[1]!==s||t[2]!==c?(l={isVisible:c,hasMessages:s,hasChanges:o},t[0]=o,t[1]=s,t[2]=c,t[3]=l):l=t[3],l}function pE(e){let t=(0,Q.c)(13),{hasMessages:n,layout:r,toolbarButtonClass:i,isStartingNewChat:a,onNewChat:o,projectId:s}=e;if(!n)return null;if(r===`menu`){let e;t[0]!==a||t[1]!==o||t[2]!==i?(e=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(Hr,{variant:`ghost`,size:`sm`,className:i,disabled:a,onClick:o,children:`New Chat`})}),t[0]=a,t[1]=o,t[2]=i,t[3]=e):e=t[3];let n=a?`Starting Chat`:`New Chat`,r;t[4]===n?r=t[5]:(r=(0,$.jsx)(Fr,{children:n}),t[4]=n,t[5]=r);let s;return t[6]!==e||t[7]!==r?(s=(0,$.jsx)(Zo,{children:(0,$.jsxs)(Mi,{children:[e,r]})}),t[6]=e,t[7]=r,t[8]=s):s=t[8],s}let c;return t[9]!==a||t[10]!==o||t[11]!==s?(c=(0,$.jsx)(pw,{projectId:s,onNewChat:o,isStartingNewChat:a}),t[9]=a,t[10]=o,t[11]=s,t[12]=c):c=t[12],c}function mE(e){let t=(0,Q.c)(5),{hasChanges:n,layout:r,toolbarButtonClass:i,changedFilesCount:a,onReviewChanges:o}=e;if(!n||r!==`menu`)return null;let s=a===1?`Change`:`Changes`,c;return t[0]!==a||t[1]!==o||t[2]!==s||t[3]!==i?(c=(0,$.jsxs)(Hr,{variant:`ghost`,size:`sm`,className:i,onClick:o,children:[a,` `,s]}),t[0]=a,t[1]=o,t[2]=s,t[3]=i,t[4]=c):c=t[4],c}function hE(e){let t=(0,Q.c)(17),{showProjectToolbar:n,hasChatActions:r,projectId:i,threadId:a,runCommand:o,openWith:s}=e;if(!n)return null;let c;t[0]===r?c=t[1]:(c=r&&(0,$.jsx)(Tl,{className:`my-1`}),t[0]=r,t[1]=c);let l;t[2]!==i||t[3]!==o?(l=(0,$.jsx)(lE,{projectId:i,runCommand:o,layout:`menu`}),t[2]=i,t[3]=o,t[4]=l):l=t[4];let u;t[5]===a?u=t[6]:(u=(0,$.jsx)(Dw,{threadId:a,layout:`menu`}),t[5]=a,t[6]=u);let d;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(d=(0,$.jsx)(Ow,{layout:`menu`}),t[7]=d):d=t[7];let f;t[8]!==s||t[9]!==i||t[10]!==a?(f=(0,$.jsx)(PT,{projectId:i,threadId:a,openWith:s,layout:`menu`}),t[8]=s,t[9]=i,t[10]=a,t[11]=f):f=t[11];let p;return t[12]!==c||t[13]!==l||t[14]!==u||t[15]!==f?(p=(0,$.jsxs)($.Fragment,{children:[c,l,u,d,f]}),t[12]=c,t[13]=l,t[14]=u,t[15]=f,t[16]=p):p=t[16],p}function gE(e){let t=(0,Q.c)(4),{hasMessages:n,onNewChat:r,projectId:i}=e,{isStartingNewChat:a}=RC();if(!n)return null;let o;return t[0]!==a||t[1]!==r||t[2]!==i?(o=(0,$.jsx)(`div`,{className:`absolute -top-12 left-0 z-10 ml-8 flex flex-wrap items-center gap-2`,"data-chat-toolbar":!0,children:(0,$.jsx)(pw,{projectId:i,onNewChat:r,isStartingNewChat:a})}),t[0]=a,t[1]=r,t[2]=i,t[3]=o):o=t[3],o}function _E(e){let t=(0,Q.c)(7),{userTasks:n,effectiveIsStreaming:r,threadId:i,isCreatingProject:a,onSelectUserTask:o,onToggleUserTaskPinned:s,onRemoveUserTask:c,layout:l}=e;if(n.length===0)return null;let u=r||!i&&!a,d;return t[0]!==l||t[1]!==c||t[2]!==o||t[3]!==s||t[4]!==u||t[5]!==n?(d=(0,$.jsx)(MC,{tasks:n,disabled:u,onSelectTask:o,onTogglePinned:s,onRemoveTask:c,layout:l}),t[0]=l,t[1]=c,t[2]=o,t[3]=s,t[4]=u,t[5]=n,t[6]=d):d=t[6],d}function vE(e){let t=(0,Q.c)(4),{layout:n,threadId:r,projectId:i}=e;if(n!==`menu`||!r||!i)return null;let a;return t[0]!==n||t[1]!==i||t[2]!==r?(a=(0,$.jsx)(DT,{projectId:i,threadId:r,layout:n},r),t[0]=n,t[1]=i,t[2]=r,t[3]=a):a=t[3],a}function yE(e){let t=(0,Q.c)(2),{hasMessages:n,layout:r}=e;if(!n)return null;let i;return t[0]===r?i=t[1]:(i=(0,$.jsx)(AC,{layout:r}),t[0]=r,t[1]=i),i}function bE(e){return e===`bar`?`absolute -top-12 left-0 z-10 ml-8 flex flex-wrap items-center gap-2`:`flex flex-col items-stretch gap-1 p-1 min-w-[220px]`}function xE(e){let t=(0,Q.c)(61),{threadId:n,projectId:r,messages:i,userTasks:a,effectiveIsStreaming:o,isCreatingProject:s,onNewChat:c,onSelectUserTask:l,onToggleUserTaskPinned:u,onRemoveUserTask:d,layout:f}=e,p=f===void 0?`bar`:f,{openChatDockPanel:m}=Hd(),{isStartingNewChat:h}=RC(),g;t[0]!==i||t[1]!==r||t[2]!==n||t[3]!==a?(g={threadId:n,projectId:r,messages:i,userTasks:a},t[0]=i,t[1]=r,t[2]=n,t[3]=a,t[4]=g):g=t[4];let{hasMessages:_,hasChanges:v,isVisible:y}=fE(g),{changedFilesCount:b}=Nd(),x;t[5]===p?x=t[6]:(x=dE(p),t[5]=p,t[6]=x);let S=x,C=X(SE),w;if(t[7]!==r||t[8]!==C){let e;t[10]===r?e=t[11]:(e=e=>e.projectId===r,t[10]=r,t[11]=e),w=C.find(e),t[7]=r,t[8]=C,t[9]=w}else w=t[9];let T=w,E=p===`menu`&&!!n&&!!r,D=_||v||a.length>0||E;if(!y)return null;let O;t[12]===p?O=t[13]:(O=bE(p),t[12]=p,t[13]=O);let k=p===`bar`?!0:void 0,A=r||null,j;t[14]!==_||t[15]!==h||t[16]!==p||t[17]!==c||t[18]!==A||t[19]!==S?(j=(0,$.jsx)(pE,{hasMessages:_,layout:p,toolbarButtonClass:S,isStartingNewChat:h,onNewChat:c,projectId:A}),t[14]=_,t[15]=h,t[16]=p,t[17]=c,t[18]=A,t[19]=S,t[20]=j):j=t[20];let M;t[21]===m?M=t[22]:(M=()=>{m(`review`)},t[21]=m,t[22]=M);let N;t[23]!==b||t[24]!==v||t[25]!==p||t[26]!==M||t[27]!==S?(N=(0,$.jsx)(mE,{hasChanges:v,layout:p,toolbarButtonClass:S,changedFilesCount:b,onReviewChanges:M}),t[23]=b,t[24]=v,t[25]=p,t[26]=M,t[27]=S,t[28]=N):N=t[28];let P;t[29]!==o||t[30]!==s||t[31]!==p||t[32]!==d||t[33]!==l||t[34]!==u||t[35]!==n||t[36]!==a?(P=(0,$.jsx)(_E,{userTasks:a,effectiveIsStreaming:o,threadId:n,isCreatingProject:s,onSelectUserTask:l,onToggleUserTaskPinned:u,onRemoveUserTask:d,layout:p}),t[29]=o,t[30]=s,t[31]=p,t[32]=d,t[33]=l,t[34]=u,t[35]=n,t[36]=a,t[37]=P):P=t[37];let F;t[38]!==p||t[39]!==r||t[40]!==n?(F=(0,$.jsx)(vE,{layout:p,threadId:n,projectId:r}),t[38]=p,t[39]=r,t[40]=n,t[41]=F):F=t[41];let I;t[42]!==_||t[43]!==p?(I=(0,$.jsx)(yE,{hasMessages:_,layout:p}),t[42]=_,t[43]=p,t[44]=I):I=t[44];let L=T?.runCommand,R=T?.openWith,z;t[45]!==D||t[46]!==r||t[47]!==E||t[48]!==L||t[49]!==R||t[50]!==n?(z=(0,$.jsx)(hE,{showProjectToolbar:E,hasChatActions:D,projectId:r,threadId:n,runCommand:L,openWith:R}),t[45]=D,t[46]=r,t[47]=E,t[48]=L,t[49]=R,t[50]=n,t[51]=z):z=t[51];let B;return t[52]!==N||t[53]!==P||t[54]!==F||t[55]!==I||t[56]!==z||t[57]!==O||t[58]!==k||t[59]!==j?(B=(0,$.jsx)($.Fragment,{children:(0,$.jsxs)(`div`,{className:O,"data-chat-toolbar":k,children:[j,N,P,F,I,z]})}),t[52]=N,t[53]=P,t[54]=F,t[55]=I,t[56]=z,t[57]=O,t[58]=k,t[59]=j,t[60]=B):B=t[60],B}function SE(e){return e.projects}function CE(e){let t=(0,Q.c)(11),{mode:n,messages:r,onNewChat:i}=e,a=n===void 0?`full`:n,o;t[0]!==r||t[1]!==e.projectId||t[2]!==e.threadId||t[3]!==e.userTasks?(o={threadId:e.threadId,projectId:e.projectId,messages:r,userTasks:e.userTasks},t[0]=r,t[1]=e.projectId,t[2]=e.threadId,t[3]=e.userTasks,t[4]=o):o=t[4];let{hasMessages:s}=fE(o);if(a===`newChatOnly`){let n=e.projectId||null,r;return t[5]!==s||t[6]!==i||t[7]!==n?(r=(0,$.jsx)(gE,{hasMessages:s,onNewChat:i,projectId:n}),t[5]=s,t[6]=i,t[7]=n,t[8]=r):r=t[8],r}let c;return t[9]===e?c=t[10]:(c=(0,$.jsx)(xE,{...e}),t[9]=e,t[10]=c),c}function wE(e){let t=(0,Q.c)(2),n;return t[0]===e?n=t[1]:(n=(0,$.jsx)(CE,{...e}),t[0]=e,t[1]=n),n}function TE(e){let t=(0,Q.c)(29),{inPill:n}=e,r=n===void 0?!1:n,i=mC(),a=X(OE),o=X(DE),s=X(EE),{userTasks:c,handleNewChat:l,handleSelectUserTask:u,handleRemoveUserTask:d,toggleUserTaskPinned:f,effectiveIsStreaming:p,isCreatingProject:m}=RC(),h;t[0]!==s||t[1]!==o||t[2]!==a||t[3]!==c?(h={threadId:a,projectId:o,messages:s,userTasks:c},t[0]=s,t[1]=o,t[2]=a,t[3]=c,t[4]=h):h=t[4];let{isVisible:g}=fE(h);if(!a||!g)return null;let _=r||!i?`text-muted-foreground`:nl,v;t[5]===_?v=t[6]:(v=G(`h-8 w-8 shrink-0 md:hidden electrobun-webkit-app-region-no-drag`,_),t[5]=_,t[6]=v);let y,b;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(y=(0,$.jsx)(lt,{className:`h-4 w-4`}),b=(0,$.jsx)(`span`,{className:`sr-only`,children:`Chat actions`}),t[7]=y,t[8]=b):(y=t[7],b=t[8]);let x;t[9]===v?x=t[10]:(x=(0,$.jsx)(gl,{asChild:!0,children:(0,$.jsxs)(Hr,{variant:`ghost`,size:`icon`,className:v,children:[y,b]})}),t[9]=v,t[10]=x);let S=o??``,C;t[11]===l?C=t[12]:(C=()=>{l()},t[11]=l,t[12]=C);let w;t[13]===d?w=t[14]:(w=e=>{d(e)},t[13]=d,t[14]=w);let T;t[15]!==p||t[16]!==u||t[17]!==m||t[18]!==s||t[19]!==a||t[20]!==w||t[21]!==S||t[22]!==C||t[23]!==f||t[24]!==c?(T=(0,$.jsx)(bl,{align:`end`,className:`electrobun-webkit-app-region-no-drag`,children:(0,$.jsx)(xE,{threadId:a,projectId:S,messages:s,userTasks:c,effectiveIsStreaming:p,isCreatingProject:m,onNewChat:C,onSelectUserTask:u,onToggleUserTaskPinned:f,onRemoveUserTask:w,layout:`menu`})}),t[15]=p,t[16]=u,t[17]=m,t[18]=s,t[19]=a,t[20]=w,t[21]=S,t[22]=C,t[23]=f,t[24]=c,t[25]=T):T=t[25];let E;return t[26]!==T||t[27]!==x?(E=(0,$.jsxs)(hl,{children:[x,T]}),t[26]=T,t[27]=x,t[28]=E):E=t[28],E}function EE(e){return e.messages}function DE(e){return e.selectedProjectId}function OE(e){return e.selectedThreadId}function kE(e){let t=(0,Q.c)(3),{threadId:n,children:r}=e,i;return t[0]!==r||t[1]!==n?(i=(0,$.jsx)(Md,{threadId:n,children:r}),t[0]=r,t[1]=n,t[2]=i):i=t[2],i}function AE(e,t){let n=t[0],r={toolCallId:e,questions:t,question:n?.question??``,options:n?.options?.map(e=>e.label),context:n?.header};return Object.defineProperties(r,{question:{value:r.question,enumerable:!1,writable:!0},options:{value:r.options,enumerable:!1,writable:!0},context:{value:r.context,enumerable:!1,writable:!0}}),r}var jE=1500;function ME(e){let t=[];for(let n of e){let e=Hs(n.content);e&&t.push(...e)}return t}function NE(e,t){let n=[];for(let[r,i]of Object.entries(e))!i||i.length===0||g_(r)===t&&n.push(...rm(i));return n}function PE(e){let t=new Set;for(let n of e)ws(n)&&t.add(n.toolCallId);let n=null;for(let r of e){if(!Us(r)||r.name!==`ask_user`||t.has(r.id))continue;let e=Av(r.input);e.questions.length!==0&&(n=AE(r.id,e.questions))}return n}function FE(e){return e.isThreadActive?PE([...e.messageBlocks,...Bs(e.streamingSegments),...NE(e.subagentTranscripts,e.paneId)]):null}function IE(e,t,n,r){if(t){let n=e.find(e=>e.toolCallId===t);if(n)return AE(n.toolCallId,n.questions)}if(!n)return null;let i=e.find(e=>S_(e.toolCallId)===r&&x_(e.toolCallId)===n);return i?AE(i.toolCallId,i.questions):null}function LE(e){let t=(0,Q.c)(24),{paneId:n}=Sv(),r=X(zE),i;t[0]!==n||t[1]!==r?(i=e=>As(e.threadStreamingStates,r,n).streamingSegments,t[0]=n,t[1]=r,t[2]=i):i=t[2];let a=X(i),o=X(RE),s;t[3]!==n||t[4]!==r?(s=e=>ks(e,r,n),t[3]=n,t[4]=r,t[5]=s):s=t[5];let c=X(s),l;t[6]===e?l=t[7]:(l=ME(e),t[6]=e,t[7]=l);let u=l,d;t[8]!==c||t[9]!==u||t[10]!==n||t[11]!==a||t[12]!==o?(d=FE({messageBlocks:u,streamingSegments:a,subagentTranscripts:o,isThreadActive:c,paneId:n}),t[8]=c,t[9]=u,t[10]=n,t[11]=a,t[12]=o,t[13]=d):d=t[13];let f=d,[p,m]=(0,Z.useState)(null),[h,g]=(0,Z.useState)(null),_=(0,Z.useRef)(null),v=f?.toolCallId??null,y;t[14]===Symbol.for(`react.memo_cache_sentinel`)?(y=()=>{g(null)},t[14]=y):y=t[14];let b=p?.toolCallId,x;t[15]!==v||t[16]!==b?(x=[v,b],t[15]=v,t[16]=b,t[17]=x):x=t[17],(0,Z.useEffect)(y,x);let S,C;t[18]!==v||t[19]!==c||t[20]!==n||t[21]!==r?(S=()=>{if(!c){m(null),_.current=null;return}let e=!1,t=async function(){try{let t=await ei();if(e)return;if(t.length===0){_.current&&=(g(_.current),null),m(null);return}let i=IE(t,v,r,n);if(!i){_.current=null,m(null);return}_.current=i.toolCallId,m(AE(i.toolCallId,i.questions))}catch{}};t();let i=setInterval(()=>{t()},jE);return()=>{e=!0,clearInterval(i)}},C=[c,v,r,n],t[18]=v,t[19]=c,t[20]=n,t[21]=r,t[22]=S,t[23]=C):(S=t[22],C=t[23]),(0,Z.useEffect)(S,C);let w=f??p;return!w||h===w.toolCallId?null:w}function RE(e){return e.subagentTranscripts}function zE(e){return e.selectedThreadId}function BE(e){let t=(0,Q.c)(10),{open:n,onClose:r}=e,i=Yn(),a;t[0]===r?a=t[1]:(a=e=>{e||r()},t[0]=r,t[1]=a);let o;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,$.jsxs)(fc,{children:[(0,$.jsx)(sc,{children:`Balance empty`}),(0,$.jsx)(oc,{children:`You have no prompts remaining. Purchase additional prompts to continue.`})]}),t[2]=o):o=t[2];let s;t[3]!==i||t[4]!==r?(s=(0,$.jsxs)(cc,{children:[o,(0,$.jsx)(uc,{children:(0,$.jsx)(Hr,{onClick:()=>{r(),i(`/settings/account`)},children:`Go to Account`})})]}),t[3]=i,t[4]=r,t[5]=s):s=t[5];let c;return t[6]!==n||t[7]!==a||t[8]!==s?(c=(0,$.jsx)(pc,{open:n,onOpenChange:a,children:s}),t[6]=n,t[7]=a,t[8]=s,t[9]=c):c=t[9],c}function VE(e){let t=(0,Q.c)(4),{messages:n}=e,r;t[0]===n?r=t[1]:(r=n===void 0?[]:n,t[0]=n,t[1]=r);let i=r,a;return t[2]===i?a=t[3]:(a=(0,$.jsx)(WE,{messages:i}),t[2]=i,t[3]=a),a}function HE(e){let t=(0,Q.c)(19),{visible:n,paneId:r,threadId:i,projectId:a,messages:o,userTasks:s,effectiveIsStreaming:c,isCreatingProject:l,onNewChat:u,onSelectUserTask:d,onToggleUserTaskPinned:f,onRemoveUserTask:p}=e;if(!n)return null;let m=r===`primary`?`full`:`newChatOnly`,h;t[0]!==r||t[1]!==s?(h=r===`primary`?s:[],t[0]=r,t[1]=s,t[2]=h):h=t[2];let g=h,_;t[3]===u?_=t[4]:(_=()=>{u()},t[3]=u,t[4]=_);let v;t[5]===p?v=t[6]:(v=e=>{p(e)},t[5]=p,t[6]=v);let y;return t[7]!==c||t[8]!==l||t[9]!==o||t[10]!==m||t[11]!==d||t[12]!==f||t[13]!==a||t[14]!==_||t[15]!==v||t[16]!==i||t[17]!==g?(y=(0,$.jsx)(`div`,{className:`max-md:hidden`,children:(0,$.jsx)(wE,{threadId:i,projectId:a,messages:o,userTasks:g,effectiveIsStreaming:c,isCreatingProject:l,mode:m,onNewChat:_,onSelectUserTask:d,onToggleUserTaskPinned:f,onRemoveUserTask:v})}),t[7]=c,t[8]=l,t[9]=o,t[10]=m,t[11]=d,t[12]=f,t[13]=a,t[14]=_,t[15]=v,t[16]=i,t[17]=g,t[18]=y):y=t[18],y}function UE(e){let t=(0,Q.c)(25),{activeAskUserPrompt:n,handleAskUserAnswered:r,handleAskUserStop:i,elevated:a,centered:o,embedded:s,planMode:c,setPlanMode:l,onSend:u,onStop:d,isStreaming:f,disabled:p,queuedMessages:m,onRemoveQueuedMessage:h,userTasks:g,handleRemoveUserTask:_,setUserTasks:v}=e;if(n){let e;return t[0]!==n.questions||t[1]!==n.toolCallId||t[2]!==a||t[3]!==r||t[4]!==i?(e=(0,$.jsx)(dC,{toolCallId:n.toolCallId,questions:n.questions,onAnswered:r,onStop:i,elevated:a}),t[0]=n.questions,t[1]=n.toolCallId,t[2]=a,t[3]=r,t[4]=i,t[5]=e):e=t[5],e}let y;t[6]===_?y=t[7]:(y=e=>{e.pinned||_(e.id)},t[6]=_,t[7]=y);let b;t[8]===v?b=t[9]:(b=e=>{v(t=>[...t,e])},t[8]=v,t[9]=b);let x;return t[10]!==o||t[11]!==p||t[12]!==a||t[13]!==s||t[14]!==f||t[15]!==h||t[16]!==u||t[17]!==d||t[18]!==c||t[19]!==m||t[20]!==l||t[21]!==y||t[22]!==b||t[23]!==g?(x=(0,$.jsx)(QS,{planMode:c,setPlanMode:l,onSend:u,onStop:d,isStreaming:f,disabled:p,initialValue:``,queuedMessages:m,onRemoveQueuedMessage:h,isOverlay:!1,centered:o,embedded:s,elevated:a,userTasks:g,onMatchedUserTaskSend:y,onUserTaskCreated:b}),t[10]=o,t[11]=p,t[12]=a,t[13]=s,t[14]=f,t[15]=h,t[16]=u,t[17]=d,t[18]=c,t[19]=m,t[20]=l,t[21]=y,t[22]=b,t[23]=g,t[24]=x):x=t[24],x}function WE(e){let t=(0,Q.c)(67),{messages:n}=e,{paneId:r,conversationId:i,fillPane:a}=Sv(),o=rC(),s=iC(),c=o?.placement===`footer`&&!o.embedded,l=o?.embedded??!1,u=!(c&&s!==`centered`),d=X(YE),f=X(JE),p=X(qE),m=X(KE),[h,g]=Z.useState(!1),{handleSend:_,handleStop:v,getQueuedMessagesForPane:y,handleRemoveQueuedMessage:b,showEmptyBalanceDialog:x,setShowEmptyBalanceDialog:S}=vv(),{userTasks:C,setUserTasks:w,handleNewChat:T,handleSelectUserTask:E,handleRemoveUserTask:D,toggleUserTaskPinned:O,effectiveIsStreaming:k,isStartingNewChat:A}=RC(),[j,M]=(0,Z.useState)(GE),N=LE(n),P;t[0]!==j||t[1]!==N?(P=N&&!j.has(N.toolCallId)?N:null,t[0]=j,t[1]=N,t[2]=P):P=t[2];let F=P,I;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(I=e=>{M(t=>{let n=new Set(t);return n.add(e),n})},t[3]=I):I=t[3];let L=I,R;t[4]!==i||t[5]!==_||t[6]!==r?(R=(e,t,n,a,o,s,c,l)=>_(r,i,e,t,n,a,o,s,c,l),t[4]=i,t[5]=_,t[6]=r,t[7]=R):R=t[7];let z=R,B;t[8]!==v||t[9]!==r?(B=()=>{v(r)},t[8]=v,t[9]=r,t[10]=B):B=t[10];let V=B,H;t[11]!==F||t[12]!==V?(H=()=>{V(),F&&L(F.toolCallId)},t[11]=F,t[12]=V,t[13]=H):H=t[13];let ee=H,te;t[14]!==b||t[15]!==r?(te=e=>{b(r,e)},t[14]=b,t[15]=r,t[16]=te):te=t[16];let ne=te,re=r===`primary`&&f&&(p||n.length>0||C.length>0),ie=r!==`primary`&&f&&n.length>0,ae;t[17]===S?ae=t[18]:(ae=()=>S(!1),t[17]=S,t[18]=ae);let oe;t[19]!==x||t[20]!==ae?(oe=(0,$.jsx)(BE,{open:x,onClose:ae}),t[19]=x,t[20]=ae,t[21]=oe):oe=t[21];let se;t[22]===a?se=t[23]:(se=fy(a),t[22]=a,t[23]=se);let U=!!(re||ie),ce=p??``,le;t[24]===T?le=t[25]:(le=()=>{T()},t[24]=T,t[25]=le);let ue;t[26]!==k||t[27]!==D||t[28]!==E||t[29]!==d||t[30]!==n||t[31]!==r||t[32]!==f||t[33]!==U||t[34]!==ce||t[35]!==le||t[36]!==O||t[37]!==C?(ue=(0,$.jsx)(HE,{visible:U,paneId:r,threadId:f,projectId:ce,messages:n,userTasks:C,effectiveIsStreaming:k,isCreatingProject:d,onNewChat:le,onSelectUserTask:E,onToggleUserTaskPinned:O,onRemoveUserTask:D}),t[26]=k,t[27]=D,t[28]=E,t[29]=d,t[30]=n,t[31]=r,t[32]=f,t[33]=U,t[34]=ce,t[35]=le,t[36]=O,t[37]=C,t[38]=ue):ue=t[38];let W=!f&&!d||m||A,de;t[39]!==y||t[40]!==r?(de=y(r),t[39]=y,t[40]=r,t[41]=de):de=t[41];let fe;t[42]!==F||t[43]!==c||t[44]!==k||t[45]!==u||t[46]!==l||t[47]!==ee||t[48]!==D||t[49]!==ne||t[50]!==z||t[51]!==V||t[52]!==h||t[53]!==w||t[54]!==W||t[55]!==de||t[56]!==C?(fe=(0,$.jsx)(UE,{activeAskUserPrompt:F,handleAskUserAnswered:L,handleAskUserStop:ee,elevated:u,centered:c,embedded:l,planMode:h,setPlanMode:g,onSend:z,onStop:V,isStreaming:k,disabled:W,queuedMessages:de,onRemoveQueuedMessage:ne,userTasks:C,handleRemoveUserTask:D,setUserTasks:w}),t[42]=F,t[43]=c,t[44]=k,t[45]=u,t[46]=l,t[47]=ee,t[48]=D,t[49]=ne,t[50]=z,t[51]=V,t[52]=h,t[53]=w,t[54]=W,t[55]=de,t[56]=C,t[57]=fe):fe=t[57];let pe;t[58]!==ue||t[59]!==fe?(pe=(0,$.jsxs)(`div`,{className:`relative`,children:[ue,fe]}),t[58]=ue,t[59]=fe,t[60]=pe):pe=t[60];let me;t[61]!==pe||t[62]!==se?(me=(0,$.jsx)(`div`,{className:se,children:pe}),t[61]=pe,t[62]=se,t[63]=me):me=t[63];let he;return t[64]!==me||t[65]!==oe?(he=(0,$.jsxs)($.Fragment,{children:[oe,me]}),t[64]=me,t[65]=oe,t[66]=he):he=t[66],he}function GE(){return new Set}function KE(e){return e.selectedThreadId?e.threadToolSessions[e.selectedThreadId]?.kind===`create-project`:!1}function qE(e){return e.selectedProjectId}function JE(e){return e.selectedThreadId}function YE(e){return e.isCreatingProject}function XE(e){let t=e?.querySelector(cy);return t?t.getBoundingClientRect().top:null}function ZE(e,t,n){let r=(0,Q.c)(5),i,a;r[0]!==n||r[1]!==t||r[2]!==e?(i=()=>{let r=e.current;if(!n||!r)return;let i=function(){t.current=XE(r)};i();let a=new ResizeObserver(i);return a.observe(r),window.addEventListener(`resize`,i),()=>{a.disconnect(),window.removeEventListener(`resize`,i)}},a=[n,t,e],r[0]=n,r[1]=t,r[2]=e,r[3]=i,r[4]=a):(i=r[3],a=r[4]),(0,Z.useEffect)(i,a)}function QE(e,t,n){let r=(0,Q.c)(5),i,a;r[0]!==n||r[1]!==t||r[2]!==e?(i=()=>{let r=e.current,i=t.current;if(!n||!r||i===null)return;t.current=null;let a=XE(r);if(a===null||Math.abs(i-a)<1||window.matchMedia(`(prefers-reduced-motion: reduce)`).matches)return;let o=r.animate([{transform:`translateY(${i-a}px)`},{transform:`translateY(0px)`}],{duration:300,easing:oy});return()=>o.cancel()},a=[n,t,e],r[0]=n,r[1]=t,r[2]=e,r[3]=i,r[4]=a):(i=r[3],a=r[4]),(0,Z.useLayoutEffect)(i,a)}var $E;(function(e){e.Dark=`DARK`,e.Light=`LIGHT`,e.Default=`DEFAULT`})($E||={});var eD;(function(e){e.Body=`body`,e.Ionic=`ionic`,e.Native=`native`,e.None=`none`})(eD||={});var tD=Og(`Keyboard`);function nD(e){let t=window.visualViewport;if(!e||!t)return 0;let n=t.height+t.offsetTop,r=e.getBoundingClientRect().bottom;return Math.max(0,Math.round(r-n))}function rD(e,t){return vi()?t:e>0?e:t}function iD(e,t){let n=(0,Q.c)(6),[r,i]=(0,Z.useState)(0),[a,o]=(0,Z.useState)(0),s=t?.onlyWhenOverlapping??!1,c,l;if(n[0]===e?(c=n[1],l=n[2]):(c=()=>{let t=function(){i(nD(e.current))},n=function(){t(),requestAnimationFrame(t)};n();let r=window.visualViewport;r?.addEventListener(`resize`,n),r?.addEventListener(`scroll`,n),window.addEventListener(`resize`,n);let a=[];return Za()&&a.push(tD.addListener(`keyboardWillShow`,e=>{o(e.keyboardHeight)}),tD.addListener(`keyboardDidShow`,e=>{o(e.keyboardHeight)}),tD.addListener(`keyboardWillHide`,()=>{o(0)}),tD.addListener(`keyboardDidHide`,()=>{o(0)})),()=>{r?.removeEventListener(`resize`,n),r?.removeEventListener(`scroll`,n),window.removeEventListener(`resize`,n);for(let e of a)e.then(aD)}},l=[e],n[0]=e,n[1]=c,n[2]=l),(0,Z.useEffect)(c,l),s&&r<=0)return 0;let u;return n[3]!==r||n[4]!==a?(u=rD(r,a),n[3]=r,n[4]=a,n[5]=u):u=n[5],u}function aD(e){e.remove()}function oD(e){let t=(0,Q.c)(53),{paneId:n,inline:r}=e,i=r===void 0?!1:r,a=X(cD),o=X(sD),s=n??o,c;t[0]===s?c=t[1]:(c=e=>gs(e,s),t[0]=s,t[1]=c);let l=X(c),u;t[2]===s?u=t[3]:(u=e=>ys(e,s),t[2]=s,t[3]=u);let d=X(u),f=rC(),p=iC(),m=aC()?sy:void 0,h=f?.overlayRef,g=(0,Z.useRef)(null),_=(0,Z.useRef)(null),v=f?.placement??`overlay`,y=f?.embedded??!1,b=y?g:h,x=b??g,S=f?.centeredComposerTopRef??_,C;t[4]===b?C=t[5]:(C=b??{current:null},t[4]=b,t[5]=C);let w=iD(C);if(ZE(x,S,i&&p===`centered`),QE(x,S,!i&&p===`moving-to-footer`),!a||!b)return null;let T;t[6]===d?T=t[7]:(T=(0,$.jsx)(LC,{children:(0,$.jsx)(VE,{messages:d})}),t[6]=d,t[7]=T);let E;t[8]!==l||t[9]!==y||t[10]!==s||t[11]!==T?(E=(0,$.jsx)(bv,{paneId:s,conversationId:l,fillPane:y,children:T},s),t[8]=l,t[9]=y,t[10]=s,t[11]=T,t[12]=E):E=t[12];let D=E;if(v===`footer`){if(y){let e;t[13]===w?e=t[14]:(e={paddingBottom:w},t[13]=w,t[14]=e);let n;t[15]===D?n=t[16]:(n=(0,$.jsx)(`div`,{className:`pointer-events-auto`,children:D}),t[15]=D,t[16]=n);let r;return t[17]!==b||t[18]!==e||t[19]!==n?(r=(0,$.jsx)(`div`,{ref:b,className:`mx-0.5 mb-2 shrink-0 border-t border-border bg-background`,style:e,children:n}),t[17]=b,t[18]=e,t[19]=n,t[20]=r):r=t[20],r}if(i){let e;t[21]===m?e=t[22]:(e=G(`w-full min-w-0 shrink-0`,m),t[21]=m,t[22]=e);let n;t[23]===w?n=t[24]:(n={paddingBottom:w},t[23]=w,t[24]=n);let r;t[25]===D?r=t[26]:(r=(0,$.jsx)(`div`,{className:`pointer-events-auto w-full`,children:D}),t[25]=D,t[26]=r);let i;return t[27]!==b||t[28]!==e||t[29]!==n||t[30]!==r?(i=(0,$.jsx)(`div`,{ref:b,className:e,style:n,children:r}),t[27]=b,t[28]=e,t[29]=n,t[30]=r,t[31]=i):i=t[31],i}let e;t[32]===m?e=t[33]:(e=G(`shrink-0 bg-transparent max-md:px-2`,m),t[32]=m,t[33]=e);let n;t[34]===w?n=t[35]:(n={paddingBottom:w},t[34]=w,t[35]=n);let r;t[36]===D?r=t[37]:(r=(0,$.jsx)(`div`,{className:`relative mx-auto w-full max-w-3xl min-w-0 px-6`,children:(0,$.jsx)(`div`,{className:`pointer-events-auto pt-2 pb-6`,children:D})}),t[36]=D,t[37]=r);let a;return t[38]!==b||t[39]!==e||t[40]!==n||t[41]!==r?(a=(0,$.jsx)(`div`,{ref:b,className:e,style:n,children:r}),t[38]=b,t[39]=e,t[40]=n,t[41]=r,t[42]=a):a=t[42],a}let O;t[43]===w?O=t[44]:(O={bottom:w},t[43]=w,t[44]=O);let k,A;t[45]===Symbol.for(`react.memo_cache_sentinel`)?(k=dy(!1),A=(0,$.jsx)(`div`,{className:`h-0 bg-gradient-to-t from-background to-transparent md:h-16`}),t[45]=k,t[46]=A):(k=t[45],A=t[46]);let j;t[47]===D?j=t[48]:(j=(0,$.jsxs)(`div`,{className:k,children:[A,(0,$.jsx)(`div`,{className:`pointer-events-auto bg-background pb-2 md:pb-4`,children:D})]}),t[47]=D,t[48]=j);let M;return t[49]!==b||t[50]!==j||t[51]!==O?(M=(0,$.jsx)(`div`,{ref:b,className:`pointer-events-none absolute inset-x-0 z-30 max-md:px-2`,style:O,children:j}),t[49]=b,t[50]=j,t[51]=O,t[52]=M):M=t[52],M}function sD(e){return e.focusedPane}function cD(e){return e.selectedThreadId}function lD(e){let t=[`What would you like to add to ${e}?`,`What should we build in ${e}?`,`What changes do you want to make to ${e}?`,`What feature should we add to ${e}?`,`What would you like to fix in ${e}?`,`What are we working on in ${e}?`,`What's next for ${e}?`,`What should we improve in ${e}?`,`How can we make ${e} better?`,`What would you like to change in ${e}?`,`What should we ship in ${e} next?`];return t[Math.floor(Math.random()*t.length)]}function uD(e){let t=(0,Q.c)(47),{project:n}=e,r=mC(),{isRunning:i}=nE(n?.projectId),{startServer:a}=ZT(),o=rC(),s=o!=null&&!o.embedded;n?.name;let c=n?.name??`your project`,l;t[0]===c?l=t[1]:(l=lD(c),t[0]=c,t[1]=l);let u=l,d=!i&&n?.runCommand,f;t[2]!==n||t[3]!==a?(f=function(){n&&a(n)},t[2]=n,t[3]=a,t[4]=f):f=t[4];let p=f;if(r&&n){let e;t[5]===n?e=t[6]:(e=(0,$.jsx)(Yc,{project:n,className:`h-20 w-20`,iconClassName:`h-8 w-8`}),t[5]=n,t[6]=e);let r;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(r=G(U.pageTitle,`tracking-tight text-balance text-foreground`),t[7]=r):r=t[7];let i;t[8]===n.name?i=t[9]:(i=(0,$.jsx)(`h1`,{className:r,children:n.name}),t[8]=n.name,t[9]=i);let a;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(a=G(U.pageSubtitle,`mt-2`),t[10]=a):a=t[10];let o;t[11]===u?o=t[12]:(o=(0,$.jsx)(`p`,{className:a,children:u}),t[11]=u,t[12]=o);let c;t[13]!==i||t[14]!==o?(c=(0,$.jsxs)(`div`,{children:[i,o]}),t[13]=i,t[14]=o,t[15]=c):c=t[15];let l;t[16]!==p||t[17]!==d?(l=d?(0,$.jsx)(`button`,{type:`button`,onClick:p,className:G(U.label,`inline-flex items-center gap-2 rounded-full bg-primary px-4 py-2 text-primary-foreground transition-colors hover:bg-primary/90`),children:`Start App`}):null,t[16]=p,t[17]=d,t[18]=l):l=t[18];let f;t[19]!==l||t[20]!==e||t[21]!==c?(f=(0,$.jsxs)(`div`,{className:`flex w-full flex-col items-center gap-6`,children:[e,c,l]}),t[19]=l,t[20]=e,t[21]=c,t[22]=f):f=t[22];let m;t[23]===s?m=t[24]:(m=s?(0,$.jsx)(`div`,{className:`mt-16 w-full`,children:(0,$.jsx)(oD,{inline:!0})}):null,t[23]=s,t[24]=m);let h;return t[25]!==f||t[26]!==m?(h=(0,$.jsx)(`div`,{className:`relative flex h-full min-h-0 flex-col items-center justify-center overflow-y-auto animate-in fade-in duration-500`,children:(0,$.jsxs)(`div`,{className:`flex w-full max-w-4xl flex-col items-center px-6 py-10 text-center`,children:[f,m]})}),t[25]=f,t[26]=m,t[27]=h):h=t[27],h}let m;t[28]===Symbol.for(`react.memo_cache_sentinel`)?(m=(0,$.jsx)(`img`,{src:`/tarsk-color.svg`,alt:`Tarsk`,className:`h-16 w-16 rounded-lg`}),t[28]=m):m=t[28];let h;t[29]===Symbol.for(`react.memo_cache_sentinel`)?(h=G(U.pageTitle,`tracking-tight text-balance text-foreground`),t[29]=h):h=t[29];let g=n?.name??`Project`,_;t[30]===g?_=t[31]:(_=(0,$.jsx)(`h1`,{className:h,children:g}),t[30]=g,t[31]=_);let v;t[32]===Symbol.for(`react.memo_cache_sentinel`)?(v=G(U.pageSubtitle,`mt-2`),t[32]=v):v=t[32];let y;t[33]===u?y=t[34]:(y=(0,$.jsx)(`p`,{className:v,children:u}),t[33]=u,t[34]=y);let b;t[35]!==_||t[36]!==y?(b=(0,$.jsxs)(`div`,{className:`text-center`,children:[_,y]}),t[35]=_,t[36]=y,t[37]=b):b=t[37];let x;t[38]!==p||t[39]!==d?(x=d&&(0,$.jsx)(`button`,{type:`button`,onClick:p,className:G(U.label,`inline-flex items-center gap-2 rounded-full bg-primary px-4 py-2 text-primary-foreground transition-colors hover:bg-primary/90`),children:`Start App`}),t[38]=p,t[39]=d,t[40]=x):x=t[40];let S;t[41]===s?S=t[42]:(S=s?(0,$.jsx)(oD,{inline:!0}):null,t[41]=s,t[42]=S);let C;return t[43]!==b||t[44]!==x||t[45]!==S?(C=(0,$.jsx)(`div`,{className:`flex flex-1 flex-col items-center justify-center`,children:(0,$.jsxs)(`div`,{className:`flex w-full max-w-3xl flex-col items-center gap-6 px-4`,children:[m,b,x,S]})}),t[43]=b,t[44]=x,t[45]=S,t[46]=C):C=t[46],C}function dD(e,t,n){return e.length+t.length+n}function fD({virtuosoRef:e,selectedThreadId:t,paneId:n,messagesLoaded:r,messageCount:i,isStreaming:a,hasPendingMessage:o}){let s=Vs(),c=(0,Z.useRef)(0),l=(0,Z.useRef)(!1),u=(0,Z.useRef)(!1),d=(0,Z.useRef)(!1),f=(0,Z.useRef)(0),p=(0,Z.useRef)(null),m=(0,Z.useCallback)(()=>{t&&e.current?.getState(e=>{Wo(t,e.scrollTop)})},[t,e]),h=(0,Z.useRef)(m);h.current=m;function g(){d.current&&h.current()}let _=(0,Z.useCallback)(t=>{f.current&&cancelAnimationFrame(f.current),f.current=requestAnimationFrame(()=>{e.current?.scrollTo({top:2**53-1,behavior:t}),f.current=0})},[e]);(0,Z.useEffect)(()=>{function e(){g()}return window.addEventListener(`beforeunload`,e),()=>{window.removeEventListener(`beforeunload`,e)}},[t]),(0,Z.useEffect)(()=>{let e=setInterval(()=>{g()},5e3);return()=>clearInterval(e)},[t]),(0,Z.useEffect)(()=>()=>{p.current&&clearTimeout(p.current)},[]),(0,Z.useEffect)(()=>{u.current=!1,d.current=!1,c.current=0},[t]),(0,Z.useEffect)(()=>{if(!t||!r||i===0||u.current)return;u.current=!0,c.current=i;let n=Ci(t);if(n!==null&&n>0){requestAnimationFrame(()=>{requestAnimationFrame(()=>{e.current?.scrollTo({top:n,behavior:`auto`}),d.current=!0})});return}d.current=!0},[t,r,i,e]),(0,Z.useEffect)(()=>{if(!u.current)return;let e=i>c.current,t=l.current&&!a;return(a||o||e||t)&&_(t?`smooth`:`auto`),c.current=i,l.current=a,()=>{f.current&&=(cancelAnimationFrame(f.current),0)}},[a,o,i,_]),(0,Z.useEffect)(()=>{if(!t||!(a||o))return;let e=As(s.getState().threadStreamingStates,t,n),r=dD(e.streamingContent,e.streamingThinking,e.streamingSegments.length);return s.subscribe(()=>{if(!u.current)return;let e=As(s.getState().threadStreamingStates,t,n),i=dD(e.streamingContent,e.streamingThinking,e.streamingSegments.length);i!==r&&(r=i,_(`auto`))})},[s,t,n,a,o,_]);function v(){p.current&&clearTimeout(p.current),p.current=setTimeout(()=>{g(),p.current=null},150)}function y(e){e||g()}return{onRangeChanged:v,onScrollingStateChange:y}}function pD(e){return e.isCreatingProject||e.streamingSegmentCount>0?!0:e.lastMessageSender===`user`}function mD(e){if(e.isUser)return e.hasCheckpointRef?e.isStreaming||e.hasPendingMessage||e.isCreatingProject||e.isProcessingThread?`Restore unavailable while this thread is still processing.`:`Restore checkpoint`:`Restore unavailable: no checkpoint was created for this prompt.`}function hD(e){return{bottomInset:e.bottomInset,columnClassName:e.columnClassName,isStreaming:e.isStreaming,isCreatingProject:e.isCreatingProject,isProcessingThread:e.isProcessingThread,hasPendingMessage:e.hasPendingMessage,isAutoRouting:e.isAutoRouting,hasActiveToolSession:e.hasActiveToolSession,selectedProjectId:e.selectedProjectId,selectedThreadId:e.selectedThreadId,totalMessages:e.totalMessages,lastMessageSender:e.lastMessageSender,error:e.error,onClearError:e.onClearError,showCheckpointRestore:e.showCheckpointRestore,getCheckpointTooltip:e.getCheckpointTooltip}}function gD(e){let t=(0,Z.forwardRef)((t,n)=>{let r=(0,Q.c)(9),i,a,o;r[0]===t?(i=r[1],a=r[2],o=r[3]):({style:o,children:i,...a}=t,r[0]=t,r[1]=i,r[2]=a,r[3]=o);let s;return r[4]!==i||r[5]!==a||r[6]!==n||r[7]!==o?(s=(0,$.jsx)(`div`,{ref:n,style:o,...a,className:e,children:i}),r[4]=i,r[5]=a,r[6]=n,r[7]=o,r[8]=s):s=r[8],s});return t.displayName=`MessageList`,t}function _D(e,t){return t.length>0||e.isCreatingProject&&!e.hasActiveToolSession||e.isProcessingThread&&(e.isStreaming||e.hasPendingMessage)}function vD(e,t){return e.isAutoRouting?!0:!_D(e,t)||!(e.isStreaming||e.isCreatingProject||e.isProcessingThread)?!1:pD({isCreatingProject:e.isCreatingProject,streamingSegmentCount:t.length,lastMessageSender:e.lastMessageSender})}function yD(e,t){return e.isAutoRouting?!0:!(e.isStreaming||e.hasPendingMessage)||Os(t)?!1:pD({isCreatingProject:e.isCreatingProject,streamingSegmentCount:t.length,lastMessageSender:e.lastMessageSender})}var bD=[];function xD(e){let t=(0,Q.c)(38),{context:n}=e,{paneId:r}=Sv(),i;t[0]!==n?.selectedThreadId||t[1]!==r?(i=e=>As(e.threadStreamingStates,n?.selectedThreadId,r),t[0]=n?.selectedThreadId,t[1]=r,t[2]=i):i=t[2];let a=X(i);if(!n)return null;let{bottomInset:o,isCreatingProject:s,isProcessingThread:c,isAutoRouting:l,selectedProjectId:u,selectedThreadId:d,totalMessages:f,error:p,onClearError:m}=n,h=n.isStreaming||s||c?a.streamingSegments:bD,g;t[3]!==n||t[4]!==h?(g=vD(n,h),t[3]=n,t[4]=h,t[5]=g):g=t[5];let _=g,v;t[6]!==n||t[7]!==h?(v=yD(n,h),t[6]=n,t[7]=h,t[8]=v):v=t[8];let y=v,b;t[9]!==l||t[10]!==h?(b=l?null:Ls(Bs(h)),t[9]=l,t[10]=h,t[11]=b):b=t[11];let x=l?ze:b??void 0,S;t[12]===o?S=t[13]:(S={paddingBottom:o},t[12]=o,t[13]=S);let C;t[14]!==l||t[15]!==s||t[16]!==c||t[17]!==h||t[18]!==u||t[19]!==d||t[20]!==_||t[21]!==y||t[22]!==a||t[23]!==f?(C=_&&(0,$.jsx)($v,{segments:h,model:a.streamingModel,mode:a.streamingAgentMode,threadId:d,projectId:u,isCreatingProject:s,isProcessingThread:c&&!l,totalMessages:f,showProcessingLine:y}),t[14]=l,t[15]=s,t[16]=c,t[17]=h,t[18]=u,t[19]=d,t[20]=_,t[21]=y,t[22]=a,t[23]=f,t[24]=C):C=t[24];let w;t[25]!==x||t[26]!==_||t[27]!==y?(w=y&&(0,$.jsx)(`div`,{className:G(`px-4 pb-4`,_?`pt-0`:`pt-2`),children:(0,$.jsx)(ry,{active:y,label:x})}),t[25]=x,t[26]=_,t[27]=y,t[28]=w):w=t[28];let T;t[29]!==p||t[30]!==m?(T=p&&(0,$.jsxs)(`div`,{className:`mx-4 my-2`,children:[(0,$.jsx)(mo,{variant:`error`,className:`mb-0`,children:p}),(0,$.jsx)(`button`,{type:`button`,className:G(U.compact,`mt-1 text-destructive underline underline-offset-2 hover:text-destructive/80`),onClick:m,children:`Dismiss`})]}),t[29]=p,t[30]=m,t[31]=T):T=t[31];let E;return t[32]!==n.columnClassName||t[33]!==S||t[34]!==C||t[35]!==w||t[36]!==T?(E=(0,$.jsxs)(`div`,{className:n.columnClassName,style:S,children:[C,w,T]}),t[32]=n.columnClassName,t[33]=S,t[34]=C,t[35]=w,t[36]=T,t[37]=E):E=t[37],E}function SD(e,t,n){let r=e===n.totalMessages-1,i=!n.isStreaming&&!n.isProcessingThread&&!n.hasPendingMessage&&!n.isCreatingProject,a=r&&t.sender===`agent`&&!t.isThinking&&i;return(0,$.jsx)(Xv,{message:t,threadId:n.selectedThreadId,messageIndex:e,showCheckpointRestore:n.showCheckpointRestore(t),checkpointRestoreTooltip:n.getCheckpointTooltip(t),showFinalProseCopy:a})}function CD(e){let t=(0,Q.c)(10),{projects:n,projectsLoading:r,onSelectThread:i,onCreateThread:a,onConnectRepo:o,onNewApp:s,onOpenFolder:c}=e,l=`flex min-h-0 flex-1 self-stretch transition-opacity duration-500 ease-in-out ${r?`opacity-0`:`opacity-100`}`,u;t[0]!==o||t[1]!==a||t[2]!==s||t[3]!==c||t[4]!==i||t[5]!==n?(u=(0,$.jsx)(iy,{projects:n,onSelectProject:i,onCreateThread:a,onConnectRepo:o,onNewApp:s,onOpenFolder:c}),t[0]=o,t[1]=a,t[2]=s,t[3]=c,t[4]=i,t[5]=n,t[6]=u):u=t[6];let d;return t[7]!==l||t[8]!==u?(d=(0,$.jsx)(`div`,{className:`flex h-full min-h-0 flex-1 flex-col items-center overflow-hidden`,children:(0,$.jsx)(`div`,{className:l,children:u})}),t[7]=l,t[8]=u,t[9]=d):d=t[9],d}function wD(e){let t=(0,Q.c)(2),{project:n}=e,r;return t[0]===n?r=t[1]:(r=(0,$.jsx)(uD,{project:n}),t[0]=n,t[1]=r),r}function TD(e){let t=(0,Q.c)(19),{composerPhase:n,selectedThreadId:r,virtuosoRef:i,scrollParent:a,onScrollParentChange:o,messages:s,virtuosoContext:c,virtuosoComponents:l,onAtBottomChange:u,onAtTopChange:d,onRangeChanged:f,onScrollingStateChange:p}=e,m=n===`moving-to-footer`&&`animate-in fade-in duration-300 ease-out`,h;t[0]===m?h=t[1]:(h=G(`h-full overflow-hidden`,m),t[0]=m,t[1]=h);let g=r??void 0,_=a??void 0,v;t[2]!==s||t[3]!==u||t[4]!==d||t[5]!==f||t[6]!==p||t[7]!==g||t[8]!==_||t[9]!==l||t[10]!==c||t[11]!==i?(v=(0,$.jsx)(hr,{ref:i,customScrollParent:_,data:s,computeItemKey:ED,context:c,itemContent:SD,overscan:500,components:l,atBottomStateChange:u,atTopStateChange:d,rangeChanged:f,isScrolling:p},g),t[2]=s,t[3]=u,t[4]=d,t[5]=f,t[6]=p,t[7]=g,t[8]=_,t[9]=l,t[10]=c,t[11]=i,t[12]=v):v=t[12];let y;t[13]!==o||t[14]!==v?(y=(0,$.jsx)(za,{className:`h-full`,viewportRef:o,children:v}),t[13]=o,t[14]=v,t[15]=y):y=t[15];let b;return t[16]!==h||t[17]!==y?(b=(0,$.jsx)(`div`,{className:h,children:y}),t[16]=h,t[17]=y,t[18]=b):b=t[18],b}function ED(e,t){return t.messageId}function DD(e){return!e.hideEmptyState&&e.messageCount===0&&!e.isStreaming&&!e.isCreatingProject&&!e.selectedThreadId}function OD(e){return!e.hideEmptyState&&e.messagesLoaded&&e.messageCount===0&&!e.isStreaming&&!e.isCreatingProject&&!e.isProcessingThread&&!e.hasPendingMessage&&!!e.selectedThreadId}function kD(e){let t=e.projects.find(t=>t.projectId===e.selectedProjectId);return{showWelcome:DD(e),showEmptyThreadPlaceholder:OD(e),selectedProject:t}}var AD=(0,Z.forwardRef)(function(e,t){let n=(0,Q.c)(75),{bottomInset:r,messages:i,isStreaming:a,isCreatingProject:o,isProcessingThread:s,hasPendingMessage:c,isAutoRouting:l,selectedThreadId:u,selectedProjectId:d,projects:f,projectsLoading:p,messagesLoaded:m,onSelectThread:h,onCreateThread:g,onConnectRepo:_,onNewApp:v,onOpenFolder:y,error:b,onClearError:x,onAtBottomChange:S,onAtTopChange:C,hideEmptyState:w}=e,T=r===void 0?0:r,E=w===void 0?!1:w,{fillPane:D,paneId:O}=Sv(),k=iC(),A;n[0]===D?A=n[1]:(A=uy(D),n[0]=D,n[1]=A);let j=A,M;n[2]===u?M=n[3]:(M=e=>u?!!e.threadToolSessions[u]:!1,n[2]=u,n[3]=M);let N=X(M),[P,F]=(0,Z.useState)(null),I=(0,Z.useRef)(null),L;n[4]===j?L=n[5]:(L=gD(j),n[4]=j,n[5]=L);let R;n[6]===L?R=n[7]:(R={List:L,Footer:xD},n[6]=L,n[7]=R);let z=R,B;n[8]===Symbol.for(`react.memo_cache_sentinel`)?(B=()=>({scrollToBottom:()=>{I.current?.scrollTo({top:2**53-1,behavior:`smooth`})},scrollToTop:()=>{I.current?.scrollTo({top:0,behavior:`smooth`})}}),n[8]=B):B=n[8],(0,Z.useImperativeHandle)(t,B);let V;n[9]!==c||n[10]!==a||n[11]!==i.length||n[12]!==m||n[13]!==O||n[14]!==u?(V={virtuosoRef:I,selectedThreadId:u,paneId:O,messagesLoaded:m,messageCount:i.length,isStreaming:a,hasPendingMessage:c},n[9]=c,n[10]=a,n[11]=i.length,n[12]=m,n[13]=O,n[14]=u,n[15]=V):V=n[15];let{onRangeChanged:H,onScrollingStateChange:ee}=fD(V),te;n[16]!==c||n[17]!==E||n[18]!==o||n[19]!==s||n[20]!==a||n[21]!==i.length||n[22]!==m||n[23]!==f||n[24]!==d||n[25]!==u?(te=kD({hideEmptyState:E,messagesLoaded:m,messageCount:i.length,isStreaming:a,isCreatingProject:o,isProcessingThread:s,hasPendingMessage:c,selectedThreadId:u,selectedProjectId:d,projects:f}),n[16]=c,n[17]=E,n[18]=o,n[19]=s,n[20]=a,n[21]=i.length,n[22]=m,n[23]=f,n[24]=d,n[25]=u,n[26]=te):te=n[26];let{showWelcome:ne,showEmptyThreadPlaceholder:re,selectedProject:ie}=te,ae=i.length>0?i[i.length-1].sender:null,oe;n[27]!==c||n[28]!==o||n[29]!==s||n[30]!==a?(oe=function(e){return e.sender===`user`&&!!e.checkpointRef&&!a&&!c&&!o&&!s},n[27]=c,n[28]=o,n[29]=s,n[30]=a,n[31]=oe):oe=n[31];let se=oe,U;n[32]!==c||n[33]!==o||n[34]!==s||n[35]!==a?(U=function(e){return mD({isUser:e.sender===`user`,hasCheckpointRef:!!e.checkpointRef,isStreaming:a,hasPendingMessage:c,isCreatingProject:o,isProcessingThread:s})},n[32]=c,n[33]=o,n[34]=s,n[35]=a,n[36]=U):U=n[36];let ce=U,le;n[37]!==T||n[38]!==j||n[39]!==b||n[40]!==ce||n[41]!==N||n[42]!==c||n[43]!==l||n[44]!==o||n[45]!==s||n[46]!==a||n[47]!==ae||n[48]!==i.length||n[49]!==x||n[50]!==d||n[51]!==u||n[52]!==se?(le=hD({bottomInset:T,columnClassName:j,isStreaming:a,isCreatingProject:o,isProcessingThread:s,hasPendingMessage:c,isAutoRouting:l,selectedProjectId:d,selectedThreadId:u,totalMessages:i.length,lastMessageSender:ae,error:b,onClearError:x,hasActiveToolSession:N,showCheckpointRestore:se,getCheckpointTooltip:ce}),n[37]=T,n[38]=j,n[39]=b,n[40]=ce,n[41]=N,n[42]=c,n[43]=l,n[44]=o,n[45]=s,n[46]=a,n[47]=ae,n[48]=i.length,n[49]=x,n[50]=d,n[51]=u,n[52]=se,n[53]=le):le=n[53];let ue=le;if(ne){let e;return n[54]!==_||n[55]!==g||n[56]!==v||n[57]!==y||n[58]!==h||n[59]!==f||n[60]!==p?(e=(0,$.jsx)(CD,{projects:f,projectsLoading:p,onSelectThread:h,onCreateThread:g,onConnectRepo:_,onNewApp:v,onOpenFolder:y}),n[54]=_,n[55]=g,n[56]=v,n[57]=y,n[58]=h,n[59]=f,n[60]=p,n[61]=e):e=n[61],e}if(re){let e;return n[62]===ie?e=n[63]:(e=(0,$.jsx)(wD,{project:ie}),n[62]=ie,n[63]=e),e}let W;return n[64]!==k||n[65]!==i||n[66]!==S||n[67]!==C||n[68]!==H||n[69]!==ee||n[70]!==P||n[71]!==u||n[72]!==z||n[73]!==ue?(W=(0,$.jsx)(TD,{composerPhase:k,selectedThreadId:u,virtuosoRef:I,scrollParent:P,onScrollParentChange:F,messages:i,virtuosoContext:ue,virtuosoComponents:z,onAtBottomChange:S,onAtTopChange:C,onRangeChanged:H,onScrollingStateChange:ee}),n[64]=k,n[65]=i,n[66]=S,n[67]=C,n[68]=H,n[69]=ee,n[70]=P,n[71]=u,n[72]=z,n[73]=ue,n[74]=W):W=n[74],W}),jD=Ut(`app.use-pane-chat-history.hook`);function MD(e){let t=(0,Q.c)(9),{paneId:n,conversationId:r}=e,i=Ks(),a=X(ND),o;t[0]===n?o=t[1]:(o=e=>n===Ms||!!e.extraChatPanes[n],t[0]=n,t[1]=o);let s=X(o),c,l;t[2]!==r||t[3]!==i||t[4]!==s||t[5]!==n||t[6]!==a?(c=()=>{if(n===Ms||!s||!a||!r)return;let e=a,t=r,o=n,c=!1;return(async function(){try{let n=await ci(e,t);if(c)return;i({type:Y.SetPaneMessages,paneId:o,messages:n.messages})}catch(e){let t=e;jD.error(`Failed to load pane chat history:`,t),c||i({type:Y.SetPaneMessages,paneId:o,messages:[]})}})(),()=>{c=!0}},l=[r,i,s,n,a],t[2]=r,t[3]=i,t[4]=s,t[5]=n,t[6]=a,t[7]=c,t[8]=l):(c=t[7],l=t[8]),(0,Z.useEffect)(c,l)}function ND(e){return e.selectedThreadId}var PD=4,FD=8,ID=64,LD=`(max-width: 767px)`;function RD(){return window.matchMedia(LD).matches?PD:ID}function zD(e,t){let n=e.getBoundingClientRect().bottom,r=t.getBoundingClientRect().top,i=t.querySelector(`[data-chat-toolbar]`);i&&i.getBoundingClientRect().height>0&&(r=Math.min(r,i.getBoundingClientRect().top));let a=Math.max(0,Math.ceil(n-r)),o=window.matchMedia(LD).matches?PD:0,s=window.matchMedia(LD).matches?0:FD;return Math.max(a+o+s,RD())}function BD(e,t,n){let r=(0,Q.c)(5),[i,a]=(0,Z.useState)(0),o,s;return r[0]!==t||r[1]!==e||r[2]!==n?(o=()=>{if(!n){a(0);return}let r=e.current,i=t.current;if(!r||!i){a(RD());return}let o=function(){let n=e.current,r=t.current;!n||!r||a(zD(n,r))};o();let s=new ResizeObserver(o);s.observe(r),s.observe(i);let c=i.querySelector(`[data-chat-toolbar]`);c&&s.observe(c);let l=new MutationObserver(o);l.observe(i,{childList:!0,subtree:!0,attributes:!0,attributeFilter:[`class`,`style`,`hidden`]}),window.addEventListener(`resize`,o);let u=window.visualViewport;return u?.addEventListener(`resize`,o),u?.addEventListener(`scroll`,o),()=>{s.disconnect(),l.disconnect(),window.removeEventListener(`resize`,o),u?.removeEventListener(`resize`,o),u?.removeEventListener(`scroll`,o)}},s=[e,t,n],r[0]=t,r[1]=e,r[2]=n,r[3]=o,r[4]=s):(o=r[3],s=r[4]),(0,Z.useEffect)(o,s),i}var VD=Ut(`app.chat-pane.ui`);function HD(e,t){let n=(0,Q.c)(42),r=Ks(),{paneErrors:i,setPaneError:a}=vv(),o=X(tO),s=X(eO),c=X($D),l=X(QD),u=X(ZD),d=X(XD),f=X(YD),p=X(JD),m=X(qD),h=X(KD),g;n[0]!==e||n[1]!==o?(g=t=>o?As(t.threadStreamingStates,o,e).isStreaming:!1,n[0]=e,n[1]=o,n[2]=g):g=n[2];let _=X(g),v;n[3]!==e||n[4]!==o?(v=t=>Ys(t.pendingAutoRoutes,o,e),n[3]=e,n[4]=o,n[5]=v):v=n[5];let y=X(v),b=X(GD),x=X(WD),S=X(UD),C;n[6]!==t||n[7]!==e?(C={paneId:e,conversationId:t},n[6]=t,n[7]=e,n[8]=C):C=n[8],MD(C);let w;n[9]!==x||n[10]!==e||n[11]!==b?(w=e===`primary`?b:x[e]?.messages??[],n[9]=x,n[10]=e,n[11]=b,n[12]=w):w=n[12];let T=w,E;n[13]!==y||n[14]!==T?(E=y?[...T,Yy(y)]:T,n[13]=y,n[14]=T,n[15]=E):E=n[15];let D=E,O=e===`primary`?S:x[e]?.messagesLoaded??!1,k;n[16]!==f||n[17]!==e||n[18]!==d||n[19]!==o?(k=vs(f,d,o,e),n[16]=f,n[17]=e,n[18]=d,n[19]=o,n[20]=k):k=n[20];let A=k,j;n[21]!==i||n[22]!==e||n[23]!==o?(j=o?i[Es(o,e)]??null:null,n[21]=i,n[22]=e,n[23]=o,n[24]=j):j=n[24];let M=j,N=e===`primary`&&h?.threadId===o,P;return n[25]!==m||n[26]!==r||n[27]!==p||n[28]!==N||n[29]!==A||n[30]!==u||n[31]!==D||n[32]!==O||n[33]!==M||n[34]!==_||n[35]!==y||n[36]!==c||n[37]!==l||n[38]!==s||n[39]!==o||n[40]!==a?(P={dispatch:r,setPaneError:a,selectedThreadId:o,selectedProjectId:s,projects:c,projectsLoading:l,isCreatingProject:u,pendingAutoRoute:y,messages:D,messagesLoaded:O,hasProcessingThread:A,paneError:M,hasPendingMessage:N,paneIsStreaming:_,focusedPaneId:p,completedPaneIds:m},n[25]=m,n[26]=r,n[27]=p,n[28]=N,n[29]=A,n[30]=u,n[31]=D,n[32]=O,n[33]=M,n[34]=_,n[35]=y,n[36]=c,n[37]=l,n[38]=s,n[39]=o,n[40]=a,n[41]=P):P=n[41],P}function UD(e){return e.messagesLoaded}function WD(e){return e.extraChatPanes}function GD(e){return e.messages}function KD(e){return e.pendingChatMessage}function qD(e){return e.completedPaneIds}function JD(e){return e.focusedPane}function YD(e){return e.activeStreamPane}function XD(e){return e.processingThreadIds}function ZD(e){return e.isCreatingProject}function QD(e){return e.projectsLoading}function $D(e){return e.projects}function eO(e){return e.selectedProjectId}function tO(e){return e.selectedThreadId}function nO(e){let t=(0,Q.c)(5),{messagesRef:n,isVisible:r}=e;if(!r)return null;let i;t[0]===n?i=t[1]:(i=()=>n.current?.scrollToTop(),t[0]=n,t[1]=i);let a;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(a=(0,$.jsx)(Yt,{className:`h-4 w-4`}),t[2]=a):a=t[2];let o;return t[3]===i?o=t[4]:(o=(0,$.jsx)(`div`,{className:`pointer-events-none absolute inset-x-0 top-3 z-20 flex justify-center`,children:(0,$.jsx)(Hr,{variant:`outline`,size:`icon-md`,onClick:i,className:`pointer-events-auto bg-background shadow-md`,"aria-label":`Scroll to top`,children:a})}),t[3]=i,t[4]=o),o}function rO(e){let t=(0,Q.c)(8),{messagesRef:n,isVisible:r,usesOverlayInput:i}=e;if(!r)return null;let a=`pointer-events-none absolute inset-x-0 z-20 flex justify-center ${i?`bottom-24`:`bottom-2`}`,o;t[0]===n?o=t[1]:(o=()=>n.current?.scrollToBottom(),t[0]=n,t[1]=o);let s;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,$.jsx)(tn,{className:`h-4 w-4`}),t[2]=s):s=t[2];let c;t[3]===o?c=t[4]:(c=(0,$.jsx)(Hr,{variant:`outline`,size:`icon-md`,onClick:o,className:`pointer-events-auto bg-background shadow-md`,"aria-label":`Scroll to bottom`,children:s}),t[3]=o,t[4]=c);let l;return t[5]!==a||t[6]!==c?(l=(0,$.jsx)(`div`,{className:a,children:c}),t[5]=a,t[6]=c,t[7]=l):l=t[7],l}function iO({paneId:e,conversationId:t,onCreateThread:n,showEmptyState:r=e===`primary`,fillPane:i=!1,hideInput:a=!0,onConnectRepo:o=()=>{},onNewApp:s=()=>{},onOpenFolder:c=()=>{}}){let{dispatch:l,setPaneError:u,selectedThreadId:d,selectedProjectId:f,projects:p,projectsLoading:m,isCreatingProject:h,pendingAutoRoute:g,messages:_,messagesLoaded:v,hasProcessingThread:y,paneError:b,hasPendingMessage:x,paneIsStreaming:S,focusedPaneId:C,completedPaneIds:w}=HD(e,t),T=(0,Z.useRef)(null),E=(0,Z.useRef)(null),D=rC(),O=D?.overlayRef??{current:null},[k,A]=(0,Z.useState)(!0),[j,M]=(0,Z.useState)(!0),N=a&&!!d&&!!D,P=N&&D.placement===`overlay`,F=BD(T,O,N),I=N&&!k;function L(){l({type:Y.CloseSidebar})}function R(){C!==e&&w.includes(e)&&l({type:Y.ClearPaneCompleted,paneId:e}),l({type:Y.SetFocusedPane,paneId:e})}function z(e,t){L(),l({type:Y.SelectThread,projectId:e,threadId:t}),No().then(e=>{l({type:Y.SetProcessingThreads,threadIds:e})}).catch(e=>{VD.error(`Failed to refresh processing threads after thread selection:`,e)})}return(0,$.jsx)(bv,{paneId:e,conversationId:t,fillPane:i,children:(0,$.jsxs)(`div`,{ref:T,className:`relative flex h-full min-w-0 flex-col`,onPointerDown:R,children:[(0,$.jsx)(AD,{ref:E,bottomInset:F,messages:_,isStreaming:S,isCreatingProject:r?h:!1,isProcessingThread:y,hasPendingMessage:x,isAutoRouting:!!g,selectedThreadId:d,selectedProjectId:f,projects:p,projectsLoading:m,messagesLoaded:v,onSelectThread:z,onCreateThread:n,onConnectRepo:o,onNewApp:s,onOpenFolder:c,error:b,onClearError:()=>{d&&u(d,e,null)},onAtBottomChange:A,onAtTopChange:M,hideEmptyState:!r}),(0,$.jsx)(nO,{messagesRef:E,isVisible:!j&&_.length>0}),(0,$.jsx)(rO,{messagesRef:E,isVisible:I,usesOverlayInput:P})]})})}var aO=/^#([0-9a-f]{6})$/i;function oO(e){return aO.test(e)}function sO(e){return oO(e)?e.toLowerCase():null}function cO(e){let t=aO.exec(e);if(!t)return null;let n=Number.parseInt(t[1],16);return{r:n>>16&255,g:n>>8&255,b:n&255}}function lO(e){let t=cO(e);return t?.2126*t.r+.7152*t.g+.0722*t.b:null}function uO(e){let t=cO(e);if(!t)return null;let n=t.r/255,r=t.g/255,i=t.b/255,a=Math.max(n,r,i),o=Math.min(n,r,i),s=a-o,c=(a+o)/2,l=0,u=0;if(s!==0){switch(u=s/(1-Math.abs(2*c-1)),a){case n:l=(r-i)/s%6;break;case r:l=(i-n)/s+2;break;default:l=(n-r)/s+4;break}l*=60,l<0&&(l+=360)}return`${Math.round(l)} ${Math.round(u*100)}% ${Math.round(c*100)}%`}var dO=`--wallpaper-color`,fO={mode:la(),color:Wa()},pO=new Set;function mO(){for(let e of pO)e()}function hO(e){let t=lO(e);return al(t===null?0:t)}function gO(e){if(document.documentElement.dataset.wallpaper=e.mode,document.documentElement.style.setProperty(dO,e.color),e.mode===`color`){let{foreground:t,inverse:n}=hO(e.color);ol(t,n)}}function _O(){return fO}function vO(e){return pO.add(e),function(){pO.delete(e)}}function yO(e){fO.mode!==e&&(fO={...fO,mode:e},Li(e),gO(fO),mO())}function bO(e){let t=sO(e);t===null||fO.color===t||(fO={...fO,color:t},Yo(t),gO(fO),mO())}function xO(){let e=(0,Q.c)(3),t=(0,Z.useSyncExternalStore)(vO,_O,_O),n=wO,r=CO,i=SO,a;return e[0]!==t.color||e[1]!==t.mode?(a={mode:t.mode,color:t.color,updateMode:n,updateColor:r,reset:i,defaultMode:`background`,defaultColor:fi},e[0]=t.color,e[1]=t.mode,e[2]=a):a=e[2],a}function SO(){fO={mode:`background`,color:fi},Li(`background`),Yo(fi),gO(fO),mO()}function CO(e){bO(e)}function wO(e){yO(e)}function TO(){fO={mode:la(),color:Wa()},gO(fO)}function EO(){return typeof window>`u`?null:De(window.location.search)}function DO(){return typeof window>`u`?null:Ce(window.location.search)}function OO(){return EO()===w}var kO=(0,Z.lazy)(()=>us(()=>import(`./terminal-panel-Pv5xqCpm.js`).then(e=>({default:e.TerminalPanel})),__vite__mapDeps([12,1,4,5,13,14,15,16,17]))),AO=(0,Z.lazy)(()=>us(()=>import(`./diff-view-XN5G5F6E.js`),__vite__mapDeps([18,1,19,20,4,5,21,22,23,24,25,14,26,27]))),jO=(0,Z.lazy)(()=>us(()=>import(`./explorer-tab-view-A2ICDFPB.js`),__vite__mapDeps([28,1,19,20,4,5,21,22,29,30,14]))),MO=(0,Z.lazy)(()=>us(()=>import(`./browser-tab-BJxPUVJi.js`).then(e=>({default:e.BrowserTab})),__vite__mapDeps([31,1,4,5,29,16,13,14]))),NO=(0,Z.lazy)(()=>us(()=>import(`./tasks-view-B049aXpC.js`).then(e=>({default:e.TasksView})),__vite__mapDeps([32,1,19,20,33,4,5,21,22,13,14,25,34])));function PO(e){let t=(0,Q.c)(24),{panelId:n,instanceId:r,onClose:i}=e,a=X(LO),o=X(IO),s;t[0]===r?s=t[1]:(s=e=>gs(e,r),t[0]=r,t[1]=s);let c=X(s),{reviewRefreshTickByThread:l,tasksRefreshTick:u}=mc();if(n===`chat`){let e;return t[2]!==c||t[3]!==r?(e=(0,$.jsx)(iO,{paneId:r,fillPane:!0,conversationId:c,onCreateThread:FO,showEmptyState:!1,hideInput:!0}),t[2]=c,t[3]=r,t[4]=e):e=t[4],e}if(n===`terminal`){let e;return t[5]===r?e=t[6]:(e=(0,$.jsx)(Z.Suspense,{fallback:null,children:(0,$.jsx)(kO,{instanceId:r})}),t[5]=r,t[6]=e),e}if(n===`browser`){let e;return t[7]===r?e=t[8]:(e=(0,$.jsx)(Z.Suspense,{fallback:null,children:(0,$.jsx)(MO,{instanceId:r})}),t[7]=r,t[8]=e),e}if(n===`explorer`){if(!a){let e;return t[9]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,$.jsx)(RO,{message:`Select a conversation to browse files.`}),t[9]=e):e=t[9],e}let e;return t[10]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,$.jsx)(Z.Suspense,{fallback:(0,$.jsx)(rs,{}),children:(0,$.jsx)(jO,{})}),t[10]=e):e=t[10],e}if(n===`tasks`){if(!o){let e;return t[11]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,$.jsx)(RO,{message:`Select a project to view tasks.`}),t[11]=e):e=t[11],e}let e;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,$.jsx)(rs,{}),t[12]=e):e=t[12];let n;return t[13]!==o||t[14]!==u?(n=(0,$.jsx)(Z.Suspense,{fallback:e,children:(0,$.jsx)(NO,{projectId:o,refreshTrigger:u})}),t[13]=o,t[14]=u,t[15]=n):n=t[15],n}if(!a){let e;return t[16]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,$.jsx)(RO,{message:`Select a conversation to review changes.`}),t[16]=e):e=t[16],e}let d=l[a]??0,f;t[17]!==i||t[18]!==a||t[19]!==d?(f=(0,$.jsx)(Z.Suspense,{fallback:null,children:(0,$.jsx)(AO,{threadId:a,onExit:i,refreshTrigger:d})}),t[17]=i,t[18]=a,t[19]=d,t[20]=f):f=t[20];let p;return t[21]!==a||t[22]!==f?(p=(0,$.jsx)(Md,{threadId:a,children:f}),t[21]=a,t[22]=f,t[23]=p):p=t[23],p}function FO(){}function IO(e){return e.selectedProjectId}function LO(e){return e.selectedThreadId}function RO(e){let t=(0,Q.c)(2),{message:n}=e,r;return t[0]===n?r=t[1]:(r=(0,$.jsx)(`div`,{className:`flex h-full items-center justify-center p-4 text-center text-muted-foreground`,children:n}),t[0]=n,t[1]=r),r}function zO(e){let t=(0,Q.c)(21),{title:n,titleSuffix:r,titleActions:i,showTitle:a,selected:o,onSelect:s,onTitleDoubleClick:c,onClose:l,disableClose:u,footer:d,children:f,className:p}=e,m=o===void 0?!1:o,h=u===void 0?!1:u,g=m&&`outline outline-2 outline-offset-1 outline-brand`,_;t[0]!==p||t[1]!==g?(_=G(`flex h-full min-h-0 flex-col bg-background`,p,g),t[0]=p,t[1]=g,t[2]=_):_=t[2];let v;t[3]!==h||t[4]!==l||t[5]!==c||t[6]!==a||t[7]!==n||t[8]!==i||t[9]!==r?(v=a?(0,$.jsxs)(`div`,{className:`flex shrink-0 items-center justify-between gap-2 border-b border-border px-2 py-2.5`,onDoubleClick:c,children:[(0,$.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1 px-1`,children:[(0,$.jsx)(`span`,{className:G(U.label,`min-w-0 truncate leading-normal`),children:n}),r&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`span`,{className:G(U.label,`shrink-0 text-muted-foreground leading-normal`),children:`–`}),r]})]}),(i||l)&&(0,$.jsxs)(`div`,{className:`flex items-center gap-0.5`,children:[i,l?(0,$.jsxs)(Hr,{type:`button`,variant:`ghost`,size:`icon-sm`,className:`text-muted-foreground`,onClick:l,onDoubleClick:BO,disabled:h,children:[(0,$.jsx)(nt,{className:`h-4 w-4`}),(0,$.jsxs)(`span`,{className:`sr-only`,children:[`Close `,n]})]}):null]})]}):null,t[3]=h,t[4]=l,t[5]=c,t[6]=a,t[7]=n,t[8]=i,t[9]=r,t[10]=v):v=t[10];let y;t[11]===f?y=t[12]:(y=(0,$.jsx)(`div`,{className:`min-h-0 flex-1 overflow-hidden`,children:f}),t[11]=f,t[12]=y);let b;t[13]===d?b=t[14]:(b=d?(0,$.jsx)(`div`,{className:`shrink-0`,children:d}):null,t[13]=d,t[14]=b);let x;return t[15]!==s||t[16]!==_||t[17]!==v||t[18]!==y||t[19]!==b?(x=(0,$.jsxs)(`div`,{className:_,onPointerDown:s,children:[v,y,b]}),t[15]=s,t[16]=_,t[17]=v,t[18]=y,t[19]=b,t[20]=x):x=t[20],x}function BO(e){return e.stopPropagation()}var VO=[{id:`chat`,label:`Chat`,icon:At},{id:`explorer`,label:`Files`,icon:fn},{id:`browser`,label:`Browser`,icon:R},{id:`terminal`,label:`Terminal`,icon:le},{id:`tasks`,label:`Tasks`,icon:Ge},{id:`review`,label:`Review`,icon:g}];function HO(e){return VO.find(t=>t.id===e)?.label??e}function UO(e){return e?.trim()||HO(`browser`)}function WO(e){return VO.find(t=>t.id===e)?.icon??At}var GO=(0,Z.createContext)(void 0);function KO(e){let t=(0,Q.c)(5),{children:n}=e,[r,i]=(0,Z.useState)(null),a;t[0]===r?a=t[1]:(a={stats:r,setStats:i},t[0]=r,t[1]=a);let o;return t[2]!==n||t[3]!==a?(o=(0,$.jsx)(GO.Provider,{value:a,children:n}),t[2]=n,t[3]=a,t[4]=o):o=t[4],o}function qO(){let e=(0,Z.useContext)(GO);if(e===void 0)throw Error(`useReviewStats must be used within a ReviewStatsProvider`);return e}var JO=(0,Z.createContext)(void 0);function YO(e){let t=(0,Q.c)(5),{children:n}=e,[r,i]=(0,Z.useState)(null),a;t[0]===r?a=t[1]:(a={actions:r,setActions:i},t[0]=r,t[1]=a);let o;return t[2]!==n||t[3]!==a?(o=(0,$.jsx)(JO.Provider,{value:a,children:n}),t[2]=n,t[3]=a,t[4]=o):o=t[4],o}function XO(){let e=(0,Z.useContext)(JO);if(e===void 0)throw Error(`useChatDockTitleActions must be used within a ChatDockTitleActionsProvider`);return e}var ZO=(0,Z.createContext)(null);function QO(e){let t=(0,Q.c)(13),{children:n}=e,[r,i]=(0,Z.useState)(0),[a,o]=(0,Z.useState)(null),[s,c]=(0,Z.useState)(`desktop`),[l,u]=(0,Z.useState)(!1),[d,f]=(0,Z.useState)(!1),[p,m]=(0,Z.useState)(null),[h,g]=(0,Z.useState)(!1),[_,v]=(0,Z.useState)(null),y;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(y=()=>{i($O)},t[0]=y):y=t[0];let b=y,x;t[1]!==_||t[2]!==s||t[3]!==a||t[4]!==r||t[5]!==d||t[6]!==l||t[7]!==h||t[8]!==p?(x={browserResetTrigger:r,triggerBrowserReset:b,browserPageTitle:a,setBrowserPageTitle:o,browserDeviceMode:s,setBrowserDeviceMode:c,isSelectModeEnabled:l,setIsSelectModeEnabled:u,isEditModeEnabled:d,setIsEditModeEnabled:f,selectedBrowserElement:p,setSelectedBrowserElement:m,isSelectionPromptOpen:h,setIsSelectionPromptOpen:g,browserAgentProcessingThreadId:_,setBrowserAgentProcessingThreadId:v},t[1]=_,t[2]=s,t[3]=a,t[4]=r,t[5]=d,t[6]=l,t[7]=h,t[8]=p,t[9]=x):x=t[9];let S=x,C;return t[10]!==n||t[11]!==S?(C=(0,$.jsx)(ZO.Provider,{value:S,children:n}),t[10]=n,t[11]=S,t[12]=C):C=t[12],C}function $O(e){return e+1}function ek(){let e=(0,Z.useContext)(ZO);if(!e)throw Error(`useBrowserTab must be used within a BrowserTabProvider`);return e}function tk(){let e=(0,Q.c)(12),{stats:t}=qO();if(!t||t.fileCount===0)return null;let n;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(n=G(U.label,`flex items-center gap-1 truncate leading-normal`),e[0]=n):n=e[0];let r=t.fileCount===1?``:`s`,i;e[1]!==t.fileCount||e[2]!==r?(i=(0,$.jsxs)(`span`,{className:`text-muted-foreground`,children:[t.fileCount,` file`,r]}),e[1]=t.fileCount,e[2]=r,e[3]=i):i=e[3];let a;e[4]===t.additions?a=e[5]:(a=(0,$.jsxs)(`span`,{className:`text-green-500`,children:[`+`,t.additions]}),e[4]=t.additions,e[5]=a);let o;e[6]===t.deletions?o=e[7]:(o=(0,$.jsxs)(`span`,{className:`text-red-500`,children:[`-`,t.deletions]}),e[6]=t.deletions,e[7]=o);let s;return e[8]!==i||e[9]!==a||e[10]!==o?(s=(0,$.jsxs)(`span`,{className:n,children:[i,a,o]}),e[8]=i,e[9]=a,e[10]=o,e[11]=s):s=e[11],s}function nk({panelId:e,instanceId:t,projects:n,selectedThreadId:r,browserPageTitle:i,tasksModifiedCount:a}){return e===`chat`?Lt(n,r,t):e===`browser`?UO(i):e===`tasks`?a>0?`Tasks (${a} modified recently)`:`Tasks`:HO(e)}function rk({panelId:e,selectedThreadId:t,triggerReviewRefresh:n,triggerExplorerRefresh:r}){if(e===`review`&&t)return(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(Hr,{variant:`ghost`,size:`icon-sm`,className:`text-muted-foreground`,onClick:()=>n(t),children:[(0,$.jsx)(ye,{className:`h-3.5 w-3.5`}),(0,$.jsx)(`span`,{className:`sr-only`,children:`Refresh`})]})}),(0,$.jsx)(Fr,{children:`Refresh changes`})]});if(e===`explorer`)return(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(Hr,{variant:`ghost`,size:`icon-sm`,className:`text-muted-foreground`,onClick:r,children:[(0,$.jsx)(D,{className:`h-3.5 w-3.5`}),(0,$.jsx)(`span`,{className:`sr-only`,children:`Refresh`})]})}),(0,$.jsx)(Fr,{children:`Refresh`})]})}function ik(e){let t=(0,Q.c)(48),{instanceId:n,panelId:r}=e,i=Ks(),{closeWindow:a,expandWindow:o,collapseLayout:s,isLayoutExpanded:c,selectedWindowId:l,selectWindow:u,revealWindow:d}=gc(),f=X(sk),p=X(ok),m=X(ak),h;t[0]!==n||t[1]!==r?(h=e=>r===`chat`&&As(e.threadStreamingStates,e.selectedThreadId,n).isStreaming,t[0]=n,t[1]=r,t[2]=h):h=t[2];let g=X(h),{triggerReviewRefresh:_}=mc(),{triggerExplorerRefresh:v}=vc(),{browserPageTitle:y}=ek(),b=r===`chat`,x=r===`tasks`,S,C;if(t[3]!==y||t[4]!==n||t[5]!==r||t[6]!==f||t[7]!==m||t[8]!==p){let e;t[11]===m?e=t[12]:(e=e=>e.projectId===m,t[11]=m,t[12]=e),C=f.find(e)?.tasksModifiedCount??0,S=nk({panelId:r,instanceId:n,projects:f,selectedThreadId:p,browserPageTitle:y,tasksModifiedCount:C}),t[3]=y,t[4]=n,t[5]=r,t[6]=f,t[7]=m,t[8]=p,t[9]=S,t[10]=C}else S=t[9],C=t[10];let w=S,T=!c&&l===n,{actions:E}=XO(),D;t[13]===r?D=t[14]:(D=r===`review`?(0,$.jsx)(tk,{}):void 0,t[13]=r,t[14]=D);let O=D,k;t[15]!==r||t[16]!==p||t[17]!==v||t[18]!==_?(k=rk({panelId:r,selectedThreadId:p,triggerReviewRefresh:_,triggerExplorerRefresh:v}),t[15]=r,t[16]=p,t[17]=v,t[18]=_,t[19]=k):k=t[19];let A=k??E,j;if(t[20]!==a||t[21]!==i||t[22]!==n||t[23]!==x||t[24]!==m||t[25]!==C){j=function(){x&&m&&C>0&&e(m),a(n)};async function e(e){try{await Ua(e),Si();let t=await lo();i({type:Y.SetProjects,projects:t.projects,cloneRootPath:t.cloneRootPath})}catch{try{Si();let e=await lo();i({type:Y.SetProjects,projects:e.projects,cloneRootPath:e.cloneRootPath})}catch{}}}t[20]=a,t[21]=i,t[22]=n,t[23]=x,t[24]=m,t[25]=C,t[26]=j}else j=t[26];let M;t[27]!==i||t[28]!==n||t[29]!==b||t[30]!==d||t[31]!==u?(M=function(){u(n),d(n),b&&i({type:Y.SetFocusedPane,paneId:n})},t[27]=i,t[28]=n,t[29]=b,t[30]=d,t[31]=u,t[32]=M):M=t[32];let N=M,P;t[33]!==s||t[34]!==o||t[35]!==N||t[36]!==n||t[37]!==c?(P=function(){if(c){s();return}N(),o(n)},t[33]=s,t[34]=o,t[35]=N,t[36]=n,t[37]=c,t[38]=P):P=t[38];let F=P,I;return t[39]!==j||t[40]!==N||t[41]!==F||t[42]!==g||t[43]!==w||t[44]!==T||t[45]!==A||t[46]!==O?(I={label:w,selected:T,isPaneStreaming:g,titleSuffix:O,titleActions:A,handleClose:j,handleSelect:N,handleTitleDoubleClick:F},t[39]=j,t[40]=N,t[41]=F,t[42]=g,t[43]=w,t[44]=T,t[45]=A,t[46]=O,t[47]=I):I=t[47],I}function ak(e){return e.selectedProjectId}function ok(e){return e.selectedThreadId}function sk(e){return e.projects}function ck(e){let t=(0,Q.c)(18),{instanceId:n,panelId:r,footer:i}=e,a;t[0]!==n||t[1]!==r?(a={instanceId:n,panelId:r},t[0]=n,t[1]=r,t[2]=a):a=t[2];let{label:o,selected:s,isPaneStreaming:c,titleSuffix:l,titleActions:u,handleClose:d,handleSelect:f,handleTitleDoubleClick:p}=ik(a),m;t[3]!==d||t[4]!==n||t[5]!==r?(m=(0,$.jsx)(PO,{panelId:r,instanceId:n,onClose:d}),t[3]=d,t[4]=n,t[5]=r,t[6]=m):m=t[6];let h;return t[7]!==i||t[8]!==d||t[9]!==f||t[10]!==p||t[11]!==c||t[12]!==o||t[13]!==s||t[14]!==m||t[15]!==u||t[16]!==l?(h=(0,$.jsx)(zO,{title:o,titleSuffix:l,titleActions:u,showTitle:!0,selected:s,onSelect:f,onTitleDoubleClick:p,onClose:d,disableClose:c,footer:i,className:`h-full overflow-hidden rounded-lg border border-border bg-background`,children:m}),t[7]=i,t[8]=d,t[9]=f,t[10]=p,t[11]=c,t[12]=o,t[13]=s,t[14]=m,t[15]=u,t[16]=l,t[17]=h):h=t[17],h}function lk(e){let t=(0,Q.c)(2),n;return t[0]===e?n=t[1]:(n=(0,$.jsx)(KO,{children:(0,$.jsx)(YO,{children:(0,$.jsx)(ck,{...e})})}),t[0]=e,t[1]=n),n}function uk(e){let t=(0,Q.c)(10),{active:n,className:r}=e,i=n===void 0?!1:n,a=i?`animate-thread-dot-pulse text-brand opacity-100`:`text-muted-foreground/40 opacity-100`,o;t[0]!==r||t[1]!==a?(o=G(`h-3 w-3 shrink-0 origin-center transition-opacity`,a,r),t[0]=r,t[1]=a,t[2]=o):o=t[2];let s=i?`currentColor`:`none`,c=i?`none`:`currentColor`,l=i?`5`:`4.5`,u;t[3]===l?u=t[4]:(u=(0,$.jsx)(`circle`,{cx:`6`,cy:`6`,r:l}),t[3]=l,t[4]=u);let d;return t[5]!==o||t[6]!==s||t[7]!==c||t[8]!==u?(d=(0,$.jsx)(`svg`,{"aria-hidden":`true`,className:o,viewBox:`0 0 12 12`,fill:s,stroke:c,strokeWidth:`2`,xmlns:`http://www.w3.org/2000/svg`,children:u}),t[5]=o,t[6]=s,t[7]=c,t[8]=u,t[9]=d):d=t[9],d}function dk(){let e=(0,Q.c)(84),t=Ks(),n=mC(),r=X(bk),i=X(yk),a=X(vk),o=X(_k),s=X(gk),c=X(hk),l=X(mk),u=X(pk),d=X(fk),{handleSelectThread:f,handleCreateThread:p,handleDeleteThread:m,refreshWorkspaces:h}=sw(),g=Ed(a??void 0),[_,v]=(0,Z.useState)(!1),[y,b]=(0,Z.useState)(!1),[x,S]=(0,Z.useState)(null),C,w,T,E,D,O,k,A,j,N,P,F;if(e[0]!==o||e[1]!==c||e[2]!==l||e[3]!==t||e[4]!==p||e[5]!==m||e[6]!==f||e[7]!==_||e[8]!==d||e[9]!==x||e[10]!==s||e[11]!==r||e[12]!==h||e[13]!==g||e[14]!==i||e[15]!==a||e[16]!==n||e[17]!==u||e[18]!==y){F=Symbol.for(`react.early_return_sentinel`);bb0:{let I;e[31]===i?I=e[32]:(I=e=>e.projectId===i,e[31]=i,e[32]=I);let L=r.find(I);if(!L){F=null;break bb0}let R=L.projectId,z=L.projectPath&&o&&!L.projectPath.startsWith(o.replace(/\/+$/,``)+`/`)?L.projectPath:void 0,B;e[33]===a?B=e[34]:(B=e=>e.threadId===a,e[33]=a,e[34]=B);let V=L.threads.find(B),H=(a?g.currentBranch||V?.currentBranch:void 0)||V?.title||`Branches`,ee;e[35]===l?ee=e[36]:(ee=e=>l.includes(e.threadId),e[35]=l,e[36]=ee);let te=L.threads.some(ee),ne=n?Hw:Vw,re;e[37]!==t||e[38]!==f?(re=function(e,n){t({type:Y.ClearThreadCompleted,threadId:n}),f(e,n),v(!1)},e[37]=t,e[38]=f,e[39]=re):re=e[39];let ie=re,ae=function(){p(R,void 0),v(!1)},oe=function(e,t){let n=se(e)?e.path:void 0;if(e.gitStatusDot||n){v(!1),S({threadId:e.threadId,displayName:t,openFolderPath:n});return}m(R,e.threadId).then(()=>h())};function se(e){return!z||!e.path?!1:e.path===z}let ce=x!==null,le;e[40]===Symbol.for(`react.memo_cache_sentinel`)?(le=e=>{e||S(null)},e[40]=le):le=e[40];let ue;e[41]===Symbol.for(`react.memo_cache_sentinel`)?(ue=(0,$.jsx)(sc,{children:`Delete Branch`}),e[41]=ue):ue=e[41];let W;e[42]===x?W=e[43]:(W=(0,$.jsx)(oc,{children:x?.openFolderPath?(0,$.jsxs)($.Fragment,{children:[`The path "`,(0,$.jsx)(`span`,{className:G(U.body,`font-semibold text-foreground`),children:x.openFolderPath}),`" was not created by Tarsk. Are you sure you want to delete it?`]}):(0,$.jsxs)($.Fragment,{children:[`Are you sure you want to delete "`,x?.displayName,`" and all its files? This action cannot be undone.`]})}),e[42]=x,e[43]=W);let de;e[44]===Symbol.for(`react.memo_cache_sentinel`)?(de=(0,$.jsx)(dc,{children:`Cancel`}),e[44]=de):de=e[44];let fe=(0,$.jsxs)(`div`,{className:`flex gap-3 justify-end`,children:[de,(0,$.jsx)(lc,{onClick:()=>{x&&m(R,x.threadId).then(()=>h()),S(null)},className:`bg-destructive text-destructive-foreground hover:bg-destructive/90`,children:`Delete`})]}),pe;e[45]!==W||e[46]!==fe?(pe=(0,$.jsxs)(cc,{children:[ue,W,fe]}),e[45]=W,e[46]=fe,e[47]=pe):pe=e[47],e[48]!==ce||e[49]!==pe?(P=(0,$.jsx)(pc,{open:ce,onOpenChange:le,children:pe}),e[48]=ce,e[49]=pe,e[50]=P):P=e[50],w=jp,A=_,e[51]===h?j=e[52]:(j=e=>{v(e),e&&(b(!1),h())},e[51]=h,e[52]=j);let me=!_&&y,he=G(ne,Uw,`w-10 justify-center md:w-auto`,Ww,te&&`disabled:opacity-50`),ge;e[53]===Symbol.for(`react.memo_cache_sentinel`)?(ge=G(U.compact,`hidden truncate md:inline`),e[53]=ge):ge=e[53];let _e;e[54]===Symbol.for(`react.memo_cache_sentinel`)?(_e=(0,$.jsx)(Yt,{className:G(Gw,`hidden md:block`)}),e[54]=_e):_e=e[54];let ve=(0,$.jsx)(Mp,{asChild:!0,children:(0,$.jsxs)(`button`,{type:`button`,"aria-label":`Branches`,disabled:te,className:he,children:[te?(0,$.jsx)(ln,{className:`h-4 w-4 shrink-0 animate-spin`}):(0,$.jsx)(M,{className:`h-4 w-4 shrink-0`}),(0,$.jsx)(`span`,{className:ge,children:H}),_e]})}),ye;e[55]===ve?ye=e[56]:(ye=(0,$.jsx)(zi,{asChild:!0,children:ve}),e[55]=ve,e[56]=ye);let be=te?`Deleting branch...`:`Workspaces`,xe;e[57]===be?xe=e[58]:(xe=(0,$.jsx)(Fr,{side:`top`,children:be}),e[57]=be,e[58]=xe),e[59]!==me||e[60]!==ye||e[61]!==xe?(N=(0,$.jsxs)(Mi,{open:me,onOpenChange:b,children:[ye,xe]}),e[59]=me,e[60]=ye,e[61]=xe,e[62]=N):N=e[62],C=Np,T=`end`,E=`top`,D=`w-72 p-1`;let Ce;e[63]===Symbol.for(`react.memo_cache_sentinel`)?(Ce=(0,$.jsx)(`span`,{className:G(U.label,`text-muted-foreground font-medium`),children:`Workspaces`}),e[63]=Ce):Ce=e[63];let we;e[64]===Symbol.for(`react.memo_cache_sentinel`)?(we=(0,$.jsx)(Se,{}),e[64]=we):we=e[64];let Te=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(Hr,{variant:`action`,size:`icon-sm`,className:`shrink-0`,"aria-label":`Create a new workspace & branch (⌘⇧T)`,onClick:ae,children:we})}),Ee;e[65]===Symbol.for(`react.memo_cache_sentinel`)?(Ee=(0,$.jsx)(Fr,{side:`top`,children:`Create a new workspace & branch`}),e[65]=Ee):Ee=e[65],e[66]===Te?O=e[67]:(O=(0,$.jsxs)(`div`,{className:`flex items-center justify-between gap-2 px-2 py-1.5`,children:[Ce,(0,$.jsxs)(Mi,{children:[Te,Ee]})]}),e[66]=Te,e[67]=O),k=L.threads.length===0?(0,$.jsx)(`p`,{className:G(U.compact,`px-2 py-4 text-center text-muted-foreground`),children:`No branches yet. Create one to get started.`}):(0,$.jsx)(`div`,{className:`max-h-[min(320px,50vh)] overflow-y-auto`,children:L.threads.map(e=>(0,$.jsx)(Sk,{thread:e,projectId:R,selectedThreadId:a,isProcessing:js(e.threadId,s,u,d),isDeleting:l.includes(e.threadId),isCompleted:c.includes(e.threadId),branchName:e.threadId===a&&g.currentBranch||e.currentBranch,onSelectThread:ie,onRequestDelete:oe},e.threadId))})}e[0]=o,e[1]=c,e[2]=l,e[3]=t,e[4]=p,e[5]=m,e[6]=f,e[7]=_,e[8]=d,e[9]=x,e[10]=s,e[11]=r,e[12]=h,e[13]=g,e[14]=i,e[15]=a,e[16]=n,e[17]=u,e[18]=y,e[19]=C,e[20]=w,e[21]=T,e[22]=E,e[23]=D,e[24]=O,e[25]=k,e[26]=A,e[27]=j,e[28]=N,e[29]=P,e[30]=F}else C=e[19],w=e[20],T=e[21],E=e[22],D=e[23],O=e[24],k=e[25],A=e[26],j=e[27],N=e[28],P=e[29],F=e[30];if(F!==Symbol.for(`react.early_return_sentinel`))return F;let I;e[68]!==C||e[69]!==T||e[70]!==E||e[71]!==D||e[72]!==O||e[73]!==k?(I=(0,$.jsxs)(C,{align:T,side:E,className:D,children:[O,k]}),e[68]=C,e[69]=T,e[70]=E,e[71]=D,e[72]=O,e[73]=k,e[74]=I):I=e[74];let L;e[75]!==w||e[76]!==I||e[77]!==A||e[78]!==j||e[79]!==N?(L=(0,$.jsxs)(w,{open:A,onOpenChange:j,children:[N,I]}),e[75]=w,e[76]=I,e[77]=A,e[78]=j,e[79]=N,e[80]=L):L=e[80];let R;return e[81]!==L||e[82]!==P?(R=(0,$.jsxs)($.Fragment,{children:[P,L]}),e[81]=L,e[82]=P,e[83]=R):R=e[83],R}function fk(e){return e.pendingChatMessage}function pk(e){return rc(e.threadStreamingStates)}function mk(e){return e.deletingThreadIds}function hk(e){return e.completedThreadIds}function gk(e){return e.processingThreadIds}function _k(e){return e.cloneRootPath}function vk(e){return e.selectedThreadId}function yk(e){return e.selectedProjectId}function bk(e){return e.projects}function xk(e){let t=(0,Q.c)(22),{gitStatusDot:n,isProcessing:r,isDeleting:i}=e,a=!!n||r,o;t[0]!==n||t[1]!==r?(o=r?`Agent is working on this branch`:mt(n),t[0]=n,t[1]=r,t[2]=o):o=t[2];let s=o,c;if(r){let e;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,$.jsx)(uk,{active:!0}),t[3]=e):e=t[3],c=e}else{let e=i&&`animate-thread-dot-pulse`,r=n===`changes`&&`text-brand`,o;t[4]!==a||t[5]!==n||t[6]!==e||t[7]!==r?(o=G(`h-3 w-3 shrink-0 origin-center`,e,r,Ve(n)&&`text-orange-500`,!a&&`text-muted-foreground`),t[4]=a,t[5]=n,t[6]=e,t[7]=r,t[8]=o):o=t[8];let s=o;if(a){let e;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,$.jsx)(`circle`,{cx:`6`,cy:`6`,r:`5`}),t[9]=e):e=t[9];let n;t[10]===s?n=t[11]:(n=(0,$.jsx)(`svg`,{className:s,viewBox:`0 0 12 12`,fill:`currentColor`,xmlns:`http://www.w3.org/2000/svg`,children:e}),t[10]=s,t[11]=n),c=n}else{let e;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,$.jsx)(`circle`,{cx:`6`,cy:`6`,r:`4.5`}),t[12]=e):e=t[12];let n;t[13]===s?n=t[14]:(n=(0,$.jsx)(`svg`,{className:s,viewBox:`0 0 12 12`,fill:`none`,stroke:`currentColor`,strokeWidth:`2.0`,xmlns:`http://www.w3.org/2000/svg`,children:e}),t[13]=s,t[14]=n),c=n}}if(!s)return c;let l;t[15]===c?l=t[16]:(l=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`span`,{className:`inline-flex shrink-0`,children:c})}),t[15]=c,t[16]=l);let u;t[17]===s?u=t[18]:(u=(0,$.jsx)(Fr,{side:`left`,children:s}),t[17]=s,t[18]=u);let d;return t[19]!==l||t[20]!==u?(d=(0,$.jsxs)(Mi,{children:[l,u]}),t[19]=l,t[20]=u,t[21]=d):d=t[21],d}function Sk(e){let t=(0,Q.c)(34),{thread:n,projectId:r,selectedThreadId:i,isProcessing:a,isDeleting:o,isCompleted:s,branchName:c,onSelectThread:l,onRequestDelete:u}=e,d=(0,Z.useRef)(null),f=n.threadId===i,p=c||n.title||n.threadId,m,h;t[0]===a?(m=t[1],h=t[2]):(m=()=>{a&&d.current&&d.current.scrollIntoView({behavior:`smooth`,block:`nearest`})},h=[a],t[0]=a,t[1]=m,t[2]=h),(0,Z.useEffect)(m,h);let g;t[3]!==p||t[4]!==u||t[5]!==n?(g=function(e){e.stopPropagation(),u(n,p)},t[3]=p,t[4]=u,t[5]=n,t[6]=g):g=t[6];let _=g,v;t[7]!==l||t[8]!==r||t[9]!==n.threadId?(v=()=>l(r,n.threadId),t[7]=l,t[8]=r,t[9]=n.threadId,t[10]=v):v=t[10];let y;t[11]!==o||t[12]!==a||t[13]!==n.gitStatusDot?(y=(0,$.jsx)(xk,{gitStatusDot:n.gitStatusDot,isProcessing:a,isDeleting:o}),t[11]=o,t[12]=a,t[13]=n.gitStatusDot,t[14]=y):y=t[14];let b;t[15]===Symbol.for(`react.memo_cache_sentinel`)?(b=G(U.body,`min-w-0 flex-1 truncate text-left`),t[15]=b):b=t[15];let x;t[16]===p?x=t[17]:(x=(0,$.jsx)(`span`,{className:b,children:p}),t[16]=p,t[17]=x);let S;t[18]===s?S=t[19]:(S=s?(0,$.jsx)(W,{className:`ml-auto h-3 w-3 shrink-0 text-green-500`}):null,t[18]=s,t[19]=S);let C;t[20]!==f||t[21]!==v||t[22]!==y||t[23]!==x||t[24]!==S?(C=(0,$.jsxs)(ja,{selected:f,className:`min-w-0 flex-1 items-center rounded-md`,onClick:v,children:[y,x,S]}),t[20]=f,t[21]=v,t[22]=y,t[23]=x,t[24]=S,t[25]=C):C=t[25];let w;t[26]!==_||t[27]!==s||t[28]!==o||t[29]!==a?(w=!a&&!o&&!s&&(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(Hr,{variant:`ghost`,size:`icon-sm`,className:`hidden can-hover:group-hover:flex shrink-0 items-center justify-center text-muted-foreground can-hover:hover:bg-destructive can-hover:hover:text-destructive-foreground transition-colors`,onClick:_,children:[(0,$.jsx)(He,{}),(0,$.jsx)(`span`,{className:`sr-only`,children:`Delete branch`})]})}),(0,$.jsx)(Fr,{side:`left`,children:`Delete branch and files from the repo`})]}),t[26]=_,t[27]=s,t[28]=o,t[29]=a,t[30]=w):w=t[30];let T;return t[31]!==w||t[32]!==C?(T=(0,$.jsxs)(`div`,{ref:d,className:`group flex min-w-0 items-center`,children:[C,w]}),t[31]=w,t[32]=C,t[33]=T):T=t[33],T}function Ck(){let e=(0,Q.c)(108),t=Ks(),{windows:n,hasOpenWindows:r,isLayoutExpanded:i,expandedWindowId:a,expandWindow:o,collapseLayout:s,isPanelOpen:c,isPrimaryChatOpen:l,selectedWindowId:u,selectWindow:d,revealWindow:f}=gc(),{openChatDockPanel:p}=Hd(),m=X(Nk),h=X(Mk),g=X(jk),_=X(Ak),v=X(kk),y=X(Ok),b=X(Dk),x=X(Ek),S=X(Tk),C=X(wk),w;if(e[0]!==m||e[1]!==h){let t;e[3]===h?t=e[4]:(t=e=>e.projectId===h,e[3]=h,e[4]=t),w=m.find(t),e[0]=m,e[1]=h,e[2]=w}else w=e[2];let T=w,E=T?.useBuiltInBrowser!==!1,{browserPageTitle:D}=ek(),{hasChanges:O,changedFilesCount:k}=Ed(g??void 0),A=T?.tasksModifiedCount??0,j;e[5]!==S||e[6]!==x||e[7]!==b?.threadId||e[8]!==v||e[9]!==g||e[10]!==_?(j=function(e,t){return t===`chat`?e===`primary`?g?b?.threadId===g||S===Ms&&v.includes(g)?!0:bs(_,g):!1:!x[e]||!g?!1:S===e&&v.includes(g)?!0:bs(_,g,e):!1},e[5]=S,e[6]=x,e[7]=b?.threadId,e[8]=v,e[9]=g,e[10]=_,e[11]=j):j=e[11];let M=j,N,P,F,I,L,R,z,B,V,H,ee,te,ne,re;if(e[12]!==D||e[13]!==k||e[14]!==s||e[15]!==y||e[16]!==t||e[17]!==o||e[18]!==a||e[19]!==C||e[20]!==O||e[21]!==r||e[22]!==i||e[23]!==c||e[24]!==l||e[25]!==M||e[26]!==p||e[27]!==m||e[28]!==f||e[29]!==d||e[30]!==g||e[31]!==u||e[32]!==E||e[33]!==A||e[34]!==n){let h;e[49]!==g||e[50]!==E?(h=e=>!(e.id===`browser`&&!E||e.id===`chat`&&!g),e[49]=g,e[50]=E,e[51]=h):h=e[51];let _=VO.filter(h),v=[...l?[{id:Ct,panelId:`chat`,title:Lt(m,g,Ct)}]:[],...n.map(e=>({id:e.id,panelId:e.panelId,title:e.panelId===`chat`?Lt(m,g,e.id):e.panelId===`browser`?UO(D):HO(e.panelId)}))],b;e[52]===c?b=e[53]:(b=function(e){return c(e)},e[52]=c,e[53]=b);let x=b,S;e[54]===x?S=e[55]:(S=e=>!x(e.id),e[54]=x,e[55]=S);let w=_.filter(S),T=function(e){return i?a===e:u===e},j=function(e){d(e.id),f(e.id),e.panelId===`chat`&&(C!==e.id&&y.includes(e.id)&&t({type:Y.ClearPaneCompleted,paneId:e.id}),t({type:Y.SetFocusedPane,paneId:e.id}))},ie;e[56]===p?ie=e[57]:(ie=function(e){p(e,{reuseExisting:!1})},e[56]=p,e[57]=ie);let ae=ie,oe;e[58]===p?oe=e[59]:(oe=function(e){p(e,{reuseExisting:!1})},e[58]=p,e[59]=oe);let se=oe,ce;e[60]!==s||e[61]!==o||e[62]!==a||e[63]!==r||e[64]!==i||e[65]!==l||e[66]!==u||e[67]!==n?(ce=function(){if(r){if(i){s();return}if(l&&u===`primary`||n.some(e=>e.id===u)){o(u);return}o(a??(l?`primary`:n[0]?.id??`primary`))}},e[60]=s,e[61]=o,e[62]=a,e[63]=r,e[64]=i,e[65]=l,e[66]=u,e[67]=n,e[68]=ce):ce=e[68];let le=ce,ue=i?`Grid layout`:`Expanded layout`;te=`toolbar`,ne=`Window taskbar`,re=`flex items-center gap-0.5 rounded-full frosted-surface p-1 text-foreground shadow-md backdrop-blur-sm`;let W=v.map(e=>{let t=WO(e.panelId),n=T(e.id),r=e.panelId===`review`,i=e.panelId===`tasks`,a=r&&O,o=e.panelId===`chat`&&y.includes(e.id),s=i&&A>0,c=M(e.id,e.panelId),l=o?`Chat completed — needs attention`:r&&a?`${k} changed file${k===1?``:`s`}`:i&&s?`${A} task${A===1?``:`s`} modified recently`:e.title;return(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(Hr,{type:`button`,role:`tab`,"aria-selected":n,"aria-label":e.title,variant:`ghost`,size:`icon-sm`,className:G(`relative rounded-full`,n&&`bg-foreground text-background hover:bg-foreground hover:text-background dark:bg-foreground/30 dark:text-foreground dark:hover:bg-foreground/30 dark:hover:text-foreground`),onClick:()=>j(e),children:[(0,$.jsx)(`span`,{className:`relative inline-flex items-center justify-center`,children:c&&e.panelId===`chat`?(0,$.jsx)(lp,{size:`sm`,state:`solving`,className:`shrink-0`}):(0,$.jsx)(t,{className:`h-4 w-4`})}),(a||o)&&(0,$.jsx)(`span`,{className:`absolute -right-0.5 -top-0.5 h-2 w-2 rounded-full bg-brand`}),s&&(0,$.jsx)(`span`,{className:`absolute -right-1.5 -top-1.5 flex h-4 min-w-4 items-center justify-center rounded-full bg-brand px-1 text-[10px] font-semibold leading-none text-background`,children:A})]})}),(0,$.jsx)(Fr,{side:`top`,children:l})]},e.id)});e[69]===W?F=e[70]:(F=(0,$.jsx)(`div`,{role:`tablist`,"aria-label":`Open windows`,className:`flex items-center gap-0.5`,children:W}),e[69]=W,e[70]=F),I=w.length>0?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`div`,{className:`mx-0.5 h-4 w-px shrink-0 bg-border`,"aria-hidden":!0}),(0,$.jsx)(`div`,{"aria-label":`Closed window types`,className:`flex items-center gap-0.5`,children:w.map(e=>{let t=e.icon,n=e.id===`review`,r=e.id===`tasks`,i=n&&O,a=r&&A>0,o=n&&i?`${k} changed file${k===1?``:`s`}`:r&&a?`${A} task${A===1?``:`s`} modified recently`:e.label;return(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(Hr,{type:`button`,"aria-label":e.label,variant:`ghost`,size:`icon-sm`,className:`relative rounded-full opacity-50`,onClick:()=>ae(e.id),children:[(0,$.jsx)(t,{className:`h-4 w-4`}),i&&(0,$.jsx)(`span`,{className:`absolute -right-0.5 -top-0.5 h-2 w-2 rounded-full bg-brand`}),a&&(0,$.jsx)(`span`,{className:`absolute -right-1.5 -top-1.5 flex h-4 min-w-4 items-center justify-center rounded-full bg-brand px-1 text-[10px] font-semibold leading-none text-background`,children:A})]})}),(0,$.jsx)(Fr,{side:`top`,children:o})]},e.id)})})]}):null,e[71]===Symbol.for(`react.memo_cache_sentinel`)?(L=(0,$.jsx)(`div`,{className:`mx-0.5 h-4 w-px shrink-0 bg-border`,"aria-hidden":!0}),e[71]=L):L=e[71];let de=r&&!i,fe=!r,pe=r&&!i&&`bg-foreground text-background hover:bg-foreground hover:text-background dark:bg-foreground/30 dark:text-foreground dark:hover:bg-foreground/30 dark:hover:text-foreground`,me;e[72]===pe?me=e[73]:(me=G(`rounded-full`,pe),e[72]=pe,e[73]=me);let he;e[74]===Symbol.for(`react.memo_cache_sentinel`)?(he=(0,$.jsx)(Qt,{className:`h-4 w-4`}),e[74]=he):he=e[74];let ge;e[75]!==le||e[76]!==ue||e[77]!==de||e[78]!==fe||e[79]!==me?(ge=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(Hr,{type:`button`,variant:`ghost`,size:`icon-sm`,"aria-label":ue,"aria-pressed":de,disabled:fe,className:me,onClick:le,children:he})}),e[75]=le,e[76]=ue,e[77]=de,e[78]=fe,e[79]=me,e[80]=ge):ge=e[80];let _e;e[81]===ue?_e=e[82]:(_e=(0,$.jsx)(Fr,{side:`top`,children:ue}),e[81]=ue,e[82]=_e),e[83]!==ge||e[84]!==_e?(R=(0,$.jsxs)(Mi,{children:[ge,_e]}),e[83]=ge,e[84]=_e,e[85]=R):R=e[85],P=hl,e[86]===Symbol.for(`react.memo_cache_sentinel`)?(ee=(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(gl,{asChild:!0,children:(0,$.jsx)(Hr,{type:`button`,variant:`ghost`,size:`icon-sm`,"aria-label":`Add window`,className:`rounded-full`,children:(0,$.jsx)(Se,{className:`h-4 w-4`})})})}),(0,$.jsx)(Fr,{side:`top`,children:`Add window`})]}),e[86]=ee):ee=e[86],N=bl,z=`top`,B=`center`,V=`w-44 p-1`;let ve;e[87]===se?ve=e[88]:(ve=e=>{let t=e.icon;return(0,$.jsxs)(xl,{className:G(U.body,`gap-2`),onSelect:()=>se(e.id),children:[(0,$.jsx)(t,{className:`h-4 w-4 shrink-0`}),e.label]},e.id)},e[87]=se,e[88]=ve),H=_.map(ve),e[12]=D,e[13]=k,e[14]=s,e[15]=y,e[16]=t,e[17]=o,e[18]=a,e[19]=C,e[20]=O,e[21]=r,e[22]=i,e[23]=c,e[24]=l,e[25]=M,e[26]=p,e[27]=m,e[28]=f,e[29]=d,e[30]=g,e[31]=u,e[32]=E,e[33]=A,e[34]=n,e[35]=N,e[36]=P,e[37]=F,e[38]=I,e[39]=L,e[40]=R,e[41]=z,e[42]=B,e[43]=V,e[44]=H,e[45]=ee,e[46]=te,e[47]=ne,e[48]=re}else N=e[35],P=e[36],F=e[37],I=e[38],L=e[39],R=e[40],z=e[41],B=e[42],V=e[43],H=e[44],ee=e[45],te=e[46],ne=e[47],re=e[48];let ie;e[89]!==N||e[90]!==z||e[91]!==B||e[92]!==V||e[93]!==H?(ie=(0,$.jsx)(N,{side:z,align:B,className:V,children:H}),e[89]=N,e[90]=z,e[91]=B,e[92]=V,e[93]=H,e[94]=ie):ie=e[94];let ae;e[95]!==P||e[96]!==ie||e[97]!==ee?(ae=(0,$.jsxs)(P,{children:[ee,ie]}),e[95]=P,e[96]=ie,e[97]=ee,e[98]=ae):ae=e[98];let oe;return e[99]!==F||e[100]!==I||e[101]!==L||e[102]!==R||e[103]!==ae||e[104]!==te||e[105]!==ne||e[106]!==re?(oe=(0,$.jsxs)(`div`,{role:te,"aria-label":ne,className:re,children:[F,I,L,R,ae]}),e[99]=F,e[100]=I,e[101]=L,e[102]=R,e[103]=ae,e[104]=te,e[105]=ne,e[106]=re,e[107]=oe):oe=e[107],oe}function wk(e){return e.focusedPane}function Tk(e){return e.activeStreamPane}function Ek(e){return e.extraChatPanes}function Dk(e){return e.pendingChatMessage}function Ok(e){return e.completedPaneIds}function kk(e){return e.processingThreadIds}function Ak(e){return rc(e.threadStreamingStates,e.selectedThreadId)}function jk(e){return e.selectedThreadId}function Mk(e){return e.selectedProjectId}function Nk(e){return e.projects}var Pk=`pointer-events-none absolute inset-0 rounded-2xl border border-border frosted-surface shadow-lg backdrop-blur-sm`,Fk=`h-full overflow-hidden rounded-lg border border-border bg-background`;function Ik(e,t){let n=e.getBoundingClientRect(),r=t.getBoundingClientRect(),i=getComputedStyle(e),a=Number.parseFloat(i.paddingTop)||0,o=Number.parseFloat(i.paddingBottom)||0,s=Number.parseFloat(i.paddingLeft)||0,c=Number.parseFloat(i.paddingRight)||0,l=n.top+a,u=n.bottom-o,d=n.left+s,f=n.right-c,p=u-l,m=f-d,h=0,g=0;r.height<=p?r.bottom>u?h=r.bottom-u:r.top<l&&(h=r.top-l):r.top>u?h=r.top-l:r.bottom<l&&(h=r.bottom-u),r.width<=m?r.right>f?g=r.right-f:r.left<d&&(g=r.left-d):r.left>f?g=r.left-d:r.right<d&&(g=r.right-f),!(g===0&&h===0)&&e.scrollBy({left:g,top:h,behavior:`smooth`})}function Lk(e,t,n,r,i){return!!(e&&(t?.threadId===e||(n===null||n===Ms)&&r.includes(e)||i))}function Rk(e,t,n,r,i,a,o){return!e&&!!t&&n===0&&!r&&!i&&!(t&&a.includes(t))&&o?.threadId!==t}function zk(e){let t=(0,Q.c)(26),{dispatch:n,composerPhase:r,isLayoutExpanded:i,pendingScrollWindowId:a,clearPendingScrollWindow:o,windows:s,hasOpenWindows:c,selectedWindowId:l,showingProjectDetails:u,scrollContainerRef:d}=e,f=(0,Z.useRef)(!1),p,m;t[0]!==r||t[1]!==n?(p=()=>{if(r===`moving-to-footer`&&!f.current){f.current=!0,n({type:Y.FocusChatInput});return}r===`centered`&&(f.current=!1)},m=[r,n],t[0]=r,t[1]=n,t[2]=p,t[3]=m):(p=t[2],m=t[3]),(0,Z.useEffect)(p,m);let h;t[4]!==o||t[5]!==i||t[6]!==a||t[7]!==d?(h=()=>{if(!a||!d.current||i){a&&i&&o();return}let e=d.current,t=e.querySelector(`[data-window-id="${a}"]`);t&&(Ik(e,t),o())},t[4]=o,t[5]=i,t[6]=a,t[7]=d,t[8]=h):h=t[8];let g;t[9]!==o||t[10]!==i||t[11]!==a||t[12]!==s?(g=[o,i,a,s],t[9]=o,t[10]=i,t[11]=a,t[12]=s,t[13]=g):g=t[13],(0,Z.useEffect)(h,g);let _=(0,Z.useRef)(u),v;t[14]!==c||t[15]!==i||t[16]!==d||t[17]!==l||t[18]!==u?(v=()=>{let e=_.current;if(_.current=u,e||!u||!c||i)return;let t=d.current;if(!t)return;let n=t,r=function(){if(n.clientWidth===0||n.clientHeight===0)return!1;let e=n.querySelector(`[data-window-id="${l}"]`);return e?(Ik(n,e),!0):!1};if(r())return;let a=new ResizeObserver(()=>{r()&&a.disconnect()});return a.observe(n),()=>a.disconnect()},t[14]=c,t[15]=i,t[16]=d,t[17]=l,t[18]=u,t[19]=v):v=t[19];let y;t[20]!==c||t[21]!==i||t[22]!==l||t[23]!==u||t[24]!==s?(y=[c,i,l,u,s],t[20]=c,t[21]=i,t[22]=l,t[23]=u,t[24]=s,t[25]=y):y=t[25],(0,Z.useEffect)(v,y)}function Bk(){let e=(0,Q.c)(61),t=Ks(),{windows:n,hasOpenWindows:r,isLayoutExpanded:i,expandedWindowId:a,expandWindow:o,collapseLayout:s,pendingScrollWindowId:c,clearPendingScrollWindow:l,selectedWindowId:u,selectWindow:d,revealWindow:f,closeWindow:p,isPrimaryChatOpen:m}=gc(),h=X(Xk),g=X(Yk),_=X(Jk),v=X(qk),y=X(Kk),b=X(Gk),x=X(Wk),S=X(Uk),C=X(Hk),w;e[0]===g?w=e[1]:(w=e=>g?As(e.threadStreamingStates,g,Ct).isStreaming:!1,e[0]=g,e[1]=w);let T=X(w),E;e[2]===g?E=e[3]:(E=e=>g?_s(g,{hasSession:Vk,streamingStates:e.threadStreamingStates}):!1,e[2]=g,e[3]=E);let D=X(E),O;e[4]!==h||e[5]!==g?(O=Lt(h,g,`primary`),e[4]=h,e[5]=g,e[6]=O):O=e[6];let k=O,A;e[7]!==C||e[8]!==T||e[9]!==S||e[10]!==x||e[11]!==g?(A=Lk(g,S,C,x,T),e[7]=C,e[8]=T,e[9]=S,e[10]=x,e[11]=g,e[12]=A):A=e[12];let j=A,M=(0,Z.useRef)(null),N=!!(g&&_),P;e[13]!==r||e[14]!==b||e[15]!==T||e[16]!==v.length||e[17]!==S||e[18]!==x||e[19]!==g?(P=Rk(r,g,v.length,T,b,x,S),e[13]=r,e[14]=b,e[15]=T,e[16]=v.length,e[17]=S,e[18]=x,e[19]=g,e[20]=P):P=e[20];let F=P,I=F&&y,L=F&&!y&&!D,R;e[21]!==L||e[22]!==g||e[23]!==I?(R={centered:I,loading:L,threadId:g},e[21]=L,e[22]=g,e[23]=I,e[24]=R):R=e[24];let{phase:z,reveal:B}=cC(R),V=mC(),{mode:H}=xO(),ee;e[25]!==z||e[26]!==V||e[27]!==H?(ee=V&&(H!==`background`||oC(z)),e[25]=z,e[26]=V,e[27]=H,e[28]=ee):ee=e[28];let te=ee,ne=H===`background`&&z===`moving-to-footer`,re;e[29]!==l||e[30]!==z||e[31]!==t||e[32]!==r||e[33]!==i||e[34]!==c||e[35]!==u||e[36]!==V||e[37]!==n?(re={dispatch:t,composerPhase:z,isLayoutExpanded:i,pendingScrollWindowId:c,clearPendingScrollWindow:l,windows:n,hasOpenWindows:r,selectedWindowId:u,showingProjectDetails:V,scrollContainerRef:M},e[29]=l,e[30]=z,e[31]=t,e[32]=r,e[33]=i,e[34]=c,e[35]=u,e[36]=V,e[37]=n,e[38]=re):re=e[38],zk(re);let ie;return e[39]!==p||e[40]!==s||e[41]!==z||e[42]!==B||e[43]!==t||e[44]!==o||e[45]!==a||e[46]!==ne||e[47]!==r||e[48]!==i||e[49]!==m||e[50]!==j||e[51]!==k||e[52]!==f||e[53]!==d||e[54]!==_||e[55]!==g||e[56]!==u||e[57]!==N||e[58]!==te||e[59]!==n?(ie={windows:n,hasOpenWindows:r,isLayoutExpanded:i,expandedWindowId:a,isPrimaryChatOpen:m,selectedWindowId:u,primaryChatTitle:k,isPrimaryStreaming:j,showGitOps:N,selectedThreadId:g,selectedProjectId:_,showSoloConversationSurface:te,fadeInSoloConversationSurface:ne,composerPhase:z,composerReveal:B,dispatch:t,selectWindow:d,revealWindow:f,collapseLayout:s,expandWindow:o,closeWindow:p,scrollContainerRef:M},e[39]=p,e[40]=s,e[41]=z,e[42]=B,e[43]=t,e[44]=o,e[45]=a,e[46]=ne,e[47]=r,e[48]=i,e[49]=m,e[50]=j,e[51]=k,e[52]=f,e[53]=d,e[54]=_,e[55]=g,e[56]=u,e[57]=N,e[58]=te,e[59]=n,e[60]=ie):ie=e[60],ie}function Vk(){return!1}function Hk(e){return e.activeStreamPane}function Uk(e){return e.pendingChatMessage}function Wk(e){return e.processingThreadIds}function Gk(e){return e.isCreatingProject}function Kk(e){return xs(e,Ct)}function qk(e){return ys(e,Ct)}function Jk(e){return e.selectedProjectId}function Yk(e){return e.selectedThreadId}function Xk(e){return e.projects}function Zk(e){let t=(0,Q.c)(9),{title:n,selected:r,isStreaming:i,onSelect:a,onTitleDoubleClick:o,onClose:s,children:c}=e,l;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,$.jsx)(oD,{paneId:Ct}),t[0]=l):l=t[0];let u;return t[1]!==c||t[2]!==i||t[3]!==s||t[4]!==a||t[5]!==o||t[6]!==r||t[7]!==n?(u=(0,$.jsx)(zO,{title:n,showTitle:!0,selected:r,onSelect:a,onTitleDoubleClick:o,onClose:s,disableClose:i,footer:l,className:Fk,children:c}),t[1]=c,t[2]=i,t[3]=s,t[4]=a,t[5]=o,t[6]=r,t[7]=n,t[8]=u):u=t[8],u}function Qk(e){let t=(0,Q.c)(22),{scrollRef:n,isLayoutExpanded:r,expandedWindowId:i,isPrimaryChatOpen:a,primaryTile:o,windows:s}=e,c=r?`overflow-hidden`:`grid gap-3 overflow-auto p-3`,l;t[0]===c?l=t[1]:(l=G(`h-full min-h-0`,c),t[0]=c,t[1]=l);let u;t[2]===r?u=t[3]:(u=r?void 0:{gridTemplateColumns:`repeat(auto-fit, minmax(min(100%, 24rem), 1fr))`,gridAutoRows:`minmax(min(100%, 20rem), 1fr)`},t[2]=r,t[3]=u);let d;t[4]!==i||t[5]!==r||t[6]!==a||t[7]!==o?(d=a?(0,$.jsx)(`div`,{"data-window-id":Ct,className:G(`min-h-0 min-w-0`,r&&`box-border h-full w-full p-3`,r&&i!==`primary`&&`hidden`),children:o}):null,t[4]=i,t[5]=r,t[6]=a,t[7]=o,t[8]=d):d=t[8];let f;if(t[9]!==i||t[10]!==r||t[11]!==s){let e;t[13]!==i||t[14]!==r?(e=e=>{let t=e.panelId===`chat`?(0,$.jsx)(oD,{paneId:e.id}):void 0;return(0,$.jsx)(`div`,{"data-window-id":e.id,className:G(`min-h-0 min-w-0`,r&&`box-border h-full w-full p-3`,r&&i!==e.id&&`hidden`),children:(0,$.jsx)(lk,{instanceId:e.id,panelId:e.panelId,footer:t})},e.id)},t[13]=i,t[14]=r,t[15]=e):e=t[15],f=s.map(e),t[9]=i,t[10]=r,t[11]=s,t[12]=f}else f=t[12];let p;return t[16]!==n||t[17]!==l||t[18]!==u||t[19]!==d||t[20]!==f?(p=(0,$.jsxs)(`div`,{ref:n,className:l,style:u,children:[d,f]}),t[16]=n,t[17]=l,t[18]=u,t[19]=d,t[20]=f,t[21]=p):p=t[21],p}function $k(e){let t=(0,Q.c)(12),{showSoloConversationSurface:n,fadeInSoloConversationSurface:r,showFooterComposer:i,children:a}=e,o;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(o=G(`relative flex h-full min-h-0 flex-col`,uy(!1)),t[0]=o):o=t[0];let s;t[1]!==r||t[2]!==n?(s=n?(0,$.jsx)(`div`,{"aria-hidden":!0,className:G(Pk,r&&`animate-in fade-in duration-300 ease-out`)}):null,t[1]=r,t[2]=n,t[3]=s):s=t[3];let c;t[4]===a?c=t[5]:(c=(0,$.jsx)(`div`,{className:`relative z-10 min-h-0 flex-1 overflow-hidden`,children:a}),t[4]=a,t[5]=c);let l;t[6]===i?l=t[7]:(l=i?(0,$.jsx)(`div`,{className:`relative z-10`,children:(0,$.jsx)(oD,{})}):null,t[6]=i,t[7]=l);let u;return t[8]!==s||t[9]!==c||t[10]!==l?(u=(0,$.jsx)(`div`,{className:`relative flex h-full min-h-0 flex-col`,children:(0,$.jsxs)(`div`,{className:o,children:[s,c,l]})}),t[8]=s,t[9]=c,t[10]=l,t[11]=u):u=t[11],u}function eA(e){let t=(0,Q.c)(10),{showGitOps:n,selectedThreadId:r,selectedProjectId:i}=e,a;t[0]!==i||t[1]!==r||t[2]!==n?(a=n&&r&&i?(0,$.jsx)(Md,{threadId:r,children:(0,$.jsx)(DT,{projectId:i,threadId:r,layout:`bar`},r)}):null,t[0]=i,t[1]=r,t[2]=n,t[3]=a):a=t[3];let o;t[4]===a?o=t[5]:(o=(0,$.jsx)(`div`,{className:`hidden justify-self-start md:block`,children:a}),t[4]=a,t[5]=o);let s;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,$.jsx)(`div`,{className:`justify-self-center md:col-start-2`,children:(0,$.jsx)(Ck,{})}),t[6]=s):s=t[6];let c;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,$.jsx)(`div`,{className:`flex items-center justify-end gap-2 justify-self-end`,children:OO()?null:(0,$.jsx)(dk,{})}),t[7]=c):c=t[7];let l;return t[8]===o?l=t[9]:(l=(0,$.jsxs)(`div`,{className:`relative z-0 grid shrink-0 grid-cols-[1fr_auto] items-center bg-transparent px-4 pb-4 pt-2 md:grid-cols-[1fr_auto_1fr]`,children:[o,s,c]}),t[8]=o,t[9]=l),l}function tA(e){let t=(0,Q.c)(54),{children:n}=e,{windows:r,hasOpenWindows:i,isLayoutExpanded:a,expandedWindowId:o,isPrimaryChatOpen:s,selectedWindowId:c,primaryChatTitle:l,isPrimaryStreaming:u,showGitOps:d,selectedThreadId:f,selectedProjectId:p,showSoloConversationSurface:m,fadeInSoloConversationSurface:h,composerPhase:g,composerReveal:_,dispatch:v,selectWindow:y,revealWindow:b,collapseLayout:x,expandWindow:S,closeWindow:C,scrollContainerRef:w}=Bk(),{triggerReviewRefresh:T}=mc(),E=a?o:c,D;t[0]!==E||t[1]!==r?(D=r.find(e=>e.id===E)?.panelId,t[0]=E,t[1]=r,t[2]=D):D=t[2];let O=D,k,A;t[3]!==O||t[4]!==f||t[5]!==T?(k=()=>{O!==`review`||!f||T(f)},A=[O,f,T],t[3]=O,t[4]=f,t[5]=T,t[6]=k,t[7]=A):(k=t[6],A=t[7]),(0,Z.useEffect)(k,A);let j;t[8]!==v||t[9]!==b||t[10]!==y?(j=()=>{y(Ct),b(Ct),v({type:Y.SetFocusedPane,paneId:`primary`})},t[8]=v,t[9]=b,t[10]=y,t[11]=j):j=t[11];let M=j,N;t[12]!==x||t[13]!==v||t[14]!==S||t[15]!==a||t[16]!==y?(N=()=>{if(a){x();return}y(Ct),v({type:Y.SetFocusedPane,paneId:`primary`}),S(Ct)},t[12]=x,t[13]=v,t[14]=S,t[15]=a,t[16]=y,t[17]=N):N=t[17];let P=N,F;t[18]===C?F=t[19]:(F=()=>C(Ct),t[18]=C,t[19]=F);let I=F,L=!a&&c===`primary`,R;t[20]!==n||t[21]!==I||t[22]!==M||t[23]!==P||t[24]!==u||t[25]!==l||t[26]!==L?(R=(0,$.jsx)(Zk,{title:l,selected:L,isStreaming:u,onSelect:M,onTitleDoubleClick:P,onClose:I,children:n}),t[20]=n,t[21]=I,t[22]=M,t[23]=P,t[24]=u,t[25]=l,t[26]=L,t[27]=R):R=t[27];let z=R,B;t[28]!==n||t[29]!==g||t[30]!==o||t[31]!==h||t[32]!==i||t[33]!==a||t[34]!==s||t[35]!==z||t[36]!==w||t[37]!==m||t[38]!==r?(B=i?(0,$.jsx)(Qk,{scrollRef:w,isLayoutExpanded:a,expandedWindowId:o,isPrimaryChatOpen:s,primaryTile:z,windows:r}):(0,$.jsx)($k,{showSoloConversationSurface:m,fadeInSoloConversationSurface:h,showFooterComposer:oC(g),children:n}),t[28]=n,t[29]=g,t[30]=o,t[31]=h,t[32]=i,t[33]=a,t[34]=s,t[35]=z,t[36]=w,t[37]=m,t[38]=r,t[39]=B):B=t[39];let V=B,H;t[40]===V?H=t[41]:(H=(0,$.jsx)(`div`,{className:`relative z-10 min-h-0 flex-1`,children:V}),t[40]=V,t[41]=H);let ee;t[42]!==p||t[43]!==f||t[44]!==d?(ee=(0,$.jsx)(eA,{showGitOps:d,selectedThreadId:f,selectedProjectId:p}),t[42]=p,t[43]=f,t[44]=d,t[45]=ee):ee=t[45];let te;t[46]!==H||t[47]!==ee?(te=(0,$.jsxs)(`div`,{className:`relative flex h-full min-h-0 w-full flex-col overflow-hidden`,children:[H,ee]}),t[46]=H,t[47]=ee,t[48]=te):te=t[48];let ne;return t[49]!==g||t[50]!==_||t[51]!==i||t[52]!==te?(ne=(0,$.jsx)(nC,{placement:`footer`,embedded:i,composerPhase:g,composerReveal:_,children:te}),t[49]=g,t[50]=_,t[51]=i,t[52]=te,t[53]=ne):ne=t[53],ne}var nA=Ut(`app.use-chat-history.hook`);function rA(){let e=Ks(),t=Vs(),n=X(e=>e.selectedThreadId);(0,Z.useEffect)(()=>{if(!n)return;let r=n,i=!1;async function a(){if(kc(t.getState().threadToolSessions[r]))return;let n=t.getState().chatHistoryEpoch;try{let[a,o]=await Promise.all([ci(r),Ur(r).catch(e=>(nA.error(`Failed to load thread metadata for conversation id:`,e),null))]);if(i||t.getState().chatHistoryEpoch!==n)return;let s=_s(r,{hasSession:()=>!1,streamingStates:t.getState().threadStreamingStates}),c=o?.currentConversationId?.trim()||void 0;if(c&&e({type:Y.SetPrimaryConversationId,conversationId:c}),s||e({type:Y.SetMessages,messages:a.messages,conversationId:c,historyEpoch:n}),s)return;Ma.invalidate(`processing-threads`);let l=await No();if(i||t.getState().chatHistoryEpoch!==n)return;e({type:Y.SetProcessingThreads,threadIds:l})}catch(a){nA.error(`Failed to load chat history:`,a),!i&&t.getState().chatHistoryEpoch===n&&(e({type:Y.SetMessages,messages:[],historyEpoch:n}),e({type:Y.ResetStream,threadId:r,paneId:`primary`}))}}return a(),()=>{i=!0}},[n,X(e=>e.selectedProjectId),e,t])}function iA(){let e=(0,Q.c)(8),t=Ks(),n=Vs(),r=X(aA),i=r?.messageId,a;e[0]===i?a=e[1]:(a=e=>i?e.messages.some(e=>e.messageId===i):!0,e[0]=i,e[1]=a);let o=X(a),s,c;e[2]!==t||e[3]!==o||e[4]!==r||e[5]!==n?(s=()=>{!r||o||t({type:Y.SetMessages,messages:[...n.getState().messages,bc(r)]})},c=[r,o,t,n],e[2]=t,e[3]=o,e[4]=r,e[5]=n,e[6]=s,e[7]=c):(s=e[6],c=e[7]),(0,Z.useEffect)(s,c)}function aA(e){if(!e.selectedThreadId)return null;let t=e.threadToolSessions[e.selectedThreadId];return t&&kc(t)?t:null}var oA=(0,Z.lazy)(()=>us(()=>import(`./diff-view-XN5G5F6E.js`),__vite__mapDeps([18,1,19,20,4,5,21,22,23,24,25,14,26,27]))),sA=(0,Z.lazy)(()=>us(()=>import(`./create-project-dialog-CSVkngnF.js`),__vite__mapDeps([35,1,33,4,5]))),cA=Ut(`chat.area`);function lA(e){let t=(0,Q.c)(40),{onCreateThread:n,onSubmitClone:r,onSubmitWebApp:i,onSubmitFolder:a,onOpenFolder:o}=e,s=Ks(),c=Yn(),l=Gn(),[u,d]=(0,Z.useState)(!1),[f,p]=(0,Z.useState)(null),m=X(mA),h;t[0]===s?h=t[1]:(h=()=>{s({type:Y.CloseSidebar})},t[0]=s,t[1]=h);let g=h,_;t[2]===g?_=t[3]:(_=()=>{g(),p(`clone`),d(!0)},t[2]=g,t[3]=_);let v=_,y;t[4]===g?y=t[5]:(y=()=>{g(),p(`webapp`),d(!0)},t[4]=g,t[5]=y);let b=y,x;t[6]===r?x=t[7]:(x=async(e,t)=>{d(!1),p(null),await r(e,t).catch(pA)},t[6]=r,t[7]=x);let S=x,C;t[8]===i?C=t[9]:(C=async(e,t,n)=>{d(!1),p(null),await i(e,t,n).catch(fA)},t[8]=i,t[9]=C);let w=C,T;t[10]!==g||t[11]!==o?(T=async()=>{g(),d(!1),p(null),await o().catch(dA)},t[10]=g,t[11]=o,t[12]=T):T=t[12];let E=T,D;t[13]===a?D=t[14]:(D=async e=>{d(!1),p(null),await a(e).catch(uA)},t[13]=a,t[14]=D);let O=D,k=l.pathname===`/review`,A;t[15]===c?A=t[16]:(A=()=>{c(`/`)},t[15]=c,t[16]=A);let j=A;rA(),iA();let M=!k,N;t[17]!==v||t[18]!==b||t[19]!==E||t[20]!==n?(N=(0,$.jsx)(iO,{paneId:`primary`,onCreateThread:n,showEmptyState:!0,hideInput:!0,onConnectRepo:v,onNewApp:b,onOpenFolder:E}),t[17]=v,t[18]=b,t[19]=E,t[20]=n,t[21]=N):N=t[21];let P=M?N:null,F;t[22]!==P||t[23]!==j||t[24]!==k||t[25]!==m||t[26]!==M?(F=k&&m?(0,$.jsx)(Md,{threadId:m,children:(0,$.jsx)(Z.Suspense,{fallback:(0,$.jsx)(ga,{}),children:(0,$.jsx)(oA,{threadId:m,onExit:j})})}):M?(0,$.jsx)(tA,{children:P}):null,t[22]=P,t[23]=j,t[24]=k,t[25]=m,t[26]=M,t[27]=F):F=t[27];let I=f??void 0,L;t[28]!==u||t[29]!==O||t[30]!==S||t[31]!==w||t[32]!==I?(L=(0,$.jsx)(Z.Suspense,{fallback:null,children:(0,$.jsx)(sA,{open:u,onOpenChange:d,initialMode:I,onSubmitClone:S,onSubmitWebApp:w,onSubmitFolder:O})}),t[28]=u,t[29]=O,t[30]=S,t[31]=w,t[32]=I,t[33]=L):L=t[33];let R;t[34]!==F||t[35]!==L?(R=(0,$.jsxs)(`div`,{className:`relative flex h-full flex-col`,children:[F,L]}),t[34]=F,t[35]=L,t[36]=R):R=t[36];let z;return t[37]!==m||t[38]!==R?(z=(0,$.jsx)(Bm,{threadId:m,children:R}),t[37]=m,t[38]=R,t[39]=z):z=t[39],z}function uA(e){cA.error(`Failed to create folder`,{err:e})}function dA(e){cA.error(`Failed to open folder`,{err:e})}function fA(e){cA.error(`Failed to create project`,{err:e})}function pA(e){cA.error(`Failed to clone repository`,{err:e})}function mA(e){return e.selectedThreadId}var hA=1e3;function gA(e){return!Number.isFinite(e)||e<=0?`+$0.00`:`+$${(Math.round(e*100)/100).toFixed(2)}`}function _A(e,t){if(!Number.isFinite(e)||!Number.isFinite(t))return 0;let n=e-t;return n<=0?0:Math.round(n*100)/100}function vA(e){return 300+(Math.max(e,1)-1)*30}function yA(e){let t=(0,Q.c)(8),{deltaLabel:n,phase:r}=e,i=(0,Z.useRef)(null),a;t[0]===r?a=t[1]:(a=()=>{if(r!==`fade`||!i.current)return;let e=i.current.animate([{opacity:1},{opacity:0}],{duration:280,easing:`ease-out`,fill:`forwards`});return()=>{e.cancel()}},t[0]=r,t[1]=a);let o;if(t[2]!==n||t[3]!==r?(o=[r,n],t[2]=n,t[3]=r,t[4]=o):o=t[4],(0,Z.useEffect)(a,o),r!==`hold`&&r!==`fade`)return null;let s;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(s=G(U.compact,`pointer-events-none absolute inset-0 z-10 flex items-center justify-center rounded-full`,`bg-foreground text-background font-mono tabular-nums font-bold whitespace-nowrap`),t[5]=s):s=t[5];let c;return t[6]===n?c=t[7]:(c=(0,$.jsx)(`span`,{ref:i,className:s,"aria-hidden":`true`,children:n}),t[6]=n,t[7]=c),c}function bA(e){return $e(e).split(``)}function xA(e){let t=(0,Q.c)(19),{previousCharacter:n,nextCharacter:r,isFlipping:i,index:a,flipKey:o}=e,s=i&&n!==r,c=s?r:n;if(!s){let e;return t[0]===c?e=t[1]:(e=(0,$.jsx)(`span`,{className:`inline-block`,children:c}),t[0]=c,t[1]=e),e}let l=a*30,u=`${o}-${a}-${r}`,d=`${l}ms`,f;t[2]===d?f=t[3]:(f={animationDuration:`300ms`,animationDelay:d},t[2]=d,t[3]=f);let p;t[4]!==n||t[5]!==f?(p=(0,$.jsx)(`span`,{className:`absolute inset-x-0 top-0 animate-daily-spend-flip-out`,style:f,children:n}),t[4]=n,t[5]=f,t[6]=p):p=t[6];let m=`${l}ms`,h;t[7]===m?h=t[8]:(h={animationDuration:`300ms`,animationDelay:m},t[7]=m,t[8]=h);let g;t[9]!==r||t[10]!==h?(g=(0,$.jsx)(`span`,{className:`absolute inset-x-0 top-0 animate-daily-spend-flip-in`,style:h,children:r}),t[9]=r,t[10]=h,t[11]=g):g=t[11];let _;t[12]===c?_=t[13]:(_=(0,$.jsx)(`span`,{className:`invisible`,children:c}),t[12]=c,t[13]=_);let v;return t[14]!==u||t[15]!==p||t[16]!==g||t[17]!==_?(v=(0,$.jsxs)(`span`,{className:`relative inline-block h-[1em] overflow-hidden align-bottom`,"aria-hidden":`true`,children:[p,g,_]},u),t[14]=u,t[15]=p,t[16]=g,t[17]=_,t[18]=v):v=t[18],v}function SA(e){let t=(0,Q.c)(12),{fromAmount:n,toAmount:r,isFlipping:i,flipKey:a,className:o}=e,s;if(t[0]!==n||t[1]!==r){let e=bA(n),i=bA(r),a=Math.max(e.length,i.length);s=Array.from({length:a},(t,n)=>({previousCharacter:e[n]??``,nextCharacter:i[n]??``})),t[0]=n,t[1]=r,t[2]=s}else s=t[2];let c=s,l;t[3]===o?l=t[4]:(l=G(`inline-flex items-center`,o),t[3]=o,t[4]=l);let u;t[5]!==c||t[6]!==a||t[7]!==i?(u=c.map((e,t)=>{let{previousCharacter:n,nextCharacter:r}=e;return(0,$.jsx)(xA,{previousCharacter:n,nextCharacter:r,isFlipping:i,index:t,flipKey:a},`${t}-${n}-${r}`)}),t[5]=c,t[6]=a,t[7]=i,t[8]=u):u=t[8];let d;return t[9]!==l||t[10]!==u?(d=(0,$.jsx)(`span`,{className:l,"aria-live":`polite`,children:u}),t[9]=l,t[10]=u,t[11]=d):d=t[11],d}function CA(e){return!Number.isFinite(e)||e<=0?`0%`:`${(e*100).toFixed(1)}%`}function wA(e){return Me(e.cacheReadTokens,we(e.inputTokens,e.cacheReadTokens,e.cacheWriteTokens))}function TA(e){let t=(0,Q.c)(9),{models:n}=e;if(n.length===0)return null;let r;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,$.jsx)(`div`,{className:U.caption,children:`By model`}),t[0]=r):r=t[0];let i;if(t[1]!==n){let e;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(e=function(e){let t=wA(e),n=T(t);return(0,$.jsxs)(`div`,{className:U.bodyMuted,children:[e.model,` · `,CA(t),n?` · not caching`:``]},e.model)},t[3]=e):e=t[3],i=n.map(e),t[1]=n,t[2]=i}else i=t[2];let a;t[4]===n?a=t[5]:(a=n.some(function(e){return T(wA(e))})?(0,$.jsx)(`div`,{className:U.caption,children:`Models marked not caching re-bill the full context as input each turn.`}):null,t[4]=n,t[5]=a);let o;return t[6]!==i||t[7]!==a?(o=(0,$.jsxs)(`div`,{className:`space-y-1 pt-2`,children:[r,i,a]}),t[6]=i,t[7]=a,t[8]=o):o=t[8],o}function EA(e){let t=(0,Q.c)(42),{inputTokens:n,cacheReadTokens:r,cacheWriteTokens:i,cacheReadCost:a,cacheWriteCost:o,byModel:s}=e,c,l,u,d,f,p,m,h,g,_;if(t[0]!==r||t[1]!==i||t[2]!==n||t[3]!==s){c=s===void 0?[]:s;let e=Me(r,we(n,r,i)),a=c[0];l=c.length>1||a!==void 0&&T(wA(a)),g=`space-y-1 pt-3`,t[14]===Symbol.for(`react.memo_cache_sentinel`)?(_=(0,$.jsx)(`div`,{className:U.label,children:`Prompt cache`}),t[14]=_):_=t[14],u=U.bodyMuted,t[15]===r?d=t[16]:(d=Vt(r),t[15]=r,t[16]=d),f=` cache read / `,t[17]===i?p=t[18]:(p=Vt(i),t[17]=i,t[18]=p),m=` cache write tokens · `,h=CA(e),t[0]=r,t[1]=i,t[2]=n,t[3]=s,t[4]=c,t[5]=l,t[6]=u,t[7]=d,t[8]=f,t[9]=p,t[10]=m,t[11]=h,t[12]=g,t[13]=_}else c=t[4],l=t[5],u=t[6],d=t[7],f=t[8],p=t[9],m=t[10],h=t[11],g=t[12],_=t[13];let v;t[19]!==u||t[20]!==d||t[21]!==f||t[22]!==p||t[23]!==m||t[24]!==h?(v=(0,$.jsxs)(`div`,{className:u,children:[d,f,p,m,h,` hit rate`]}),t[19]=u,t[20]=d,t[21]=f,t[22]=p,t[23]=m,t[24]=h,t[25]=v):v=t[25];let y;t[26]===a?y=t[27]:(y=$e(a),t[26]=a,t[27]=y);let b;t[28]===o?b=t[29]:(b=$e(o),t[28]=o,t[29]=b);let x;t[30]!==y||t[31]!==b?(x=(0,$.jsxs)(`div`,{className:U.bodyMuted,children:[y,` cache read cost /`,` `,b,` cache write cost`]}),t[30]=y,t[31]=b,t[32]=x):x=t[32];let S;t[33]!==c||t[34]!==l?(S=l?(0,$.jsx)(TA,{models:c}):null,t[33]=c,t[34]=l,t[35]=S):S=t[35];let C;return t[36]!==v||t[37]!==x||t[38]!==S||t[39]!==g||t[40]!==_?(C=(0,$.jsxs)(`div`,{className:g,children:[_,v,x,S]}),t[36]=v,t[37]=x,t[38]=S,t[39]=g,t[40]=_,t[41]=C):C=t[41],C}var DA=pn,OA=Z.forwardRef((e,t)=>{let n=(0,Q.c)(9),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let a;n[3]===r?a=n[4]:(a=G(`inline-flex h-10 items-center justify-center rounded-md bg-muted p-1 text-muted-foreground`,r),n[3]=r,n[4]=a);let o;return n[5]!==i||n[6]!==t||n[7]!==a?(o=(0,$.jsx)(sr,{ref:t,className:a,...i}),n[5]=i,n[6]=t,n[7]=a,n[8]=o):o=n[8],o});OA.displayName=sr.displayName;var kA=Z.forwardRef((e,t)=>{let n=(0,Q.c)(9),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let a;n[3]===r?a=n[4]:(a=G(`inline-flex items-center justify-center whitespace-nowrap rounded-sm px-3 py-1.5 text-base font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow-sm dark:data-[state=active]:bg-foreground dark:data-[state=active]:text-background`,r),n[3]=r,n[4]=a);let o;return n[5]!==i||n[6]!==t||n[7]!==a?(o=(0,$.jsx)(ar,{ref:t,className:a,...i}),n[5]=i,n[6]=t,n[7]=a,n[8]=o):o=n[8],o});kA.displayName=ar.displayName;var AA=Z.forwardRef((e,t)=>{let n=(0,Q.c)(9),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let a;n[3]===r?a=n[4]:(a=G(`mt-2 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2`,r),n[3]=r,n[4]=a);let o;return n[5]!==i||n[6]!==t||n[7]!==a?(o=(0,$.jsx)(Fn,{ref:t,className:a,...i}),n[5]=i,n[6]=t,n[7]=a,n[8]=o):o=n[8],o});AA.displayName=Fn.displayName;var jA=Ut(`app.use-current-conversation-spend.hook`);function MA(e,t=``){let n=X(e=>e.focusedPane),r=X(e=>n===Ms?void 0:gs(e,n)),[i,a]=(0,Z.useState)(),[o,s]=(0,Z.useState)(0),[c,l]=(0,Z.useState)(0),[u,d]=(0,Z.useState)(0),[f,p]=(0,Z.useState)(0),[m,h]=(0,Z.useState)(0),[g,_]=(0,Z.useState)(0),[v,y]=(0,Z.useState)(0),[b,x]=(0,Z.useState)([]),[S,C]=(0,Z.useState)(!1),w=n===Ms?i:r;(0,Z.useEffect)(()=>{let t=!1;async function r(){if(!e||n!==Ms){a(void 0);return}try{let n=await Ur(e);if(t)return;a(n.currentConversationId)}catch(e){jA.error(`Failed to resolve current conversation id`,e),t||a(void 0)}}return r(),()=>{t=!0}},[n,t,e]);let T=(0,Z.useCallback)(async function(){if(!e||!w){s(0),l(0),d(0),p(0),h(0),_(0),y(0),x([]),C(!1);return}C(!0);try{let t=await Xi(e,w);s(t.usage.cost.total),l(t.usage.input),d(t.usage.output),p(t.usage.cacheRead),h(t.usage.cacheWrite),_(t.usage.cost.cacheRead),y(t.usage.cost.cacheWrite),x(t.cacheByModel??[])}catch(e){if(e instanceof Error&&e.message===`Conversation not found`){s(0),l(0),d(0),p(0),h(0),_(0),y(0),x([]);return}jA.error(`Failed to load current conversation spend`,e),s(0),l(0),d(0),p(0),h(0),_(0),y(0),x([])}finally{C(!1)}},[w,e]);return(0,Z.useEffect)(()=>{T()},[T,t]),{conversationId:w,totalCost:o,inputTokens:c,outputTokens:u,cacheReadTokens:f,cacheWriteTokens:m,cacheReadCost:g,cacheWriteCost:v,byModel:b,isLoading:S,refresh:T}}var NA=Ut(`app.use-daily-spend.hook`);function PA(e=``){let[t,n]=(0,Z.useState)(0),[r,i]=(0,Z.useState)(0),[a,o]=(0,Z.useState)(0),[s,c]=(0,Z.useState)(0),[l,u]=(0,Z.useState)(0),[d,f]=(0,Z.useState)(0),[p,m]=(0,Z.useState)(0),[h,g]=(0,Z.useState)(0),[_,v]=(0,Z.useState)(0),[y,b]=(0,Z.useState)(0),[x,S]=(0,Z.useState)(0),[C,w]=(0,Z.useState)(0),[T,E]=(0,Z.useState)(0),[D,O]=(0,Z.useState)(0),[k,A]=(0,Z.useState)(0),[j,M]=(0,Z.useState)(0),[N,P]=(0,Z.useState)([]),[F,I]=(0,Z.useState)([]),[L,R]=(0,Z.useState)(!0),[z,B]=(0,Z.useState)(0),V=(0,Z.useRef)(0),H=(0,Z.useCallback)(async function(){let e=++V.current;try{let t=await Ri();if(e!==V.current)return;n(t.today),i(t.last30Days),o(t.todayInputTokens),c(t.todayOutputTokens),u(t.last30DaysInputTokens),f(t.last30DaysOutputTokens),m(t.todayCacheReadTokens),g(t.todayCacheWriteTokens),v(t.last30DaysCacheReadTokens),b(t.last30DaysCacheWriteTokens),S(t.todayCacheReadCost),w(t.todayCacheWriteCost),E(t.last30DaysCacheReadCost),O(t.last30DaysCacheWriteCost),A(t.todayCompressionBytesSaved),M(t.last30DaysCompressionBytesSaved),P(t.todayByModel??[]),I(t.last30DaysByModel??[]),B(e=>e+1)}catch(t){if(e!==V.current)return;NA.error(`Failed to load daily spend summary`,t)}finally{e===V.current&&R(!1)}},[]);return(0,Z.useEffect)(()=>{H()},[H,e]),{today:t,last30Days:r,todayInputTokens:a,todayOutputTokens:s,last30DaysInputTokens:l,last30DaysOutputTokens:d,todayCacheReadTokens:p,todayCacheWriteTokens:h,last30DaysCacheReadTokens:_,last30DaysCacheWriteTokens:y,todayCacheReadCost:x,todayCacheWriteCost:C,last30DaysCacheReadCost:T,last30DaysCacheWriteCost:D,todayCompressionBytesSaved:k,last30DaysCompressionBytesSaved:j,todayByModel:N,last30DaysByModel:F,isLoading:L,refreshGeneration:z,refresh:H}}function FA(){let e=(0,Q.c)(2),[t,n]=(0,Z.useState)(!1),r,i;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=()=>{let e=window.matchMedia(`(prefers-reduced-motion: reduce)`),t=function(){n(e.matches)};return t(),e.addEventListener(`change`,t),()=>{e.removeEventListener(`change`,t)}},i=[],e[0]=r,e[1]=i):(r=e[0],i=e[1]),(0,Z.useEffect)(r,i),t}function IA({todayFromApi:e,refreshSignal:t,refreshGeneration:n,isLoading:r}){let i=FA(),[a,o]=(0,Z.useState)(0),[s,c]=(0,Z.useState)(`idle`),[l,u]=(0,Z.useState)(0),[d,f]=(0,Z.useState)(0),p=(0,Z.useRef)(0),m=(0,Z.useRef)(0),h=(0,Z.useRef)(0),g=(0,Z.useRef)(!0),_=(0,Z.useRef)(t),v=(0,Z.useRef)(n),y=(0,Z.useRef)(!1),b=(0,Z.useRef)(`idle`),x=(0,Z.useRef)([]);b.current=s;let S=(0,Z.useCallback)(function(){for(let e of x.current)window.clearTimeout(e);x.current=[]},[]),C=(0,Z.useCallback)(function(e,t){let n=window.setTimeout(e,t);x.current.push(n)},[]),w=(0,Z.useRef)(()=>{});return w.current=function(){if(h.current<=0||b.current!==`idle`)return;let e=h.current;h.current=0,u(e),c(`hold`),C(()=>{c(`fade`),C(()=>{let t=p.current+e,n=vA($e(t).length);f(e=>e+1),c(`flip`),C(()=>{p.current=t,o(t),u(0),c(`idle`),h.current>0&&w.current()},n)},280)},hA)},(0,Z.useEffect)(()=>{if(r)return;if(g.current){g.current=!1,_.current=t,v.current=n,p.current=e,m.current=e,o(e);return}if(t!==_.current){let e=new Set(_.current?_.current.split(`,`):[]),n=new Set(t?t.split(`,`):[]);_.current=t;let r=!1;for(let t of n)if(!e.has(t)){r=!0;break}r&&(y.current=!0)}let a=n!==v.current;if(a&&(v.current=n),y.current){if(!a)return;y.current=!1;let t=_A(e,m.current);if(t<=0){b.current===`idle`&&(p.current=e,m.current=e,o(e));return}if(m.current=e,i){S(),h.current=0,u(0),c(`idle`),p.current=e,o(e);return}h.current+=t,b.current===`idle`&&(S(),w.current());return}a&&b.current===`idle`&&(p.current=e,m.current=e,o(e))},[S,r,i,n,t,C,e]),(0,Z.useEffect)(()=>()=>{S()},[S]),{isAnimating:s!==`idle`,phase:s,deltaLabel:l>0?gA(l):null,flipFromAmount:a,flipToAmount:a+l,isFlipping:s===`flip`,flipKey:d}}function LA(){let e=(0,Q.c)(1),t;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t={key:`showDailySpend`,defaultValue:!0,logScope:`app.use-show-daily-spend.hook`,settingLabel:`spend`},e[0]=t):t=e[0],rS(t)}var RA=`h-auto shrink-0 rounded-full border bg-muted/40`,zA=`rounded-full px-4 data-[state=active]:bg-foreground data-[state=active]:text-background data-[state=active]:shadow-sm`;function BA(e){return{model:e.modelId,inputTokens:e.inputTokens,cacheReadTokens:e.cacheReadTokens,cacheWriteTokens:e.cacheWriteTokens,cacheReadCost:e.cacheReadCost,cacheWriteCost:e.cacheWriteCost}}function VA(e){let t=(0,Q.c)(22),{todayLabel:r,todayInputTokens:i,todayOutputTokens:a,todayCacheReadTokens:o,todayCacheWriteTokens:s,todayCacheReadCost:c,todayCacheWriteCost:l,todayCompressionBytesSaved:u,todayByModel:d}=e,f=i>0||a>0||o>0||s>0,p=o>0||s>0||c>0||l>0||d.length>0,m=u>0,h;t[0]===r?h=t[1]:(h=(0,$.jsx)(`div`,{className:`space-y-1`,children:(0,$.jsxs)(`div`,{children:[r,` spent`]})}),t[0]=r,t[1]=h);let g;t[2]!==f||t[3]!==i||t[4]!==a?(g=f?(0,$.jsxs)(`div`,{className:`space-y-1 pt-3`,children:[(0,$.jsx)(`div`,{className:U.label,children:`Tokens`}),(0,$.jsxs)(`div`,{className:U.bodyMuted,children:[Vt(i),` input / `,Vt(a),` `,`output tokens`]})]}):null,t[2]=f,t[3]=i,t[4]=a,t[5]=g):g=t[5];let _;t[6]!==p||t[7]!==d||t[8]!==c||t[9]!==o||t[10]!==l||t[11]!==s||t[12]!==i?(_=p?(0,$.jsx)(EA,{inputTokens:i,cacheReadTokens:o,cacheWriteTokens:s,cacheReadCost:c,cacheWriteCost:l,byModel:d}):null,t[6]=p,t[7]=d,t[8]=c,t[9]=o,t[10]=l,t[11]=s,t[12]=i,t[13]=_):_=t[13];let v;t[14]!==m||t[15]!==u?(v=m?(0,$.jsxs)(`div`,{className:`space-y-1 pt-3`,children:[(0,$.jsx)(`div`,{className:U.label,children:`Tool output compression`}),(0,$.jsxs)(`div`,{className:U.bodyMuted,children:[n(u),` saved`]})]}):null,t[14]=m,t[15]=u,t[16]=v):v=t[16];let y;return t[17]!==h||t[18]!==g||t[19]!==_||t[20]!==v?(y=(0,$.jsxs)(`div`,{className:`space-y-4`,children:[h,g,_,v]}),t[17]=h,t[18]=g,t[19]=_,t[20]=v,t[21]=y):y=t[21],y}function HA(e){let t=(0,Q.c)(22),{totalCost:n,inputTokens:r,outputTokens:i,cacheReadTokens:a,cacheWriteTokens:o,cacheReadCost:s,cacheWriteCost:c,byModel:l,hasConversation:u,isLoading:d}=e;if(!u){let e;return t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,$.jsx)(`div`,{className:U.bodyMuted,children:`Start a conversation to see spend for the current chat.`}),t[0]=e):e=t[0],e}if(d){let e;return t[1]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,$.jsx)(`div`,{className:U.bodyMuted,children:`Loading current chat spend…`}),t[1]=e):e=t[1],e}let f;t[2]===n?f=t[3]:(f=$e(n),t[2]=n,t[3]=f);let p=f,m=r>0||i>0||a>0||o>0,h=a>0||o>0||s>0||c>0||l.length>0,g=n>0?`${p} spent`:`No spend recorded yet`,_;t[4]===g?_=t[5]:(_=(0,$.jsx)(`div`,{className:`space-y-1`,children:(0,$.jsx)(`div`,{children:g})}),t[4]=g,t[5]=_);let v;t[6]!==m||t[7]!==r||t[8]!==i?(v=m?(0,$.jsxs)(`div`,{className:`space-y-1 pt-3`,children:[(0,$.jsx)(`div`,{className:U.label,children:`Tokens`}),(0,$.jsxs)(`div`,{className:U.bodyMuted,children:[Vt(r),` input / `,Vt(i),` output tokens`]})]}):null,t[6]=m,t[7]=r,t[8]=i,t[9]=v):v=t[9];let y;t[10]!==l||t[11]!==s||t[12]!==a||t[13]!==c||t[14]!==o||t[15]!==h||t[16]!==r?(y=h?(0,$.jsx)(EA,{inputTokens:r,cacheReadTokens:a,cacheWriteTokens:o,cacheReadCost:s,cacheWriteCost:c,byModel:l}):null,t[10]=l,t[11]=s,t[12]=a,t[13]=c,t[14]=o,t[15]=h,t[16]=r,t[17]=y):y=t[17];let b;return t[18]!==_||t[19]!==v||t[20]!==y?(b=(0,$.jsxs)(`div`,{className:`space-y-4`,children:[_,v,y]}),t[18]=_,t[19]=v,t[20]=y,t[21]=b):b=t[21],b}function UA(e){let t=(0,Q.c)(23),{last30DaysLabel:r,averagePerDayLabel:i,last30DaysInputTokens:a,last30DaysOutputTokens:o,last30DaysCacheReadTokens:s,last30DaysCacheWriteTokens:c,last30DaysCacheReadCost:l,last30DaysCacheWriteCost:u,last30DaysCompressionBytesSaved:d,last30DaysByModel:f}=e,p=a>0||o>0||s>0||c>0,m=s>0||c>0||l>0||u>0||f.length>0,h=d>0,g;t[0]!==i||t[1]!==r?(g=(0,$.jsx)(`div`,{className:`space-y-1`,children:(0,$.jsxs)(`div`,{children:[r,` spent · `,i,`/day average`]})}),t[0]=i,t[1]=r,t[2]=g):g=t[2];let _;t[3]!==p||t[4]!==a||t[5]!==o?(_=p?(0,$.jsxs)(`div`,{className:`space-y-1 pt-3`,children:[(0,$.jsx)(`div`,{className:U.label,children:`Tokens`}),(0,$.jsxs)(`div`,{className:U.bodyMuted,children:[Vt(a),` input /`,` `,Vt(o),` output tokens`]})]}):null,t[3]=p,t[4]=a,t[5]=o,t[6]=_):_=t[6];let v;t[7]!==m||t[8]!==f||t[9]!==l||t[10]!==s||t[11]!==u||t[12]!==c||t[13]!==a?(v=m?(0,$.jsx)(EA,{inputTokens:a,cacheReadTokens:s,cacheWriteTokens:c,cacheReadCost:l,cacheWriteCost:u,byModel:f}):null,t[7]=m,t[8]=f,t[9]=l,t[10]=s,t[11]=u,t[12]=c,t[13]=a,t[14]=v):v=t[14];let y;t[15]!==h||t[16]!==d?(y=h?(0,$.jsxs)(`div`,{className:`space-y-1 pt-3`,children:[(0,$.jsx)(`div`,{className:U.label,children:`Tool output compression`}),(0,$.jsxs)(`div`,{className:U.bodyMuted,children:[n(d),` saved`]})]}):null,t[15]=h,t[16]=d,t[17]=y):y=t[17];let b;return t[18]!==g||t[19]!==_||t[20]!==v||t[21]!==y?(b=(0,$.jsxs)(`div`,{className:`space-y-4`,children:[g,_,v,y]}),t[18]=g,t[19]=_,t[20]=v,t[21]=y,t[22]=b):b=t[22],b}function WA(){let e=(0,Q.c)(101),t=X(KA),n=X(GA),r=mC(),i;e[0]===t?i=e[1]:(i=t.join(`,`),e[0]=t,e[1]=i);let a=i,{isEnabled:o,isLoading:s}=LA(),{today:c,last30Days:l,todayInputTokens:u,todayOutputTokens:d,last30DaysInputTokens:f,last30DaysOutputTokens:p,todayCacheReadTokens:m,todayCacheWriteTokens:h,last30DaysCacheReadTokens:g,last30DaysCacheWriteTokens:_,todayCacheReadCost:v,todayCacheWriteCost:y,last30DaysCacheReadCost:b,last30DaysCacheWriteCost:x,todayCompressionBytesSaved:S,last30DaysCompressionBytesSaved:C,todayByModel:w,last30DaysByModel:T,isLoading:E,refreshGeneration:D}=PA(a),O;e[2]!==E||e[3]!==D||e[4]!==a||e[5]!==c?(O={todayFromApi:c,refreshSignal:a,refreshGeneration:D,isLoading:E},e[2]=E,e[3]=D,e[4]=a,e[5]=c,e[6]=O):O=e[6];let{isAnimating:k,phase:A,deltaLabel:j,flipFromAmount:M,flipToAmount:N,isFlipping:P,flipKey:F}=IA(O),{conversationId:I,totalCost:L,inputTokens:R,outputTokens:z,cacheReadTokens:B,cacheWriteTokens:V,cacheReadCost:H,cacheWriteCost:ee,byModel:te,isLoading:ne}=MA(n,a),[re,ie]=(0,Z.useState)(!1);if(!o||s||E||c===0&&!k)return null;let ae=l/30,oe;e[7]===c?oe=e[8]:(oe=$e(c),e[7]=c,e[8]=oe);let se=oe,ce;e[9]===l?ce=e[10]:(ce=$e(l),e[9]=l,e[10]=ce);let le=ce,ue;e[11]===ae?ue=e[12]:(ue=$e(ae),e[11]=ae,e[12]=ue);let W=ue,de;e[13]===L?de=e[14]:(de=$e(L),e[13]=L,e[14]=de);let fe=de,pe=r?nl:`text-foreground hover:text-foreground/80`,me;e[15]===pe?me=e[16]:(me=G(U.compact,`relative overflow-hidden inline-flex h-8 items-center rounded-full px-3 font-mono tabular-nums electrobun-webkit-app-region-no-drag cursor-pointer transition-colors`,pe),e[15]=pe,e[16]=me);let he;e[17]===Symbol.for(`react.memo_cache_sentinel`)?(he=()=>ie(!0),e[17]=he):he=e[17];let ge;e[18]!==M||e[19]!==F||e[20]!==N||e[21]!==P?(ge=(0,$.jsx)(`span`,{className:`col-start-1 row-start-1`,children:(0,$.jsx)(SA,{fromAmount:M,toAmount:N,isFlipping:P,flipKey:F})}),e[18]=M,e[19]=F,e[20]=N,e[21]=P,e[22]=ge):ge=e[22];let _e;e[23]!==j||e[24]!==A?(_e=j&&(A===`hold`||A===`fade`)?(0,$.jsx)(`span`,{className:`col-start-1 row-start-1 invisible font-bold`,"aria-hidden":`true`,children:j}):null,e[23]=j,e[24]=A,e[25]=_e):_e=e[25];let ve;e[26]!==_e||e[27]!==ge?(ve=(0,$.jsxs)(`span`,{className:`inline-grid items-center justify-items-center`,children:[ge,_e]}),e[26]=_e,e[27]=ge,e[28]=ve):ve=e[28];let ye;e[29]!==j||e[30]!==A?(ye=j?(0,$.jsx)(yA,{deltaLabel:j,phase:A}):null,e[29]=j,e[30]=A,e[31]=ye):ye=e[31];let be;e[32]===Symbol.for(`react.memo_cache_sentinel`)?(be=(0,$.jsx)(`span`,{className:`sr-only`,children:`View spend details`}),e[32]=be):be=e[32];let xe;e[33]!==ve||e[34]!==ye||e[35]!==me?(xe=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(`button`,{type:`button`,className:me,onClick:he,children:[ve,ye,be]})}),e[33]=ve,e[34]=ye,e[35]=me,e[36]=xe):xe=e[36];let Se;e[37]===se?Se=e[38]:(Se=(0,$.jsxs)(`div`,{children:[se,` spent today`]}),e[37]=se,e[38]=Se);let Ce;e[39]===fe?Ce=e[40]:(Ce=(0,$.jsxs)(`div`,{children:[fe,` · This Chat`]}),e[39]=fe,e[40]=Ce);let we;e[41]===le?we=e[42]:(we=(0,$.jsxs)(`div`,{children:[le,` spend last 30 days`]}),e[41]=le,e[42]=we);let Te;e[43]===W?Te=e[44]:(Te=(0,$.jsxs)(`div`,{children:[W,` average per day`]}),e[43]=W,e[44]=Te);let Ee;e[45]!==Se||e[46]!==Ce||e[47]!==we||e[48]!==Te?(Ee=(0,$.jsxs)(Fr,{className:`space-y-1`,children:[Se,Ce,we,Te]}),e[45]=Se,e[46]=Ce,e[47]=we,e[48]=Te,e[49]=Ee):Ee=e[49];let De;e[50]!==xe||e[51]!==Ee?(De=(0,$.jsx)(Zo,{children:(0,$.jsxs)(Mi,{children:[xe,Ee]})}),e[50]=xe,e[51]=Ee,e[52]=De):De=e[52];let Oe;e[53]===Symbol.for(`react.memo_cache_sentinel`)?(Oe=(0,$.jsx)(Dr,{children:(0,$.jsx)(qa,{children:`Spend`})}),e[53]=Oe):Oe=e[53];let ke;e[54]===Symbol.for(`react.memo_cache_sentinel`)?(ke=(0,$.jsxs)(OA,{className:RA,children:[(0,$.jsx)(kA,{value:`today`,className:zA,children:`Today`}),(0,$.jsx)(kA,{value:`currentChat`,className:zA,children:`This Chat`}),(0,$.jsx)(kA,{value:`last30Days`,className:zA,children:`Last 30 Days`})]}),e[54]=ke):ke=e[54];let Ae;e[55]===w?Ae=e[56]:(Ae=w.map(BA),e[55]=w,e[56]=Ae);let je;e[57]!==Ae||e[58]!==v||e[59]!==m||e[60]!==y||e[61]!==h||e[62]!==S||e[63]!==u||e[64]!==se||e[65]!==d?(je=(0,$.jsx)(AA,{value:`today`,className:`min-h-0 flex-1`,children:(0,$.jsx)(za,{className:`h-full`,children:(0,$.jsx)(VA,{todayLabel:se,todayInputTokens:u,todayOutputTokens:d,todayCacheReadTokens:m,todayCacheWriteTokens:h,todayCacheReadCost:v,todayCacheWriteCost:y,todayCompressionBytesSaved:S,todayByModel:Ae})})}),e[57]=Ae,e[58]=v,e[59]=m,e[60]=y,e[61]=h,e[62]=S,e[63]=u,e[64]=se,e[65]=d,e[66]=je):je=e[66];let Me=!!(n&&I),Ne;e[67]!==te||e[68]!==H||e[69]!==B||e[70]!==ee||e[71]!==V||e[72]!==L||e[73]!==R||e[74]!==z||e[75]!==ne||e[76]!==Me?(Ne=(0,$.jsx)(AA,{value:`currentChat`,className:`min-h-0 flex-1`,children:(0,$.jsx)(za,{className:`h-full`,children:(0,$.jsx)(HA,{totalCost:L,inputTokens:R,outputTokens:z,cacheReadTokens:B,cacheWriteTokens:V,cacheReadCost:H,cacheWriteCost:ee,byModel:te,hasConversation:Me,isLoading:ne})})}),e[67]=te,e[68]=H,e[69]=B,e[70]=ee,e[71]=V,e[72]=L,e[73]=R,e[74]=z,e[75]=ne,e[76]=Me,e[77]=Ne):Ne=e[77];let Pe;e[78]===T?Pe=e[79]:(Pe=T.map(BA),e[78]=T,e[79]=Pe);let Fe;e[80]!==W||e[81]!==b||e[82]!==g||e[83]!==x||e[84]!==_||e[85]!==C||e[86]!==f||e[87]!==le||e[88]!==p||e[89]!==Pe?(Fe=(0,$.jsx)(AA,{value:`last30Days`,className:`min-h-0 flex-1`,children:(0,$.jsx)(za,{className:`h-full`,children:(0,$.jsx)(UA,{last30DaysLabel:le,averagePerDayLabel:W,last30DaysInputTokens:f,last30DaysOutputTokens:p,last30DaysCacheReadTokens:g,last30DaysCacheWriteTokens:_,last30DaysCacheReadCost:b,last30DaysCacheWriteCost:x,last30DaysCompressionBytesSaved:C,last30DaysByModel:Pe})})}),e[80]=W,e[81]=b,e[82]=g,e[83]=x,e[84]=_,e[85]=C,e[86]=f,e[87]=le,e[88]=p,e[89]=Pe,e[90]=Fe):Fe=e[90];let Ie;e[91]!==je||e[92]!==Ne||e[93]!==Fe?(Ie=(0,$.jsxs)(Ir,{className:`flex h-[520px] max-w-xl flex-col overflow-hidden max-h-[calc(100dvh-2rem)]`,children:[Oe,(0,$.jsxs)(DA,{defaultValue:`today`,className:`flex min-h-0 flex-1 flex-col`,children:[ke,je,Ne,Fe]})]}),e[91]=je,e[92]=Ne,e[93]=Fe,e[94]=Ie):Ie=e[94];let Le;e[95]!==re||e[96]!==Ie?(Le=(0,$.jsx)(Ni,{open:re,onOpenChange:ie,children:Ie}),e[95]=re,e[96]=Ie,e[97]=Le):Le=e[97];let Re;return e[98]!==De||e[99]!==Le?(Re=(0,$.jsxs)($.Fragment,{children:[De,Le]}),e[98]=De,e[99]=Le,e[100]=Re):Re=e[100],Re}function GA(e){return e.selectedThreadId}function KA(e){return e.completedThreadIds}function qA(){let e=(0,Q.c)(15),{resolvedTheme:t,setTheme:n}=Ic(),r=t===`dark`,i;e[0]!==r||e[1]!==n?(i=function(){n(r?`light`:`dark`)},e[0]=r,e[1]=n,e[2]=i):i=e[2];let a=i,o;e[3]===Symbol.for(`react.memo_cache_sentinel`)?(o=G(`h-8 w-8 shrink-0 electrobun-webkit-app-region-no-drag`,nl),e[3]=o):o=e[3];let s=r?`Switch to light mode`:`Switch to dark mode`,c;e[4]===r?c=e[5]:(c=r?(0,$.jsx)(fe,{className:`h-4 w-4`}):(0,$.jsx)(Je,{className:`h-4 w-4`}),e[4]=r,e[5]=c);let l;e[6]!==a||e[7]!==s||e[8]!==c?(l=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(Hr,{variant:`ghost`,size:`icon`,className:o,onClick:a,"aria-label":s,children:c})}),e[6]=a,e[7]=s,e[8]=c,e[9]=l):l=e[9];let u=r?`Light mode`:`Dark mode`,d;e[10]===u?d=e[11]:(d=(0,$.jsx)(Fr,{children:u}),e[10]=u,e[11]=d);let f;return e[12]!==l||e[13]!==d?(f=(0,$.jsxs)(Mi,{children:[l,d]}),e[12]=l,e[13]=d,e[14]=f):f=e[14],f}function JA(e,t){let n=e.find(e=>e.projectId===t.projectId);return n?.threads.some(e=>e.threadId===t.threadId)?n:e.find(e=>e.threads.some(e=>e.threadId===t.threadId))}function YA(){let e=(0,Q.c)(15),t=Ks(),n=Vs(),r=Yn(),i=Gn(),{toast:a}=ic(),{selectWindow:o,revealWindow:s,expandWindow:c,hasOpenWindows:l}=gc(),{setActiveMainTab:u}=mc(),{handleSelectThread:d,refreshProjects:f}=sw(),p;e[0]!==t||e[1]!==c||e[2]!==d||e[3]!==l||e[4]!==i.pathname||e[5]!==r||e[6]!==f||e[7]!==s||e[8]!==o||e[9]!==u||e[10]!==n||e[11]!==a?(p=async function(e){let p=JA(n.getState().projects,e);if(p||=(await f(),JA(n.getState().projects,e)),!p){a({title:`Conversation not found`,description:`Refresh and try again, or check that the project still exists.`,variant:`destructive`});return}if(!p.threads.some(t=>t.threadId===e.threadId)){a({title:`Conversation not found`,description:`This chat’s thread is no longer available.`,variant:`destructive`});return}(i.pathname.startsWith(`/settings`)||i.pathname!==`/`)&&(r(`/`),u(`chat`)),t({type:Y.OpenProjectPanel,projectId:p.projectId});let{selectedThreadId:m}=n.getState();e.threadId!==m&&d(p.projectId,e.threadId),l&&c(Ct);let h=function(e){t({type:Y.SetFocusedPane,paneId:e}),o(e),s(e)},g=n.getState().extraChatPanes,_=Object.entries(g).find(t=>{let[,n]=t;return n.conversationId===e.conversationId})?.[0];if(_){h(_);return}let v=je();t({type:Y.AddChatPane,paneId:v,conversationId:e.conversationId}),o(v),s(v)},e[0]=t,e[1]=c,e[2]=d,e[3]=l,e[4]=i.pathname,e[5]=r,e[6]=f,e[7]=s,e[8]=o,e[9]=u,e[10]=n,e[11]=a,e[12]=p):p=e[12];let m=p,h;return e[13]===m?h=e[14]:(h={openConversation:m},e[13]=m,e[14]=h),h}function XA(e){let t=(0,Q.c)(39),{open:n,onOpenChange:r,feedbackName:i,onFeedbackNameChange:a,feedbackEmail:o,onFeedbackEmailChange:s,feedbackText:c,onFeedbackTextChange:l,loadingFeedbackUser:u,submittingFeedback:d,onSubmit:f}=e,p;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(p=(0,$.jsxs)(Dr,{children:[(0,$.jsx)(qa,{children:`Send Feedback`}),(0,$.jsx)(_i,{children:`Share feedback about Tarsk.`})]}),t[0]=p):p=t[0];let m;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(m=(0,$.jsx)(da,{htmlFor:`feedback-name`,children:`Name`}),t[1]=m):m=t[1];let h;t[2]===a?h=t[3]:(h=e=>a(e.target.value),t[2]=a,t[3]=h);let g=d||u,_;t[4]!==i||t[5]!==h||t[6]!==g?(_=(0,$.jsxs)(`div`,{className:`grid gap-2`,children:[m,(0,$.jsx)(Qo,{id:`feedback-name`,value:i,onChange:h,placeholder:`Your name`,disabled:g})]}),t[4]=i,t[5]=h,t[6]=g,t[7]=_):_=t[7];let v;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(v=(0,$.jsx)(da,{htmlFor:`feedback-email`,children:`Email`}),t[8]=v):v=t[8];let y;t[9]===s?y=t[10]:(y=e=>s(e.target.value),t[9]=s,t[10]=y);let b=d||u,x;t[11]!==o||t[12]!==y||t[13]!==b?(x=(0,$.jsxs)(`div`,{className:`grid gap-2`,children:[v,(0,$.jsx)(Qo,{id:`feedback-email`,type:`email`,value:o,onChange:y,placeholder:`you@example.com`,disabled:b})]}),t[11]=o,t[12]=y,t[13]=b,t[14]=x):x=t[14];let S;t[15]===Symbol.for(`react.memo_cache_sentinel`)?(S=(0,$.jsx)(da,{htmlFor:`feedback-text`,children:`Feedback`}),t[15]=S):S=t[15];let C;t[16]===l?C=t[17]:(C=e=>l(e.target.value),t[16]=l,t[17]=C);let w;t[18]!==c||t[19]!==d||t[20]!==C?(w=(0,$.jsxs)(`div`,{className:`grid gap-2`,children:[S,(0,$.jsx)(yw,{id:`feedback-text`,value:c,onChange:C,placeholder:`Tell us what you think...`,className:`min-h-32`,disabled:d})]}),t[18]=c,t[19]=d,t[20]=C,t[21]=w):w=t[21];let T;t[22]!==w||t[23]!==_||t[24]!==x?(T=(0,$.jsxs)(`div`,{className:`grid gap-4 py-2`,children:[_,x,w]}),t[22]=w,t[23]=_,t[24]=x,t[25]=T):T=t[25];let E;t[26]===d?E=t[27]:(E=d?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(ln,{className:`mr-2 h-4 w-4 animate-spin`}),`Sending...`]}):`Send`,t[26]=d,t[27]=E);let D;t[28]!==f||t[29]!==d||t[30]!==E?(D=(0,$.jsx)(Xa,{children:(0,$.jsx)(Hr,{onClick:f,disabled:d,children:E})}),t[28]=f,t[29]=d,t[30]=E,t[31]=D):D=t[31];let O;t[32]!==T||t[33]!==D?(O=(0,$.jsxs)(Ir,{className:`max-w-xl max-md:top-[max(1rem,env(safe-area-inset-top,0px))] max-md:max-h-[calc(100dvh-2rem)] max-md:translate-y-0 max-md:overflow-y-auto max-md:data-[state=closed]:slide-out-to-top max-md:data-[state=open]:slide-in-from-top max-md:data-[state=closed]:slide-out-to-left-0 max-md:data-[state=open]:slide-in-from-left-0 max-md:data-[state=closed]:zoom-out-100 max-md:data-[state=open]:zoom-in-100`,children:[p,T,D]}),t[32]=T,t[33]=D,t[34]=O):O=t[34];let k;return t[35]!==r||t[36]!==n||t[37]!==O?(k=(0,$.jsx)(Ni,{open:n,onOpenChange:r,children:O}),t[35]=r,t[36]=n,t[37]=O,t[38]=k):k=t[38],k}function ZA({open:e,onOpenChange:t}){let[n,r]=(0,Z.useState)([]),[i,a]=(0,Z.useState)(null),[o,s]=(0,Z.useState)(!1),[c,l]=(0,Z.useState)(!1);(0,Z.useEffect)(()=>{if(!e){a(null);return}let t=!1;return s(!0),wo().then(e=>{t||r(e)}).catch(()=>{t||(r([]),ac({title:`Unable to load processes`,description:`The CLI process list could not be loaded.`,variant:`destructive`}))}).finally(()=>{t||s(!1)}),()=>{t=!0}},[e]);async function u(){if(i){l(!0);try{await ti(i),r(e=>e.filter(e=>e.id!==i)),a(null)}catch{ac({title:`Unable to kill process`,description:`The process may have already exited.`,variant:`destructive`}),r(await wo().catch(()=>[])),a(null)}finally{l(!1)}}}return(0,$.jsx)(Ni,{open:e,onOpenChange:t,children:(0,$.jsxs)(Ir,{children:[(0,$.jsxs)(Dr,{children:[(0,$.jsx)(qa,{children:`Processes`}),(0,$.jsx)(_i,{children:`Select a process started by Tarsk to terminate it.`})]}),(0,$.jsx)(`div`,{className:`max-h-80 overflow-y-auto rounded-md border`,role:`listbox`,children:o?(0,$.jsxs)(`div`,{className:G(U.bodyMuted,`flex items-center justify-center gap-2 py-10`),children:[(0,$.jsx)(ln,{className:`h-4 w-4 animate-spin`}),`Loading processes...`]}):n.length===0?(0,$.jsx)(`div`,{className:G(U.bodyMuted,`py-10 text-center`),children:`No processes started by Tarsk are running.`}):n.map(e=>{let t=e.id===i;return(0,$.jsxs)(`button`,{type:`button`,role:`option`,"aria-selected":t,className:G(`flex w-full flex-col gap-1 border-b px-4 py-3 text-left transition-colors last:border-b-0`,t?`bg-accent text-accent-foreground`:`can-hover:hover:bg-muted/50`),onClick:()=>a(e.id),children:[(0,$.jsx)(`span`,{className:G(U.label,`break-all font-mono select-text`),children:e.command}),(0,$.jsxs)(`span`,{className:G(U.caption,`break-all select-text`),children:[`PID `,e.pid,e.cwd?` · ${e.cwd}`:``]})]},e.id)})}),(0,$.jsx)(Xa,{children:(0,$.jsx)(Hr,{variant:`destructive`,disabled:!i||o||c,onClick:()=>void u(),children:c?`Killing...`:`Kill`})})]})})}var QA=Ut(`auth`);async function $A(e){await is(`api/auth/request-code`,{email:e})}async function ej(e,t){return is(`api/auth/verify`,{email:e,code:t})}async function tj(e){try{await is(`api/auth/revoke`,{token:e})}catch(e){QA.error(`Failed to revoke auth token:`,e)}}async function nj(){try{return(await Va(`api/auth/session`)).session??null}catch(e){return QA.error(`Failed to load auth session:`,e),null}}async function rj(e){await is(`api/auth/session`,e)}async function ij(){await is(`api/auth/logout`,{})}var aj=/^[^\s@]+@[^\s@]+\.[^\s@]+$/;function oj({open:e,onOpenChange:t,onVerified:n}){let[r,a]=(0,Z.useState)(`email`),[o,s]=(0,Z.useState)(``),[c,l]=(0,Z.useState)(``),[u,d]=(0,Z.useState)(null),[f,p]=(0,Z.useState)(!1),[m,h]=(0,Z.useState)(!1);function g(){a(`email`),l(``),d(null),p(!1),h(!1)}async function _(e){e.preventDefault();let t=o.trim().toLowerCase();if(!aj.test(t)){d(`Please enter a valid email address.`);return}d(null),p(!0);try{await $A(t),s(t),a(`code`)}catch(e){d(e instanceof Error?e.message:`Failed to send verification code.`)}finally{p(!1)}}async function v(e){if(!(e.length<6)){h(!0),d(null);try{let r=await ej(o,e);await n({token:r.token,expiresAt:r.expires_at,email:r.email,jti:r.jti}),t(!1),g()}catch(e){d(e instanceof Error?e.message:`That code didn't work. Try again.`),l(``)}finally{h(!1)}}}return(0,$.jsx)(Ni,{open:e,onOpenChange:e=>{e||g(),t(e)},children:(0,$.jsxs)(Ir,{className:`max-w-md`,children:[(0,$.jsxs)(Dr,{children:[(0,$.jsx)(qa,{children:r===`email`?`Log in`:`Check your email`}),(0,$.jsx)(_i,{children:r===`email`?`Enter your email and we'll send you a verification code.`:`We sent a 6-digit code to ${o}.`})]}),r===`email`?(0,$.jsxs)(`form`,{onSubmit:e=>void _(e),className:`grid gap-4 py-2`,children:[(0,$.jsxs)(`div`,{className:`grid gap-2`,children:[(0,$.jsx)(da,{htmlFor:`login-email`,children:`Email`}),(0,$.jsx)(Qo,{id:`login-email`,type:`email`,autoComplete:`email`,placeholder:`you@example.com`,value:o,onChange:e=>s(e.target.value),disabled:f})]}),u?(0,$.jsx)(`p`,{className:`text-sm text-destructive`,role:`alert`,children:u}):null,(0,$.jsx)(Xa,{children:(0,$.jsx)(Hr,{type:`submit`,disabled:f||!o.trim(),children:f?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(ln,{className:`h-4 w-4 animate-spin`}),`Sending...`]}):`Next`})})]}):(0,$.jsxs)(`div`,{className:`grid gap-4 py-2`,children:[(0,$.jsx)(`div`,{className:`flex justify-center py-2`,children:(0,$.jsx)(Bt,{maxLength:6,value:c,onChange:v,disabled:m,autoFocus:!0,children:(0,$.jsxs)(wt,{children:[(0,$.jsx)(Ft,{index:0}),(0,$.jsx)(Ft,{index:1}),(0,$.jsx)(Ft,{index:2}),(0,$.jsx)(Ft,{index:3}),(0,$.jsx)(Ft,{index:4}),(0,$.jsx)(Ft,{index:5})]})})}),u?(0,$.jsx)(`p`,{className:`text-center text-sm text-destructive`,role:`alert`,children:u}):null,(0,$.jsxs)(Xa,{className:`justify-between sm:justify-between`,children:[(0,$.jsxs)(Hr,{type:`button`,variant:`ghost`,onClick:()=>{a(`email`),l(``),d(null)},disabled:m,children:[(0,$.jsx)(i,{className:`h-4 w-4`}),`Back`]}),m?(0,$.jsxs)(`span`,{className:`flex items-center gap-2 text-sm text-muted-foreground`,children:[(0,$.jsx)(ln,{className:`h-4 w-4 animate-spin`}),`Verifying...`]}):null]})]})]})})}function sj(e){let t=(0,Q.c)(13),{stepNumber:n,currentStep:r,canGoToStep:i,onGoToStep:a}=e,o;t[0]!==i||t[1]!==a||t[2]!==n?(o=()=>i(n)&&a(n),t[0]=i,t[1]=a,t[2]=n,t[3]=o):o=t[3];let s=r===n?`scale-110 bg-primary text-primary-foreground`:r>n?`bg-brand text-brand-foreground`:`bg-muted text-muted-foreground`,c;t[4]!==i||t[5]!==n||t[6]!==s?(c=G(`flex h-8 w-8 shrink-0 items-center justify-center rounded-full transition-colors transition-transform duration-300 ease-out`,U.body,s,i(n)&&`cursor-pointer hover:opacity-90`),t[4]=i,t[5]=n,t[6]=s,t[7]=c):c=t[7];let l=`Go to step ${n}`,u;return t[8]!==n||t[9]!==o||t[10]!==c||t[11]!==l?(u=(0,$.jsx)(`button`,{type:`button`,onClick:o,className:c,"aria-label":l,children:n}),t[8]=n,t[9]=o,t[10]=c,t[11]=l,t[12]=u):u=t[12],u}function cj(e){let t=(0,Q.c)(2),{filled:n}=e,r=n?`100%`:`0%`,i;return t[0]===r?i=t[1]:(i=(0,$.jsx)(`div`,{className:`relative h-0.5 min-w-0 flex-1 overflow-hidden rounded-full bg-muted`,children:(0,$.jsx)(`div`,{className:`absolute inset-y-0 left-0 rounded-full bg-brand transition-[width] duration-300 ease-out`,style:{width:r}})}),t[0]=r,t[1]=i),i}function lj(e){let t=(0,Q.c)(14),{currentStep:n,canGoToStep:r,onGoToStep:i}=e,a;t[0]!==r||t[1]!==n||t[2]!==i?(a=(0,$.jsx)(sj,{stepNumber:1,currentStep:n,canGoToStep:r,onGoToStep:i}),t[0]=r,t[1]=n,t[2]=i,t[3]=a):a=t[3];let o=n>=2,s;t[4]===o?s=t[5]:(s=(0,$.jsx)(cj,{filled:o}),t[4]=o,t[5]=s);let c;t[6]!==r||t[7]!==n||t[8]!==i?(c=(0,$.jsx)(sj,{stepNumber:2,currentStep:n,canGoToStep:r,onGoToStep:i}),t[6]=r,t[7]=n,t[8]=i,t[9]=c):c=t[9];let l;return t[10]!==a||t[11]!==s||t[12]!==c?(l=(0,$.jsxs)(`div`,{className:`mx-auto mb-6 flex w-2/3 items-center gap-1`,children:[a,s,c]}),t[10]=a,t[11]=s,t[12]=c,t[13]=l):l=t[13],l}var uj={session:null,isLoading:!0},dj=new Set;function fj(){for(let e of dj)e()}function pj(){return uj}function mj(e){return dj.add(e),()=>dj.delete(e)}var hj=null;function gj(){return hj||=nj().then(e=>{uj={session:e,isLoading:!1}}).catch(()=>{uj={session:null,isLoading:!1}}).finally(()=>{fj()}),hj}function _j(){let e=(0,Q.c)(4),{session:t,isLoading:n}=(0,Z.useSyncExternalStore)(mj,pj),r;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=[],e[0]=r):r=e[0],(0,Z.useEffect)(bj,r);let i=yj,a=vj,o;return e[1]!==n||e[2]!==t?(o={session:t,isLoading:n,login:i,logout:a},e[1]=n,e[2]=t,e[3]=o):o=e[3],o}async function vj(){let e=uj.session?.token;e&&await tj(e),await ij(),uj={session:null,isLoading:!1},fj()}async function yj(e){await rj(e),uj={session:e,isLoading:!1},fj()}function bj(){gj()}function xj(e){let[t,n]=(0,Z.useState)([]),[r,i]=(0,Z.useState)(!0),a=(0,Z.useCallback)(async()=>{if(!e){i(!1);return}i(!0);try{let t=await Aa(e);n(Object.entries(t.servers??{}).map(([e,t])=>({name:e,config:t})))}catch{n([])}finally{i(!1)}},[e]);return(0,Z.useLayoutEffect)(()=>{e&&i(!0)},[e]),(0,Z.useEffect)(()=>{a()},[a]),{installedServers:t,loadingConfig:r,loadInstalledServers:a}}function Sj(){let e=(0,Q.c)(6),t;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=[],e[0]=t):t=e[0];let[n,r]=(0,Z.useState)(t),[i,a]=(0,Z.useState)(!0),o,s;e[1]===Symbol.for(`react.memo_cache_sentinel`)?(o=()=>{a(!0),ua().then(r).catch(()=>r([])).finally(()=>a(!1))},s=[],e[1]=o,e[2]=s):(o=e[1],s=e[2]),(0,Z.useEffect)(o,s);let c;return e[3]!==i||e[4]!==n?(c={popularServers:n,loadingPopular:i},e[3]=i,e[4]=n,e[5]=c):c=e[5],c}async function Cj(e,t,n){await fo(e,t,n)}async function wj(e,t){await ma(e,t)}function Tj(e){let t=[];function n(e){for(let r of e){if(r.path===`.agents/skills`&&r.type===`folder`&&r.children)for(let e of r.children)e.type===`folder`&&t.push({id:`skill:${e.path}`,name:e.name});r.children&&n(r.children)}}return n(e),t.sort((e,t)=>e.name.localeCompare(t.name))}function Ej(e){return e.url?e.url:`${e.command??``} ${e.args?.join(` `)??``}`.trim()||void 0}function Dj(e){return(e??``).trim().toLowerCase().replace(/[^a-z0-9.-]+/g,`-`).replace(/-{2,}/g,`-`).replace(/\.{2,}/g,`.`).replace(/^[^a-z0-9]+|[^a-z0-9]+$/g,``)}function Oj(e){return e.split(`-`).map(e=>e&&e[0].toUpperCase()+e.slice(1)).join(` `)}function kj(e,t){return t.length===1?`${Oj(t[0].name)} plugin`:e?`${Oj(e)} Plugins`:``}function Aj(e,t){let n=[];return e.length>0&&n.push(`skills: ${e.join(`, `)}`),t.length>0&&n.push(`MCP servers: ${t.join(`, `)}`),n.length===0?``:`Includes ${n.join(`; `)}.`}function jj(e){return e.length?e.slice(0,3).map(e=>e.path?`${e.path}: ${e.message}`:e.message).join(`; `):`Check the validation details.`}function Mj(e){return new Promise((t,n)=>{let r=new FileReader;r.onload=()=>{let e=typeof r.result==`string`?r.result:``,n=e.indexOf(`,`);t(n>=0?e.slice(n+1):e)},r.onerror=()=>n(r.error),r.readAsDataURL(e)})}async function Nj(e,t){if(Pr()){await is(`/api/file/save`,{name:t,data:await Mj(e)});return}let n=window.showSaveFilePicker;if(typeof n==`function`)try{let r=await(await n({suggestedName:t})).createWritable();await r.write(e),await r.close();return}catch(e){e instanceof Error&&e.name!==`AbortError`&&console.error(`Save file picker failed:`,e)}let r=URL.createObjectURL(e),i=document.createElement(`a`);i.href=r,i.download=t,i.rel=`noopener`,document.body.appendChild(i),i.click(),document.body.removeChild(i),URL.revokeObjectURL(r)}function Pj(e){let t=(0,Q.c)(19),{item:n,checked:r,onCheckedChange:i}=e,a=`${r?`Include`:`Exclude`} ${n.name}`,o;t[0]!==r||t[1]!==i||t[2]!==a?(o=(0,$.jsx)(nx,{value:r,onChange:i,ariaLabel:a}),t[0]=r,t[1]=i,t[2]=a,t[3]=o):o=t[3];let s;t[4]!==r||t[5]!==i?(s=()=>i(!r),t[4]=r,t[5]=i,t[6]=s):s=t[6];let c;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(c=G(U.body,`truncate`),t[7]=c):c=t[7];let l;t[8]===n.name?l=t[9]:(l=(0,$.jsx)(`div`,{className:c,children:n.name}),t[8]=n.name,t[9]=l);let u;t[10]===n.detail?u=t[11]:(u=n.detail?(0,$.jsx)(`div`,{className:G(U.compact,`truncate font-mono text-muted-foreground`),children:n.detail}):null,t[10]=n.detail,t[11]=u);let d;t[12]!==s||t[13]!==l||t[14]!==u?(d=(0,$.jsxs)(`button`,{type:`button`,onClick:s,className:`min-w-0 text-left`,children:[l,u]}),t[12]=s,t[13]=l,t[14]=u,t[15]=d):d=t[15];let f;return t[16]!==o||t[17]!==d?(f=(0,$.jsxs)(`div`,{className:`grid min-h-10 grid-cols-[auto_minmax(0,1fr)] items-center gap-3 px-3 py-2`,children:[o,d]}),t[16]=o,t[17]=d,t[18]=f):f=t[18],f}function Fj(e){let t=(0,Q.c)(25),{title:n,count:r,allSelected:i,onToggleAll:a,open:o,onOpenChange:s,children:c}=e,l=`${i?`Include`:`Exclude`} ${n}`,u;t[0]!==i||t[1]!==a||t[2]!==l?(u=(0,$.jsx)(nx,{value:i,onChange:a,ariaLabel:l}),t[0]=i,t[1]=a,t[2]=l,t[3]=u):u=t[3];let d;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(d=G(U.label,`flex-1 truncate text-left`),t[4]=d):d=t[4];let f;t[5]!==r||t[6]!==n?(f=(0,$.jsxs)(`span`,{className:d,children:[r,` `,n]}),t[5]=r,t[6]=n,t[7]=f):f=t[7];let p=o&&`rotate-180`,m;t[8]===p?m=t[9]:(m=G(`h-3.5 w-3.5 shrink-0 text-muted-foreground transition-transform`,p),t[8]=p,t[9]=m);let h;t[10]===m?h=t[11]:(h=(0,$.jsx)(tn,{className:m}),t[10]=m,t[11]=h);let g;t[12]!==f||t[13]!==h?(g=(0,$.jsxs)(xb,{className:`flex min-w-0 flex-1 items-center gap-1`,children:[f,h]}),t[12]=f,t[13]=h,t[14]=g):g=t[14];let _;t[15]!==u||t[16]!==g?(_=(0,$.jsxs)(`div`,{className:`flex items-center gap-3`,children:[u,g]}),t[15]=u,t[16]=g,t[17]=_):_=t[17];let v;t[18]===c?v=t[19]:(v=(0,$.jsx)(Sb,{children:(0,$.jsx)(`div`,{className:`mt-2 divide-y divide-table-border`,children:c})}),t[18]=c,t[19]=v);let y;return t[20]!==s||t[21]!==o||t[22]!==v||t[23]!==_?(y=(0,$.jsx)(`section`,{className:`border-b border-border pb-3`,children:(0,$.jsxs)(bb,{open:o,onOpenChange:s,children:[_,v]})}),t[20]=s,t[21]=o,t[22]=v,t[23]=_,t[24]=y):y=t[24],y}function Ij({open:e,onOpenChange:t}){let{session:n,login:r,logout:i}=_j(),a=X(e=>e.selectedProjectId),o=X(e=>e.projects).find(e=>e.projectId===a),s=o?Ke(o):void 0,{installedServers:c,loadingConfig:l}=xj(o?.projectPath),[u,d]=(0,Z.useState)(!1),[f,p]=(0,Z.useState)(!1),[m,h]=(0,Z.useState)(null),[g,_]=(0,Z.useState)(!1),[v,y]=(0,Z.useState)([]),[b,x]=(0,Z.useState)(!1),[S,C]=(0,Z.useState)(!1),[w,T]=(0,Z.useState)(!1),[E,D]=(0,Z.useState)(new Set),[O,k]=(0,Z.useState)(!1),[A,j]=(0,Z.useState)(``),[M,N]=(0,Z.useState)(!1),[P,F]=(0,Z.useState)(``),[I,L]=(0,Z.useState)(!1),[R,z]=(0,Z.useState)(`1.0.0`),[B,V]=(0,Z.useState)(1);(0,Z.useEffect)(()=>{let e=!1;return a?(x(!0),ro(a).then(t=>{e||y(Tj(t))}).catch(()=>{e||y([])}).finally(()=>{e||x(!1)}),()=>{e=!0}):(y([]),x(!1),()=>{e=!0})},[a]);let H=c.map(e=>({id:`mcp:${e.name}`,name:e.name,detail:Ej(e.config)})).sort((e,t)=>e.name.localeCompare(t.name)),ee=[...v,...H],te=ee.map(e=>e.id),ne=v.length>0&&v.every(e=>E.has(e.id)),re=H.length>0&&H.every(e=>E.has(e.id)),ie=v.filter(e=>E.has(e.id)).map(e=>e.name),ae=H.filter(e=>E.has(e.id)).map(e=>e.name),oe=Dj(A),se=Dj(s?O?`${s} source code`:`${s} Plugins`:``),ce=ee.length>0||O,le=!b&&!l&&ee.length>0,ue=!b&&!l&&ce&&!!se,de=oe.length>0&&!!a;function fe(e){return e===1?B===2:le&&!O}function pe(e){V(e)}function me(){B===2?V(1):t(!1)}(0,Z.useEffect)(()=>{e&&(D(new Set(te)),k(!1),V(1),j(kj(s,ee)),N(!1),L(!1),z(`1.0.0`))},[e,a,v,c]),(0,Z.useEffect)(()=>{!e||M||j(kj(s,[...v.filter(e=>E.has(e.id)),...H.filter(e=>E.has(e.id))]))},[e,M,s,v,H,E]),(0,Z.useEffect)(()=>{!e||I||F(Aj(ie,ae))},[e,ie,ae,I]);function he(e,t){D(n=>{let r=new Set(n);return t?r.add(e):r.delete(e),r}),t&&k(!1)}function ge(e){D(t=>{let n=new Set(t);for(let t of v)e?n.add(t.id):n.delete(t.id);return n}),e&&k(!1)}function _e(e){D(t=>{let n=new Set(t);for(let t of H)e?n.add(t.id):n.delete(t.id);return n}),e&&k(!1)}function ve(e){k(e),e&&(D(new Set),C(!1),T(!1))}async function ye(){if(!(!a||!se)){p(!0);try{await Nj(await pi(a,{skillNames:ie,mcpServerNames:ae,includeSourceCode:O,manifest:{name:se,description:Aj(ie,ae),version:`1.0.0`}}),`${se}.zip`),ac({title:`Saved ${se}.zip`,description:`The plugin package was saved.`})}catch(e){ac({title:`Failed to export plugin`,description:e instanceof Error?e.message:void 0,variant:`destructive`})}finally{p(!1)}}}async function be(){if(!(!a||!de)){if(!n){d(!0);return}p(!0);try{let e=await kr(a,{skillNames:ie,mcpServerNames:ae,manifest:{name:oe,description:P.trim(),version:R.trim(),private:!0}});e.valid?(e.url&&(h(e.url),_(!1)),t(!1)):ac({title:`Plugin failed validation`,description:jj(e.errors),variant:`destructive`})}catch(e){ac({title:`Failed to share plugin`,description:e instanceof Error?e.message:void 0,variant:`destructive`})}finally{p(!1)}}}async function xe(){if(m)try{await navigator.clipboard.writeText(m),_(!0),ac({title:`Copied`,description:`Plugin link copied to clipboard.`}),window.setTimeout(()=>_(!1),1500)}catch(e){ac({title:`Copy failed`,description:e instanceof Error?e.message:`Could not copy the plugin link.`,variant:`destructive`})}}return(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(Ni,{open:e,onOpenChange:t,children:(0,$.jsxs)(Ir,{className:`flex h-[min(42rem,90dvh)] max-w-2xl flex-col overflow-hidden p-0`,children:[(0,$.jsxs)(`div`,{className:`px-6 pb-2 pt-6`,children:[(0,$.jsx)(lj,{currentStep:B,canGoToStep:fe,onGoToStep:pe}),(0,$.jsxs)(Dr,{children:[(0,$.jsx)(qa,{children:B===1?`Share`:`Share Plugin`}),(0,$.jsx)(_i,{children:B===1?`Select the project tools to include.`:`Add a name and description for your plugin.`})]})]}),B===1?(0,$.jsx)(za,{className:`min-h-0 flex-1`,children:b||l?(0,$.jsxs)(`div`,{className:`flex items-center justify-center px-6 py-8 text-muted-foreground`,children:[(0,$.jsx)(ln,{className:`mr-2 h-4 w-4 animate-spin`}),`Loading project tools...`]}):(0,$.jsxs)(`div`,{className:`flex flex-col gap-6 px-6 py-4`,children:[ee.length>0&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(Fj,{title:`Skills`,count:v.length,allSelected:ne,onToggleAll:ge,open:S,onOpenChange:C,children:v.length>0?v.map(e=>(0,$.jsx)(Pj,{item:e,checked:E.has(e.id),onCheckedChange:t=>he(e.id,t)},e.id)):(0,$.jsx)(`p`,{className:G(U.bodyMuted,`py-2`),children:`No skills configured.`})}),(0,$.jsx)(Fj,{title:`MCP Servers`,count:H.length,allSelected:re,onToggleAll:_e,open:w,onOpenChange:T,children:H.length>0?H.map(e=>(0,$.jsx)(Pj,{item:e,checked:E.has(e.id),onCheckedChange:t=>he(e.id,t)},e.id)):(0,$.jsx)(`p`,{className:G(U.bodyMuted,`py-2`),children:`No MCP servers configured.`})})]}),(0,$.jsx)(`section`,{className:`border-b border-border pb-3`,children:(0,$.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,$.jsx)(nx,{value:O,onChange:ve,ariaLabel:O?`Exclude Source Code`:`Include Source Code`}),(0,$.jsx)(`button`,{type:`button`,onClick:()=>ve(!O),className:`min-w-0 flex-1 text-left`,children:(0,$.jsx)(`span`,{className:G(U.label,`truncate`),children:`Source Code`})})]})})]})}):(0,$.jsx)(za,{className:`min-h-0 flex-1`,children:(0,$.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col gap-4 px-6 py-4`,children:[(0,$.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,$.jsx)(da,{htmlFor:`pluginName`,children:`Plugin name`}),(0,$.jsx)(Qo,{id:`pluginName`,placeholder:`my-plugin`,value:A,onChange:e=>{N(!0),j(e.target.value)},onKeyDown:e=>e.key===`Enter`&&de&&!f&&void be(),autoFocus:!0,className:`w-full`}),(0,$.jsxs)(`p`,{className:G(U.bodyMuted,U.caption),children:[`Slug: `,oe||`my-plugin`]})]}),(0,$.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,$.jsx)(da,{htmlFor:`pluginDescription`,children:`Description`}),(0,$.jsx)(Qo,{id:`pluginDescription`,placeholder:`What this plugin provides`,value:P,onChange:e=>{L(!0),F(e.target.value)},className:`w-full`})]}),(0,$.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,$.jsx)(da,{htmlFor:`pluginVersion`,children:`Version`}),(0,$.jsx)(Qo,{id:`pluginVersion`,placeholder:`1.0.0`,value:R,onChange:e=>z(e.target.value),className:`w-full`})]})]})}),B===2?(0,$.jsx)(`div`,{className:`px-6 pb-3`,children:n?(0,$.jsxs)(`p`,{className:G(U.compact,`flex items-center gap-2 text-muted-foreground`),children:[`Sharing as `,(0,$.jsx)(`span`,{className:`font-medium text-foreground`,children:n.email}),(0,$.jsx)(Hr,{type:`button`,variant:`link`,size:`sm`,onClick:()=>void i(),children:`Log out`})]}):(0,$.jsx)(`p`,{className:G(U.compact,`text-primary`),children:`To share your plugin you will need to verify your email address next.`})}):null,(0,$.jsx)(`div`,{className:`flex min-h-[4.5rem] flex-col justify-end border-t border-border bg-muted/10 px-6 py-4`,children:(0,$.jsxs)(Xa,{className:`flex-col gap-3 sm:flex-row sm:justify-end sm:space-x-0`,children:[(0,$.jsx)(`div`,{className:`flex flex-1 items-center gap-2`,children:(0,$.jsx)(Hr,{type:`button`,variant:`ghost`,onClick:me,children:B===1?`Cancel`:`Back`})}),B===1?(0,$.jsxs)(`div`,{className:`flex gap-2`,children:[(0,$.jsx)(Hr,{type:`button`,variant:`outline`,onClick:()=>void ye(),disabled:!ue||f,children:`Download`}),(0,$.jsx)(Hr,{type:`button`,onClick:()=>V(2),disabled:!le||O,children:`Next >`})]}):(0,$.jsxs)(Hr,{type:`button`,onClick:()=>void be(),disabled:!de||f,children:[f?(0,$.jsx)(ln,{className:`mr-2 h-4 w-4 animate-spin`}):null,`Share`]})]})})]})}),(0,$.jsx)(Ni,{open:m!==null,onOpenChange:e=>!e&&h(null),children:(0,$.jsxs)(Ir,{className:`max-w-xl`,children:[(0,$.jsxs)(Dr,{children:[(0,$.jsx)(qa,{children:`Plugin shared`}),(0,$.jsx)(_i,{children:`Your plugin is published at the URL below. Copy it to share with others.`})]}),(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-col gap-1.5`,children:[(0,$.jsx)(`span`,{className:G(U.label,`text-muted-foreground`),children:`Plugin URL`}),(0,$.jsxs)(`div`,{className:`relative min-w-0 rounded-md border bg-muted/40 px-3 py-2`,children:[(0,$.jsx)(`a`,{href:m??void 0,target:`_blank`,rel:`noreferrer`,className:G(`block min-w-0 truncate pr-8 text-primary underline underline-offset-2 hover:text-primary/80`),children:m}),(0,$.jsx)(`div`,{className:`absolute right-2 top-1/2 -translate-y-1/2`,children:(0,$.jsx)(Zo,{children:(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(Hr,{type:`button`,variant:`ghost`,size:`icon`,onClick:()=>void xe(),"aria-label":`Copy plugin URL`,className:`shrink-0`,children:g?(0,$.jsx)(W,{className:`h-4 w-4`}):(0,$.jsx)(Ze,{className:`h-4 w-4`})})}),(0,$.jsx)(Fr,{children:g?`Copied`:`Copy`})]})})})]})]}),(0,$.jsx)(Xa,{children:(0,$.jsx)(Hr,{type:`button`,onClick:()=>h(null),children:`Done`})})]})}),(0,$.jsx)(oj,{open:u,onOpenChange:d,onVerified:e=>r(e)})]})}function Lj(){let[e,t]=(0,Z.useState)(!1),[n,r]=(0,Z.useState)(``),[i,a]=(0,Z.useState)(``),[o,s]=(0,Z.useState)(``),[c,l]=(0,Z.useState)(!1),[u,d]=(0,Z.useState)(!1);return(0,Z.useEffect)(()=>{if(!e)return;let t=!0;return l(!0),ea().then(e=>{t&&(r(t=>t||e.name),a(t=>t||e.email))}).catch(()=>{t&&ac({title:`Could not load git details`,description:`You can still submit feedback by entering your name and email manually.`,variant:`destructive`})}).finally(()=>{t&&l(!1)}),()=>{t=!1}},[e]),{showFeedback:e,feedbackName:n,setFeedbackName:r,feedbackEmail:i,setFeedbackEmail:a,feedbackText:o,setFeedbackText:s,loadingFeedbackUser:c,submittingFeedback:u,handleFeedbackDialogChange:e=>{t(e),e||s(``)},handleSubmitFeedback:async()=>{let e=o.trim();if(!e){ac({title:`Feedback required`,description:`Please enter your feedback before submitting.`,variant:`destructive`});return}d(!0);try{await is(`api/feedback`,{name:n.trim(),email:i.trim(),feedback:e}),ac({title:`Feedback sent`,description:`Thanks for sharing your feedback.`}),s(``),t(!1)}catch(e){ac({title:`Failed to send feedback`,description:e instanceof Error?e.message:`Please try again.`,variant:`destructive`})}finally{d(!1)}}}}function Rj(){let e=(0,Q.c)(93),t=Yn(),n=Ks(),r=mC(),{openConversation:i}=YA(),a=X(Bj),o=X(zj),[s,c]=(0,Z.useState)(!1),[l,u]=(0,Z.useState)(!1),[d,f]=(0,Z.useState)(!1),m;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(m=[],e[0]=m):m=e[0];let[h,g]=(0,Z.useState)(m),[_,v]=(0,Z.useState)(!1),[y,b]=(0,Z.useState)(!1),{showFeedback:S,feedbackName:C,setFeedbackName:w,feedbackEmail:T,setFeedbackEmail:E,feedbackText:D,setFeedbackText:O,loadingFeedbackUser:k,submittingFeedback:j,handleFeedbackDialogChange:M,handleSubmitFeedback:N}=Lj(),P;if(e[1]!==o||e[2]!==a){let t;e[4]===a?t=e[5]:(t=e=>e.projectId===a,e[4]=a,e[5]=t),P=o.find(t),e[1]=o,e[2]=a,e[3]=P}else P=e[3];let F=P,I;e[6]===F?.commands?I=e[7]:(I=F?.commands??[],e[6]=F?.commands,e[7]=I);let L=I,R;if(e[8]!==_){let t=function(){_||Go(20).then(e=>{g(e.conversations??[]),v(!0)}).catch(()=>{v(!1)})};R=function(e){b(e),e&&t()},e[8]=_,e[9]=R}else R=e[9];let z=R,B=r?`ghost`:`outline`,V=r?nl:`border-transparent`,H;e[10]===V?H=e[11]:(H=G(`h-8 w-8 px-0`,V),e[10]=V,e[11]=H);let ee;e[12]===Symbol.for(`react.memo_cache_sentinel`)?(ee=(0,$.jsx)(Dt,{className:`h-4 w-4`}),e[12]=ee):ee=e[12];let ne;e[13]!==B||e[14]!==H?(ne=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(gl,{asChild:!0,children:(0,$.jsx)(Hr,{variant:B,size:`sm`,className:H,"aria-label":`More options`,children:ee})})}),e[13]=B,e[14]=H,e[15]=ne):ne=e[15];let re;e[16]===Symbol.for(`react.memo_cache_sentinel`)?(re=(0,$.jsx)(Fr,{children:`More options`}),e[16]=re):re=e[16];let ie;e[17]===ne?ie=e[18]:(ie=(0,$.jsxs)(Mi,{children:[ne,re]}),e[17]=ne,e[18]=ie);let ae;e[19]!==z||e[20]!==_||e[21]!==y||e[22]!==t||e[23]!==i||e[24]!==h||e[25]!==a?(ae=a?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(wl,{className:U.body,children:`Project`}),(0,$.jsxs)(xl,{className:G(U.body,`gap-2`),onSelect:()=>void t(`/settings/project/${a}`),children:[(0,$.jsx)(x,{className:`h-4 w-4 shrink-0`}),`Settings`]}),(0,$.jsxs)(xl,{className:G(U.body,`gap-2`),onSelect:()=>c(!0),children:[(0,$.jsx)(A,{className:`h-4 w-4 shrink-0`}),`Commands`]}),(0,$.jsxs)(xl,{className:G(U.body,`gap-2`),onSelect:()=>f(!0),children:[(0,$.jsx)(p,{className:`h-4 w-4 shrink-0`}),`Share`]}),(0,$.jsxs)(_l,{open:y,onOpenChange:z,children:[(0,$.jsxs)(vl,{className:G(U.body,`gap-2`),children:[(0,$.jsx)(bt,{className:`h-4 w-4 shrink-0`}),`History`]}),(0,$.jsx)(yl,{className:`w-96 max-h-80 overflow-y-auto`,children:_?h.length===0?(0,$.jsx)(xl,{disabled:!0,className:U.bodyMuted,children:`No recent conversations`}):h.map(e=>(0,$.jsxs)(xl,{className:G(U.body,`gap-2 cursor-pointer`),onSelect:()=>i(e),children:[(0,$.jsx)(At,{className:`h-3.5 w-3.5 shrink-0 text-muted-foreground`}),(0,$.jsx)(`span`,{className:`truncate`,children:e.title}),(0,$.jsx)(`span`,{className:G(U.bodyMuted,`ml-auto shrink-0 tabular-nums`),children:K(e.lastMessageAt)})]},e.conversationId)):(0,$.jsx)(xl,{disabled:!0,className:U.bodyMuted,children:`Loading...`})})]})]}):null,e[19]=z,e[20]=_,e[21]=y,e[22]=t,e[23]=i,e[24]=h,e[25]=a,e[26]=ae):ae=e[26];let oe,se;e[27]===Symbol.for(`react.memo_cache_sentinel`)?(oe=(0,$.jsx)(Tl,{}),se=(0,$.jsx)(wl,{className:U.body,children:`General`}),e[27]=oe,e[28]=se):(oe=e[27],se=e[28]);let ce;e[29]===Symbol.for(`react.memo_cache_sentinel`)?(ce=G(U.body,`gap-2`),e[29]=ce):ce=e[29];let le;e[30]===t?le=e[31]:(le=()=>void t(`/settings/general`),e[30]=t,e[31]=le);let ue;e[32]===Symbol.for(`react.memo_cache_sentinel`)?(ue=(0,$.jsx)(x,{className:`h-4 w-4 shrink-0`}),e[32]=ue):ue=e[32];let W;e[33]===le?W=e[34]:(W=(0,$.jsxs)(xl,{className:ce,onSelect:le,children:[ue,`Settings`]}),e[33]=le,e[34]=W);let de;e[35]===Symbol.for(`react.memo_cache_sentinel`)?(de=G(U.body,`gap-2`),e[35]=de):de=e[35];let fe;e[36]===t?fe=e[37]:(fe=()=>void t(`/settings/providers`),e[36]=t,e[37]=fe);let pe;e[38]===Symbol.for(`react.memo_cache_sentinel`)?(pe=(0,$.jsx)(Kt,{className:`h-4 w-4 shrink-0`}),e[38]=pe):pe=e[38];let me;e[39]===fe?me=e[40]:(me=(0,$.jsxs)(xl,{className:de,onSelect:fe,children:[pe,`Providers`]}),e[39]=fe,e[40]=me);let he;e[41]===Symbol.for(`react.memo_cache_sentinel`)?(he=G(U.body,`gap-2`),e[41]=he):he=e[41];let ge;e[42]===t?ge=e[43]:(ge=()=>void t(`/settings/account`),e[42]=t,e[43]=ge);let _e;e[44]===Symbol.for(`react.memo_cache_sentinel`)?(_e=(0,$.jsx)(ot,{className:`h-4 w-4 shrink-0`}),e[44]=_e):_e=e[44];let ve;e[45]===ge?ve=e[46]:(ve=(0,$.jsxs)(xl,{className:he,onSelect:ge,children:[_e,`Account`]}),e[45]=ge,e[46]=ve);let ye;e[47]===Symbol.for(`react.memo_cache_sentinel`)?(ye=G(U.body,`gap-2`),e[47]=ye):ye=e[47];let be;e[48]===M?be=e[49]:(be=()=>M(!0),e[48]=M,e[49]=be);let xe;e[50]===Symbol.for(`react.memo_cache_sentinel`)?(xe=(0,$.jsx)(At,{className:`h-4 w-4 shrink-0`}),e[50]=xe):xe=e[50];let Se;e[51]===be?Se=e[52]:(Se=(0,$.jsxs)(xl,{className:ye,onSelect:be,children:[xe,`Feedback`]}),e[51]=be,e[52]=Se);let Ce;e[53]===Symbol.for(`react.memo_cache_sentinel`)?(Ce=(0,$.jsx)(Tl,{}),e[53]=Ce):Ce=e[53];let we;e[54]===Symbol.for(`react.memo_cache_sentinel`)?(we=(0,$.jsxs)(xl,{className:G(U.body,`gap-2`),onSelect:()=>u(!0),children:[(0,$.jsx)(te,{className:`h-4 w-4 shrink-0`}),`Processes`]}),e[54]=we):we=e[54];let Te;e[55]!==ae||e[56]!==W||e[57]!==me||e[58]!==ve||e[59]!==Se?(Te=(0,$.jsxs)(bl,{align:`end`,className:`w-52`,children:[ae,oe,se,W,me,ve,Se,Ce,we]}),e[55]=ae,e[56]=W,e[57]=me,e[58]=ve,e[59]=Se,e[60]=Te):Te=e[60];let Ee;e[61]!==ie||e[62]!==Te?(Ee=(0,$.jsxs)(hl,{children:[ie,Te]}),e[61]=ie,e[62]=Te,e[63]=Ee):Ee=e[63];let De;e[64]!==L||e[65]!==n||e[66]!==a||e[67]!==s?(De=a?(0,$.jsx)(Sw,{open:s,onOpenChange:c,projectId:a,commands:L,onRefresh:()=>n({type:Y.ConfigUpdated})}):null,e[64]=L,e[65]=n,e[66]=a,e[67]=s,e[68]=De):De=e[68];let Oe;e[69]===l?Oe=e[70]:(Oe=(0,$.jsx)(ZA,{open:l,onOpenChange:u}),e[69]=l,e[70]=Oe);let ke;e[71]===d?ke=e[72]:(ke=(0,$.jsx)(Ij,{open:d,onOpenChange:f}),e[71]=d,e[72]=ke);let Ae;e[73]===N?Ae=e[74]:(Ae=()=>void N(),e[73]=N,e[74]=Ae);let je;e[75]!==T||e[76]!==C||e[77]!==D||e[78]!==M||e[79]!==k||e[80]!==E||e[81]!==w||e[82]!==O||e[83]!==S||e[84]!==j||e[85]!==Ae?(je=(0,$.jsx)(XA,{open:S,onOpenChange:M,feedbackName:C,onFeedbackNameChange:w,feedbackEmail:T,onFeedbackEmailChange:E,feedbackText:D,onFeedbackTextChange:O,loadingFeedbackUser:k,submittingFeedback:j,onSubmit:Ae}),e[75]=T,e[76]=C,e[77]=D,e[78]=M,e[79]=k,e[80]=E,e[81]=w,e[82]=O,e[83]=S,e[84]=j,e[85]=Ae,e[86]=je):je=e[86];let Me;return e[87]!==Ee||e[88]!==De||e[89]!==Oe||e[90]!==ke||e[91]!==je?(Me=(0,$.jsxs)($.Fragment,{children:[Ee,De,Oe,ke,je]}),e[87]=Ee,e[88]=De,e[89]=Oe,e[90]=ke,e[91]=je,e[92]=Me):Me=e[92],Me}function zj(e){return e.projects}function Bj(e){return e.selectedProjectId}function Vj(e){let t=(0,Q.c)(3),{children:n,className:r}=e,i=`flex items-center gap-2 rounded-full shadow-md ${r===void 0?``:r}`,a;return t[0]!==n||t[1]!==i?(a=(0,$.jsx)(`div`,{className:i,children:n}),t[0]=n,t[1]=i,t[2]=a):a=t[2],a}function Hj(e){let t=(0,Q.c)(12),{className:n}=e,r=Yn(),i;t[0]===n?i=t[1]:(i=G(`h-8 w-8 text-muted-foreground shrink-0`,n),t[0]=n,t[1]=i);let a;t[2]===r?a=t[3]:(a=()=>void r(`/settings/general`),t[2]=r,t[3]=a);let o,s;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,$.jsx)(x,{className:`h-4 w-4`}),s=(0,$.jsx)(`span`,{className:`sr-only`,children:`Settings`}),t[4]=o,t[5]=s):(o=t[4],s=t[5]);let c;t[6]!==i||t[7]!==a?(c=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(Hr,{variant:`ghost`,size:`icon`,className:i,onClick:a,children:[o,s]})}),t[6]=i,t[7]=a,t[8]=c):c=t[8];let l;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,$.jsx)(Fr,{children:`Settings`}),t[9]=l):l=t[9];let u;return t[10]===c?u=t[11]:(u=(0,$.jsx)(Zo,{children:(0,$.jsxs)(Mi,{children:[c,l]})}),t[10]=c,t[11]=u),u}function Uj(e){let t=(0,Q.c)(15),{className:n}=e,r=Yn(),i=X(Wj),a=mC(),o=a?`ghost`:`outline`,s=a?nl:`border-transparent text-muted-foreground`,c;t[0]!==n||t[1]!==s?(c=G(`h-8 w-8 shrink-0`,s,n),t[0]=n,t[1]=s,t[2]=c):c=t[2];let l;t[3]!==r||t[4]!==i?(l=()=>void r(`/settings/project/${i}`),t[3]=r,t[4]=i,t[5]=l):l=t[5];let u,d;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(u=(0,$.jsx)(x,{className:`h-4 w-4 shrink-0`}),d=(0,$.jsx)(`span`,{className:`sr-only`,children:`Project Settings`}),t[6]=u,t[7]=d):(u=t[6],d=t[7]);let f;t[8]!==o||t[9]!==c||t[10]!==l?(f=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(Hr,{variant:o,size:`icon`,className:c,onClick:l,children:[u,d]})}),t[8]=o,t[9]=c,t[10]=l,t[11]=f):f=t[11];let p;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(p=(0,$.jsx)(Fr,{children:`Project Settings`}),t[12]=p):p=t[12];let m;return t[13]===f?m=t[14]:(m=(0,$.jsx)(Zo,{children:(0,$.jsxs)(Mi,{children:[f,p]})}),t[13]=f,t[14]=m),m}function Wj(e){return e.selectedProjectId}function Gj(e){let t=(0,Q.c)(10),{showingProjectDetails:n,onBackToProjects:r}=e,i=n?nl:`text-muted-foreground`,a;t[0]===i?a=t[1]:(a=G(`h-8 w-8 shrink-0 electrobun-webkit-app-region-no-drag`,i),t[0]=i,t[1]=a);let o,s;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,$.jsx)(H,{className:`h-4 w-4`}),s=(0,$.jsx)(`span`,{className:`sr-only`,children:`Back to projects`}),t[2]=o,t[3]=s):(o=t[2],s=t[3]);let c;t[4]!==r||t[5]!==a?(c=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(Hr,{variant:`ghost`,size:`icon`,className:a,onClick:r,children:[o,s]})}),t[4]=r,t[5]=a,t[6]=c):c=t[6];let l;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,$.jsx)(Fr,{children:`Projects`}),t[7]=l):l=t[7];let u;return t[8]===c?u=t[9]:(u=(0,$.jsx)(Zo,{children:(0,$.jsxs)(Mi,{children:[c,l]})}),t[8]=c,t[9]=u),u}function Kj(e){let t=(0,Q.c)(14),{project:n,showingProjectDetails:r}=e,i;t[0]!==n||t[1]!==r?(i=r?null:(0,$.jsx)(Yc,{project:n,elevated:!1,className:`h-5 w-5 shrink-0 rounded`,iconClassName:`h-3 w-3`}),t[0]=n,t[1]=r,t[2]=i):i=t[2];let a=r?U.body:U.sectionTitle,o=!r&&`text-foreground`,s;t[3]!==a||t[4]!==o?(s=G(a,`truncate min-w-0`,o),t[3]=a,t[4]=o,t[5]=s):s=t[5];let c;t[6]===n?c=t[7]:(c=Ke(n),t[6]=n,t[7]=c);let l;t[8]!==s||t[9]!==c?(l=(0,$.jsx)(`span`,{className:s,children:c}),t[8]=s,t[9]=c,t[10]=l):l=t[10];let u;return t[11]!==i||t[12]!==l?(u=(0,$.jsxs)($.Fragment,{children:[i,l]}),t[11]=i,t[12]=l,t[13]=u):u=t[13],u}function qj(e){let t=(0,Q.c)(27),{selectedProject:n,showingProjectDetails:r,sortedProjects:i,selectedProjectId:a,useDropdown:s,onSelectProject:c}=e;if(!s){let e;return t[0]!==n||t[1]!==r?(e=(0,$.jsx)(`div`,{className:`flex min-w-0 items-center gap-2`,children:(0,$.jsx)(Kj,{project:n,showingProjectDetails:r})}),t[0]=n,t[1]=r,t[2]=e):e=t[2],e}let l;t[3]!==n||t[4]!==r?(l=(0,$.jsx)(Kj,{project:n,showingProjectDetails:r}),t[3]=n,t[4]=r,t[5]=l):l=t[5];let u=r?`scenic-foreground-muted`:`text-muted-foreground`,d;t[6]===u?d=t[7]:(d=G(`h-4 w-4 shrink-0`,u),t[6]=u,t[7]=d);let f;t[8]===d?f=t[9]:(f=(0,$.jsx)(tn,{className:d}),t[8]=d,t[9]=f);let p;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(p=(0,$.jsx)(`span`,{className:`sr-only`,children:`Switch project`}),t[10]=p):p=t[10];let m;t[11]!==l||t[12]!==f?(m=(0,$.jsx)(gl,{asChild:!0,children:(0,$.jsxs)(`button`,{type:`button`,className:`flex min-w-0 max-w-full items-center gap-1 rounded-md px-1.5 py-0.5 text-left outline-none transition-colors can-hover:hover:bg-muted focus-visible:ring-2 focus-visible:ring-ring electrobun-webkit-app-region-no-drag`,children:[l,f,p]})}),t[11]=l,t[12]=f,t[13]=m):m=t[13];let h=r?`center`:`start`,g;if(t[14]!==c||t[15]!==a||t[16]!==i){let e;t[18]!==c||t[19]!==a?(e=e=>{let t=e.gitUrl?o:ce,n=e.projectId===a;return(0,$.jsxs)(xl,{className:G(U.body,`gap-2`),onSelect:()=>c?.(e.projectId),children:[(0,$.jsx)(t,{className:`h-4 w-4 shrink-0`}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:Ke(e)}),n?(0,$.jsx)(W,{className:`ml-auto h-4 w-4 shrink-0`}):null]},e.projectId)},t[18]=c,t[19]=a,t[20]=e):e=t[20],g=i.map(e),t[14]=c,t[15]=a,t[16]=i,t[17]=g}else g=t[17];let _;t[21]!==h||t[22]!==g?(_=(0,$.jsx)(bl,{align:h,collisionPadding:12,className:`max-h-[var(--radix-dropdown-menu-content-available-height)] w-64 overflow-y-auto`,children:g}),t[21]=h,t[22]=g,t[23]=_):_=t[23];let v;return t[24]!==m||t[25]!==_?(v=(0,$.jsxs)(hl,{children:[m,_]}),t[24]=m,t[25]=_,t[26]=v):v=t[26],v}function Jj(e){let t=(0,Q.c)(1),{showingProjectDetails:n}=e;if(!n||!ji())return null;let r;return t[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,$.jsx)(`div`,{className:`hidden shrink-0 md:flex`,children:(0,$.jsx)(qA,{})}),t[0]=r):r=t[0],r}function Yj(e){let t=(0,Q.c)(6),{showingProjectDetails:n,isStartingNewChat:r,handleNewChat:i,projectId:a}=e,o=n?`ghost`:`outline`,s=n?nl:`bg-background text-foreground hover:bg-accent hover:text-accent-foreground`,c;return t[0]!==i||t[1]!==r||t[2]!==a||t[3]!==o||t[4]!==s?(c=(0,$.jsx)(pw,{projectId:a,onNewChat:i,isStartingNewChat:r,iconOnly:!0,variant:o,size:`icon-sm`,buttonClassName:s,ariaLabel:`New Chat`}),t[0]=i,t[1]=r,t[2]=a,t[3]=o,t[4]=s,t[5]=c):c=t[5],c}function Xj(e){let t=(0,Q.c)(14),{showingProjectDetails:n,hasMessages:r,isStartingNewChat:i,handleNewChat:a,projectId:o,projectDetailsPillClassName:s}=e,c=n&&s,l;t[0]===c?l=t[1]:(l=G(`md:hidden electrobun-webkit-app-region-no-drag`,c),t[0]=c,t[1]=l);let u;t[2]!==a||t[3]!==r||t[4]!==i||t[5]!==o||t[6]!==n?(u=r?(0,$.jsx)(Yj,{showingProjectDetails:n,isStartingNewChat:i,handleNewChat:a,projectId:o}):null,t[2]=a,t[3]=r,t[4]=i,t[5]=o,t[6]=n,t[7]=u):u=t[7];let d;t[8]===n?d=t[9]:(d=(0,$.jsx)(TE,{inPill:n}),t[8]=n,t[9]=d);let f;return t[10]!==l||t[11]!==u||t[12]!==d?(f=(0,$.jsxs)(Vj,{className:l,children:[u,d]}),t[10]=l,t[11]=u,t[12]=d,t[13]=f):f=t[13],f}function Zj(e){let t=(0,Q.c)(24),{showingProjectDetails:n,selectedThreadId:r,selectedProjectId:i,selectedProject:a,vscodeEmbed:o,projectDetailsActionsPillClassName:s}=e,c=n&&s,l;t[0]===c?l=t[1]:(l=G(`electrobun-webkit-app-region-no-drag`,c),t[0]=c,t[1]=l);let u;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(u=(0,$.jsx)(WA,{}),t[2]=u):u=t[2];let d=a?.runCommand,f;t[3]!==i||t[4]!==d?(f=(0,$.jsx)(lE,{projectId:i,runCommand:d}),t[3]=i,t[4]=d,t[5]=f):f=t[5];let p;t[6]===r?p=t[7]:(p=r&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(Dw,{threadId:r}),(0,$.jsx)(Ow,{})]}),t[6]=r,t[7]=p);let m;t[8]!==a?.openWith||t[9]!==i||t[10]!==r||t[11]!==o?(m=!o&&r?(0,$.jsx)(PT,{projectId:i,threadId:r,openWith:a?.openWith}):null,t[8]=a?.openWith,t[9]=i,t[10]=r,t[11]=o,t[12]=m):m=t[12];let h;t[13]===o?h=t[14]:(h=o?null:(0,$.jsx)(Uj,{}),t[13]=o,t[14]=h);let g;t[15]===o?g=t[16]:(g=o?null:(0,$.jsx)(Rj,{}),t[15]=o,t[16]=g);let _;return t[17]!==l||t[18]!==f||t[19]!==p||t[20]!==m||t[21]!==h||t[22]!==g?(_=(0,$.jsx)(`div`,{className:`hidden md:flex flex-wrap items-center justify-end gap-2`,children:(0,$.jsxs)(Vj,{className:l,children:[u,f,p,m,h,g]})}),t[17]=l,t[18]=f,t[19]=p,t[20]=m,t[21]=h,t[22]=g,t[23]=_):_=t[23],_}function Qj(e){let t=(0,Q.c)(24),{showingProjectDetails:n,selectedThreadId:r,hasMessages:i,selectedProjectId:a,selectedProject:o,isStartingNewChat:s,handleNewChat:c,vscodeEmbed:l,projectDetailsPillClassName:u,projectDetailsActionsPillClassName:d}=e,f=!!r&&(i||!!a),p;t[0]===n?p=t[1]:(p=(0,$.jsx)(Jj,{showingProjectDetails:n}),t[0]=n,t[1]=p);let m;t[2]!==c||t[3]!==i||t[4]!==s||t[5]!==u||t[6]!==a||t[7]!==f||t[8]!==n?(m=f?(0,$.jsx)(Xj,{showingProjectDetails:n,hasMessages:i,isStartingNewChat:s,handleNewChat:c,projectId:a,projectDetailsPillClassName:u}):null,t[2]=c,t[3]=i,t[4]=s,t[5]=u,t[6]=a,t[7]=f,t[8]=n,t[9]=m):m=t[9];let h;t[10]!==d||t[11]!==o||t[12]!==a||t[13]!==r||t[14]!==n||t[15]!==l?(h=a?(0,$.jsx)(Zj,{showingProjectDetails:n,selectedThreadId:r,selectedProjectId:a,selectedProject:o,vscodeEmbed:l,projectDetailsActionsPillClassName:d}):null,t[10]=d,t[11]=o,t[12]=a,t[13]=r,t[14]=n,t[15]=l,t[16]=h):h=t[16];let g;t[17]===l?g=t[18]:(g=l&&(0,$.jsx)(Hj,{}),t[17]=l,t[18]=g);let _;return t[19]!==p||t[20]!==m||t[21]!==h||t[22]!==g?(_=(0,$.jsxs)($.Fragment,{children:[p,m,h,g]}),t[19]=p,t[20]=m,t[21]=h,t[22]=g,t[23]=_):_=t[23],_}function $j(e){let t=(0,Q.c)(57),{onBackToProjects:n,onSelectProject:r}=e,i=mC(),a=X(iM),o=X(rM),s=X(nM),c=X(tM),{handleNewChat:l,isStartingNewChat:u}=RC(),d;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(d=OO(),t[0]=d):d=t[0];let f=d,p=c.length>0,m;if(t[1]!==s||t[2]!==o){let e;t[4]===o?e=t[5]:(e=e=>e.projectId===o,t[4]=o,t[5]=e),m=s.find(e),t[1]=s,t[2]=o,t[3]=m}else m=t[3];let h=m,g,_,v,y,b,x;if(t[6]!==l||t[7]!==p||t[8]!==u||t[9]!==n||t[10]!==r||t[11]!==s||t[12]!==h||t[13]!==o||t[14]!==a||t[15]!==i){let e=Pr(),c;t[22]===s?c=t[23]:(c=[...s].sort(eM),t[22]=s,t[23]=c);let d=c,m;t[24]!==n||t[25]!==i?(m=!f&&n?(0,$.jsx)(Gj,{showingProjectDetails:i,onBackToProjects:n}):null,t[24]=n,t[25]=i,t[26]=m):m=t[26],v=m;let S=!!r&&!(f&&i),C;t[27]!==r||t[28]!==h||t[29]!==i||t[30]!==d||t[31]!==S?(C=h?(0,$.jsx)(qj,{selectedProject:h,showingProjectDetails:i,sortedProjects:d,selectedProjectId:h.projectId,useDropdown:S,onSelectProject:r}):null,t[27]=r,t[28]=h,t[29]=i,t[30]=d,t[31]=S,t[32]=C):C=t[32],b=C;let w;t[33]!==b||t[34]!==i?(w=b?(0,$.jsxs)($.Fragment,{children:[i?null:(0,$.jsx)(sn,{className:`h-4 w-4 shrink-0 text-muted-foreground`}),b]}):null,t[33]=b,t[34]=i,t[35]=w):w=t[35];let T;t[36]!==v||t[37]!==w?(T=(0,$.jsxs)($.Fragment,{children:[v,w]}),t[36]=v,t[37]=w,t[38]=T):T=t[38],y=T;let E;t[39]!==l||t[40]!==p||t[41]!==u||t[42]!==h||t[43]!==o||t[44]!==a||t[45]!==i?(E=(0,$.jsx)(Qj,{showingProjectDetails:i,selectedThreadId:a,hasMessages:p,selectedProjectId:o,selectedProject:h,isStartingNewChat:u,handleNewChat:l,vscodeEmbed:f,projectDetailsPillClassName:`frosted-surface p-1 text-foreground backdrop-blur-sm electrobun-webkit-app-region-no-drag`,projectDetailsActionsPillClassName:`bg-transparent scenic-foreground shadow-none backdrop-blur-none electrobun-webkit-app-region-no-drag`}),t[39]=l,t[40]=p,t[41]=u,t[42]=h,t[43]=o,t[44]=a,t[45]=i,t[46]=E):E=t[46],_=E,g=el,x=G(!i&&`pt-1`,e&&!i&&`pt-4 md:min-h-[103px]`,i&&`scenic-foreground grid min-h-0 grid-cols-[1fr_auto_1fr] items-center gap-2 px-4 pt-2 pb-1`),t[6]=l,t[7]=p,t[8]=u,t[9]=n,t[10]=r,t[11]=s,t[12]=h,t[13]=o,t[14]=a,t[15]=i,t[16]=g,t[17]=_,t[18]=v,t[19]=y,t[20]=b,t[21]=x}else g=t[16],_=t[17],v=t[18],y=t[19],b=t[20],x=t[21];let S;t[47]!==_||t[48]!==v||t[49]!==y||t[50]!==b||t[51]!==i?(S=i?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`div`,{"aria-hidden":!0,className:`min-w-0`}),(0,$.jsx)(`div`,{className:`flex min-w-0 items-center justify-center`,children:(0,$.jsxs)(`div`,{className:G(`flex min-w-0 max-w-full items-center gap-1 rounded-full`,`bg-transparent scenic-foreground electrobun-webkit-app-region-no-drag`),children:[v,v&&b?(0,$.jsx)(sn,{className:`h-4 w-4 shrink-0 scenic-foreground-muted`}):null,b]})}),(0,$.jsx)(`div`,{className:`flex min-w-0 items-center justify-end gap-2`,children:_})]}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`div`,{className:`flex min-w-0 flex-1 items-center gap-1`,children:y}),(0,$.jsx)(`div`,{className:`ml-auto flex min-w-0 shrink-0 items-center gap-2`,children:_})]}),t[47]=_,t[48]=v,t[49]=y,t[50]=b,t[51]=i,t[52]=S):S=t[52];let C;return t[53]!==g||t[54]!==x||t[55]!==S?(C=(0,$.jsx)(g,{className:x,children:S}),t[53]=g,t[54]=x,t[55]=S,t[56]=C):C=t[56],C}function eM(e,t){return Ke(e).localeCompare(Ke(t))}function tM(e){return e.messages}function nM(e){return e.projects}function rM(e){return e.selectedProjectId}function iM(e){return e.selectedThreadId}var aM=`tarsk-browser-element-selected`,oM=`tarsk-browser-text-edit-commit`;function sM(e){let t=[`<browser-selection url="${e.url}" selector="${e.selector}" tag="${e.tagName}">`,e.html,`</browser-selection>`];return e.text.trim()&&t.push(`Text: ${e.text.trim()}`),t.join(`
3336
- `)}function cM(e,t,n){return[`Change the text from:`,t,`to:`,n,``,sM(e)].join(`
3337
- `)}function lM(e){return e===`select`||e===`edit`}function uM(e){if(!e||typeof e!=`object`)return!1;let t=e;return typeof t.html!=`string`||typeof t.text!=`string`||typeof t.tagName!=`string`||typeof t.selector!=`string`||typeof t.url!=`string`?!1:t.interaction===void 0||lM(t.interaction)}function dM(e){if(!e||typeof e!=`object`)return!1;let t=e;return typeof t.originalText==`string`&&typeof t.currentText==`string`&&uM(t.selection)}function fM(e,t){if(!e||typeof e!=`object`)return null;let n=e;return n.type!==t||!n.payload||typeof n.payload!=`object`?null:n.payload}function pM(e){let t=fM(e,aM);return!t||!uM(t)?null:t}function mM(e){let t=fM(e,oM);return!t||!dM(t)?null:t}function hM(e){window.dispatchEvent(new CustomEvent(aM,{detail:e}))}function gM(e){return pM(e)??(uM(e)?e:null)}function _M(e){return e?.interaction===`edit`}function vM(e,t){let n=t.trim();return n?`${e}\n\n${n}`:e}function yM(e){if(Pr()){(e?.querySelector(`electrobun-webview`))?.executeJavascript?.(`(function(){window.__tarskBrowserPreview?.setSelectMode?.(false,false);})();`);return}(e?.querySelector(`iframe`)?.contentWindow?.__tarskBrowserPreview)?.setSelectMode?.(!1,!1)}function bM(e){let t=(0,Q.c)(39),{container:n}=e,r=Ks(),i=X(CM),a=X(SM),{selectedBrowserElement:o,isSelectionPromptOpen:s,setIsSelectionPromptOpen:c,setSelectedBrowserElement:l,setBrowserAgentProcessingThreadId:u}=ek(),{paneId:d,conversationId:f}=Sv(),{handleSend:p,handleStop:m,getQueuedMessagesForPane:h,handleRemoveQueuedMessage:g}=vv(),{userTasks:_,setUserTasks:v,effectiveIsStreaming:y,handleRemoveUserTask:b}=RC(),[x,S]=Z.useState(0),C;t[0]===o?C=t[1]:(C=o?sM(o):``,t[0]=o,t[1]=C);let w=C,T;t[2]===s?T=t[3]:(T=()=>{s&&S(xM)},t[2]=s,t[3]=T);let E;t[4]!==s||t[5]!==o?(E=[s,o],t[4]=s,t[5]=o,t[6]=E):E=t[6],(0,Z.useEffect)(T,E);let D;t[7]!==n||t[8]!==c||t[9]!==l?(D=e=>{c(e),e||(yM(n),l(null))},t[7]=n,t[8]=c,t[9]=l,t[10]=D):D=t[10];let O=D,k;t[11]!==n||t[12]!==f||t[13]!==r||t[14]!==p||t[15]!==d||t[16]!==i||t[17]!==w||t[18]!==u||t[19]!==c||t[20]!==l?(k=(e,t,a,o,s,m,h)=>{!i||!w||(p(d,f,vM(w,e),t,a,o,s,m,h),r({type:Y.SetChatInputDraft,threadId:d===`primary`?i:`${i}:${d}`,draft:``}),u(i),c(!1),l(null),yM(n))},t[11]=n,t[12]=f,t[13]=r,t[14]=p,t[15]=d,t[16]=i,t[17]=w,t[18]=u,t[19]=c,t[20]=l,t[21]=k):k=t[21];let A=k,j=s&&!!(i&&a&&o&&n),M;t[22]!==n||t[23]!==y||t[24]!==h||t[25]!==g||t[26]!==b||t[27]!==m||t[28]!==A||t[29]!==d||t[30]!==x||t[31]!==i||t[32]!==v||t[33]!==_?(M=n?(0,$.jsxs)($r,{container:n,children:[(0,$.jsx)(Wr,{className:G(`absolute inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0`)}),(0,$.jsxs)(gi,{className:G(`absolute inset-x-0 top-0 z-50 w-full border-b border-border bg-background p-0 shadow-lg duration-200 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]:slide-out-to-top data-[state=open]:slide-in-from-top`),children:[(0,$.jsx)(qa,{className:`sr-only`,children:`Prompt with selected element`}),(0,$.jsxs)(di,{className:`absolute right-4 top-4 z-10 flex h-7 w-7 items-center justify-center rounded-full transition-colors hover:bg-foreground hover:text-background disabled:pointer-events-none`,children:[(0,$.jsx)(nt,{className:`h-4 w-4`}),(0,$.jsx)(`span`,{className:`sr-only`,children:`Close`})]}),(0,$.jsx)(`div`,{className:`px-4 pt-3 pb-2`,children:(0,$.jsx)(QS,{centered:!0,autoFocus:!0,onSend:A,onStop:()=>m(d),isStreaming:y,disabled:!i,initialValue:``,queuedMessages:h(d),onRemoveQueuedMessage:e=>{g(d,e)},placeholder:`How do you want to change the selected element?`,userTasks:_,onMatchedUserTaskSend:e=>{e.pinned||b(e.id)},onUserTaskCreated:e=>{v(t=>[...t,e])}},x)})]})]}):null,t[22]=n,t[23]=y,t[24]=h,t[25]=g,t[26]=b,t[27]=m,t[28]=A,t[29]=d,t[30]=x,t[31]=i,t[32]=v,t[33]=_,t[34]=M):M=t[34];let N;return t[35]!==O||t[36]!==j||t[37]!==M?(N=(0,$.jsx)(li,{open:j,onOpenChange:O,children:M}),t[35]=O,t[36]=j,t[37]=M,t[38]=N):N=t[38],N}function xM(e){return e+1}function SM(e){return e.selectedProjectId}function CM(e){return e.selectedThreadId}function wM(){let e=(0,Q.c)(1),t;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,$.jsx)(`div`,{className:`flex h-full items-center justify-center`,children:(0,$.jsx)(`div`,{className:`h-8 w-8 animate-spin rounded-full border-2 border-muted border-t-primary`})}),e[0]=t):t=e[0],t}var TM=(0,Z.lazy)(()=>us(()=>import(`./settings-view-BoC66Wji.js`),__vite__mapDeps([36,1,19,20,4,5,37,14,24]))),EM=`animate-in fade-in duration-200`,DM=`animate-out fade-out duration-200 fill-mode-forwards pointer-events-none`;function OM(){let e=(0,Q.c)(22);Yr(!0);let t=Yn(),n=(0,Z.useRef)(!1),r=(0,Z.useRef)(!1),[i,a]=(0,Z.useState)(!1),o;e[0]===t?o=e[1]:(o=()=>{r.current||(r.current=!0,t(`/`))},e[0]=t,e[1]=o);let s=o,c;e[2]===Symbol.for(`react.memo_cache_sentinel`)?(c=()=>{n.current||(n.current=!0,a(!0))},e[2]=c):c=e[2];let l=c,u;e[3]===s?u=e[4]:(u=e=>{!n.current||e.animationName!==`exit`||s()},e[3]=s,e[4]=u);let d=u,f,p;e[5]!==i||e[6]!==s?(f=()=>{if(!i)return;let e=window.setTimeout(s,250);return()=>window.clearTimeout(e)},p=[i,s],e[5]=i,e[6]=s,e[7]=f,e[8]=p):(f=e[7],p=e[8]),(0,Z.useEffect)(f,p);let m=i?DM:EM,h;e[9]===m?h=e[10]:(h=G(`absolute inset-0 bg-black/50`,m),e[9]=m,e[10]=h);let g;e[11]===h?g=e[12]:(g=(0,$.jsx)(`div`,{className:h,"aria-hidden":!0}),e[11]=h,e[12]=g);let _;e[13]===m?_=e[14]:(_=G(`relative z-10 h-full w-full md:h-auto md:w-auto`,m),e[13]=m,e[14]=_);let v;e[15]===Symbol.for(`react.memo_cache_sentinel`)?(v=(0,$.jsx)(Z.Suspense,{fallback:(0,$.jsx)(wM,{}),children:(0,$.jsx)(TM,{onRequestClose:l})}),e[15]=v):v=e[15];let y;e[16]!==d||e[17]!==_?(y=(0,$.jsx)(`div`,{className:_,onAnimationEnd:d,children:v}),e[16]=d,e[17]=_,e[18]=y):y=e[18];let b;return e[19]!==g||e[20]!==y?(b=(0,$.jsxs)(`div`,{className:`absolute inset-0 z-50 flex items-center justify-center md:p-6`,children:[g,y]}),e[19]=g,e[20]=y,e[21]=b):b=e[21],b}function kM(e){let t=(0,Q.c)(35),{selectedProjectId:n,isReviewRoute:r,onCreateThread:i,onBackToProjects:a,onSelectProject:o,onSubmitClone:s,onSubmitWebApp:c,onSubmitFolder:l,onOpenFolder:u}=e,{isPanelOpen:d}=gc(),f=mC(),p=!r,m=p&&!f,[h,g]=(0,Z.useState)(null),_=X(AM),v;if(t[0]!==_||t[1]!==n){let e;t[3]===n?e=t[4]:(e=e=>e.projectId===n,t[3]=n,t[4]=e),v=_.find(e),t[0]=_,t[1]=n,t[2]=v}else v=t[2];let y=v?.useBuiltInBrowser!==!1,b;t[5]===d?b=t[6]:(b=d(`browser`),t[5]=d,t[6]=b);let x=b,S=m&&`bg-background`,C;t[7]===S?C=t[8]:(C=G(`relative flex h-full flex-col overflow-hidden`,S),t[7]=S,t[8]=C);let w;t[9]!==a||t[10]!==o||t[11]!==p?(w=p&&(0,$.jsx)($j,{onBackToProjects:a,onSelectProject:o}),t[9]=a,t[10]=o,t[11]=p,t[12]=w):w=t[12];let T;t[13]!==i||t[14]!==u||t[15]!==s||t[16]!==l||t[17]!==c?(T=(0,$.jsx)(`main`,{className:`relative flex-1 overflow-hidden`,children:(0,$.jsx)(`div`,{className:`absolute inset-0`,children:(0,$.jsx)(lA,{onCreateThread:i,onSubmitClone:s,onSubmitWebApp:c,onSubmitFolder:l,onOpenFolder:u})})}),t[13]=i,t[14]=u,t[15]=s,t[16]=l,t[17]=c,t[18]=T):T=t[18];let E;t[19]===Symbol.for(`react.memo_cache_sentinel`)?(E=(0,$.jsx)(qn,{path:`/settings/providers/:providerSlug`,element:(0,$.jsx)(OM,{})}),t[19]=E):E=t[19];let D;t[20]===Symbol.for(`react.memo_cache_sentinel`)?(D=(0,$.jsx)(qn,{path:`/settings/project/:projectId/tools`,element:(0,$.jsx)(OM,{})}),t[20]=D):D=t[20];let O;t[21]===Symbol.for(`react.memo_cache_sentinel`)?(O=(0,$.jsx)(qn,{path:`/settings/project/:projectId/model-aliases`,element:(0,$.jsx)(OM,{})}),t[21]=O):O=t[21];let k;t[22]===Symbol.for(`react.memo_cache_sentinel`)?(k=(0,$.jsx)(qn,{path:`/settings/project/:projectId/env-vars`,element:(0,$.jsx)(OM,{})}),t[22]=k):k=t[22];let A;t[23]===Symbol.for(`react.memo_cache_sentinel`)?(A=(0,$.jsx)(qn,{path:`/settings/project/:projectId`,element:(0,$.jsx)(OM,{})}),t[23]=A):A=t[23];let j;t[24]===Symbol.for(`react.memo_cache_sentinel`)?(j=(0,$.jsxs)(Tn,{children:[E,D,O,k,A,(0,$.jsx)(qn,{path:`/settings/:tab?`,element:(0,$.jsx)(OM,{})})]}),t[24]=j):j=t[24];let M;t[25]!==x||t[26]!==h||t[27]!==y||t[28]!==p?(M=p&&y&&x?(0,$.jsx)(bM,{container:h}):null,t[25]=x,t[26]=h,t[27]=y,t[28]=p,t[29]=M):M=t[29];let N;return t[30]!==M||t[31]!==C||t[32]!==w||t[33]!==T?(N=(0,$.jsxs)(`div`,{ref:g,className:C,children:[w,T,j,M]}),t[30]=M,t[31]=C,t[32]=w,t[33]=T,t[34]=N):N=t[34],N}function AM(e){return e.projects}function jM(e){let t=(0,Q.c)(24),{open:n,projectName:r,onOpenChange:i,onConfirm:a,blocked:o,blockReason:s,deletesFolder:c}=e,l=o===void 0?!1:o,u=c===void 0?!0:c,d;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(d=(0,$.jsx)(sc,{children:`Delete Project`}),t[0]=d):d=t[0];let f;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(f=G(U.body,`font-semibold text-foreground`),t[1]=f):f=t[1];let p;t[2]===r?p=t[3]:(p=(0,$.jsxs)(`span`,{className:f,children:[`"`,r,`"`]}),t[2]=r,t[3]=p);let m=u?` The project folder will also be deleted.`:` Your original folder and its files will not be deleted.`,h;t[4]!==p||t[5]!==m?(h=(0,$.jsxs)(oc,{children:[`Are you sure you want to delete`,` `,p,`? This will remove the project and all its data.`,m,` `,`This action cannot be undone.`]}),t[4]=p,t[5]=m,t[6]=h):h=t[6];let g;t[7]!==s||t[8]!==l?(g=l&&s&&(0,$.jsx)(`p`,{className:`mt-1 text-sm text-destructive`,children:s}),t[7]=s,t[8]=l,t[9]=g):g=t[9];let _;t[10]!==h||t[11]!==g?(_=(0,$.jsxs)(fc,{children:[d,h,g]}),t[10]=h,t[11]=g,t[12]=_):_=t[12];let v;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(v=(0,$.jsx)(dc,{children:`Cancel`}),t[13]=v):v=t[13];let y;t[14]!==l||t[15]!==a?(y=(0,$.jsxs)(uc,{children:[v,(0,$.jsx)(lc,{onClick:a,disabled:l,className:`bg-destructive text-destructive-foreground hover:bg-destructive/90`,children:`Delete`})]}),t[14]=l,t[15]=a,t[16]=y):y=t[16];let b;t[17]!==y||t[18]!==_?(b=(0,$.jsxs)(cc,{children:[_,y]}),t[17]=y,t[18]=_,t[19]=b):b=t[19];let x;return t[20]!==i||t[21]!==n||t[22]!==b?(x=(0,$.jsx)(pc,{open:n,onOpenChange:i,children:b}),t[20]=i,t[21]=n,t[22]=b,t[23]=x):x=t[23],x}function MM(e){let t=(0,Q.c)(28),{open:n,setupScripts:r,onConfirm:i}=e;if(r.length===0)return null;let a;t[0]===i?a=t[1]:(a=e=>{e||i(!1)},t[0]=i,t[1]=a);let o;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,$.jsx)(sc,{children:`Install dependencies?`}),t[2]=o):o=t[2];let s=r.length===1?``:`s`,c;t[3]!==r.length||t[4]!==s?(c=(0,$.jsxs)(fc,{children:[o,(0,$.jsxs)(oc,{children:[`Found `,r.length,` package`,s,` with dependencies to install:`]})]}),t[3]=r.length,t[4]=s,t[5]=c):c=t[5];let l;t[6]===r?l=t[7]:(l=r.map(NM),t[6]=r,t[7]=l);let u;t[8]===l?u=t[9]:(u=(0,$.jsx)(`div`,{className:`my-4 max-h-60 overflow-y-auto`,children:(0,$.jsx)(`div`,{className:`space-y-2`,children:l})}),t[8]=l,t[9]=u);let d;t[10]===i?d=t[11]:(d=(0,$.jsx)(dc,{onClick:()=>i(!1),children:`No`}),t[10]=i,t[11]=d);let f;t[12]===i?f=t[13]:(f=()=>i(!0),t[12]=i,t[13]=f);let p;t[14]!==r.length||t[15]!==f?(p=(0,$.jsxs)(lc,{onClick:f,children:[`Install All (`,r.length,`)`]}),t[14]=r.length,t[15]=f,t[16]=p):p=t[16];let m;t[17]!==d||t[18]!==p?(m=(0,$.jsxs)(uc,{children:[d,p]}),t[17]=d,t[18]=p,t[19]=m):m=t[19];let h;t[20]!==m||t[21]!==c||t[22]!==u?(h=(0,$.jsxs)(cc,{className:`max-w-2xl`,children:[c,u,m]}),t[20]=m,t[21]=c,t[22]=u,t[23]=h):h=t[23];let g;return t[24]!==n||t[25]!==a||t[26]!==h?(g=(0,$.jsx)(pc,{open:n,onOpenChange:a,children:h}),t[24]=n,t[25]=a,t[26]=h,t[27]=g):g=t[27],g}function NM(e,t){let n=e.match(/^cd "([^"]+)" && (.+)$/),r=n?n[1]:`root`,i=n?n[2]:e;return(0,$.jsx)(`div`,{className:`flex items-center justify-between p-3 rounded-lg border bg-muted/50`,children:(0,$.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,$.jsx)(`div`,{className:`w-2 h-2 rounded-full bg-blue-500`}),(0,$.jsxs)(`div`,{children:[(0,$.jsx)(`div`,{className:U.label,children:r||`root`}),(0,$.jsx)(`div`,{className:U.bodyMuted,children:i})]})]})},t)}function PM(e){let t=(0,Q.c)(24),{open:n,existingProjectName:r,zipFilename:i,onConfirm:a}=e;if(!r||!i)return null;let o;t[0]===a?o=t[1]:(o=e=>{e||a(!1)},t[0]=a,t[1]=o);let s;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,$.jsx)(sc,{children:`Replace existing project?`}),t[2]=s):s=t[2];let c;t[3]===r?c=t[4]:(c=(0,$.jsx)(`span`,{className:U.label,children:r}),t[3]=r,t[4]=c);let l;t[5]===i?l=t[6]:(l=(0,$.jsx)(`span`,{className:U.label,children:i}),t[5]=i,t[6]=l);let u;t[7]!==c||t[8]!==l?(u=(0,$.jsxs)(fc,{children:[s,(0,$.jsxs)(oc,{children:[`A project named `,c,` already exists. Importing `,l,` will replace its source code, threads, and any in-progress work with the contents of the zip. This cannot be undone.`]})]}),t[7]=c,t[8]=l,t[9]=u):u=t[9];let d;t[10]===a?d=t[11]:(d=(0,$.jsx)(dc,{onClick:()=>a(!1),children:`Cancel`}),t[10]=a,t[11]=d);let f;t[12]===a?f=t[13]:(f=(0,$.jsx)(lc,{onClick:()=>a(!0),children:`Replace project`}),t[12]=a,t[13]=f);let p;t[14]!==d||t[15]!==f?(p=(0,$.jsxs)(uc,{children:[d,f]}),t[14]=d,t[15]=f,t[16]=p):p=t[16];let m;t[17]!==u||t[18]!==p?(m=(0,$.jsxs)(cc,{className:`max-w-xl`,children:[u,p]}),t[17]=u,t[18]=p,t[19]=m):m=t[19];let h;return t[20]!==n||t[21]!==o||t[22]!==m?(h=(0,$.jsx)(pc,{open:n,onOpenChange:o,children:m}),t[20]=n,t[21]=o,t[22]=m,t[23]=h):h=t[23],h}var FM;(function(e){e[e.QR_CODE=0]=`QR_CODE`,e[e.AZTEC=1]=`AZTEC`,e[e.CODABAR=2]=`CODABAR`,e[e.CODE_39=3]=`CODE_39`,e[e.CODE_93=4]=`CODE_93`,e[e.CODE_128=5]=`CODE_128`,e[e.DATA_MATRIX=6]=`DATA_MATRIX`,e[e.MAXICODE=7]=`MAXICODE`,e[e.ITF=8]=`ITF`,e[e.EAN_13=9]=`EAN_13`,e[e.EAN_8=10]=`EAN_8`,e[e.PDF_417=11]=`PDF_417`,e[e.RSS_14=12]=`RSS_14`,e[e.RSS_EXPANDED=13]=`RSS_EXPANDED`,e[e.UPC_A=14]=`UPC_A`,e[e.UPC_E=15]=`UPC_E`,e[e.UPC_EAN_EXTENSION=16]=`UPC_EAN_EXTENSION`})(FM||={});var IM=new Map([[FM.QR_CODE,`QR_CODE`],[FM.AZTEC,`AZTEC`],[FM.CODABAR,`CODABAR`],[FM.CODE_39,`CODE_39`],[FM.CODE_93,`CODE_93`],[FM.CODE_128,`CODE_128`],[FM.DATA_MATRIX,`DATA_MATRIX`],[FM.MAXICODE,`MAXICODE`],[FM.ITF,`ITF`],[FM.EAN_13,`EAN_13`],[FM.EAN_8,`EAN_8`],[FM.PDF_417,`PDF_417`],[FM.RSS_14,`RSS_14`],[FM.RSS_EXPANDED,`RSS_EXPANDED`],[FM.UPC_A,`UPC_A`],[FM.UPC_E,`UPC_E`],[FM.UPC_EAN_EXTENSION,`UPC_EAN_EXTENSION`]]),LM;(function(e){e[e.UNKNOWN=0]=`UNKNOWN`,e[e.URL=1]=`URL`})(LM||={});function RM(e){return Object.values(FM).includes(e)}var zM;(function(e){e[e.SCAN_TYPE_CAMERA=0]=`SCAN_TYPE_CAMERA`,e[e.SCAN_TYPE_FILE=1]=`SCAN_TYPE_FILE`})(zM||={});var BM=function(){function e(){}return e.GITHUB_PROJECT_URL=`https://github.com/mebjas/html5-qrcode`,e.SCAN_DEFAULT_FPS=2,e.DEFAULT_DISABLE_FLIP=!1,e.DEFAULT_REMEMBER_LAST_CAMERA_USED=!0,e.DEFAULT_SUPPORTED_SCAN_TYPE=[zM.SCAN_TYPE_CAMERA,zM.SCAN_TYPE_FILE],e}(),VM=function(){function e(e,t){this.format=e,this.formatName=t}return e.prototype.toString=function(){return this.formatName},e.create=function(t){if(!IM.has(t))throw`${t} not in html5QrcodeSupportedFormatsTextMap`;return new e(t,IM.get(t))},e}(),HM=function(){function e(){}return e.createFromText=function(e){return{decodedText:e,result:{text:e}}},e.createFromQrcodeResult=function(e){return{decodedText:e.text,result:e}},e}(),UM;(function(e){e[e.UNKWOWN_ERROR=0]=`UNKWOWN_ERROR`,e[e.IMPLEMENTATION_ERROR=1]=`IMPLEMENTATION_ERROR`,e[e.NO_CODE_FOUND_ERROR=2]=`NO_CODE_FOUND_ERROR`})(UM||={});var WM=function(){function e(){}return e.createFrom=function(e){return{errorMessage:e,type:UM.UNKWOWN_ERROR}},e}(),GM=function(){function e(e){this.verbose=e}return e.prototype.log=function(e){this.verbose&&console.log(e)},e.prototype.warn=function(e){this.verbose&&console.warn(e)},e.prototype.logError=function(e,t){(this.verbose||t===!0)&&console.error(e)},e.prototype.logErrors=function(e){if(e.length===0)throw`Logger#logError called without arguments`;this.verbose&&console.error(e)},e}();function KM(e){return e==null}function qM(e,t,n){return e>n?n:e<t?t:e}var JM=function(){function e(){}return e.codeParseError=function(e){return`QR code parse error, error = ${e}`},e.errorGettingUserMedia=function(e){return`Error getting userMedia, error = ${e}`},e.onlyDeviceSupportedError=function(){return`The device doesn't support navigator.mediaDevices , only supported cameraIdOrConfig in this case is deviceId parameter (string).`},e.cameraStreamingNotSupported=function(){return`Camera streaming not supported by the browser.`},e.unableToQuerySupportedDevices=function(){return`Unable to query supported devices, unknown error.`},e.insecureContextCameraQueryError=function(){return`Camera access is only supported in secure context like https or localhost.`},e.scannerPaused=function(){return`Scanner paused`},e}(),YM=function(){function e(){}return e.scanningStatus=function(){return`Scanning`},e.idleStatus=function(){return`Idle`},e.errorStatus=function(){return`Error`},e.permissionStatus=function(){return`Permission`},e.noCameraFoundErrorStatus=function(){return`No Cameras`},e.lastMatch=function(e){return`Last Match: ${e}`},e.codeScannerTitle=function(){return`Code Scanner`},e.cameraPermissionTitle=function(){return`Request Camera Permissions`},e.cameraPermissionRequesting=function(){return`Requesting camera permissions...`},e.noCameraFound=function(){return`No camera found`},e.scanButtonStopScanningText=function(){return`Stop Scanning`},e.scanButtonStartScanningText=function(){return`Start Scanning`},e.torchOnButton=function(){return`Switch On Torch`},e.torchOffButton=function(){return`Switch Off Torch`},e.torchOnFailedMessage=function(){return`Failed to turn on torch`},e.torchOffFailedMessage=function(){return`Failed to turn off torch`},e.scanButtonScanningStarting=function(){return`Launching Camera...`},e.textIfCameraScanSelected=function(){return`Scan an Image File`},e.textIfFileScanSelected=function(){return`Scan using camera directly`},e.selectCamera=function(){return`Select Camera`},e.fileSelectionChooseImage=function(){return`Choose Image`},e.fileSelectionChooseAnother=function(){return`Choose Another`},e.fileSelectionNoImageSelected=function(){return`No image choosen`},e.anonymousCameraPrefix=function(){return`Anonymous Camera`},e.dragAndDropMessage=function(){return`Or drop an image to scan`},e.dragAndDropMessageOnlyImages=function(){return`Or drop an image to scan (other files not supported)`},e.zoom=function(){return`zoom`},e.loadingImage=function(){return`Loading image...`},e.cameraScanAltText=function(){return`Camera based scan`},e.fileScanAltText=function(){return`Fule based scan`},e}(),XM=function(){function e(){}return e.poweredBy=function(){return`Powered by `},e.reportIssues=function(){return`Report issues`},e}(),ZM=function(){function e(){}return e.isMediaStreamConstraintsValid=function(e,t){if(typeof e!=`object`){var n=typeof e;return t.logError(`videoConstraints should be of type object, the object passed is of type ${n}.`,!0),!1}for(var r=new Set([`autoGainControl`,`channelCount`,`echoCancellation`,`latency`,`noiseSuppression`,`sampleRate`,`sampleSize`,`volume`]),i=Object.keys(e),a=0,o=i;a<o.length;a++){var s=o[a];if(r.has(s))return t.logError(`${s} is not supported videoConstaints.`,!0),!1}return!0},e}(),QM=e(t(((e,t)=>{(function(n,r){typeof e==`object`&&t!==void 0?r(e):typeof define==`function`&&define.amd?define([`exports`],r):(n=typeof globalThis<`u`?globalThis:n||self,r(n.ZXing={}))})(e,(function(e){function t(e){return e==null}var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};function r(e,t){n(e,t);function r(){this.constructor=e}e.prototype=t===null?Object.create(t):(r.prototype=t.prototype,new r)}function i(e,t){var n=Object.setPrototypeOf;n?n(e,t):e.__proto__=t}function a(e,t){t===void 0&&(t=e.constructor);var n=Error.captureStackTrace;n&&n(e,t)}var o=(function(e){r(t,e);function t(t){var n=this.constructor,r=e.call(this,t)||this;return Object.defineProperty(r,"name",{value:n.name,enumerable:!1}),i(r,n.prototype),a(r),r}return t})(Error);class s extends o{constructor(e=void 0){super(e),this.message=e}getKind(){return this.constructor.kind}}s.kind=`Exception`;class c extends s{}c.kind=`ArgumentException`;class l extends s{}l.kind=`IllegalArgumentException`;class u{constructor(e){if(this.binarizer=e,e===null)throw new l(`Binarizer must be non-null.`)}getWidth(){return this.binarizer.getWidth()}getHeight(){return this.binarizer.getHeight()}getBlackRow(e,t){return this.binarizer.getBlackRow(e,t)}getBlackMatrix(){return(this.matrix===null||this.matrix===void 0)&&(this.matrix=this.binarizer.getBlackMatrix()),this.matrix}isCropSupported(){return this.binarizer.getLuminanceSource().isCropSupported()}crop(e,t,n,r){let i=this.binarizer.getLuminanceSource().crop(e,t,n,r);return new u(this.binarizer.createBinarizer(i))}isRotateSupported(){return this.binarizer.getLuminanceSource().isRotateSupported()}rotateCounterClockwise(){let e=this.binarizer.getLuminanceSource().rotateCounterClockwise();return new u(this.binarizer.createBinarizer(e))}rotateCounterClockwise45(){let e=this.binarizer.getLuminanceSource().rotateCounterClockwise45();return new u(this.binarizer.createBinarizer(e))}toString(){try{return this.getBlackMatrix().toString()}catch{return``}}}class d extends s{static getChecksumInstance(){return new d}}d.kind=`ChecksumException`;class f{constructor(e){this.source=e}getLuminanceSource(){return this.source}getWidth(){return this.source.getWidth()}getHeight(){return this.source.getHeight()}}class p{static arraycopy(e,t,n,r,i){for(;i--;)n[r++]=e[t++]}static currentTimeMillis(){return Date.now()}}class m extends s{}m.kind=`IndexOutOfBoundsException`;class h extends m{constructor(e=void 0,t=void 0){super(t),this.index=e,this.message=t}}h.kind=`ArrayIndexOutOfBoundsException`;class g{static fill(e,t){for(let n=0,r=e.length;n<r;n++)e[n]=t}static fillWithin(e,t,n,r){g.rangeCheck(e.length,t,n);for(let i=t;i<n;i++)e[i]=r}static rangeCheck(e,t,n){if(t>n)throw new l(`fromIndex(`+t+`) > toIndex(`+n+`)`);if(t<0)throw new h(t);if(n>e)throw new h(n)}static asList(...e){return e}static create(e,t,n){return Array.from({length:e}).map(e=>Array.from({length:t}).fill(n))}static createInt32Array(e,t,n){return Array.from({length:e}).map(e=>Int32Array.from({length:t}).fill(n))}static equals(e,t){if(!e||!t||!e.length||!t.length||e.length!==t.length)return!1;for(let n=0,r=e.length;n<r;n++)if(e[n]!==t[n])return!1;return!0}static hashCode(e){if(e===null)return 0;let t=1;for(let n of e)t=31*t+n;return t}static fillUint8Array(e,t){for(let n=0;n!==e.length;n++)e[n]=t}static copyOf(e,t){return e.slice(0,t)}static copyOfUint8Array(e,t){if(e.length<=t){let n=new Uint8Array(t);return n.set(e),n}return e.slice(0,t)}static copyOfRange(e,t,n){let r=n-t,i=new Int32Array(r);return p.arraycopy(e,t,i,0,r),i}static binarySearch(e,t,n){n===void 0&&(n=g.numberComparator);let r=0,i=e.length-1;for(;r<=i;){let a=i+r>>1,o=n(t,e[a]);if(o>0)r=a+1;else if(o<0)i=a-1;else return a}return-r-1}static numberComparator(e,t){return e-t}}class _{static numberOfTrailingZeros(e){let t;if(e===0)return 32;let n=31;return t=e<<16,t!==0&&(n-=16,e=t),t=e<<8,t!==0&&(n-=8,e=t),t=e<<4,t!==0&&(n-=4,e=t),t=e<<2,t!==0&&(n-=2,e=t),n-(e<<1>>>31)}static numberOfLeadingZeros(e){if(e===0)return 32;let t=1;return e>>>16||(t+=16,e<<=16),e>>>24||(t+=8,e<<=8),e>>>28||(t+=4,e<<=4),e>>>30||(t+=2,e<<=2),t-=e>>>31,t}static toHexString(e){return e.toString(16)}static toBinaryString(e){return String(parseInt(String(e),2))}static bitCount(e){return e-=e>>>1&1431655765,e=(e&858993459)+(e>>>2&858993459),e=e+(e>>>4)&252645135,e+=e>>>8,e+=e>>>16,e&63}static truncDivision(e,t){return Math.trunc(e/t)}static parseInt(e,t=void 0){return parseInt(e,t)}}_.MIN_VALUE_32_BITS=-2147483648,_.MAX_VALUE=2**53-1;class v{constructor(e,t){e===void 0?(this.size=0,this.bits=new Int32Array(1)):(this.size=e,t==null?this.bits=v.makeArray(e):this.bits=t)}getSize(){return this.size}getSizeInBytes(){return Math.floor((this.size+7)/8)}ensureCapacity(e){if(e>this.bits.length*32){let t=v.makeArray(e);p.arraycopy(this.bits,0,t,0,this.bits.length),this.bits=t}}get(e){return(this.bits[Math.floor(e/32)]&1<<(e&31))!=0}set(e){this.bits[Math.floor(e/32)]|=1<<(e&31)}flip(e){this.bits[Math.floor(e/32)]^=1<<(e&31)}getNextSet(e){let t=this.size;if(e>=t)return t;let n=this.bits,r=Math.floor(e/32),i=n[r];i&=~((1<<(e&31))-1);let a=n.length;for(;i===0;){if(++r===a)return t;i=n[r]}let o=r*32+_.numberOfTrailingZeros(i);return o>t?t:o}getNextUnset(e){let t=this.size;if(e>=t)return t;let n=this.bits,r=Math.floor(e/32),i=~n[r];i&=~((1<<(e&31))-1);let a=n.length;for(;i===0;){if(++r===a)return t;i=~n[r]}let o=r*32+_.numberOfTrailingZeros(i);return o>t?t:o}setBulk(e,t){this.bits[Math.floor(e/32)]=t}setRange(e,t){if(t<e||e<0||t>this.size)throw new l;if(t===e)return;t--;let n=Math.floor(e/32),r=Math.floor(t/32),i=this.bits;for(let a=n;a<=r;a++){let o=a>n?0:e&31,s=(2<<(a<r?31:t&31))-(1<<o);i[a]|=s}}clear(){let e=this.bits.length,t=this.bits;for(let n=0;n<e;n++)t[n]=0}isRange(e,t,n){if(t<e||e<0||t>this.size)throw new l;if(t===e)return!0;t--;let r=Math.floor(e/32),i=Math.floor(t/32),a=this.bits;for(let o=r;o<=i;o++){let s=o>r?0:e&31,c=(2<<(o<i?31:t&31))-(1<<s)&4294967295;if((a[o]&c)!==(n?c:0))return!1}return!0}appendBit(e){this.ensureCapacity(this.size+1),e&&(this.bits[Math.floor(this.size/32)]|=1<<(this.size&31)),this.size++}appendBits(e,t){if(t<0||t>32)throw new l(`Num bits must be between 0 and 32`);this.ensureCapacity(this.size+t);for(let n=t;n>0;n--)this.appendBit((e>>n-1&1)==1)}appendBitArray(e){let t=e.size;this.ensureCapacity(this.size+t);for(let n=0;n<t;n++)this.appendBit(e.get(n))}xor(e){if(this.size!==e.size)throw new l(`Sizes don't match`);let t=this.bits;for(let n=0,r=t.length;n<r;n++)t[n]^=e.bits[n]}toBytes(e,t,n,r){for(let i=0;i<r;i++){let r=0;for(let t=0;t<8;t++)this.get(e)&&(r|=1<<7-t),e++;t[n+i]=r}}getBitArray(){return this.bits}reverse(){let e=new Int32Array(this.bits.length),t=Math.floor((this.size-1)/32),n=t+1,r=this.bits;for(let i=0;i<n;i++){let n=r[i];n=n>>1&1431655765|(n&1431655765)<<1,n=n>>2&858993459|(n&858993459)<<2,n=n>>4&252645135|(n&252645135)<<4,n=n>>8&16711935|(n&16711935)<<8,n=n>>16&65535|(n&65535)<<16,e[t-i]=n}if(this.size!==n*32){let t=n*32-this.size,r=e[0]>>>t;for(let i=1;i<n;i++){let n=e[i];r|=n<<32-t,e[i-1]=r,r=n>>>t}e[n-1]=r}this.bits=e}static makeArray(e){return new Int32Array(Math.floor((e+31)/32))}equals(e){if(!(e instanceof v))return!1;let t=e;return this.size===t.size&&g.equals(this.bits,t.bits)}hashCode(){return 31*this.size+g.hashCode(this.bits)}toString(){let e=``;for(let t=0,n=this.size;t<n;t++)t&7||(e+=` `),e+=this.get(t)?`X`:`.`;return e}clone(){return new v(this.size,this.bits.slice())}}var y;(function(e){e[e.OTHER=0]=`OTHER`,e[e.PURE_BARCODE=1]=`PURE_BARCODE`,e[e.POSSIBLE_FORMATS=2]=`POSSIBLE_FORMATS`,e[e.TRY_HARDER=3]=`TRY_HARDER`,e[e.CHARACTER_SET=4]=`CHARACTER_SET`,e[e.ALLOWED_LENGTHS=5]=`ALLOWED_LENGTHS`,e[e.ASSUME_CODE_39_CHECK_DIGIT=6]=`ASSUME_CODE_39_CHECK_DIGIT`,e[e.ASSUME_GS1=7]=`ASSUME_GS1`,e[e.RETURN_CODABAR_START_END=8]=`RETURN_CODABAR_START_END`,e[e.NEED_RESULT_POINT_CALLBACK=9]=`NEED_RESULT_POINT_CALLBACK`,e[e.ALLOWED_EAN_EXTENSIONS=10]=`ALLOWED_EAN_EXTENSIONS`})(y||={});var b=y;class x extends s{static getFormatInstance(){return new x}}x.kind=`FormatException`;var S;(function(e){e[e.Cp437=0]=`Cp437`,e[e.ISO8859_1=1]=`ISO8859_1`,e[e.ISO8859_2=2]=`ISO8859_2`,e[e.ISO8859_3=3]=`ISO8859_3`,e[e.ISO8859_4=4]=`ISO8859_4`,e[e.ISO8859_5=5]=`ISO8859_5`,e[e.ISO8859_6=6]=`ISO8859_6`,e[e.ISO8859_7=7]=`ISO8859_7`,e[e.ISO8859_8=8]=`ISO8859_8`,e[e.ISO8859_9=9]=`ISO8859_9`,e[e.ISO8859_10=10]=`ISO8859_10`,e[e.ISO8859_11=11]=`ISO8859_11`,e[e.ISO8859_13=12]=`ISO8859_13`,e[e.ISO8859_14=13]=`ISO8859_14`,e[e.ISO8859_15=14]=`ISO8859_15`,e[e.ISO8859_16=15]=`ISO8859_16`,e[e.SJIS=16]=`SJIS`,e[e.Cp1250=17]=`Cp1250`,e[e.Cp1251=18]=`Cp1251`,e[e.Cp1252=19]=`Cp1252`,e[e.Cp1256=20]=`Cp1256`,e[e.UnicodeBigUnmarked=21]=`UnicodeBigUnmarked`,e[e.UTF8=22]=`UTF8`,e[e.ASCII=23]=`ASCII`,e[e.Big5=24]=`Big5`,e[e.GB18030=25]=`GB18030`,e[e.EUC_KR=26]=`EUC_KR`})(S||={});class C{constructor(e,t,n,...r){this.valueIdentifier=e,this.name=n,typeof t==`number`?this.values=Int32Array.from([t]):this.values=t,this.otherEncodingNames=r,C.VALUE_IDENTIFIER_TO_ECI.set(e,this),C.NAME_TO_ECI.set(n,this);let i=this.values;for(let e=0,t=i.length;e!==t;e++){let t=i[e];C.VALUES_TO_ECI.set(t,this)}for(let e of r)C.NAME_TO_ECI.set(e,this)}getValueIdentifier(){return this.valueIdentifier}getName(){return this.name}getValue(){return this.values[0]}static getCharacterSetECIByValue(e){if(e<0||e>=900)throw new x(`incorect value`);let t=C.VALUES_TO_ECI.get(e);if(t===void 0)throw new x(`incorect value`);return t}static getCharacterSetECIByName(e){let t=C.NAME_TO_ECI.get(e);if(t===void 0)throw new x(`incorect value`);return t}equals(e){if(!(e instanceof C))return!1;let t=e;return this.getName()===t.getName()}}C.VALUE_IDENTIFIER_TO_ECI=new Map,C.VALUES_TO_ECI=new Map,C.NAME_TO_ECI=new Map,C.Cp437=new C(S.Cp437,Int32Array.from([0,2]),`Cp437`),C.ISO8859_1=new C(S.ISO8859_1,Int32Array.from([1,3]),`ISO-8859-1`,`ISO88591`,`ISO8859_1`),C.ISO8859_2=new C(S.ISO8859_2,4,`ISO-8859-2`,`ISO88592`,`ISO8859_2`),C.ISO8859_3=new C(S.ISO8859_3,5,`ISO-8859-3`,`ISO88593`,`ISO8859_3`),C.ISO8859_4=new C(S.ISO8859_4,6,`ISO-8859-4`,`ISO88594`,`ISO8859_4`),C.ISO8859_5=new C(S.ISO8859_5,7,`ISO-8859-5`,`ISO88595`,`ISO8859_5`),C.ISO8859_6=new C(S.ISO8859_6,8,`ISO-8859-6`,`ISO88596`,`ISO8859_6`),C.ISO8859_7=new C(S.ISO8859_7,9,`ISO-8859-7`,`ISO88597`,`ISO8859_7`),C.ISO8859_8=new C(S.ISO8859_8,10,`ISO-8859-8`,`ISO88598`,`ISO8859_8`),C.ISO8859_9=new C(S.ISO8859_9,11,`ISO-8859-9`,`ISO88599`,`ISO8859_9`),C.ISO8859_10=new C(S.ISO8859_10,12,`ISO-8859-10`,`ISO885910`,`ISO8859_10`),C.ISO8859_11=new C(S.ISO8859_11,13,`ISO-8859-11`,`ISO885911`,`ISO8859_11`),C.ISO8859_13=new C(S.ISO8859_13,15,`ISO-8859-13`,`ISO885913`,`ISO8859_13`),C.ISO8859_14=new C(S.ISO8859_14,16,`ISO-8859-14`,`ISO885914`,`ISO8859_14`),C.ISO8859_15=new C(S.ISO8859_15,17,`ISO-8859-15`,`ISO885915`,`ISO8859_15`),C.ISO8859_16=new C(S.ISO8859_16,18,`ISO-8859-16`,`ISO885916`,`ISO8859_16`),C.SJIS=new C(S.SJIS,20,`SJIS`,`Shift_JIS`),C.Cp1250=new C(S.Cp1250,21,`Cp1250`,`windows-1250`),C.Cp1251=new C(S.Cp1251,22,`Cp1251`,`windows-1251`),C.Cp1252=new C(S.Cp1252,23,`Cp1252`,`windows-1252`),C.Cp1256=new C(S.Cp1256,24,`Cp1256`,`windows-1256`),C.UnicodeBigUnmarked=new C(S.UnicodeBigUnmarked,25,`UnicodeBigUnmarked`,`UTF-16BE`,`UnicodeBig`),C.UTF8=new C(S.UTF8,26,`UTF8`,`UTF-8`),C.ASCII=new C(S.ASCII,Int32Array.from([27,170]),`ASCII`,`US-ASCII`),C.Big5=new C(S.Big5,28,`Big5`),C.GB18030=new C(S.GB18030,29,`GB18030`,`GB2312`,`EUC_CN`,`GBK`),C.EUC_KR=new C(S.EUC_KR,30,`EUC_KR`,`EUC-KR`);class w extends s{}w.kind=`UnsupportedOperationException`;class T{static decode(e,t){let n=this.encodingName(t);return this.customDecoder?this.customDecoder(e,n):typeof TextDecoder>`u`||this.shouldDecodeOnFallback(n)?this.decodeFallback(e,n):new TextDecoder(n).decode(e)}static shouldDecodeOnFallback(e){return!T.isBrowser()&&e===`ISO-8859-1`}static encode(e,t){let n=this.encodingName(t);return this.customEncoder?this.customEncoder(e,n):typeof TextEncoder>`u`?this.encodeFallback(e):new TextEncoder().encode(e)}static isBrowser(){return typeof window<`u`&&{}.toString.call(window)===`[object Window]`}static encodingName(e){return typeof e==`string`?e:e.getName()}static encodingCharacterSet(e){return e instanceof C?e:C.getCharacterSetECIByName(e)}static decodeFallback(e,t){let n=this.encodingCharacterSet(t);if(T.isDecodeFallbackSupported(n)){let t=``;for(let n=0,r=e.length;n<r;n++){let r=e[n].toString(16);r.length<2&&(r=`0`+r),t+=`%`+r}return decodeURIComponent(t)}if(n.equals(C.UnicodeBigUnmarked))return String.fromCharCode.apply(null,new Uint16Array(e.buffer));throw new w(`Encoding ${this.encodingName(t)} not supported by fallback.`)}static isDecodeFallbackSupported(e){return e.equals(C.UTF8)||e.equals(C.ISO8859_1)||e.equals(C.ASCII)}static encodeFallback(e){let t=btoa(unescape(encodeURIComponent(e))).split(``),n=[];for(let e=0;e<t.length;e++)n.push(t[e].charCodeAt(0));return new Uint8Array(n)}}class E{static castAsNonUtf8Char(e,t=null){let n=t?t.getName():this.ISO88591;return T.decode(new Uint8Array([e]),n)}static guessEncoding(e,t){if(t!=null&&t.get(b.CHARACTER_SET)!==void 0)return t.get(b.CHARACTER_SET).toString();let n=e.length,r=!0,i=!0,a=!0,o=0,s=0,c=0,l=0,u=0,d=0,f=0,p=0,m=0,h=0,g=0,_=e.length>3&&e[0]===239&&e[1]===187&&e[2]===191;for(let t=0;t<n&&(r||i||a);t++){let n=e[t]&255;a&&(o>0?n&128?o--:a=!1:n&128&&(n&64?(o++,n&32?(o++,n&16?(o++,n&8?a=!1:l++):c++):s++):a=!1)),r&&(n>127&&n<160?r=!1:n>159&&(n<192||n===215||n===247)&&g++),i&&(u>0?n<64||n===127||n>252?i=!1:u--:n===128||n===160||n>239?i=!1:n>160&&n<224?(d++,p=0,f++,f>m&&(m=f)):n>127?(u++,f=0,p++,p>h&&(h=p)):(f=0,p=0))}return a&&o>0&&(a=!1),i&&u>0&&(i=!1),a&&(_||s+c+l>0)?E.UTF8:i&&(E.ASSUME_SHIFT_JIS||m>=3||h>=3)?E.SHIFT_JIS:r&&i?m===2&&d===2||g*10>=n?E.SHIFT_JIS:E.ISO88591:r?E.ISO88591:i?E.SHIFT_JIS:a?E.UTF8:E.PLATFORM_DEFAULT_ENCODING}static format(e,...t){let n=-1;function r(e,r,i,a,o,s){if(e===`%%`)return`%`;if(t[++n]===void 0)return;e=a?parseInt(a.substr(1)):void 0;let c=o?parseInt(o.substr(1)):void 0,l;switch(s){case`s`:l=t[n];break;case`c`:l=t[n][0];break;case`f`:l=parseFloat(t[n]).toFixed(e);break;case`p`:l=parseFloat(t[n]).toPrecision(e);break;case`e`:l=parseFloat(t[n]).toExponential(e);break;case`x`:l=parseInt(t[n]).toString(c||16);break;case`d`:l=parseFloat(parseInt(t[n],c||10).toPrecision(e)).toFixed(0);break}l=typeof l==`object`?JSON.stringify(l):(+l).toString(c);let u=parseInt(i),d=i&&i[0]+``==`0`?`0`:` `;for(;l.length<u;)l=r===void 0?d+l:l+d;return l}return e.replace(/%(-)?(0?[0-9]+)?([.][0-9]+)?([#][0-9]+)?([scfpexd%])/g,r)}static getBytes(e,t){return T.encode(e,t)}static getCharCode(e,t=0){return e.charCodeAt(t)}static getCharAt(e){return String.fromCharCode(e)}}E.SHIFT_JIS=C.SJIS.getName(),E.GB2312=`GB2312`,E.ISO88591=C.ISO8859_1.getName(),E.EUC_JP=`EUC_JP`,E.UTF8=C.UTF8.getName(),E.PLATFORM_DEFAULT_ENCODING=E.UTF8,E.ASSUME_SHIFT_JIS=!1;class D{constructor(e=``){this.value=e}enableDecoding(e){return this.encoding=e,this}append(e){return typeof e==`string`?this.value+=e.toString():this.encoding?this.value+=E.castAsNonUtf8Char(e,this.encoding):this.value+=String.fromCharCode(e),this}appendChars(e,t,n){for(let r=t;t<t+n;r++)this.append(e[r]);return this}length(){return this.value.length}charAt(e){return this.value.charAt(e)}deleteCharAt(e){this.value=this.value.substr(0,e)+this.value.substring(e+1)}setCharAt(e,t){this.value=this.value.substr(0,e)+t+this.value.substr(e+1)}substring(e,t){return this.value.substring(e,t)}setLengthToZero(){this.value=``}toString(){return this.value}insert(e,t){this.value=this.value.substr(0,e)+t+this.value.substr(e+t.length)}}class O{constructor(e,t,n,r){if(this.width=e,this.height=t,this.rowSize=n,this.bits=r,t??=e,this.height=t,e<1||t<1)throw new l(`Both dimensions must be greater than 0`);n??=Math.floor((e+31)/32),this.rowSize=n,r??(this.bits=new Int32Array(this.rowSize*this.height))}static parseFromBooleanArray(e){let t=e.length,n=e[0].length,r=new O(n,t);for(let i=0;i<t;i++){let t=e[i];for(let e=0;e<n;e++)t[e]&&r.set(e,i)}return r}static parseFromString(e,t,n){if(e===null)throw new l(`stringRepresentation cannot be null`);let r=Array(e.length),i=0,a=0,o=-1,s=0,c=0;for(;c<e.length;)if(e.charAt(c)===`
3331
+ `}function x(e,t=!1){a(`failed`),o(e),s(t),ac({title:`Dev server failed to start`,description:e,variant:`destructive`})}function C(e){if(p.current)return;p.current=!0;let n=y(e);VT(t,e,n.trim()?n:`Dev server started.
3332
+ `),f.current?.abort(),f.current=null,a(`running`),s(!0),o(null)}function w(e,n){if(p.current)return;p.current=!0;let r=n!==void 0&&n!==0;VT(t,e,b(e),r),s(!1),r?x(y(e).trim()||`Dev server failed to start.`,!1):(a(`idle`),o(null)),c(null)}async function T(e,n,r){if(_.current||(_.current=!0,!await d({projectId:e.projectId,port:n.port,pid:n.pid,command:n.command})))return!1;if(n.port==null)return ac({title:`Couldn't free port`,description:`Port in use but the port number couldn't be determined. Check the output.`,variant:`destructive`}),!1;let i=await Oi(e.projectId,n.port);if(!i.success){let e=i.killCommand??se(n.port);return ac({title:`Couldn't free port`,description:i.error??`Port ${n.port} is still in use.`,variant:`destructive`}),t({type:Y.AppendToolExecutionOutput,toolCallId:`dev-server-port-${Date.now()}`,threadId:r.threadId,toolName:`bash`,delta:`Manual fix: ${e}\n`}),!1}return!0}function E(){h.current=!0}function D(e,n,a){return E(),yw({url:e,useBuiltInBrowser:n.useBuiltInBrowser!==!1,setDevServerUrl:i,openBrowserPanel:()=>{r(`browser`,{navigateToChat:!1})},openExternalUrl:ui,onTerminalMessage:e=>{t({type:Y.AppendToolExecutionOutput,toolCallId:a.toolCallId,threadId:a.threadId,toolName:`bash`,delta:`${e}\n`})}}).then(()=>{C(a)})}async function O(n,r,i){_.current=!1,h.current=!1,g.current=!1,p.current=!1;let o,s=null;v.current=null;let l=setTimeout(()=>{if(h.current||i.aborted||p.current||g.current)return;let e=m(y(r));if(e){D(e,n,r);return}g.current=!0,ac({title:`No dev URL detected yet`,description:`Check the output or enter the URL manually in the Browser panel.`})},j);try{let l=await Ca(n.projectId,e??void 0,i);if(!l)return VT(t,r,`Failed to start dev server.
3333
+ `,!0),x(`Failed to start dev server.`),p.current=!0,`failed`;a(`starting`),await YT(l,qT({dispatch:t,toolCallId:r.toolCallId,threadId:r.threadId,isUrlDetected:()=>h.current,markUrlDetected:E,onUrl:async e=>{await D(e,n,r)},onPortInUse:e=>{v.current=e,t({type:Y.AppendToolExecutionOutput,toolCallId:r.toolCallId,threadId:r.threadId,toolName:`bash`,delta:e.port?`Port ${e.port} is already in use.\n`:`Dev server port is already in use.
3334
+ `}),s||=T(n,e,r)},onExitCode:e=>{o=e}}),i);let u=v.current;if(u!=null&&!p.current){if(await s??!1)return`retry`;let e=QT(u.port);return VT(t,r,`${y(r)}${e}\n`.trimStart(),!0),p.current=!0,x(e,!1),c(null),`failed`}return p.current||w(r,o),p.current&&o===0?`success`:`failed`}catch(e){return i.aborted&&p.current?`failed`:(XT.error(`Failed to start dev server:`,e),p.current||=(VT(t,r,`${y(r)}Failed to start dev server.\n`.trimStart(),!0),!0),x(`Failed to start dev server.`),c(null),`failed`)}finally{clearTimeout(l)}}let k=async n=>{if(!n?.runCommand||!n?.projectId||!e)return;u.current=!1,f.current?.abort(),f.current=new AbortController;try{(await Kr(n.projectId)).isRunning&&await bo(n.projectId)}catch{}c(n.projectId),a(`starting`),o(null),s(!0);let r=LT(),i={threadId:e,toolCallId:r,messageId:`msg-dev-server-${r}`,command:n.runCommand};zT(t,i);let l=0;for(;l<2;){l+=1;let e=new AbortController;if(f.current=e,await O(n,i,e.signal)!==`retry`)break}};async function A(e){u.current=!0,a(`stopping`);try{await bo(e);let t=Date.now();for(;Date.now()-t<S&&(await Kr(e)).isRunning;)await ZT(200);i(null),l(!0),a(`idle`),o(null),s(!1),c(null)}catch(e){ac({title:`Error`,description:e instanceof Error?e.message:`Failed to stop dev server`,variant:`destructive`}),a(`running`)}}function M(){a(`idle`),o(null),s(!1),c(null)}return{startServer:k,stopServer:A,dismissFailed:M,setServerUrl:i}}var eE=3e4,tE=2e3,nE=5e3;function rE(e,t,n){return!e||t!==e?!1:n!==`idle`}function iE(e){let{devServerState:t,setDevServerState:n,devServerProjectId:r,setDevServerProjectId:i,setDevServerProcessAlive:a,setDevServerFailureReason:o}=vw(),s=t===`running`&&r===e,c=t===`starting`||t===`stopping`,l=t===`failed`&&r===e,u=(0,Z.useRef)(!1),d=(0,Z.useRef)(t),f=(0,Z.useRef)(r);d.current=t,f.current=r;let p=(0,Z.useCallback)(t=>{if(e){if(t){i(e),n(`running`),a(!0),o(null);return}r===e&&d.current!==`failed`&&(n(`idle`),i(null),a(!1))}},[e,r,i,n,a,o]);return(0,Z.useEffect)(()=>{e&&(u.current=!1,(async()=>{try{let t=await Kr(e),n=rE(e,f.current,d.current);if(!t.isRunning&&n&&d.current===`starting`||!t.isRunning&&d.current===`failed`)return;p(t.isRunning)}catch{rE(e,f.current,d.current)||p(!1)}finally{u.current=!0}})())},[e,p]),(0,Z.useEffect)(()=>{if(!e||t!==`starting`)return;let n=Date.now(),r=setInterval(()=>{if(Date.now()-n>eE){clearInterval(r);return}Kr(e).then(e=>{e.isRunning&&(p(!0),clearInterval(r))}).catch(()=>{})},tE);return()=>clearInterval(r)},[e,t,p]),(0,Z.useEffect)(()=>{if(!e||!s)return;let t=setInterval(()=>{Kr(e).then(e=>{e.isRunning||p(!1)}).catch(()=>{})},nE);return()=>clearInterval(t)},[e,s,p]),{isRunning:s,isLoading:c,isFailed:l,recheck:(0,Z.useCallback)(async()=>{if(e)try{p((await Kr(e)).isRunning)}catch{p(!1)}},[e,p])}}function aE(e,t,n,r){return e?`Stopping...`:t?`Starting...`:n?`Retry dev server`:r?`Stop dev server`:`Start dev server`}function oE(e){let t=(0,Q.c)(15),{isLoading:n,isFailed:r,isRunning:i,className:a,playClassName:o}=e,s=o===void 0?``:o;if(n){let e;t[0]===a?e=t[1]:(e=G(a,`animate-spin`),t[0]=a,t[1]=e);let n;return t[2]===e?n=t[3]:(n=(0,$.jsx)(ln,{className:e}),t[2]=e,t[3]=n),n}if(r){let e;return t[4]===a?e=t[5]:(e=(0,$.jsx)(Fe,{className:a}),t[4]=a,t[5]=e),e}if(i){let e;t[6]===a?e=t[7]:(e=G(a,`fill-current`),t[6]=a,t[7]=e);let n;return t[8]===e?n=t[9]:(n=(0,$.jsx)(z,{className:e}),t[8]=e,t[9]=n),n}let c;t[10]!==a||t[11]!==s?(c=G(a,s),t[10]=a,t[11]=s,t[12]=c):c=t[12];let l;return t[13]===c?l=t[14]:(l=(0,$.jsx)(Ae,{className:c}),t[13]=c,t[14]=l),l}function sE(e,t,n,r){return e||!n&&!t&&!r}function cE(e){let t=(0,Q.c)(13),{isLoading:n,isFailed:r,isRunning:i,label:a,handleClick:o,disabled:s}=e,c=`flex flex-col items-center gap-3 group disabled:opacity-40 disabled:cursor-not-allowed ${i?`text-orange-500`:r?`text-destructive`:`text-muted-foreground`}`,l;t[0]!==r||t[1]!==n||t[2]!==i?(l=(0,$.jsx)(oE,{isLoading:n,isFailed:r,isRunning:i,className:`h-10 w-10`,playClassName:`fill-current group-hover:text-foreground transition-colors`}),t[0]=r,t[1]=n,t[2]=i,t[3]=l):l=t[3];let u;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(u=G(U.body,`group-hover:text-foreground transition-colors`),t[4]=u):u=t[4];let d;t[5]===a?d=t[6]:(d=(0,$.jsx)(`span`,{className:u,children:a}),t[5]=a,t[6]=d);let f;return t[7]!==s||t[8]!==o||t[9]!==c||t[10]!==l||t[11]!==d?(f=(0,$.jsxs)(`button`,{onClick:o,disabled:s,className:c,children:[l,d]}),t[7]=s,t[8]=o,t[9]=c,t[10]=l,t[11]=d,t[12]=f):f=t[12],f}function lE(e){let t=(0,Q.c)(9),{isRunning:n,isFailed:r,icon:i,label:a,handleClick:o,disabled:s}=e,c=n&&`text-orange-500`,l=r&&`text-destructive`,u;t[0]!==c||t[1]!==l?(u=G(`w-full justify-start gap-2`,c,l),t[0]=c,t[1]=l,t[2]=u):u=t[2];let d;return t[3]!==s||t[4]!==o||t[5]!==i||t[6]!==a||t[7]!==u?(d=(0,$.jsxs)(Hr,{variant:`ghost`,size:`sm`,className:u,onClick:o,disabled:s,children:[i,a]}),t[3]=s,t[4]=o,t[5]=i,t[6]=a,t[7]=u,t[8]=d):d=t[8],d}function uE(e){let t=(0,Q.c)(15),{buttonClassName:n,icon:r,label:i,tooltip:a,handleClick:o,disabled:s}=e,c;t[0]===n?c=t[1]:(c=G(`relative h-8 w-8`,n),t[0]=n,t[1]=c);let l;t[2]===i?l=t[3]:(l=(0,$.jsx)(`span`,{className:`sr-only`,children:i}),t[2]=i,t[3]=l);let u;t[4]!==s||t[5]!==o||t[6]!==r||t[7]!==c||t[8]!==l?(u=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(Hr,{variant:`ghost`,size:`icon`,className:c,onClick:o,disabled:s,children:[r,l]})}),t[4]=s,t[5]=o,t[6]=r,t[7]=c,t[8]=l,t[9]=u):u=t[9];let d;t[10]===a?d=t[11]:(d=(0,$.jsx)(Fr,{children:a}),t[10]=a,t[11]=d);let f;return t[12]!==u||t[13]!==d?(f=(0,$.jsx)(Zo,{children:(0,$.jsxs)(Mi,{children:[u,d]})}),t[12]=u,t[13]=d,t[14]=f):f=t[14],f}function dE(e){let t=(0,Q.c)(65),{projectId:n,runCommand:r,large:i,layout:a}=e,o=a===void 0?`bar`:a,s=X(fE),c;if(t[0]!==n||t[1]!==s){let e;t[3]===n?e=t[4]:(e=e=>e.projectId===n,t[3]=n,t[4]=e),c=s.find(e),t[0]=n,t[1]=s,t[2]=c}else c=t[2];let l=c,{devServerState:u,devServerFailureReason:d,devServerProcessAlive:f,setDevServerProjectId:p}=vw(),{startServer:m,stopServer:h,dismissFailed:g}=$T();iE(n);let _=gC(),v=u===`starting`,y=u===`stopping`,b=u===`running`,x=u===`failed`,S=v||y,C;t[5]!==n||t[6]!==r||t[7]!==l?.useBuiltInBrowser||t[8]!==m?(C=function(){m({projectId:n,runCommand:r||``,useBuiltInBrowser:l?.useBuiltInBrowser!==!1})},t[5]=n,t[6]=r,t[7]=l?.useBuiltInBrowser,t[8]=m,t[9]=C):C=t[9];let w=C,T;t[10]!==f||t[11]!==g||t[12]!==x||t[13]!==n||t[14]!==p||t[15]!==h?(T=async function(){if(x&&!f){g();return}p(n);try{await h(n)}catch(e){let t=e;ac({title:`Error`,description:t instanceof Error?t.message:`Failed to stop dev server`,variant:`destructive`})}},t[10]=f,t[11]=g,t[12]=x,t[13]=n,t[14]=p,t[15]=h,t[16]=T):T=t[16];let E=T,D;t[17]!==w||t[18]!==E||t[19]!==x||t[20]!==b||t[21]!==v?(D=function(){if(x){w();return}if(b||v){E();return}w()},t[17]=w,t[18]=E,t[19]=x,t[20]=b,t[21]=v,t[22]=D):D=t[22];let O=D,k;t[23]===r?k=t[24]:(k=r?.trim(),t[23]=r,t[24]=k);let A=!!k,j;t[25]!==x||t[26]!==b||t[27]!==v||t[28]!==y?(j=aE(y,v,x,b),t[25]=x,t[26]=b,t[27]=v,t[28]=y,t[29]=j):j=t[29];let M=j,N;t[30]!==A||t[31]!==x||t[32]!==S||t[33]!==b?(N=sE(S,x,b,A),t[30]=A,t[31]=x,t[32]=S,t[33]=b,t[34]=N):N=t[34];let P=N;if(_&&!A&&!b&&!S&&!x)return null;let F=b&&`text-orange-500 bg-orange-500/10`,I=x&&`text-destructive bg-destructive/10`,L=!b&&!x&&(_?`scenic-chrome-button hover:!bg-[hsl(var(--scenic-foreground))] hover:!text-[hsl(var(--scenic-foreground-inverse))]`:`text-muted-foreground`),R=b&&`before:absolute before:inset-[-1px] before:rounded-full before:border before:border-orange-500/60 before:animate-ping-subtle before:content-['']`,z;t[35]!==I||t[36]!==L||t[37]!==R||t[38]!==F?(z=G(F,I,L,R),t[35]=I,t[36]=L,t[37]=R,t[38]=F,t[39]=z):z=t[39];let B=z,V;t[40]!==x||t[41]!==S||t[42]!==b?(V=(0,$.jsx)(oE,{isLoading:S,isFailed:x,isRunning:b,className:`h-4 w-4`}),t[40]=x,t[41]=S,t[42]=b,t[43]=V):V=t[43];let H=V,ee=x?d??`Dev server failed to start`:b?`Stop dev server`:A?`Start dev server: ${r}`:`Set run command in project settings`;if(i){let e;return t[44]!==P||t[45]!==O||t[46]!==x||t[47]!==S||t[48]!==b||t[49]!==M?(e=(0,$.jsx)(cE,{isLoading:S,isFailed:x,isRunning:b,label:M,handleClick:O,disabled:P}),t[44]=P,t[45]=O,t[46]=x,t[47]=S,t[48]=b,t[49]=M,t[50]=e):e=t[50],e}if(o===`menu`){let e;return t[51]!==P||t[52]!==O||t[53]!==H||t[54]!==x||t[55]!==b||t[56]!==M?(e=(0,$.jsx)(lE,{isRunning:b,isFailed:x,icon:H,label:M,handleClick:O,disabled:P}),t[51]=P,t[52]=O,t[53]=H,t[54]=x,t[55]=b,t[56]=M,t[57]=e):e=t[57],e}let te;return t[58]!==B||t[59]!==P||t[60]!==O||t[61]!==H||t[62]!==M||t[63]!==ee?(te=(0,$.jsx)(uE,{buttonClassName:B,icon:H,label:M,tooltip:ee,handleClick:O,disabled:P}),t[58]=B,t[59]=P,t[60]=O,t[61]=H,t[62]=M,t[63]=ee,t[64]=te):te=t[64],te}function fE(e){return e.projects}function pE(e){return e===`menu`?`w-full justify-start gap-2`:`gap-2`}function mE(e){let t=(0,Q.c)(4),{threadId:n,projectId:r,messages:i,userTasks:a}=e,{hasChanges:o}=Fd(),s=i.length>0,c=!!n&&(s||o||a.length>0||!!(n&&r)),l;return t[0]!==o||t[1]!==s||t[2]!==c?(l={isVisible:c,hasMessages:s,hasChanges:o},t[0]=o,t[1]=s,t[2]=c,t[3]=l):l=t[3],l}function hE(e){let t=(0,Q.c)(13),{hasMessages:n,layout:r,toolbarButtonClass:i,isStartingNewChat:a,onNewChat:o,projectId:s}=e;if(!n)return null;if(r===`menu`){let e;t[0]!==a||t[1]!==o||t[2]!==i?(e=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(Hr,{variant:`ghost`,size:`sm`,className:i,disabled:a,onClick:o,children:`New Chat`})}),t[0]=a,t[1]=o,t[2]=i,t[3]=e):e=t[3];let n=a?`Starting Chat`:`New Chat`,r;t[4]===n?r=t[5]:(r=(0,$.jsx)(Fr,{children:n}),t[4]=n,t[5]=r);let s;return t[6]!==e||t[7]!==r?(s=(0,$.jsx)(Zo,{children:(0,$.jsxs)(Mi,{children:[e,r]})}),t[6]=e,t[7]=r,t[8]=s):s=t[8],s}let c;return t[9]!==a||t[10]!==o||t[11]!==s?(c=(0,$.jsx)(hw,{projectId:s,onNewChat:o,isStartingNewChat:a}),t[9]=a,t[10]=o,t[11]=s,t[12]=c):c=t[12],c}function gE(e){let t=(0,Q.c)(5),{hasChanges:n,layout:r,toolbarButtonClass:i,changedFilesCount:a,onReviewChanges:o}=e;if(!n||r!==`menu`)return null;let s=a===1?`Change`:`Changes`,c;return t[0]!==a||t[1]!==o||t[2]!==s||t[3]!==i?(c=(0,$.jsxs)(Hr,{variant:`ghost`,size:`sm`,className:i,onClick:o,children:[a,` `,s]}),t[0]=a,t[1]=o,t[2]=s,t[3]=i,t[4]=c):c=t[4],c}function _E(e){let t=(0,Q.c)(17),{showProjectToolbar:n,hasChatActions:r,projectId:i,threadId:a,runCommand:o,openWith:s}=e;if(!n)return null;let c;t[0]===r?c=t[1]:(c=r&&(0,$.jsx)(Tl,{className:`my-1`}),t[0]=r,t[1]=c);let l;t[2]!==i||t[3]!==o?(l=(0,$.jsx)(dE,{projectId:i,runCommand:o,layout:`menu`}),t[2]=i,t[3]=o,t[4]=l):l=t[4];let u;t[5]===a?u=t[6]:(u=(0,$.jsx)(kw,{threadId:a,layout:`menu`}),t[5]=a,t[6]=u);let d;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(d=(0,$.jsx)(Aw,{layout:`menu`}),t[7]=d):d=t[7];let f;t[8]!==s||t[9]!==i||t[10]!==a?(f=(0,$.jsx)(IT,{projectId:i,threadId:a,openWith:s,layout:`menu`}),t[8]=s,t[9]=i,t[10]=a,t[11]=f):f=t[11];let p;return t[12]!==c||t[13]!==l||t[14]!==u||t[15]!==f?(p=(0,$.jsxs)($.Fragment,{children:[c,l,u,d,f]}),t[12]=c,t[13]=l,t[14]=u,t[15]=f,t[16]=p):p=t[16],p}function vE(e){let t=(0,Q.c)(4),{hasMessages:n,onNewChat:r,projectId:i}=e,{isStartingNewChat:a}=BC();if(!n)return null;let o;return t[0]!==a||t[1]!==r||t[2]!==i?(o=(0,$.jsx)(`div`,{className:`absolute -top-12 left-0 z-10 ml-8 flex flex-wrap items-center gap-2`,"data-chat-toolbar":!0,children:(0,$.jsx)(hw,{projectId:i,onNewChat:r,isStartingNewChat:a})}),t[0]=a,t[1]=r,t[2]=i,t[3]=o):o=t[3],o}function yE(e){let t=(0,Q.c)(7),{userTasks:n,effectiveIsStreaming:r,threadId:i,isCreatingProject:a,onSelectUserTask:o,onToggleUserTaskPinned:s,onRemoveUserTask:c,layout:l}=e;if(n.length===0)return null;let u=r||!i&&!a,d;return t[0]!==l||t[1]!==c||t[2]!==o||t[3]!==s||t[4]!==u||t[5]!==n?(d=(0,$.jsx)(PC,{tasks:n,disabled:u,onSelectTask:o,onTogglePinned:s,onRemoveTask:c,layout:l}),t[0]=l,t[1]=c,t[2]=o,t[3]=s,t[4]=u,t[5]=n,t[6]=d):d=t[6],d}function bE(e){let t=(0,Q.c)(4),{layout:n,threadId:r,projectId:i}=e;if(n!==`menu`||!r||!i)return null;let a;return t[0]!==n||t[1]!==i||t[2]!==r?(a=(0,$.jsx)(kT,{projectId:i,threadId:r,layout:n},r),t[0]=n,t[1]=i,t[2]=r,t[3]=a):a=t[3],a}function xE(e){let t=(0,Q.c)(2),{hasMessages:n,layout:r}=e;if(!n)return null;let i;return t[0]===r?i=t[1]:(i=(0,$.jsx)(MC,{layout:r}),t[0]=r,t[1]=i),i}function SE(e){return e===`bar`?`absolute -top-12 left-0 z-10 ml-8 flex flex-wrap items-center gap-2`:`flex flex-col items-stretch gap-1 p-1 min-w-[220px]`}function CE(e){let t=(0,Q.c)(61),{threadId:n,projectId:r,messages:i,userTasks:a,effectiveIsStreaming:o,isCreatingProject:s,onNewChat:c,onSelectUserTask:l,onToggleUserTaskPinned:u,onRemoveUserTask:d,layout:f}=e,p=f===void 0?`bar`:f,{openChatDockPanel:m}=Wd(),{isStartingNewChat:h}=BC(),g;t[0]!==i||t[1]!==r||t[2]!==n||t[3]!==a?(g={threadId:n,projectId:r,messages:i,userTasks:a},t[0]=i,t[1]=r,t[2]=n,t[3]=a,t[4]=g):g=t[4];let{hasMessages:_,hasChanges:v,isVisible:y}=mE(g),{changedFilesCount:b}=Fd(),x;t[5]===p?x=t[6]:(x=pE(p),t[5]=p,t[6]=x);let S=x,C=X(wE),w;if(t[7]!==r||t[8]!==C){let e;t[10]===r?e=t[11]:(e=e=>e.projectId===r,t[10]=r,t[11]=e),w=C.find(e),t[7]=r,t[8]=C,t[9]=w}else w=t[9];let T=w,E=p===`menu`&&!!n&&!!r,D=_||v||a.length>0||E;if(!y)return null;let O;t[12]===p?O=t[13]:(O=SE(p),t[12]=p,t[13]=O);let k=p===`bar`?!0:void 0,A=r||null,j;t[14]!==_||t[15]!==h||t[16]!==p||t[17]!==c||t[18]!==A||t[19]!==S?(j=(0,$.jsx)(hE,{hasMessages:_,layout:p,toolbarButtonClass:S,isStartingNewChat:h,onNewChat:c,projectId:A}),t[14]=_,t[15]=h,t[16]=p,t[17]=c,t[18]=A,t[19]=S,t[20]=j):j=t[20];let M;t[21]===m?M=t[22]:(M=()=>{m(`review`)},t[21]=m,t[22]=M);let N;t[23]!==b||t[24]!==v||t[25]!==p||t[26]!==M||t[27]!==S?(N=(0,$.jsx)(gE,{hasChanges:v,layout:p,toolbarButtonClass:S,changedFilesCount:b,onReviewChanges:M}),t[23]=b,t[24]=v,t[25]=p,t[26]=M,t[27]=S,t[28]=N):N=t[28];let P;t[29]!==o||t[30]!==s||t[31]!==p||t[32]!==d||t[33]!==l||t[34]!==u||t[35]!==n||t[36]!==a?(P=(0,$.jsx)(yE,{userTasks:a,effectiveIsStreaming:o,threadId:n,isCreatingProject:s,onSelectUserTask:l,onToggleUserTaskPinned:u,onRemoveUserTask:d,layout:p}),t[29]=o,t[30]=s,t[31]=p,t[32]=d,t[33]=l,t[34]=u,t[35]=n,t[36]=a,t[37]=P):P=t[37];let F;t[38]!==p||t[39]!==r||t[40]!==n?(F=(0,$.jsx)(bE,{layout:p,threadId:n,projectId:r}),t[38]=p,t[39]=r,t[40]=n,t[41]=F):F=t[41];let I;t[42]!==_||t[43]!==p?(I=(0,$.jsx)(xE,{hasMessages:_,layout:p}),t[42]=_,t[43]=p,t[44]=I):I=t[44];let L=T?.runCommand,R=T?.openWith,z;t[45]!==D||t[46]!==r||t[47]!==E||t[48]!==L||t[49]!==R||t[50]!==n?(z=(0,$.jsx)(_E,{showProjectToolbar:E,hasChatActions:D,projectId:r,threadId:n,runCommand:L,openWith:R}),t[45]=D,t[46]=r,t[47]=E,t[48]=L,t[49]=R,t[50]=n,t[51]=z):z=t[51];let B;return t[52]!==N||t[53]!==P||t[54]!==F||t[55]!==I||t[56]!==z||t[57]!==O||t[58]!==k||t[59]!==j?(B=(0,$.jsx)($.Fragment,{children:(0,$.jsxs)(`div`,{className:O,"data-chat-toolbar":k,children:[j,N,P,F,I,z]})}),t[52]=N,t[53]=P,t[54]=F,t[55]=I,t[56]=z,t[57]=O,t[58]=k,t[59]=j,t[60]=B):B=t[60],B}function wE(e){return e.projects}function TE(e){let t=(0,Q.c)(11),{mode:n,messages:r,onNewChat:i}=e,a=n===void 0?`full`:n,o;t[0]!==r||t[1]!==e.projectId||t[2]!==e.threadId||t[3]!==e.userTasks?(o={threadId:e.threadId,projectId:e.projectId,messages:r,userTasks:e.userTasks},t[0]=r,t[1]=e.projectId,t[2]=e.threadId,t[3]=e.userTasks,t[4]=o):o=t[4];let{hasMessages:s}=mE(o);if(a===`newChatOnly`){let n=e.projectId||null,r;return t[5]!==s||t[6]!==i||t[7]!==n?(r=(0,$.jsx)(vE,{hasMessages:s,onNewChat:i,projectId:n}),t[5]=s,t[6]=i,t[7]=n,t[8]=r):r=t[8],r}let c;return t[9]===e?c=t[10]:(c=(0,$.jsx)(CE,{...e}),t[9]=e,t[10]=c),c}function EE(e){let t=(0,Q.c)(2),n;return t[0]===e?n=t[1]:(n=(0,$.jsx)(TE,{...e}),t[0]=e,t[1]=n),n}function DE(e){let t=(0,Q.c)(29),{inPill:n}=e,r=n===void 0?!1:n,i=gC(),a=X(AE),o=X(kE),s=X(OE),{userTasks:c,handleNewChat:l,handleSelectUserTask:u,handleRemoveUserTask:d,toggleUserTaskPinned:f,effectiveIsStreaming:p,isCreatingProject:m}=BC(),h;t[0]!==s||t[1]!==o||t[2]!==a||t[3]!==c?(h={threadId:a,projectId:o,messages:s,userTasks:c},t[0]=s,t[1]=o,t[2]=a,t[3]=c,t[4]=h):h=t[4];let{isVisible:g}=mE(h);if(!a||!g)return null;let _=r||!i?`text-muted-foreground`:nl,v;t[5]===_?v=t[6]:(v=G(`h-8 w-8 shrink-0 md:hidden electrobun-webkit-app-region-no-drag`,_),t[5]=_,t[6]=v);let y,b;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(y=(0,$.jsx)(lt,{className:`h-4 w-4`}),b=(0,$.jsx)(`span`,{className:`sr-only`,children:`Chat actions`}),t[7]=y,t[8]=b):(y=t[7],b=t[8]);let x;t[9]===v?x=t[10]:(x=(0,$.jsx)(gl,{asChild:!0,children:(0,$.jsxs)(Hr,{variant:`ghost`,size:`icon`,className:v,children:[y,b]})}),t[9]=v,t[10]=x);let S=o??``,C;t[11]===l?C=t[12]:(C=()=>{l()},t[11]=l,t[12]=C);let w;t[13]===d?w=t[14]:(w=e=>{d(e)},t[13]=d,t[14]=w);let T;t[15]!==p||t[16]!==u||t[17]!==m||t[18]!==s||t[19]!==a||t[20]!==w||t[21]!==S||t[22]!==C||t[23]!==f||t[24]!==c?(T=(0,$.jsx)(bl,{align:`end`,className:`electrobun-webkit-app-region-no-drag`,children:(0,$.jsx)(CE,{threadId:a,projectId:S,messages:s,userTasks:c,effectiveIsStreaming:p,isCreatingProject:m,onNewChat:C,onSelectUserTask:u,onToggleUserTaskPinned:f,onRemoveUserTask:w,layout:`menu`})}),t[15]=p,t[16]=u,t[17]=m,t[18]=s,t[19]=a,t[20]=w,t[21]=S,t[22]=C,t[23]=f,t[24]=c,t[25]=T):T=t[25];let E;return t[26]!==T||t[27]!==x?(E=(0,$.jsxs)(hl,{children:[x,T]}),t[26]=T,t[27]=x,t[28]=E):E=t[28],E}function OE(e){return e.messages}function kE(e){return e.selectedProjectId}function AE(e){return e.selectedThreadId}function jE(e){let t=(0,Q.c)(3),{threadId:n,children:r}=e,i;return t[0]!==r||t[1]!==n?(i=(0,$.jsx)(Pd,{threadId:n,children:r}),t[0]=r,t[1]=n,t[2]=i):i=t[2],i}function ME(e,t){let n=t[0],r={toolCallId:e,questions:t,question:n?.question??``,options:n?.options?.map(e=>e.label),context:n?.header};return Object.defineProperties(r,{question:{value:r.question,enumerable:!1,writable:!0},options:{value:r.options,enumerable:!1,writable:!0},context:{value:r.context,enumerable:!1,writable:!0}}),r}var NE=1500;function PE(e){let t=[];for(let n of e){let e=Hs(n.content);e&&t.push(...e)}return t}function FE(e,t){let n=[];for(let[r,i]of Object.entries(e))!i||i.length===0||v_(r)===t&&n.push(...am(i));return n}function IE(e){let t=new Set;for(let n of e)ws(n)&&t.add(n.toolCallId);let n=null;for(let r of e){if(!Us(r)||r.name!==`ask_user`||t.has(r.id))continue;let e=Mv(r.input);e.questions.length!==0&&(n=ME(r.id,e.questions))}return n}function LE(e){return e.isThreadActive?IE([...e.messageBlocks,...Bs(e.streamingSegments),...FE(e.subagentTranscripts,e.paneId)]):null}function RE(e,t,n,r){if(t){let n=e.find(e=>e.toolCallId===t);if(n)return ME(n.toolCallId,n.questions)}if(!n)return null;let i=e.find(e=>w_(e.toolCallId)===r&&C_(e.toolCallId)===n);return i?ME(i.toolCallId,i.questions):null}function zE(e){let t=(0,Q.c)(24),{paneId:n}=wv(),r=X(VE),i;t[0]!==n||t[1]!==r?(i=e=>As(e.threadStreamingStates,r,n).streamingSegments,t[0]=n,t[1]=r,t[2]=i):i=t[2];let a=X(i),o=X(BE),s;t[3]!==n||t[4]!==r?(s=e=>ks(e,r,n),t[3]=n,t[4]=r,t[5]=s):s=t[5];let c=X(s),l;t[6]===e?l=t[7]:(l=PE(e),t[6]=e,t[7]=l);let u=l,d;t[8]!==c||t[9]!==u||t[10]!==n||t[11]!==a||t[12]!==o?(d=LE({messageBlocks:u,streamingSegments:a,subagentTranscripts:o,isThreadActive:c,paneId:n}),t[8]=c,t[9]=u,t[10]=n,t[11]=a,t[12]=o,t[13]=d):d=t[13];let f=d,[p,m]=(0,Z.useState)(null),[h,g]=(0,Z.useState)(null),_=(0,Z.useRef)(null),v=f?.toolCallId??null,y;t[14]===Symbol.for(`react.memo_cache_sentinel`)?(y=()=>{g(null)},t[14]=y):y=t[14];let b=p?.toolCallId,x;t[15]!==v||t[16]!==b?(x=[v,b],t[15]=v,t[16]=b,t[17]=x):x=t[17],(0,Z.useEffect)(y,x);let S,C;t[18]!==v||t[19]!==c||t[20]!==n||t[21]!==r?(S=()=>{if(!c){m(null),_.current=null;return}let e=!1,t=async function(){try{let t=await ei();if(e)return;if(t.length===0){_.current&&=(g(_.current),null),m(null);return}let i=RE(t,v,r,n);if(!i){_.current=null,m(null);return}_.current=i.toolCallId,m(ME(i.toolCallId,i.questions))}catch{}};t();let i=setInterval(()=>{t()},NE);return()=>{e=!0,clearInterval(i)}},C=[c,v,r,n],t[18]=v,t[19]=c,t[20]=n,t[21]=r,t[22]=S,t[23]=C):(S=t[22],C=t[23]),(0,Z.useEffect)(S,C);let w=f??p;return!w||h===w.toolCallId?null:w}function BE(e){return e.subagentTranscripts}function VE(e){return e.selectedThreadId}function HE(e){let t=(0,Q.c)(10),{open:n,onClose:r}=e,i=Yn(),a;t[0]===r?a=t[1]:(a=e=>{e||r()},t[0]=r,t[1]=a);let o;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,$.jsxs)(fc,{children:[(0,$.jsx)(sc,{children:`Balance empty`}),(0,$.jsx)(oc,{children:`You have no prompts remaining. Purchase additional prompts to continue.`})]}),t[2]=o):o=t[2];let s;t[3]!==i||t[4]!==r?(s=(0,$.jsxs)(cc,{children:[o,(0,$.jsx)(uc,{children:(0,$.jsx)(Hr,{onClick:()=>{r(),i(`/settings/account`)},children:`Go to Account`})})]}),t[3]=i,t[4]=r,t[5]=s):s=t[5];let c;return t[6]!==n||t[7]!==a||t[8]!==s?(c=(0,$.jsx)(pc,{open:n,onOpenChange:a,children:s}),t[6]=n,t[7]=a,t[8]=s,t[9]=c):c=t[9],c}function UE(e){let t=(0,Q.c)(4),{messages:n}=e,r;t[0]===n?r=t[1]:(r=n===void 0?[]:n,t[0]=n,t[1]=r);let i=r,a;return t[2]===i?a=t[3]:(a=(0,$.jsx)(KE,{messages:i}),t[2]=i,t[3]=a),a}function WE(e){let t=(0,Q.c)(19),{visible:n,paneId:r,threadId:i,projectId:a,messages:o,userTasks:s,effectiveIsStreaming:c,isCreatingProject:l,onNewChat:u,onSelectUserTask:d,onToggleUserTaskPinned:f,onRemoveUserTask:p}=e;if(!n)return null;let m=r===`primary`?`full`:`newChatOnly`,h;t[0]!==r||t[1]!==s?(h=r===`primary`?s:[],t[0]=r,t[1]=s,t[2]=h):h=t[2];let g=h,_;t[3]===u?_=t[4]:(_=()=>{u()},t[3]=u,t[4]=_);let v;t[5]===p?v=t[6]:(v=e=>{p(e)},t[5]=p,t[6]=v);let y;return t[7]!==c||t[8]!==l||t[9]!==o||t[10]!==m||t[11]!==d||t[12]!==f||t[13]!==a||t[14]!==_||t[15]!==v||t[16]!==i||t[17]!==g?(y=(0,$.jsx)(`div`,{className:`max-md:hidden`,children:(0,$.jsx)(EE,{threadId:i,projectId:a,messages:o,userTasks:g,effectiveIsStreaming:c,isCreatingProject:l,mode:m,onNewChat:_,onSelectUserTask:d,onToggleUserTaskPinned:f,onRemoveUserTask:v})}),t[7]=c,t[8]=l,t[9]=o,t[10]=m,t[11]=d,t[12]=f,t[13]=a,t[14]=_,t[15]=v,t[16]=i,t[17]=g,t[18]=y):y=t[18],y}function GE(e){let t=(0,Q.c)(25),{activeAskUserPrompt:n,handleAskUserAnswered:r,handleAskUserStop:i,elevated:a,centered:o,embedded:s,planMode:c,setPlanMode:l,onSend:u,onStop:d,isStreaming:f,disabled:p,queuedMessages:m,onRemoveQueuedMessage:h,userTasks:g,handleRemoveUserTask:_,setUserTasks:v}=e;if(n){let e;return t[0]!==n.questions||t[1]!==n.toolCallId||t[2]!==a||t[3]!==r||t[4]!==i?(e=(0,$.jsx)(pC,{toolCallId:n.toolCallId,questions:n.questions,onAnswered:r,onStop:i,elevated:a}),t[0]=n.questions,t[1]=n.toolCallId,t[2]=a,t[3]=r,t[4]=i,t[5]=e):e=t[5],e}let y;t[6]===_?y=t[7]:(y=e=>{e.pinned||_(e.id)},t[6]=_,t[7]=y);let b;t[8]===v?b=t[9]:(b=e=>{v(t=>[...t,e])},t[8]=v,t[9]=b);let x;return t[10]!==o||t[11]!==p||t[12]!==a||t[13]!==s||t[14]!==f||t[15]!==h||t[16]!==u||t[17]!==d||t[18]!==c||t[19]!==m||t[20]!==l||t[21]!==y||t[22]!==b||t[23]!==g?(x=(0,$.jsx)(eC,{planMode:c,setPlanMode:l,onSend:u,onStop:d,isStreaming:f,disabled:p,initialValue:``,queuedMessages:m,onRemoveQueuedMessage:h,isOverlay:!1,centered:o,embedded:s,elevated:a,userTasks:g,onMatchedUserTaskSend:y,onUserTaskCreated:b}),t[10]=o,t[11]=p,t[12]=a,t[13]=s,t[14]=f,t[15]=h,t[16]=u,t[17]=d,t[18]=c,t[19]=m,t[20]=l,t[21]=y,t[22]=b,t[23]=g,t[24]=x):x=t[24],x}function KE(e){let t=(0,Q.c)(67),{messages:n}=e,{paneId:r,conversationId:i,fillPane:a}=wv(),o=aC(),s=oC(),c=o?.placement===`footer`&&!o.embedded,l=o?.embedded??!1,u=!(c&&s!==`centered`),d=X(ZE),f=X(XE),p=X(YE),m=X(JE),[h,g]=Z.useState(!1),{handleSend:_,handleStop:v,getQueuedMessagesForPane:y,handleRemoveQueuedMessage:b,showEmptyBalanceDialog:x,setShowEmptyBalanceDialog:S}=bv(),{userTasks:C,setUserTasks:w,handleNewChat:T,handleSelectUserTask:E,handleRemoveUserTask:D,toggleUserTaskPinned:O,effectiveIsStreaming:k,isStartingNewChat:A}=BC(),[j,M]=(0,Z.useState)(qE),N=zE(n),P;t[0]!==j||t[1]!==N?(P=N&&!j.has(N.toolCallId)?N:null,t[0]=j,t[1]=N,t[2]=P):P=t[2];let F=P,I;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(I=e=>{M(t=>{let n=new Set(t);return n.add(e),n})},t[3]=I):I=t[3];let L=I,R;t[4]!==i||t[5]!==_||t[6]!==r?(R=(e,t,n,a,o,s,c,l)=>_(r,i,e,t,n,a,o,s,c,l),t[4]=i,t[5]=_,t[6]=r,t[7]=R):R=t[7];let z=R,B;t[8]!==v||t[9]!==r?(B=()=>{v(r)},t[8]=v,t[9]=r,t[10]=B):B=t[10];let V=B,H;t[11]!==F||t[12]!==V?(H=()=>{V(),F&&L(F.toolCallId)},t[11]=F,t[12]=V,t[13]=H):H=t[13];let ee=H,te;t[14]!==b||t[15]!==r?(te=e=>{b(r,e)},t[14]=b,t[15]=r,t[16]=te):te=t[16];let ne=te,re=r===`primary`&&f&&(p||n.length>0||C.length>0),ie=r!==`primary`&&f&&n.length>0,ae;t[17]===S?ae=t[18]:(ae=()=>S(!1),t[17]=S,t[18]=ae);let oe;t[19]!==x||t[20]!==ae?(oe=(0,$.jsx)(HE,{open:x,onClose:ae}),t[19]=x,t[20]=ae,t[21]=oe):oe=t[21];let se;t[22]===a?se=t[23]:(se=my(a),t[22]=a,t[23]=se);let U=!!(re||ie),ce=p??``,le;t[24]===T?le=t[25]:(le=()=>{T()},t[24]=T,t[25]=le);let ue;t[26]!==k||t[27]!==D||t[28]!==E||t[29]!==d||t[30]!==n||t[31]!==r||t[32]!==f||t[33]!==U||t[34]!==ce||t[35]!==le||t[36]!==O||t[37]!==C?(ue=(0,$.jsx)(WE,{visible:U,paneId:r,threadId:f,projectId:ce,messages:n,userTasks:C,effectiveIsStreaming:k,isCreatingProject:d,onNewChat:le,onSelectUserTask:E,onToggleUserTaskPinned:O,onRemoveUserTask:D}),t[26]=k,t[27]=D,t[28]=E,t[29]=d,t[30]=n,t[31]=r,t[32]=f,t[33]=U,t[34]=ce,t[35]=le,t[36]=O,t[37]=C,t[38]=ue):ue=t[38];let W=!f&&!d||m||A,de;t[39]!==y||t[40]!==r?(de=y(r),t[39]=y,t[40]=r,t[41]=de):de=t[41];let fe;t[42]!==F||t[43]!==c||t[44]!==k||t[45]!==u||t[46]!==l||t[47]!==ee||t[48]!==D||t[49]!==ne||t[50]!==z||t[51]!==V||t[52]!==h||t[53]!==w||t[54]!==W||t[55]!==de||t[56]!==C?(fe=(0,$.jsx)(GE,{activeAskUserPrompt:F,handleAskUserAnswered:L,handleAskUserStop:ee,elevated:u,centered:c,embedded:l,planMode:h,setPlanMode:g,onSend:z,onStop:V,isStreaming:k,disabled:W,queuedMessages:de,onRemoveQueuedMessage:ne,userTasks:C,handleRemoveUserTask:D,setUserTasks:w}),t[42]=F,t[43]=c,t[44]=k,t[45]=u,t[46]=l,t[47]=ee,t[48]=D,t[49]=ne,t[50]=z,t[51]=V,t[52]=h,t[53]=w,t[54]=W,t[55]=de,t[56]=C,t[57]=fe):fe=t[57];let pe;t[58]!==ue||t[59]!==fe?(pe=(0,$.jsxs)(`div`,{className:`relative`,children:[ue,fe]}),t[58]=ue,t[59]=fe,t[60]=pe):pe=t[60];let me;t[61]!==pe||t[62]!==se?(me=(0,$.jsx)(`div`,{className:se,children:pe}),t[61]=pe,t[62]=se,t[63]=me):me=t[63];let he;return t[64]!==me||t[65]!==oe?(he=(0,$.jsxs)($.Fragment,{children:[oe,me]}),t[64]=me,t[65]=oe,t[66]=he):he=t[66],he}function qE(){return new Set}function JE(e){return e.selectedThreadId?e.threadToolSessions[e.selectedThreadId]?.kind===`create-project`:!1}function YE(e){return e.selectedProjectId}function XE(e){return e.selectedThreadId}function ZE(e){return e.isCreatingProject}function QE(e){let t=e?.querySelector(uy);return t?t.getBoundingClientRect().top:null}function $E(e,t,n){let r=(0,Q.c)(5),i,a;r[0]!==n||r[1]!==t||r[2]!==e?(i=()=>{let r=e.current;if(!n||!r)return;let i=function(){t.current=QE(r)};i();let a=new ResizeObserver(i);return a.observe(r),window.addEventListener(`resize`,i),()=>{a.disconnect(),window.removeEventListener(`resize`,i)}},a=[n,t,e],r[0]=n,r[1]=t,r[2]=e,r[3]=i,r[4]=a):(i=r[3],a=r[4]),(0,Z.useEffect)(i,a)}function eD(e,t,n){let r=(0,Q.c)(5),i,a;r[0]!==n||r[1]!==t||r[2]!==e?(i=()=>{let r=e.current,i=t.current;if(!n||!r||i===null)return;t.current=null;let a=QE(r);if(a===null||Math.abs(i-a)<1||window.matchMedia(`(prefers-reduced-motion: reduce)`).matches)return;let o=r.animate([{transform:`translateY(${i-a}px)`},{transform:`translateY(0px)`}],{duration:300,easing:cy});return()=>o.cancel()},a=[n,t,e],r[0]=n,r[1]=t,r[2]=e,r[3]=i,r[4]=a):(i=r[3],a=r[4]),(0,Z.useLayoutEffect)(i,a)}var tD;(function(e){e.Dark=`DARK`,e.Light=`LIGHT`,e.Default=`DEFAULT`})(tD||={});var nD;(function(e){e.Body=`body`,e.Ionic=`ionic`,e.Native=`native`,e.None=`none`})(nD||={});var rD=Ag(`Keyboard`);function iD(e){let t=window.visualViewport;if(!e||!t)return 0;let n=t.height+t.offsetTop,r=e.getBoundingClientRect().bottom;return Math.max(0,Math.round(r-n))}function aD(e,t){return vi()?t:e>0?e:t}function oD(e,t){let n=(0,Q.c)(6),[r,i]=(0,Z.useState)(0),[a,o]=(0,Z.useState)(0),s=t?.onlyWhenOverlapping??!1,c,l;if(n[0]===e?(c=n[1],l=n[2]):(c=()=>{let t=function(){i(iD(e.current))},n=function(){t(),requestAnimationFrame(t)};n();let r=window.visualViewport;r?.addEventListener(`resize`,n),r?.addEventListener(`scroll`,n),window.addEventListener(`resize`,n);let a=[];return Za()&&a.push(rD.addListener(`keyboardWillShow`,e=>{o(e.keyboardHeight)}),rD.addListener(`keyboardDidShow`,e=>{o(e.keyboardHeight)}),rD.addListener(`keyboardWillHide`,()=>{o(0)}),rD.addListener(`keyboardDidHide`,()=>{o(0)})),()=>{r?.removeEventListener(`resize`,n),r?.removeEventListener(`scroll`,n),window.removeEventListener(`resize`,n);for(let e of a)e.then(sD)}},l=[e],n[0]=e,n[1]=c,n[2]=l),(0,Z.useEffect)(c,l),s&&r<=0)return 0;let u;return n[3]!==r||n[4]!==a?(u=aD(r,a),n[3]=r,n[4]=a,n[5]=u):u=n[5],u}function sD(e){e.remove()}function cD(e){let t=(0,Q.c)(53),{paneId:n,inline:r}=e,i=r===void 0?!1:r,a=X(uD),o=X(lD),s=n??o,c;t[0]===s?c=t[1]:(c=e=>gs(e,s),t[0]=s,t[1]=c);let l=X(c),u;t[2]===s?u=t[3]:(u=e=>ys(e,s),t[2]=s,t[3]=u);let d=X(u),f=aC(),p=oC(),m=sC()?ly:void 0,h=f?.overlayRef,g=(0,Z.useRef)(null),_=(0,Z.useRef)(null),v=f?.placement??`overlay`,y=f?.embedded??!1,b=y?g:h,x=b??g,S=f?.centeredComposerTopRef??_,C;t[4]===b?C=t[5]:(C=b??{current:null},t[4]=b,t[5]=C);let w=oD(C);if($E(x,S,i&&p===`centered`),eD(x,S,!i&&p===`moving-to-footer`),!a||!b)return null;let T;t[6]===d?T=t[7]:(T=(0,$.jsx)(zC,{children:(0,$.jsx)(UE,{messages:d})}),t[6]=d,t[7]=T);let E;t[8]!==l||t[9]!==y||t[10]!==s||t[11]!==T?(E=(0,$.jsx)(Sv,{paneId:s,conversationId:l,fillPane:y,children:T},s),t[8]=l,t[9]=y,t[10]=s,t[11]=T,t[12]=E):E=t[12];let D=E;if(v===`footer`){if(y){let e;t[13]===w?e=t[14]:(e={paddingBottom:w},t[13]=w,t[14]=e);let n;t[15]===D?n=t[16]:(n=(0,$.jsx)(`div`,{className:`pointer-events-auto`,children:D}),t[15]=D,t[16]=n);let r;return t[17]!==b||t[18]!==e||t[19]!==n?(r=(0,$.jsx)(`div`,{ref:b,className:`mx-0.5 mb-2 shrink-0 border-t border-border bg-background`,style:e,children:n}),t[17]=b,t[18]=e,t[19]=n,t[20]=r):r=t[20],r}if(i){let e;t[21]===m?e=t[22]:(e=G(`w-full min-w-0 shrink-0`,m),t[21]=m,t[22]=e);let n;t[23]===w?n=t[24]:(n={paddingBottom:w},t[23]=w,t[24]=n);let r;t[25]===D?r=t[26]:(r=(0,$.jsx)(`div`,{className:`pointer-events-auto w-full`,children:D}),t[25]=D,t[26]=r);let i;return t[27]!==b||t[28]!==e||t[29]!==n||t[30]!==r?(i=(0,$.jsx)(`div`,{ref:b,className:e,style:n,children:r}),t[27]=b,t[28]=e,t[29]=n,t[30]=r,t[31]=i):i=t[31],i}let e;t[32]===m?e=t[33]:(e=G(`shrink-0 bg-transparent max-md:px-2`,m),t[32]=m,t[33]=e);let n;t[34]===w?n=t[35]:(n={paddingBottom:w},t[34]=w,t[35]=n);let r;t[36]===D?r=t[37]:(r=(0,$.jsx)(`div`,{className:`relative mx-auto w-full max-w-3xl min-w-0 px-6`,children:(0,$.jsx)(`div`,{className:`pointer-events-auto pt-2 pb-6`,children:D})}),t[36]=D,t[37]=r);let a;return t[38]!==b||t[39]!==e||t[40]!==n||t[41]!==r?(a=(0,$.jsx)(`div`,{ref:b,className:e,style:n,children:r}),t[38]=b,t[39]=e,t[40]=n,t[41]=r,t[42]=a):a=t[42],a}let O;t[43]===w?O=t[44]:(O={bottom:w},t[43]=w,t[44]=O);let k,A;t[45]===Symbol.for(`react.memo_cache_sentinel`)?(k=py(!1),A=(0,$.jsx)(`div`,{className:`h-0 bg-gradient-to-t from-background to-transparent md:h-16`}),t[45]=k,t[46]=A):(k=t[45],A=t[46]);let j;t[47]===D?j=t[48]:(j=(0,$.jsxs)(`div`,{className:k,children:[A,(0,$.jsx)(`div`,{className:`pointer-events-auto bg-background pb-2 md:pb-4`,children:D})]}),t[47]=D,t[48]=j);let M;return t[49]!==b||t[50]!==j||t[51]!==O?(M=(0,$.jsx)(`div`,{ref:b,className:`pointer-events-none absolute inset-x-0 z-30 max-md:px-2`,style:O,children:j}),t[49]=b,t[50]=j,t[51]=O,t[52]=M):M=t[52],M}function lD(e){return e.focusedPane}function uD(e){return e.selectedThreadId}function dD(e){let t=[`What would you like to add to ${e}?`,`What should we build in ${e}?`,`What changes do you want to make to ${e}?`,`What feature should we add to ${e}?`,`What would you like to fix in ${e}?`,`What are we working on in ${e}?`,`What's next for ${e}?`,`What should we improve in ${e}?`,`How can we make ${e} better?`,`What would you like to change in ${e}?`,`What should we ship in ${e} next?`];return t[Math.floor(Math.random()*t.length)]}function fD(e){let t=(0,Q.c)(47),{project:n}=e,r=gC(),{isRunning:i}=iE(n?.projectId),{startServer:a}=$T(),o=aC(),s=o!=null&&!o.embedded;n?.name;let c=n?.name??`your project`,l;t[0]===c?l=t[1]:(l=dD(c),t[0]=c,t[1]=l);let u=l,d=!i&&n?.runCommand,f;t[2]!==n||t[3]!==a?(f=function(){n&&a(n)},t[2]=n,t[3]=a,t[4]=f):f=t[4];let p=f;if(r&&n){let e;t[5]===n?e=t[6]:(e=(0,$.jsx)(Yc,{project:n,className:`h-20 w-20`,iconClassName:`h-8 w-8`}),t[5]=n,t[6]=e);let r;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(r=G(U.pageTitle,`tracking-tight text-balance text-foreground`),t[7]=r):r=t[7];let i;t[8]===n.name?i=t[9]:(i=(0,$.jsx)(`h1`,{className:r,children:n.name}),t[8]=n.name,t[9]=i);let a;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(a=G(U.pageSubtitle,`mt-2`),t[10]=a):a=t[10];let o;t[11]===u?o=t[12]:(o=(0,$.jsx)(`p`,{className:a,children:u}),t[11]=u,t[12]=o);let c;t[13]!==i||t[14]!==o?(c=(0,$.jsxs)(`div`,{children:[i,o]}),t[13]=i,t[14]=o,t[15]=c):c=t[15];let l;t[16]!==p||t[17]!==d?(l=d?(0,$.jsx)(`button`,{type:`button`,onClick:p,className:G(U.label,`inline-flex items-center gap-2 rounded-full bg-primary px-4 py-2 text-primary-foreground transition-colors hover:bg-primary/90`),children:`Start App`}):null,t[16]=p,t[17]=d,t[18]=l):l=t[18];let f;t[19]!==l||t[20]!==e||t[21]!==c?(f=(0,$.jsxs)(`div`,{className:`flex w-full flex-col items-center gap-6`,children:[e,c,l]}),t[19]=l,t[20]=e,t[21]=c,t[22]=f):f=t[22];let m;t[23]===s?m=t[24]:(m=s?(0,$.jsx)(`div`,{className:`mt-16 w-full`,children:(0,$.jsx)(cD,{inline:!0})}):null,t[23]=s,t[24]=m);let h;return t[25]!==f||t[26]!==m?(h=(0,$.jsx)(`div`,{className:`relative flex h-full min-h-0 flex-col items-center justify-center overflow-y-auto animate-in fade-in duration-500`,children:(0,$.jsxs)(`div`,{className:`flex w-full max-w-4xl flex-col items-center px-6 py-10 text-center`,children:[f,m]})}),t[25]=f,t[26]=m,t[27]=h):h=t[27],h}let m;t[28]===Symbol.for(`react.memo_cache_sentinel`)?(m=(0,$.jsx)(`img`,{src:`/tarsk-color.svg`,alt:`Tarsk`,className:`h-16 w-16 rounded-lg`}),t[28]=m):m=t[28];let h;t[29]===Symbol.for(`react.memo_cache_sentinel`)?(h=G(U.pageTitle,`tracking-tight text-balance text-foreground`),t[29]=h):h=t[29];let g=n?.name??`Project`,_;t[30]===g?_=t[31]:(_=(0,$.jsx)(`h1`,{className:h,children:g}),t[30]=g,t[31]=_);let v;t[32]===Symbol.for(`react.memo_cache_sentinel`)?(v=G(U.pageSubtitle,`mt-2`),t[32]=v):v=t[32];let y;t[33]===u?y=t[34]:(y=(0,$.jsx)(`p`,{className:v,children:u}),t[33]=u,t[34]=y);let b;t[35]!==_||t[36]!==y?(b=(0,$.jsxs)(`div`,{className:`text-center`,children:[_,y]}),t[35]=_,t[36]=y,t[37]=b):b=t[37];let x;t[38]!==p||t[39]!==d?(x=d&&(0,$.jsx)(`button`,{type:`button`,onClick:p,className:G(U.label,`inline-flex items-center gap-2 rounded-full bg-primary px-4 py-2 text-primary-foreground transition-colors hover:bg-primary/90`),children:`Start App`}),t[38]=p,t[39]=d,t[40]=x):x=t[40];let S;t[41]===s?S=t[42]:(S=s?(0,$.jsx)(cD,{inline:!0}):null,t[41]=s,t[42]=S);let C;return t[43]!==b||t[44]!==x||t[45]!==S?(C=(0,$.jsx)(`div`,{className:`flex flex-1 flex-col items-center justify-center`,children:(0,$.jsxs)(`div`,{className:`flex w-full max-w-3xl flex-col items-center gap-6 px-4`,children:[m,b,x,S]})}),t[43]=b,t[44]=x,t[45]=S,t[46]=C):C=t[46],C}function pD(e,t,n){return e.length+t.length+n}function mD({virtuosoRef:e,selectedThreadId:t,paneId:n,messagesLoaded:r,messageCount:i,isStreaming:a,hasPendingMessage:o}){let s=Vs(),c=(0,Z.useRef)(0),l=(0,Z.useRef)(!1),u=(0,Z.useRef)(!1),d=(0,Z.useRef)(!1),f=(0,Z.useRef)(0),p=(0,Z.useRef)(null),m=(0,Z.useCallback)(()=>{t&&e.current?.getState(e=>{Wo(t,e.scrollTop)})},[t,e]),h=(0,Z.useRef)(m);h.current=m;function g(){d.current&&h.current()}let _=(0,Z.useCallback)(t=>{f.current&&cancelAnimationFrame(f.current),f.current=requestAnimationFrame(()=>{e.current?.scrollTo({top:2**53-1,behavior:t}),f.current=0})},[e]);(0,Z.useEffect)(()=>{function e(){g()}return window.addEventListener(`beforeunload`,e),()=>{window.removeEventListener(`beforeunload`,e)}},[t]),(0,Z.useEffect)(()=>{let e=setInterval(()=>{g()},5e3);return()=>clearInterval(e)},[t]),(0,Z.useEffect)(()=>()=>{p.current&&clearTimeout(p.current)},[]),(0,Z.useEffect)(()=>{u.current=!1,d.current=!1,c.current=0},[t]),(0,Z.useEffect)(()=>{if(!t||!r||i===0||u.current)return;u.current=!0,c.current=i;let n=Ci(t);if(n!==null&&n>0){requestAnimationFrame(()=>{requestAnimationFrame(()=>{e.current?.scrollTo({top:n,behavior:`auto`}),d.current=!0})});return}d.current=!0},[t,r,i,e]),(0,Z.useEffect)(()=>{if(!u.current)return;let e=i>c.current,t=l.current&&!a;return(a||o||e||t)&&_(t?`smooth`:`auto`),c.current=i,l.current=a,()=>{f.current&&=(cancelAnimationFrame(f.current),0)}},[a,o,i,_]),(0,Z.useEffect)(()=>{if(!t||!(a||o))return;let e=As(s.getState().threadStreamingStates,t,n),r=pD(e.streamingContent,e.streamingThinking,e.streamingSegments.length);return s.subscribe(()=>{if(!u.current)return;let e=As(s.getState().threadStreamingStates,t,n),i=pD(e.streamingContent,e.streamingThinking,e.streamingSegments.length);i!==r&&(r=i,_(`auto`))})},[s,t,n,a,o,_]);function v(){p.current&&clearTimeout(p.current),p.current=setTimeout(()=>{g(),p.current=null},150)}function y(e){e||g()}return{onRangeChanged:v,onScrollingStateChange:y}}function hD(e){return e.isCreatingProject||e.streamingSegmentCount>0?!0:e.lastMessageSender===`user`}function gD(e){if(e.isUser)return e.hasCheckpointRef?e.isStreaming||e.hasPendingMessage||e.isCreatingProject||e.isProcessingThread?`Restore unavailable while this thread is still processing.`:`Restore checkpoint`:`Restore unavailable: no checkpoint was created for this prompt.`}function _D(e){return{bottomInset:e.bottomInset,columnClassName:e.columnClassName,isStreaming:e.isStreaming,isCreatingProject:e.isCreatingProject,isProcessingThread:e.isProcessingThread,hasPendingMessage:e.hasPendingMessage,isAutoRouting:e.isAutoRouting,hasActiveToolSession:e.hasActiveToolSession,selectedProjectId:e.selectedProjectId,selectedThreadId:e.selectedThreadId,totalMessages:e.totalMessages,lastMessageSender:e.lastMessageSender,error:e.error,onClearError:e.onClearError,showCheckpointRestore:e.showCheckpointRestore,getCheckpointTooltip:e.getCheckpointTooltip}}function vD(e){let t=(0,Z.forwardRef)((t,n)=>{let r=(0,Q.c)(9),i,a,o;r[0]===t?(i=r[1],a=r[2],o=r[3]):({style:o,children:i,...a}=t,r[0]=t,r[1]=i,r[2]=a,r[3]=o);let s;return r[4]!==i||r[5]!==a||r[6]!==n||r[7]!==o?(s=(0,$.jsx)(`div`,{ref:n,style:o,...a,className:e,children:i}),r[4]=i,r[5]=a,r[6]=n,r[7]=o,r[8]=s):s=r[8],s});return t.displayName=`MessageList`,t}function yD(e,t){return t.length>0||e.isCreatingProject&&!e.hasActiveToolSession||e.isProcessingThread&&(e.isStreaming||e.hasPendingMessage)}function bD(e,t){return e.isAutoRouting?!0:!yD(e,t)||!(e.isStreaming||e.isCreatingProject||e.isProcessingThread)?!1:hD({isCreatingProject:e.isCreatingProject,streamingSegmentCount:t.length,lastMessageSender:e.lastMessageSender})}function xD(e,t){return e.isAutoRouting?!0:!(e.isStreaming||e.hasPendingMessage)||Os(t)?!1:hD({isCreatingProject:e.isCreatingProject,streamingSegmentCount:t.length,lastMessageSender:e.lastMessageSender})}var SD=[];function CD(e){let t=(0,Q.c)(38),{context:n}=e,{paneId:r}=wv(),i;t[0]!==n?.selectedThreadId||t[1]!==r?(i=e=>As(e.threadStreamingStates,n?.selectedThreadId,r),t[0]=n?.selectedThreadId,t[1]=r,t[2]=i):i=t[2];let a=X(i);if(!n)return null;let{bottomInset:o,isCreatingProject:s,isProcessingThread:c,isAutoRouting:l,selectedProjectId:u,selectedThreadId:d,totalMessages:f,error:p,onClearError:m}=n,h=n.isStreaming||s||c?a.streamingSegments:SD,g;t[3]!==n||t[4]!==h?(g=bD(n,h),t[3]=n,t[4]=h,t[5]=g):g=t[5];let _=g,v;t[6]!==n||t[7]!==h?(v=xD(n,h),t[6]=n,t[7]=h,t[8]=v):v=t[8];let y=v,b;t[9]!==l||t[10]!==h?(b=l?null:Ls(Bs(h)),t[9]=l,t[10]=h,t[11]=b):b=t[11];let x=l?ze:b??void 0,S;t[12]===o?S=t[13]:(S={paddingBottom:o},t[12]=o,t[13]=S);let C;t[14]!==l||t[15]!==s||t[16]!==c||t[17]!==h||t[18]!==u||t[19]!==d||t[20]!==_||t[21]!==y||t[22]!==a||t[23]!==f?(C=_&&(0,$.jsx)(ty,{segments:h,model:a.streamingModel,mode:a.streamingAgentMode,threadId:d,projectId:u,isCreatingProject:s,isProcessingThread:c&&!l,totalMessages:f,showProcessingLine:y}),t[14]=l,t[15]=s,t[16]=c,t[17]=h,t[18]=u,t[19]=d,t[20]=_,t[21]=y,t[22]=a,t[23]=f,t[24]=C):C=t[24];let w;t[25]!==x||t[26]!==_||t[27]!==y?(w=y&&(0,$.jsx)(`div`,{className:G(`px-4 pb-4`,_?`pt-0`:`pt-2`),children:(0,$.jsx)(ay,{active:y,label:x})}),t[25]=x,t[26]=_,t[27]=y,t[28]=w):w=t[28];let T;t[29]!==p||t[30]!==m?(T=p&&(0,$.jsxs)(`div`,{className:`mx-4 my-2`,children:[(0,$.jsx)(mo,{variant:`error`,className:`mb-0`,children:p}),(0,$.jsx)(`button`,{type:`button`,className:G(U.compact,`mt-1 text-destructive underline underline-offset-2 hover:text-destructive/80`),onClick:m,children:`Dismiss`})]}),t[29]=p,t[30]=m,t[31]=T):T=t[31];let E;return t[32]!==n.columnClassName||t[33]!==S||t[34]!==C||t[35]!==w||t[36]!==T?(E=(0,$.jsxs)(`div`,{className:n.columnClassName,style:S,children:[C,w,T]}),t[32]=n.columnClassName,t[33]=S,t[34]=C,t[35]=w,t[36]=T,t[37]=E):E=t[37],E}function wD(e,t,n){let r=e===n.totalMessages-1,i=!n.isStreaming&&!n.isProcessingThread&&!n.hasPendingMessage&&!n.isCreatingProject,a=r&&t.sender===`agent`&&!t.isThinking&&i;return(0,$.jsx)(Qv,{message:t,threadId:n.selectedThreadId,messageIndex:e,showCheckpointRestore:n.showCheckpointRestore(t),checkpointRestoreTooltip:n.getCheckpointTooltip(t),showFinalProseCopy:a})}function TD(e){let t=(0,Q.c)(10),{projects:n,projectsLoading:r,onSelectThread:i,onCreateThread:a,onConnectRepo:o,onNewApp:s,onOpenFolder:c}=e,l=`flex min-h-0 flex-1 self-stretch transition-opacity duration-500 ease-in-out ${r?`opacity-0`:`opacity-100`}`,u;t[0]!==o||t[1]!==a||t[2]!==s||t[3]!==c||t[4]!==i||t[5]!==n?(u=(0,$.jsx)(oy,{projects:n,onSelectProject:i,onCreateThread:a,onConnectRepo:o,onNewApp:s,onOpenFolder:c}),t[0]=o,t[1]=a,t[2]=s,t[3]=c,t[4]=i,t[5]=n,t[6]=u):u=t[6];let d;return t[7]!==l||t[8]!==u?(d=(0,$.jsx)(`div`,{className:`flex h-full min-h-0 flex-1 flex-col items-center overflow-hidden`,children:(0,$.jsx)(`div`,{className:l,children:u})}),t[7]=l,t[8]=u,t[9]=d):d=t[9],d}function ED(e){let t=(0,Q.c)(2),{project:n}=e,r;return t[0]===n?r=t[1]:(r=(0,$.jsx)(fD,{project:n}),t[0]=n,t[1]=r),r}function DD(e){let t=(0,Q.c)(19),{composerPhase:n,selectedThreadId:r,virtuosoRef:i,scrollParent:a,onScrollParentChange:o,messages:s,virtuosoContext:c,virtuosoComponents:l,onAtBottomChange:u,onAtTopChange:d,onRangeChanged:f,onScrollingStateChange:p}=e,m=n===`moving-to-footer`&&`animate-in fade-in duration-300 ease-out`,h;t[0]===m?h=t[1]:(h=G(`h-full overflow-hidden`,m),t[0]=m,t[1]=h);let g=r??void 0,_=a??void 0,v;t[2]!==s||t[3]!==u||t[4]!==d||t[5]!==f||t[6]!==p||t[7]!==g||t[8]!==_||t[9]!==l||t[10]!==c||t[11]!==i?(v=(0,$.jsx)(hr,{ref:i,customScrollParent:_,data:s,computeItemKey:OD,context:c,itemContent:wD,overscan:500,components:l,atBottomStateChange:u,atTopStateChange:d,rangeChanged:f,isScrolling:p},g),t[2]=s,t[3]=u,t[4]=d,t[5]=f,t[6]=p,t[7]=g,t[8]=_,t[9]=l,t[10]=c,t[11]=i,t[12]=v):v=t[12];let y;t[13]!==o||t[14]!==v?(y=(0,$.jsx)(za,{className:`h-full`,viewportRef:o,children:v}),t[13]=o,t[14]=v,t[15]=y):y=t[15];let b;return t[16]!==h||t[17]!==y?(b=(0,$.jsx)(`div`,{className:h,children:y}),t[16]=h,t[17]=y,t[18]=b):b=t[18],b}function OD(e,t){return t.messageId}function kD(e){return!e.hideEmptyState&&e.messageCount===0&&!e.isStreaming&&!e.isCreatingProject&&!e.selectedThreadId}function AD(e){return!e.hideEmptyState&&e.messagesLoaded&&e.messageCount===0&&!e.isStreaming&&!e.isCreatingProject&&!e.isProcessingThread&&!e.hasPendingMessage&&!!e.selectedThreadId}function jD(e){let t=e.projects.find(t=>t.projectId===e.selectedProjectId);return{showWelcome:kD(e),showEmptyThreadPlaceholder:AD(e),selectedProject:t}}var MD=(0,Z.forwardRef)(function(e,t){let n=(0,Q.c)(75),{bottomInset:r,messages:i,isStreaming:a,isCreatingProject:o,isProcessingThread:s,hasPendingMessage:c,isAutoRouting:l,selectedThreadId:u,selectedProjectId:d,projects:f,projectsLoading:p,messagesLoaded:m,onSelectThread:h,onCreateThread:g,onConnectRepo:_,onNewApp:v,onOpenFolder:y,error:b,onClearError:x,onAtBottomChange:S,onAtTopChange:C,hideEmptyState:w}=e,T=r===void 0?0:r,E=w===void 0?!1:w,{fillPane:D,paneId:O}=wv(),k=oC(),A;n[0]===D?A=n[1]:(A=fy(D),n[0]=D,n[1]=A);let j=A,M;n[2]===u?M=n[3]:(M=e=>u?!!e.threadToolSessions[u]:!1,n[2]=u,n[3]=M);let N=X(M),[P,F]=(0,Z.useState)(null),I=(0,Z.useRef)(null),L;n[4]===j?L=n[5]:(L=vD(j),n[4]=j,n[5]=L);let R;n[6]===L?R=n[7]:(R={List:L,Footer:CD},n[6]=L,n[7]=R);let z=R,B;n[8]===Symbol.for(`react.memo_cache_sentinel`)?(B=()=>({scrollToBottom:()=>{I.current?.scrollTo({top:2**53-1,behavior:`smooth`})},scrollToTop:()=>{I.current?.scrollTo({top:0,behavior:`smooth`})}}),n[8]=B):B=n[8],(0,Z.useImperativeHandle)(t,B);let V;n[9]!==c||n[10]!==a||n[11]!==i.length||n[12]!==m||n[13]!==O||n[14]!==u?(V={virtuosoRef:I,selectedThreadId:u,paneId:O,messagesLoaded:m,messageCount:i.length,isStreaming:a,hasPendingMessage:c},n[9]=c,n[10]=a,n[11]=i.length,n[12]=m,n[13]=O,n[14]=u,n[15]=V):V=n[15];let{onRangeChanged:H,onScrollingStateChange:ee}=mD(V),te;n[16]!==c||n[17]!==E||n[18]!==o||n[19]!==s||n[20]!==a||n[21]!==i.length||n[22]!==m||n[23]!==f||n[24]!==d||n[25]!==u?(te=jD({hideEmptyState:E,messagesLoaded:m,messageCount:i.length,isStreaming:a,isCreatingProject:o,isProcessingThread:s,hasPendingMessage:c,selectedThreadId:u,selectedProjectId:d,projects:f}),n[16]=c,n[17]=E,n[18]=o,n[19]=s,n[20]=a,n[21]=i.length,n[22]=m,n[23]=f,n[24]=d,n[25]=u,n[26]=te):te=n[26];let{showWelcome:ne,showEmptyThreadPlaceholder:re,selectedProject:ie}=te,ae=i.length>0?i[i.length-1].sender:null,oe;n[27]!==c||n[28]!==o||n[29]!==s||n[30]!==a?(oe=function(e){return e.sender===`user`&&!!e.checkpointRef&&!a&&!c&&!o&&!s},n[27]=c,n[28]=o,n[29]=s,n[30]=a,n[31]=oe):oe=n[31];let se=oe,U;n[32]!==c||n[33]!==o||n[34]!==s||n[35]!==a?(U=function(e){return gD({isUser:e.sender===`user`,hasCheckpointRef:!!e.checkpointRef,isStreaming:a,hasPendingMessage:c,isCreatingProject:o,isProcessingThread:s})},n[32]=c,n[33]=o,n[34]=s,n[35]=a,n[36]=U):U=n[36];let ce=U,le;n[37]!==T||n[38]!==j||n[39]!==b||n[40]!==ce||n[41]!==N||n[42]!==c||n[43]!==l||n[44]!==o||n[45]!==s||n[46]!==a||n[47]!==ae||n[48]!==i.length||n[49]!==x||n[50]!==d||n[51]!==u||n[52]!==se?(le=_D({bottomInset:T,columnClassName:j,isStreaming:a,isCreatingProject:o,isProcessingThread:s,hasPendingMessage:c,isAutoRouting:l,selectedProjectId:d,selectedThreadId:u,totalMessages:i.length,lastMessageSender:ae,error:b,onClearError:x,hasActiveToolSession:N,showCheckpointRestore:se,getCheckpointTooltip:ce}),n[37]=T,n[38]=j,n[39]=b,n[40]=ce,n[41]=N,n[42]=c,n[43]=l,n[44]=o,n[45]=s,n[46]=a,n[47]=ae,n[48]=i.length,n[49]=x,n[50]=d,n[51]=u,n[52]=se,n[53]=le):le=n[53];let ue=le;if(ne){let e;return n[54]!==_||n[55]!==g||n[56]!==v||n[57]!==y||n[58]!==h||n[59]!==f||n[60]!==p?(e=(0,$.jsx)(TD,{projects:f,projectsLoading:p,onSelectThread:h,onCreateThread:g,onConnectRepo:_,onNewApp:v,onOpenFolder:y}),n[54]=_,n[55]=g,n[56]=v,n[57]=y,n[58]=h,n[59]=f,n[60]=p,n[61]=e):e=n[61],e}if(re){let e;return n[62]===ie?e=n[63]:(e=(0,$.jsx)(ED,{project:ie}),n[62]=ie,n[63]=e),e}let W;return n[64]!==k||n[65]!==i||n[66]!==S||n[67]!==C||n[68]!==H||n[69]!==ee||n[70]!==P||n[71]!==u||n[72]!==z||n[73]!==ue?(W=(0,$.jsx)(DD,{composerPhase:k,selectedThreadId:u,virtuosoRef:I,scrollParent:P,onScrollParentChange:F,messages:i,virtuosoContext:ue,virtuosoComponents:z,onAtBottomChange:S,onAtTopChange:C,onRangeChanged:H,onScrollingStateChange:ee}),n[64]=k,n[65]=i,n[66]=S,n[67]=C,n[68]=H,n[69]=ee,n[70]=P,n[71]=u,n[72]=z,n[73]=ue,n[74]=W):W=n[74],W}),ND=Ut(`app.use-pane-chat-history.hook`);function PD(e){let t=(0,Q.c)(9),{paneId:n,conversationId:r}=e,i=Ks(),a=X(FD),o;t[0]===n?o=t[1]:(o=e=>n===Ms||!!e.extraChatPanes[n],t[0]=n,t[1]=o);let s=X(o),c,l;t[2]!==r||t[3]!==i||t[4]!==s||t[5]!==n||t[6]!==a?(c=()=>{if(n===Ms||!s||!a||!r)return;let e=a,t=r,o=n,c=!1;return(async function(){try{let n=await ci(e,t);if(c)return;i({type:Y.SetPaneMessages,paneId:o,messages:n.messages})}catch(e){let t=e;ND.error(`Failed to load pane chat history:`,t),c||i({type:Y.SetPaneMessages,paneId:o,messages:[]})}})(),()=>{c=!0}},l=[r,i,s,n,a],t[2]=r,t[3]=i,t[4]=s,t[5]=n,t[6]=a,t[7]=c,t[8]=l):(c=t[7],l=t[8]),(0,Z.useEffect)(c,l)}function FD(e){return e.selectedThreadId}var ID=4,LD=8,RD=64,zD=`(max-width: 767px)`;function BD(){return window.matchMedia(zD).matches?ID:RD}function VD(e,t){let n=e.getBoundingClientRect().bottom,r=t.getBoundingClientRect().top,i=t.querySelector(`[data-chat-toolbar]`);i&&i.getBoundingClientRect().height>0&&(r=Math.min(r,i.getBoundingClientRect().top));let a=Math.max(0,Math.ceil(n-r)),o=window.matchMedia(zD).matches?ID:0,s=window.matchMedia(zD).matches?0:LD;return Math.max(a+o+s,BD())}function HD(e,t,n){let r=(0,Q.c)(5),[i,a]=(0,Z.useState)(0),o,s;return r[0]!==t||r[1]!==e||r[2]!==n?(o=()=>{if(!n){a(0);return}let r=e.current,i=t.current;if(!r||!i){a(BD());return}let o=function(){let n=e.current,r=t.current;!n||!r||a(VD(n,r))};o();let s=new ResizeObserver(o);s.observe(r),s.observe(i);let c=i.querySelector(`[data-chat-toolbar]`);c&&s.observe(c);let l=new MutationObserver(o);l.observe(i,{childList:!0,subtree:!0,attributes:!0,attributeFilter:[`class`,`style`,`hidden`]}),window.addEventListener(`resize`,o);let u=window.visualViewport;return u?.addEventListener(`resize`,o),u?.addEventListener(`scroll`,o),()=>{s.disconnect(),l.disconnect(),window.removeEventListener(`resize`,o),u?.removeEventListener(`resize`,o),u?.removeEventListener(`scroll`,o)}},s=[e,t,n],r[0]=t,r[1]=e,r[2]=n,r[3]=o,r[4]=s):(o=r[3],s=r[4]),(0,Z.useEffect)(o,s),i}var UD=Ut(`app.chat-pane.ui`);function WD(e,t){let n=(0,Q.c)(42),r=Ks(),{paneErrors:i,setPaneError:a}=bv(),o=X(rO),s=X(nO),c=X(tO),l=X(eO),u=X($D),d=X(QD),f=X(ZD),p=X(XD),m=X(YD),h=X(JD),g;n[0]!==e||n[1]!==o?(g=t=>o?As(t.threadStreamingStates,o,e).isStreaming:!1,n[0]=e,n[1]=o,n[2]=g):g=n[2];let _=X(g),v;n[3]!==e||n[4]!==o?(v=t=>Ys(t.pendingAutoRoutes,o,e),n[3]=e,n[4]=o,n[5]=v):v=n[5];let y=X(v),b=X(qD),x=X(KD),S=X(GD),C;n[6]!==t||n[7]!==e?(C={paneId:e,conversationId:t},n[6]=t,n[7]=e,n[8]=C):C=n[8],PD(C);let w;n[9]!==x||n[10]!==e||n[11]!==b?(w=e===`primary`?b:x[e]?.messages??[],n[9]=x,n[10]=e,n[11]=b,n[12]=w):w=n[12];let T=w,E;n[13]!==y||n[14]!==T?(E=y?[...T,Zy(y)]:T,n[13]=y,n[14]=T,n[15]=E):E=n[15];let D=E,O=e===`primary`?S:x[e]?.messagesLoaded??!1,k;n[16]!==f||n[17]!==e||n[18]!==d||n[19]!==o?(k=vs(f,d,o,e),n[16]=f,n[17]=e,n[18]=d,n[19]=o,n[20]=k):k=n[20];let A=k,j;n[21]!==i||n[22]!==e||n[23]!==o?(j=o?i[Es(o,e)]??null:null,n[21]=i,n[22]=e,n[23]=o,n[24]=j):j=n[24];let M=j,N=e===`primary`&&h?.threadId===o,P;return n[25]!==m||n[26]!==r||n[27]!==p||n[28]!==N||n[29]!==A||n[30]!==u||n[31]!==D||n[32]!==O||n[33]!==M||n[34]!==_||n[35]!==y||n[36]!==c||n[37]!==l||n[38]!==s||n[39]!==o||n[40]!==a?(P={dispatch:r,setPaneError:a,selectedThreadId:o,selectedProjectId:s,projects:c,projectsLoading:l,isCreatingProject:u,pendingAutoRoute:y,messages:D,messagesLoaded:O,hasProcessingThread:A,paneError:M,hasPendingMessage:N,paneIsStreaming:_,focusedPaneId:p,completedPaneIds:m},n[25]=m,n[26]=r,n[27]=p,n[28]=N,n[29]=A,n[30]=u,n[31]=D,n[32]=O,n[33]=M,n[34]=_,n[35]=y,n[36]=c,n[37]=l,n[38]=s,n[39]=o,n[40]=a,n[41]=P):P=n[41],P}function GD(e){return e.messagesLoaded}function KD(e){return e.extraChatPanes}function qD(e){return e.messages}function JD(e){return e.pendingChatMessage}function YD(e){return e.completedPaneIds}function XD(e){return e.focusedPane}function ZD(e){return e.activeStreamPane}function QD(e){return e.processingThreadIds}function $D(e){return e.isCreatingProject}function eO(e){return e.projectsLoading}function tO(e){return e.projects}function nO(e){return e.selectedProjectId}function rO(e){return e.selectedThreadId}function iO(e){let t=(0,Q.c)(5),{messagesRef:n,isVisible:r}=e;if(!r)return null;let i;t[0]===n?i=t[1]:(i=()=>n.current?.scrollToTop(),t[0]=n,t[1]=i);let a;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(a=(0,$.jsx)(Yt,{className:`h-4 w-4`}),t[2]=a):a=t[2];let o;return t[3]===i?o=t[4]:(o=(0,$.jsx)(`div`,{className:`pointer-events-none absolute inset-x-0 top-3 z-20 flex justify-center`,children:(0,$.jsx)(Hr,{variant:`outline`,size:`icon-md`,onClick:i,className:`pointer-events-auto bg-background shadow-md`,"aria-label":`Scroll to top`,children:a})}),t[3]=i,t[4]=o),o}function aO(e){let t=(0,Q.c)(8),{messagesRef:n,isVisible:r,usesOverlayInput:i}=e;if(!r)return null;let a=`pointer-events-none absolute inset-x-0 z-20 flex justify-center ${i?`bottom-24`:`bottom-2`}`,o;t[0]===n?o=t[1]:(o=()=>n.current?.scrollToBottom(),t[0]=n,t[1]=o);let s;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,$.jsx)(tn,{className:`h-4 w-4`}),t[2]=s):s=t[2];let c;t[3]===o?c=t[4]:(c=(0,$.jsx)(Hr,{variant:`outline`,size:`icon-md`,onClick:o,className:`pointer-events-auto bg-background shadow-md`,"aria-label":`Scroll to bottom`,children:s}),t[3]=o,t[4]=c);let l;return t[5]!==a||t[6]!==c?(l=(0,$.jsx)(`div`,{className:a,children:c}),t[5]=a,t[6]=c,t[7]=l):l=t[7],l}function oO({paneId:e,conversationId:t,onCreateThread:n,showEmptyState:r=e===`primary`,fillPane:i=!1,hideInput:a=!0,onConnectRepo:o=()=>{},onNewApp:s=()=>{},onOpenFolder:c=()=>{}}){let{dispatch:l,setPaneError:u,selectedThreadId:d,selectedProjectId:f,projects:p,projectsLoading:m,isCreatingProject:h,pendingAutoRoute:g,messages:_,messagesLoaded:v,hasProcessingThread:y,paneError:b,hasPendingMessage:x,paneIsStreaming:S,focusedPaneId:C,completedPaneIds:w}=WD(e,t),T=(0,Z.useRef)(null),E=(0,Z.useRef)(null),D=aC(),O=D?.overlayRef??{current:null},[k,A]=(0,Z.useState)(!0),[j,M]=(0,Z.useState)(!0),N=a&&!!d&&!!D,P=N&&D.placement===`overlay`,F=HD(T,O,N),I=N&&!k;function L(){l({type:Y.CloseSidebar})}function R(){C!==e&&w.includes(e)&&l({type:Y.ClearPaneCompleted,paneId:e}),l({type:Y.SetFocusedPane,paneId:e})}function z(e,t){L(),l({type:Y.SelectThread,projectId:e,threadId:t}),No().then(e=>{l({type:Y.SetProcessingThreads,threadIds:e})}).catch(e=>{UD.error(`Failed to refresh processing threads after thread selection:`,e)})}return(0,$.jsx)(Sv,{paneId:e,conversationId:t,fillPane:i,children:(0,$.jsxs)(`div`,{ref:T,className:`relative flex h-full min-w-0 flex-col`,onPointerDown:R,children:[(0,$.jsx)(MD,{ref:E,bottomInset:F,messages:_,isStreaming:S,isCreatingProject:r?h:!1,isProcessingThread:y,hasPendingMessage:x,isAutoRouting:!!g,selectedThreadId:d,selectedProjectId:f,projects:p,projectsLoading:m,messagesLoaded:v,onSelectThread:z,onCreateThread:n,onConnectRepo:o,onNewApp:s,onOpenFolder:c,error:b,onClearError:()=>{d&&u(d,e,null)},onAtBottomChange:A,onAtTopChange:M,hideEmptyState:!r}),(0,$.jsx)(iO,{messagesRef:E,isVisible:!j&&_.length>0}),(0,$.jsx)(aO,{messagesRef:E,isVisible:I,usesOverlayInput:P})]})})}var sO=/^#([0-9a-f]{6})$/i;function cO(e){return sO.test(e)}function lO(e){return cO(e)?e.toLowerCase():null}function uO(e){let t=sO.exec(e);if(!t)return null;let n=Number.parseInt(t[1],16);return{r:n>>16&255,g:n>>8&255,b:n&255}}function dO(e){let t=uO(e);return t?.2126*t.r+.7152*t.g+.0722*t.b:null}function fO(e){let t=uO(e);if(!t)return null;let n=t.r/255,r=t.g/255,i=t.b/255,a=Math.max(n,r,i),o=Math.min(n,r,i),s=a-o,c=(a+o)/2,l=0,u=0;if(s!==0){switch(u=s/(1-Math.abs(2*c-1)),a){case n:l=(r-i)/s%6;break;case r:l=(i-n)/s+2;break;default:l=(n-r)/s+4;break}l*=60,l<0&&(l+=360)}return`${Math.round(l)} ${Math.round(u*100)}% ${Math.round(c*100)}%`}var pO=`--wallpaper-color`,mO={mode:la(),color:Wa()},hO=new Set;function gO(){for(let e of hO)e()}function _O(e){let t=dO(e);return al(t===null?0:t)}function vO(e){if(document.documentElement.dataset.wallpaper=e.mode,document.documentElement.style.setProperty(pO,e.color),e.mode===`color`){let{foreground:t,inverse:n}=_O(e.color);ol(t,n)}}function yO(){return mO}function bO(e){return hO.add(e),function(){hO.delete(e)}}function xO(e){mO.mode!==e&&(mO={...mO,mode:e},Li(e),vO(mO),gO())}function SO(e){let t=lO(e);t===null||mO.color===t||(mO={...mO,color:t},Yo(t),vO(mO),gO())}function CO(){let e=(0,Q.c)(3),t=(0,Z.useSyncExternalStore)(bO,yO,yO),n=EO,r=TO,i=wO,a;return e[0]!==t.color||e[1]!==t.mode?(a={mode:t.mode,color:t.color,updateMode:n,updateColor:r,reset:i,defaultMode:`background`,defaultColor:fi},e[0]=t.color,e[1]=t.mode,e[2]=a):a=e[2],a}function wO(){mO={mode:`background`,color:fi},Li(`background`),Yo(fi),vO(mO),gO()}function TO(e){SO(e)}function EO(e){xO(e)}function DO(){mO={mode:la(),color:Wa()},vO(mO)}function OO(){return typeof window>`u`?null:De(window.location.search)}function kO(){return typeof window>`u`?null:Ce(window.location.search)}function AO(){return OO()===w}var jO=(0,Z.lazy)(()=>us(()=>import(`./terminal-panel-DCaBWV04.js`).then(e=>({default:e.TerminalPanel})),__vite__mapDeps([12,1,4,5,13,14,15,16,17]))),MO=(0,Z.lazy)(()=>us(()=>import(`./diff-view-Cxf7v9t1.js`),__vite__mapDeps([18,1,19,20,4,5,21,22,23,24,25,14,26,27]))),NO=(0,Z.lazy)(()=>us(()=>import(`./explorer-tab-view-LkT0bDcR.js`),__vite__mapDeps([28,1,19,20,4,5,21,22,29,30,14]))),PO=(0,Z.lazy)(()=>us(()=>import(`./browser-tab--1iEoJGu.js`).then(e=>({default:e.BrowserTab})),__vite__mapDeps([31,1,4,5,29,16,13,14]))),FO=(0,Z.lazy)(()=>us(()=>import(`./tasks-view-DgkXglqW.js`).then(e=>({default:e.TasksView})),__vite__mapDeps([32,1,19,20,33,4,5,21,22,13,14,25,34])));function IO(e){let t=(0,Q.c)(24),{panelId:n,instanceId:r,onClose:i}=e,a=X(zO),o=X(RO),s;t[0]===r?s=t[1]:(s=e=>gs(e,r),t[0]=r,t[1]=s);let c=X(s),{reviewRefreshTickByThread:l,tasksRefreshTick:u}=mc();if(n===`chat`){let e;return t[2]!==c||t[3]!==r?(e=(0,$.jsx)(oO,{paneId:r,fillPane:!0,conversationId:c,onCreateThread:LO,showEmptyState:!1,hideInput:!0}),t[2]=c,t[3]=r,t[4]=e):e=t[4],e}if(n===`terminal`){let e;return t[5]===r?e=t[6]:(e=(0,$.jsx)(Z.Suspense,{fallback:null,children:(0,$.jsx)(jO,{instanceId:r})}),t[5]=r,t[6]=e),e}if(n===`browser`){let e;return t[7]===r?e=t[8]:(e=(0,$.jsx)(Z.Suspense,{fallback:null,children:(0,$.jsx)(PO,{instanceId:r})}),t[7]=r,t[8]=e),e}if(n===`explorer`){if(!a){let e;return t[9]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,$.jsx)(BO,{message:`Select a conversation to browse files.`}),t[9]=e):e=t[9],e}let e;return t[10]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,$.jsx)(Z.Suspense,{fallback:(0,$.jsx)(rs,{}),children:(0,$.jsx)(NO,{})}),t[10]=e):e=t[10],e}if(n===`tasks`){if(!o){let e;return t[11]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,$.jsx)(BO,{message:`Select a project to view tasks.`}),t[11]=e):e=t[11],e}let e;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,$.jsx)(rs,{}),t[12]=e):e=t[12];let n;return t[13]!==o||t[14]!==u?(n=(0,$.jsx)(Z.Suspense,{fallback:e,children:(0,$.jsx)(FO,{projectId:o,refreshTrigger:u})}),t[13]=o,t[14]=u,t[15]=n):n=t[15],n}if(!a){let e;return t[16]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,$.jsx)(BO,{message:`Select a conversation to review changes.`}),t[16]=e):e=t[16],e}let d=l[a]??0,f;t[17]!==i||t[18]!==a||t[19]!==d?(f=(0,$.jsx)(Z.Suspense,{fallback:null,children:(0,$.jsx)(MO,{threadId:a,onExit:i,refreshTrigger:d})}),t[17]=i,t[18]=a,t[19]=d,t[20]=f):f=t[20];let p;return t[21]!==a||t[22]!==f?(p=(0,$.jsx)(Pd,{threadId:a,children:f}),t[21]=a,t[22]=f,t[23]=p):p=t[23],p}function LO(){}function RO(e){return e.selectedProjectId}function zO(e){return e.selectedThreadId}function BO(e){let t=(0,Q.c)(2),{message:n}=e,r;return t[0]===n?r=t[1]:(r=(0,$.jsx)(`div`,{className:`flex h-full items-center justify-center p-4 text-center text-muted-foreground`,children:n}),t[0]=n,t[1]=r),r}function VO(e){let t=(0,Q.c)(21),{title:n,titleSuffix:r,titleActions:i,showTitle:a,selected:o,onSelect:s,onTitleDoubleClick:c,onClose:l,disableClose:u,footer:d,children:f,className:p}=e,m=o===void 0?!1:o,h=u===void 0?!1:u,g=m&&`outline outline-2 outline-offset-1 outline-brand`,_;t[0]!==p||t[1]!==g?(_=G(`flex h-full min-h-0 flex-col bg-background`,p,g),t[0]=p,t[1]=g,t[2]=_):_=t[2];let v;t[3]!==h||t[4]!==l||t[5]!==c||t[6]!==a||t[7]!==n||t[8]!==i||t[9]!==r?(v=a?(0,$.jsxs)(`div`,{className:`flex shrink-0 items-center justify-between gap-2 border-b border-border px-2 py-2.5`,onDoubleClick:c,children:[(0,$.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1 px-1`,children:[(0,$.jsx)(`span`,{className:G(U.label,`min-w-0 truncate leading-normal`),children:n}),r&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`span`,{className:G(U.label,`shrink-0 text-muted-foreground leading-normal`),children:`–`}),r]})]}),(i||l)&&(0,$.jsxs)(`div`,{className:`flex items-center gap-0.5`,children:[i,l?(0,$.jsxs)(Hr,{type:`button`,variant:`ghost`,size:`icon-sm`,className:`text-muted-foreground`,onClick:l,onDoubleClick:HO,disabled:h,children:[(0,$.jsx)(nt,{className:`h-4 w-4`}),(0,$.jsxs)(`span`,{className:`sr-only`,children:[`Close `,n]})]}):null]})]}):null,t[3]=h,t[4]=l,t[5]=c,t[6]=a,t[7]=n,t[8]=i,t[9]=r,t[10]=v):v=t[10];let y;t[11]===f?y=t[12]:(y=(0,$.jsx)(`div`,{className:`min-h-0 flex-1 overflow-hidden`,children:f}),t[11]=f,t[12]=y);let b;t[13]===d?b=t[14]:(b=d?(0,$.jsx)(`div`,{className:`shrink-0`,children:d}):null,t[13]=d,t[14]=b);let x;return t[15]!==s||t[16]!==_||t[17]!==v||t[18]!==y||t[19]!==b?(x=(0,$.jsxs)(`div`,{className:_,onPointerDown:s,children:[v,y,b]}),t[15]=s,t[16]=_,t[17]=v,t[18]=y,t[19]=b,t[20]=x):x=t[20],x}function HO(e){return e.stopPropagation()}var UO=[{id:`chat`,label:`Chat`,icon:At},{id:`explorer`,label:`Files`,icon:fn},{id:`browser`,label:`Browser`,icon:R},{id:`terminal`,label:`Terminal`,icon:le},{id:`tasks`,label:`Tasks`,icon:Ge},{id:`review`,label:`Review`,icon:g}];function WO(e){return UO.find(t=>t.id===e)?.label??e}function GO(e){return e?.trim()||WO(`browser`)}function KO(e){return UO.find(t=>t.id===e)?.icon??At}var qO=(0,Z.createContext)(void 0);function JO(e){let t=(0,Q.c)(5),{children:n}=e,[r,i]=(0,Z.useState)(null),a;t[0]===r?a=t[1]:(a={stats:r,setStats:i},t[0]=r,t[1]=a);let o;return t[2]!==n||t[3]!==a?(o=(0,$.jsx)(qO.Provider,{value:a,children:n}),t[2]=n,t[3]=a,t[4]=o):o=t[4],o}function YO(){let e=(0,Z.useContext)(qO);if(e===void 0)throw Error(`useReviewStats must be used within a ReviewStatsProvider`);return e}var XO=(0,Z.createContext)(void 0);function ZO(e){let t=(0,Q.c)(5),{children:n}=e,[r,i]=(0,Z.useState)(null),a;t[0]===r?a=t[1]:(a={actions:r,setActions:i},t[0]=r,t[1]=a);let o;return t[2]!==n||t[3]!==a?(o=(0,$.jsx)(XO.Provider,{value:a,children:n}),t[2]=n,t[3]=a,t[4]=o):o=t[4],o}function QO(){let e=(0,Z.useContext)(XO);if(e===void 0)throw Error(`useChatDockTitleActions must be used within a ChatDockTitleActionsProvider`);return e}var $O=(0,Z.createContext)(null);function ek(e){let t=(0,Q.c)(13),{children:n}=e,[r,i]=(0,Z.useState)(0),[a,o]=(0,Z.useState)(null),[s,c]=(0,Z.useState)(`desktop`),[l,u]=(0,Z.useState)(!1),[d,f]=(0,Z.useState)(!1),[p,m]=(0,Z.useState)(null),[h,g]=(0,Z.useState)(!1),[_,v]=(0,Z.useState)(null),y;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(y=()=>{i(tk)},t[0]=y):y=t[0];let b=y,x;t[1]!==_||t[2]!==s||t[3]!==a||t[4]!==r||t[5]!==d||t[6]!==l||t[7]!==h||t[8]!==p?(x={browserResetTrigger:r,triggerBrowserReset:b,browserPageTitle:a,setBrowserPageTitle:o,browserDeviceMode:s,setBrowserDeviceMode:c,isSelectModeEnabled:l,setIsSelectModeEnabled:u,isEditModeEnabled:d,setIsEditModeEnabled:f,selectedBrowserElement:p,setSelectedBrowserElement:m,isSelectionPromptOpen:h,setIsSelectionPromptOpen:g,browserAgentProcessingThreadId:_,setBrowserAgentProcessingThreadId:v},t[1]=_,t[2]=s,t[3]=a,t[4]=r,t[5]=d,t[6]=l,t[7]=h,t[8]=p,t[9]=x):x=t[9];let S=x,C;return t[10]!==n||t[11]!==S?(C=(0,$.jsx)($O.Provider,{value:S,children:n}),t[10]=n,t[11]=S,t[12]=C):C=t[12],C}function tk(e){return e+1}function nk(){let e=(0,Z.useContext)($O);if(!e)throw Error(`useBrowserTab must be used within a BrowserTabProvider`);return e}function rk(){let e=(0,Q.c)(12),{stats:t}=YO();if(!t||t.fileCount===0)return null;let n;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(n=G(U.label,`flex items-center gap-1 truncate leading-normal`),e[0]=n):n=e[0];let r=t.fileCount===1?``:`s`,i;e[1]!==t.fileCount||e[2]!==r?(i=(0,$.jsxs)(`span`,{className:`text-muted-foreground`,children:[t.fileCount,` file`,r]}),e[1]=t.fileCount,e[2]=r,e[3]=i):i=e[3];let a;e[4]===t.additions?a=e[5]:(a=(0,$.jsxs)(`span`,{className:`text-green-500`,children:[`+`,t.additions]}),e[4]=t.additions,e[5]=a);let o;e[6]===t.deletions?o=e[7]:(o=(0,$.jsxs)(`span`,{className:`text-red-500`,children:[`-`,t.deletions]}),e[6]=t.deletions,e[7]=o);let s;return e[8]!==i||e[9]!==a||e[10]!==o?(s=(0,$.jsxs)(`span`,{className:n,children:[i,a,o]}),e[8]=i,e[9]=a,e[10]=o,e[11]=s):s=e[11],s}function ik({panelId:e,instanceId:t,projects:n,selectedThreadId:r,browserPageTitle:i,tasksModifiedCount:a}){return e===`chat`?Lt(n,r,t):e===`browser`?GO(i):e===`tasks`?a>0?`Tasks (${a} modified recently)`:`Tasks`:WO(e)}function ak({panelId:e,selectedThreadId:t,triggerReviewRefresh:n,triggerExplorerRefresh:r}){if(e===`review`&&t)return(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(Hr,{variant:`ghost`,size:`icon-sm`,className:`text-muted-foreground`,onClick:()=>n(t),children:[(0,$.jsx)(ye,{className:`h-3.5 w-3.5`}),(0,$.jsx)(`span`,{className:`sr-only`,children:`Refresh`})]})}),(0,$.jsx)(Fr,{children:`Refresh changes`})]});if(e===`explorer`)return(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(Hr,{variant:`ghost`,size:`icon-sm`,className:`text-muted-foreground`,onClick:r,children:[(0,$.jsx)(D,{className:`h-3.5 w-3.5`}),(0,$.jsx)(`span`,{className:`sr-only`,children:`Refresh`})]})}),(0,$.jsx)(Fr,{children:`Refresh`})]})}function ok(e){let t=(0,Q.c)(48),{instanceId:n,panelId:r}=e,i=Ks(),{closeWindow:a,expandWindow:o,collapseLayout:s,isLayoutExpanded:c,selectedWindowId:l,selectWindow:u,revealWindow:d}=gc(),f=X(lk),p=X(ck),m=X(sk),h;t[0]!==n||t[1]!==r?(h=e=>r===`chat`&&As(e.threadStreamingStates,e.selectedThreadId,n).isStreaming,t[0]=n,t[1]=r,t[2]=h):h=t[2];let g=X(h),{triggerReviewRefresh:_}=mc(),{triggerExplorerRefresh:v}=vc(),{browserPageTitle:y}=nk(),b=r===`chat`,x=r===`tasks`,S,C;if(t[3]!==y||t[4]!==n||t[5]!==r||t[6]!==f||t[7]!==m||t[8]!==p){let e;t[11]===m?e=t[12]:(e=e=>e.projectId===m,t[11]=m,t[12]=e),C=f.find(e)?.tasksModifiedCount??0,S=ik({panelId:r,instanceId:n,projects:f,selectedThreadId:p,browserPageTitle:y,tasksModifiedCount:C}),t[3]=y,t[4]=n,t[5]=r,t[6]=f,t[7]=m,t[8]=p,t[9]=S,t[10]=C}else S=t[9],C=t[10];let w=S,T=!c&&l===n,{actions:E}=QO(),D;t[13]===r?D=t[14]:(D=r===`review`?(0,$.jsx)(rk,{}):void 0,t[13]=r,t[14]=D);let O=D,k;t[15]!==r||t[16]!==p||t[17]!==v||t[18]!==_?(k=ak({panelId:r,selectedThreadId:p,triggerReviewRefresh:_,triggerExplorerRefresh:v}),t[15]=r,t[16]=p,t[17]=v,t[18]=_,t[19]=k):k=t[19];let A=k??E,j;if(t[20]!==a||t[21]!==i||t[22]!==n||t[23]!==x||t[24]!==m||t[25]!==C){j=function(){x&&m&&C>0&&e(m),a(n)};async function e(e){try{await Ua(e),Si();let t=await lo();i({type:Y.SetProjects,projects:t.projects,cloneRootPath:t.cloneRootPath})}catch{try{Si();let e=await lo();i({type:Y.SetProjects,projects:e.projects,cloneRootPath:e.cloneRootPath})}catch{}}}t[20]=a,t[21]=i,t[22]=n,t[23]=x,t[24]=m,t[25]=C,t[26]=j}else j=t[26];let M;t[27]!==i||t[28]!==n||t[29]!==b||t[30]!==d||t[31]!==u?(M=function(){u(n),d(n),b&&i({type:Y.SetFocusedPane,paneId:n})},t[27]=i,t[28]=n,t[29]=b,t[30]=d,t[31]=u,t[32]=M):M=t[32];let N=M,P;t[33]!==s||t[34]!==o||t[35]!==N||t[36]!==n||t[37]!==c?(P=function(){if(c){s();return}N(),o(n)},t[33]=s,t[34]=o,t[35]=N,t[36]=n,t[37]=c,t[38]=P):P=t[38];let F=P,I;return t[39]!==j||t[40]!==N||t[41]!==F||t[42]!==g||t[43]!==w||t[44]!==T||t[45]!==A||t[46]!==O?(I={label:w,selected:T,isPaneStreaming:g,titleSuffix:O,titleActions:A,handleClose:j,handleSelect:N,handleTitleDoubleClick:F},t[39]=j,t[40]=N,t[41]=F,t[42]=g,t[43]=w,t[44]=T,t[45]=A,t[46]=O,t[47]=I):I=t[47],I}function sk(e){return e.selectedProjectId}function ck(e){return e.selectedThreadId}function lk(e){return e.projects}function uk(e){let t=(0,Q.c)(18),{instanceId:n,panelId:r,footer:i}=e,a;t[0]!==n||t[1]!==r?(a={instanceId:n,panelId:r},t[0]=n,t[1]=r,t[2]=a):a=t[2];let{label:o,selected:s,isPaneStreaming:c,titleSuffix:l,titleActions:u,handleClose:d,handleSelect:f,handleTitleDoubleClick:p}=ok(a),m;t[3]!==d||t[4]!==n||t[5]!==r?(m=(0,$.jsx)(IO,{panelId:r,instanceId:n,onClose:d}),t[3]=d,t[4]=n,t[5]=r,t[6]=m):m=t[6];let h;return t[7]!==i||t[8]!==d||t[9]!==f||t[10]!==p||t[11]!==c||t[12]!==o||t[13]!==s||t[14]!==m||t[15]!==u||t[16]!==l?(h=(0,$.jsx)(VO,{title:o,titleSuffix:l,titleActions:u,showTitle:!0,selected:s,onSelect:f,onTitleDoubleClick:p,onClose:d,disableClose:c,footer:i,className:`h-full overflow-hidden rounded-lg border border-border bg-background`,children:m}),t[7]=i,t[8]=d,t[9]=f,t[10]=p,t[11]=c,t[12]=o,t[13]=s,t[14]=m,t[15]=u,t[16]=l,t[17]=h):h=t[17],h}function dk(e){let t=(0,Q.c)(2),n;return t[0]===e?n=t[1]:(n=(0,$.jsx)(JO,{children:(0,$.jsx)(ZO,{children:(0,$.jsx)(uk,{...e})})}),t[0]=e,t[1]=n),n}function fk(e){let t=(0,Q.c)(10),{active:n,className:r}=e,i=n===void 0?!1:n,a=i?`animate-thread-dot-pulse text-brand opacity-100`:`text-muted-foreground/40 opacity-100`,o;t[0]!==r||t[1]!==a?(o=G(`h-3 w-3 shrink-0 origin-center transition-opacity`,a,r),t[0]=r,t[1]=a,t[2]=o):o=t[2];let s=i?`currentColor`:`none`,c=i?`none`:`currentColor`,l=i?`5`:`4.5`,u;t[3]===l?u=t[4]:(u=(0,$.jsx)(`circle`,{cx:`6`,cy:`6`,r:l}),t[3]=l,t[4]=u);let d;return t[5]!==o||t[6]!==s||t[7]!==c||t[8]!==u?(d=(0,$.jsx)(`svg`,{"aria-hidden":`true`,className:o,viewBox:`0 0 12 12`,fill:s,stroke:c,strokeWidth:`2`,xmlns:`http://www.w3.org/2000/svg`,children:u}),t[5]=o,t[6]=s,t[7]=c,t[8]=u,t[9]=d):d=t[9],d}function pk(){let e=(0,Q.c)(84),t=Ks(),n=gC(),r=X(Sk),i=X(xk),a=X(bk),o=X(yk),s=X(vk),c=X(_k),l=X(gk),u=X(hk),d=X(mk),{handleSelectThread:f,handleCreateThread:p,handleDeleteThread:m,refreshWorkspaces:h}=lw(),g=Od(a??void 0),[_,v]=(0,Z.useState)(!1),[y,b]=(0,Z.useState)(!1),[x,S]=(0,Z.useState)(null),C,w,T,E,D,O,k,A,j,N,P,F;if(e[0]!==o||e[1]!==c||e[2]!==l||e[3]!==t||e[4]!==p||e[5]!==m||e[6]!==f||e[7]!==_||e[8]!==d||e[9]!==x||e[10]!==s||e[11]!==r||e[12]!==h||e[13]!==g||e[14]!==i||e[15]!==a||e[16]!==n||e[17]!==u||e[18]!==y){F=Symbol.for(`react.early_return_sentinel`);bb0:{let I;e[31]===i?I=e[32]:(I=e=>e.projectId===i,e[31]=i,e[32]=I);let L=r.find(I);if(!L){F=null;break bb0}let R=L.projectId,z=L.projectPath&&o&&!L.projectPath.startsWith(o.replace(/\/+$/,``)+`/`)?L.projectPath:void 0,B;e[33]===a?B=e[34]:(B=e=>e.threadId===a,e[33]=a,e[34]=B);let V=L.threads.find(B),H=(a?g.currentBranch||V?.currentBranch:void 0)||V?.title||`Branches`,ee;e[35]===l?ee=e[36]:(ee=e=>l.includes(e.threadId),e[35]=l,e[36]=ee);let te=L.threads.some(ee),ne=n?Ww:Uw,re;e[37]!==t||e[38]!==f?(re=function(e,n){t({type:Y.ClearThreadCompleted,threadId:n}),f(e,n),v(!1)},e[37]=t,e[38]=f,e[39]=re):re=e[39];let ie=re,ae=function(){p(R,void 0),v(!1)},oe=function(e,t){let n=se(e)?e.path:void 0;if(e.gitStatusDot||n){v(!1),S({threadId:e.threadId,displayName:t,openFolderPath:n});return}m(R,e.threadId).then(()=>h())};function se(e){return!z||!e.path?!1:e.path===z}let ce=x!==null,le;e[40]===Symbol.for(`react.memo_cache_sentinel`)?(le=e=>{e||S(null)},e[40]=le):le=e[40];let ue;e[41]===Symbol.for(`react.memo_cache_sentinel`)?(ue=(0,$.jsx)(sc,{children:`Delete Branch`}),e[41]=ue):ue=e[41];let W;e[42]===x?W=e[43]:(W=(0,$.jsx)(oc,{children:x?.openFolderPath?(0,$.jsxs)($.Fragment,{children:[`The path "`,(0,$.jsx)(`span`,{className:G(U.body,`font-semibold text-foreground`),children:x.openFolderPath}),`" was not created by Tarsk. Are you sure you want to delete it?`]}):(0,$.jsxs)($.Fragment,{children:[`Are you sure you want to delete "`,x?.displayName,`" and all its files? This action cannot be undone.`]})}),e[42]=x,e[43]=W);let de;e[44]===Symbol.for(`react.memo_cache_sentinel`)?(de=(0,$.jsx)(dc,{children:`Cancel`}),e[44]=de):de=e[44];let fe=(0,$.jsxs)(`div`,{className:`flex gap-3 justify-end`,children:[de,(0,$.jsx)(lc,{onClick:()=>{x&&m(R,x.threadId).then(()=>h()),S(null)},className:`bg-destructive text-destructive-foreground hover:bg-destructive/90`,children:`Delete`})]}),pe;e[45]!==W||e[46]!==fe?(pe=(0,$.jsxs)(cc,{children:[ue,W,fe]}),e[45]=W,e[46]=fe,e[47]=pe):pe=e[47],e[48]!==ce||e[49]!==pe?(P=(0,$.jsx)(pc,{open:ce,onOpenChange:le,children:pe}),e[48]=ce,e[49]=pe,e[50]=P):P=e[50],w=Np,A=_,e[51]===h?j=e[52]:(j=e=>{v(e),e&&(b(!1),h())},e[51]=h,e[52]=j);let me=!_&&y,he=G(ne,Gw,`w-10 justify-center md:w-auto`,Kw,te&&`disabled:opacity-50`),ge;e[53]===Symbol.for(`react.memo_cache_sentinel`)?(ge=G(U.compact,`hidden truncate md:inline`),e[53]=ge):ge=e[53];let _e;e[54]===Symbol.for(`react.memo_cache_sentinel`)?(_e=(0,$.jsx)(Yt,{className:G(qw,`hidden md:block`)}),e[54]=_e):_e=e[54];let ve=(0,$.jsx)(Pp,{asChild:!0,children:(0,$.jsxs)(`button`,{type:`button`,"aria-label":`Branches`,disabled:te,className:he,children:[te?(0,$.jsx)(ln,{className:`h-4 w-4 shrink-0 animate-spin`}):(0,$.jsx)(M,{className:`h-4 w-4 shrink-0`}),(0,$.jsx)(`span`,{className:ge,children:H}),_e]})}),ye;e[55]===ve?ye=e[56]:(ye=(0,$.jsx)(zi,{asChild:!0,children:ve}),e[55]=ve,e[56]=ye);let be=te?`Deleting branch...`:`Workspaces`,xe;e[57]===be?xe=e[58]:(xe=(0,$.jsx)(Fr,{side:`top`,children:be}),e[57]=be,e[58]=xe),e[59]!==me||e[60]!==ye||e[61]!==xe?(N=(0,$.jsxs)(Mi,{open:me,onOpenChange:b,children:[ye,xe]}),e[59]=me,e[60]=ye,e[61]=xe,e[62]=N):N=e[62],C=Fp,T=`end`,E=`top`,D=`w-72 p-1`;let Ce;e[63]===Symbol.for(`react.memo_cache_sentinel`)?(Ce=(0,$.jsx)(`span`,{className:G(U.label,`text-muted-foreground font-medium`),children:`Workspaces`}),e[63]=Ce):Ce=e[63];let we;e[64]===Symbol.for(`react.memo_cache_sentinel`)?(we=(0,$.jsx)(Se,{}),e[64]=we):we=e[64];let Te=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(Hr,{variant:`action`,size:`icon-sm`,className:`shrink-0`,"aria-label":`Create a new workspace & branch (⌘⇧T)`,onClick:ae,children:we})}),Ee;e[65]===Symbol.for(`react.memo_cache_sentinel`)?(Ee=(0,$.jsx)(Fr,{side:`top`,children:`Create a new workspace & branch`}),e[65]=Ee):Ee=e[65],e[66]===Te?O=e[67]:(O=(0,$.jsxs)(`div`,{className:`flex items-center justify-between gap-2 px-2 py-1.5`,children:[Ce,(0,$.jsxs)(Mi,{children:[Te,Ee]})]}),e[66]=Te,e[67]=O),k=L.threads.length===0?(0,$.jsx)(`p`,{className:G(U.compact,`px-2 py-4 text-center text-muted-foreground`),children:`No branches yet. Create one to get started.`}):(0,$.jsx)(`div`,{className:`max-h-[min(320px,50vh)] overflow-y-auto`,children:L.threads.map(e=>(0,$.jsx)(wk,{thread:e,projectId:R,selectedThreadId:a,isProcessing:js(e.threadId,s,u,d),isDeleting:l.includes(e.threadId),isCompleted:c.includes(e.threadId),branchName:e.threadId===a&&g.currentBranch||e.currentBranch,onSelectThread:ie,onRequestDelete:oe},e.threadId))})}e[0]=o,e[1]=c,e[2]=l,e[3]=t,e[4]=p,e[5]=m,e[6]=f,e[7]=_,e[8]=d,e[9]=x,e[10]=s,e[11]=r,e[12]=h,e[13]=g,e[14]=i,e[15]=a,e[16]=n,e[17]=u,e[18]=y,e[19]=C,e[20]=w,e[21]=T,e[22]=E,e[23]=D,e[24]=O,e[25]=k,e[26]=A,e[27]=j,e[28]=N,e[29]=P,e[30]=F}else C=e[19],w=e[20],T=e[21],E=e[22],D=e[23],O=e[24],k=e[25],A=e[26],j=e[27],N=e[28],P=e[29],F=e[30];if(F!==Symbol.for(`react.early_return_sentinel`))return F;let I;e[68]!==C||e[69]!==T||e[70]!==E||e[71]!==D||e[72]!==O||e[73]!==k?(I=(0,$.jsxs)(C,{align:T,side:E,className:D,children:[O,k]}),e[68]=C,e[69]=T,e[70]=E,e[71]=D,e[72]=O,e[73]=k,e[74]=I):I=e[74];let L;e[75]!==w||e[76]!==I||e[77]!==A||e[78]!==j||e[79]!==N?(L=(0,$.jsxs)(w,{open:A,onOpenChange:j,children:[N,I]}),e[75]=w,e[76]=I,e[77]=A,e[78]=j,e[79]=N,e[80]=L):L=e[80];let R;return e[81]!==L||e[82]!==P?(R=(0,$.jsxs)($.Fragment,{children:[P,L]}),e[81]=L,e[82]=P,e[83]=R):R=e[83],R}function mk(e){return e.pendingChatMessage}function hk(e){return rc(e.threadStreamingStates)}function gk(e){return e.deletingThreadIds}function _k(e){return e.completedThreadIds}function vk(e){return e.processingThreadIds}function yk(e){return e.cloneRootPath}function bk(e){return e.selectedThreadId}function xk(e){return e.selectedProjectId}function Sk(e){return e.projects}function Ck(e){let t=(0,Q.c)(22),{gitStatusDot:n,isProcessing:r,isDeleting:i}=e,a=!!n||r,o;t[0]!==n||t[1]!==r?(o=r?`Agent is working on this branch`:mt(n),t[0]=n,t[1]=r,t[2]=o):o=t[2];let s=o,c;if(r){let e;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,$.jsx)(fk,{active:!0}),t[3]=e):e=t[3],c=e}else{let e=i&&`animate-thread-dot-pulse`,r=n===`changes`&&`text-brand`,o;t[4]!==a||t[5]!==n||t[6]!==e||t[7]!==r?(o=G(`h-3 w-3 shrink-0 origin-center`,e,r,Ve(n)&&`text-orange-500`,!a&&`text-muted-foreground`),t[4]=a,t[5]=n,t[6]=e,t[7]=r,t[8]=o):o=t[8];let s=o;if(a){let e;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,$.jsx)(`circle`,{cx:`6`,cy:`6`,r:`5`}),t[9]=e):e=t[9];let n;t[10]===s?n=t[11]:(n=(0,$.jsx)(`svg`,{className:s,viewBox:`0 0 12 12`,fill:`currentColor`,xmlns:`http://www.w3.org/2000/svg`,children:e}),t[10]=s,t[11]=n),c=n}else{let e;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,$.jsx)(`circle`,{cx:`6`,cy:`6`,r:`4.5`}),t[12]=e):e=t[12];let n;t[13]===s?n=t[14]:(n=(0,$.jsx)(`svg`,{className:s,viewBox:`0 0 12 12`,fill:`none`,stroke:`currentColor`,strokeWidth:`2.0`,xmlns:`http://www.w3.org/2000/svg`,children:e}),t[13]=s,t[14]=n),c=n}}if(!s)return c;let l;t[15]===c?l=t[16]:(l=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(`span`,{className:`inline-flex shrink-0`,children:c})}),t[15]=c,t[16]=l);let u;t[17]===s?u=t[18]:(u=(0,$.jsx)(Fr,{side:`left`,children:s}),t[17]=s,t[18]=u);let d;return t[19]!==l||t[20]!==u?(d=(0,$.jsxs)(Mi,{children:[l,u]}),t[19]=l,t[20]=u,t[21]=d):d=t[21],d}function wk(e){let t=(0,Q.c)(34),{thread:n,projectId:r,selectedThreadId:i,isProcessing:a,isDeleting:o,isCompleted:s,branchName:c,onSelectThread:l,onRequestDelete:u}=e,d=(0,Z.useRef)(null),f=n.threadId===i,p=c||n.title||n.threadId,m,h;t[0]===a?(m=t[1],h=t[2]):(m=()=>{a&&d.current&&d.current.scrollIntoView({behavior:`smooth`,block:`nearest`})},h=[a],t[0]=a,t[1]=m,t[2]=h),(0,Z.useEffect)(m,h);let g;t[3]!==p||t[4]!==u||t[5]!==n?(g=function(e){e.stopPropagation(),u(n,p)},t[3]=p,t[4]=u,t[5]=n,t[6]=g):g=t[6];let _=g,v;t[7]!==l||t[8]!==r||t[9]!==n.threadId?(v=()=>l(r,n.threadId),t[7]=l,t[8]=r,t[9]=n.threadId,t[10]=v):v=t[10];let y;t[11]!==o||t[12]!==a||t[13]!==n.gitStatusDot?(y=(0,$.jsx)(Ck,{gitStatusDot:n.gitStatusDot,isProcessing:a,isDeleting:o}),t[11]=o,t[12]=a,t[13]=n.gitStatusDot,t[14]=y):y=t[14];let b;t[15]===Symbol.for(`react.memo_cache_sentinel`)?(b=G(U.body,`min-w-0 flex-1 truncate text-left`),t[15]=b):b=t[15];let x;t[16]===p?x=t[17]:(x=(0,$.jsx)(`span`,{className:b,children:p}),t[16]=p,t[17]=x);let S;t[18]===s?S=t[19]:(S=s?(0,$.jsx)(W,{className:`ml-auto h-3 w-3 shrink-0 text-green-500`}):null,t[18]=s,t[19]=S);let C;t[20]!==f||t[21]!==v||t[22]!==y||t[23]!==x||t[24]!==S?(C=(0,$.jsxs)(ja,{selected:f,className:`min-w-0 flex-1 items-center rounded-md`,onClick:v,children:[y,x,S]}),t[20]=f,t[21]=v,t[22]=y,t[23]=x,t[24]=S,t[25]=C):C=t[25];let w;t[26]!==_||t[27]!==s||t[28]!==o||t[29]!==a?(w=!a&&!o&&!s&&(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(Hr,{variant:`ghost`,size:`icon-sm`,className:`hidden can-hover:group-hover:flex shrink-0 items-center justify-center text-muted-foreground can-hover:hover:bg-destructive can-hover:hover:text-destructive-foreground transition-colors`,onClick:_,children:[(0,$.jsx)(He,{}),(0,$.jsx)(`span`,{className:`sr-only`,children:`Delete branch`})]})}),(0,$.jsx)(Fr,{side:`left`,children:`Delete branch and files from the repo`})]}),t[26]=_,t[27]=s,t[28]=o,t[29]=a,t[30]=w):w=t[30];let T;return t[31]!==w||t[32]!==C?(T=(0,$.jsxs)(`div`,{ref:d,className:`group flex min-w-0 items-center`,children:[C,w]}),t[31]=w,t[32]=C,t[33]=T):T=t[33],T}function Tk(){let e=(0,Q.c)(108),t=Ks(),{windows:n,hasOpenWindows:r,isLayoutExpanded:i,expandedWindowId:a,expandWindow:o,collapseLayout:s,isPanelOpen:c,isPrimaryChatOpen:l,selectedWindowId:u,selectWindow:d,revealWindow:f}=gc(),{openChatDockPanel:p}=Wd(),m=X(Fk),h=X(Pk),g=X(Nk),_=X(Mk),v=X(jk),y=X(Ak),b=X(kk),x=X(Ok),S=X(Dk),C=X(Ek),w;if(e[0]!==m||e[1]!==h){let t;e[3]===h?t=e[4]:(t=e=>e.projectId===h,e[3]=h,e[4]=t),w=m.find(t),e[0]=m,e[1]=h,e[2]=w}else w=e[2];let T=w,E=T?.useBuiltInBrowser!==!1,{browserPageTitle:D}=nk(),{hasChanges:O,changedFilesCount:k}=Od(g??void 0),A=T?.tasksModifiedCount??0,j;e[5]!==S||e[6]!==x||e[7]!==b?.threadId||e[8]!==v||e[9]!==g||e[10]!==_?(j=function(e,t){return t===`chat`?e===`primary`?g?b?.threadId===g||S===Ms&&v.includes(g)?!0:bs(_,g):!1:!x[e]||!g?!1:S===e&&v.includes(g)?!0:bs(_,g,e):!1},e[5]=S,e[6]=x,e[7]=b?.threadId,e[8]=v,e[9]=g,e[10]=_,e[11]=j):j=e[11];let M=j,N,P,F,I,L,R,z,B,V,H,ee,te,ne,re;if(e[12]!==D||e[13]!==k||e[14]!==s||e[15]!==y||e[16]!==t||e[17]!==o||e[18]!==a||e[19]!==C||e[20]!==O||e[21]!==r||e[22]!==i||e[23]!==c||e[24]!==l||e[25]!==M||e[26]!==p||e[27]!==m||e[28]!==f||e[29]!==d||e[30]!==g||e[31]!==u||e[32]!==E||e[33]!==A||e[34]!==n){let h;e[49]!==g||e[50]!==E?(h=e=>!(e.id===`browser`&&!E||e.id===`chat`&&!g),e[49]=g,e[50]=E,e[51]=h):h=e[51];let _=UO.filter(h),v=[...l?[{id:Ct,panelId:`chat`,title:Lt(m,g,Ct)}]:[],...n.map(e=>({id:e.id,panelId:e.panelId,title:e.panelId===`chat`?Lt(m,g,e.id):e.panelId===`browser`?GO(D):WO(e.panelId)}))],b;e[52]===c?b=e[53]:(b=function(e){return c(e)},e[52]=c,e[53]=b);let x=b,S;e[54]===x?S=e[55]:(S=e=>!x(e.id),e[54]=x,e[55]=S);let w=_.filter(S),T=function(e){return i?a===e:u===e},j=function(e){d(e.id),f(e.id),e.panelId===`chat`&&(C!==e.id&&y.includes(e.id)&&t({type:Y.ClearPaneCompleted,paneId:e.id}),t({type:Y.SetFocusedPane,paneId:e.id}))},ie;e[56]===p?ie=e[57]:(ie=function(e){p(e,{reuseExisting:!1})},e[56]=p,e[57]=ie);let ae=ie,oe;e[58]===p?oe=e[59]:(oe=function(e){p(e,{reuseExisting:!1})},e[58]=p,e[59]=oe);let se=oe,ce;e[60]!==s||e[61]!==o||e[62]!==a||e[63]!==r||e[64]!==i||e[65]!==l||e[66]!==u||e[67]!==n?(ce=function(){if(r){if(i){s();return}if(l&&u===`primary`||n.some(e=>e.id===u)){o(u);return}o(a??(l?`primary`:n[0]?.id??`primary`))}},e[60]=s,e[61]=o,e[62]=a,e[63]=r,e[64]=i,e[65]=l,e[66]=u,e[67]=n,e[68]=ce):ce=e[68];let le=ce,ue=i?`Grid layout`:`Expanded layout`;te=`toolbar`,ne=`Window taskbar`,re=`flex items-center gap-0.5 rounded-full frosted-surface p-1 text-foreground shadow-md backdrop-blur-sm`;let W=v.map(e=>{let t=KO(e.panelId),n=T(e.id),r=e.panelId===`review`,i=e.panelId===`tasks`,a=r&&O,o=e.panelId===`chat`&&y.includes(e.id),s=i&&A>0,c=M(e.id,e.panelId),l=o?`Chat completed — needs attention`:r&&a?`${k} changed file${k===1?``:`s`}`:i&&s?`${A} task${A===1?``:`s`} modified recently`:e.title;return(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(Hr,{type:`button`,role:`tab`,"aria-selected":n,"aria-label":e.title,variant:`ghost`,size:`icon-sm`,className:G(`relative rounded-full`,n&&`bg-foreground text-background hover:bg-foreground hover:text-background dark:bg-foreground/30 dark:text-foreground dark:hover:bg-foreground/30 dark:hover:text-foreground`),onClick:()=>j(e),children:[(0,$.jsx)(`span`,{className:`relative inline-flex items-center justify-center`,children:c&&e.panelId===`chat`?(0,$.jsx)(dp,{size:`sm`,state:`solving`,className:`shrink-0`}):(0,$.jsx)(t,{className:`h-4 w-4`})}),(a||o)&&(0,$.jsx)(`span`,{className:`absolute -right-0.5 -top-0.5 h-2 w-2 rounded-full bg-brand`}),s&&(0,$.jsx)(`span`,{className:`absolute -right-1.5 -top-1.5 flex h-4 min-w-4 items-center justify-center rounded-full bg-brand px-1 text-[10px] font-semibold leading-none text-background`,children:A})]})}),(0,$.jsx)(Fr,{side:`top`,children:l})]},e.id)});e[69]===W?F=e[70]:(F=(0,$.jsx)(`div`,{role:`tablist`,"aria-label":`Open windows`,className:`flex items-center gap-0.5`,children:W}),e[69]=W,e[70]=F),I=w.length>0?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`div`,{className:`mx-0.5 h-4 w-px shrink-0 bg-border`,"aria-hidden":!0}),(0,$.jsx)(`div`,{"aria-label":`Closed window types`,className:`flex items-center gap-0.5`,children:w.map(e=>{let t=e.icon,n=e.id===`review`,r=e.id===`tasks`,i=n&&O,a=r&&A>0,o=n&&i?`${k} changed file${k===1?``:`s`}`:r&&a?`${A} task${A===1?``:`s`} modified recently`:e.label;return(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(Hr,{type:`button`,"aria-label":e.label,variant:`ghost`,size:`icon-sm`,className:`relative rounded-full opacity-50`,onClick:()=>ae(e.id),children:[(0,$.jsx)(t,{className:`h-4 w-4`}),i&&(0,$.jsx)(`span`,{className:`absolute -right-0.5 -top-0.5 h-2 w-2 rounded-full bg-brand`}),a&&(0,$.jsx)(`span`,{className:`absolute -right-1.5 -top-1.5 flex h-4 min-w-4 items-center justify-center rounded-full bg-brand px-1 text-[10px] font-semibold leading-none text-background`,children:A})]})}),(0,$.jsx)(Fr,{side:`top`,children:o})]},e.id)})})]}):null,e[71]===Symbol.for(`react.memo_cache_sentinel`)?(L=(0,$.jsx)(`div`,{className:`mx-0.5 h-4 w-px shrink-0 bg-border`,"aria-hidden":!0}),e[71]=L):L=e[71];let de=r&&!i,fe=!r,pe=r&&!i&&`bg-foreground text-background hover:bg-foreground hover:text-background dark:bg-foreground/30 dark:text-foreground dark:hover:bg-foreground/30 dark:hover:text-foreground`,me;e[72]===pe?me=e[73]:(me=G(`rounded-full`,pe),e[72]=pe,e[73]=me);let he;e[74]===Symbol.for(`react.memo_cache_sentinel`)?(he=(0,$.jsx)(Qt,{className:`h-4 w-4`}),e[74]=he):he=e[74];let ge;e[75]!==le||e[76]!==ue||e[77]!==de||e[78]!==fe||e[79]!==me?(ge=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(Hr,{type:`button`,variant:`ghost`,size:`icon-sm`,"aria-label":ue,"aria-pressed":de,disabled:fe,className:me,onClick:le,children:he})}),e[75]=le,e[76]=ue,e[77]=de,e[78]=fe,e[79]=me,e[80]=ge):ge=e[80];let _e;e[81]===ue?_e=e[82]:(_e=(0,$.jsx)(Fr,{side:`top`,children:ue}),e[81]=ue,e[82]=_e),e[83]!==ge||e[84]!==_e?(R=(0,$.jsxs)(Mi,{children:[ge,_e]}),e[83]=ge,e[84]=_e,e[85]=R):R=e[85],P=hl,e[86]===Symbol.for(`react.memo_cache_sentinel`)?(ee=(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(gl,{asChild:!0,children:(0,$.jsx)(Hr,{type:`button`,variant:`ghost`,size:`icon-sm`,"aria-label":`Add window`,className:`rounded-full`,children:(0,$.jsx)(Se,{className:`h-4 w-4`})})})}),(0,$.jsx)(Fr,{side:`top`,children:`Add window`})]}),e[86]=ee):ee=e[86],N=bl,z=`top`,B=`center`,V=`w-44 p-1`;let ve;e[87]===se?ve=e[88]:(ve=e=>{let t=e.icon;return(0,$.jsxs)(xl,{className:G(U.body,`gap-2`),onSelect:()=>se(e.id),children:[(0,$.jsx)(t,{className:`h-4 w-4 shrink-0`}),e.label]},e.id)},e[87]=se,e[88]=ve),H=_.map(ve),e[12]=D,e[13]=k,e[14]=s,e[15]=y,e[16]=t,e[17]=o,e[18]=a,e[19]=C,e[20]=O,e[21]=r,e[22]=i,e[23]=c,e[24]=l,e[25]=M,e[26]=p,e[27]=m,e[28]=f,e[29]=d,e[30]=g,e[31]=u,e[32]=E,e[33]=A,e[34]=n,e[35]=N,e[36]=P,e[37]=F,e[38]=I,e[39]=L,e[40]=R,e[41]=z,e[42]=B,e[43]=V,e[44]=H,e[45]=ee,e[46]=te,e[47]=ne,e[48]=re}else N=e[35],P=e[36],F=e[37],I=e[38],L=e[39],R=e[40],z=e[41],B=e[42],V=e[43],H=e[44],ee=e[45],te=e[46],ne=e[47],re=e[48];let ie;e[89]!==N||e[90]!==z||e[91]!==B||e[92]!==V||e[93]!==H?(ie=(0,$.jsx)(N,{side:z,align:B,className:V,children:H}),e[89]=N,e[90]=z,e[91]=B,e[92]=V,e[93]=H,e[94]=ie):ie=e[94];let ae;e[95]!==P||e[96]!==ie||e[97]!==ee?(ae=(0,$.jsxs)(P,{children:[ee,ie]}),e[95]=P,e[96]=ie,e[97]=ee,e[98]=ae):ae=e[98];let oe;return e[99]!==F||e[100]!==I||e[101]!==L||e[102]!==R||e[103]!==ae||e[104]!==te||e[105]!==ne||e[106]!==re?(oe=(0,$.jsxs)(`div`,{role:te,"aria-label":ne,className:re,children:[F,I,L,R,ae]}),e[99]=F,e[100]=I,e[101]=L,e[102]=R,e[103]=ae,e[104]=te,e[105]=ne,e[106]=re,e[107]=oe):oe=e[107],oe}function Ek(e){return e.focusedPane}function Dk(e){return e.activeStreamPane}function Ok(e){return e.extraChatPanes}function kk(e){return e.pendingChatMessage}function Ak(e){return e.completedPaneIds}function jk(e){return e.processingThreadIds}function Mk(e){return rc(e.threadStreamingStates,e.selectedThreadId)}function Nk(e){return e.selectedThreadId}function Pk(e){return e.selectedProjectId}function Fk(e){return e.projects}var Ik=`pointer-events-none absolute inset-0 rounded-2xl border border-border frosted-surface shadow-lg backdrop-blur-sm`,Lk=`h-full overflow-hidden rounded-lg border border-border bg-background`;function Rk(e,t){let n=e.getBoundingClientRect(),r=t.getBoundingClientRect(),i=getComputedStyle(e),a=Number.parseFloat(i.paddingTop)||0,o=Number.parseFloat(i.paddingBottom)||0,s=Number.parseFloat(i.paddingLeft)||0,c=Number.parseFloat(i.paddingRight)||0,l=n.top+a,u=n.bottom-o,d=n.left+s,f=n.right-c,p=u-l,m=f-d,h=0,g=0;r.height<=p?r.bottom>u?h=r.bottom-u:r.top<l&&(h=r.top-l):r.top>u?h=r.top-l:r.bottom<l&&(h=r.bottom-u),r.width<=m?r.right>f?g=r.right-f:r.left<d&&(g=r.left-d):r.left>f?g=r.left-d:r.right<d&&(g=r.right-f),!(g===0&&h===0)&&e.scrollBy({left:g,top:h,behavior:`smooth`})}function zk(e,t,n,r,i){return!!(e&&(t?.threadId===e||(n===null||n===Ms)&&r.includes(e)||i))}function Bk(e,t,n,r,i,a,o){return!e&&!!t&&n===0&&!r&&!i&&!(t&&a.includes(t))&&o?.threadId!==t}function Vk(e){let t=(0,Q.c)(26),{dispatch:n,composerPhase:r,isLayoutExpanded:i,pendingScrollWindowId:a,clearPendingScrollWindow:o,windows:s,hasOpenWindows:c,selectedWindowId:l,showingProjectDetails:u,scrollContainerRef:d}=e,f=(0,Z.useRef)(!1),p,m;t[0]!==r||t[1]!==n?(p=()=>{if(r===`moving-to-footer`&&!f.current){f.current=!0,n({type:Y.FocusChatInput});return}r===`centered`&&(f.current=!1)},m=[r,n],t[0]=r,t[1]=n,t[2]=p,t[3]=m):(p=t[2],m=t[3]),(0,Z.useEffect)(p,m);let h;t[4]!==o||t[5]!==i||t[6]!==a||t[7]!==d?(h=()=>{if(!a||!d.current||i){a&&i&&o();return}let e=d.current,t=e.querySelector(`[data-window-id="${a}"]`);t&&(Rk(e,t),o())},t[4]=o,t[5]=i,t[6]=a,t[7]=d,t[8]=h):h=t[8];let g;t[9]!==o||t[10]!==i||t[11]!==a||t[12]!==s?(g=[o,i,a,s],t[9]=o,t[10]=i,t[11]=a,t[12]=s,t[13]=g):g=t[13],(0,Z.useEffect)(h,g);let _=(0,Z.useRef)(u),v;t[14]!==c||t[15]!==i||t[16]!==d||t[17]!==l||t[18]!==u?(v=()=>{let e=_.current;if(_.current=u,e||!u||!c||i)return;let t=d.current;if(!t)return;let n=t,r=function(){if(n.clientWidth===0||n.clientHeight===0)return!1;let e=n.querySelector(`[data-window-id="${l}"]`);return e?(Rk(n,e),!0):!1};if(r())return;let a=new ResizeObserver(()=>{r()&&a.disconnect()});return a.observe(n),()=>a.disconnect()},t[14]=c,t[15]=i,t[16]=d,t[17]=l,t[18]=u,t[19]=v):v=t[19];let y;t[20]!==c||t[21]!==i||t[22]!==l||t[23]!==u||t[24]!==s?(y=[c,i,l,u,s],t[20]=c,t[21]=i,t[22]=l,t[23]=u,t[24]=s,t[25]=y):y=t[25],(0,Z.useEffect)(v,y)}function Hk(){let e=(0,Q.c)(61),t=Ks(),{windows:n,hasOpenWindows:r,isLayoutExpanded:i,expandedWindowId:a,expandWindow:o,collapseLayout:s,pendingScrollWindowId:c,clearPendingScrollWindow:l,selectedWindowId:u,selectWindow:d,revealWindow:f,closeWindow:p,isPrimaryChatOpen:m}=gc(),h=X(Qk),g=X(Zk),_=X(Xk),v=X(Yk),y=X(Jk),b=X(qk),x=X(Kk),S=X(Gk),C=X(Wk),w;e[0]===g?w=e[1]:(w=e=>g?As(e.threadStreamingStates,g,Ct).isStreaming:!1,e[0]=g,e[1]=w);let T=X(w),E;e[2]===g?E=e[3]:(E=e=>g?_s(g,{hasSession:Uk,streamingStates:e.threadStreamingStates}):!1,e[2]=g,e[3]=E);let D=X(E),O;e[4]!==h||e[5]!==g?(O=Lt(h,g,`primary`),e[4]=h,e[5]=g,e[6]=O):O=e[6];let k=O,A;e[7]!==C||e[8]!==T||e[9]!==S||e[10]!==x||e[11]!==g?(A=zk(g,S,C,x,T),e[7]=C,e[8]=T,e[9]=S,e[10]=x,e[11]=g,e[12]=A):A=e[12];let j=A,M=(0,Z.useRef)(null),N=!!(g&&_),P;e[13]!==r||e[14]!==b||e[15]!==T||e[16]!==v.length||e[17]!==S||e[18]!==x||e[19]!==g?(P=Bk(r,g,v.length,T,b,x,S),e[13]=r,e[14]=b,e[15]=T,e[16]=v.length,e[17]=S,e[18]=x,e[19]=g,e[20]=P):P=e[20];let F=P,I=F&&y,L=F&&!y&&!D,R;e[21]!==L||e[22]!==g||e[23]!==I?(R={centered:I,loading:L,threadId:g},e[21]=L,e[22]=g,e[23]=I,e[24]=R):R=e[24];let{phase:z,reveal:B}=uC(R),V=gC(),{mode:H}=CO(),ee;e[25]!==z||e[26]!==V||e[27]!==H?(ee=V&&(H!==`background`||cC(z)),e[25]=z,e[26]=V,e[27]=H,e[28]=ee):ee=e[28];let te=ee,ne=H===`background`&&z===`moving-to-footer`,re;e[29]!==l||e[30]!==z||e[31]!==t||e[32]!==r||e[33]!==i||e[34]!==c||e[35]!==u||e[36]!==V||e[37]!==n?(re={dispatch:t,composerPhase:z,isLayoutExpanded:i,pendingScrollWindowId:c,clearPendingScrollWindow:l,windows:n,hasOpenWindows:r,selectedWindowId:u,showingProjectDetails:V,scrollContainerRef:M},e[29]=l,e[30]=z,e[31]=t,e[32]=r,e[33]=i,e[34]=c,e[35]=u,e[36]=V,e[37]=n,e[38]=re):re=e[38],Vk(re);let ie;return e[39]!==p||e[40]!==s||e[41]!==z||e[42]!==B||e[43]!==t||e[44]!==o||e[45]!==a||e[46]!==ne||e[47]!==r||e[48]!==i||e[49]!==m||e[50]!==j||e[51]!==k||e[52]!==f||e[53]!==d||e[54]!==_||e[55]!==g||e[56]!==u||e[57]!==N||e[58]!==te||e[59]!==n?(ie={windows:n,hasOpenWindows:r,isLayoutExpanded:i,expandedWindowId:a,isPrimaryChatOpen:m,selectedWindowId:u,primaryChatTitle:k,isPrimaryStreaming:j,showGitOps:N,selectedThreadId:g,selectedProjectId:_,showSoloConversationSurface:te,fadeInSoloConversationSurface:ne,composerPhase:z,composerReveal:B,dispatch:t,selectWindow:d,revealWindow:f,collapseLayout:s,expandWindow:o,closeWindow:p,scrollContainerRef:M},e[39]=p,e[40]=s,e[41]=z,e[42]=B,e[43]=t,e[44]=o,e[45]=a,e[46]=ne,e[47]=r,e[48]=i,e[49]=m,e[50]=j,e[51]=k,e[52]=f,e[53]=d,e[54]=_,e[55]=g,e[56]=u,e[57]=N,e[58]=te,e[59]=n,e[60]=ie):ie=e[60],ie}function Uk(){return!1}function Wk(e){return e.activeStreamPane}function Gk(e){return e.pendingChatMessage}function Kk(e){return e.processingThreadIds}function qk(e){return e.isCreatingProject}function Jk(e){return xs(e,Ct)}function Yk(e){return ys(e,Ct)}function Xk(e){return e.selectedProjectId}function Zk(e){return e.selectedThreadId}function Qk(e){return e.projects}function $k(e){let t=(0,Q.c)(9),{title:n,selected:r,isStreaming:i,onSelect:a,onTitleDoubleClick:o,onClose:s,children:c}=e,l;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,$.jsx)(cD,{paneId:Ct}),t[0]=l):l=t[0];let u;return t[1]!==c||t[2]!==i||t[3]!==s||t[4]!==a||t[5]!==o||t[6]!==r||t[7]!==n?(u=(0,$.jsx)(VO,{title:n,showTitle:!0,selected:r,onSelect:a,onTitleDoubleClick:o,onClose:s,disableClose:i,footer:l,className:Lk,children:c}),t[1]=c,t[2]=i,t[3]=s,t[4]=a,t[5]=o,t[6]=r,t[7]=n,t[8]=u):u=t[8],u}function eA(e){let t=(0,Q.c)(22),{scrollRef:n,isLayoutExpanded:r,expandedWindowId:i,isPrimaryChatOpen:a,primaryTile:o,windows:s}=e,c=r?`overflow-hidden`:`grid gap-3 overflow-auto p-3`,l;t[0]===c?l=t[1]:(l=G(`h-full min-h-0`,c),t[0]=c,t[1]=l);let u;t[2]===r?u=t[3]:(u=r?void 0:{gridTemplateColumns:`repeat(auto-fit, minmax(min(100%, 24rem), 1fr))`,gridAutoRows:`minmax(min(100%, 20rem), 1fr)`},t[2]=r,t[3]=u);let d;t[4]!==i||t[5]!==r||t[6]!==a||t[7]!==o?(d=a?(0,$.jsx)(`div`,{"data-window-id":Ct,className:G(`min-h-0 min-w-0`,r&&`box-border h-full w-full p-3`,r&&i!==`primary`&&`hidden`),children:o}):null,t[4]=i,t[5]=r,t[6]=a,t[7]=o,t[8]=d):d=t[8];let f;if(t[9]!==i||t[10]!==r||t[11]!==s){let e;t[13]!==i||t[14]!==r?(e=e=>{let t=e.panelId===`chat`?(0,$.jsx)(cD,{paneId:e.id}):void 0;return(0,$.jsx)(`div`,{"data-window-id":e.id,className:G(`min-h-0 min-w-0`,r&&`box-border h-full w-full p-3`,r&&i!==e.id&&`hidden`),children:(0,$.jsx)(dk,{instanceId:e.id,panelId:e.panelId,footer:t})},e.id)},t[13]=i,t[14]=r,t[15]=e):e=t[15],f=s.map(e),t[9]=i,t[10]=r,t[11]=s,t[12]=f}else f=t[12];let p;return t[16]!==n||t[17]!==l||t[18]!==u||t[19]!==d||t[20]!==f?(p=(0,$.jsxs)(`div`,{ref:n,className:l,style:u,children:[d,f]}),t[16]=n,t[17]=l,t[18]=u,t[19]=d,t[20]=f,t[21]=p):p=t[21],p}function tA(e){let t=(0,Q.c)(12),{showSoloConversationSurface:n,fadeInSoloConversationSurface:r,showFooterComposer:i,children:a}=e,o;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(o=G(`relative flex h-full min-h-0 flex-col`,fy(!1)),t[0]=o):o=t[0];let s;t[1]!==r||t[2]!==n?(s=n?(0,$.jsx)(`div`,{"aria-hidden":!0,className:G(Ik,r&&`animate-in fade-in duration-300 ease-out`)}):null,t[1]=r,t[2]=n,t[3]=s):s=t[3];let c;t[4]===a?c=t[5]:(c=(0,$.jsx)(`div`,{className:`relative z-10 min-h-0 flex-1 overflow-hidden`,children:a}),t[4]=a,t[5]=c);let l;t[6]===i?l=t[7]:(l=i?(0,$.jsx)(`div`,{className:`relative z-10`,children:(0,$.jsx)(cD,{})}):null,t[6]=i,t[7]=l);let u;return t[8]!==s||t[9]!==c||t[10]!==l?(u=(0,$.jsx)(`div`,{className:`relative flex h-full min-h-0 flex-col`,children:(0,$.jsxs)(`div`,{className:o,children:[s,c,l]})}),t[8]=s,t[9]=c,t[10]=l,t[11]=u):u=t[11],u}function nA(e){let t=(0,Q.c)(10),{showGitOps:n,selectedThreadId:r,selectedProjectId:i}=e,a;t[0]!==i||t[1]!==r||t[2]!==n?(a=n&&r&&i?(0,$.jsx)(Pd,{threadId:r,children:(0,$.jsx)(kT,{projectId:i,threadId:r,layout:`bar`},r)}):null,t[0]=i,t[1]=r,t[2]=n,t[3]=a):a=t[3];let o;t[4]===a?o=t[5]:(o=(0,$.jsx)(`div`,{className:`hidden justify-self-start md:block`,children:a}),t[4]=a,t[5]=o);let s;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,$.jsx)(`div`,{className:`justify-self-center md:col-start-2`,children:(0,$.jsx)(Tk,{})}),t[6]=s):s=t[6];let c;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,$.jsx)(`div`,{className:`flex items-center justify-end gap-2 justify-self-end`,children:AO()?null:(0,$.jsx)(pk,{})}),t[7]=c):c=t[7];let l;return t[8]===o?l=t[9]:(l=(0,$.jsxs)(`div`,{className:`relative z-0 grid shrink-0 grid-cols-[1fr_auto] items-center bg-transparent px-4 pb-4 pt-2 md:grid-cols-[1fr_auto_1fr]`,children:[o,s,c]}),t[8]=o,t[9]=l),l}function rA(e){let t=(0,Q.c)(54),{children:n}=e,{windows:r,hasOpenWindows:i,isLayoutExpanded:a,expandedWindowId:o,isPrimaryChatOpen:s,selectedWindowId:c,primaryChatTitle:l,isPrimaryStreaming:u,showGitOps:d,selectedThreadId:f,selectedProjectId:p,showSoloConversationSurface:m,fadeInSoloConversationSurface:h,composerPhase:g,composerReveal:_,dispatch:v,selectWindow:y,revealWindow:b,collapseLayout:x,expandWindow:S,closeWindow:C,scrollContainerRef:w}=Hk(),{triggerReviewRefresh:T}=mc(),E=a?o:c,D;t[0]!==E||t[1]!==r?(D=r.find(e=>e.id===E)?.panelId,t[0]=E,t[1]=r,t[2]=D):D=t[2];let O=D,k,A;t[3]!==O||t[4]!==f||t[5]!==T?(k=()=>{O!==`review`||!f||T(f)},A=[O,f,T],t[3]=O,t[4]=f,t[5]=T,t[6]=k,t[7]=A):(k=t[6],A=t[7]),(0,Z.useEffect)(k,A);let j;t[8]!==v||t[9]!==b||t[10]!==y?(j=()=>{y(Ct),b(Ct),v({type:Y.SetFocusedPane,paneId:`primary`})},t[8]=v,t[9]=b,t[10]=y,t[11]=j):j=t[11];let M=j,N;t[12]!==x||t[13]!==v||t[14]!==S||t[15]!==a||t[16]!==y?(N=()=>{if(a){x();return}y(Ct),v({type:Y.SetFocusedPane,paneId:`primary`}),S(Ct)},t[12]=x,t[13]=v,t[14]=S,t[15]=a,t[16]=y,t[17]=N):N=t[17];let P=N,F;t[18]===C?F=t[19]:(F=()=>C(Ct),t[18]=C,t[19]=F);let I=F,L=!a&&c===`primary`,R;t[20]!==n||t[21]!==I||t[22]!==M||t[23]!==P||t[24]!==u||t[25]!==l||t[26]!==L?(R=(0,$.jsx)($k,{title:l,selected:L,isStreaming:u,onSelect:M,onTitleDoubleClick:P,onClose:I,children:n}),t[20]=n,t[21]=I,t[22]=M,t[23]=P,t[24]=u,t[25]=l,t[26]=L,t[27]=R):R=t[27];let z=R,B;t[28]!==n||t[29]!==g||t[30]!==o||t[31]!==h||t[32]!==i||t[33]!==a||t[34]!==s||t[35]!==z||t[36]!==w||t[37]!==m||t[38]!==r?(B=i?(0,$.jsx)(eA,{scrollRef:w,isLayoutExpanded:a,expandedWindowId:o,isPrimaryChatOpen:s,primaryTile:z,windows:r}):(0,$.jsx)(tA,{showSoloConversationSurface:m,fadeInSoloConversationSurface:h,showFooterComposer:cC(g),children:n}),t[28]=n,t[29]=g,t[30]=o,t[31]=h,t[32]=i,t[33]=a,t[34]=s,t[35]=z,t[36]=w,t[37]=m,t[38]=r,t[39]=B):B=t[39];let V=B,H;t[40]===V?H=t[41]:(H=(0,$.jsx)(`div`,{className:`relative z-10 min-h-0 flex-1`,children:V}),t[40]=V,t[41]=H);let ee;t[42]!==p||t[43]!==f||t[44]!==d?(ee=(0,$.jsx)(nA,{showGitOps:d,selectedThreadId:f,selectedProjectId:p}),t[42]=p,t[43]=f,t[44]=d,t[45]=ee):ee=t[45];let te;t[46]!==H||t[47]!==ee?(te=(0,$.jsxs)(`div`,{className:`relative flex h-full min-h-0 w-full flex-col overflow-hidden`,children:[H,ee]}),t[46]=H,t[47]=ee,t[48]=te):te=t[48];let ne;return t[49]!==g||t[50]!==_||t[51]!==i||t[52]!==te?(ne=(0,$.jsx)(iC,{placement:`footer`,embedded:i,composerPhase:g,composerReveal:_,children:te}),t[49]=g,t[50]=_,t[51]=i,t[52]=te,t[53]=ne):ne=t[53],ne}var iA=Ut(`app.use-chat-history.hook`);function aA(){let e=Ks(),t=Vs(),n=X(e=>e.selectedThreadId);(0,Z.useEffect)(()=>{if(!n)return;let r=n,i=!1;async function a(){if(kc(t.getState().threadToolSessions[r]))return;let n=t.getState().chatHistoryEpoch;try{let[a,o]=await Promise.all([ci(r),Ur(r).catch(e=>(iA.error(`Failed to load thread metadata for conversation id:`,e),null))]);if(i||t.getState().chatHistoryEpoch!==n)return;let s=_s(r,{hasSession:()=>!1,streamingStates:t.getState().threadStreamingStates}),c=o?.currentConversationId?.trim()||void 0;if(c&&e({type:Y.SetPrimaryConversationId,conversationId:c}),s||e({type:Y.SetMessages,messages:a.messages,conversationId:c,historyEpoch:n}),s)return;Ma.invalidate(`processing-threads`);let l=await No();if(i||t.getState().chatHistoryEpoch!==n)return;e({type:Y.SetProcessingThreads,threadIds:l})}catch(a){iA.error(`Failed to load chat history:`,a),!i&&t.getState().chatHistoryEpoch===n&&(e({type:Y.SetMessages,messages:[],historyEpoch:n}),e({type:Y.ResetStream,threadId:r,paneId:`primary`}))}}return a(),()=>{i=!0}},[n,X(e=>e.selectedProjectId),e,t])}function oA(){let e=(0,Q.c)(8),t=Ks(),n=Vs(),r=X(sA),i=r?.messageId,a;e[0]===i?a=e[1]:(a=e=>i?e.messages.some(e=>e.messageId===i):!0,e[0]=i,e[1]=a);let o=X(a),s,c;e[2]!==t||e[3]!==o||e[4]!==r||e[5]!==n?(s=()=>{!r||o||t({type:Y.SetMessages,messages:[...n.getState().messages,bc(r)]})},c=[r,o,t,n],e[2]=t,e[3]=o,e[4]=r,e[5]=n,e[6]=s,e[7]=c):(s=e[6],c=e[7]),(0,Z.useEffect)(s,c)}function sA(e){if(!e.selectedThreadId)return null;let t=e.threadToolSessions[e.selectedThreadId];return t&&kc(t)?t:null}var cA=(0,Z.lazy)(()=>us(()=>import(`./diff-view-Cxf7v9t1.js`),__vite__mapDeps([18,1,19,20,4,5,21,22,23,24,25,14,26,27]))),lA=(0,Z.lazy)(()=>us(()=>import(`./create-project-dialog-DrXo61FQ.js`),__vite__mapDeps([35,1,33,4,5]))),uA=Ut(`chat.area`);function dA(e){let t=(0,Q.c)(40),{onCreateThread:n,onSubmitClone:r,onSubmitWebApp:i,onSubmitFolder:a,onOpenFolder:o}=e,s=Ks(),c=Yn(),l=Gn(),[u,d]=(0,Z.useState)(!1),[f,p]=(0,Z.useState)(null),m=X(gA),h;t[0]===s?h=t[1]:(h=()=>{s({type:Y.CloseSidebar})},t[0]=s,t[1]=h);let g=h,_;t[2]===g?_=t[3]:(_=()=>{g(),p(`clone`),d(!0)},t[2]=g,t[3]=_);let v=_,y;t[4]===g?y=t[5]:(y=()=>{g(),p(`webapp`),d(!0)},t[4]=g,t[5]=y);let b=y,x;t[6]===r?x=t[7]:(x=async(e,t)=>{d(!1),p(null),await r(e,t).catch(hA)},t[6]=r,t[7]=x);let S=x,C;t[8]===i?C=t[9]:(C=async(e,t,n)=>{d(!1),p(null),await i(e,t,n).catch(mA)},t[8]=i,t[9]=C);let w=C,T;t[10]!==g||t[11]!==o?(T=async()=>{g(),d(!1),p(null),await o().catch(pA)},t[10]=g,t[11]=o,t[12]=T):T=t[12];let E=T,D;t[13]===a?D=t[14]:(D=async e=>{d(!1),p(null),await a(e).catch(fA)},t[13]=a,t[14]=D);let O=D,k=l.pathname===`/review`,A;t[15]===c?A=t[16]:(A=()=>{c(`/`)},t[15]=c,t[16]=A);let j=A;aA(),oA();let M=!k,N;t[17]!==v||t[18]!==b||t[19]!==E||t[20]!==n?(N=(0,$.jsx)(oO,{paneId:`primary`,onCreateThread:n,showEmptyState:!0,hideInput:!0,onConnectRepo:v,onNewApp:b,onOpenFolder:E}),t[17]=v,t[18]=b,t[19]=E,t[20]=n,t[21]=N):N=t[21];let P=M?N:null,F;t[22]!==P||t[23]!==j||t[24]!==k||t[25]!==m||t[26]!==M?(F=k&&m?(0,$.jsx)(Pd,{threadId:m,children:(0,$.jsx)(Z.Suspense,{fallback:(0,$.jsx)(ga,{}),children:(0,$.jsx)(cA,{threadId:m,onExit:j})})}):M?(0,$.jsx)(rA,{children:P}):null,t[22]=P,t[23]=j,t[24]=k,t[25]=m,t[26]=M,t[27]=F):F=t[27];let I=f??void 0,L;t[28]!==u||t[29]!==O||t[30]!==S||t[31]!==w||t[32]!==I?(L=(0,$.jsx)(Z.Suspense,{fallback:null,children:(0,$.jsx)(lA,{open:u,onOpenChange:d,initialMode:I,onSubmitClone:S,onSubmitWebApp:w,onSubmitFolder:O})}),t[28]=u,t[29]=O,t[30]=S,t[31]=w,t[32]=I,t[33]=L):L=t[33];let R;t[34]!==F||t[35]!==L?(R=(0,$.jsxs)(`div`,{className:`relative flex h-full flex-col`,children:[F,L]}),t[34]=F,t[35]=L,t[36]=R):R=t[36];let z;return t[37]!==m||t[38]!==R?(z=(0,$.jsx)(Hm,{threadId:m,children:R}),t[37]=m,t[38]=R,t[39]=z):z=t[39],z}function fA(e){uA.error(`Failed to create folder`,{err:e})}function pA(e){uA.error(`Failed to open folder`,{err:e})}function mA(e){uA.error(`Failed to create project`,{err:e})}function hA(e){uA.error(`Failed to clone repository`,{err:e})}function gA(e){return e.selectedThreadId}var _A=1e3;function vA(e){return!Number.isFinite(e)||e<=0?`+$0.00`:`+$${(Math.round(e*100)/100).toFixed(2)}`}function yA(e,t){if(!Number.isFinite(e)||!Number.isFinite(t))return 0;let n=e-t;return n<=0?0:Math.round(n*100)/100}function bA(e){return 300+(Math.max(e,1)-1)*30}function xA(e){let t=(0,Q.c)(8),{deltaLabel:n,phase:r}=e,i=(0,Z.useRef)(null),a;t[0]===r?a=t[1]:(a=()=>{if(r!==`fade`||!i.current)return;let e=i.current.animate([{opacity:1},{opacity:0}],{duration:280,easing:`ease-out`,fill:`forwards`});return()=>{e.cancel()}},t[0]=r,t[1]=a);let o;if(t[2]!==n||t[3]!==r?(o=[r,n],t[2]=n,t[3]=r,t[4]=o):o=t[4],(0,Z.useEffect)(a,o),r!==`hold`&&r!==`fade`)return null;let s;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(s=G(U.compact,`pointer-events-none absolute inset-0 z-10 flex items-center justify-center rounded-full`,`bg-foreground text-background font-mono tabular-nums font-bold whitespace-nowrap`),t[5]=s):s=t[5];let c;return t[6]===n?c=t[7]:(c=(0,$.jsx)(`span`,{ref:i,className:s,"aria-hidden":`true`,children:n}),t[6]=n,t[7]=c),c}function SA(e){return $e(e).split(``)}function CA(e){let t=(0,Q.c)(19),{previousCharacter:n,nextCharacter:r,isFlipping:i,index:a,flipKey:o}=e,s=i&&n!==r,c=s?r:n;if(!s){let e;return t[0]===c?e=t[1]:(e=(0,$.jsx)(`span`,{className:`inline-block`,children:c}),t[0]=c,t[1]=e),e}let l=a*30,u=`${o}-${a}-${r}`,d=`${l}ms`,f;t[2]===d?f=t[3]:(f={animationDuration:`300ms`,animationDelay:d},t[2]=d,t[3]=f);let p;t[4]!==n||t[5]!==f?(p=(0,$.jsx)(`span`,{className:`absolute inset-x-0 top-0 animate-daily-spend-flip-out`,style:f,children:n}),t[4]=n,t[5]=f,t[6]=p):p=t[6];let m=`${l}ms`,h;t[7]===m?h=t[8]:(h={animationDuration:`300ms`,animationDelay:m},t[7]=m,t[8]=h);let g;t[9]!==r||t[10]!==h?(g=(0,$.jsx)(`span`,{className:`absolute inset-x-0 top-0 animate-daily-spend-flip-in`,style:h,children:r}),t[9]=r,t[10]=h,t[11]=g):g=t[11];let _;t[12]===c?_=t[13]:(_=(0,$.jsx)(`span`,{className:`invisible`,children:c}),t[12]=c,t[13]=_);let v;return t[14]!==u||t[15]!==p||t[16]!==g||t[17]!==_?(v=(0,$.jsxs)(`span`,{className:`relative inline-block h-[1em] overflow-hidden align-bottom`,"aria-hidden":`true`,children:[p,g,_]},u),t[14]=u,t[15]=p,t[16]=g,t[17]=_,t[18]=v):v=t[18],v}function wA(e){let t=(0,Q.c)(12),{fromAmount:n,toAmount:r,isFlipping:i,flipKey:a,className:o}=e,s;if(t[0]!==n||t[1]!==r){let e=SA(n),i=SA(r),a=Math.max(e.length,i.length);s=Array.from({length:a},(t,n)=>({previousCharacter:e[n]??``,nextCharacter:i[n]??``})),t[0]=n,t[1]=r,t[2]=s}else s=t[2];let c=s,l;t[3]===o?l=t[4]:(l=G(`inline-flex items-center`,o),t[3]=o,t[4]=l);let u;t[5]!==c||t[6]!==a||t[7]!==i?(u=c.map((e,t)=>{let{previousCharacter:n,nextCharacter:r}=e;return(0,$.jsx)(CA,{previousCharacter:n,nextCharacter:r,isFlipping:i,index:t,flipKey:a},`${t}-${n}-${r}`)}),t[5]=c,t[6]=a,t[7]=i,t[8]=u):u=t[8];let d;return t[9]!==l||t[10]!==u?(d=(0,$.jsx)(`span`,{className:l,"aria-live":`polite`,children:u}),t[9]=l,t[10]=u,t[11]=d):d=t[11],d}function TA(e){return!Number.isFinite(e)||e<=0?`0%`:`${(e*100).toFixed(1)}%`}function EA(e){return Me(e.cacheReadTokens,we(e.inputTokens,e.cacheReadTokens,e.cacheWriteTokens))}function DA(e){let t=(0,Q.c)(9),{models:n}=e;if(n.length===0)return null;let r;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,$.jsx)(`div`,{className:U.caption,children:`By model`}),t[0]=r):r=t[0];let i;if(t[1]!==n){let e;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(e=function(e){let t=EA(e),n=T(t);return(0,$.jsxs)(`div`,{className:U.bodyMuted,children:[e.model,` · `,TA(t),n?` · not caching`:``]},e.model)},t[3]=e):e=t[3],i=n.map(e),t[1]=n,t[2]=i}else i=t[2];let a;t[4]===n?a=t[5]:(a=n.some(function(e){return T(EA(e))})?(0,$.jsx)(`div`,{className:U.caption,children:`Models marked not caching re-bill the full context as input each turn.`}):null,t[4]=n,t[5]=a);let o;return t[6]!==i||t[7]!==a?(o=(0,$.jsxs)(`div`,{className:`space-y-1 pt-2`,children:[r,i,a]}),t[6]=i,t[7]=a,t[8]=o):o=t[8],o}function OA(e){let t=(0,Q.c)(42),{inputTokens:n,cacheReadTokens:r,cacheWriteTokens:i,cacheReadCost:a,cacheWriteCost:o,byModel:s}=e,c,l,u,d,f,p,m,h,g,_;if(t[0]!==r||t[1]!==i||t[2]!==n||t[3]!==s){c=s===void 0?[]:s;let e=Me(r,we(n,r,i)),a=c[0];l=c.length>1||a!==void 0&&T(EA(a)),g=`space-y-1 pt-3`,t[14]===Symbol.for(`react.memo_cache_sentinel`)?(_=(0,$.jsx)(`div`,{className:U.label,children:`Prompt cache`}),t[14]=_):_=t[14],u=U.bodyMuted,t[15]===r?d=t[16]:(d=Vt(r),t[15]=r,t[16]=d),f=` cache read / `,t[17]===i?p=t[18]:(p=Vt(i),t[17]=i,t[18]=p),m=` cache write tokens · `,h=TA(e),t[0]=r,t[1]=i,t[2]=n,t[3]=s,t[4]=c,t[5]=l,t[6]=u,t[7]=d,t[8]=f,t[9]=p,t[10]=m,t[11]=h,t[12]=g,t[13]=_}else c=t[4],l=t[5],u=t[6],d=t[7],f=t[8],p=t[9],m=t[10],h=t[11],g=t[12],_=t[13];let v;t[19]!==u||t[20]!==d||t[21]!==f||t[22]!==p||t[23]!==m||t[24]!==h?(v=(0,$.jsxs)(`div`,{className:u,children:[d,f,p,m,h,` hit rate`]}),t[19]=u,t[20]=d,t[21]=f,t[22]=p,t[23]=m,t[24]=h,t[25]=v):v=t[25];let y;t[26]===a?y=t[27]:(y=$e(a),t[26]=a,t[27]=y);let b;t[28]===o?b=t[29]:(b=$e(o),t[28]=o,t[29]=b);let x;t[30]!==y||t[31]!==b?(x=(0,$.jsxs)(`div`,{className:U.bodyMuted,children:[y,` cache read cost /`,` `,b,` cache write cost`]}),t[30]=y,t[31]=b,t[32]=x):x=t[32];let S;t[33]!==c||t[34]!==l?(S=l?(0,$.jsx)(DA,{models:c}):null,t[33]=c,t[34]=l,t[35]=S):S=t[35];let C;return t[36]!==v||t[37]!==x||t[38]!==S||t[39]!==g||t[40]!==_?(C=(0,$.jsxs)(`div`,{className:g,children:[_,v,x,S]}),t[36]=v,t[37]=x,t[38]=S,t[39]=g,t[40]=_,t[41]=C):C=t[41],C}var kA=pn,AA=Z.forwardRef((e,t)=>{let n=(0,Q.c)(9),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let a;n[3]===r?a=n[4]:(a=G(`inline-flex h-10 items-center justify-center rounded-md bg-muted p-1 text-muted-foreground`,r),n[3]=r,n[4]=a);let o;return n[5]!==i||n[6]!==t||n[7]!==a?(o=(0,$.jsx)(sr,{ref:t,className:a,...i}),n[5]=i,n[6]=t,n[7]=a,n[8]=o):o=n[8],o});AA.displayName=sr.displayName;var jA=Z.forwardRef((e,t)=>{let n=(0,Q.c)(9),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let a;n[3]===r?a=n[4]:(a=G(`inline-flex items-center justify-center whitespace-nowrap rounded-sm px-3 py-1.5 text-base font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow-sm dark:data-[state=active]:bg-foreground dark:data-[state=active]:text-background`,r),n[3]=r,n[4]=a);let o;return n[5]!==i||n[6]!==t||n[7]!==a?(o=(0,$.jsx)(ar,{ref:t,className:a,...i}),n[5]=i,n[6]=t,n[7]=a,n[8]=o):o=n[8],o});jA.displayName=ar.displayName;var MA=Z.forwardRef((e,t)=>{let n=(0,Q.c)(9),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let a;n[3]===r?a=n[4]:(a=G(`mt-2 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2`,r),n[3]=r,n[4]=a);let o;return n[5]!==i||n[6]!==t||n[7]!==a?(o=(0,$.jsx)(Fn,{ref:t,className:a,...i}),n[5]=i,n[6]=t,n[7]=a,n[8]=o):o=n[8],o});MA.displayName=Fn.displayName;var NA=Ut(`app.use-current-conversation-spend.hook`);function PA(e,t=``){let n=X(e=>e.focusedPane),r=X(e=>n===Ms?void 0:gs(e,n)),[i,a]=(0,Z.useState)(),[o,s]=(0,Z.useState)(0),[c,l]=(0,Z.useState)(0),[u,d]=(0,Z.useState)(0),[f,p]=(0,Z.useState)(0),[m,h]=(0,Z.useState)(0),[g,_]=(0,Z.useState)(0),[v,y]=(0,Z.useState)(0),[b,x]=(0,Z.useState)([]),[S,C]=(0,Z.useState)(!1),w=n===Ms?i:r;(0,Z.useEffect)(()=>{let t=!1;async function r(){if(!e||n!==Ms){a(void 0);return}try{let n=await Ur(e);if(t)return;a(n.currentConversationId)}catch(e){NA.error(`Failed to resolve current conversation id`,e),t||a(void 0)}}return r(),()=>{t=!0}},[n,t,e]);let T=(0,Z.useCallback)(async function(){if(!e||!w){s(0),l(0),d(0),p(0),h(0),_(0),y(0),x([]),C(!1);return}C(!0);try{let t=await Xi(e,w);s(t.usage.cost.total),l(t.usage.input),d(t.usage.output),p(t.usage.cacheRead),h(t.usage.cacheWrite),_(t.usage.cost.cacheRead),y(t.usage.cost.cacheWrite),x(t.cacheByModel??[])}catch(e){if(e instanceof Error&&e.message===`Conversation not found`){s(0),l(0),d(0),p(0),h(0),_(0),y(0),x([]);return}NA.error(`Failed to load current conversation spend`,e),s(0),l(0),d(0),p(0),h(0),_(0),y(0),x([])}finally{C(!1)}},[w,e]);return(0,Z.useEffect)(()=>{T()},[T,t]),{conversationId:w,totalCost:o,inputTokens:c,outputTokens:u,cacheReadTokens:f,cacheWriteTokens:m,cacheReadCost:g,cacheWriteCost:v,byModel:b,isLoading:S,refresh:T}}var FA=Ut(`app.use-daily-spend.hook`);function IA(e=``){let[t,n]=(0,Z.useState)(0),[r,i]=(0,Z.useState)(0),[a,o]=(0,Z.useState)(0),[s,c]=(0,Z.useState)(0),[l,u]=(0,Z.useState)(0),[d,f]=(0,Z.useState)(0),[p,m]=(0,Z.useState)(0),[h,g]=(0,Z.useState)(0),[_,v]=(0,Z.useState)(0),[y,b]=(0,Z.useState)(0),[x,S]=(0,Z.useState)(0),[C,w]=(0,Z.useState)(0),[T,E]=(0,Z.useState)(0),[D,O]=(0,Z.useState)(0),[k,A]=(0,Z.useState)(0),[j,M]=(0,Z.useState)(0),[N,P]=(0,Z.useState)([]),[F,I]=(0,Z.useState)([]),[L,R]=(0,Z.useState)(!0),[z,B]=(0,Z.useState)(0),V=(0,Z.useRef)(0),H=(0,Z.useCallback)(async function(){let e=++V.current;try{let t=await Ri();if(e!==V.current)return;n(t.today),i(t.last30Days),o(t.todayInputTokens),c(t.todayOutputTokens),u(t.last30DaysInputTokens),f(t.last30DaysOutputTokens),m(t.todayCacheReadTokens),g(t.todayCacheWriteTokens),v(t.last30DaysCacheReadTokens),b(t.last30DaysCacheWriteTokens),S(t.todayCacheReadCost),w(t.todayCacheWriteCost),E(t.last30DaysCacheReadCost),O(t.last30DaysCacheWriteCost),A(t.todayCompressionBytesSaved),M(t.last30DaysCompressionBytesSaved),P(t.todayByModel??[]),I(t.last30DaysByModel??[]),B(e=>e+1)}catch(t){if(e!==V.current)return;FA.error(`Failed to load daily spend summary`,t)}finally{e===V.current&&R(!1)}},[]);return(0,Z.useEffect)(()=>{H()},[H,e]),{today:t,last30Days:r,todayInputTokens:a,todayOutputTokens:s,last30DaysInputTokens:l,last30DaysOutputTokens:d,todayCacheReadTokens:p,todayCacheWriteTokens:h,last30DaysCacheReadTokens:_,last30DaysCacheWriteTokens:y,todayCacheReadCost:x,todayCacheWriteCost:C,last30DaysCacheReadCost:T,last30DaysCacheWriteCost:D,todayCompressionBytesSaved:k,last30DaysCompressionBytesSaved:j,todayByModel:N,last30DaysByModel:F,isLoading:L,refreshGeneration:z,refresh:H}}function LA(){let e=(0,Q.c)(2),[t,n]=(0,Z.useState)(!1),r,i;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=()=>{let e=window.matchMedia(`(prefers-reduced-motion: reduce)`),t=function(){n(e.matches)};return t(),e.addEventListener(`change`,t),()=>{e.removeEventListener(`change`,t)}},i=[],e[0]=r,e[1]=i):(r=e[0],i=e[1]),(0,Z.useEffect)(r,i),t}function RA({todayFromApi:e,refreshSignal:t,refreshGeneration:n,isLoading:r}){let i=LA(),[a,o]=(0,Z.useState)(0),[s,c]=(0,Z.useState)(`idle`),[l,u]=(0,Z.useState)(0),[d,f]=(0,Z.useState)(0),p=(0,Z.useRef)(0),m=(0,Z.useRef)(0),h=(0,Z.useRef)(0),g=(0,Z.useRef)(!0),_=(0,Z.useRef)(t),v=(0,Z.useRef)(n),y=(0,Z.useRef)(!1),b=(0,Z.useRef)(`idle`),x=(0,Z.useRef)([]);b.current=s;let S=(0,Z.useCallback)(function(){for(let e of x.current)window.clearTimeout(e);x.current=[]},[]),C=(0,Z.useCallback)(function(e,t){let n=window.setTimeout(e,t);x.current.push(n)},[]),w=(0,Z.useRef)(()=>{});return w.current=function(){if(h.current<=0||b.current!==`idle`)return;let e=h.current;h.current=0,u(e),c(`hold`),C(()=>{c(`fade`),C(()=>{let t=p.current+e,n=bA($e(t).length);f(e=>e+1),c(`flip`),C(()=>{p.current=t,o(t),u(0),c(`idle`),h.current>0&&w.current()},n)},280)},_A)},(0,Z.useEffect)(()=>{if(r)return;if(g.current){g.current=!1,_.current=t,v.current=n,p.current=e,m.current=e,o(e);return}if(t!==_.current){let e=new Set(_.current?_.current.split(`,`):[]),n=new Set(t?t.split(`,`):[]);_.current=t;let r=!1;for(let t of n)if(!e.has(t)){r=!0;break}r&&(y.current=!0)}let a=n!==v.current;if(a&&(v.current=n),y.current){if(!a)return;y.current=!1;let t=yA(e,m.current);if(t<=0){b.current===`idle`&&(p.current=e,m.current=e,o(e));return}if(m.current=e,i){S(),h.current=0,u(0),c(`idle`),p.current=e,o(e);return}h.current+=t,b.current===`idle`&&(S(),w.current());return}a&&b.current===`idle`&&(p.current=e,m.current=e,o(e))},[S,r,i,n,t,C,e]),(0,Z.useEffect)(()=>()=>{S()},[S]),{isAnimating:s!==`idle`,phase:s,deltaLabel:l>0?vA(l):null,flipFromAmount:a,flipToAmount:a+l,isFlipping:s===`flip`,flipKey:d}}function zA(){let e=(0,Q.c)(1),t;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t={key:`showDailySpend`,defaultValue:!0,logScope:`app.use-show-daily-spend.hook`,settingLabel:`spend`},e[0]=t):t=e[0],aS(t)}var BA=`h-auto shrink-0 rounded-full border bg-muted/40`,VA=`rounded-full px-4 data-[state=active]:bg-foreground data-[state=active]:text-background data-[state=active]:shadow-sm`;function HA(e){return{model:e.modelId,inputTokens:e.inputTokens,cacheReadTokens:e.cacheReadTokens,cacheWriteTokens:e.cacheWriteTokens,cacheReadCost:e.cacheReadCost,cacheWriteCost:e.cacheWriteCost}}function UA(e){let t=(0,Q.c)(22),{todayLabel:r,todayInputTokens:i,todayOutputTokens:a,todayCacheReadTokens:o,todayCacheWriteTokens:s,todayCacheReadCost:c,todayCacheWriteCost:l,todayCompressionBytesSaved:u,todayByModel:d}=e,f=i>0||a>0||o>0||s>0,p=o>0||s>0||c>0||l>0||d.length>0,m=u>0,h;t[0]===r?h=t[1]:(h=(0,$.jsx)(`div`,{className:`space-y-1`,children:(0,$.jsxs)(`div`,{children:[r,` spent`]})}),t[0]=r,t[1]=h);let g;t[2]!==f||t[3]!==i||t[4]!==a?(g=f?(0,$.jsxs)(`div`,{className:`space-y-1 pt-3`,children:[(0,$.jsx)(`div`,{className:U.label,children:`Tokens`}),(0,$.jsxs)(`div`,{className:U.bodyMuted,children:[Vt(i),` input / `,Vt(a),` `,`output tokens`]})]}):null,t[2]=f,t[3]=i,t[4]=a,t[5]=g):g=t[5];let _;t[6]!==p||t[7]!==d||t[8]!==c||t[9]!==o||t[10]!==l||t[11]!==s||t[12]!==i?(_=p?(0,$.jsx)(OA,{inputTokens:i,cacheReadTokens:o,cacheWriteTokens:s,cacheReadCost:c,cacheWriteCost:l,byModel:d}):null,t[6]=p,t[7]=d,t[8]=c,t[9]=o,t[10]=l,t[11]=s,t[12]=i,t[13]=_):_=t[13];let v;t[14]!==m||t[15]!==u?(v=m?(0,$.jsxs)(`div`,{className:`space-y-1 pt-3`,children:[(0,$.jsx)(`div`,{className:U.label,children:`Tool output compression`}),(0,$.jsxs)(`div`,{className:U.bodyMuted,children:[n(u),` saved`]})]}):null,t[14]=m,t[15]=u,t[16]=v):v=t[16];let y;return t[17]!==h||t[18]!==g||t[19]!==_||t[20]!==v?(y=(0,$.jsxs)(`div`,{className:`space-y-4`,children:[h,g,_,v]}),t[17]=h,t[18]=g,t[19]=_,t[20]=v,t[21]=y):y=t[21],y}function WA(e){let t=(0,Q.c)(22),{totalCost:n,inputTokens:r,outputTokens:i,cacheReadTokens:a,cacheWriteTokens:o,cacheReadCost:s,cacheWriteCost:c,byModel:l,hasConversation:u,isLoading:d}=e;if(!u){let e;return t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,$.jsx)(`div`,{className:U.bodyMuted,children:`Start a conversation to see spend for the current chat.`}),t[0]=e):e=t[0],e}if(d){let e;return t[1]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,$.jsx)(`div`,{className:U.bodyMuted,children:`Loading current chat spend…`}),t[1]=e):e=t[1],e}let f;t[2]===n?f=t[3]:(f=$e(n),t[2]=n,t[3]=f);let p=f,m=r>0||i>0||a>0||o>0,h=a>0||o>0||s>0||c>0||l.length>0,g=n>0?`${p} spent`:`No spend recorded yet`,_;t[4]===g?_=t[5]:(_=(0,$.jsx)(`div`,{className:`space-y-1`,children:(0,$.jsx)(`div`,{children:g})}),t[4]=g,t[5]=_);let v;t[6]!==m||t[7]!==r||t[8]!==i?(v=m?(0,$.jsxs)(`div`,{className:`space-y-1 pt-3`,children:[(0,$.jsx)(`div`,{className:U.label,children:`Tokens`}),(0,$.jsxs)(`div`,{className:U.bodyMuted,children:[Vt(r),` input / `,Vt(i),` output tokens`]})]}):null,t[6]=m,t[7]=r,t[8]=i,t[9]=v):v=t[9];let y;t[10]!==l||t[11]!==s||t[12]!==a||t[13]!==c||t[14]!==o||t[15]!==h||t[16]!==r?(y=h?(0,$.jsx)(OA,{inputTokens:r,cacheReadTokens:a,cacheWriteTokens:o,cacheReadCost:s,cacheWriteCost:c,byModel:l}):null,t[10]=l,t[11]=s,t[12]=a,t[13]=c,t[14]=o,t[15]=h,t[16]=r,t[17]=y):y=t[17];let b;return t[18]!==_||t[19]!==v||t[20]!==y?(b=(0,$.jsxs)(`div`,{className:`space-y-4`,children:[_,v,y]}),t[18]=_,t[19]=v,t[20]=y,t[21]=b):b=t[21],b}function GA(e){let t=(0,Q.c)(23),{last30DaysLabel:r,averagePerDayLabel:i,last30DaysInputTokens:a,last30DaysOutputTokens:o,last30DaysCacheReadTokens:s,last30DaysCacheWriteTokens:c,last30DaysCacheReadCost:l,last30DaysCacheWriteCost:u,last30DaysCompressionBytesSaved:d,last30DaysByModel:f}=e,p=a>0||o>0||s>0||c>0,m=s>0||c>0||l>0||u>0||f.length>0,h=d>0,g;t[0]!==i||t[1]!==r?(g=(0,$.jsx)(`div`,{className:`space-y-1`,children:(0,$.jsxs)(`div`,{children:[r,` spent · `,i,`/day average`]})}),t[0]=i,t[1]=r,t[2]=g):g=t[2];let _;t[3]!==p||t[4]!==a||t[5]!==o?(_=p?(0,$.jsxs)(`div`,{className:`space-y-1 pt-3`,children:[(0,$.jsx)(`div`,{className:U.label,children:`Tokens`}),(0,$.jsxs)(`div`,{className:U.bodyMuted,children:[Vt(a),` input /`,` `,Vt(o),` output tokens`]})]}):null,t[3]=p,t[4]=a,t[5]=o,t[6]=_):_=t[6];let v;t[7]!==m||t[8]!==f||t[9]!==l||t[10]!==s||t[11]!==u||t[12]!==c||t[13]!==a?(v=m?(0,$.jsx)(OA,{inputTokens:a,cacheReadTokens:s,cacheWriteTokens:c,cacheReadCost:l,cacheWriteCost:u,byModel:f}):null,t[7]=m,t[8]=f,t[9]=l,t[10]=s,t[11]=u,t[12]=c,t[13]=a,t[14]=v):v=t[14];let y;t[15]!==h||t[16]!==d?(y=h?(0,$.jsxs)(`div`,{className:`space-y-1 pt-3`,children:[(0,$.jsx)(`div`,{className:U.label,children:`Tool output compression`}),(0,$.jsxs)(`div`,{className:U.bodyMuted,children:[n(d),` saved`]})]}):null,t[15]=h,t[16]=d,t[17]=y):y=t[17];let b;return t[18]!==g||t[19]!==_||t[20]!==v||t[21]!==y?(b=(0,$.jsxs)(`div`,{className:`space-y-4`,children:[g,_,v,y]}),t[18]=g,t[19]=_,t[20]=v,t[21]=y,t[22]=b):b=t[22],b}function KA(){let e=(0,Q.c)(101),t=X(JA),n=X(qA),r=gC(),i;e[0]===t?i=e[1]:(i=t.join(`,`),e[0]=t,e[1]=i);let a=i,{isEnabled:o,isLoading:s}=zA(),{today:c,last30Days:l,todayInputTokens:u,todayOutputTokens:d,last30DaysInputTokens:f,last30DaysOutputTokens:p,todayCacheReadTokens:m,todayCacheWriteTokens:h,last30DaysCacheReadTokens:g,last30DaysCacheWriteTokens:_,todayCacheReadCost:v,todayCacheWriteCost:y,last30DaysCacheReadCost:b,last30DaysCacheWriteCost:x,todayCompressionBytesSaved:S,last30DaysCompressionBytesSaved:C,todayByModel:w,last30DaysByModel:T,isLoading:E,refreshGeneration:D}=IA(a),O;e[2]!==E||e[3]!==D||e[4]!==a||e[5]!==c?(O={todayFromApi:c,refreshSignal:a,refreshGeneration:D,isLoading:E},e[2]=E,e[3]=D,e[4]=a,e[5]=c,e[6]=O):O=e[6];let{isAnimating:k,phase:A,deltaLabel:j,flipFromAmount:M,flipToAmount:N,isFlipping:P,flipKey:F}=RA(O),{conversationId:I,totalCost:L,inputTokens:R,outputTokens:z,cacheReadTokens:B,cacheWriteTokens:V,cacheReadCost:H,cacheWriteCost:ee,byModel:te,isLoading:ne}=PA(n,a),[re,ie]=(0,Z.useState)(!1);if(!o||s||E||c===0&&!k)return null;let ae=l/30,oe;e[7]===c?oe=e[8]:(oe=$e(c),e[7]=c,e[8]=oe);let se=oe,ce;e[9]===l?ce=e[10]:(ce=$e(l),e[9]=l,e[10]=ce);let le=ce,ue;e[11]===ae?ue=e[12]:(ue=$e(ae),e[11]=ae,e[12]=ue);let W=ue,de;e[13]===L?de=e[14]:(de=$e(L),e[13]=L,e[14]=de);let fe=de,pe=r?nl:`text-foreground hover:text-foreground/80`,me;e[15]===pe?me=e[16]:(me=G(U.compact,`relative overflow-hidden inline-flex h-8 items-center rounded-full px-3 font-mono tabular-nums electrobun-webkit-app-region-no-drag cursor-pointer transition-colors`,pe),e[15]=pe,e[16]=me);let he;e[17]===Symbol.for(`react.memo_cache_sentinel`)?(he=()=>ie(!0),e[17]=he):he=e[17];let ge;e[18]!==M||e[19]!==F||e[20]!==N||e[21]!==P?(ge=(0,$.jsx)(`span`,{className:`col-start-1 row-start-1`,children:(0,$.jsx)(wA,{fromAmount:M,toAmount:N,isFlipping:P,flipKey:F})}),e[18]=M,e[19]=F,e[20]=N,e[21]=P,e[22]=ge):ge=e[22];let _e;e[23]!==j||e[24]!==A?(_e=j&&(A===`hold`||A===`fade`)?(0,$.jsx)(`span`,{className:`col-start-1 row-start-1 invisible font-bold`,"aria-hidden":`true`,children:j}):null,e[23]=j,e[24]=A,e[25]=_e):_e=e[25];let ve;e[26]!==_e||e[27]!==ge?(ve=(0,$.jsxs)(`span`,{className:`inline-grid items-center justify-items-center`,children:[ge,_e]}),e[26]=_e,e[27]=ge,e[28]=ve):ve=e[28];let ye;e[29]!==j||e[30]!==A?(ye=j?(0,$.jsx)(xA,{deltaLabel:j,phase:A}):null,e[29]=j,e[30]=A,e[31]=ye):ye=e[31];let be;e[32]===Symbol.for(`react.memo_cache_sentinel`)?(be=(0,$.jsx)(`span`,{className:`sr-only`,children:`View spend details`}),e[32]=be):be=e[32];let xe;e[33]!==ve||e[34]!==ye||e[35]!==me?(xe=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(`button`,{type:`button`,className:me,onClick:he,children:[ve,ye,be]})}),e[33]=ve,e[34]=ye,e[35]=me,e[36]=xe):xe=e[36];let Se;e[37]===se?Se=e[38]:(Se=(0,$.jsxs)(`div`,{children:[se,` spent today`]}),e[37]=se,e[38]=Se);let Ce;e[39]===fe?Ce=e[40]:(Ce=(0,$.jsxs)(`div`,{children:[fe,` · This Chat`]}),e[39]=fe,e[40]=Ce);let we;e[41]===le?we=e[42]:(we=(0,$.jsxs)(`div`,{children:[le,` spend last 30 days`]}),e[41]=le,e[42]=we);let Te;e[43]===W?Te=e[44]:(Te=(0,$.jsxs)(`div`,{children:[W,` average per day`]}),e[43]=W,e[44]=Te);let Ee;e[45]!==Se||e[46]!==Ce||e[47]!==we||e[48]!==Te?(Ee=(0,$.jsxs)(Fr,{className:`space-y-1`,children:[Se,Ce,we,Te]}),e[45]=Se,e[46]=Ce,e[47]=we,e[48]=Te,e[49]=Ee):Ee=e[49];let De;e[50]!==xe||e[51]!==Ee?(De=(0,$.jsx)(Zo,{children:(0,$.jsxs)(Mi,{children:[xe,Ee]})}),e[50]=xe,e[51]=Ee,e[52]=De):De=e[52];let Oe;e[53]===Symbol.for(`react.memo_cache_sentinel`)?(Oe=(0,$.jsx)(Dr,{children:(0,$.jsx)(qa,{children:`Spend`})}),e[53]=Oe):Oe=e[53];let ke;e[54]===Symbol.for(`react.memo_cache_sentinel`)?(ke=(0,$.jsxs)(AA,{className:BA,children:[(0,$.jsx)(jA,{value:`today`,className:VA,children:`Today`}),(0,$.jsx)(jA,{value:`currentChat`,className:VA,children:`This Chat`}),(0,$.jsx)(jA,{value:`last30Days`,className:VA,children:`Last 30 Days`})]}),e[54]=ke):ke=e[54];let Ae;e[55]===w?Ae=e[56]:(Ae=w.map(HA),e[55]=w,e[56]=Ae);let je;e[57]!==Ae||e[58]!==v||e[59]!==m||e[60]!==y||e[61]!==h||e[62]!==S||e[63]!==u||e[64]!==se||e[65]!==d?(je=(0,$.jsx)(MA,{value:`today`,className:`min-h-0 flex-1`,children:(0,$.jsx)(za,{className:`h-full`,children:(0,$.jsx)(UA,{todayLabel:se,todayInputTokens:u,todayOutputTokens:d,todayCacheReadTokens:m,todayCacheWriteTokens:h,todayCacheReadCost:v,todayCacheWriteCost:y,todayCompressionBytesSaved:S,todayByModel:Ae})})}),e[57]=Ae,e[58]=v,e[59]=m,e[60]=y,e[61]=h,e[62]=S,e[63]=u,e[64]=se,e[65]=d,e[66]=je):je=e[66];let Me=!!(n&&I),Ne;e[67]!==te||e[68]!==H||e[69]!==B||e[70]!==ee||e[71]!==V||e[72]!==L||e[73]!==R||e[74]!==z||e[75]!==ne||e[76]!==Me?(Ne=(0,$.jsx)(MA,{value:`currentChat`,className:`min-h-0 flex-1`,children:(0,$.jsx)(za,{className:`h-full`,children:(0,$.jsx)(WA,{totalCost:L,inputTokens:R,outputTokens:z,cacheReadTokens:B,cacheWriteTokens:V,cacheReadCost:H,cacheWriteCost:ee,byModel:te,hasConversation:Me,isLoading:ne})})}),e[67]=te,e[68]=H,e[69]=B,e[70]=ee,e[71]=V,e[72]=L,e[73]=R,e[74]=z,e[75]=ne,e[76]=Me,e[77]=Ne):Ne=e[77];let Pe;e[78]===T?Pe=e[79]:(Pe=T.map(HA),e[78]=T,e[79]=Pe);let Fe;e[80]!==W||e[81]!==b||e[82]!==g||e[83]!==x||e[84]!==_||e[85]!==C||e[86]!==f||e[87]!==le||e[88]!==p||e[89]!==Pe?(Fe=(0,$.jsx)(MA,{value:`last30Days`,className:`min-h-0 flex-1`,children:(0,$.jsx)(za,{className:`h-full`,children:(0,$.jsx)(GA,{last30DaysLabel:le,averagePerDayLabel:W,last30DaysInputTokens:f,last30DaysOutputTokens:p,last30DaysCacheReadTokens:g,last30DaysCacheWriteTokens:_,last30DaysCacheReadCost:b,last30DaysCacheWriteCost:x,last30DaysCompressionBytesSaved:C,last30DaysByModel:Pe})})}),e[80]=W,e[81]=b,e[82]=g,e[83]=x,e[84]=_,e[85]=C,e[86]=f,e[87]=le,e[88]=p,e[89]=Pe,e[90]=Fe):Fe=e[90];let Ie;e[91]!==je||e[92]!==Ne||e[93]!==Fe?(Ie=(0,$.jsxs)(Ir,{className:`flex h-[520px] max-w-xl flex-col overflow-hidden max-h-[calc(100dvh-2rem)]`,children:[Oe,(0,$.jsxs)(kA,{defaultValue:`today`,className:`flex min-h-0 flex-1 flex-col`,children:[ke,je,Ne,Fe]})]}),e[91]=je,e[92]=Ne,e[93]=Fe,e[94]=Ie):Ie=e[94];let Le;e[95]!==re||e[96]!==Ie?(Le=(0,$.jsx)(Ni,{open:re,onOpenChange:ie,children:Ie}),e[95]=re,e[96]=Ie,e[97]=Le):Le=e[97];let Re;return e[98]!==De||e[99]!==Le?(Re=(0,$.jsxs)($.Fragment,{children:[De,Le]}),e[98]=De,e[99]=Le,e[100]=Re):Re=e[100],Re}function qA(e){return e.selectedThreadId}function JA(e){return e.completedThreadIds}function YA(){let e=(0,Q.c)(15),{resolvedTheme:t,setTheme:n}=Ic(),r=t===`dark`,i;e[0]!==r||e[1]!==n?(i=function(){n(r?`light`:`dark`)},e[0]=r,e[1]=n,e[2]=i):i=e[2];let a=i,o;e[3]===Symbol.for(`react.memo_cache_sentinel`)?(o=G(`h-8 w-8 shrink-0 electrobun-webkit-app-region-no-drag`,nl),e[3]=o):o=e[3];let s=r?`Switch to light mode`:`Switch to dark mode`,c;e[4]===r?c=e[5]:(c=r?(0,$.jsx)(fe,{className:`h-4 w-4`}):(0,$.jsx)(Je,{className:`h-4 w-4`}),e[4]=r,e[5]=c);let l;e[6]!==a||e[7]!==s||e[8]!==c?(l=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(Hr,{variant:`ghost`,size:`icon`,className:o,onClick:a,"aria-label":s,children:c})}),e[6]=a,e[7]=s,e[8]=c,e[9]=l):l=e[9];let u=r?`Light mode`:`Dark mode`,d;e[10]===u?d=e[11]:(d=(0,$.jsx)(Fr,{children:u}),e[10]=u,e[11]=d);let f;return e[12]!==l||e[13]!==d?(f=(0,$.jsxs)(Mi,{children:[l,d]}),e[12]=l,e[13]=d,e[14]=f):f=e[14],f}function XA(e,t){let n=e.find(e=>e.projectId===t.projectId);return n?.threads.some(e=>e.threadId===t.threadId)?n:e.find(e=>e.threads.some(e=>e.threadId===t.threadId))}function ZA(){let e=(0,Q.c)(15),t=Ks(),n=Vs(),r=Yn(),i=Gn(),{toast:a}=ic(),{selectWindow:o,revealWindow:s,expandWindow:c,hasOpenWindows:l}=gc(),{setActiveMainTab:u}=mc(),{handleSelectThread:d,refreshProjects:f}=lw(),p;e[0]!==t||e[1]!==c||e[2]!==d||e[3]!==l||e[4]!==i.pathname||e[5]!==r||e[6]!==f||e[7]!==s||e[8]!==o||e[9]!==u||e[10]!==n||e[11]!==a?(p=async function(e){let p=XA(n.getState().projects,e);if(p||=(await f(),XA(n.getState().projects,e)),!p){a({title:`Conversation not found`,description:`Refresh and try again, or check that the project still exists.`,variant:`destructive`});return}if(!p.threads.some(t=>t.threadId===e.threadId)){a({title:`Conversation not found`,description:`This chat’s thread is no longer available.`,variant:`destructive`});return}(i.pathname.startsWith(`/settings`)||i.pathname!==`/`)&&(r(`/`),u(`chat`)),t({type:Y.OpenProjectPanel,projectId:p.projectId});let{selectedThreadId:m}=n.getState();e.threadId!==m&&d(p.projectId,e.threadId),l&&c(Ct);let h=function(e){t({type:Y.SetFocusedPane,paneId:e}),o(e),s(e)},g=n.getState().extraChatPanes,_=Object.entries(g).find(t=>{let[,n]=t;return n.conversationId===e.conversationId})?.[0];if(_){h(_);return}let v=je();t({type:Y.AddChatPane,paneId:v,conversationId:e.conversationId}),o(v),s(v)},e[0]=t,e[1]=c,e[2]=d,e[3]=l,e[4]=i.pathname,e[5]=r,e[6]=f,e[7]=s,e[8]=o,e[9]=u,e[10]=n,e[11]=a,e[12]=p):p=e[12];let m=p,h;return e[13]===m?h=e[14]:(h={openConversation:m},e[13]=m,e[14]=h),h}function QA(e){let t=(0,Q.c)(39),{open:n,onOpenChange:r,feedbackName:i,onFeedbackNameChange:a,feedbackEmail:o,onFeedbackEmailChange:s,feedbackText:c,onFeedbackTextChange:l,loadingFeedbackUser:u,submittingFeedback:d,onSubmit:f}=e,p;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(p=(0,$.jsxs)(Dr,{children:[(0,$.jsx)(qa,{children:`Send Feedback`}),(0,$.jsx)(_i,{children:`Share feedback about Tarsk.`})]}),t[0]=p):p=t[0];let m;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(m=(0,$.jsx)(da,{htmlFor:`feedback-name`,children:`Name`}),t[1]=m):m=t[1];let h;t[2]===a?h=t[3]:(h=e=>a(e.target.value),t[2]=a,t[3]=h);let g=d||u,_;t[4]!==i||t[5]!==h||t[6]!==g?(_=(0,$.jsxs)(`div`,{className:`grid gap-2`,children:[m,(0,$.jsx)(Qo,{id:`feedback-name`,value:i,onChange:h,placeholder:`Your name`,disabled:g})]}),t[4]=i,t[5]=h,t[6]=g,t[7]=_):_=t[7];let v;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(v=(0,$.jsx)(da,{htmlFor:`feedback-email`,children:`Email`}),t[8]=v):v=t[8];let y;t[9]===s?y=t[10]:(y=e=>s(e.target.value),t[9]=s,t[10]=y);let b=d||u,x;t[11]!==o||t[12]!==y||t[13]!==b?(x=(0,$.jsxs)(`div`,{className:`grid gap-2`,children:[v,(0,$.jsx)(Qo,{id:`feedback-email`,type:`email`,value:o,onChange:y,placeholder:`you@example.com`,disabled:b})]}),t[11]=o,t[12]=y,t[13]=b,t[14]=x):x=t[14];let S;t[15]===Symbol.for(`react.memo_cache_sentinel`)?(S=(0,$.jsx)(da,{htmlFor:`feedback-text`,children:`Feedback`}),t[15]=S):S=t[15];let C;t[16]===l?C=t[17]:(C=e=>l(e.target.value),t[16]=l,t[17]=C);let w;t[18]!==c||t[19]!==d||t[20]!==C?(w=(0,$.jsxs)(`div`,{className:`grid gap-2`,children:[S,(0,$.jsx)(xw,{id:`feedback-text`,value:c,onChange:C,placeholder:`Tell us what you think...`,className:`min-h-32`,disabled:d})]}),t[18]=c,t[19]=d,t[20]=C,t[21]=w):w=t[21];let T;t[22]!==w||t[23]!==_||t[24]!==x?(T=(0,$.jsxs)(`div`,{className:`grid gap-4 py-2`,children:[_,x,w]}),t[22]=w,t[23]=_,t[24]=x,t[25]=T):T=t[25];let E;t[26]===d?E=t[27]:(E=d?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(ln,{className:`mr-2 h-4 w-4 animate-spin`}),`Sending...`]}):`Send`,t[26]=d,t[27]=E);let D;t[28]!==f||t[29]!==d||t[30]!==E?(D=(0,$.jsx)(Xa,{children:(0,$.jsx)(Hr,{onClick:f,disabled:d,children:E})}),t[28]=f,t[29]=d,t[30]=E,t[31]=D):D=t[31];let O;t[32]!==T||t[33]!==D?(O=(0,$.jsxs)(Ir,{className:`max-w-xl max-md:top-[max(1rem,env(safe-area-inset-top,0px))] max-md:max-h-[calc(100dvh-2rem)] max-md:translate-y-0 max-md:overflow-y-auto max-md:data-[state=closed]:slide-out-to-top max-md:data-[state=open]:slide-in-from-top max-md:data-[state=closed]:slide-out-to-left-0 max-md:data-[state=open]:slide-in-from-left-0 max-md:data-[state=closed]:zoom-out-100 max-md:data-[state=open]:zoom-in-100`,children:[p,T,D]}),t[32]=T,t[33]=D,t[34]=O):O=t[34];let k;return t[35]!==r||t[36]!==n||t[37]!==O?(k=(0,$.jsx)(Ni,{open:n,onOpenChange:r,children:O}),t[35]=r,t[36]=n,t[37]=O,t[38]=k):k=t[38],k}function $A({open:e,onOpenChange:t}){let[n,r]=(0,Z.useState)([]),[i,a]=(0,Z.useState)(null),[o,s]=(0,Z.useState)(!1),[c,l]=(0,Z.useState)(!1);(0,Z.useEffect)(()=>{if(!e){a(null);return}let t=!1;return s(!0),wo().then(e=>{t||r(e)}).catch(()=>{t||(r([]),ac({title:`Unable to load processes`,description:`The CLI process list could not be loaded.`,variant:`destructive`}))}).finally(()=>{t||s(!1)}),()=>{t=!0}},[e]);async function u(){if(i){l(!0);try{await ti(i),r(e=>e.filter(e=>e.id!==i)),a(null)}catch{ac({title:`Unable to kill process`,description:`The process may have already exited.`,variant:`destructive`}),r(await wo().catch(()=>[])),a(null)}finally{l(!1)}}}return(0,$.jsx)(Ni,{open:e,onOpenChange:t,children:(0,$.jsxs)(Ir,{children:[(0,$.jsxs)(Dr,{children:[(0,$.jsx)(qa,{children:`Processes`}),(0,$.jsx)(_i,{children:`Select a process started by Tarsk to terminate it.`})]}),(0,$.jsx)(`div`,{className:`max-h-80 overflow-y-auto rounded-md border`,role:`listbox`,children:o?(0,$.jsxs)(`div`,{className:G(U.bodyMuted,`flex items-center justify-center gap-2 py-10`),children:[(0,$.jsx)(ln,{className:`h-4 w-4 animate-spin`}),`Loading processes...`]}):n.length===0?(0,$.jsx)(`div`,{className:G(U.bodyMuted,`py-10 text-center`),children:`No processes started by Tarsk are running.`}):n.map(e=>{let t=e.id===i;return(0,$.jsxs)(`button`,{type:`button`,role:`option`,"aria-selected":t,className:G(`flex w-full flex-col gap-1 border-b px-4 py-3 text-left transition-colors last:border-b-0`,t?`bg-accent text-accent-foreground`:`can-hover:hover:bg-muted/50`),onClick:()=>a(e.id),children:[(0,$.jsx)(`span`,{className:G(U.label,`break-all font-mono select-text`),children:e.command}),(0,$.jsxs)(`span`,{className:G(U.caption,`break-all select-text`),children:[`PID `,e.pid,e.cwd?` · ${e.cwd}`:``]})]},e.id)})}),(0,$.jsx)(Xa,{children:(0,$.jsx)(Hr,{variant:`destructive`,disabled:!i||o||c,onClick:()=>void u(),children:c?`Killing...`:`Kill`})})]})})}var ej=Ut(`auth`);async function tj(e){await is(`api/auth/request-code`,{email:e})}async function nj(e,t){return is(`api/auth/verify`,{email:e,code:t})}async function rj(e){try{await is(`api/auth/revoke`,{token:e})}catch(e){ej.error(`Failed to revoke auth token:`,e)}}async function ij(){try{return(await Va(`api/auth/session`)).session??null}catch(e){return ej.error(`Failed to load auth session:`,e),null}}async function aj(e){await is(`api/auth/session`,e)}async function oj(){await is(`api/auth/logout`,{})}var sj=/^[^\s@]+@[^\s@]+\.[^\s@]+$/;function cj({open:e,onOpenChange:t,onVerified:n}){let[r,a]=(0,Z.useState)(`email`),[o,s]=(0,Z.useState)(``),[c,l]=(0,Z.useState)(``),[u,d]=(0,Z.useState)(null),[f,p]=(0,Z.useState)(!1),[m,h]=(0,Z.useState)(!1);function g(){a(`email`),l(``),d(null),p(!1),h(!1)}async function _(e){e.preventDefault();let t=o.trim().toLowerCase();if(!sj.test(t)){d(`Please enter a valid email address.`);return}d(null),p(!0);try{await tj(t),s(t),a(`code`)}catch(e){d(e instanceof Error?e.message:`Failed to send verification code.`)}finally{p(!1)}}async function v(e){if(!(e.length<6)){h(!0),d(null);try{let r=await nj(o,e);await n({token:r.token,expiresAt:r.expires_at,email:r.email,jti:r.jti}),t(!1),g()}catch(e){d(e instanceof Error?e.message:`That code didn't work. Try again.`),l(``)}finally{h(!1)}}}return(0,$.jsx)(Ni,{open:e,onOpenChange:e=>{e||g(),t(e)},children:(0,$.jsxs)(Ir,{className:`max-w-md`,children:[(0,$.jsxs)(Dr,{children:[(0,$.jsx)(qa,{children:r===`email`?`Log in`:`Check your email`}),(0,$.jsx)(_i,{children:r===`email`?`Enter your email and we'll send you a verification code.`:`We sent a 6-digit code to ${o}.`})]}),r===`email`?(0,$.jsxs)(`form`,{onSubmit:e=>void _(e),className:`grid gap-4 py-2`,children:[(0,$.jsxs)(`div`,{className:`grid gap-2`,children:[(0,$.jsx)(da,{htmlFor:`login-email`,children:`Email`}),(0,$.jsx)(Qo,{id:`login-email`,type:`email`,autoComplete:`email`,placeholder:`you@example.com`,value:o,onChange:e=>s(e.target.value),disabled:f})]}),u?(0,$.jsx)(`p`,{className:`text-sm text-destructive`,role:`alert`,children:u}):null,(0,$.jsx)(Xa,{children:(0,$.jsx)(Hr,{type:`submit`,disabled:f||!o.trim(),children:f?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(ln,{className:`h-4 w-4 animate-spin`}),`Sending...`]}):`Next`})})]}):(0,$.jsxs)(`div`,{className:`grid gap-4 py-2`,children:[(0,$.jsx)(`div`,{className:`flex justify-center py-2`,children:(0,$.jsx)(Bt,{maxLength:6,value:c,onChange:v,disabled:m,autoFocus:!0,children:(0,$.jsxs)(wt,{children:[(0,$.jsx)(Ft,{index:0}),(0,$.jsx)(Ft,{index:1}),(0,$.jsx)(Ft,{index:2}),(0,$.jsx)(Ft,{index:3}),(0,$.jsx)(Ft,{index:4}),(0,$.jsx)(Ft,{index:5})]})})}),u?(0,$.jsx)(`p`,{className:`text-center text-sm text-destructive`,role:`alert`,children:u}):null,(0,$.jsxs)(Xa,{className:`justify-between sm:justify-between`,children:[(0,$.jsxs)(Hr,{type:`button`,variant:`ghost`,onClick:()=>{a(`email`),l(``),d(null)},disabled:m,children:[(0,$.jsx)(i,{className:`h-4 w-4`}),`Back`]}),m?(0,$.jsxs)(`span`,{className:`flex items-center gap-2 text-sm text-muted-foreground`,children:[(0,$.jsx)(ln,{className:`h-4 w-4 animate-spin`}),`Verifying...`]}):null]})]})]})})}function lj(e){let t=(0,Q.c)(13),{stepNumber:n,currentStep:r,canGoToStep:i,onGoToStep:a}=e,o;t[0]!==i||t[1]!==a||t[2]!==n?(o=()=>i(n)&&a(n),t[0]=i,t[1]=a,t[2]=n,t[3]=o):o=t[3];let s=r===n?`scale-110 bg-primary text-primary-foreground`:r>n?`bg-brand text-brand-foreground`:`bg-muted text-muted-foreground`,c;t[4]!==i||t[5]!==n||t[6]!==s?(c=G(`flex h-8 w-8 shrink-0 items-center justify-center rounded-full transition-colors transition-transform duration-300 ease-out`,U.body,s,i(n)&&`cursor-pointer hover:opacity-90`),t[4]=i,t[5]=n,t[6]=s,t[7]=c):c=t[7];let l=`Go to step ${n}`,u;return t[8]!==n||t[9]!==o||t[10]!==c||t[11]!==l?(u=(0,$.jsx)(`button`,{type:`button`,onClick:o,className:c,"aria-label":l,children:n}),t[8]=n,t[9]=o,t[10]=c,t[11]=l,t[12]=u):u=t[12],u}function uj(e){let t=(0,Q.c)(2),{filled:n}=e,r=n?`100%`:`0%`,i;return t[0]===r?i=t[1]:(i=(0,$.jsx)(`div`,{className:`relative h-0.5 min-w-0 flex-1 overflow-hidden rounded-full bg-muted`,children:(0,$.jsx)(`div`,{className:`absolute inset-y-0 left-0 rounded-full bg-brand transition-[width] duration-300 ease-out`,style:{width:r}})}),t[0]=r,t[1]=i),i}function dj(e){let t=(0,Q.c)(14),{currentStep:n,canGoToStep:r,onGoToStep:i}=e,a;t[0]!==r||t[1]!==n||t[2]!==i?(a=(0,$.jsx)(lj,{stepNumber:1,currentStep:n,canGoToStep:r,onGoToStep:i}),t[0]=r,t[1]=n,t[2]=i,t[3]=a):a=t[3];let o=n>=2,s;t[4]===o?s=t[5]:(s=(0,$.jsx)(uj,{filled:o}),t[4]=o,t[5]=s);let c;t[6]!==r||t[7]!==n||t[8]!==i?(c=(0,$.jsx)(lj,{stepNumber:2,currentStep:n,canGoToStep:r,onGoToStep:i}),t[6]=r,t[7]=n,t[8]=i,t[9]=c):c=t[9];let l;return t[10]!==a||t[11]!==s||t[12]!==c?(l=(0,$.jsxs)(`div`,{className:`mx-auto mb-6 flex w-2/3 items-center gap-1`,children:[a,s,c]}),t[10]=a,t[11]=s,t[12]=c,t[13]=l):l=t[13],l}var fj={session:null,isLoading:!0},pj=new Set;function mj(){for(let e of pj)e()}function hj(){return fj}function gj(e){return pj.add(e),()=>pj.delete(e)}var _j=null;function vj(){return _j||=ij().then(e=>{fj={session:e,isLoading:!1}}).catch(()=>{fj={session:null,isLoading:!1}}).finally(()=>{mj()}),_j}function yj(){let e=(0,Q.c)(4),{session:t,isLoading:n}=(0,Z.useSyncExternalStore)(gj,hj),r;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=[],e[0]=r):r=e[0],(0,Z.useEffect)(Sj,r);let i=xj,a=bj,o;return e[1]!==n||e[2]!==t?(o={session:t,isLoading:n,login:i,logout:a},e[1]=n,e[2]=t,e[3]=o):o=e[3],o}async function bj(){let e=fj.session?.token;e&&await rj(e),await oj(),fj={session:null,isLoading:!1},mj()}async function xj(e){await aj(e),fj={session:e,isLoading:!1},mj()}function Sj(){vj()}function Cj(e){let[t,n]=(0,Z.useState)([]),[r,i]=(0,Z.useState)(!0),a=(0,Z.useCallback)(async()=>{if(!e){i(!1);return}i(!0);try{let t=await Aa(e);n(Object.entries(t.servers??{}).map(([e,t])=>({name:e,config:t})))}catch{n([])}finally{i(!1)}},[e]);return(0,Z.useLayoutEffect)(()=>{e&&i(!0)},[e]),(0,Z.useEffect)(()=>{a()},[a]),{installedServers:t,loadingConfig:r,loadInstalledServers:a}}function wj(){let e=(0,Q.c)(6),t;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=[],e[0]=t):t=e[0];let[n,r]=(0,Z.useState)(t),[i,a]=(0,Z.useState)(!0),o,s;e[1]===Symbol.for(`react.memo_cache_sentinel`)?(o=()=>{a(!0),ua().then(r).catch(()=>r([])).finally(()=>a(!1))},s=[],e[1]=o,e[2]=s):(o=e[1],s=e[2]),(0,Z.useEffect)(o,s);let c;return e[3]!==i||e[4]!==n?(c={popularServers:n,loadingPopular:i},e[3]=i,e[4]=n,e[5]=c):c=e[5],c}async function Tj(e,t,n){await fo(e,t,n)}async function Ej(e,t){await ma(e,t)}function Dj(e){let t=[];function n(e){for(let r of e){if(r.path===`.agents/skills`&&r.type===`folder`&&r.children)for(let e of r.children)e.type===`folder`&&t.push({id:`skill:${e.path}`,name:e.name});r.children&&n(r.children)}}return n(e),t.sort((e,t)=>e.name.localeCompare(t.name))}function Oj(e){return e.url?e.url:`${e.command??``} ${e.args?.join(` `)??``}`.trim()||void 0}function kj(e){return(e??``).trim().toLowerCase().replace(/[^a-z0-9.-]+/g,`-`).replace(/-{2,}/g,`-`).replace(/\.{2,}/g,`.`).replace(/^[^a-z0-9]+|[^a-z0-9]+$/g,``)}function Aj(e){return e.split(`-`).map(e=>e&&e[0].toUpperCase()+e.slice(1)).join(` `)}function jj(e,t){return t.length===1?`${Aj(t[0].name)} plugin`:e?`${Aj(e)} Plugins`:``}function Mj(e,t){let n=[];return e.length>0&&n.push(`skills: ${e.join(`, `)}`),t.length>0&&n.push(`MCP servers: ${t.join(`, `)}`),n.length===0?``:`Includes ${n.join(`; `)}.`}function Nj(e){return e.length?e.slice(0,3).map(e=>e.path?`${e.path}: ${e.message}`:e.message).join(`; `):`Check the validation details.`}function Pj(e){return new Promise((t,n)=>{let r=new FileReader;r.onload=()=>{let e=typeof r.result==`string`?r.result:``,n=e.indexOf(`,`);t(n>=0?e.slice(n+1):e)},r.onerror=()=>n(r.error),r.readAsDataURL(e)})}async function Fj(e,t){if(Pr()){await is(`/api/file/save`,{name:t,data:await Pj(e)});return}let n=window.showSaveFilePicker;if(typeof n==`function`)try{let r=await(await n({suggestedName:t})).createWritable();await r.write(e),await r.close();return}catch(e){e instanceof Error&&e.name!==`AbortError`&&console.error(`Save file picker failed:`,e)}let r=URL.createObjectURL(e),i=document.createElement(`a`);i.href=r,i.download=t,i.rel=`noopener`,document.body.appendChild(i),i.click(),document.body.removeChild(i),URL.revokeObjectURL(r)}function Ij(e){let t=(0,Q.c)(19),{item:n,checked:r,onCheckedChange:i}=e,a=`${r?`Include`:`Exclude`} ${n.name}`,o;t[0]!==r||t[1]!==i||t[2]!==a?(o=(0,$.jsx)(ix,{value:r,onChange:i,ariaLabel:a}),t[0]=r,t[1]=i,t[2]=a,t[3]=o):o=t[3];let s;t[4]!==r||t[5]!==i?(s=()=>i(!r),t[4]=r,t[5]=i,t[6]=s):s=t[6];let c;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(c=G(U.body,`truncate`),t[7]=c):c=t[7];let l;t[8]===n.name?l=t[9]:(l=(0,$.jsx)(`div`,{className:c,children:n.name}),t[8]=n.name,t[9]=l);let u;t[10]===n.detail?u=t[11]:(u=n.detail?(0,$.jsx)(`div`,{className:G(U.compact,`truncate font-mono text-muted-foreground`),children:n.detail}):null,t[10]=n.detail,t[11]=u);let d;t[12]!==s||t[13]!==l||t[14]!==u?(d=(0,$.jsxs)(`button`,{type:`button`,onClick:s,className:`min-w-0 text-left`,children:[l,u]}),t[12]=s,t[13]=l,t[14]=u,t[15]=d):d=t[15];let f;return t[16]!==o||t[17]!==d?(f=(0,$.jsxs)(`div`,{className:`grid min-h-10 grid-cols-[auto_minmax(0,1fr)] items-center gap-3 px-3 py-2`,children:[o,d]}),t[16]=o,t[17]=d,t[18]=f):f=t[18],f}function Lj(e){let t=(0,Q.c)(25),{title:n,count:r,allSelected:i,onToggleAll:a,open:o,onOpenChange:s,children:c}=e,l=`${i?`Include`:`Exclude`} ${n}`,u;t[0]!==i||t[1]!==a||t[2]!==l?(u=(0,$.jsx)(ix,{value:i,onChange:a,ariaLabel:l}),t[0]=i,t[1]=a,t[2]=l,t[3]=u):u=t[3];let d;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(d=G(U.label,`flex-1 truncate text-left`),t[4]=d):d=t[4];let f;t[5]!==r||t[6]!==n?(f=(0,$.jsxs)(`span`,{className:d,children:[r,` `,n]}),t[5]=r,t[6]=n,t[7]=f):f=t[7];let p=o&&`rotate-180`,m;t[8]===p?m=t[9]:(m=G(`h-3.5 w-3.5 shrink-0 text-muted-foreground transition-transform`,p),t[8]=p,t[9]=m);let h;t[10]===m?h=t[11]:(h=(0,$.jsx)(tn,{className:m}),t[10]=m,t[11]=h);let g;t[12]!==f||t[13]!==h?(g=(0,$.jsxs)(Cb,{className:`flex min-w-0 flex-1 items-center gap-1`,children:[f,h]}),t[12]=f,t[13]=h,t[14]=g):g=t[14];let _;t[15]!==u||t[16]!==g?(_=(0,$.jsxs)(`div`,{className:`flex items-center gap-3`,children:[u,g]}),t[15]=u,t[16]=g,t[17]=_):_=t[17];let v;t[18]===c?v=t[19]:(v=(0,$.jsx)(wb,{children:(0,$.jsx)(`div`,{className:`mt-2 divide-y divide-table-border`,children:c})}),t[18]=c,t[19]=v);let y;return t[20]!==s||t[21]!==o||t[22]!==v||t[23]!==_?(y=(0,$.jsx)(`section`,{className:`border-b border-border pb-3`,children:(0,$.jsxs)(Sb,{open:o,onOpenChange:s,children:[_,v]})}),t[20]=s,t[21]=o,t[22]=v,t[23]=_,t[24]=y):y=t[24],y}function Rj({open:e,onOpenChange:t}){let{session:n,login:r,logout:i}=yj(),a=X(e=>e.selectedProjectId),o=X(e=>e.projects).find(e=>e.projectId===a),s=o?Ke(o):void 0,{installedServers:c,loadingConfig:l}=Cj(o?.projectPath),[u,d]=(0,Z.useState)(!1),[f,p]=(0,Z.useState)(!1),[m,h]=(0,Z.useState)(null),[g,_]=(0,Z.useState)(!1),[v,y]=(0,Z.useState)([]),[b,x]=(0,Z.useState)(!1),[S,C]=(0,Z.useState)(!1),[w,T]=(0,Z.useState)(!1),[E,D]=(0,Z.useState)(new Set),[O,k]=(0,Z.useState)(!1),[A,j]=(0,Z.useState)(``),[M,N]=(0,Z.useState)(!1),[P,F]=(0,Z.useState)(``),[I,L]=(0,Z.useState)(!1),[R,z]=(0,Z.useState)(`1.0.0`),[B,V]=(0,Z.useState)(1);(0,Z.useEffect)(()=>{let e=!1;return a?(x(!0),ro(a).then(t=>{e||y(Dj(t))}).catch(()=>{e||y([])}).finally(()=>{e||x(!1)}),()=>{e=!0}):(y([]),x(!1),()=>{e=!0})},[a]);let H=c.map(e=>({id:`mcp:${e.name}`,name:e.name,detail:Oj(e.config)})).sort((e,t)=>e.name.localeCompare(t.name)),ee=[...v,...H],te=ee.map(e=>e.id),ne=v.length>0&&v.every(e=>E.has(e.id)),re=H.length>0&&H.every(e=>E.has(e.id)),ie=v.filter(e=>E.has(e.id)).map(e=>e.name),ae=H.filter(e=>E.has(e.id)).map(e=>e.name),oe=kj(A),se=kj(s?O?`${s} source code`:`${s} Plugins`:``),ce=ee.length>0||O,le=!b&&!l&&ee.length>0,ue=!b&&!l&&ce&&!!se,de=oe.length>0&&!!a;function fe(e){return e===1?B===2:le&&!O}function pe(e){V(e)}function me(){B===2?V(1):t(!1)}(0,Z.useEffect)(()=>{e&&(D(new Set(te)),k(!1),V(1),j(jj(s,ee)),N(!1),L(!1),z(`1.0.0`))},[e,a,v,c]),(0,Z.useEffect)(()=>{!e||M||j(jj(s,[...v.filter(e=>E.has(e.id)),...H.filter(e=>E.has(e.id))]))},[e,M,s,v,H,E]),(0,Z.useEffect)(()=>{!e||I||F(Mj(ie,ae))},[e,ie,ae,I]);function he(e,t){D(n=>{let r=new Set(n);return t?r.add(e):r.delete(e),r}),t&&k(!1)}function ge(e){D(t=>{let n=new Set(t);for(let t of v)e?n.add(t.id):n.delete(t.id);return n}),e&&k(!1)}function _e(e){D(t=>{let n=new Set(t);for(let t of H)e?n.add(t.id):n.delete(t.id);return n}),e&&k(!1)}function ve(e){k(e),e&&(D(new Set),C(!1),T(!1))}async function ye(){if(!(!a||!se)){p(!0);try{await Fj(await pi(a,{skillNames:ie,mcpServerNames:ae,includeSourceCode:O,manifest:{name:se,description:Mj(ie,ae),version:`1.0.0`}}),`${se}.zip`),ac({title:`Saved ${se}.zip`,description:`The plugin package was saved.`})}catch(e){ac({title:`Failed to export plugin`,description:e instanceof Error?e.message:void 0,variant:`destructive`})}finally{p(!1)}}}async function be(){if(!(!a||!de)){if(!n){d(!0);return}p(!0);try{let e=await kr(a,{skillNames:ie,mcpServerNames:ae,manifest:{name:oe,description:P.trim(),version:R.trim(),private:!0}});e.valid?(e.url&&(h(e.url),_(!1)),t(!1)):ac({title:`Plugin failed validation`,description:Nj(e.errors),variant:`destructive`})}catch(e){ac({title:`Failed to share plugin`,description:e instanceof Error?e.message:void 0,variant:`destructive`})}finally{p(!1)}}}async function xe(){if(m)try{await navigator.clipboard.writeText(m),_(!0),ac({title:`Copied`,description:`Plugin link copied to clipboard.`}),window.setTimeout(()=>_(!1),1500)}catch(e){ac({title:`Copy failed`,description:e instanceof Error?e.message:`Could not copy the plugin link.`,variant:`destructive`})}}return(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(Ni,{open:e,onOpenChange:t,children:(0,$.jsxs)(Ir,{className:`flex h-[min(42rem,90dvh)] max-w-2xl flex-col overflow-hidden p-0`,children:[(0,$.jsxs)(`div`,{className:`px-6 pb-2 pt-6`,children:[(0,$.jsx)(dj,{currentStep:B,canGoToStep:fe,onGoToStep:pe}),(0,$.jsxs)(Dr,{children:[(0,$.jsx)(qa,{children:B===1?`Share`:`Share Plugin`}),(0,$.jsx)(_i,{children:B===1?`Select the project tools to include.`:`Add a name and description for your plugin.`})]})]}),B===1?(0,$.jsx)(za,{className:`min-h-0 flex-1`,children:b||l?(0,$.jsxs)(`div`,{className:`flex items-center justify-center px-6 py-8 text-muted-foreground`,children:[(0,$.jsx)(ln,{className:`mr-2 h-4 w-4 animate-spin`}),`Loading project tools...`]}):(0,$.jsxs)(`div`,{className:`flex flex-col gap-6 px-6 py-4`,children:[ee.length>0&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(Lj,{title:`Skills`,count:v.length,allSelected:ne,onToggleAll:ge,open:S,onOpenChange:C,children:v.length>0?v.map(e=>(0,$.jsx)(Ij,{item:e,checked:E.has(e.id),onCheckedChange:t=>he(e.id,t)},e.id)):(0,$.jsx)(`p`,{className:G(U.bodyMuted,`py-2`),children:`No skills configured.`})}),(0,$.jsx)(Lj,{title:`MCP Servers`,count:H.length,allSelected:re,onToggleAll:_e,open:w,onOpenChange:T,children:H.length>0?H.map(e=>(0,$.jsx)(Ij,{item:e,checked:E.has(e.id),onCheckedChange:t=>he(e.id,t)},e.id)):(0,$.jsx)(`p`,{className:G(U.bodyMuted,`py-2`),children:`No MCP servers configured.`})})]}),(0,$.jsx)(`section`,{className:`border-b border-border pb-3`,children:(0,$.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,$.jsx)(ix,{value:O,onChange:ve,ariaLabel:O?`Exclude Source Code`:`Include Source Code`}),(0,$.jsx)(`button`,{type:`button`,onClick:()=>ve(!O),className:`min-w-0 flex-1 text-left`,children:(0,$.jsx)(`span`,{className:G(U.label,`truncate`),children:`Source Code`})})]})})]})}):(0,$.jsx)(za,{className:`min-h-0 flex-1`,children:(0,$.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col gap-4 px-6 py-4`,children:[(0,$.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,$.jsx)(da,{htmlFor:`pluginName`,children:`Plugin name`}),(0,$.jsx)(Qo,{id:`pluginName`,placeholder:`my-plugin`,value:A,onChange:e=>{N(!0),j(e.target.value)},onKeyDown:e=>e.key===`Enter`&&de&&!f&&void be(),autoFocus:!0,className:`w-full`}),(0,$.jsxs)(`p`,{className:G(U.bodyMuted,U.caption),children:[`Slug: `,oe||`my-plugin`]})]}),(0,$.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,$.jsx)(da,{htmlFor:`pluginDescription`,children:`Description`}),(0,$.jsx)(Qo,{id:`pluginDescription`,placeholder:`What this plugin provides`,value:P,onChange:e=>{L(!0),F(e.target.value)},className:`w-full`})]}),(0,$.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,$.jsx)(da,{htmlFor:`pluginVersion`,children:`Version`}),(0,$.jsx)(Qo,{id:`pluginVersion`,placeholder:`1.0.0`,value:R,onChange:e=>z(e.target.value),className:`w-full`})]})]})}),B===2?(0,$.jsx)(`div`,{className:`px-6 pb-3`,children:n?(0,$.jsxs)(`p`,{className:G(U.compact,`flex items-center gap-2 text-muted-foreground`),children:[`Sharing as `,(0,$.jsx)(`span`,{className:`font-medium text-foreground`,children:n.email}),(0,$.jsx)(Hr,{type:`button`,variant:`link`,size:`sm`,onClick:()=>void i(),children:`Log out`})]}):(0,$.jsx)(`p`,{className:G(U.compact,`text-primary`),children:`To share your plugin you will need to verify your email address next.`})}):null,(0,$.jsx)(`div`,{className:`flex min-h-[4.5rem] flex-col justify-end border-t border-border bg-muted/10 px-6 py-4`,children:(0,$.jsxs)(Xa,{className:`flex-col gap-3 sm:flex-row sm:justify-end sm:space-x-0`,children:[(0,$.jsx)(`div`,{className:`flex flex-1 items-center gap-2`,children:(0,$.jsx)(Hr,{type:`button`,variant:`ghost`,onClick:me,children:B===1?`Cancel`:`Back`})}),B===1?(0,$.jsxs)(`div`,{className:`flex gap-2`,children:[(0,$.jsx)(Hr,{type:`button`,variant:`outline`,onClick:()=>void ye(),disabled:!ue||f,children:`Download`}),(0,$.jsx)(Hr,{type:`button`,onClick:()=>V(2),disabled:!le||O,children:`Next >`})]}):(0,$.jsxs)(Hr,{type:`button`,onClick:()=>void be(),disabled:!de||f,children:[f?(0,$.jsx)(ln,{className:`mr-2 h-4 w-4 animate-spin`}):null,`Share`]})]})})]})}),(0,$.jsx)(Ni,{open:m!==null,onOpenChange:e=>!e&&h(null),children:(0,$.jsxs)(Ir,{className:`max-w-xl`,children:[(0,$.jsxs)(Dr,{children:[(0,$.jsx)(qa,{children:`Plugin shared`}),(0,$.jsx)(_i,{children:`Your plugin is published at the URL below. Copy it to share with others.`})]}),(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-col gap-1.5`,children:[(0,$.jsx)(`span`,{className:G(U.label,`text-muted-foreground`),children:`Plugin URL`}),(0,$.jsxs)(`div`,{className:`relative min-w-0 rounded-md border bg-muted/40 px-3 py-2`,children:[(0,$.jsx)(`a`,{href:m??void 0,target:`_blank`,rel:`noreferrer`,className:G(`block min-w-0 truncate pr-8 text-primary underline underline-offset-2 hover:text-primary/80`),children:m}),(0,$.jsx)(`div`,{className:`absolute right-2 top-1/2 -translate-y-1/2`,children:(0,$.jsx)(Zo,{children:(0,$.jsxs)(Mi,{children:[(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(Hr,{type:`button`,variant:`ghost`,size:`icon`,onClick:()=>void xe(),"aria-label":`Copy plugin URL`,className:`shrink-0`,children:g?(0,$.jsx)(W,{className:`h-4 w-4`}):(0,$.jsx)(Ze,{className:`h-4 w-4`})})}),(0,$.jsx)(Fr,{children:g?`Copied`:`Copy`})]})})})]})]}),(0,$.jsx)(Xa,{children:(0,$.jsx)(Hr,{type:`button`,onClick:()=>h(null),children:`Done`})})]})}),(0,$.jsx)(cj,{open:u,onOpenChange:d,onVerified:e=>r(e)})]})}function zj(){let[e,t]=(0,Z.useState)(!1),[n,r]=(0,Z.useState)(``),[i,a]=(0,Z.useState)(``),[o,s]=(0,Z.useState)(``),[c,l]=(0,Z.useState)(!1),[u,d]=(0,Z.useState)(!1);return(0,Z.useEffect)(()=>{if(!e)return;let t=!0;return l(!0),ea().then(e=>{t&&(r(t=>t||e.name),a(t=>t||e.email))}).catch(()=>{t&&ac({title:`Could not load git details`,description:`You can still submit feedback by entering your name and email manually.`,variant:`destructive`})}).finally(()=>{t&&l(!1)}),()=>{t=!1}},[e]),{showFeedback:e,feedbackName:n,setFeedbackName:r,feedbackEmail:i,setFeedbackEmail:a,feedbackText:o,setFeedbackText:s,loadingFeedbackUser:c,submittingFeedback:u,handleFeedbackDialogChange:e=>{t(e),e||s(``)},handleSubmitFeedback:async()=>{let e=o.trim();if(!e){ac({title:`Feedback required`,description:`Please enter your feedback before submitting.`,variant:`destructive`});return}d(!0);try{await is(`api/feedback`,{name:n.trim(),email:i.trim(),feedback:e}),ac({title:`Feedback sent`,description:`Thanks for sharing your feedback.`}),s(``),t(!1)}catch(e){ac({title:`Failed to send feedback`,description:e instanceof Error?e.message:`Please try again.`,variant:`destructive`})}finally{d(!1)}}}}function Bj(){let e=(0,Q.c)(93),t=Yn(),n=Ks(),r=gC(),{openConversation:i}=ZA(),a=X(Hj),o=X(Vj),[s,c]=(0,Z.useState)(!1),[l,u]=(0,Z.useState)(!1),[d,f]=(0,Z.useState)(!1),m;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(m=[],e[0]=m):m=e[0];let[h,g]=(0,Z.useState)(m),[_,v]=(0,Z.useState)(!1),[y,b]=(0,Z.useState)(!1),{showFeedback:S,feedbackName:C,setFeedbackName:w,feedbackEmail:T,setFeedbackEmail:E,feedbackText:D,setFeedbackText:O,loadingFeedbackUser:k,submittingFeedback:j,handleFeedbackDialogChange:M,handleSubmitFeedback:N}=zj(),P;if(e[1]!==o||e[2]!==a){let t;e[4]===a?t=e[5]:(t=e=>e.projectId===a,e[4]=a,e[5]=t),P=o.find(t),e[1]=o,e[2]=a,e[3]=P}else P=e[3];let F=P,I;e[6]===F?.commands?I=e[7]:(I=F?.commands??[],e[6]=F?.commands,e[7]=I);let L=I,R;if(e[8]!==_){let t=function(){_||Go(20).then(e=>{g(e.conversations??[]),v(!0)}).catch(()=>{v(!1)})};R=function(e){b(e),e&&t()},e[8]=_,e[9]=R}else R=e[9];let z=R,B=r?`ghost`:`outline`,V=r?nl:`border-transparent`,H;e[10]===V?H=e[11]:(H=G(`h-8 w-8 px-0`,V),e[10]=V,e[11]=H);let ee;e[12]===Symbol.for(`react.memo_cache_sentinel`)?(ee=(0,$.jsx)(Dt,{className:`h-4 w-4`}),e[12]=ee):ee=e[12];let ne;e[13]!==B||e[14]!==H?(ne=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsx)(gl,{asChild:!0,children:(0,$.jsx)(Hr,{variant:B,size:`sm`,className:H,"aria-label":`More options`,children:ee})})}),e[13]=B,e[14]=H,e[15]=ne):ne=e[15];let re;e[16]===Symbol.for(`react.memo_cache_sentinel`)?(re=(0,$.jsx)(Fr,{children:`More options`}),e[16]=re):re=e[16];let ie;e[17]===ne?ie=e[18]:(ie=(0,$.jsxs)(Mi,{children:[ne,re]}),e[17]=ne,e[18]=ie);let ae;e[19]!==z||e[20]!==_||e[21]!==y||e[22]!==t||e[23]!==i||e[24]!==h||e[25]!==a?(ae=a?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(wl,{className:U.body,children:`Project`}),(0,$.jsxs)(xl,{className:G(U.body,`gap-2`),onSelect:()=>void t(`/settings/project/${a}`),children:[(0,$.jsx)(x,{className:`h-4 w-4 shrink-0`}),`Settings`]}),(0,$.jsxs)(xl,{className:G(U.body,`gap-2`),onSelect:()=>c(!0),children:[(0,$.jsx)(A,{className:`h-4 w-4 shrink-0`}),`Commands`]}),(0,$.jsxs)(xl,{className:G(U.body,`gap-2`),onSelect:()=>f(!0),children:[(0,$.jsx)(p,{className:`h-4 w-4 shrink-0`}),`Share`]}),(0,$.jsxs)(_l,{open:y,onOpenChange:z,children:[(0,$.jsxs)(vl,{className:G(U.body,`gap-2`),children:[(0,$.jsx)(bt,{className:`h-4 w-4 shrink-0`}),`History`]}),(0,$.jsx)(yl,{className:`w-96 max-h-80 overflow-y-auto`,children:_?h.length===0?(0,$.jsx)(xl,{disabled:!0,className:U.bodyMuted,children:`No recent conversations`}):h.map(e=>(0,$.jsxs)(xl,{className:G(U.body,`gap-2 cursor-pointer`),onSelect:()=>i(e),children:[(0,$.jsx)(At,{className:`h-3.5 w-3.5 shrink-0 text-muted-foreground`}),(0,$.jsx)(`span`,{className:`truncate`,children:e.title}),(0,$.jsx)(`span`,{className:G(U.bodyMuted,`ml-auto shrink-0 tabular-nums`),children:K(e.lastMessageAt)})]},e.conversationId)):(0,$.jsx)(xl,{disabled:!0,className:U.bodyMuted,children:`Loading...`})})]})]}):null,e[19]=z,e[20]=_,e[21]=y,e[22]=t,e[23]=i,e[24]=h,e[25]=a,e[26]=ae):ae=e[26];let oe,se;e[27]===Symbol.for(`react.memo_cache_sentinel`)?(oe=(0,$.jsx)(Tl,{}),se=(0,$.jsx)(wl,{className:U.body,children:`General`}),e[27]=oe,e[28]=se):(oe=e[27],se=e[28]);let ce;e[29]===Symbol.for(`react.memo_cache_sentinel`)?(ce=G(U.body,`gap-2`),e[29]=ce):ce=e[29];let le;e[30]===t?le=e[31]:(le=()=>void t(`/settings/general`),e[30]=t,e[31]=le);let ue;e[32]===Symbol.for(`react.memo_cache_sentinel`)?(ue=(0,$.jsx)(x,{className:`h-4 w-4 shrink-0`}),e[32]=ue):ue=e[32];let W;e[33]===le?W=e[34]:(W=(0,$.jsxs)(xl,{className:ce,onSelect:le,children:[ue,`Settings`]}),e[33]=le,e[34]=W);let de;e[35]===Symbol.for(`react.memo_cache_sentinel`)?(de=G(U.body,`gap-2`),e[35]=de):de=e[35];let fe;e[36]===t?fe=e[37]:(fe=()=>void t(`/settings/providers`),e[36]=t,e[37]=fe);let pe;e[38]===Symbol.for(`react.memo_cache_sentinel`)?(pe=(0,$.jsx)(Kt,{className:`h-4 w-4 shrink-0`}),e[38]=pe):pe=e[38];let me;e[39]===fe?me=e[40]:(me=(0,$.jsxs)(xl,{className:de,onSelect:fe,children:[pe,`Providers`]}),e[39]=fe,e[40]=me);let he;e[41]===Symbol.for(`react.memo_cache_sentinel`)?(he=G(U.body,`gap-2`),e[41]=he):he=e[41];let ge;e[42]===t?ge=e[43]:(ge=()=>void t(`/settings/account`),e[42]=t,e[43]=ge);let _e;e[44]===Symbol.for(`react.memo_cache_sentinel`)?(_e=(0,$.jsx)(ot,{className:`h-4 w-4 shrink-0`}),e[44]=_e):_e=e[44];let ve;e[45]===ge?ve=e[46]:(ve=(0,$.jsxs)(xl,{className:he,onSelect:ge,children:[_e,`Account`]}),e[45]=ge,e[46]=ve);let ye;e[47]===Symbol.for(`react.memo_cache_sentinel`)?(ye=G(U.body,`gap-2`),e[47]=ye):ye=e[47];let be;e[48]===M?be=e[49]:(be=()=>M(!0),e[48]=M,e[49]=be);let xe;e[50]===Symbol.for(`react.memo_cache_sentinel`)?(xe=(0,$.jsx)(At,{className:`h-4 w-4 shrink-0`}),e[50]=xe):xe=e[50];let Se;e[51]===be?Se=e[52]:(Se=(0,$.jsxs)(xl,{className:ye,onSelect:be,children:[xe,`Feedback`]}),e[51]=be,e[52]=Se);let Ce;e[53]===Symbol.for(`react.memo_cache_sentinel`)?(Ce=(0,$.jsx)(Tl,{}),e[53]=Ce):Ce=e[53];let we;e[54]===Symbol.for(`react.memo_cache_sentinel`)?(we=(0,$.jsxs)(xl,{className:G(U.body,`gap-2`),onSelect:()=>u(!0),children:[(0,$.jsx)(te,{className:`h-4 w-4 shrink-0`}),`Processes`]}),e[54]=we):we=e[54];let Te;e[55]!==ae||e[56]!==W||e[57]!==me||e[58]!==ve||e[59]!==Se?(Te=(0,$.jsxs)(bl,{align:`end`,className:`w-52`,children:[ae,oe,se,W,me,ve,Se,Ce,we]}),e[55]=ae,e[56]=W,e[57]=me,e[58]=ve,e[59]=Se,e[60]=Te):Te=e[60];let Ee;e[61]!==ie||e[62]!==Te?(Ee=(0,$.jsxs)(hl,{children:[ie,Te]}),e[61]=ie,e[62]=Te,e[63]=Ee):Ee=e[63];let De;e[64]!==L||e[65]!==n||e[66]!==a||e[67]!==s?(De=a?(0,$.jsx)(ww,{open:s,onOpenChange:c,projectId:a,commands:L,onRefresh:()=>n({type:Y.ConfigUpdated})}):null,e[64]=L,e[65]=n,e[66]=a,e[67]=s,e[68]=De):De=e[68];let Oe;e[69]===l?Oe=e[70]:(Oe=(0,$.jsx)($A,{open:l,onOpenChange:u}),e[69]=l,e[70]=Oe);let ke;e[71]===d?ke=e[72]:(ke=(0,$.jsx)(Rj,{open:d,onOpenChange:f}),e[71]=d,e[72]=ke);let Ae;e[73]===N?Ae=e[74]:(Ae=()=>void N(),e[73]=N,e[74]=Ae);let je;e[75]!==T||e[76]!==C||e[77]!==D||e[78]!==M||e[79]!==k||e[80]!==E||e[81]!==w||e[82]!==O||e[83]!==S||e[84]!==j||e[85]!==Ae?(je=(0,$.jsx)(QA,{open:S,onOpenChange:M,feedbackName:C,onFeedbackNameChange:w,feedbackEmail:T,onFeedbackEmailChange:E,feedbackText:D,onFeedbackTextChange:O,loadingFeedbackUser:k,submittingFeedback:j,onSubmit:Ae}),e[75]=T,e[76]=C,e[77]=D,e[78]=M,e[79]=k,e[80]=E,e[81]=w,e[82]=O,e[83]=S,e[84]=j,e[85]=Ae,e[86]=je):je=e[86];let Me;return e[87]!==Ee||e[88]!==De||e[89]!==Oe||e[90]!==ke||e[91]!==je?(Me=(0,$.jsxs)($.Fragment,{children:[Ee,De,Oe,ke,je]}),e[87]=Ee,e[88]=De,e[89]=Oe,e[90]=ke,e[91]=je,e[92]=Me):Me=e[92],Me}function Vj(e){return e.projects}function Hj(e){return e.selectedProjectId}function Uj(e){let t=(0,Q.c)(3),{children:n,className:r}=e,i=`flex items-center gap-2 rounded-full shadow-md ${r===void 0?``:r}`,a;return t[0]!==n||t[1]!==i?(a=(0,$.jsx)(`div`,{className:i,children:n}),t[0]=n,t[1]=i,t[2]=a):a=t[2],a}function Wj(e){let t=(0,Q.c)(12),{className:n}=e,r=Yn(),i;t[0]===n?i=t[1]:(i=G(`h-8 w-8 text-muted-foreground shrink-0`,n),t[0]=n,t[1]=i);let a;t[2]===r?a=t[3]:(a=()=>void r(`/settings/general`),t[2]=r,t[3]=a);let o,s;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,$.jsx)(x,{className:`h-4 w-4`}),s=(0,$.jsx)(`span`,{className:`sr-only`,children:`Settings`}),t[4]=o,t[5]=s):(o=t[4],s=t[5]);let c;t[6]!==i||t[7]!==a?(c=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(Hr,{variant:`ghost`,size:`icon`,className:i,onClick:a,children:[o,s]})}),t[6]=i,t[7]=a,t[8]=c):c=t[8];let l;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,$.jsx)(Fr,{children:`Settings`}),t[9]=l):l=t[9];let u;return t[10]===c?u=t[11]:(u=(0,$.jsx)(Zo,{children:(0,$.jsxs)(Mi,{children:[c,l]})}),t[10]=c,t[11]=u),u}function Gj(e){let t=(0,Q.c)(15),{className:n}=e,r=Yn(),i=X(Kj),a=gC(),o=a?`ghost`:`outline`,s=a?nl:`border-transparent text-muted-foreground`,c;t[0]!==n||t[1]!==s?(c=G(`h-8 w-8 shrink-0`,s,n),t[0]=n,t[1]=s,t[2]=c):c=t[2];let l;t[3]!==r||t[4]!==i?(l=()=>void r(`/settings/project/${i}`),t[3]=r,t[4]=i,t[5]=l):l=t[5];let u,d;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(u=(0,$.jsx)(x,{className:`h-4 w-4 shrink-0`}),d=(0,$.jsx)(`span`,{className:`sr-only`,children:`Project Settings`}),t[6]=u,t[7]=d):(u=t[6],d=t[7]);let f;t[8]!==o||t[9]!==c||t[10]!==l?(f=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(Hr,{variant:o,size:`icon`,className:c,onClick:l,children:[u,d]})}),t[8]=o,t[9]=c,t[10]=l,t[11]=f):f=t[11];let p;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(p=(0,$.jsx)(Fr,{children:`Project Settings`}),t[12]=p):p=t[12];let m;return t[13]===f?m=t[14]:(m=(0,$.jsx)(Zo,{children:(0,$.jsxs)(Mi,{children:[f,p]})}),t[13]=f,t[14]=m),m}function Kj(e){return e.selectedProjectId}function qj(e){let t=(0,Q.c)(10),{showingProjectDetails:n,onBackToProjects:r}=e,i=n?nl:`text-muted-foreground`,a;t[0]===i?a=t[1]:(a=G(`h-8 w-8 shrink-0 electrobun-webkit-app-region-no-drag`,i),t[0]=i,t[1]=a);let o,s;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,$.jsx)(H,{className:`h-4 w-4`}),s=(0,$.jsx)(`span`,{className:`sr-only`,children:`Back to projects`}),t[2]=o,t[3]=s):(o=t[2],s=t[3]);let c;t[4]!==r||t[5]!==a?(c=(0,$.jsx)(zi,{asChild:!0,children:(0,$.jsxs)(Hr,{variant:`ghost`,size:`icon`,className:a,onClick:r,children:[o,s]})}),t[4]=r,t[5]=a,t[6]=c):c=t[6];let l;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,$.jsx)(Fr,{children:`Projects`}),t[7]=l):l=t[7];let u;return t[8]===c?u=t[9]:(u=(0,$.jsx)(Zo,{children:(0,$.jsxs)(Mi,{children:[c,l]})}),t[8]=c,t[9]=u),u}function Jj(e){let t=(0,Q.c)(14),{project:n,showingProjectDetails:r}=e,i;t[0]!==n||t[1]!==r?(i=r?null:(0,$.jsx)(Yc,{project:n,elevated:!1,className:`h-5 w-5 shrink-0 rounded`,iconClassName:`h-3 w-3`}),t[0]=n,t[1]=r,t[2]=i):i=t[2];let a=r?U.body:U.sectionTitle,o=!r&&`text-foreground`,s;t[3]!==a||t[4]!==o?(s=G(a,`truncate min-w-0`,o),t[3]=a,t[4]=o,t[5]=s):s=t[5];let c;t[6]===n?c=t[7]:(c=Ke(n),t[6]=n,t[7]=c);let l;t[8]!==s||t[9]!==c?(l=(0,$.jsx)(`span`,{className:s,children:c}),t[8]=s,t[9]=c,t[10]=l):l=t[10];let u;return t[11]!==i||t[12]!==l?(u=(0,$.jsxs)($.Fragment,{children:[i,l]}),t[11]=i,t[12]=l,t[13]=u):u=t[13],u}function Yj(e){let t=(0,Q.c)(27),{selectedProject:n,showingProjectDetails:r,sortedProjects:i,selectedProjectId:a,useDropdown:s,onSelectProject:c}=e;if(!s){let e;return t[0]!==n||t[1]!==r?(e=(0,$.jsx)(`div`,{className:`flex min-w-0 items-center gap-2`,children:(0,$.jsx)(Jj,{project:n,showingProjectDetails:r})}),t[0]=n,t[1]=r,t[2]=e):e=t[2],e}let l;t[3]!==n||t[4]!==r?(l=(0,$.jsx)(Jj,{project:n,showingProjectDetails:r}),t[3]=n,t[4]=r,t[5]=l):l=t[5];let u=r?`scenic-foreground-muted`:`text-muted-foreground`,d;t[6]===u?d=t[7]:(d=G(`h-4 w-4 shrink-0`,u),t[6]=u,t[7]=d);let f;t[8]===d?f=t[9]:(f=(0,$.jsx)(tn,{className:d}),t[8]=d,t[9]=f);let p;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(p=(0,$.jsx)(`span`,{className:`sr-only`,children:`Switch project`}),t[10]=p):p=t[10];let m;t[11]!==l||t[12]!==f?(m=(0,$.jsx)(gl,{asChild:!0,children:(0,$.jsxs)(`button`,{type:`button`,className:`flex min-w-0 max-w-full items-center gap-1 rounded-md px-1.5 py-0.5 text-left outline-none transition-colors can-hover:hover:bg-muted focus-visible:ring-2 focus-visible:ring-ring electrobun-webkit-app-region-no-drag`,children:[l,f,p]})}),t[11]=l,t[12]=f,t[13]=m):m=t[13];let h=r?`center`:`start`,g;if(t[14]!==c||t[15]!==a||t[16]!==i){let e;t[18]!==c||t[19]!==a?(e=e=>{let t=e.gitUrl?o:ce,n=e.projectId===a;return(0,$.jsxs)(xl,{className:G(U.body,`gap-2`),onSelect:()=>c?.(e.projectId),children:[(0,$.jsx)(t,{className:`h-4 w-4 shrink-0`}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:Ke(e)}),n?(0,$.jsx)(W,{className:`ml-auto h-4 w-4 shrink-0`}):null]},e.projectId)},t[18]=c,t[19]=a,t[20]=e):e=t[20],g=i.map(e),t[14]=c,t[15]=a,t[16]=i,t[17]=g}else g=t[17];let _;t[21]!==h||t[22]!==g?(_=(0,$.jsx)(bl,{align:h,collisionPadding:12,className:`max-h-[var(--radix-dropdown-menu-content-available-height)] w-64 overflow-y-auto`,children:g}),t[21]=h,t[22]=g,t[23]=_):_=t[23];let v;return t[24]!==m||t[25]!==_?(v=(0,$.jsxs)(hl,{children:[m,_]}),t[24]=m,t[25]=_,t[26]=v):v=t[26],v}function Xj(e){let t=(0,Q.c)(1),{showingProjectDetails:n}=e;if(!n||!ji())return null;let r;return t[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,$.jsx)(`div`,{className:`hidden shrink-0 md:flex`,children:(0,$.jsx)(YA,{})}),t[0]=r):r=t[0],r}function Zj(e){let t=(0,Q.c)(6),{showingProjectDetails:n,isStartingNewChat:r,handleNewChat:i,projectId:a}=e,o=n?`ghost`:`outline`,s=n?nl:`bg-background text-foreground hover:bg-accent hover:text-accent-foreground`,c;return t[0]!==i||t[1]!==r||t[2]!==a||t[3]!==o||t[4]!==s?(c=(0,$.jsx)(hw,{projectId:a,onNewChat:i,isStartingNewChat:r,iconOnly:!0,variant:o,size:`icon-sm`,buttonClassName:s,ariaLabel:`New Chat`}),t[0]=i,t[1]=r,t[2]=a,t[3]=o,t[4]=s,t[5]=c):c=t[5],c}function Qj(e){let t=(0,Q.c)(14),{showingProjectDetails:n,hasMessages:r,isStartingNewChat:i,handleNewChat:a,projectId:o,projectDetailsPillClassName:s}=e,c=n&&s,l;t[0]===c?l=t[1]:(l=G(`md:hidden electrobun-webkit-app-region-no-drag`,c),t[0]=c,t[1]=l);let u;t[2]!==a||t[3]!==r||t[4]!==i||t[5]!==o||t[6]!==n?(u=r?(0,$.jsx)(Zj,{showingProjectDetails:n,isStartingNewChat:i,handleNewChat:a,projectId:o}):null,t[2]=a,t[3]=r,t[4]=i,t[5]=o,t[6]=n,t[7]=u):u=t[7];let d;t[8]===n?d=t[9]:(d=(0,$.jsx)(DE,{inPill:n}),t[8]=n,t[9]=d);let f;return t[10]!==l||t[11]!==u||t[12]!==d?(f=(0,$.jsxs)(Uj,{className:l,children:[u,d]}),t[10]=l,t[11]=u,t[12]=d,t[13]=f):f=t[13],f}function $j(e){let t=(0,Q.c)(24),{showingProjectDetails:n,selectedThreadId:r,selectedProjectId:i,selectedProject:a,vscodeEmbed:o,projectDetailsActionsPillClassName:s}=e,c=n&&s,l;t[0]===c?l=t[1]:(l=G(`electrobun-webkit-app-region-no-drag`,c),t[0]=c,t[1]=l);let u;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(u=(0,$.jsx)(KA,{}),t[2]=u):u=t[2];let d=a?.runCommand,f;t[3]!==i||t[4]!==d?(f=(0,$.jsx)(dE,{projectId:i,runCommand:d}),t[3]=i,t[4]=d,t[5]=f):f=t[5];let p;t[6]===r?p=t[7]:(p=r&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(kw,{threadId:r}),(0,$.jsx)(Aw,{})]}),t[6]=r,t[7]=p);let m;t[8]!==a?.openWith||t[9]!==i||t[10]!==r||t[11]!==o?(m=!o&&r?(0,$.jsx)(IT,{projectId:i,threadId:r,openWith:a?.openWith}):null,t[8]=a?.openWith,t[9]=i,t[10]=r,t[11]=o,t[12]=m):m=t[12];let h;t[13]===o?h=t[14]:(h=o?null:(0,$.jsx)(Gj,{}),t[13]=o,t[14]=h);let g;t[15]===o?g=t[16]:(g=o?null:(0,$.jsx)(Bj,{}),t[15]=o,t[16]=g);let _;return t[17]!==l||t[18]!==f||t[19]!==p||t[20]!==m||t[21]!==h||t[22]!==g?(_=(0,$.jsx)(`div`,{className:`hidden md:flex flex-wrap items-center justify-end gap-2`,children:(0,$.jsxs)(Uj,{className:l,children:[u,f,p,m,h,g]})}),t[17]=l,t[18]=f,t[19]=p,t[20]=m,t[21]=h,t[22]=g,t[23]=_):_=t[23],_}function eM(e){let t=(0,Q.c)(24),{showingProjectDetails:n,selectedThreadId:r,hasMessages:i,selectedProjectId:a,selectedProject:o,isStartingNewChat:s,handleNewChat:c,vscodeEmbed:l,projectDetailsPillClassName:u,projectDetailsActionsPillClassName:d}=e,f=!!r&&(i||!!a),p;t[0]===n?p=t[1]:(p=(0,$.jsx)(Xj,{showingProjectDetails:n}),t[0]=n,t[1]=p);let m;t[2]!==c||t[3]!==i||t[4]!==s||t[5]!==u||t[6]!==a||t[7]!==f||t[8]!==n?(m=f?(0,$.jsx)(Qj,{showingProjectDetails:n,hasMessages:i,isStartingNewChat:s,handleNewChat:c,projectId:a,projectDetailsPillClassName:u}):null,t[2]=c,t[3]=i,t[4]=s,t[5]=u,t[6]=a,t[7]=f,t[8]=n,t[9]=m):m=t[9];let h;t[10]!==d||t[11]!==o||t[12]!==a||t[13]!==r||t[14]!==n||t[15]!==l?(h=a?(0,$.jsx)($j,{showingProjectDetails:n,selectedThreadId:r,selectedProjectId:a,selectedProject:o,vscodeEmbed:l,projectDetailsActionsPillClassName:d}):null,t[10]=d,t[11]=o,t[12]=a,t[13]=r,t[14]=n,t[15]=l,t[16]=h):h=t[16];let g;t[17]===l?g=t[18]:(g=l&&(0,$.jsx)(Wj,{}),t[17]=l,t[18]=g);let _;return t[19]!==p||t[20]!==m||t[21]!==h||t[22]!==g?(_=(0,$.jsxs)($.Fragment,{children:[p,m,h,g]}),t[19]=p,t[20]=m,t[21]=h,t[22]=g,t[23]=_):_=t[23],_}function tM(e){let t=(0,Q.c)(57),{onBackToProjects:n,onSelectProject:r}=e,i=gC(),a=X(oM),o=X(aM),s=X(iM),c=X(rM),{handleNewChat:l,isStartingNewChat:u}=BC(),d;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(d=AO(),t[0]=d):d=t[0];let f=d,p=c.length>0,m;if(t[1]!==s||t[2]!==o){let e;t[4]===o?e=t[5]:(e=e=>e.projectId===o,t[4]=o,t[5]=e),m=s.find(e),t[1]=s,t[2]=o,t[3]=m}else m=t[3];let h=m,g,_,v,y,b,x;if(t[6]!==l||t[7]!==p||t[8]!==u||t[9]!==n||t[10]!==r||t[11]!==s||t[12]!==h||t[13]!==o||t[14]!==a||t[15]!==i){let e=Pr(),c;t[22]===s?c=t[23]:(c=[...s].sort(nM),t[22]=s,t[23]=c);let d=c,m;t[24]!==n||t[25]!==i?(m=!f&&n?(0,$.jsx)(qj,{showingProjectDetails:i,onBackToProjects:n}):null,t[24]=n,t[25]=i,t[26]=m):m=t[26],v=m;let S=!!r&&!(f&&i),C;t[27]!==r||t[28]!==h||t[29]!==i||t[30]!==d||t[31]!==S?(C=h?(0,$.jsx)(Yj,{selectedProject:h,showingProjectDetails:i,sortedProjects:d,selectedProjectId:h.projectId,useDropdown:S,onSelectProject:r}):null,t[27]=r,t[28]=h,t[29]=i,t[30]=d,t[31]=S,t[32]=C):C=t[32],b=C;let w;t[33]!==b||t[34]!==i?(w=b?(0,$.jsxs)($.Fragment,{children:[i?null:(0,$.jsx)(sn,{className:`h-4 w-4 shrink-0 text-muted-foreground`}),b]}):null,t[33]=b,t[34]=i,t[35]=w):w=t[35];let T;t[36]!==v||t[37]!==w?(T=(0,$.jsxs)($.Fragment,{children:[v,w]}),t[36]=v,t[37]=w,t[38]=T):T=t[38],y=T;let E;t[39]!==l||t[40]!==p||t[41]!==u||t[42]!==h||t[43]!==o||t[44]!==a||t[45]!==i?(E=(0,$.jsx)(eM,{showingProjectDetails:i,selectedThreadId:a,hasMessages:p,selectedProjectId:o,selectedProject:h,isStartingNewChat:u,handleNewChat:l,vscodeEmbed:f,projectDetailsPillClassName:`frosted-surface p-1 text-foreground backdrop-blur-sm electrobun-webkit-app-region-no-drag`,projectDetailsActionsPillClassName:`bg-transparent scenic-foreground shadow-none backdrop-blur-none electrobun-webkit-app-region-no-drag`}),t[39]=l,t[40]=p,t[41]=u,t[42]=h,t[43]=o,t[44]=a,t[45]=i,t[46]=E):E=t[46],_=E,g=el,x=G(!i&&`pt-1`,e&&!i&&`pt-4 md:min-h-[103px]`,i&&`scenic-foreground grid min-h-0 grid-cols-[1fr_auto_1fr] items-center gap-2 px-4 pt-2 pb-1`),t[6]=l,t[7]=p,t[8]=u,t[9]=n,t[10]=r,t[11]=s,t[12]=h,t[13]=o,t[14]=a,t[15]=i,t[16]=g,t[17]=_,t[18]=v,t[19]=y,t[20]=b,t[21]=x}else g=t[16],_=t[17],v=t[18],y=t[19],b=t[20],x=t[21];let S;t[47]!==_||t[48]!==v||t[49]!==y||t[50]!==b||t[51]!==i?(S=i?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`div`,{"aria-hidden":!0,className:`min-w-0`}),(0,$.jsx)(`div`,{className:`flex min-w-0 items-center justify-center`,children:(0,$.jsxs)(`div`,{className:G(`flex min-w-0 max-w-full items-center gap-1 rounded-full`,`bg-transparent scenic-foreground electrobun-webkit-app-region-no-drag`),children:[v,v&&b?(0,$.jsx)(sn,{className:`h-4 w-4 shrink-0 scenic-foreground-muted`}):null,b]})}),(0,$.jsx)(`div`,{className:`flex min-w-0 items-center justify-end gap-2`,children:_})]}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`div`,{className:`flex min-w-0 flex-1 items-center gap-1`,children:y}),(0,$.jsx)(`div`,{className:`ml-auto flex min-w-0 shrink-0 items-center gap-2`,children:_})]}),t[47]=_,t[48]=v,t[49]=y,t[50]=b,t[51]=i,t[52]=S):S=t[52];let C;return t[53]!==g||t[54]!==x||t[55]!==S?(C=(0,$.jsx)(g,{className:x,children:S}),t[53]=g,t[54]=x,t[55]=S,t[56]=C):C=t[56],C}function nM(e,t){return Ke(e).localeCompare(Ke(t))}function rM(e){return e.messages}function iM(e){return e.projects}function aM(e){return e.selectedProjectId}function oM(e){return e.selectedThreadId}var sM=`tarsk-browser-element-selected`,cM=`tarsk-browser-text-edit-commit`;function lM(e){let t=[`<browser-selection url="${e.url}" selector="${e.selector}" tag="${e.tagName}">`,e.html,`</browser-selection>`];return e.text.trim()&&t.push(`Text: ${e.text.trim()}`),t.join(`
3335
+ `)}function uM(e,t,n){return[`Change the text from:`,t,`to:`,n,``,lM(e)].join(`
3336
+ `)}function dM(e){return e===`select`||e===`edit`}function fM(e){if(!e||typeof e!=`object`)return!1;let t=e;return typeof t.html!=`string`||typeof t.text!=`string`||typeof t.tagName!=`string`||typeof t.selector!=`string`||typeof t.url!=`string`?!1:t.interaction===void 0||dM(t.interaction)}function pM(e){if(!e||typeof e!=`object`)return!1;let t=e;return typeof t.originalText==`string`&&typeof t.currentText==`string`&&fM(t.selection)}function mM(e,t){if(!e||typeof e!=`object`)return null;let n=e;return n.type!==t||!n.payload||typeof n.payload!=`object`?null:n.payload}function hM(e){let t=mM(e,sM);return!t||!fM(t)?null:t}function gM(e){let t=mM(e,cM);return!t||!pM(t)?null:t}function _M(e){window.dispatchEvent(new CustomEvent(sM,{detail:e}))}function vM(e){return hM(e)??(fM(e)?e:null)}function yM(e){return e?.interaction===`edit`}function bM(e,t){let n=t.trim();return n?`${e}\n\n${n}`:e}function xM(e){if(Pr()){(e?.querySelector(`electrobun-webview`))?.executeJavascript?.(`(function(){window.__tarskBrowserPreview?.setSelectMode?.(false,false);})();`);return}(e?.querySelector(`iframe`)?.contentWindow?.__tarskBrowserPreview)?.setSelectMode?.(!1,!1)}function SM(e){let t=(0,Q.c)(39),{container:n}=e,r=Ks(),i=X(TM),a=X(wM),{selectedBrowserElement:o,isSelectionPromptOpen:s,setIsSelectionPromptOpen:c,setSelectedBrowserElement:l,setBrowserAgentProcessingThreadId:u}=nk(),{paneId:d,conversationId:f}=wv(),{handleSend:p,handleStop:m,getQueuedMessagesForPane:h,handleRemoveQueuedMessage:g}=bv(),{userTasks:_,setUserTasks:v,effectiveIsStreaming:y,handleRemoveUserTask:b}=BC(),[x,S]=Z.useState(0),C;t[0]===o?C=t[1]:(C=o?lM(o):``,t[0]=o,t[1]=C);let w=C,T;t[2]===s?T=t[3]:(T=()=>{s&&S(CM)},t[2]=s,t[3]=T);let E;t[4]!==s||t[5]!==o?(E=[s,o],t[4]=s,t[5]=o,t[6]=E):E=t[6],(0,Z.useEffect)(T,E);let D;t[7]!==n||t[8]!==c||t[9]!==l?(D=e=>{c(e),e||(xM(n),l(null))},t[7]=n,t[8]=c,t[9]=l,t[10]=D):D=t[10];let O=D,k;t[11]!==n||t[12]!==f||t[13]!==r||t[14]!==p||t[15]!==d||t[16]!==i||t[17]!==w||t[18]!==u||t[19]!==c||t[20]!==l?(k=(e,t,a,o,s,m,h)=>{!i||!w||(p(d,f,bM(w,e),t,a,o,s,m,h),r({type:Y.SetChatInputDraft,threadId:d===`primary`?i:`${i}:${d}`,draft:``}),u(i),c(!1),l(null),xM(n))},t[11]=n,t[12]=f,t[13]=r,t[14]=p,t[15]=d,t[16]=i,t[17]=w,t[18]=u,t[19]=c,t[20]=l,t[21]=k):k=t[21];let A=k,j=s&&!!(i&&a&&o&&n),M;t[22]!==n||t[23]!==y||t[24]!==h||t[25]!==g||t[26]!==b||t[27]!==m||t[28]!==A||t[29]!==d||t[30]!==x||t[31]!==i||t[32]!==v||t[33]!==_?(M=n?(0,$.jsxs)($r,{container:n,children:[(0,$.jsx)(Wr,{className:G(`absolute inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0`)}),(0,$.jsxs)(gi,{className:G(`absolute inset-x-0 top-0 z-50 w-full border-b border-border bg-background p-0 shadow-lg duration-200 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]:slide-out-to-top data-[state=open]:slide-in-from-top`),children:[(0,$.jsx)(qa,{className:`sr-only`,children:`Prompt with selected element`}),(0,$.jsxs)(di,{className:`absolute right-4 top-4 z-10 flex h-7 w-7 items-center justify-center rounded-full transition-colors hover:bg-foreground hover:text-background disabled:pointer-events-none`,children:[(0,$.jsx)(nt,{className:`h-4 w-4`}),(0,$.jsx)(`span`,{className:`sr-only`,children:`Close`})]}),(0,$.jsx)(`div`,{className:`px-4 pt-3 pb-2`,children:(0,$.jsx)(eC,{centered:!0,autoFocus:!0,onSend:A,onStop:()=>m(d),isStreaming:y,disabled:!i,initialValue:``,queuedMessages:h(d),onRemoveQueuedMessage:e=>{g(d,e)},placeholder:`How do you want to change the selected element?`,userTasks:_,onMatchedUserTaskSend:e=>{e.pinned||b(e.id)},onUserTaskCreated:e=>{v(t=>[...t,e])}},x)})]})]}):null,t[22]=n,t[23]=y,t[24]=h,t[25]=g,t[26]=b,t[27]=m,t[28]=A,t[29]=d,t[30]=x,t[31]=i,t[32]=v,t[33]=_,t[34]=M):M=t[34];let N;return t[35]!==O||t[36]!==j||t[37]!==M?(N=(0,$.jsx)(li,{open:j,onOpenChange:O,children:M}),t[35]=O,t[36]=j,t[37]=M,t[38]=N):N=t[38],N}function CM(e){return e+1}function wM(e){return e.selectedProjectId}function TM(e){return e.selectedThreadId}function EM(){let e=(0,Q.c)(1),t;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,$.jsx)(`div`,{className:`flex h-full items-center justify-center`,children:(0,$.jsx)(`div`,{className:`h-8 w-8 animate-spin rounded-full border-2 border-muted border-t-primary`})}),e[0]=t):t=e[0],t}var DM=(0,Z.lazy)(()=>us(()=>import(`./settings-view-D4-XZz2V.js`),__vite__mapDeps([36,1,19,20,4,5,37,14,24]))),OM=`animate-in fade-in duration-200`,kM=`animate-out fade-out duration-200 fill-mode-forwards pointer-events-none`;function AM(){let e=(0,Q.c)(22);Yr(!0);let t=Yn(),n=(0,Z.useRef)(!1),r=(0,Z.useRef)(!1),[i,a]=(0,Z.useState)(!1),o;e[0]===t?o=e[1]:(o=()=>{r.current||(r.current=!0,t(`/`))},e[0]=t,e[1]=o);let s=o,c;e[2]===Symbol.for(`react.memo_cache_sentinel`)?(c=()=>{n.current||(n.current=!0,a(!0))},e[2]=c):c=e[2];let l=c,u;e[3]===s?u=e[4]:(u=e=>{!n.current||e.animationName!==`exit`||s()},e[3]=s,e[4]=u);let d=u,f,p;e[5]!==i||e[6]!==s?(f=()=>{if(!i)return;let e=window.setTimeout(s,250);return()=>window.clearTimeout(e)},p=[i,s],e[5]=i,e[6]=s,e[7]=f,e[8]=p):(f=e[7],p=e[8]),(0,Z.useEffect)(f,p);let m=i?kM:OM,h;e[9]===m?h=e[10]:(h=G(`absolute inset-0 bg-black/50`,m),e[9]=m,e[10]=h);let g;e[11]===h?g=e[12]:(g=(0,$.jsx)(`div`,{className:h,"aria-hidden":!0}),e[11]=h,e[12]=g);let _;e[13]===m?_=e[14]:(_=G(`relative z-10 h-full w-full md:h-auto md:w-auto`,m),e[13]=m,e[14]=_);let v;e[15]===Symbol.for(`react.memo_cache_sentinel`)?(v=(0,$.jsx)(Z.Suspense,{fallback:(0,$.jsx)(EM,{}),children:(0,$.jsx)(DM,{onRequestClose:l})}),e[15]=v):v=e[15];let y;e[16]!==d||e[17]!==_?(y=(0,$.jsx)(`div`,{className:_,onAnimationEnd:d,children:v}),e[16]=d,e[17]=_,e[18]=y):y=e[18];let b;return e[19]!==g||e[20]!==y?(b=(0,$.jsxs)(`div`,{className:`absolute inset-0 z-50 flex items-center justify-center md:p-6`,children:[g,y]}),e[19]=g,e[20]=y,e[21]=b):b=e[21],b}function jM(e){let t=(0,Q.c)(35),{selectedProjectId:n,isReviewRoute:r,onCreateThread:i,onBackToProjects:a,onSelectProject:o,onSubmitClone:s,onSubmitWebApp:c,onSubmitFolder:l,onOpenFolder:u}=e,{isPanelOpen:d}=gc(),f=gC(),p=!r,m=p&&!f,[h,g]=(0,Z.useState)(null),_=X(MM),v;if(t[0]!==_||t[1]!==n){let e;t[3]===n?e=t[4]:(e=e=>e.projectId===n,t[3]=n,t[4]=e),v=_.find(e),t[0]=_,t[1]=n,t[2]=v}else v=t[2];let y=v?.useBuiltInBrowser!==!1,b;t[5]===d?b=t[6]:(b=d(`browser`),t[5]=d,t[6]=b);let x=b,S=m&&`bg-background`,C;t[7]===S?C=t[8]:(C=G(`relative flex h-full flex-col overflow-hidden`,S),t[7]=S,t[8]=C);let w;t[9]!==a||t[10]!==o||t[11]!==p?(w=p&&(0,$.jsx)(tM,{onBackToProjects:a,onSelectProject:o}),t[9]=a,t[10]=o,t[11]=p,t[12]=w):w=t[12];let T;t[13]!==i||t[14]!==u||t[15]!==s||t[16]!==l||t[17]!==c?(T=(0,$.jsx)(`main`,{className:`relative flex-1 overflow-hidden`,children:(0,$.jsx)(`div`,{className:`absolute inset-0`,children:(0,$.jsx)(dA,{onCreateThread:i,onSubmitClone:s,onSubmitWebApp:c,onSubmitFolder:l,onOpenFolder:u})})}),t[13]=i,t[14]=u,t[15]=s,t[16]=l,t[17]=c,t[18]=T):T=t[18];let E;t[19]===Symbol.for(`react.memo_cache_sentinel`)?(E=(0,$.jsx)(qn,{path:`/settings/providers/:providerSlug`,element:(0,$.jsx)(AM,{})}),t[19]=E):E=t[19];let D;t[20]===Symbol.for(`react.memo_cache_sentinel`)?(D=(0,$.jsx)(qn,{path:`/settings/project/:projectId/tools`,element:(0,$.jsx)(AM,{})}),t[20]=D):D=t[20];let O;t[21]===Symbol.for(`react.memo_cache_sentinel`)?(O=(0,$.jsx)(qn,{path:`/settings/project/:projectId/model-aliases`,element:(0,$.jsx)(AM,{})}),t[21]=O):O=t[21];let k;t[22]===Symbol.for(`react.memo_cache_sentinel`)?(k=(0,$.jsx)(qn,{path:`/settings/project/:projectId/env-vars`,element:(0,$.jsx)(AM,{})}),t[22]=k):k=t[22];let A;t[23]===Symbol.for(`react.memo_cache_sentinel`)?(A=(0,$.jsx)(qn,{path:`/settings/project/:projectId`,element:(0,$.jsx)(AM,{})}),t[23]=A):A=t[23];let j;t[24]===Symbol.for(`react.memo_cache_sentinel`)?(j=(0,$.jsxs)(Tn,{children:[E,D,O,k,A,(0,$.jsx)(qn,{path:`/settings/:tab?`,element:(0,$.jsx)(AM,{})})]}),t[24]=j):j=t[24];let M;t[25]!==x||t[26]!==h||t[27]!==y||t[28]!==p?(M=p&&y&&x?(0,$.jsx)(SM,{container:h}):null,t[25]=x,t[26]=h,t[27]=y,t[28]=p,t[29]=M):M=t[29];let N;return t[30]!==M||t[31]!==C||t[32]!==w||t[33]!==T?(N=(0,$.jsxs)(`div`,{ref:g,className:C,children:[w,T,j,M]}),t[30]=M,t[31]=C,t[32]=w,t[33]=T,t[34]=N):N=t[34],N}function MM(e){return e.projects}function NM(e){let t=(0,Q.c)(24),{open:n,projectName:r,onOpenChange:i,onConfirm:a,blocked:o,blockReason:s,deletesFolder:c}=e,l=o===void 0?!1:o,u=c===void 0?!0:c,d;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(d=(0,$.jsx)(sc,{children:`Delete Project`}),t[0]=d):d=t[0];let f;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(f=G(U.body,`font-semibold text-foreground`),t[1]=f):f=t[1];let p;t[2]===r?p=t[3]:(p=(0,$.jsxs)(`span`,{className:f,children:[`"`,r,`"`]}),t[2]=r,t[3]=p);let m=u?` The project folder will also be deleted.`:` Your original folder and its files will not be deleted.`,h;t[4]!==p||t[5]!==m?(h=(0,$.jsxs)(oc,{children:[`Are you sure you want to delete`,` `,p,`? This will remove the project and all its data.`,m,` `,`This action cannot be undone.`]}),t[4]=p,t[5]=m,t[6]=h):h=t[6];let g;t[7]!==s||t[8]!==l?(g=l&&s&&(0,$.jsx)(`p`,{className:`mt-1 text-sm text-destructive`,children:s}),t[7]=s,t[8]=l,t[9]=g):g=t[9];let _;t[10]!==h||t[11]!==g?(_=(0,$.jsxs)(fc,{children:[d,h,g]}),t[10]=h,t[11]=g,t[12]=_):_=t[12];let v;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(v=(0,$.jsx)(dc,{children:`Cancel`}),t[13]=v):v=t[13];let y;t[14]!==l||t[15]!==a?(y=(0,$.jsxs)(uc,{children:[v,(0,$.jsx)(lc,{onClick:a,disabled:l,className:`bg-destructive text-destructive-foreground hover:bg-destructive/90`,children:`Delete`})]}),t[14]=l,t[15]=a,t[16]=y):y=t[16];let b;t[17]!==y||t[18]!==_?(b=(0,$.jsxs)(cc,{children:[_,y]}),t[17]=y,t[18]=_,t[19]=b):b=t[19];let x;return t[20]!==i||t[21]!==n||t[22]!==b?(x=(0,$.jsx)(pc,{open:n,onOpenChange:i,children:b}),t[20]=i,t[21]=n,t[22]=b,t[23]=x):x=t[23],x}function PM(e){let t=(0,Q.c)(28),{open:n,setupScripts:r,onConfirm:i}=e;if(r.length===0)return null;let a;t[0]===i?a=t[1]:(a=e=>{e||i(!1)},t[0]=i,t[1]=a);let o;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,$.jsx)(sc,{children:`Install dependencies?`}),t[2]=o):o=t[2];let s=r.length===1?``:`s`,c;t[3]!==r.length||t[4]!==s?(c=(0,$.jsxs)(fc,{children:[o,(0,$.jsxs)(oc,{children:[`Found `,r.length,` package`,s,` with dependencies to install:`]})]}),t[3]=r.length,t[4]=s,t[5]=c):c=t[5];let l;t[6]===r?l=t[7]:(l=r.map(FM),t[6]=r,t[7]=l);let u;t[8]===l?u=t[9]:(u=(0,$.jsx)(`div`,{className:`my-4 max-h-60 overflow-y-auto`,children:(0,$.jsx)(`div`,{className:`space-y-2`,children:l})}),t[8]=l,t[9]=u);let d;t[10]===i?d=t[11]:(d=(0,$.jsx)(dc,{onClick:()=>i(!1),children:`No`}),t[10]=i,t[11]=d);let f;t[12]===i?f=t[13]:(f=()=>i(!0),t[12]=i,t[13]=f);let p;t[14]!==r.length||t[15]!==f?(p=(0,$.jsxs)(lc,{onClick:f,children:[`Install All (`,r.length,`)`]}),t[14]=r.length,t[15]=f,t[16]=p):p=t[16];let m;t[17]!==d||t[18]!==p?(m=(0,$.jsxs)(uc,{children:[d,p]}),t[17]=d,t[18]=p,t[19]=m):m=t[19];let h;t[20]!==m||t[21]!==c||t[22]!==u?(h=(0,$.jsxs)(cc,{className:`max-w-2xl`,children:[c,u,m]}),t[20]=m,t[21]=c,t[22]=u,t[23]=h):h=t[23];let g;return t[24]!==n||t[25]!==a||t[26]!==h?(g=(0,$.jsx)(pc,{open:n,onOpenChange:a,children:h}),t[24]=n,t[25]=a,t[26]=h,t[27]=g):g=t[27],g}function FM(e,t){let n=e.match(/^cd "([^"]+)" && (.+)$/),r=n?n[1]:`root`,i=n?n[2]:e;return(0,$.jsx)(`div`,{className:`flex items-center justify-between p-3 rounded-lg border bg-muted/50`,children:(0,$.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,$.jsx)(`div`,{className:`w-2 h-2 rounded-full bg-blue-500`}),(0,$.jsxs)(`div`,{children:[(0,$.jsx)(`div`,{className:U.label,children:r||`root`}),(0,$.jsx)(`div`,{className:U.bodyMuted,children:i})]})]})},t)}function IM(e){let t=(0,Q.c)(24),{open:n,existingProjectName:r,zipFilename:i,onConfirm:a}=e;if(!r||!i)return null;let o;t[0]===a?o=t[1]:(o=e=>{e||a(!1)},t[0]=a,t[1]=o);let s;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,$.jsx)(sc,{children:`Replace existing project?`}),t[2]=s):s=t[2];let c;t[3]===r?c=t[4]:(c=(0,$.jsx)(`span`,{className:U.label,children:r}),t[3]=r,t[4]=c);let l;t[5]===i?l=t[6]:(l=(0,$.jsx)(`span`,{className:U.label,children:i}),t[5]=i,t[6]=l);let u;t[7]!==c||t[8]!==l?(u=(0,$.jsxs)(fc,{children:[s,(0,$.jsxs)(oc,{children:[`A project named `,c,` already exists. Importing `,l,` will replace its source code, threads, and any in-progress work with the contents of the zip. This cannot be undone.`]})]}),t[7]=c,t[8]=l,t[9]=u):u=t[9];let d;t[10]===a?d=t[11]:(d=(0,$.jsx)(dc,{onClick:()=>a(!1),children:`Cancel`}),t[10]=a,t[11]=d);let f;t[12]===a?f=t[13]:(f=(0,$.jsx)(lc,{onClick:()=>a(!0),children:`Replace project`}),t[12]=a,t[13]=f);let p;t[14]!==d||t[15]!==f?(p=(0,$.jsxs)(uc,{children:[d,f]}),t[14]=d,t[15]=f,t[16]=p):p=t[16];let m;t[17]!==u||t[18]!==p?(m=(0,$.jsxs)(cc,{className:`max-w-xl`,children:[u,p]}),t[17]=u,t[18]=p,t[19]=m):m=t[19];let h;return t[20]!==n||t[21]!==o||t[22]!==m?(h=(0,$.jsx)(pc,{open:n,onOpenChange:o,children:m}),t[20]=n,t[21]=o,t[22]=m,t[23]=h):h=t[23],h}var LM;(function(e){e[e.QR_CODE=0]=`QR_CODE`,e[e.AZTEC=1]=`AZTEC`,e[e.CODABAR=2]=`CODABAR`,e[e.CODE_39=3]=`CODE_39`,e[e.CODE_93=4]=`CODE_93`,e[e.CODE_128=5]=`CODE_128`,e[e.DATA_MATRIX=6]=`DATA_MATRIX`,e[e.MAXICODE=7]=`MAXICODE`,e[e.ITF=8]=`ITF`,e[e.EAN_13=9]=`EAN_13`,e[e.EAN_8=10]=`EAN_8`,e[e.PDF_417=11]=`PDF_417`,e[e.RSS_14=12]=`RSS_14`,e[e.RSS_EXPANDED=13]=`RSS_EXPANDED`,e[e.UPC_A=14]=`UPC_A`,e[e.UPC_E=15]=`UPC_E`,e[e.UPC_EAN_EXTENSION=16]=`UPC_EAN_EXTENSION`})(LM||={});var RM=new Map([[LM.QR_CODE,`QR_CODE`],[LM.AZTEC,`AZTEC`],[LM.CODABAR,`CODABAR`],[LM.CODE_39,`CODE_39`],[LM.CODE_93,`CODE_93`],[LM.CODE_128,`CODE_128`],[LM.DATA_MATRIX,`DATA_MATRIX`],[LM.MAXICODE,`MAXICODE`],[LM.ITF,`ITF`],[LM.EAN_13,`EAN_13`],[LM.EAN_8,`EAN_8`],[LM.PDF_417,`PDF_417`],[LM.RSS_14,`RSS_14`],[LM.RSS_EXPANDED,`RSS_EXPANDED`],[LM.UPC_A,`UPC_A`],[LM.UPC_E,`UPC_E`],[LM.UPC_EAN_EXTENSION,`UPC_EAN_EXTENSION`]]),zM;(function(e){e[e.UNKNOWN=0]=`UNKNOWN`,e[e.URL=1]=`URL`})(zM||={});function BM(e){return Object.values(LM).includes(e)}var VM;(function(e){e[e.SCAN_TYPE_CAMERA=0]=`SCAN_TYPE_CAMERA`,e[e.SCAN_TYPE_FILE=1]=`SCAN_TYPE_FILE`})(VM||={});var HM=function(){function e(){}return e.GITHUB_PROJECT_URL=`https://github.com/mebjas/html5-qrcode`,e.SCAN_DEFAULT_FPS=2,e.DEFAULT_DISABLE_FLIP=!1,e.DEFAULT_REMEMBER_LAST_CAMERA_USED=!0,e.DEFAULT_SUPPORTED_SCAN_TYPE=[VM.SCAN_TYPE_CAMERA,VM.SCAN_TYPE_FILE],e}(),UM=function(){function e(e,t){this.format=e,this.formatName=t}return e.prototype.toString=function(){return this.formatName},e.create=function(t){if(!RM.has(t))throw`${t} not in html5QrcodeSupportedFormatsTextMap`;return new e(t,RM.get(t))},e}(),WM=function(){function e(){}return e.createFromText=function(e){return{decodedText:e,result:{text:e}}},e.createFromQrcodeResult=function(e){return{decodedText:e.text,result:e}},e}(),GM;(function(e){e[e.UNKWOWN_ERROR=0]=`UNKWOWN_ERROR`,e[e.IMPLEMENTATION_ERROR=1]=`IMPLEMENTATION_ERROR`,e[e.NO_CODE_FOUND_ERROR=2]=`NO_CODE_FOUND_ERROR`})(GM||={});var KM=function(){function e(){}return e.createFrom=function(e){return{errorMessage:e,type:GM.UNKWOWN_ERROR}},e}(),qM=function(){function e(e){this.verbose=e}return e.prototype.log=function(e){this.verbose&&console.log(e)},e.prototype.warn=function(e){this.verbose&&console.warn(e)},e.prototype.logError=function(e,t){(this.verbose||t===!0)&&console.error(e)},e.prototype.logErrors=function(e){if(e.length===0)throw`Logger#logError called without arguments`;this.verbose&&console.error(e)},e}();function JM(e){return e==null}function YM(e,t,n){return e>n?n:e<t?t:e}var XM=function(){function e(){}return e.codeParseError=function(e){return`QR code parse error, error = ${e}`},e.errorGettingUserMedia=function(e){return`Error getting userMedia, error = ${e}`},e.onlyDeviceSupportedError=function(){return`The device doesn't support navigator.mediaDevices , only supported cameraIdOrConfig in this case is deviceId parameter (string).`},e.cameraStreamingNotSupported=function(){return`Camera streaming not supported by the browser.`},e.unableToQuerySupportedDevices=function(){return`Unable to query supported devices, unknown error.`},e.insecureContextCameraQueryError=function(){return`Camera access is only supported in secure context like https or localhost.`},e.scannerPaused=function(){return`Scanner paused`},e}(),ZM=function(){function e(){}return e.scanningStatus=function(){return`Scanning`},e.idleStatus=function(){return`Idle`},e.errorStatus=function(){return`Error`},e.permissionStatus=function(){return`Permission`},e.noCameraFoundErrorStatus=function(){return`No Cameras`},e.lastMatch=function(e){return`Last Match: ${e}`},e.codeScannerTitle=function(){return`Code Scanner`},e.cameraPermissionTitle=function(){return`Request Camera Permissions`},e.cameraPermissionRequesting=function(){return`Requesting camera permissions...`},e.noCameraFound=function(){return`No camera found`},e.scanButtonStopScanningText=function(){return`Stop Scanning`},e.scanButtonStartScanningText=function(){return`Start Scanning`},e.torchOnButton=function(){return`Switch On Torch`},e.torchOffButton=function(){return`Switch Off Torch`},e.torchOnFailedMessage=function(){return`Failed to turn on torch`},e.torchOffFailedMessage=function(){return`Failed to turn off torch`},e.scanButtonScanningStarting=function(){return`Launching Camera...`},e.textIfCameraScanSelected=function(){return`Scan an Image File`},e.textIfFileScanSelected=function(){return`Scan using camera directly`},e.selectCamera=function(){return`Select Camera`},e.fileSelectionChooseImage=function(){return`Choose Image`},e.fileSelectionChooseAnother=function(){return`Choose Another`},e.fileSelectionNoImageSelected=function(){return`No image choosen`},e.anonymousCameraPrefix=function(){return`Anonymous Camera`},e.dragAndDropMessage=function(){return`Or drop an image to scan`},e.dragAndDropMessageOnlyImages=function(){return`Or drop an image to scan (other files not supported)`},e.zoom=function(){return`zoom`},e.loadingImage=function(){return`Loading image...`},e.cameraScanAltText=function(){return`Camera based scan`},e.fileScanAltText=function(){return`Fule based scan`},e}(),QM=function(){function e(){}return e.poweredBy=function(){return`Powered by `},e.reportIssues=function(){return`Report issues`},e}(),$M=function(){function e(){}return e.isMediaStreamConstraintsValid=function(e,t){if(typeof e!=`object`){var n=typeof e;return t.logError(`videoConstraints should be of type object, the object passed is of type ${n}.`,!0),!1}for(var r=new Set([`autoGainControl`,`channelCount`,`echoCancellation`,`latency`,`noiseSuppression`,`sampleRate`,`sampleSize`,`volume`]),i=Object.keys(e),a=0,o=i;a<o.length;a++){var s=o[a];if(r.has(s))return t.logError(`${s} is not supported videoConstaints.`,!0),!1}return!0},e}(),eN=e(t(((e,t)=>{(function(n,r){typeof e==`object`&&t!==void 0?r(e):typeof define==`function`&&define.amd?define([`exports`],r):(n=typeof globalThis<`u`?globalThis:n||self,r(n.ZXing={}))})(e,(function(e){function t(e){return e==null}var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])};function r(e,t){n(e,t);function r(){this.constructor=e}e.prototype=t===null?Object.create(t):(r.prototype=t.prototype,new r)}function i(e,t){var n=Object.setPrototypeOf;n?n(e,t):e.__proto__=t}function a(e,t){t===void 0&&(t=e.constructor);var n=Error.captureStackTrace;n&&n(e,t)}var o=(function(e){r(t,e);function t(t){var n=this.constructor,r=e.call(this,t)||this;return Object.defineProperty(r,"name",{value:n.name,enumerable:!1}),i(r,n.prototype),a(r),r}return t})(Error);class s extends o{constructor(e=void 0){super(e),this.message=e}getKind(){return this.constructor.kind}}s.kind=`Exception`;class c extends s{}c.kind=`ArgumentException`;class l extends s{}l.kind=`IllegalArgumentException`;class u{constructor(e){if(this.binarizer=e,e===null)throw new l(`Binarizer must be non-null.`)}getWidth(){return this.binarizer.getWidth()}getHeight(){return this.binarizer.getHeight()}getBlackRow(e,t){return this.binarizer.getBlackRow(e,t)}getBlackMatrix(){return(this.matrix===null||this.matrix===void 0)&&(this.matrix=this.binarizer.getBlackMatrix()),this.matrix}isCropSupported(){return this.binarizer.getLuminanceSource().isCropSupported()}crop(e,t,n,r){let i=this.binarizer.getLuminanceSource().crop(e,t,n,r);return new u(this.binarizer.createBinarizer(i))}isRotateSupported(){return this.binarizer.getLuminanceSource().isRotateSupported()}rotateCounterClockwise(){let e=this.binarizer.getLuminanceSource().rotateCounterClockwise();return new u(this.binarizer.createBinarizer(e))}rotateCounterClockwise45(){let e=this.binarizer.getLuminanceSource().rotateCounterClockwise45();return new u(this.binarizer.createBinarizer(e))}toString(){try{return this.getBlackMatrix().toString()}catch{return``}}}class d extends s{static getChecksumInstance(){return new d}}d.kind=`ChecksumException`;class f{constructor(e){this.source=e}getLuminanceSource(){return this.source}getWidth(){return this.source.getWidth()}getHeight(){return this.source.getHeight()}}class p{static arraycopy(e,t,n,r,i){for(;i--;)n[r++]=e[t++]}static currentTimeMillis(){return Date.now()}}class m extends s{}m.kind=`IndexOutOfBoundsException`;class h extends m{constructor(e=void 0,t=void 0){super(t),this.index=e,this.message=t}}h.kind=`ArrayIndexOutOfBoundsException`;class g{static fill(e,t){for(let n=0,r=e.length;n<r;n++)e[n]=t}static fillWithin(e,t,n,r){g.rangeCheck(e.length,t,n);for(let i=t;i<n;i++)e[i]=r}static rangeCheck(e,t,n){if(t>n)throw new l(`fromIndex(`+t+`) > toIndex(`+n+`)`);if(t<0)throw new h(t);if(n>e)throw new h(n)}static asList(...e){return e}static create(e,t,n){return Array.from({length:e}).map(e=>Array.from({length:t}).fill(n))}static createInt32Array(e,t,n){return Array.from({length:e}).map(e=>Int32Array.from({length:t}).fill(n))}static equals(e,t){if(!e||!t||!e.length||!t.length||e.length!==t.length)return!1;for(let n=0,r=e.length;n<r;n++)if(e[n]!==t[n])return!1;return!0}static hashCode(e){if(e===null)return 0;let t=1;for(let n of e)t=31*t+n;return t}static fillUint8Array(e,t){for(let n=0;n!==e.length;n++)e[n]=t}static copyOf(e,t){return e.slice(0,t)}static copyOfUint8Array(e,t){if(e.length<=t){let n=new Uint8Array(t);return n.set(e),n}return e.slice(0,t)}static copyOfRange(e,t,n){let r=n-t,i=new Int32Array(r);return p.arraycopy(e,t,i,0,r),i}static binarySearch(e,t,n){n===void 0&&(n=g.numberComparator);let r=0,i=e.length-1;for(;r<=i;){let a=i+r>>1,o=n(t,e[a]);if(o>0)r=a+1;else if(o<0)i=a-1;else return a}return-r-1}static numberComparator(e,t){return e-t}}class _{static numberOfTrailingZeros(e){let t;if(e===0)return 32;let n=31;return t=e<<16,t!==0&&(n-=16,e=t),t=e<<8,t!==0&&(n-=8,e=t),t=e<<4,t!==0&&(n-=4,e=t),t=e<<2,t!==0&&(n-=2,e=t),n-(e<<1>>>31)}static numberOfLeadingZeros(e){if(e===0)return 32;let t=1;return e>>>16||(t+=16,e<<=16),e>>>24||(t+=8,e<<=8),e>>>28||(t+=4,e<<=4),e>>>30||(t+=2,e<<=2),t-=e>>>31,t}static toHexString(e){return e.toString(16)}static toBinaryString(e){return String(parseInt(String(e),2))}static bitCount(e){return e-=e>>>1&1431655765,e=(e&858993459)+(e>>>2&858993459),e=e+(e>>>4)&252645135,e+=e>>>8,e+=e>>>16,e&63}static truncDivision(e,t){return Math.trunc(e/t)}static parseInt(e,t=void 0){return parseInt(e,t)}}_.MIN_VALUE_32_BITS=-2147483648,_.MAX_VALUE=2**53-1;class v{constructor(e,t){e===void 0?(this.size=0,this.bits=new Int32Array(1)):(this.size=e,t==null?this.bits=v.makeArray(e):this.bits=t)}getSize(){return this.size}getSizeInBytes(){return Math.floor((this.size+7)/8)}ensureCapacity(e){if(e>this.bits.length*32){let t=v.makeArray(e);p.arraycopy(this.bits,0,t,0,this.bits.length),this.bits=t}}get(e){return(this.bits[Math.floor(e/32)]&1<<(e&31))!=0}set(e){this.bits[Math.floor(e/32)]|=1<<(e&31)}flip(e){this.bits[Math.floor(e/32)]^=1<<(e&31)}getNextSet(e){let t=this.size;if(e>=t)return t;let n=this.bits,r=Math.floor(e/32),i=n[r];i&=~((1<<(e&31))-1);let a=n.length;for(;i===0;){if(++r===a)return t;i=n[r]}let o=r*32+_.numberOfTrailingZeros(i);return o>t?t:o}getNextUnset(e){let t=this.size;if(e>=t)return t;let n=this.bits,r=Math.floor(e/32),i=~n[r];i&=~((1<<(e&31))-1);let a=n.length;for(;i===0;){if(++r===a)return t;i=~n[r]}let o=r*32+_.numberOfTrailingZeros(i);return o>t?t:o}setBulk(e,t){this.bits[Math.floor(e/32)]=t}setRange(e,t){if(t<e||e<0||t>this.size)throw new l;if(t===e)return;t--;let n=Math.floor(e/32),r=Math.floor(t/32),i=this.bits;for(let a=n;a<=r;a++){let o=a>n?0:e&31,s=(2<<(a<r?31:t&31))-(1<<o);i[a]|=s}}clear(){let e=this.bits.length,t=this.bits;for(let n=0;n<e;n++)t[n]=0}isRange(e,t,n){if(t<e||e<0||t>this.size)throw new l;if(t===e)return!0;t--;let r=Math.floor(e/32),i=Math.floor(t/32),a=this.bits;for(let o=r;o<=i;o++){let s=o>r?0:e&31,c=(2<<(o<i?31:t&31))-(1<<s)&4294967295;if((a[o]&c)!==(n?c:0))return!1}return!0}appendBit(e){this.ensureCapacity(this.size+1),e&&(this.bits[Math.floor(this.size/32)]|=1<<(this.size&31)),this.size++}appendBits(e,t){if(t<0||t>32)throw new l(`Num bits must be between 0 and 32`);this.ensureCapacity(this.size+t);for(let n=t;n>0;n--)this.appendBit((e>>n-1&1)==1)}appendBitArray(e){let t=e.size;this.ensureCapacity(this.size+t);for(let n=0;n<t;n++)this.appendBit(e.get(n))}xor(e){if(this.size!==e.size)throw new l(`Sizes don't match`);let t=this.bits;for(let n=0,r=t.length;n<r;n++)t[n]^=e.bits[n]}toBytes(e,t,n,r){for(let i=0;i<r;i++){let r=0;for(let t=0;t<8;t++)this.get(e)&&(r|=1<<7-t),e++;t[n+i]=r}}getBitArray(){return this.bits}reverse(){let e=new Int32Array(this.bits.length),t=Math.floor((this.size-1)/32),n=t+1,r=this.bits;for(let i=0;i<n;i++){let n=r[i];n=n>>1&1431655765|(n&1431655765)<<1,n=n>>2&858993459|(n&858993459)<<2,n=n>>4&252645135|(n&252645135)<<4,n=n>>8&16711935|(n&16711935)<<8,n=n>>16&65535|(n&65535)<<16,e[t-i]=n}if(this.size!==n*32){let t=n*32-this.size,r=e[0]>>>t;for(let i=1;i<n;i++){let n=e[i];r|=n<<32-t,e[i-1]=r,r=n>>>t}e[n-1]=r}this.bits=e}static makeArray(e){return new Int32Array(Math.floor((e+31)/32))}equals(e){if(!(e instanceof v))return!1;let t=e;return this.size===t.size&&g.equals(this.bits,t.bits)}hashCode(){return 31*this.size+g.hashCode(this.bits)}toString(){let e=``;for(let t=0,n=this.size;t<n;t++)t&7||(e+=` `),e+=this.get(t)?`X`:`.`;return e}clone(){return new v(this.size,this.bits.slice())}}var y;(function(e){e[e.OTHER=0]=`OTHER`,e[e.PURE_BARCODE=1]=`PURE_BARCODE`,e[e.POSSIBLE_FORMATS=2]=`POSSIBLE_FORMATS`,e[e.TRY_HARDER=3]=`TRY_HARDER`,e[e.CHARACTER_SET=4]=`CHARACTER_SET`,e[e.ALLOWED_LENGTHS=5]=`ALLOWED_LENGTHS`,e[e.ASSUME_CODE_39_CHECK_DIGIT=6]=`ASSUME_CODE_39_CHECK_DIGIT`,e[e.ASSUME_GS1=7]=`ASSUME_GS1`,e[e.RETURN_CODABAR_START_END=8]=`RETURN_CODABAR_START_END`,e[e.NEED_RESULT_POINT_CALLBACK=9]=`NEED_RESULT_POINT_CALLBACK`,e[e.ALLOWED_EAN_EXTENSIONS=10]=`ALLOWED_EAN_EXTENSIONS`})(y||={});var b=y;class x extends s{static getFormatInstance(){return new x}}x.kind=`FormatException`;var S;(function(e){e[e.Cp437=0]=`Cp437`,e[e.ISO8859_1=1]=`ISO8859_1`,e[e.ISO8859_2=2]=`ISO8859_2`,e[e.ISO8859_3=3]=`ISO8859_3`,e[e.ISO8859_4=4]=`ISO8859_4`,e[e.ISO8859_5=5]=`ISO8859_5`,e[e.ISO8859_6=6]=`ISO8859_6`,e[e.ISO8859_7=7]=`ISO8859_7`,e[e.ISO8859_8=8]=`ISO8859_8`,e[e.ISO8859_9=9]=`ISO8859_9`,e[e.ISO8859_10=10]=`ISO8859_10`,e[e.ISO8859_11=11]=`ISO8859_11`,e[e.ISO8859_13=12]=`ISO8859_13`,e[e.ISO8859_14=13]=`ISO8859_14`,e[e.ISO8859_15=14]=`ISO8859_15`,e[e.ISO8859_16=15]=`ISO8859_16`,e[e.SJIS=16]=`SJIS`,e[e.Cp1250=17]=`Cp1250`,e[e.Cp1251=18]=`Cp1251`,e[e.Cp1252=19]=`Cp1252`,e[e.Cp1256=20]=`Cp1256`,e[e.UnicodeBigUnmarked=21]=`UnicodeBigUnmarked`,e[e.UTF8=22]=`UTF8`,e[e.ASCII=23]=`ASCII`,e[e.Big5=24]=`Big5`,e[e.GB18030=25]=`GB18030`,e[e.EUC_KR=26]=`EUC_KR`})(S||={});class C{constructor(e,t,n,...r){this.valueIdentifier=e,this.name=n,typeof t==`number`?this.values=Int32Array.from([t]):this.values=t,this.otherEncodingNames=r,C.VALUE_IDENTIFIER_TO_ECI.set(e,this),C.NAME_TO_ECI.set(n,this);let i=this.values;for(let e=0,t=i.length;e!==t;e++){let t=i[e];C.VALUES_TO_ECI.set(t,this)}for(let e of r)C.NAME_TO_ECI.set(e,this)}getValueIdentifier(){return this.valueIdentifier}getName(){return this.name}getValue(){return this.values[0]}static getCharacterSetECIByValue(e){if(e<0||e>=900)throw new x(`incorect value`);let t=C.VALUES_TO_ECI.get(e);if(t===void 0)throw new x(`incorect value`);return t}static getCharacterSetECIByName(e){let t=C.NAME_TO_ECI.get(e);if(t===void 0)throw new x(`incorect value`);return t}equals(e){if(!(e instanceof C))return!1;let t=e;return this.getName()===t.getName()}}C.VALUE_IDENTIFIER_TO_ECI=new Map,C.VALUES_TO_ECI=new Map,C.NAME_TO_ECI=new Map,C.Cp437=new C(S.Cp437,Int32Array.from([0,2]),`Cp437`),C.ISO8859_1=new C(S.ISO8859_1,Int32Array.from([1,3]),`ISO-8859-1`,`ISO88591`,`ISO8859_1`),C.ISO8859_2=new C(S.ISO8859_2,4,`ISO-8859-2`,`ISO88592`,`ISO8859_2`),C.ISO8859_3=new C(S.ISO8859_3,5,`ISO-8859-3`,`ISO88593`,`ISO8859_3`),C.ISO8859_4=new C(S.ISO8859_4,6,`ISO-8859-4`,`ISO88594`,`ISO8859_4`),C.ISO8859_5=new C(S.ISO8859_5,7,`ISO-8859-5`,`ISO88595`,`ISO8859_5`),C.ISO8859_6=new C(S.ISO8859_6,8,`ISO-8859-6`,`ISO88596`,`ISO8859_6`),C.ISO8859_7=new C(S.ISO8859_7,9,`ISO-8859-7`,`ISO88597`,`ISO8859_7`),C.ISO8859_8=new C(S.ISO8859_8,10,`ISO-8859-8`,`ISO88598`,`ISO8859_8`),C.ISO8859_9=new C(S.ISO8859_9,11,`ISO-8859-9`,`ISO88599`,`ISO8859_9`),C.ISO8859_10=new C(S.ISO8859_10,12,`ISO-8859-10`,`ISO885910`,`ISO8859_10`),C.ISO8859_11=new C(S.ISO8859_11,13,`ISO-8859-11`,`ISO885911`,`ISO8859_11`),C.ISO8859_13=new C(S.ISO8859_13,15,`ISO-8859-13`,`ISO885913`,`ISO8859_13`),C.ISO8859_14=new C(S.ISO8859_14,16,`ISO-8859-14`,`ISO885914`,`ISO8859_14`),C.ISO8859_15=new C(S.ISO8859_15,17,`ISO-8859-15`,`ISO885915`,`ISO8859_15`),C.ISO8859_16=new C(S.ISO8859_16,18,`ISO-8859-16`,`ISO885916`,`ISO8859_16`),C.SJIS=new C(S.SJIS,20,`SJIS`,`Shift_JIS`),C.Cp1250=new C(S.Cp1250,21,`Cp1250`,`windows-1250`),C.Cp1251=new C(S.Cp1251,22,`Cp1251`,`windows-1251`),C.Cp1252=new C(S.Cp1252,23,`Cp1252`,`windows-1252`),C.Cp1256=new C(S.Cp1256,24,`Cp1256`,`windows-1256`),C.UnicodeBigUnmarked=new C(S.UnicodeBigUnmarked,25,`UnicodeBigUnmarked`,`UTF-16BE`,`UnicodeBig`),C.UTF8=new C(S.UTF8,26,`UTF8`,`UTF-8`),C.ASCII=new C(S.ASCII,Int32Array.from([27,170]),`ASCII`,`US-ASCII`),C.Big5=new C(S.Big5,28,`Big5`),C.GB18030=new C(S.GB18030,29,`GB18030`,`GB2312`,`EUC_CN`,`GBK`),C.EUC_KR=new C(S.EUC_KR,30,`EUC_KR`,`EUC-KR`);class w extends s{}w.kind=`UnsupportedOperationException`;class T{static decode(e,t){let n=this.encodingName(t);return this.customDecoder?this.customDecoder(e,n):typeof TextDecoder>`u`||this.shouldDecodeOnFallback(n)?this.decodeFallback(e,n):new TextDecoder(n).decode(e)}static shouldDecodeOnFallback(e){return!T.isBrowser()&&e===`ISO-8859-1`}static encode(e,t){let n=this.encodingName(t);return this.customEncoder?this.customEncoder(e,n):typeof TextEncoder>`u`?this.encodeFallback(e):new TextEncoder().encode(e)}static isBrowser(){return typeof window<`u`&&{}.toString.call(window)===`[object Window]`}static encodingName(e){return typeof e==`string`?e:e.getName()}static encodingCharacterSet(e){return e instanceof C?e:C.getCharacterSetECIByName(e)}static decodeFallback(e,t){let n=this.encodingCharacterSet(t);if(T.isDecodeFallbackSupported(n)){let t=``;for(let n=0,r=e.length;n<r;n++){let r=e[n].toString(16);r.length<2&&(r=`0`+r),t+=`%`+r}return decodeURIComponent(t)}if(n.equals(C.UnicodeBigUnmarked))return String.fromCharCode.apply(null,new Uint16Array(e.buffer));throw new w(`Encoding ${this.encodingName(t)} not supported by fallback.`)}static isDecodeFallbackSupported(e){return e.equals(C.UTF8)||e.equals(C.ISO8859_1)||e.equals(C.ASCII)}static encodeFallback(e){let t=btoa(unescape(encodeURIComponent(e))).split(``),n=[];for(let e=0;e<t.length;e++)n.push(t[e].charCodeAt(0));return new Uint8Array(n)}}class E{static castAsNonUtf8Char(e,t=null){let n=t?t.getName():this.ISO88591;return T.decode(new Uint8Array([e]),n)}static guessEncoding(e,t){if(t!=null&&t.get(b.CHARACTER_SET)!==void 0)return t.get(b.CHARACTER_SET).toString();let n=e.length,r=!0,i=!0,a=!0,o=0,s=0,c=0,l=0,u=0,d=0,f=0,p=0,m=0,h=0,g=0,_=e.length>3&&e[0]===239&&e[1]===187&&e[2]===191;for(let t=0;t<n&&(r||i||a);t++){let n=e[t]&255;a&&(o>0?n&128?o--:a=!1:n&128&&(n&64?(o++,n&32?(o++,n&16?(o++,n&8?a=!1:l++):c++):s++):a=!1)),r&&(n>127&&n<160?r=!1:n>159&&(n<192||n===215||n===247)&&g++),i&&(u>0?n<64||n===127||n>252?i=!1:u--:n===128||n===160||n>239?i=!1:n>160&&n<224?(d++,p=0,f++,f>m&&(m=f)):n>127?(u++,f=0,p++,p>h&&(h=p)):(f=0,p=0))}return a&&o>0&&(a=!1),i&&u>0&&(i=!1),a&&(_||s+c+l>0)?E.UTF8:i&&(E.ASSUME_SHIFT_JIS||m>=3||h>=3)?E.SHIFT_JIS:r&&i?m===2&&d===2||g*10>=n?E.SHIFT_JIS:E.ISO88591:r?E.ISO88591:i?E.SHIFT_JIS:a?E.UTF8:E.PLATFORM_DEFAULT_ENCODING}static format(e,...t){let n=-1;function r(e,r,i,a,o,s){if(e===`%%`)return`%`;if(t[++n]===void 0)return;e=a?parseInt(a.substr(1)):void 0;let c=o?parseInt(o.substr(1)):void 0,l;switch(s){case`s`:l=t[n];break;case`c`:l=t[n][0];break;case`f`:l=parseFloat(t[n]).toFixed(e);break;case`p`:l=parseFloat(t[n]).toPrecision(e);break;case`e`:l=parseFloat(t[n]).toExponential(e);break;case`x`:l=parseInt(t[n]).toString(c||16);break;case`d`:l=parseFloat(parseInt(t[n],c||10).toPrecision(e)).toFixed(0);break}l=typeof l==`object`?JSON.stringify(l):(+l).toString(c);let u=parseInt(i),d=i&&i[0]+``==`0`?`0`:` `;for(;l.length<u;)l=r===void 0?d+l:l+d;return l}return e.replace(/%(-)?(0?[0-9]+)?([.][0-9]+)?([#][0-9]+)?([scfpexd%])/g,r)}static getBytes(e,t){return T.encode(e,t)}static getCharCode(e,t=0){return e.charCodeAt(t)}static getCharAt(e){return String.fromCharCode(e)}}E.SHIFT_JIS=C.SJIS.getName(),E.GB2312=`GB2312`,E.ISO88591=C.ISO8859_1.getName(),E.EUC_JP=`EUC_JP`,E.UTF8=C.UTF8.getName(),E.PLATFORM_DEFAULT_ENCODING=E.UTF8,E.ASSUME_SHIFT_JIS=!1;class D{constructor(e=``){this.value=e}enableDecoding(e){return this.encoding=e,this}append(e){return typeof e==`string`?this.value+=e.toString():this.encoding?this.value+=E.castAsNonUtf8Char(e,this.encoding):this.value+=String.fromCharCode(e),this}appendChars(e,t,n){for(let r=t;t<t+n;r++)this.append(e[r]);return this}length(){return this.value.length}charAt(e){return this.value.charAt(e)}deleteCharAt(e){this.value=this.value.substr(0,e)+this.value.substring(e+1)}setCharAt(e,t){this.value=this.value.substr(0,e)+t+this.value.substr(e+1)}substring(e,t){return this.value.substring(e,t)}setLengthToZero(){this.value=``}toString(){return this.value}insert(e,t){this.value=this.value.substr(0,e)+t+this.value.substr(e+t.length)}}class O{constructor(e,t,n,r){if(this.width=e,this.height=t,this.rowSize=n,this.bits=r,t??=e,this.height=t,e<1||t<1)throw new l(`Both dimensions must be greater than 0`);n??=Math.floor((e+31)/32),this.rowSize=n,r??(this.bits=new Int32Array(this.rowSize*this.height))}static parseFromBooleanArray(e){let t=e.length,n=e[0].length,r=new O(n,t);for(let i=0;i<t;i++){let t=e[i];for(let e=0;e<n;e++)t[e]&&r.set(e,i)}return r}static parseFromString(e,t,n){if(e===null)throw new l(`stringRepresentation cannot be null`);let r=Array(e.length),i=0,a=0,o=-1,s=0,c=0;for(;c<e.length;)if(e.charAt(c)===`
3338
3337
  `||e.charAt(c)===`\r`){if(i>a){if(o===-1)o=i-a;else if(i-a!==o)throw new l(`row lengths do not match`);a=i,s++}c++}else if(e.substring(c,c+t.length)===t)c+=t.length,r[i]=!0,i++;else if(e.substring(c,c+n.length)===n)c+=n.length,r[i]=!1,i++;else throw new l(`illegal character encountered: `+e.substring(c));if(i>a){if(o===-1)o=i-a;else if(i-a!==o)throw new l(`row lengths do not match`);s++}let u=new O(o,s);for(let e=0;e<i;e++)r[e]&&u.set(Math.floor(e%o),Math.floor(e/o));return u}get(e,t){let n=t*this.rowSize+Math.floor(e/32);return(this.bits[n]>>>(e&31)&1)!=0}set(e,t){let n=t*this.rowSize+Math.floor(e/32);this.bits[n]|=1<<(e&31)&4294967295}unset(e,t){let n=t*this.rowSize+Math.floor(e/32);this.bits[n]&=~(1<<(e&31)&4294967295)}flip(e,t){let n=t*this.rowSize+Math.floor(e/32);this.bits[n]^=1<<(e&31)&4294967295}xor(e){if(this.width!==e.getWidth()||this.height!==e.getHeight()||this.rowSize!==e.getRowSize())throw new l(`input matrix dimensions do not match`);let t=new v(Math.floor(this.width/32)+1),n=this.rowSize,r=this.bits;for(let i=0,a=this.height;i<a;i++){let a=i*n,o=e.getRow(i,t).getBitArray();for(let e=0;e<n;e++)r[a+e]^=o[e]}}clear(){let e=this.bits,t=e.length;for(let n=0;n<t;n++)e[n]=0}setRegion(e,t,n,r){if(t<0||e<0)throw new l(`Left and top must be nonnegative`);if(r<1||n<1)throw new l(`Height and width must be at least 1`);let i=e+n,a=t+r;if(a>this.height||i>this.width)throw new l(`The region must fit inside the matrix`);let o=this.rowSize,s=this.bits;for(let n=t;n<a;n++){let t=n*o;for(let n=e;n<i;n++)s[t+Math.floor(n/32)]|=1<<(n&31)&4294967295}}getRow(e,t){t==null||t.getSize()<this.width?t=new v(this.width):t.clear();let n=this.rowSize,r=this.bits,i=e*n;for(let e=0;e<n;e++)t.setBulk(e*32,r[i+e]);return t}setRow(e,t){p.arraycopy(t.getBitArray(),0,this.bits,e*this.rowSize,this.rowSize)}rotate180(){let e=this.getWidth(),t=this.getHeight(),n=new v(e),r=new v(e);for(let e=0,i=Math.floor((t+1)/2);e<i;e++)n=this.getRow(e,n),r=this.getRow(t-1-e,r),n.reverse(),r.reverse(),this.setRow(e,r),this.setRow(t-1-e,n)}getEnclosingRectangle(){let e=this.width,t=this.height,n=this.rowSize,r=this.bits,i=e,a=t,o=-1,s=-1;for(let e=0;e<t;e++)for(let t=0;t<n;t++){let c=r[e*n+t];if(c!==0){if(e<a&&(a=e),e>s&&(s=e),t*32<i){let e=0;for(;!(c<<31-e&4294967295);)e++;t*32+e<i&&(i=t*32+e)}if(t*32+31>o){let e=31;for(;!(c>>>e);)e--;t*32+e>o&&(o=t*32+e)}}}return o<i||s<a?null:Int32Array.from([i,a,o-i+1,s-a+1])}getTopLeftOnBit(){let e=this.rowSize,t=this.bits,n=0;for(;n<t.length&&t[n]===0;)n++;if(n===t.length)return null;let r=n/e,i=n%e*32,a=t[n],o=0;for(;!(a<<31-o&4294967295);)o++;return i+=o,Int32Array.from([i,r])}getBottomRightOnBit(){let e=this.rowSize,t=this.bits,n=t.length-1;for(;n>=0&&t[n]===0;)n--;if(n<0)return null;let r=Math.floor(n/e),i=Math.floor(n%e)*32,a=t[n],o=31;for(;!(a>>>o);)o--;return i+=o,Int32Array.from([i,r])}getWidth(){return this.width}getHeight(){return this.height}getRowSize(){return this.rowSize}equals(e){if(!(e instanceof O))return!1;let t=e;return this.width===t.width&&this.height===t.height&&this.rowSize===t.rowSize&&g.equals(this.bits,t.bits)}hashCode(){let e=this.width;return e=31*e+this.width,e=31*e+this.height,e=31*e+this.rowSize,e=31*e+g.hashCode(this.bits),e}toString(e=`X `,t=` `,n=`
3339
3338
  `){return this.buildToString(e,t,n)}buildToString(e,t,n){let r=new D;for(let i=0,a=this.height;i<a;i++){for(let n=0,a=this.width;n<a;n++)r.append(this.get(n,i)?e:t);r.append(n)}return r.toString()}clone(){return new O(this.width,this.height,this.rowSize,this.bits.slice())}}class k extends s{static getNotFoundInstance(){return new k}}k.kind=`NotFoundException`;class A extends f{constructor(e){super(e),this.luminances=A.EMPTY,this.buckets=new Int32Array(A.LUMINANCE_BUCKETS)}getBlackRow(e,t){let n=this.getLuminanceSource(),r=n.getWidth();t==null||t.getSize()<r?t=new v(r):t.clear(),this.initArrays(r);let i=n.getRow(e,this.luminances),a=this.buckets;for(let e=0;e<r;e++)a[(i[e]&255)>>A.LUMINANCE_SHIFT]++;let o=A.estimateBlackPoint(a);if(r<3)for(let e=0;e<r;e++)(i[e]&255)<o&&t.set(e);else{let e=i[0]&255,n=i[1]&255;for(let a=1;a<r-1;a++){let r=i[a+1]&255;(n*4-e-r)/2<o&&t.set(a),e=n,n=r}}return t}getBlackMatrix(){let e=this.getLuminanceSource(),t=e.getWidth(),n=e.getHeight(),r=new O(t,n);this.initArrays(t);let i=this.buckets;for(let r=1;r<5;r++){let a=Math.floor(n*r/5),o=e.getRow(a,this.luminances),s=Math.floor(t*4/5);for(let e=Math.floor(t/5);e<s;e++){let t=o[e]&255;i[t>>A.LUMINANCE_SHIFT]++}}let a=A.estimateBlackPoint(i),o=e.getMatrix();for(let e=0;e<n;e++){let n=e*t;for(let i=0;i<t;i++)(o[n+i]&255)<a&&r.set(i,e)}return r}createBinarizer(e){return new A(e)}initArrays(e){this.luminances.length<e&&(this.luminances=new Uint8ClampedArray(e));let t=this.buckets;for(let e=0;e<A.LUMINANCE_BUCKETS;e++)t[e]=0}static estimateBlackPoint(e){let t=e.length,n=0,r=0,i=0;for(let a=0;a<t;a++)e[a]>i&&(r=a,i=e[a]),e[a]>n&&(n=e[a]);let a=0,o=0;for(let n=0;n<t;n++){let t=n-r,i=e[n]*t*t;i>o&&(a=n,o=i)}if(r>a){let e=r;r=a,a=e}if(a-r<=t/16)throw new k;let s=a-1,c=-1;for(let t=a-1;t>r;t--){let i=t-r,o=i*i*(a-t)*(n-e[t]);o>c&&(s=t,c=o)}return s<<A.LUMINANCE_SHIFT}}A.LUMINANCE_BITS=5,A.LUMINANCE_SHIFT=8-A.LUMINANCE_BITS,A.LUMINANCE_BUCKETS=1<<A.LUMINANCE_BITS,A.EMPTY=Uint8ClampedArray.from([0]);class j extends A{constructor(e){super(e),this.matrix=null}getBlackMatrix(){if(this.matrix!==null)return this.matrix;let e=this.getLuminanceSource(),t=e.getWidth(),n=e.getHeight();if(t>=j.MINIMUM_DIMENSION&&n>=j.MINIMUM_DIMENSION){let r=e.getMatrix(),i=t>>j.BLOCK_SIZE_POWER;(t&j.BLOCK_SIZE_MASK)!==0&&i++;let a=n>>j.BLOCK_SIZE_POWER;(n&j.BLOCK_SIZE_MASK)!==0&&a++;let o=j.calculateBlackPoints(r,i,a,t,n),s=new O(t,n);j.calculateThresholdForBlock(r,i,a,t,n,o,s),this.matrix=s}else this.matrix=super.getBlackMatrix();return this.matrix}createBinarizer(e){return new j(e)}static calculateThresholdForBlock(e,t,n,r,i,a,o){let s=i-j.BLOCK_SIZE,c=r-j.BLOCK_SIZE;for(let i=0;i<n;i++){let l=i<<j.BLOCK_SIZE_POWER;l>s&&(l=s);let u=j.cap(i,2,n-3);for(let n=0;n<t;n++){let i=n<<j.BLOCK_SIZE_POWER;i>c&&(i=c);let s=j.cap(n,2,t-3),d=0;for(let e=-2;e<=2;e++){let t=a[u+e];d+=t[s-2]+t[s-1]+t[s]+t[s+1]+t[s+2]}let f=d/25;j.thresholdBlock(e,i,l,f,r,o)}}}static cap(e,t,n){return e<t?t:e>n?n:e}static thresholdBlock(e,t,n,r,i,a){for(let o=0,s=n*i+t;o<j.BLOCK_SIZE;o++,s+=i)for(let i=0;i<j.BLOCK_SIZE;i++)(e[s+i]&255)<=r&&a.set(t+i,n+o)}static calculateBlackPoints(e,t,n,r,i){let a=i-j.BLOCK_SIZE,o=r-j.BLOCK_SIZE,s=Array(n);for(let i=0;i<n;i++){s[i]=new Int32Array(t);let n=i<<j.BLOCK_SIZE_POWER;n>a&&(n=a);for(let a=0;a<t;a++){let t=a<<j.BLOCK_SIZE_POWER;t>o&&(t=o);let c=0,l=255,u=0;for(let i=0,a=n*r+t;i<j.BLOCK_SIZE;i++,a+=r){for(let t=0;t<j.BLOCK_SIZE;t++){let n=e[a+t]&255;c+=n,n<l&&(l=n),n>u&&(u=n)}if(u-l>j.MIN_DYNAMIC_RANGE)for(i++,a+=r;i<j.BLOCK_SIZE;i++,a+=r)for(let t=0;t<j.BLOCK_SIZE;t++)c+=e[a+t]&255}let d=c>>j.BLOCK_SIZE_POWER*2;if(u-l<=j.MIN_DYNAMIC_RANGE&&(d=l/2,i>0&&a>0)){let e=(s[i-1][a]+2*s[i][a-1]+s[i-1][a-1])/4;l<e&&(d=e)}s[i][a]=d}}return s}}j.BLOCK_SIZE_POWER=3,j.BLOCK_SIZE=1<<j.BLOCK_SIZE_POWER,j.BLOCK_SIZE_MASK=j.BLOCK_SIZE-1,j.MINIMUM_DIMENSION=j.BLOCK_SIZE*5,j.MIN_DYNAMIC_RANGE=24;class M{constructor(e,t){this.width=e,this.height=t}getWidth(){return this.width}getHeight(){return this.height}isCropSupported(){return!1}crop(e,t,n,r){throw new w(`This luminance source does not support cropping.`)}isRotateSupported(){return!1}rotateCounterClockwise(){throw new w(`This luminance source does not support rotation by 90 degrees.`)}rotateCounterClockwise45(){throw new w(`This luminance source does not support rotation by 45 degrees.`)}toString(){let e=new Uint8ClampedArray(this.width),t=new D;for(let n=0;n<this.height;n++){let r=this.getRow(n,e);for(let e=0;e<this.width;e++){let n=r[e]&255,i;i=n<64?`#`:n<128?`+`:n<192?`.`:` `,t.append(i)}t.append(`
3340
3339
  `)}return t.toString()}}class N extends M{constructor(e){super(e.getWidth(),e.getHeight()),this.delegate=e}getRow(e,t){let n=this.delegate.getRow(e,t),r=this.getWidth();for(let e=0;e<r;e++)n[e]=255-(n[e]&255);return n}getMatrix(){let e=this.delegate.getMatrix(),t=this.getWidth()*this.getHeight(),n=new Uint8ClampedArray(t);for(let r=0;r<t;r++)n[r]=255-(e[r]&255);return n}isCropSupported(){return this.delegate.isCropSupported()}crop(e,t,n,r){return new N(this.delegate.crop(e,t,n,r))}isRotateSupported(){return this.delegate.isRotateSupported()}invert(){return this.delegate}rotateCounterClockwise(){return new N(this.delegate.rotateCounterClockwise())}rotateCounterClockwise45(){return new N(this.delegate.rotateCounterClockwise45())}}class P extends M{constructor(e){super(e.width,e.height),this.canvas=e,this.tempCanvasElement=null,this.buffer=P.makeBufferFromCanvasImageData(e)}static makeBufferFromCanvasImageData(e){let t=e.getContext(`2d`).getImageData(0,0,e.width,e.height);return P.toGrayscaleBuffer(t.data,e.width,e.height)}static toGrayscaleBuffer(e,t,n){let r=new Uint8ClampedArray(t*n);for(let t=0,n=0,i=e.length;t<i;t+=4,n++){let i;if(e[t+3]===0)i=255;else{let n=e[t],r=e[t+1],a=e[t+2];i=306*n+601*r+117*a+512>>10}r[n]=i}return r}getRow(e,t){if(e<0||e>=this.getHeight())throw new l(`Requested row is outside the image: `+e);let n=this.getWidth(),r=e*n;return t===null?t=this.buffer.slice(r,r+n):(t.length<n&&(t=new Uint8ClampedArray(n)),t.set(this.buffer.slice(r,r+n))),t}getMatrix(){return this.buffer}isCropSupported(){return!0}crop(e,t,n,r){return super.crop(e,t,n,r),this}isRotateSupported(){return!0}rotateCounterClockwise(){return this.rotate(-90),this}rotateCounterClockwise45(){return this.rotate(-45),this}getTempCanvasElement(){if(this.tempCanvasElement===null){let e=this.canvas.ownerDocument.createElement(`canvas`);e.width=this.canvas.width,e.height=this.canvas.height,this.tempCanvasElement=e}return this.tempCanvasElement}rotate(e){let t=this.getTempCanvasElement(),n=t.getContext(`2d`),r=e*P.DEGREE_TO_RADIANS,i=this.canvas.width,a=this.canvas.height,o=Math.ceil(Math.abs(Math.cos(r))*i+Math.abs(Math.sin(r))*a),s=Math.ceil(Math.abs(Math.sin(r))*i+Math.abs(Math.cos(r))*a);return t.width=o,t.height=s,n.translate(o/2,s/2),n.rotate(r),n.drawImage(this.canvas,i/-2,a/-2),this.buffer=P.makeBufferFromCanvasImageData(t),this}invert(){return new N(this)}}P.DEGREE_TO_RADIANS=Math.PI/180;class F{constructor(e,t,n){this.deviceId=e,this.label=t,this.kind=`videoinput`,this.groupId=n||void 0}toJSON(){return{kind:this.kind,groupId:this.groupId,deviceId:this.deviceId,label:this.label}}}var I=(globalThis||global||self||window||void 0)&&(globalThis||global||self||window||void 0).__awaiter||function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})};class L{constructor(e,t=500,n){this.reader=e,this.timeBetweenScansMillis=t,this._hints=n,this._stopContinuousDecode=!1,this._stopAsyncDecode=!1,this._timeBetweenDecodingAttempts=0}get hasNavigator(){return typeof navigator<`u`}get isMediaDevicesSuported(){return this.hasNavigator&&!!navigator.mediaDevices}get canEnumerateDevices(){return!!(this.isMediaDevicesSuported&&navigator.mediaDevices.enumerateDevices)}get timeBetweenDecodingAttempts(){return this._timeBetweenDecodingAttempts}set timeBetweenDecodingAttempts(e){this._timeBetweenDecodingAttempts=e<0?0:e}set hints(e){this._hints=e||null}get hints(){return this._hints}listVideoInputDevices(){return I(this,void 0,void 0,function*(){if(!this.hasNavigator)throw Error(`Can't enumerate devices, navigator is not present.`);if(!this.canEnumerateDevices)throw Error(`Can't enumerate devices, method not supported.`);let e=yield navigator.mediaDevices.enumerateDevices(),t=[];for(let n of e){let e=n.kind===`video`?`videoinput`:n.kind;if(e!==`videoinput`)continue;let r={deviceId:n.deviceId||n.id,label:n.label||`Video device ${t.length+1}`,kind:e,groupId:n.groupId};t.push(r)}return t})}getVideoInputDevices(){return I(this,void 0,void 0,function*(){return(yield this.listVideoInputDevices()).map(e=>new F(e.deviceId,e.label))})}findDeviceById(e){return I(this,void 0,void 0,function*(){let t=yield this.listVideoInputDevices();return t?t.find(t=>t.deviceId===e):null})}decodeFromInputVideoDevice(e,t){return I(this,void 0,void 0,function*(){return yield this.decodeOnceFromVideoDevice(e,t)})}decodeOnceFromVideoDevice(e,t){return I(this,void 0,void 0,function*(){this.reset();let n;n=e?{deviceId:{exact:e}}:{facingMode:`environment`};let r={video:n};return yield this.decodeOnceFromConstraints(r,t)})}decodeOnceFromConstraints(e,t){return I(this,void 0,void 0,function*(){let n=yield navigator.mediaDevices.getUserMedia(e);return yield this.decodeOnceFromStream(n,t)})}decodeOnceFromStream(e,t){return I(this,void 0,void 0,function*(){this.reset();let n=yield this.attachStreamToVideo(e,t);return yield this.decodeOnce(n)})}decodeFromInputVideoDeviceContinuously(e,t,n){return I(this,void 0,void 0,function*(){return yield this.decodeFromVideoDevice(e,t,n)})}decodeFromVideoDevice(e,t,n){return I(this,void 0,void 0,function*(){let r;r=e?{deviceId:{exact:e}}:{facingMode:`environment`};let i={video:r};return yield this.decodeFromConstraints(i,t,n)})}decodeFromConstraints(e,t,n){return I(this,void 0,void 0,function*(){let r=yield navigator.mediaDevices.getUserMedia(e);return yield this.decodeFromStream(r,t,n)})}decodeFromStream(e,t,n){return I(this,void 0,void 0,function*(){this.reset();let r=yield this.attachStreamToVideo(e,t);return yield this.decodeContinuously(r,n)})}stopAsyncDecode(){this._stopAsyncDecode=!0}stopContinuousDecode(){this._stopContinuousDecode=!0}attachStreamToVideo(e,t){return I(this,void 0,void 0,function*(){let n=this.prepareVideoElement(t);return this.addVideoSource(n,e),this.videoElement=n,this.stream=e,yield this.playVideoOnLoadAsync(n),n})}playVideoOnLoadAsync(e){return new Promise((t,n)=>this.playVideoOnLoad(e,()=>t()))}playVideoOnLoad(e,t){this.videoEndedListener=()=>this.stopStreams(),this.videoCanPlayListener=()=>this.tryPlayVideo(e),e.addEventListener(`ended`,this.videoEndedListener),e.addEventListener(`canplay`,this.videoCanPlayListener),e.addEventListener(`playing`,t),this.tryPlayVideo(e)}isVideoPlaying(e){return e.currentTime>0&&!e.paused&&!e.ended&&e.readyState>2}tryPlayVideo(e){return I(this,void 0,void 0,function*(){if(this.isVideoPlaying(e)){console.warn(`Trying to play video that is already playing.`);return}try{yield e.play()}catch{console.warn(`It was not possible to play the video.`)}})}getMediaElement(e,t){let n=document.getElementById(e);if(!n)throw new c(`element with id '${e}' not found`);if(n.nodeName.toLowerCase()!==t.toLowerCase())throw new c(`element with id '${e}' must be an ${t} element`);return n}decodeFromImage(e,t){if(!e&&!t)throw new c(`either imageElement with a src set or an url must be provided`);return t&&!e?this.decodeFromImageUrl(t):this.decodeFromImageElement(e)}decodeFromVideo(e,t){if(!e&&!t)throw new c(`Either an element with a src set or an URL must be provided`);return t&&!e?this.decodeFromVideoUrl(t):this.decodeFromVideoElement(e)}decodeFromVideoContinuously(e,t,n){if(e===void 0&&t===void 0)throw new c(`Either an element with a src set or an URL must be provided`);return t&&!e?this.decodeFromVideoUrlContinuously(t,n):this.decodeFromVideoElementContinuously(e,n)}decodeFromImageElement(e){if(!e)throw new c(`An image element must be provided.`);this.reset();let t=this.prepareImageElement(e);this.imageElement=t;let n;return n=this.isImageLoaded(t)?this.decodeOnce(t,!1,!0):this._decodeOnLoadImage(t),n}decodeFromVideoElement(e){let t=this._decodeFromVideoElementSetup(e);return this._decodeOnLoadVideo(t)}decodeFromVideoElementContinuously(e,t){let n=this._decodeFromVideoElementSetup(e);return this._decodeOnLoadVideoContinuously(n,t)}_decodeFromVideoElementSetup(e){if(!e)throw new c(`A video element must be provided.`);this.reset();let t=this.prepareVideoElement(e);return this.videoElement=t,t}decodeFromImageUrl(e){if(!e)throw new c(`An URL must be provided.`);this.reset();let t=this.prepareImageElement();this.imageElement=t;let n=this._decodeOnLoadImage(t);return t.src=e,n}decodeFromVideoUrl(e){if(!e)throw new c(`An URL must be provided.`);this.reset();let t=this.prepareVideoElement(),n=this.decodeFromVideoElement(t);return t.src=e,n}decodeFromVideoUrlContinuously(e,t){if(!e)throw new c(`An URL must be provided.`);this.reset();let n=this.prepareVideoElement(),r=this.decodeFromVideoElementContinuously(n,t);return n.src=e,r}_decodeOnLoadImage(e){return new Promise((t,n)=>{this.imageLoadedListener=()=>this.decodeOnce(e,!1,!0).then(t,n),e.addEventListener(`load`,this.imageLoadedListener)})}_decodeOnLoadVideo(e){return I(this,void 0,void 0,function*(){return yield this.playVideoOnLoadAsync(e),yield this.decodeOnce(e)})}_decodeOnLoadVideoContinuously(e,t){return I(this,void 0,void 0,function*(){yield this.playVideoOnLoadAsync(e),this.decodeContinuously(e,t)})}isImageLoaded(e){return!(!e.complete||e.naturalWidth===0)}prepareImageElement(e){let t;return e===void 0&&(t=document.createElement(`img`),t.width=200,t.height=200),typeof e==`string`&&(t=this.getMediaElement(e,`img`)),e instanceof HTMLImageElement&&(t=e),t}prepareVideoElement(e){let t;return!e&&typeof document<`u`&&(t=document.createElement(`video`),t.width=200,t.height=200),typeof e==`string`&&(t=this.getMediaElement(e,`video`)),e instanceof HTMLVideoElement&&(t=e),t.setAttribute(`autoplay`,`true`),t.setAttribute(`muted`,`true`),t.setAttribute(`playsinline`,`true`),t}decodeOnce(e,t=!0,n=!0){this._stopAsyncDecode=!1;let r=(i,a)=>{if(this._stopAsyncDecode){a(new k(`Video stream has ended before any code could be detected.`)),this._stopAsyncDecode=void 0;return}try{i(this.decode(e))}catch(e){let o=t&&e instanceof k,s=(e instanceof d||e instanceof x)&&n;if(o||s)return setTimeout(r,this._timeBetweenDecodingAttempts,i,a);a(e)}};return new Promise((e,t)=>r(e,t))}decodeContinuously(e,t){this._stopContinuousDecode=!1;let n=()=>{if(this._stopContinuousDecode){this._stopContinuousDecode=void 0;return}try{t(this.decode(e),null),setTimeout(n,this.timeBetweenScansMillis)}catch(e){t(null,e);let r=e instanceof d||e instanceof x,i=e instanceof k;(r||i)&&setTimeout(n,this._timeBetweenDecodingAttempts)}};n()}decode(e){let t=this.createBinaryBitmap(e);return this.decodeBitmap(t)}_isHTMLVideoElement(e){return e.videoWidth!==0}drawFrameOnCanvas(e,t,n){t||={sx:0,sy:0,sWidth:e.videoWidth,sHeight:e.videoHeight,dx:0,dy:0,dWidth:e.videoWidth,dHeight:e.videoHeight},n||=this.captureCanvasContext,n.drawImage(e,t.sx,t.sy,t.sWidth,t.sHeight,t.dx,t.dy,t.dWidth,t.dHeight)}drawImageOnCanvas(e,t,n=this.captureCanvasContext){t||={sx:0,sy:0,sWidth:e.naturalWidth,sHeight:e.naturalHeight,dx:0,dy:0,dWidth:e.naturalWidth,dHeight:e.naturalHeight},n||=this.captureCanvasContext,n.drawImage(e,t.sx,t.sy,t.sWidth,t.sHeight,t.dx,t.dy,t.dWidth,t.dHeight)}createBinaryBitmap(e){return this.getCaptureCanvasContext(e),this._isHTMLVideoElement(e)?this.drawFrameOnCanvas(e):this.drawImageOnCanvas(e),new u(new j(new P(this.getCaptureCanvas(e))))}getCaptureCanvasContext(e){if(!this.captureCanvasContext){let t=this.getCaptureCanvas(e).getContext(`2d`);this.captureCanvasContext=t}return this.captureCanvasContext}getCaptureCanvas(e){if(!this.captureCanvas){let t=this.createCaptureCanvas(e);this.captureCanvas=t}return this.captureCanvas}decodeBitmap(e){return this.reader.decode(e,this._hints)}createCaptureCanvas(e){if(typeof document>`u`)return this._destroyCaptureCanvas(),null;let t=document.createElement(`canvas`),n,r;return e!==void 0&&(e instanceof HTMLVideoElement?(n=e.videoWidth,r=e.videoHeight):e instanceof HTMLImageElement&&(n=e.naturalWidth||e.width,r=e.naturalHeight||e.height)),t.style.width=n+`px`,t.style.height=r+`px`,t.width=n,t.height=r,t}stopStreams(){this.stream&&=(this.stream.getVideoTracks().forEach(e=>e.stop()),void 0),this._stopAsyncDecode===!1&&this.stopAsyncDecode(),this._stopContinuousDecode===!1&&this.stopContinuousDecode()}reset(){this.stopStreams(),this._destroyVideoElement(),this._destroyImageElement(),this._destroyCaptureCanvas()}_destroyVideoElement(){this.videoElement&&=(this.videoEndedListener!==void 0&&this.videoElement.removeEventListener(`ended`,this.videoEndedListener),this.videoPlayingEventListener!==void 0&&this.videoElement.removeEventListener(`playing`,this.videoPlayingEventListener),this.videoCanPlayListener!==void 0&&this.videoElement.removeEventListener(`loadedmetadata`,this.videoCanPlayListener),this.cleanVideoSource(this.videoElement),void 0)}_destroyImageElement(){this.imageElement&&=(this.imageLoadedListener!==void 0&&this.imageElement.removeEventListener(`load`,this.imageLoadedListener),this.imageElement.src=void 0,this.imageElement.removeAttribute(`src`),void 0)}_destroyCaptureCanvas(){this.captureCanvasContext=void 0,this.captureCanvas=void 0}addVideoSource(e,t){try{e.srcObject=t}catch{e.src=URL.createObjectURL(t)}}cleanVideoSource(e){try{e.srcObject=null}catch{e.src=``}this.videoElement.removeAttribute(`src`)}}class R{constructor(e,t,n=t==null?0:8*t.length,r,i,a=p.currentTimeMillis()){this.text=e,this.rawBytes=t,this.numBits=n,this.resultPoints=r,this.format=i,this.timestamp=a,this.text=e,this.rawBytes=t,n==null?this.numBits=t==null?0:8*t.length:this.numBits=n,this.resultPoints=r,this.format=i,this.resultMetadata=null,a==null?this.timestamp=p.currentTimeMillis():this.timestamp=a}getText(){return this.text}getRawBytes(){return this.rawBytes}getNumBits(){return this.numBits}getResultPoints(){return this.resultPoints}getBarcodeFormat(){return this.format}getResultMetadata(){return this.resultMetadata}putMetadata(e,t){this.resultMetadata===null&&(this.resultMetadata=new Map),this.resultMetadata.set(e,t)}putAllMetadata(e){e!==null&&(this.resultMetadata===null?this.resultMetadata=e:this.resultMetadata=new Map(e))}addResultPoints(e){let t=this.resultPoints;if(t===null)this.resultPoints=e;else if(e!==null&&e.length>0){let n=Array(t.length+e.length);p.arraycopy(t,0,n,0,t.length),p.arraycopy(e,0,n,t.length,e.length),this.resultPoints=n}}getTimestamp(){return this.timestamp}toString(){return this.text}}var z;(function(e){e[e.AZTEC=0]=`AZTEC`,e[e.CODABAR=1]=`CODABAR`,e[e.CODE_39=2]=`CODE_39`,e[e.CODE_93=3]=`CODE_93`,e[e.CODE_128=4]=`CODE_128`,e[e.DATA_MATRIX=5]=`DATA_MATRIX`,e[e.EAN_8=6]=`EAN_8`,e[e.EAN_13=7]=`EAN_13`,e[e.ITF=8]=`ITF`,e[e.MAXICODE=9]=`MAXICODE`,e[e.PDF_417=10]=`PDF_417`,e[e.QR_CODE=11]=`QR_CODE`,e[e.RSS_14=12]=`RSS_14`,e[e.RSS_EXPANDED=13]=`RSS_EXPANDED`,e[e.UPC_A=14]=`UPC_A`,e[e.UPC_E=15]=`UPC_E`,e[e.UPC_EAN_EXTENSION=16]=`UPC_EAN_EXTENSION`})(z||={});var B=z,V;(function(e){e[e.OTHER=0]=`OTHER`,e[e.ORIENTATION=1]=`ORIENTATION`,e[e.BYTE_SEGMENTS=2]=`BYTE_SEGMENTS`,e[e.ERROR_CORRECTION_LEVEL=3]=`ERROR_CORRECTION_LEVEL`,e[e.ISSUE_NUMBER=4]=`ISSUE_NUMBER`,e[e.SUGGESTED_PRICE=5]=`SUGGESTED_PRICE`,e[e.POSSIBLE_COUNTRY=6]=`POSSIBLE_COUNTRY`,e[e.UPC_EAN_EXTENSION=7]=`UPC_EAN_EXTENSION`,e[e.PDF417_EXTRA_METADATA=8]=`PDF417_EXTRA_METADATA`,e[e.STRUCTURED_APPEND_SEQUENCE=9]=`STRUCTURED_APPEND_SEQUENCE`,e[e.STRUCTURED_APPEND_PARITY=10]=`STRUCTURED_APPEND_PARITY`})(V||={});var H=V;class ee{constructor(e,t,n,r,i=-1,a=-1){this.rawBytes=e,this.text=t,this.byteSegments=n,this.ecLevel=r,this.structuredAppendSequenceNumber=i,this.structuredAppendParity=a,this.numBits=e==null?0:8*e.length}getRawBytes(){return this.rawBytes}getNumBits(){return this.numBits}setNumBits(e){this.numBits=e}getText(){return this.text}getByteSegments(){return this.byteSegments}getECLevel(){return this.ecLevel}getErrorsCorrected(){return this.errorsCorrected}setErrorsCorrected(e){this.errorsCorrected=e}getErasures(){return this.erasures}setErasures(e){this.erasures=e}getOther(){return this.other}setOther(e){this.other=e}hasStructuredAppend(){return this.structuredAppendParity>=0&&this.structuredAppendSequenceNumber>=0}getStructuredAppendParity(){return this.structuredAppendParity}getStructuredAppendSequenceNumber(){return this.structuredAppendSequenceNumber}}class te{exp(e){return this.expTable[e]}log(e){if(e===0)throw new l;return this.logTable[e]}static addOrSubtract(e,t){return e^t}}class ne{constructor(e,t){if(t.length===0)throw new l;this.field=e;let n=t.length;if(n>1&&t[0]===0){let e=1;for(;e<n&&t[e]===0;)e++;e===n?this.coefficients=Int32Array.from([0]):(this.coefficients=new Int32Array(n-e),p.arraycopy(t,e,this.coefficients,0,this.coefficients.length))}else this.coefficients=t}getCoefficients(){return this.coefficients}getDegree(){return this.coefficients.length-1}isZero(){return this.coefficients[0]===0}getCoefficient(e){return this.coefficients[this.coefficients.length-1-e]}evaluateAt(e){if(e===0)return this.getCoefficient(0);let t=this.coefficients,n;if(e===1){n=0;for(let e=0,r=t.length;e!==r;e++){let r=t[e];n=te.addOrSubtract(n,r)}return n}n=t[0];let r=t.length,i=this.field;for(let a=1;a<r;a++)n=te.addOrSubtract(i.multiply(e,n),t[a]);return n}addOrSubtract(e){if(!this.field.equals(e.field))throw new l(`GenericGFPolys do not have same GenericGF field`);if(this.isZero())return e;if(e.isZero())return this;let t=this.coefficients,n=e.coefficients;if(t.length>n.length){let e=t;t=n,n=e}let r=new Int32Array(n.length),i=n.length-t.length;p.arraycopy(n,0,r,0,i);for(let e=i;e<n.length;e++)r[e]=te.addOrSubtract(t[e-i],n[e]);return new ne(this.field,r)}multiply(e){if(!this.field.equals(e.field))throw new l(`GenericGFPolys do not have same GenericGF field`);if(this.isZero()||e.isZero())return this.field.getZero();let t=this.coefficients,n=t.length,r=e.coefficients,i=r.length,a=new Int32Array(n+i-1),o=this.field;for(let e=0;e<n;e++){let n=t[e];for(let t=0;t<i;t++)a[e+t]=te.addOrSubtract(a[e+t],o.multiply(n,r[t]))}return new ne(o,a)}multiplyScalar(e){if(e===0)return this.field.getZero();if(e===1)return this;let t=this.coefficients.length,n=this.field,r=new Int32Array(t),i=this.coefficients;for(let a=0;a<t;a++)r[a]=n.multiply(i[a],e);return new ne(n,r)}multiplyByMonomial(e,t){if(e<0)throw new l;if(t===0)return this.field.getZero();let n=this.coefficients,r=n.length,i=new Int32Array(r+e),a=this.field;for(let e=0;e<r;e++)i[e]=a.multiply(n[e],t);return new ne(a,i)}divide(e){if(!this.field.equals(e.field))throw new l(`GenericGFPolys do not have same GenericGF field`);if(e.isZero())throw new l(`Divide by 0`);let t=this.field,n=t.getZero(),r=this,i=e.getCoefficient(e.getDegree()),a=t.inverse(i);for(;r.getDegree()>=e.getDegree()&&!r.isZero();){let i=r.getDegree()-e.getDegree(),o=t.multiply(r.getCoefficient(r.getDegree()),a),s=e.multiplyByMonomial(i,o),c=t.buildMonomial(i,o);n=n.addOrSubtract(c),r=r.addOrSubtract(s)}return[n,r]}toString(){let e=``;for(let t=this.getDegree();t>=0;t--){let n=this.getCoefficient(t);if(n!==0){if(n<0?(e+=` - `,n=-n):e.length>0&&(e+=` + `),t===0||n!==1){let t=this.field.log(n);t===0?e+=`1`:t===1?e+=`a`:(e+=`a^`,e+=t)}t!==0&&(t===1?e+=`x`:(e+=`x^`,e+=t))}}return e}}class re extends s{}re.kind=`ArithmeticException`;class ie extends te{constructor(e,t,n){super(),this.primitive=e,this.size=t,this.generatorBase=n;let r=new Int32Array(t),i=1;for(let n=0;n<t;n++)r[n]=i,i*=2,i>=t&&(i^=e,i&=t-1);this.expTable=r;let a=new Int32Array(t);for(let e=0;e<t-1;e++)a[r[e]]=e;this.logTable=a,this.zero=new ne(this,Int32Array.from([0])),this.one=new ne(this,Int32Array.from([1]))}getZero(){return this.zero}getOne(){return this.one}buildMonomial(e,t){if(e<0)throw new l;if(t===0)return this.zero;let n=new Int32Array(e+1);return n[0]=t,new ne(this,n)}inverse(e){if(e===0)throw new re;return this.expTable[this.size-this.logTable[e]-1]}multiply(e,t){return e===0||t===0?0:this.expTable[(this.logTable[e]+this.logTable[t])%(this.size-1)]}getSize(){return this.size}getGeneratorBase(){return this.generatorBase}toString(){return`GF(0x`+_.toHexString(this.primitive)+`,`+this.size+`)`}equals(e){return e===this}}ie.AZTEC_DATA_12=new ie(4201,4096,1),ie.AZTEC_DATA_10=new ie(1033,1024,1),ie.AZTEC_DATA_6=new ie(67,64,1),ie.AZTEC_PARAM=new ie(19,16,1),ie.QR_CODE_FIELD_256=new ie(285,256,0),ie.DATA_MATRIX_FIELD_256=new ie(301,256,1),ie.AZTEC_DATA_8=ie.DATA_MATRIX_FIELD_256,ie.MAXICODE_FIELD_64=ie.AZTEC_DATA_6;class ae extends s{}ae.kind=`ReedSolomonException`;class oe extends s{}oe.kind=`IllegalStateException`;class se{constructor(e){this.field=e}decode(e,t){let n=this.field,r=new ne(n,e),i=new Int32Array(t),a=!0;for(let e=0;e<t;e++){let t=r.evaluateAt(n.exp(e+n.getGeneratorBase()));i[i.length-1-e]=t,t!==0&&(a=!1)}if(a)return;let o=new ne(n,i),s=this.runEuclideanAlgorithm(n.buildMonomial(t,1),o,t),c=s[0],l=s[1],u=this.findErrorLocations(c),d=this.findErrorMagnitudes(l,u);for(let t=0;t<u.length;t++){let r=e.length-1-n.log(u[t]);if(r<0)throw new ae(`Bad error location`);e[r]=ie.addOrSubtract(e[r],d[t])}}runEuclideanAlgorithm(e,t,n){if(e.getDegree()<t.getDegree()){let n=e;e=t,t=n}let r=this.field,i=e,a=t,o=r.getZero(),s=r.getOne();for(;a.getDegree()>=(n/2|0);){let e=i,t=o;if(i=a,o=s,i.isZero())throw new ae(`r_{i-1} was zero`);a=e;let n=r.getZero(),c=i.getCoefficient(i.getDegree()),l=r.inverse(c);for(;a.getDegree()>=i.getDegree()&&!a.isZero();){let e=a.getDegree()-i.getDegree(),t=r.multiply(a.getCoefficient(a.getDegree()),l);n=n.addOrSubtract(r.buildMonomial(e,t)),a=a.addOrSubtract(i.multiplyByMonomial(e,t))}if(s=n.multiply(o).addOrSubtract(t),a.getDegree()>=i.getDegree())throw new oe(`Division algorithm failed to reduce polynomial?`)}let c=s.getCoefficient(0);if(c===0)throw new ae(`sigmaTilde(0) was zero`);let l=r.inverse(c);return[s.multiplyScalar(l),a.multiplyScalar(l)]}findErrorLocations(e){let t=e.getDegree();if(t===1)return Int32Array.from([e.getCoefficient(1)]);let n=new Int32Array(t),r=0,i=this.field;for(let a=1;a<i.getSize()&&r<t;a++)e.evaluateAt(a)===0&&(n[r]=i.inverse(a),r++);if(r!==t)throw new ae(`Error locator degree does not match number of roots`);return n}findErrorMagnitudes(e,t){let n=t.length,r=new Int32Array(n),i=this.field;for(let a=0;a<n;a++){let o=i.inverse(t[a]),s=1;for(let e=0;e<n;e++)if(a!==e){let n=i.multiply(t[e],o),r=n&1?n&-2:n|1;s=i.multiply(s,r)}r[a]=i.multiply(e.evaluateAt(o),i.inverse(s)),i.getGeneratorBase()!==0&&(r[a]=i.multiply(r[a],o))}return r}}var U;(function(e){e[e.UPPER=0]=`UPPER`,e[e.LOWER=1]=`LOWER`,e[e.MIXED=2]=`MIXED`,e[e.DIGIT=3]=`DIGIT`,e[e.PUNCT=4]=`PUNCT`,e[e.BINARY=5]=`BINARY`})(U||={});class ce{decode(e){this.ddata=e;let t=e.getBits(),n=this.extractBits(t),r=this.correctBits(n),i=new ee(ce.convertBoolArrayToByteArray(r),ce.getEncodedData(r),null,null);return i.setNumBits(r.length),i}static highLevelDecode(e){return this.getEncodedData(e)}static getEncodedData(e){let t=e.length,n=U.UPPER,r=U.UPPER,i=``,a=0;for(;a<t;)if(r===U.BINARY){if(t-a<5)break;let o=ce.readCode(e,a,5);if(a+=5,o===0){if(t-a<11)break;o=ce.readCode(e,a,11)+31,a+=11}for(let n=0;n<o;n++){if(t-a<8){a=t;break}let n=ce.readCode(e,a,8);i+=E.castAsNonUtf8Char(n),a+=8}r=n}else{let o=r===U.DIGIT?4:5;if(t-a<o)break;let s=ce.readCode(e,a,o);a+=o;let c=ce.getCharacter(r,s);c.startsWith(`CTRL_`)?(n=r,r=ce.getTable(c.charAt(5)),c.charAt(6)===`L`&&(n=r)):(i+=c,r=n)}return i}static getTable(e){switch(e){case`L`:return U.LOWER;case`P`:return U.PUNCT;case`M`:return U.MIXED;case`D`:return U.DIGIT;case`B`:return U.BINARY;default:return U.UPPER}}static getCharacter(e,t){switch(e){case U.UPPER:return ce.UPPER_TABLE[t];case U.LOWER:return ce.LOWER_TABLE[t];case U.MIXED:return ce.MIXED_TABLE[t];case U.PUNCT:return ce.PUNCT_TABLE[t];case U.DIGIT:return ce.DIGIT_TABLE[t];default:throw new oe(`Bad table`)}}correctBits(e){let t,n;this.ddata.getNbLayers()<=2?(n=6,t=ie.AZTEC_DATA_6):this.ddata.getNbLayers()<=8?(n=8,t=ie.AZTEC_DATA_8):this.ddata.getNbLayers()<=22?(n=10,t=ie.AZTEC_DATA_10):(n=12,t=ie.AZTEC_DATA_12);let r=this.ddata.getNbDatablocks(),i=e.length/n;if(i<r)throw new x;let a=e.length%n,o=new Int32Array(i);for(let t=0;t<i;t++,a+=n)o[t]=ce.readCode(e,a,n);try{new se(t).decode(o,i-r)}catch(e){throw new x(e)}let s=(1<<n)-1,c=0;for(let e=0;e<r;e++){let t=o[e];if(t===0||t===s)throw new x;(t===1||t===s-1)&&c++}let l=Array(r*n-c),u=0;for(let e=0;e<r;e++){let t=o[e];if(t===1||t===s-1)l.fill(t>1,u,u+n-1),u+=n-1;else for(let e=n-1;e>=0;--e)l[u++]=(t&1<<e)!=0}return l}extractBits(e){let t=this.ddata.isCompact(),n=this.ddata.getNbLayers(),r=(t?11:14)+n*4,i=new Int32Array(r),a=Array(this.totalBitsInLayer(n,t));if(t)for(let e=0;e<i.length;e++)i[e]=e;else{let e=r+1+2*_.truncDivision(_.truncDivision(r,2)-1,15),t=r/2,n=_.truncDivision(e,2);for(let e=0;e<t;e++){let r=e+_.truncDivision(e,15);i[t-e-1]=n-r-1,i[t+e]=n+r+1}}for(let o=0,s=0;o<n;o++){let c=(n-o)*4+(t?9:12),l=o*2,u=r-1-l;for(let t=0;t<c;t++){let n=t*2;for(let r=0;r<2;r++)a[s+n+r]=e.get(i[l+r],i[l+t]),a[s+2*c+n+r]=e.get(i[l+t],i[u-r]),a[s+4*c+n+r]=e.get(i[u-r],i[u-t]),a[s+6*c+n+r]=e.get(i[u-t],i[l+r])}s+=c*8}return a}static readCode(e,t,n){let r=0;for(let i=t;i<t+n;i++)r<<=1,e[i]&&(r|=1);return r}static readByte(e,t){let n=e.length-t;return n>=8?ce.readCode(e,t,8):ce.readCode(e,t,n)<<8-n}static convertBoolArrayToByteArray(e){let t=new Uint8Array((e.length+7)/8);for(let n=0;n<t.length;n++)t[n]=ce.readByte(e,8*n);return t}totalBitsInLayer(e,t){return((t?88:112)+16*e)*e}}ce.UPPER_TABLE=`CTRL_PS. .A.B.C.D.E.F.G.H.I.J.K.L.M.N.O.P.Q.R.S.T.U.V.W.X.Y.Z.CTRL_LL.CTRL_ML.CTRL_DL.CTRL_BS`.split(`.`),ce.LOWER_TABLE=`CTRL_PS. .a.b.c.d.e.f.g.h.i.j.k.l.m.n.o.p.q.r.s.t.u.v.w.x.y.z.CTRL_US.CTRL_ML.CTRL_DL.CTRL_BS`.split(`.`),ce.MIXED_TABLE=`CTRL_PS. .\\1.\\2.\\3.\\4.\\5.\\6.\\7.\b. .
@@ -3353,8 +3352,8 @@ Server stopped.
3353
3352
  `),e.append(`>>
3354
3353
  `),e.toString()}setMode(e){this.mode=e}setECLevel(e){this.ecLevel=e}setVersion(e){this.version=e}setMaskPattern(e){this.maskPattern=e}setMatrix(e){this.matrix=e}static isValidMaskPattern(e){return e>=0&&e<An.NUM_MASK_PATTERNS}}An.NUM_MASK_PATTERNS=8;class jn extends s{}jn.kind=`WriterException`;class Mn{constructor(){}static clearMatrix(e){e.clear(255)}static buildMatrix(e,t,n,r,i){Mn.clearMatrix(i),Mn.embedBasicPatterns(n,i),Mn.embedTypeInfo(t,r,i),Mn.maybeEmbedVersionInfo(n,i),Mn.embedDataBits(e,r,i)}static embedBasicPatterns(e,t){Mn.embedPositionDetectionPatternsAndSeparators(t),Mn.embedDarkDotAtLeftBottomCorner(t),Mn.maybeEmbedPositionAdjustmentPatterns(e,t),Mn.embedTimingPatterns(t)}static embedTypeInfo(e,t,n){let r=new v;Mn.makeTypeInfoBits(e,t,r);for(let e=0,t=r.getSize();e<t;++e){let t=r.get(r.getSize()-1-e),i=Mn.TYPE_INFO_COORDINATES[e],a=i[0],o=i[1];if(n.setBoolean(a,o,t),e<8){let r=n.getWidth()-e-1;n.setBoolean(r,8,t)}else{let r=n.getHeight()-7+(e-8);n.setBoolean(8,r,t)}}}static maybeEmbedVersionInfo(e,t){if(e.getVersionNumber()<7)return;let n=new v;Mn.makeVersionInfoBits(e,n);let r=17;for(let e=0;e<6;++e)for(let i=0;i<3;++i){let a=n.get(r);r--,t.setBoolean(e,t.getHeight()-11+i,a),t.setBoolean(t.getHeight()-11+i,e,a)}}static embedDataBits(e,t,n){let r=0,i=-1,a=n.getWidth()-1,o=n.getHeight()-1;for(;a>0;){for(a===6&&--a;o>=0&&o<n.getHeight();){for(let i=0;i<2;++i){let s=a-i;if(!Mn.isEmpty(n.get(s,o)))continue;let c;r<e.getSize()?(c=e.get(r),++r):c=!1,t!==255&&On.getDataMaskBit(t,s,o)&&(c=!c),n.setBoolean(s,o,c)}o+=i}i=-i,o+=i,a-=2}if(r!==e.getSize())throw new jn(`Not all bits consumed: `+r+`/`+e.getSize())}static findMSBSet(e){return 32-_.numberOfLeadingZeros(e)}static calculateBCHCode(e,t){if(t===0)throw new l(`0 polynomial`);let n=Mn.findMSBSet(t);for(e<<=n-1;Mn.findMSBSet(e)>=n;)e^=t<<Mn.findMSBSet(e)-n;return e}static makeTypeInfoBits(e,t,n){if(!An.isValidMaskPattern(t))throw new jn(`Invalid mask pattern`);let r=e.getBits()<<3|t;n.appendBits(r,5);let i=Mn.calculateBCHCode(r,Mn.TYPE_INFO_POLY);n.appendBits(i,10);let a=new v;if(a.appendBits(Mn.TYPE_INFO_MASK_PATTERN,15),n.xor(a),n.getSize()!==15)throw new jn(`should not happen but we got: `+n.getSize())}static makeVersionInfoBits(e,t){t.appendBits(e.getVersionNumber(),6);let n=Mn.calculateBCHCode(e.getVersionNumber(),Mn.VERSION_INFO_POLY);if(t.appendBits(n,12),t.getSize()!==18)throw new jn(`should not happen but we got: `+t.getSize())}static isEmpty(e){return e===255}static embedTimingPatterns(e){for(let t=8;t<e.getWidth()-8;++t){let n=(t+1)%2;Mn.isEmpty(e.get(t,6))&&e.setNumber(t,6,n),Mn.isEmpty(e.get(6,t))&&e.setNumber(6,t,n)}}static embedDarkDotAtLeftBottomCorner(e){if(e.get(8,e.getHeight()-8)===0)throw new jn;e.setNumber(8,e.getHeight()-8,1)}static embedHorizontalSeparationPattern(e,t,n){for(let r=0;r<8;++r){if(!Mn.isEmpty(n.get(e+r,t)))throw new jn;n.setNumber(e+r,t,0)}}static embedVerticalSeparationPattern(e,t,n){for(let r=0;r<7;++r){if(!Mn.isEmpty(n.get(e,t+r)))throw new jn;n.setNumber(e,t+r,0)}}static embedPositionAdjustmentPattern(e,t,n){for(let r=0;r<5;++r){let i=Mn.POSITION_ADJUSTMENT_PATTERN[r];for(let a=0;a<5;++a)n.setNumber(e+a,t+r,i[a])}}static embedPositionDetectionPattern(e,t,n){for(let r=0;r<7;++r){let i=Mn.POSITION_DETECTION_PATTERN[r];for(let a=0;a<7;++a)n.setNumber(e+a,t+r,i[a])}}static embedPositionDetectionPatternsAndSeparators(e){let t=Mn.POSITION_DETECTION_PATTERN[0].length;Mn.embedPositionDetectionPattern(0,0,e),Mn.embedPositionDetectionPattern(e.getWidth()-t,0,e),Mn.embedPositionDetectionPattern(0,e.getWidth()-t,e),Mn.embedHorizontalSeparationPattern(0,7,e),Mn.embedHorizontalSeparationPattern(e.getWidth()-8,7,e),Mn.embedHorizontalSeparationPattern(0,e.getWidth()-8,e),Mn.embedVerticalSeparationPattern(7,0,e),Mn.embedVerticalSeparationPattern(e.getHeight()-7-1,0,e),Mn.embedVerticalSeparationPattern(7,e.getHeight()-7,e)}static maybeEmbedPositionAdjustmentPatterns(e,t){if(e.getVersionNumber()<2)return;let n=e.getVersionNumber()-1,r=Mn.POSITION_ADJUSTMENT_PATTERN_COORDINATE_TABLE[n];for(let e=0,n=r.length;e!==n;e++){let i=r[e];if(i>=0)for(let e=0;e!==n;e++){let n=r[e];n>=0&&Mn.isEmpty(t.get(n,i))&&Mn.embedPositionAdjustmentPattern(n-2,i-2,t)}}}}Mn.POSITION_DETECTION_PATTERN=Array.from([Int32Array.from([1,1,1,1,1,1,1]),Int32Array.from([1,0,0,0,0,0,1]),Int32Array.from([1,0,1,1,1,0,1]),Int32Array.from([1,0,1,1,1,0,1]),Int32Array.from([1,0,1,1,1,0,1]),Int32Array.from([1,0,0,0,0,0,1]),Int32Array.from([1,1,1,1,1,1,1])]),Mn.POSITION_ADJUSTMENT_PATTERN=Array.from([Int32Array.from([1,1,1,1,1]),Int32Array.from([1,0,0,0,1]),Int32Array.from([1,0,1,0,1]),Int32Array.from([1,0,0,0,1]),Int32Array.from([1,1,1,1,1])]),Mn.POSITION_ADJUSTMENT_PATTERN_COORDINATE_TABLE=Array.from([Int32Array.from([-1,-1,-1,-1,-1,-1,-1]),Int32Array.from([6,18,-1,-1,-1,-1,-1]),Int32Array.from([6,22,-1,-1,-1,-1,-1]),Int32Array.from([6,26,-1,-1,-1,-1,-1]),Int32Array.from([6,30,-1,-1,-1,-1,-1]),Int32Array.from([6,34,-1,-1,-1,-1,-1]),Int32Array.from([6,22,38,-1,-1,-1,-1]),Int32Array.from([6,24,42,-1,-1,-1,-1]),Int32Array.from([6,26,46,-1,-1,-1,-1]),Int32Array.from([6,28,50,-1,-1,-1,-1]),Int32Array.from([6,30,54,-1,-1,-1,-1]),Int32Array.from([6,32,58,-1,-1,-1,-1]),Int32Array.from([6,34,62,-1,-1,-1,-1]),Int32Array.from([6,26,46,66,-1,-1,-1]),Int32Array.from([6,26,48,70,-1,-1,-1]),Int32Array.from([6,26,50,74,-1,-1,-1]),Int32Array.from([6,30,54,78,-1,-1,-1]),Int32Array.from([6,30,56,82,-1,-1,-1]),Int32Array.from([6,30,58,86,-1,-1,-1]),Int32Array.from([6,34,62,90,-1,-1,-1]),Int32Array.from([6,28,50,72,94,-1,-1]),Int32Array.from([6,26,50,74,98,-1,-1]),Int32Array.from([6,30,54,78,102,-1,-1]),Int32Array.from([6,28,54,80,106,-1,-1]),Int32Array.from([6,32,58,84,110,-1,-1]),Int32Array.from([6,30,58,86,114,-1,-1]),Int32Array.from([6,34,62,90,118,-1,-1]),Int32Array.from([6,26,50,74,98,122,-1]),Int32Array.from([6,30,54,78,102,126,-1]),Int32Array.from([6,26,52,78,104,130,-1]),Int32Array.from([6,30,56,82,108,134,-1]),Int32Array.from([6,34,60,86,112,138,-1]),Int32Array.from([6,30,58,86,114,142,-1]),Int32Array.from([6,34,62,90,118,146,-1]),Int32Array.from([6,30,54,78,102,126,150]),Int32Array.from([6,24,50,76,102,128,154]),Int32Array.from([6,28,54,80,106,132,158]),Int32Array.from([6,32,58,84,110,136,162]),Int32Array.from([6,26,54,82,110,138,166]),Int32Array.from([6,30,58,86,114,142,170])]),Mn.TYPE_INFO_COORDINATES=Array.from([Int32Array.from([8,0]),Int32Array.from([8,1]),Int32Array.from([8,2]),Int32Array.from([8,3]),Int32Array.from([8,4]),Int32Array.from([8,5]),Int32Array.from([8,7]),Int32Array.from([8,8]),Int32Array.from([7,8]),Int32Array.from([5,8]),Int32Array.from([4,8]),Int32Array.from([3,8]),Int32Array.from([2,8]),Int32Array.from([1,8]),Int32Array.from([0,8])]),Mn.VERSION_INFO_POLY=7973,Mn.TYPE_INFO_POLY=1335,Mn.TYPE_INFO_MASK_PATTERN=21522;class Nn{constructor(e,t){this.dataBytes=e,this.errorCorrectionBytes=t}getDataBytes(){return this.dataBytes}getErrorCorrectionBytes(){return this.errorCorrectionBytes}}class Pn{constructor(){}static calculateMaskPenalty(e){return On.applyMaskPenaltyRule1(e)+On.applyMaskPenaltyRule2(e)+On.applyMaskPenaltyRule3(e)+On.applyMaskPenaltyRule4(e)}static encode(e,t,n=null){let r=Pn.DEFAULT_BYTE_MODE_ENCODING,i=n!==null&&n.get(En.CHARACTER_SET)!==void 0;i&&(r=n.get(En.CHARACTER_SET).toString());let a=this.chooseMode(e,r),o=new v;if(a===Nt.BYTE&&(i||Pn.DEFAULT_BYTE_MODE_ENCODING!==r)){let e=C.getCharacterSetECIByName(r);e!==void 0&&this.appendECI(e,o)}this.appendModeInfo(a,o);let s=new v;this.appendBytes(e,a,s,r);let c;if(n!==null&&n.get(En.QR_VERSION)!==void 0){let e=Number.parseInt(n.get(En.QR_VERSION).toString(),10);c=Dt.getVersionForNumber(e);let r=this.calculateBitsNeeded(a,o,s,c);if(!this.willFit(r,c,t))throw new jn(`Data too big for requested version`)}else c=this.recommendVersion(t,a,o,s);let l=new v;l.appendBitArray(o);let u=a===Nt.BYTE?s.getSizeInBytes():e.length;this.appendLengthInfo(u,c,a,l),l.appendBitArray(s);let d=c.getECBlocksForLevel(t),f=c.getTotalCodewords()-d.getTotalECCodewords();this.terminateBits(f,l);let p=this.interleaveWithECBytes(l,c.getTotalCodewords(),f,d.getNumBlocks()),m=new An;m.setECLevel(t),m.setMode(a),m.setVersion(c);let h=c.getDimensionForVersion(),g=new kn(h,h),_=this.chooseMaskPattern(p,t,c,g);return m.setMaskPattern(_),Mn.buildMatrix(p,t,c,_,g),m.setMatrix(g),m}static recommendVersion(e,t,n,r){let i=this.calculateBitsNeeded(t,n,r,Dt.getVersionForNumber(1)),a=this.chooseVersion(i,e),o=this.calculateBitsNeeded(t,n,r,a);return this.chooseVersion(o,e)}static calculateBitsNeeded(e,t,n,r){return t.getSize()+e.getCharacterCountBits(r)+n.getSize()}static getAlphanumericCode(e){return e<Pn.ALPHANUMERIC_TABLE.length?Pn.ALPHANUMERIC_TABLE[e]:-1}static chooseMode(e,t=null){if(C.SJIS.getName()===t&&this.isOnlyDoubleByteKanji(e))return Nt.KANJI;let n=!1,r=!1;for(let t=0,i=e.length;t<i;++t){let i=e.charAt(t);if(Pn.isDigit(i))n=!0;else if(this.getAlphanumericCode(i.charCodeAt(0))!==-1)r=!0;else return Nt.BYTE}return r?Nt.ALPHANUMERIC:n?Nt.NUMERIC:Nt.BYTE}static isOnlyDoubleByteKanji(e){let t;try{t=T.encode(e,C.SJIS)}catch{return!1}let n=t.length;if(n%2!=0)return!1;for(let e=0;e<n;e+=2){let n=t[e]&255;if((n<129||n>159)&&(n<224||n>235))return!1}return!0}static chooseMaskPattern(e,t,n,r){let i=2**53-1,a=-1;for(let o=0;o<An.NUM_MASK_PATTERNS;o++){Mn.buildMatrix(e,t,n,o,r);let s=this.calculateMaskPenalty(r);s<i&&(i=s,a=o)}return a}static chooseVersion(e,t){for(let n=1;n<=40;n++){let r=Dt.getVersionForNumber(n);if(Pn.willFit(e,r,t))return r}throw new jn(`Data too big`)}static willFit(e,t,n){return t.getTotalCodewords()-t.getECBlocksForLevel(n).getTotalECCodewords()>=(e+7)/8}static terminateBits(e,t){let n=e*8;if(t.getSize()>n)throw new jn(`data bits cannot fit in the QR Code`+t.getSize()+` > `+n);for(let e=0;e<4&&t.getSize()<n;++e)t.appendBit(!1);let r=t.getSize()&7;if(r>0)for(let e=r;e<8;e++)t.appendBit(!1);let i=e-t.getSizeInBytes();for(let e=0;e<i;++e)t.appendBits(e&1?17:236,8);if(t.getSize()!==n)throw new jn(`Bits size does not equal capacity`)}static getNumDataBytesAndNumECBytesForBlockID(e,t,n,r,i,a){if(r>=n)throw new jn(`Block ID too large`);let o=e%n,s=n-o,c=Math.floor(e/n),l=c+1,u=Math.floor(t/n),d=u+1,f=c-u,p=l-d;if(f!==p)throw new jn(`EC bytes mismatch`);if(n!==s+o)throw new jn(`RS blocks mismatch`);if(e!==(u+f)*s+(d+p)*o)throw new jn(`Total bytes mismatch`);r<s?(i[0]=u,a[0]=f):(i[0]=d,a[0]=p)}static interleaveWithECBytes(e,t,n,r){if(e.getSizeInBytes()!==n)throw new jn(`Number of bits and data bytes does not match`);let i=0,a=0,o=0,s=[];for(let c=0;c<r;++c){let l=new Int32Array(1),u=new Int32Array(1);Pn.getNumDataBytesAndNumECBytesForBlockID(t,n,r,c,l,u);let d=l[0],f=new Uint8Array(d);e.toBytes(8*i,f,0,d);let p=Pn.generateECBytes(f,u[0]);s.push(new Nn(f,p)),a=Math.max(a,d),o=Math.max(o,p.length),i+=l[0]}if(n!==i)throw new jn(`Data bytes does not match offset`);let c=new v;for(let e=0;e<a;++e)for(let t of s){let n=t.getDataBytes();e<n.length&&c.appendBits(n[e],8)}for(let e=0;e<o;++e)for(let t of s){let n=t.getErrorCorrectionBytes();e<n.length&&c.appendBits(n[e],8)}if(t!==c.getSizeInBytes())throw new jn(`Interleaving error: `+t+` and `+c.getSizeInBytes()+` differ.`);return c}static generateECBytes(e,t){let n=e.length,r=new Int32Array(n+t);for(let t=0;t<n;t++)r[t]=e[t]&255;new Dn(ie.QR_CODE_FIELD_256).encode(r,t);let i=new Uint8Array(t);for(let e=0;e<t;e++)i[e]=r[n+e];return i}static appendModeInfo(e,t){t.appendBits(e.getBits(),4)}static appendLengthInfo(e,t,n,r){let i=n.getCharacterCountBits(t);if(e>=1<<i)throw new jn(e+` is bigger than `+((1<<i)-1));r.appendBits(e,i)}static appendBytes(e,t,n,r){switch(t){case Nt.NUMERIC:Pn.appendNumericBytes(e,n);break;case Nt.ALPHANUMERIC:Pn.appendAlphanumericBytes(e,n);break;case Nt.BYTE:Pn.append8BitBytes(e,n,r);break;case Nt.KANJI:Pn.appendKanjiBytes(e,n);break;default:throw new jn(`Invalid mode: `+t)}}static getDigit(e){return e.charCodeAt(0)-48}static isDigit(e){let t=Pn.getDigit(e);return t>=0&&t<=9}static appendNumericBytes(e,t){let n=e.length,r=0;for(;r<n;){let i=Pn.getDigit(e.charAt(r));if(r+2<n){let n=Pn.getDigit(e.charAt(r+1)),a=Pn.getDigit(e.charAt(r+2));t.appendBits(i*100+n*10+a,10),r+=3}else if(r+1<n){let n=Pn.getDigit(e.charAt(r+1));t.appendBits(i*10+n,7),r+=2}else t.appendBits(i,4),r++}}static appendAlphanumericBytes(e,t){let n=e.length,r=0;for(;r<n;){let i=Pn.getAlphanumericCode(e.charCodeAt(r));if(i===-1)throw new jn;if(r+1<n){let n=Pn.getAlphanumericCode(e.charCodeAt(r+1));if(n===-1)throw new jn;t.appendBits(i*45+n,11),r+=2}else t.appendBits(i,6),r++}}static append8BitBytes(e,t,n){let r;try{r=T.encode(e,n)}catch(e){throw new jn(e)}for(let e=0,n=r.length;e!==n;e++){let n=r[e];t.appendBits(n,8)}}static appendKanjiBytes(e,t){let n;try{n=T.encode(e,C.SJIS)}catch(e){throw new jn(e)}let r=n.length;for(let e=0;e<r;e+=2){let r=n[e]&255,i=n[e+1]&255,a=r<<8&4294967295|i,o=-1;if(a>=33088&&a<=40956?o=a-33088:a>=57408&&a<=60351&&(o=a-49472),o===-1)throw new jn(`Invalid byte sequence`);let s=(o>>8)*192+(o&255);t.appendBits(s,13)}}static appendECI(e,t){t.appendBits(Nt.ECI.getBits(),4),t.appendBits(e.getValue(),8)}}Pn.ALPHANUMERIC_TABLE=Int32Array.from([-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,36,-1,-1,-1,37,38,-1,-1,-1,-1,39,40,-1,41,42,43,0,1,2,3,4,5,6,7,8,9,44,-1,-1,-1,-1,-1,-1,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,-1,-1,-1,-1,-1]),Pn.DEFAULT_BYTE_MODE_ENCODING=C.UTF8.getName();class Fn{write(e,t,n,r=null){if(e.length===0)throw new l(`Found empty contents`);if(t<0||n<0)throw new l(`Requested dimensions are too small: `+t+`x`+n);let i=Tt.L,a=Fn.QUIET_ZONE_SIZE;r!==null&&(r.get(En.ERROR_CORRECTION)!==void 0&&(i=Tt.fromString(r.get(En.ERROR_CORRECTION).toString())),r.get(En.MARGIN)!==void 0&&(a=Number.parseInt(r.get(En.MARGIN).toString(),10)));let o=Pn.encode(e,i,r);return this.renderResult(o,t,n,a)}writeToDom(e,t,n,r,i=null){typeof e==`string`&&(e=document.querySelector(e));let a=this.write(t,n,r,i);e&&e.appendChild(a)}renderResult(e,t,n,r){let i=e.getMatrix();if(i===null)throw new oe;let a=i.getWidth(),o=i.getHeight(),s=a+r*2,c=o+r*2,l=Math.max(t,s),u=Math.max(n,c),d=Math.min(Math.floor(l/s),Math.floor(u/c)),f=Math.floor((l-a*d)/2),p=Math.floor((u-o*d)/2),m=this.createSVGElement(l,u);for(let e=0,t=p;e<o;e++,t+=d)for(let n=0,r=f;n<a;n++,r+=d)if(i.get(n,e)===1){let e=this.createSvgRectElement(r,t,d,d);m.appendChild(e)}return m}createSVGElement(e,t){let n=document.createElementNS(Fn.SVG_NS,`svg`);return n.setAttributeNS(null,`height`,e.toString()),n.setAttributeNS(null,`width`,t.toString()),n}createSvgRectElement(e,t,n,r){let i=document.createElementNS(Fn.SVG_NS,`rect`);return i.setAttributeNS(null,`x`,e.toString()),i.setAttributeNS(null,`y`,t.toString()),i.setAttributeNS(null,`height`,n.toString()),i.setAttributeNS(null,`width`,r.toString()),i.setAttributeNS(null,`fill`,`#000000`),i}}Fn.QUIET_ZONE_SIZE=4,Fn.SVG_NS=`http://www.w3.org/2000/svg`;class In{encode(e,t,n,r,i){if(e.length===0)throw new l(`Found empty contents`);if(t!==B.QR_CODE)throw new l(`Can only encode QR_CODE, but got `+t);if(n<0||r<0)throw new l(`Requested dimensions are too small: ${n}x${r}`);let a=Tt.L,o=In.QUIET_ZONE_SIZE;i!==null&&(i.get(En.ERROR_CORRECTION)!==void 0&&(a=Tt.fromString(i.get(En.ERROR_CORRECTION).toString())),i.get(En.MARGIN)!==void 0&&(o=Number.parseInt(i.get(En.MARGIN).toString(),10)));let s=Pn.encode(e,a,i);return In.renderResult(s,n,r,o)}static renderResult(e,t,n,r){let i=e.getMatrix();if(i===null)throw new oe;let a=i.getWidth(),o=i.getHeight(),s=a+r*2,c=o+r*2,l=Math.max(t,s),u=Math.max(n,c),d=Math.min(Math.floor(l/s),Math.floor(u/c)),f=Math.floor((l-a*d)/2),p=Math.floor((u-o*d)/2),m=new O(l,u);for(let e=0,t=p;e<o;e++,t+=d)for(let n=0,r=f;n<a;n++,r+=d)i.get(n,e)===1&&m.setRegion(r,t,d,d);return m}}In.QUIET_ZONE_SIZE=4;class Ln{encode(e,t,n,r,i){let a;switch(t){case B.QR_CODE:a=new In;break;default:throw new l(`No encoder available for format `+t)}return a.encode(e,t,n,r,i)}}class Rn extends M{constructor(e,t,n,r,i,a,o,s){if(super(a,o),this.yuvData=e,this.dataWidth=t,this.dataHeight=n,this.left=r,this.top=i,r+a>t||i+o>n)throw new l(`Crop rectangle does not fit within image data.`);s&&this.reverseHorizontal(a,o)}getRow(e,t){if(e<0||e>=this.getHeight())throw new l(`Requested row is outside the image: `+e);let n=this.getWidth();(t==null||t.length<n)&&(t=new Uint8ClampedArray(n));let r=(e+this.top)*this.dataWidth+this.left;return p.arraycopy(this.yuvData,r,t,0,n),t}getMatrix(){let e=this.getWidth(),t=this.getHeight();if(e===this.dataWidth&&t===this.dataHeight)return this.yuvData;let n=e*t,r=new Uint8ClampedArray(n),i=this.top*this.dataWidth+this.left;if(e===this.dataWidth)return p.arraycopy(this.yuvData,i,r,0,n),r;for(let n=0;n<t;n++){let t=n*e;p.arraycopy(this.yuvData,i,r,t,e),i+=this.dataWidth}return r}isCropSupported(){return!0}crop(e,t,n,r){return new Rn(this.yuvData,this.dataWidth,this.dataHeight,this.left+e,this.top+t,n,r,!1)}renderThumbnail(){let e=this.getWidth()/Rn.THUMBNAIL_SCALE_FACTOR,t=this.getHeight()/Rn.THUMBNAIL_SCALE_FACTOR,n=new Int32Array(e*t),r=this.yuvData,i=this.top*this.dataWidth+this.left;for(let a=0;a<t;a++){let t=a*e;for(let a=0;a<e;a++){let e=r[i+a*Rn.THUMBNAIL_SCALE_FACTOR]&255;n[t+a]=4278190080|e*65793}i+=this.dataWidth*Rn.THUMBNAIL_SCALE_FACTOR}return n}getThumbnailWidth(){return this.getWidth()/Rn.THUMBNAIL_SCALE_FACTOR}getThumbnailHeight(){return this.getHeight()/Rn.THUMBNAIL_SCALE_FACTOR}reverseHorizontal(e,t){let n=this.yuvData;for(let r=0,i=this.top*this.dataWidth+this.left;r<t;r++,i+=this.dataWidth){let t=i+e/2;for(let r=i,a=i+e-1;r<t;r++,a--){let e=n[r];n[r]=n[a],n[a]=e}}}invert(){return new N(this)}}Rn.THUMBNAIL_SCALE_FACTOR=2;class zn extends M{constructor(e,t,n,r,i,a,o){if(super(t,n),this.dataWidth=r,this.dataHeight=i,this.left=a,this.top=o,e.BYTES_PER_ELEMENT===4){let r=t*n,i=new Uint8ClampedArray(r);for(let t=0;t<r;t++){let n=e[t],r=n>>16&255,a=n>>7&510,o=n&255;i[t]=(r+a+o)/4&255}this.luminances=i}else this.luminances=e;if(r===void 0&&(this.dataWidth=t),i===void 0&&(this.dataHeight=n),a===void 0&&(this.left=0),o===void 0&&(this.top=0),this.left+t>this.dataWidth||this.top+n>this.dataHeight)throw new l(`Crop rectangle does not fit within image data.`)}getRow(e,t){if(e<0||e>=this.getHeight())throw new l(`Requested row is outside the image: `+e);let n=this.getWidth();(t==null||t.length<n)&&(t=new Uint8ClampedArray(n));let r=(e+this.top)*this.dataWidth+this.left;return p.arraycopy(this.luminances,r,t,0,n),t}getMatrix(){let e=this.getWidth(),t=this.getHeight();if(e===this.dataWidth&&t===this.dataHeight)return this.luminances;let n=e*t,r=new Uint8ClampedArray(n),i=this.top*this.dataWidth+this.left;if(e===this.dataWidth)return p.arraycopy(this.luminances,i,r,0,n),r;for(let n=0;n<t;n++){let t=n*e;p.arraycopy(this.luminances,i,r,t,e),i+=this.dataWidth}return r}isCropSupported(){return!0}crop(e,t,n,r){return new zn(this.luminances,n,r,this.dataWidth,this.dataHeight,this.left+e,this.top+t)}invert(){return new N(this)}}class Bn extends C{static forName(e){return this.getCharacterSetECIByName(e)}}class Vn{}Vn.ISO_8859_1=C.ISO8859_1;class Hn{isCompact(){return this.compact}setCompact(e){this.compact=e}getSize(){return this.size}setSize(e){this.size=e}getLayers(){return this.layers}setLayers(e){this.layers=e}getCodeWords(){return this.codeWords}setCodeWords(e){this.codeWords=e}getMatrix(){return this.matrix}setMatrix(e){this.matrix=e}}class Un{static singletonList(e){return[e]}static min(e,t){return e.sort(t)[0]}}class Wn{constructor(e){this.previous=e}getPrevious(){return this.previous}}class Gn extends Wn{constructor(e,t,n){super(e),this.value=t,this.bitCount=n}appendTo(e,t){e.appendBits(this.value,this.bitCount)}add(e,t){return new Gn(this,e,t)}addBinaryShift(e,t){return console.warn(`addBinaryShift on SimpleToken, this simply returns a copy of this token`),new Gn(this,e,t)}toString(){let e=this.value&(1<<this.bitCount)-1;return e|=1<<this.bitCount,`<`+_.toBinaryString(e|1<<this.bitCount).substring(1)+`>`}}class Kn extends Gn{constructor(e,t,n){super(e,0,0),this.binaryShiftStart=t,this.binaryShiftByteCount=n}appendTo(e,t){for(let n=0;n<this.binaryShiftByteCount;n++)(n===0||n===31&&this.binaryShiftByteCount<=62)&&(e.appendBits(31,5),this.binaryShiftByteCount>62?e.appendBits(this.binaryShiftByteCount-31,16):n===0?e.appendBits(Math.min(this.binaryShiftByteCount,31),5):e.appendBits(this.binaryShiftByteCount-31,5)),e.appendBits(t[this.binaryShiftStart+n],8)}addBinaryShift(e,t){return new Kn(this,e,t)}toString(){return`<`+this.binaryShiftStart+`::`+(this.binaryShiftStart+this.binaryShiftByteCount-1)+`>`}}function qn(e,t,n){return new Kn(e,t,n)}function Jn(e,t,n){return new Gn(e,t,n)}let Yn=[`UPPER`,`LOWER`,`DIGIT`,`MIXED`,`PUNCT`],Xn=new Gn(null,0,0),Zn=[Int32Array.from([0,327708,327710,327709,656318]),Int32Array.from([590318,0,327710,327709,656318]),Int32Array.from([262158,590300,0,590301,932798]),Int32Array.from([327709,327708,656318,0,327710]),Int32Array.from([327711,656380,656382,656381,0])];function Qn(e){for(let t of e)g.fill(t,-1);return e[0][4]=0,e[1][4]=0,e[1][0]=28,e[3][4]=0,e[2][4]=0,e[2][0]=15,e}let $n=Qn(g.createInt32Array(6,6));class er{constructor(e,t,n,r){this.token=e,this.mode=t,this.binaryShiftByteCount=n,this.bitCount=r}getMode(){return this.mode}getToken(){return this.token}getBinaryShiftByteCount(){return this.binaryShiftByteCount}getBitCount(){return this.bitCount}latchAndAppend(e,t){let n=this.bitCount,r=this.token;if(e!==this.mode){let t=Zn[this.mode][e];r=Jn(r,t&65535,t>>16),n+=t>>16}let i=e===2?4:5;return r=Jn(r,t,i),new er(r,e,0,n+i)}shiftAndAppend(e,t){let n=this.token,r=this.mode===2?4:5;return n=Jn(n,$n[this.mode][e],r),n=Jn(n,t,5),new er(n,this.mode,0,this.bitCount+r+5)}addBinaryShiftChar(e){let t=this.token,n=this.mode,r=this.bitCount;if(this.mode===4||this.mode===2){let e=Zn[n][0];t=Jn(t,e&65535,e>>16),r+=e>>16,n=0}let i=this.binaryShiftByteCount===0||this.binaryShiftByteCount===31?18:this.binaryShiftByteCount===62?9:8,a=new er(t,n,this.binaryShiftByteCount+1,r+i);return a.binaryShiftByteCount===2078&&(a=a.endBinaryShift(e+1)),a}endBinaryShift(e){if(this.binaryShiftByteCount===0)return this;let t=this.token;return t=qn(t,e-this.binaryShiftByteCount,this.binaryShiftByteCount),new er(t,this.mode,0,this.bitCount)}isBetterThanOrEqualTo(e){let t=this.bitCount+(Zn[this.mode][e.mode]>>16);return this.binaryShiftByteCount<e.binaryShiftByteCount?t+=er.calculateBinaryShiftCost(e)-er.calculateBinaryShiftCost(this):this.binaryShiftByteCount>e.binaryShiftByteCount&&e.binaryShiftByteCount>0&&(t+=10),t<=e.bitCount}toBitArray(e){let t=[];for(let n=this.endBinaryShift(e.length).token;n!==null;n=n.getPrevious())t.unshift(n);let n=new v;for(let r of t)r.appendTo(n,e);return n}toString(){return E.format(`%s bits=%d bytes=%d`,Yn[this.mode],this.bitCount,this.binaryShiftByteCount)}static calculateBinaryShiftCost(e){return e.binaryShiftByteCount>62?21:e.binaryShiftByteCount>31?20:e.binaryShiftByteCount>0?10:0}}er.INITIAL_STATE=new er(Xn,0,0,0);function tr(e){let t=E.getCharCode(` `),n=E.getCharCode(`.`),r=E.getCharCode(`,`);e[0][t]=1;let i=E.getCharCode(`Z`),a=E.getCharCode(`A`);for(let t=a;t<=i;t++)e[0][t]=t-a+2;e[1][t]=1;let o=E.getCharCode(`z`),s=E.getCharCode(`a`);for(let t=s;t<=o;t++)e[1][t]=t-s+2;e[2][t]=1;let c=E.getCharCode(`9`),l=E.getCharCode(`0`);for(let t=l;t<=c;t++)e[2][t]=t-l+2;e[2][r]=12,e[2][n]=13;let u=`\0 \x07\b
3355
3354
  \v\f\r\x1B@\\^_\`|~`.split(``);for(let t=0;t<u.length;t++)e[3][E.getCharCode(u[t])]=t;let d=`\0\r\0\0\0\0!'#$%&'()*+,-./:;<=>?[]{}`.split(``);for(let t=0;t<d.length;t++)E.getCharCode(d[t])>0&&(e[4][E.getCharCode(d[t])]=t);return e}let nr=tr(g.createInt32Array(5,256));class rr{constructor(e){this.text=e}encode(){let e=E.getCharCode(` `),t=E.getCharCode(`
3356
- `),n=Un.singletonList(er.INITIAL_STATE);for(let r=0;r<this.text.length;r++){let i,a=r+1<this.text.length?this.text[r+1]:0;switch(this.text[r]){case E.getCharCode(`\r`):i=a===t?2:0;break;case E.getCharCode(`.`):i=a===e?3:0;break;case E.getCharCode(`,`):i=a===e?4:0;break;case E.getCharCode(`:`):i=a===e?5:0;break;default:i=0}i>0?(n=rr.updateStateListForPair(n,r,i),r++):n=this.updateStateListForChar(n,r)}return Un.min(n,(e,t)=>e.getBitCount()-t.getBitCount()).toBitArray(this.text)}updateStateListForChar(e,t){let n=[];for(let r of e)this.updateStateForChar(r,t,n);return rr.simplifyStates(n)}updateStateForChar(e,t,n){let r=this.text[t]&255,i=nr[e.getMode()][r]>0,a=null;for(let o=0;o<=4;o++){let s=nr[o][r];if(s>0){if(a??=e.endBinaryShift(t),!i||o===e.getMode()||o===2){let e=a.latchAndAppend(o,s);n.push(e)}if(!i&&$n[e.getMode()][o]>=0){let e=a.shiftAndAppend(o,s);n.push(e)}}}if(e.getBinaryShiftByteCount()>0||nr[e.getMode()][r]===0){let r=e.addBinaryShiftChar(t);n.push(r)}}static updateStateListForPair(e,t,n){let r=[];for(let i of e)this.updateStateForPair(i,t,n,r);return this.simplifyStates(r)}static updateStateForPair(e,t,n,r){let i=e.endBinaryShift(t);if(r.push(i.latchAndAppend(4,n)),e.getMode()!==4&&r.push(i.shiftAndAppend(4,n)),n===3||n===4){let e=i.latchAndAppend(2,16-n).latchAndAppend(2,1);r.push(e)}if(e.getBinaryShiftByteCount()>0){let n=e.addBinaryShiftChar(t).addBinaryShiftChar(t+1);r.push(n)}}static simplifyStates(e){let t=[];for(let n of e){let e=!0;for(let r of t){if(r.isBetterThanOrEqualTo(n)){e=!1;break}n.isBetterThanOrEqualTo(r)&&(t=t.filter(e=>e!==r))}e&&t.push(n)}return t}}class ir{constructor(){}static encodeBytes(e){return ir.encode(e,ir.DEFAULT_EC_PERCENT,ir.DEFAULT_AZTEC_LAYERS)}static encode(e,t,n){let r=new rr(e).encode(),i=_.truncDivision(r.getSize()*t,100)+11,a=r.getSize()+i,o,s,c,u,d;if(n!==ir.DEFAULT_AZTEC_LAYERS){if(o=n<0,s=Math.abs(n),s>(o?ir.MAX_NB_BITS_COMPACT:ir.MAX_NB_BITS))throw new l(E.format(`Illegal value %s for layers`,n));c=ir.totalBitsInLayer(s,o),u=ir.WORD_SIZE[s];let e=c-c%u;if(d=ir.stuffBits(r,u),d.getSize()+i>e||o&&d.getSize()>u*64)throw new l(`Data to large for user specified layer`)}else{u=0,d=null;for(let e=0;;e++){if(e>ir.MAX_NB_BITS)throw new l(`Data too large for an Aztec code`);if(o=e<=3,s=o?e+1:e,c=ir.totalBitsInLayer(s,o),a>c)continue;(d==null||u!==ir.WORD_SIZE[s])&&(u=ir.WORD_SIZE[s],d=ir.stuffBits(r,u));let t=c-c%u;if(!(o&&d.getSize()>u*64)&&d.getSize()+i<=t)break}}let f=ir.generateCheckWords(d,c,u),p=d.getSize()/u,m=ir.generateModeMessage(o,s,p),h=(o?11:14)+s*4,g=new Int32Array(h),v;if(o){v=h;for(let e=0;e<g.length;e++)g[e]=e}else{v=h+1+2*_.truncDivision(_.truncDivision(h,2)-1,15);let e=_.truncDivision(h,2),t=_.truncDivision(v,2);for(let n=0;n<e;n++){let r=n+_.truncDivision(n,15);g[e-n-1]=t-r-1,g[e+n]=t+r+1}}let y=new O(v);for(let e=0,t=0;e<s;e++){let n=(s-e)*4+(o?9:12);for(let r=0;r<n;r++){let i=r*2;for(let a=0;a<2;a++)f.get(t+i+a)&&y.set(g[e*2+a],g[e*2+r]),f.get(t+n*2+i+a)&&y.set(g[e*2+r],g[h-1-e*2-a]),f.get(t+n*4+i+a)&&y.set(g[h-1-e*2-a],g[h-1-e*2-r]),f.get(t+n*6+i+a)&&y.set(g[h-1-e*2-r],g[e*2+a])}t+=n*8}if(ir.drawModeMessage(y,o,v,m),o)ir.drawBullsEye(y,_.truncDivision(v,2),5);else{ir.drawBullsEye(y,_.truncDivision(v,2),7);for(let e=0,t=0;e<_.truncDivision(h,2)-1;e+=15,t+=16)for(let e=_.truncDivision(v,2)&1;e<v;e+=2)y.set(_.truncDivision(v,2)-t,e),y.set(_.truncDivision(v,2)+t,e),y.set(e,_.truncDivision(v,2)-t),y.set(e,_.truncDivision(v,2)+t)}let b=new Hn;return b.setCompact(o),b.setSize(v),b.setLayers(s),b.setCodeWords(p),b.setMatrix(y),b}static drawBullsEye(e,t,n){for(let r=0;r<n;r+=2)for(let n=t-r;n<=t+r;n++)e.set(n,t-r),e.set(n,t+r),e.set(t-r,n),e.set(t+r,n);e.set(t-n,t-n),e.set(t-n+1,t-n),e.set(t-n,t-n+1),e.set(t+n,t-n),e.set(t+n,t-n+1),e.set(t+n,t+n-1)}static generateModeMessage(e,t,n){let r=new v;return e?(r.appendBits(t-1,2),r.appendBits(n-1,6),r=ir.generateCheckWords(r,28,4)):(r.appendBits(t-1,5),r.appendBits(n-1,11),r=ir.generateCheckWords(r,40,4)),r}static drawModeMessage(e,t,n,r){let i=_.truncDivision(n,2);if(t)for(let t=0;t<7;t++){let n=i-3+t;r.get(t)&&e.set(n,i-5),r.get(t+7)&&e.set(i+5,n),r.get(20-t)&&e.set(n,i+5),r.get(27-t)&&e.set(i-5,n)}else for(let t=0;t<10;t++){let n=i-5+t+_.truncDivision(t,5);r.get(t)&&e.set(n,i-7),r.get(t+10)&&e.set(i+7,n),r.get(29-t)&&e.set(n,i+7),r.get(39-t)&&e.set(i-7,n)}}static generateCheckWords(e,t,n){let r=e.getSize()/n,i=new Dn(ir.getGF(n)),a=_.truncDivision(t,n),o=ir.bitsToWords(e,n,a);i.encode(o,a-r);let s=t%n,c=new v;c.appendBits(0,s);for(let e of Array.from(o))c.appendBits(e,n);return c}static bitsToWords(e,t,n){let r=new Int32Array(n),i,a;for(i=0,a=e.getSize()/t;i<a;i++){let n=0;for(let r=0;r<t;r++)n|=e.get(i*t+r)?1<<t-r-1:0;r[i]=n}return r}static getGF(e){switch(e){case 4:return ie.AZTEC_PARAM;case 6:return ie.AZTEC_DATA_6;case 8:return ie.AZTEC_DATA_8;case 10:return ie.AZTEC_DATA_10;case 12:return ie.AZTEC_DATA_12;default:throw new l(`Unsupported word size `+e)}}static stuffBits(e,t){let n=new v,r=e.getSize(),i=(1<<t)-2;for(let a=0;a<r;a+=t){let o=0;for(let n=0;n<t;n++)(a+n>=r||e.get(a+n))&&(o|=1<<t-1-n);(o&i)===i?(n.appendBits(o&i,t),a--):(o&i)===0?(n.appendBits(o|1,t),a--):n.appendBits(o,t)}return n}static totalBitsInLayer(e,t){return((t?88:112)+16*e)*e}}ir.DEFAULT_EC_PERCENT=33,ir.DEFAULT_AZTEC_LAYERS=0,ir.MAX_NB_BITS=32,ir.MAX_NB_BITS_COMPACT=4,ir.WORD_SIZE=Int32Array.from([4,6,6,8,8,8,8,8,8,10,10,10,10,10,10,10,10,10,10,10,10,10,10,12,12,12,12,12,12,12,12,12,12]);class ar{encode(e,t,n,r){return this.encodeWithHints(e,t,n,r,null)}encodeWithHints(e,t,n,r,i){let a=Vn.ISO_8859_1,o=ir.DEFAULT_EC_PERCENT,s=ir.DEFAULT_AZTEC_LAYERS;return i!=null&&(i.has(En.CHARACTER_SET)&&(a=Bn.forName(i.get(En.CHARACTER_SET).toString())),i.has(En.ERROR_CORRECTION)&&(o=_.parseInt(i.get(En.ERROR_CORRECTION).toString())),i.has(En.AZTEC_LAYERS)&&(s=_.parseInt(i.get(En.AZTEC_LAYERS).toString()))),ar.encodeLayers(e,t,n,r,a,o,s)}static encodeLayers(e,t,n,r,i,a,o){if(t!==B.AZTEC)throw new l(`Can only encode AZTEC, but got `+t);let s=ir.encode(E.getBytes(e,i),a,o);return ar.renderResult(s,n,r)}static renderResult(e,t,n){let r=e.getMatrix();if(r==null)throw new oe;let i=r.getWidth(),a=r.getHeight(),o=Math.max(t,i),s=Math.max(n,a),c=Math.min(o/i,s/a),l=(o-i*c)/2,u=(s-a*c)/2,d=new O(o,s);for(let e=0,t=u;e<a;e++,t+=c)for(let n=0,a=l;n<i;n++,a+=c)r.get(n,e)&&d.setRegion(a,t,c,c);return d}}e.AbstractExpandedDecoder=Je,e.ArgumentException=c,e.ArithmeticException=re,e.AztecCode=Hn,e.AztecCodeReader=be,e.AztecCodeWriter=ar,e.AztecDecoder=ce,e.AztecDetector=ye,e.AztecDetectorResult=fe,e.AztecEncoder=ir,e.AztecHighLevelEncoder=rr,e.AztecPoint=ve,e.BarcodeFormat=B,e.Binarizer=f,e.BinaryBitmap=u,e.BitArray=v,e.BitMatrix=O,e.BitSource=_t,e.BrowserAztecCodeReader=xe,e.BrowserBarcodeReader=G,e.BrowserCodeReader=L,e.BrowserDatamatrixCodeReader=Ct,e.BrowserMultiFormatReader=Sn,e.BrowserPDF417Reader=Cn,e.BrowserQRCodeReader=wn,e.BrowserQRCodeSvgWriter=Fn,e.CharacterSetECI=C,e.ChecksumException=d,e.Code128Reader=Ce,e.Code39Reader=we,e.DataMatrixDecodedBitStreamParser=yt,e.DataMatrixReader=St,e.DecodeHintType=b,e.DecoderResult=ee,e.DefaultGridSampler=ge,e.DetectorResult=de,e.EAN13Reader=je,e.EncodeHintType=En,e.Exception=s,e.FormatException=x,e.GenericGF=ie,e.GenericGFPoly=ne,e.GlobalHistogramBinarizer=A,e.GridSampler=me,e.GridSamplerInstance=_e,e.HTMLCanvasElementLuminanceSource=P,e.HybridBinarizer=j,e.ITFReader=Te,e.IllegalArgumentException=l,e.IllegalStateException=oe,e.InvertedLuminanceSource=N,e.LuminanceSource=M,e.MathUtils=le,e.MultiFormatOneDReader=dt,e.MultiFormatReader=xn,e.MultiFormatWriter=Ln,e.NotFoundException=k,e.OneDReader=Se,e.PDF417DecodedBitStreamParser=J,e.PDF417DecoderErrorCorrection=Xt,e.PDF417Reader=yn,e.PDF417ResultMetadata=sn,e.PerspectiveTransform=he,e.PlanarYUVLuminanceSource=Rn,e.QRCodeByteMatrix=kn,e.QRCodeDataMask=kt,e.QRCodeDecodedBitStreamParser=Pt,e.QRCodeDecoderErrorCorrectionLevel=Tt,e.QRCodeDecoderFormatInformation=Et,e.QRCodeEncoder=Pn,e.QRCodeEncoderQRCode=An,e.QRCodeMaskUtil=On,e.QRCodeMatrixUtil=Mn,e.QRCodeMode=Nt,e.QRCodeReader=Ut,e.QRCodeVersion=Dt,e.QRCodeWriter=In,e.RGBLuminanceSource=zn,e.RSS14Reader=ut,e.RSSExpandedReader=ct,e.ReaderException=bn,e.ReedSolomonDecoder=se,e.ReedSolomonEncoder=Dn,e.ReedSolomonException=ae,e.Result=R,e.ResultMetadataType=H,e.ResultPoint=W,e.StringUtils=E,e.UnsupportedOperationException=w,e.VideoInputDevice=F,e.WhiteRectangleDetector=pe,e.WriterException=jn,e.ZXingArrays=g,e.ZXingCharset=Bn,e.ZXingInteger=_,e.ZXingStandardCharsets=Vn,e.ZXingStringBuilder=D,e.ZXingStringEncoding=T,e.ZXingSystem=p,e.createAbstractExpandedDecoder=at,Object.defineProperty(e,"__esModule",{value:!0})}))}))()),$M=function(){function e(e,t,n){if(this.formatMap=new Map([[FM.QR_CODE,QM.BarcodeFormat.QR_CODE],[FM.AZTEC,QM.BarcodeFormat.AZTEC],[FM.CODABAR,QM.BarcodeFormat.CODABAR],[FM.CODE_39,QM.BarcodeFormat.CODE_39],[FM.CODE_93,QM.BarcodeFormat.CODE_93],[FM.CODE_128,QM.BarcodeFormat.CODE_128],[FM.DATA_MATRIX,QM.BarcodeFormat.DATA_MATRIX],[FM.MAXICODE,QM.BarcodeFormat.MAXICODE],[FM.ITF,QM.BarcodeFormat.ITF],[FM.EAN_13,QM.BarcodeFormat.EAN_13],[FM.EAN_8,QM.BarcodeFormat.EAN_8],[FM.PDF_417,QM.BarcodeFormat.PDF_417],[FM.RSS_14,QM.BarcodeFormat.RSS_14],[FM.RSS_EXPANDED,QM.BarcodeFormat.RSS_EXPANDED],[FM.UPC_A,QM.BarcodeFormat.UPC_A],[FM.UPC_E,QM.BarcodeFormat.UPC_E],[FM.UPC_EAN_EXTENSION,QM.BarcodeFormat.UPC_EAN_EXTENSION]]),this.reverseFormatMap=this.createReverseFormatMap(),!QM)throw`Use html5qrcode.min.js without edit, ZXing not found.`;this.verbose=t,this.logger=n;var r=this.createZXingFormats(e),i=new Map;i.set(QM.DecodeHintType.POSSIBLE_FORMATS,r),i.set(QM.DecodeHintType.TRY_HARDER,!1),this.hints=i}return e.prototype.decodeAsync=function(e){var t=this;return new Promise(function(n,r){try{n(t.decode(e))}catch(e){r(e)}})},e.prototype.decode=function(e){var t=new QM.MultiFormatReader(this.verbose,this.hints),n=new QM.HTMLCanvasElementLuminanceSource(e),r=new QM.BinaryBitmap(new QM.HybridBinarizer(n)),i=t.decode(r);return{text:i.text,format:VM.create(this.toHtml5QrcodeSupportedFormats(i.format)),debugData:this.createDebugData()}},e.prototype.createReverseFormatMap=function(){var e=new Map;return this.formatMap.forEach(function(t,n,r){e.set(t,n)}),e},e.prototype.toHtml5QrcodeSupportedFormats=function(e){if(!this.reverseFormatMap.has(e))throw`reverseFormatMap doesn't have ${e}`;return this.reverseFormatMap.get(e)},e.prototype.createZXingFormats=function(e){for(var t=[],n=0,r=e;n<r.length;n++){var i=r[n];this.formatMap.has(i)?t.push(this.formatMap.get(i)):this.logger.logError(`${i} is not supported byZXingHtml5QrcodeShim`)}return t},e.prototype.createDebugData=function(){return{decoderName:`zxing-js`}},e}(),eN=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},tN=function(e,t){var n={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]},r,i,a,o;return o={next:s(0),throw:s(1),return:s(2)},typeof Symbol==`function`&&(o[Symbol.iterator]=function(){return this}),o;function s(e){return function(t){return c([e,t])}}function c(s){if(r)throw TypeError(`Generator is already executing.`);for(;o&&(o=0,s[0]&&(n=0)),n;)try{if(r=1,i&&(a=s[0]&2?i.return:s[0]?i.throw||((a=i.return)&&a.call(i),0):i.next)&&!(a=a.call(i,s[1])).done)return a;switch(i=0,a&&(s=[s[0]&2,a.value]),s[0]){case 0:case 1:a=s;break;case 4:return n.label++,{value:s[1],done:!1};case 5:n.label++,i=s[1],s=[0];continue;case 7:s=n.ops.pop(),n.trys.pop();continue;default:if((a=n.trys,!(a=a.length>0&&a[a.length-1]))&&(s[0]===6||s[0]===2)){n=0;continue}if(s[0]===3&&(!a||s[1]>a[0]&&s[1]<a[3])){n.label=s[1];break}if(s[0]===6&&n.label<a[1]){n.label=a[1],a=s;break}if(a&&n.label<a[2]){n.label=a[2],n.ops.push(s);break}a[2]&&n.ops.pop(),n.trys.pop();continue}s=t.call(e,n)}catch(e){s=[6,e],i=0}finally{r=a=0}if(s[0]&5)throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}},nN=function(){function e(t,n,r){if(this.formatMap=new Map([[FM.QR_CODE,`qr_code`],[FM.AZTEC,`aztec`],[FM.CODABAR,`codabar`],[FM.CODE_39,`code_39`],[FM.CODE_93,`code_93`],[FM.CODE_128,`code_128`],[FM.DATA_MATRIX,`data_matrix`],[FM.ITF,`itf`],[FM.EAN_13,`ean_13`],[FM.EAN_8,`ean_8`],[FM.PDF_417,`pdf417`],[FM.UPC_A,`upc_a`],[FM.UPC_E,`upc_e`]]),this.reverseFormatMap=this.createReverseFormatMap(),!e.isSupported())throw`Use html5qrcode.min.js without edit, Use BarcodeDetectorDelegate only if it isSupported();`;this.verbose=n,this.logger=r;var i=this.createBarcodeDetectorFormats(t);if(this.detector=new BarcodeDetector(i),!this.detector)throw`BarcodeDetector detector not supported`}return e.isSupported=function(){return`BarcodeDetector`in window?new BarcodeDetector({formats:[`qr_code`]})!==void 0:!1},e.prototype.decodeAsync=function(e){return eN(this,void 0,void 0,function(){var t,n;return tN(this,function(r){switch(r.label){case 0:return[4,this.detector.detect(e)];case 1:if(t=r.sent(),!t||t.length===0)throw`No barcode or QR code detected.`;return n=this.selectLargestBarcode(t),[2,{text:n.rawValue,format:VM.create(this.toHtml5QrcodeSupportedFormats(n.format)),debugData:this.createDebugData()}]}})})},e.prototype.selectLargestBarcode=function(e){for(var t=null,n=0,r=0,i=e;r<i.length;r++){var a=i[r],o=a.boundingBox.width*a.boundingBox.height;o>n&&(n=o,t=a)}if(!t)throw`No largest barcode found`;return t},e.prototype.createBarcodeDetectorFormats=function(e){for(var t=[],n=0,r=e;n<r.length;n++){var i=r[n];this.formatMap.has(i)?t.push(this.formatMap.get(i)):this.logger.warn(`${i} is not supported byBarcodeDetectorDelegate`)}return{formats:t}},e.prototype.toHtml5QrcodeSupportedFormats=function(e){if(!this.reverseFormatMap.has(e))throw`reverseFormatMap doesn't have ${e}`;return this.reverseFormatMap.get(e)},e.prototype.createReverseFormatMap=function(){var e=new Map;return this.formatMap.forEach(function(t,n,r){e.set(t,n)}),e},e.prototype.createDebugData=function(){return{decoderName:`BarcodeDetector`}},e}(),rN=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},iN=function(e,t){var n={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]},r,i,a,o;return o={next:s(0),throw:s(1),return:s(2)},typeof Symbol==`function`&&(o[Symbol.iterator]=function(){return this}),o;function s(e){return function(t){return c([e,t])}}function c(s){if(r)throw TypeError(`Generator is already executing.`);for(;o&&(o=0,s[0]&&(n=0)),n;)try{if(r=1,i&&(a=s[0]&2?i.return:s[0]?i.throw||((a=i.return)&&a.call(i),0):i.next)&&!(a=a.call(i,s[1])).done)return a;switch(i=0,a&&(s=[s[0]&2,a.value]),s[0]){case 0:case 1:a=s;break;case 4:return n.label++,{value:s[1],done:!1};case 5:n.label++,i=s[1],s=[0];continue;case 7:s=n.ops.pop(),n.trys.pop();continue;default:if((a=n.trys,!(a=a.length>0&&a[a.length-1]))&&(s[0]===6||s[0]===2)){n=0;continue}if(s[0]===3&&(!a||s[1]>a[0]&&s[1]<a[3])){n.label=s[1];break}if(s[0]===6&&n.label<a[1]){n.label=a[1],a=s;break}if(a&&n.label<a[2]){n.label=a[2],n.ops.push(s);break}a[2]&&n.ops.pop(),n.trys.pop();continue}s=t.call(e,n)}catch(e){s=[6,e],i=0}finally{r=a=0}if(s[0]&5)throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}},aN=function(){function e(e,t,n,r){this.EXECUTIONS_TO_REPORT_PERFORMANCE=100,this.executions=0,this.executionResults=[],this.wasPrimaryDecoderUsedInLastDecode=!1,this.verbose=n,t&&nN.isSupported()?(this.primaryDecoder=new nN(e,n,r),this.secondaryDecoder=new $M(e,n,r)):this.primaryDecoder=new $M(e,n,r)}return e.prototype.decodeAsync=function(e){return rN(this,void 0,void 0,function(){var t;return iN(this,function(n){switch(n.label){case 0:t=performance.now(),n.label=1;case 1:return n.trys.push([1,,3,4]),[4,this.getDecoder().decodeAsync(e)];case 2:return[2,n.sent()];case 3:return this.possiblyLogPerformance(t),[7];case 4:return[2]}})})},e.prototype.decodeRobustlyAsync=function(e){return rN(this,void 0,void 0,function(){var t,n;return iN(this,function(r){switch(r.label){case 0:t=performance.now(),r.label=1;case 1:return r.trys.push([1,3,4,5]),[4,this.primaryDecoder.decodeAsync(e)];case 2:return[2,r.sent()];case 3:if(n=r.sent(),this.secondaryDecoder)return[2,this.secondaryDecoder.decodeAsync(e)];throw n;case 4:return this.possiblyLogPerformance(t),[7];case 5:return[2]}})})},e.prototype.getDecoder=function(){return this.secondaryDecoder?this.wasPrimaryDecoderUsedInLastDecode===!1?(this.wasPrimaryDecoderUsedInLastDecode=!0,this.primaryDecoder):(this.wasPrimaryDecoderUsedInLastDecode=!1,this.secondaryDecoder):this.primaryDecoder},e.prototype.possiblyLogPerformance=function(e){if(this.verbose){var t=performance.now()-e;this.executionResults.push(t),this.executions++,this.possiblyFlushPerformanceReport()}},e.prototype.possiblyFlushPerformanceReport=function(){if(!(this.executions<this.EXECUTIONS_TO_REPORT_PERFORMANCE)){for(var e=0,t=0,n=this.executionResults;t<n.length;t++){var r=n[t];e+=r}var i=e/this.executionResults.length;console.log(`${i} ms for ${this.executionResults.length} last runs.`),this.executions=0,this.executionResults=[]}},e}(),oN=(function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){if(typeof n!=`function`&&n!==null)throw TypeError(`Class extends value `+String(n)+` is not a constructor or null`);e(t,n);function r(){this.constructor=t}t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}})(),sN=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},cN=function(e,t){var n={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]},r,i,a,o;return o={next:s(0),throw:s(1),return:s(2)},typeof Symbol==`function`&&(o[Symbol.iterator]=function(){return this}),o;function s(e){return function(t){return c([e,t])}}function c(s){if(r)throw TypeError(`Generator is already executing.`);for(;o&&(o=0,s[0]&&(n=0)),n;)try{if(r=1,i&&(a=s[0]&2?i.return:s[0]?i.throw||((a=i.return)&&a.call(i),0):i.next)&&!(a=a.call(i,s[1])).done)return a;switch(i=0,a&&(s=[s[0]&2,a.value]),s[0]){case 0:case 1:a=s;break;case 4:return n.label++,{value:s[1],done:!1};case 5:n.label++,i=s[1],s=[0];continue;case 7:s=n.ops.pop(),n.trys.pop();continue;default:if((a=n.trys,!(a=a.length>0&&a[a.length-1]))&&(s[0]===6||s[0]===2)){n=0;continue}if(s[0]===3&&(!a||s[1]>a[0]&&s[1]<a[3])){n.label=s[1];break}if(s[0]===6&&n.label<a[1]){n.label=a[1],a=s;break}if(a&&n.label<a[2]){n.label=a[2],n.ops.push(s);break}a[2]&&n.ops.pop(),n.trys.pop();continue}s=t.call(e,n)}catch(e){s=[6,e],i=0}finally{r=a=0}if(s[0]&5)throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}},lN=function(){function e(e,t){this.name=e,this.track=t}return e.prototype.isSupported=function(){return this.track.getCapabilities?this.name in this.track.getCapabilities():!1},e.prototype.apply=function(e){var t={};t[this.name]=e;var n={advanced:[t]};return this.track.applyConstraints(n)},e.prototype.value=function(){var e=this.track.getSettings();return this.name in e?e[this.name]:null},e}(),uN=function(e){oN(t,e);function t(t){return e.call(this,`zoom`,t)||this}return t}(function(e){oN(t,e);function t(t,n){return e.call(this,t,n)||this}return t.prototype.min=function(){return this.getCapabilities().min},t.prototype.max=function(){return this.getCapabilities().max},t.prototype.step=function(){return this.getCapabilities().step},t.prototype.apply=function(e){var t={};t[this.name]=e;var n={advanced:[t]};return this.track.applyConstraints(n)},t.prototype.getCapabilities=function(){this.failIfNotSupported();var e=this.track.getCapabilities()[this.name];return{min:e.min,max:e.max,step:e.step}},t.prototype.failIfNotSupported=function(){if(!this.isSupported())throw Error(`${this.name} capability not supported`)},t}(lN)),dN=function(e){oN(t,e);function t(t){return e.call(this,`torch`,t)||this}return t}(lN),fN=function(){function e(e){this.track=e}return e.prototype.zoomFeature=function(){return new uN(this.track)},e.prototype.torchFeature=function(){return new dN(this.track)},e}(),pN=function(){function e(e,t,n){this.isClosed=!1,this.parentElement=e,this.mediaStream=t,this.callbacks=n,this.surface=this.createVideoElement(this.parentElement.clientWidth),e.append(this.surface)}return e.prototype.createVideoElement=function(e){var t=document.createElement(`video`);return t.style.width=`${e}px`,t.style.display=`block`,t.muted=!0,t.setAttribute(`muted`,`true`),t.playsInline=!0,t},e.prototype.setupSurface=function(){var e=this;this.surface.onabort=function(){throw`RenderedCameraImpl video surface onabort() called`},this.surface.onerror=function(){throw`RenderedCameraImpl video surface onerror() called`};var t=function(){var n=e.surface.clientWidth,r=e.surface.clientHeight;e.callbacks.onRenderSurfaceReady(n,r),e.surface.removeEventListener(`playing`,t)};this.surface.addEventListener(`playing`,t),this.surface.srcObject=this.mediaStream,this.surface.play()},e.create=function(t,n,r,i){return sN(this,void 0,void 0,function(){var a,o;return cN(this,function(s){switch(s.label){case 0:return a=new e(t,n,i),r.aspectRatio?(o={aspectRatio:r.aspectRatio},[4,a.getFirstTrackOrFail().applyConstraints(o)]):[3,2];case 1:s.sent(),s.label=2;case 2:return a.setupSurface(),[2,a]}})})},e.prototype.failIfClosed=function(){if(this.isClosed)throw`The RenderedCamera has already been closed.`},e.prototype.getFirstTrackOrFail=function(){if(this.failIfClosed(),this.mediaStream.getVideoTracks().length===0)throw`No video tracks found`;return this.mediaStream.getVideoTracks()[0]},e.prototype.pause=function(){this.failIfClosed(),this.surface.pause()},e.prototype.resume=function(e){this.failIfClosed();var t=this,n=function(){setTimeout(e,200),t.surface.removeEventListener(`playing`,n)};this.surface.addEventListener(`playing`,n),this.surface.play()},e.prototype.isPaused=function(){return this.failIfClosed(),this.surface.paused},e.prototype.getSurface=function(){return this.failIfClosed(),this.surface},e.prototype.getRunningTrackCapabilities=function(){return this.getFirstTrackOrFail().getCapabilities()},e.prototype.getRunningTrackSettings=function(){return this.getFirstTrackOrFail().getSettings()},e.prototype.applyVideoConstraints=function(e){return sN(this,void 0,void 0,function(){return cN(this,function(t){if(`aspectRatio`in e)throw`Changing 'aspectRatio' in run-time is not yet supported.`;return[2,this.getFirstTrackOrFail().applyConstraints(e)]})})},e.prototype.close=function(){if(this.isClosed)return Promise.resolve();var e=this;return new Promise(function(t,n){var r=e.mediaStream.getVideoTracks().length,i=0;e.mediaStream.getVideoTracks().forEach(function(n){e.mediaStream.removeTrack(n),n.stop(),++i,i>=r&&(e.isClosed=!0,e.parentElement.removeChild(e.surface),t())})})},e.prototype.getCapabilities=function(){return new fN(this.getFirstTrackOrFail())},e}(),mN=function(){function e(e){this.mediaStream=e}return e.prototype.render=function(e,t,n){return sN(this,void 0,void 0,function(){return cN(this,function(r){return[2,pN.create(e,this.mediaStream,t,n)]})})},e.create=function(t){return sN(this,void 0,void 0,function(){var n,r;return cN(this,function(i){switch(i.label){case 0:if(!navigator.mediaDevices)throw`navigator.mediaDevices not supported`;return n={audio:!1,video:t},[4,navigator.mediaDevices.getUserMedia(n)];case 1:return r=i.sent(),[2,new e(r)]}})})},e}(),hN=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},gN=function(e,t){var n={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]},r,i,a,o;return o={next:s(0),throw:s(1),return:s(2)},typeof Symbol==`function`&&(o[Symbol.iterator]=function(){return this}),o;function s(e){return function(t){return c([e,t])}}function c(s){if(r)throw TypeError(`Generator is already executing.`);for(;o&&(o=0,s[0]&&(n=0)),n;)try{if(r=1,i&&(a=s[0]&2?i.return:s[0]?i.throw||((a=i.return)&&a.call(i),0):i.next)&&!(a=a.call(i,s[1])).done)return a;switch(i=0,a&&(s=[s[0]&2,a.value]),s[0]){case 0:case 1:a=s;break;case 4:return n.label++,{value:s[1],done:!1};case 5:n.label++,i=s[1],s=[0];continue;case 7:s=n.ops.pop(),n.trys.pop();continue;default:if((a=n.trys,!(a=a.length>0&&a[a.length-1]))&&(s[0]===6||s[0]===2)){n=0;continue}if(s[0]===3&&(!a||s[1]>a[0]&&s[1]<a[3])){n.label=s[1];break}if(s[0]===6&&n.label<a[1]){n.label=a[1],a=s;break}if(a&&n.label<a[2]){n.label=a[2],n.ops.push(s);break}a[2]&&n.ops.pop(),n.trys.pop();continue}s=t.call(e,n)}catch(e){s=[6,e],i=0}finally{r=a=0}if(s[0]&5)throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}},_N=function(){function e(){}return e.failIfNotSupported=function(){return hN(this,void 0,void 0,function(){return gN(this,function(t){if(!navigator.mediaDevices)throw`navigator.mediaDevices not supported`;return[2,new e]})})},e.prototype.create=function(e){return hN(this,void 0,void 0,function(){return gN(this,function(t){return[2,mN.create(e)]})})},e}(),vN=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},yN=function(e,t){var n={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]},r,i,a,o;return o={next:s(0),throw:s(1),return:s(2)},typeof Symbol==`function`&&(o[Symbol.iterator]=function(){return this}),o;function s(e){return function(t){return c([e,t])}}function c(s){if(r)throw TypeError(`Generator is already executing.`);for(;o&&(o=0,s[0]&&(n=0)),n;)try{if(r=1,i&&(a=s[0]&2?i.return:s[0]?i.throw||((a=i.return)&&a.call(i),0):i.next)&&!(a=a.call(i,s[1])).done)return a;switch(i=0,a&&(s=[s[0]&2,a.value]),s[0]){case 0:case 1:a=s;break;case 4:return n.label++,{value:s[1],done:!1};case 5:n.label++,i=s[1],s=[0];continue;case 7:s=n.ops.pop(),n.trys.pop();continue;default:if((a=n.trys,!(a=a.length>0&&a[a.length-1]))&&(s[0]===6||s[0]===2)){n=0;continue}if(s[0]===3&&(!a||s[1]>a[0]&&s[1]<a[3])){n.label=s[1];break}if(s[0]===6&&n.label<a[1]){n.label=a[1],a=s;break}if(a&&n.label<a[2]){n.label=a[2],n.ops.push(s);break}a[2]&&n.ops.pop(),n.trys.pop();continue}s=t.call(e,n)}catch(e){s=[6,e],i=0}finally{r=a=0}if(s[0]&5)throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}},bN=function(){function e(){}return e.retrieve=function(){return navigator.mediaDevices?e.getCamerasFromMediaDevices():MediaStreamTrack&&MediaStreamTrack.getSources?e.getCamerasFromMediaStreamTrack():e.rejectWithError()},e.rejectWithError=function(){var t=JM.unableToQuerySupportedDevices();return e.isHttpsOrLocalhost()||(t=JM.insecureContextCameraQueryError()),Promise.reject(t)},e.isHttpsOrLocalhost=function(){if(location.protocol===`https:`)return!0;var e=location.host.split(`:`)[0];return e===`127.0.0.1`||e===`localhost`},e.getCamerasFromMediaDevices=function(){return vN(this,void 0,void 0,function(){var e,t,n,r,i,a,o;return yN(this,function(s){switch(s.label){case 0:return e=function(e){for(var t=e.getVideoTracks(),n=0,r=t;n<r.length;n++){var i=r[n];i.enabled=!1,i.stop(),e.removeTrack(i)}},[4,navigator.mediaDevices.getUserMedia({audio:!1,video:!0})];case 1:return t=s.sent(),[4,navigator.mediaDevices.enumerateDevices()];case 2:for(n=s.sent(),r=[],i=0,a=n;i<a.length;i++)o=a[i],o.kind===`videoinput`&&r.push({id:o.deviceId,label:o.label});return e(t),[2,r]}})})},e.getCamerasFromMediaStreamTrack=function(){return new Promise(function(e,t){MediaStreamTrack.getSources(function(t){for(var n=[],r=0,i=t;r<i.length;r++){var a=i[r];a.kind===`video`&&n.push({id:a.id,label:a.label})}e(n)})})},e}(),xN;(function(e){e[e.UNKNOWN=0]=`UNKNOWN`,e[e.NOT_STARTED=1]=`NOT_STARTED`,e[e.SCANNING=2]=`SCANNING`,e[e.PAUSED=3]=`PAUSED`})(xN||={});var SN=function(){function e(){this.state=xN.NOT_STARTED,this.onGoingTransactionNewState=xN.UNKNOWN}return e.prototype.directTransition=function(e){this.failIfTransitionOngoing(),this.validateTransition(e),this.state=e},e.prototype.startTransition=function(e){return this.failIfTransitionOngoing(),this.validateTransition(e),this.onGoingTransactionNewState=e,this},e.prototype.execute=function(){if(this.onGoingTransactionNewState===xN.UNKNOWN)throw`Transaction is already cancelled, cannot execute().`;var e=this.onGoingTransactionNewState;this.onGoingTransactionNewState=xN.UNKNOWN,this.directTransition(e)},e.prototype.cancel=function(){if(this.onGoingTransactionNewState===xN.UNKNOWN)throw`Transaction is already cancelled, cannot cancel().`;this.onGoingTransactionNewState=xN.UNKNOWN},e.prototype.getState=function(){return this.state},e.prototype.failIfTransitionOngoing=function(){if(this.onGoingTransactionNewState!==xN.UNKNOWN)throw`Cannot transition to a new state, already under transition`},e.prototype.validateTransition=function(e){switch(this.state){case xN.UNKNOWN:throw`Transition from unknown is not allowed`;case xN.NOT_STARTED:this.failIfNewStateIs(e,[xN.PAUSED]);break;case xN.SCANNING:break;case xN.PAUSED:break}},e.prototype.failIfNewStateIs=function(e,t){for(var n=0,r=t;n<r.length;n++)if(e===r[n])throw`Cannot transition from ${this.state} to ${e}`},e}(),CN=function(){function e(e){this.stateManager=e}return e.prototype.startTransition=function(e){return this.stateManager.startTransition(e)},e.prototype.directTransition=function(e){this.stateManager.directTransition(e)},e.prototype.getState=function(){return this.stateManager.getState()},e.prototype.canScanFile=function(){return this.stateManager.getState()===xN.NOT_STARTED},e.prototype.isScanning=function(){return this.stateManager.getState()!==xN.NOT_STARTED},e.prototype.isStrictlyScanning=function(){return this.stateManager.getState()===xN.SCANNING},e.prototype.isPaused=function(){return this.stateManager.getState()===xN.PAUSED},e}(),wN=function(){function e(){}return e.create=function(){return new CN(new SN)},e}(),TN=(function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){if(typeof n!=`function`&&n!==null)throw TypeError(`Class extends value `+String(n)+` is not a constructor or null`);e(t,n);function r(){this.constructor=t}t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}})(),EN=function(e){TN(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.DEFAULT_WIDTH=300,t.DEFAULT_WIDTH_OFFSET=2,t.FILE_SCAN_MIN_HEIGHT=300,t.FILE_SCAN_HIDDEN_CANVAS_PADDING=100,t.MIN_QR_BOX_SIZE=50,t.SHADED_LEFT=1,t.SHADED_RIGHT=2,t.SHADED_TOP=3,t.SHADED_BOTTOM=4,t.SHADED_REGION_ELEMENT_ID=`qr-shaded-region`,t.VERBOSE=!1,t.BORDER_SHADER_DEFAULT_COLOR=`#ffffff`,t.BORDER_SHADER_MATCH_COLOR=`rgb(90, 193, 56)`,t}(BM),DN=function(){function e(e,t){this.logger=t,this.fps=EN.SCAN_DEFAULT_FPS,e?(e.fps&&(this.fps=e.fps),this.disableFlip=e.disableFlip===!0,this.qrbox=e.qrbox,this.aspectRatio=e.aspectRatio,this.videoConstraints=e.videoConstraints):this.disableFlip=EN.DEFAULT_DISABLE_FLIP}return e.prototype.isMediaStreamConstraintsValid=function(){return this.videoConstraints?ZM.isMediaStreamConstraintsValid(this.videoConstraints,this.logger):(this.logger.logError(`Empty videoConstraints`,!0),!1)},e.prototype.isShadedBoxEnabled=function(){return!KM(this.qrbox)},e.create=function(t,n){return new e(t,n)},e}(),ON=function(){function e(e,t){if(this.element=null,this.canvasElement=null,this.scannerPausedUiElement=null,this.hasBorderShaders=null,this.borderShaders=null,this.qrMatch=null,this.renderedCamera=null,this.qrRegion=null,this.context=null,this.lastScanImageFile=null,this.isScanning=!1,!document.getElementById(e))throw`HTML Element with id=${e} not found`;this.elementId=e,this.verbose=!1;var n;typeof t==`boolean`?this.verbose=t===!0:t&&(n=t,this.verbose=n.verbose===!0,n.experimentalFeatures),this.logger=new GM(this.verbose),this.qrcode=new aN(this.getSupportedFormats(t),this.getUseBarCodeDetectorIfSupported(n),this.verbose,this.logger),this.foreverScanTimeout,this.shouldScan=!0,this.stateManagerProxy=wN.create()}return e.prototype.start=function(e,t,n,r){var i=this;if(!e)throw`cameraIdOrConfig is required`;if(!n||typeof n!=`function`)throw`qrCodeSuccessCallback is required and should be a function.`;var a=r||(this.verbose?this.logger.log:function(){}),o=DN.create(t,this.logger);this.clearElement();var s=!1;o.videoConstraints&&(o.isMediaStreamConstraintsValid()?s=!0:this.logger.logError(`'videoConstraints' is not valid 'MediaStreamConstraints, it will be ignored.'`,!0));var c=s,l=document.getElementById(this.elementId);l.clientWidth?l.clientWidth:EN.DEFAULT_WIDTH,l.style.position=`relative`,this.shouldScan=!0,this.element=l;var u=this,d=this.stateManagerProxy.startTransition(xN.SCANNING);return new Promise(function(t,r){var s=c?o.videoConstraints:u.createVideoConstraints(e);if(!s){d.cancel(),r(`videoConstraints should be defined`);return}var l={};(!c||o.aspectRatio)&&(l.aspectRatio=o.aspectRatio);var f={onRenderSurfaceReady:function(e,t){u.setupUi(e,t,o),u.isScanning=!0,u.foreverScan(o,n,a)}};_N.failIfNotSupported().then(function(e){e.create(s).then(function(e){return e.render(i.element,l,f).then(function(e){u.renderedCamera=e,d.execute(),t(null)}).catch(function(e){d.cancel(),r(e)})}).catch(function(e){d.cancel(),r(JM.errorGettingUserMedia(e))})}).catch(function(e){d.cancel(),r(JM.cameraStreamingNotSupported())})})},e.prototype.pause=function(e){if(!this.stateManagerProxy.isStrictlyScanning())throw`Cannot pause, scanner is not scanning.`;this.stateManagerProxy.directTransition(xN.PAUSED),this.showPausedState(),(KM(e)||e!==!0)&&(e=!1),e&&this.renderedCamera&&this.renderedCamera.pause()},e.prototype.resume=function(){if(!this.stateManagerProxy.isPaused())throw`Cannot result, scanner is not paused.`;if(!this.renderedCamera)throw`renderedCamera doesn't exist while trying resume()`;var e=this,t=function(){e.stateManagerProxy.directTransition(xN.SCANNING),e.hidePausedState()};if(!this.renderedCamera.isPaused()){t();return}this.renderedCamera.resume(function(){t()})},e.prototype.getState=function(){return this.stateManagerProxy.getState()},e.prototype.stop=function(){var e=this;if(!this.stateManagerProxy.isScanning())throw`Cannot stop, scanner is not running or paused.`;var t=this.stateManagerProxy.startTransition(xN.NOT_STARTED);this.shouldScan=!1,this.foreverScanTimeout&&clearTimeout(this.foreverScanTimeout);var n=function(){if(e.element){var t=document.getElementById(EN.SHADED_REGION_ELEMENT_ID);t&&e.element.removeChild(t)}},r=this;return this.renderedCamera.close().then(function(){return r.renderedCamera=null,r.element&&(r.element.removeChild(r.canvasElement),r.canvasElement=null),n(),r.qrRegion&&=null,r.context&&=null,t.execute(),r.hidePausedState(),r.isScanning=!1,Promise.resolve()})},e.prototype.scanFile=function(e,t){return this.scanFileV2(e,t).then(function(e){return e.decodedText})},e.prototype.scanFileV2=function(e,t){var n=this;if(!e||!(e instanceof File))throw`imageFile argument is mandatory and should be instance of File. Use 'event.target.files[0]'.`;if(KM(t)&&(t=!0),!this.stateManagerProxy.canScanFile())throw`Cannot start file scan - ongoing camera scan`;return new Promise(function(r,i){n.possiblyCloseLastScanImageFile(),n.clearElement(),n.lastScanImageFile=URL.createObjectURL(e);var a=new Image;a.onload=function(){var e=a.width,o=a.height,s=document.getElementById(n.elementId),c=s.clientWidth?s.clientWidth:EN.DEFAULT_WIDTH,l=Math.max(s.clientHeight?s.clientHeight:o,EN.FILE_SCAN_MIN_HEIGHT),u=n.computeCanvasDrawConfig(e,o,c,l);if(t){var d=n.createCanvasElement(c,l,`qr-canvas-visible`);d.style.display=`inline-block`,s.appendChild(d);var f=d.getContext(`2d`);if(!f)throw`Unable to get 2d context from canvas`;f.canvas.width=c,f.canvas.height=l,f.drawImage(a,0,0,e,o,u.x,u.y,u.width,u.height)}var p=EN.FILE_SCAN_HIDDEN_CANVAS_PADDING,m=Math.max(a.width,u.width),h=Math.max(a.height,u.height),g=m+2*p,_=h+2*p,v=n.createCanvasElement(g,_);s.appendChild(v);var y=v.getContext(`2d`);if(!y)throw`Unable to get 2d context from canvas`;y.canvas.width=g,y.canvas.height=_,y.drawImage(a,0,0,e,o,p,p,m,h);try{n.qrcode.decodeRobustlyAsync(v).then(function(e){r(HM.createFromQrcodeResult(e))}).catch(i)}catch(e){i(`QR code parse error, error = ${e}`)}},a.onerror=i,a.onabort=i,a.onstalled=i,a.onsuspend=i,a.src=URL.createObjectURL(e)})},e.prototype.clear=function(){this.clearElement()},e.getCameras=function(){return bN.retrieve()},e.prototype.getRunningTrackCapabilities=function(){return this.getRenderedCameraOrFail().getRunningTrackCapabilities()},e.prototype.getRunningTrackSettings=function(){return this.getRenderedCameraOrFail().getRunningTrackSettings()},e.prototype.getRunningTrackCameraCapabilities=function(){return this.getRenderedCameraOrFail().getCapabilities()},e.prototype.applyVideoConstraints=function(e){if(!e)throw`videoConstaints is required argument.`;if(!ZM.isMediaStreamConstraintsValid(e,this.logger))throw`invalid videoConstaints passed, check logs for more details`;return this.getRenderedCameraOrFail().applyVideoConstraints(e)},e.prototype.getRenderedCameraOrFail=function(){if(this.renderedCamera==null)throw`Scanning is not in running state, call this API only when QR code scanning using camera is in running state.`;return this.renderedCamera},e.prototype.getSupportedFormats=function(e){var t=[FM.QR_CODE,FM.AZTEC,FM.CODABAR,FM.CODE_39,FM.CODE_93,FM.CODE_128,FM.DATA_MATRIX,FM.MAXICODE,FM.ITF,FM.EAN_13,FM.EAN_8,FM.PDF_417,FM.RSS_14,FM.RSS_EXPANDED,FM.UPC_A,FM.UPC_E,FM.UPC_EAN_EXTENSION];if(!e||typeof e==`boolean`||!e.formatsToSupport)return t;if(!Array.isArray(e.formatsToSupport))throw`configOrVerbosityFlag.formatsToSupport should be undefined or an array.`;if(e.formatsToSupport.length===0)throw`Atleast 1 formatsToSupport is needed.`;for(var n=[],r=0,i=e.formatsToSupport;r<i.length;r++){var a=i[r];RM(a)?n.push(a):this.logger.warn(`Invalid format: ${a} passed in config, ignoring.`)}if(n.length===0)throw`None of formatsToSupport match supported values.`;return n},e.prototype.getUseBarCodeDetectorIfSupported=function(e){if(KM(e))return!0;if(!KM(e.useBarCodeDetectorIfSupported))return e.useBarCodeDetectorIfSupported!==!1;if(KM(e.experimentalFeatures))return!0;var t=e.experimentalFeatures;return KM(t.useBarCodeDetectorIfSupported)?!0:t.useBarCodeDetectorIfSupported!==!1},e.prototype.validateQrboxSize=function(e,t,n){var r=this,i=n.qrbox;this.validateQrboxConfig(i);var a=this.toQrdimensions(e,t,i),o=function(e){if(e<EN.MIN_QR_BOX_SIZE)throw`minimum size of 'config.qrbox' dimension value is ${EN.MIN_QR_BOX_SIZE}px.`};o(a.width),o(a.height),a.width=function(t){return t>e&&(r.logger.warn("`qrbox.width` or `qrbox` is larger than the width of the root element. The width will be truncated to the width of root element."),t=e),t}(a.width)},e.prototype.validateQrboxConfig=function(e){if(typeof e!=`number`&&typeof e!=`function`&&(e.width===void 0||e.height===void 0))throw`Invalid instance of QrDimensions passed for 'config.qrbox'. Both 'width' and 'height' should be set.`},e.prototype.toQrdimensions=function(e,t,n){if(typeof n==`number`)return{width:n,height:n};if(typeof n==`function`)try{return n(e,t)}catch(e){throw Error(`qrbox config was passed as a function but it failed with unknown error`+e)}return n},e.prototype.setupUi=function(e,t,n){n.isShadedBoxEnabled()&&this.validateQrboxSize(e,t,n);var r=KM(n.qrbox)?{width:e,height:t}:n.qrbox;this.validateQrboxConfig(r);var i=this.toQrdimensions(e,t,r);i.height>t&&this.logger.warn(`[Html5Qrcode] config.qrbox has height that isgreater than the height of the video stream. Shading will be ignored`);var a=n.isShadedBoxEnabled()&&i.height<=t,o=a?this.getShadedRegionBounds(e,t,i):{x:0,y:0,width:e,height:t},s=this.createCanvasElement(o.width,o.height),c=s.getContext(`2d`,{willReadFrequently:!0});c.canvas.width=o.width,c.canvas.height=o.height,this.element.append(s),a&&this.possiblyInsertShadingElement(this.element,e,t,i),this.createScannerPausedUiElement(this.element),this.qrRegion=o,this.context=c,this.canvasElement=s},e.prototype.createScannerPausedUiElement=function(e){var t=document.createElement(`div`);t.innerText=JM.scannerPaused(),t.style.display=`none`,t.style.position=`absolute`,t.style.top=`0px`,t.style.zIndex=`1`,t.style.background=`rgba(9, 9, 9, 0.46)`,t.style.color=`#FFECEC`,t.style.textAlign=`center`,t.style.width=`100%`,e.appendChild(t),this.scannerPausedUiElement=t},e.prototype.scanContext=function(e,t){var n=this;return this.stateManagerProxy.isPaused()?Promise.resolve(!1):this.qrcode.decodeAsync(this.canvasElement).then(function(t){return e(t.text,HM.createFromQrcodeResult(t)),n.possiblyUpdateShaders(!0),!0}).catch(function(e){n.possiblyUpdateShaders(!1);var r=JM.codeParseError(e);return t(r,WM.createFrom(r)),!1})},e.prototype.foreverScan=function(e,t,n){var r=this;if(this.shouldScan&&this.renderedCamera){var i=this.renderedCamera.getSurface(),a=i.videoWidth/i.clientWidth,o=i.videoHeight/i.clientHeight;if(!this.qrRegion)throw`qrRegion undefined when localMediaStream is ready.`;var s=this.qrRegion.width*a,c=this.qrRegion.height*o,l=this.qrRegion.x*a,u=this.qrRegion.y*o;this.context.drawImage(i,l,u,s,c,0,0,this.qrRegion.width,this.qrRegion.height);var d=function(){r.foreverScanTimeout=setTimeout(function(){r.foreverScan(e,t,n)},r.getTimeoutFps(e.fps))};this.scanContext(t,n).then(function(i){!i&&e.disableFlip!==!0?(r.context.translate(r.context.canvas.width,0),r.context.scale(-1,1),r.scanContext(t,n).finally(function(){d()})):d()}).catch(function(e){r.logger.logError(`Error happend while scanning context`,e),d()})}},e.prototype.createVideoConstraints=function(e){if(typeof e==`string`)return{deviceId:{exact:e}};if(typeof e==`object`){var t=`facingMode`,n=`deviceId`,r={user:!0,environment:!0},i=`exact`,a=function(e){if(e in r)return!0;throw`config has invalid 'facingMode' value = '${e}'`},o=Object.keys(e);if(o.length!==1)throw`'cameraIdOrConfig' object should have exactly 1 key, if passed as an object, found ${o.length} keys`;var s=Object.keys(e)[0];if(s!==t&&s!==n)throw`Only '${t}' and '${n}' are supported for 'cameraIdOrConfig'`;if(s===t){var c=e.facingMode;if(typeof c==`string`){if(a(c))return{facingMode:c}}else if(typeof c==`object`)if(i in c){if(a(c[`${i}`]))return{facingMode:{exact:c[`${i}`]}}}else throw`'facingMode' should be string or object with ${i} as key.`;else throw`Invalid type of 'facingMode' = ${typeof c}`}else{var l=e.deviceId;if(typeof l==`string`)return{deviceId:l};if(typeof l==`object`){if(i in l)return{deviceId:{exact:l[`${i}`]}};throw`'deviceId' should be string or object with ${i} as key.`}else throw`Invalid type of 'deviceId' = ${typeof l}`}}throw`Invalid type of 'cameraIdOrConfig' = ${typeof e}`},e.prototype.computeCanvasDrawConfig=function(e,t,n,r){if(e<=n&&t<=r)return{x:(n-e)/2,y:(r-t)/2,width:e,height:t};var i=e,a=t;return e>n&&(t=n/e*t,e=n),t>r&&(e=r/t*e,t=r),this.logger.log(`Image downsampled from ${i}X${a} to ${e}X${t}.`),this.computeCanvasDrawConfig(e,t,n,r)},e.prototype.clearElement=function(){if(this.stateManagerProxy.isScanning())throw`Cannot clear while scan is ongoing, close it first.`;var e=document.getElementById(this.elementId);e&&(e.innerHTML=``)},e.prototype.possiblyUpdateShaders=function(e){this.qrMatch!==e&&(this.hasBorderShaders&&this.borderShaders&&this.borderShaders.length&&this.borderShaders.forEach(function(t){t.style.backgroundColor=e?EN.BORDER_SHADER_MATCH_COLOR:EN.BORDER_SHADER_DEFAULT_COLOR}),this.qrMatch=e)},e.prototype.possiblyCloseLastScanImageFile=function(){this.lastScanImageFile&&=(URL.revokeObjectURL(this.lastScanImageFile),null)},e.prototype.createCanvasElement=function(e,t,n){var r=e,i=t,a=document.createElement(`canvas`);return a.style.width=`${r}px`,a.style.height=`${i}px`,a.style.display=`none`,a.id=KM(n)?`qr-canvas`:n,a},e.prototype.getShadedRegionBounds=function(e,t,n){if(n.width>e||n.height>t)throw`'config.qrbox' dimensions should not be greater than the dimensions of the root HTML element.`;return{x:(e-n.width)/2,y:(t-n.height)/2,width:n.width,height:n.height}},e.prototype.possiblyInsertShadingElement=function(e,t,n,r){if(!(t-r.width<1||n-r.height<1)){var i=document.createElement(`div`);i.style.position=`absolute`;var a=(t-r.width)/2,o=(n-r.height)/2;if(i.style.borderLeft=`${a}px solid rgba(0, 0, 0, 0.48)`,i.style.borderRight=`${a}px solid rgba(0, 0, 0, 0.48)`,i.style.borderTop=`${o}px solid rgba(0, 0, 0, 0.48)`,i.style.borderBottom=`${o}px solid rgba(0, 0, 0, 0.48)`,i.style.boxSizing=`border-box`,i.style.top=`0px`,i.style.bottom=`0px`,i.style.left=`0px`,i.style.right=`0px`,i.id=`${EN.SHADED_REGION_ELEMENT_ID}`,t-r.width<11||n-r.height<11)this.hasBorderShaders=!1;else{var s=5,c=40;this.insertShaderBorders(i,c,s,-s,null,0,!0),this.insertShaderBorders(i,c,s,-s,null,0,!1),this.insertShaderBorders(i,c,s,null,-s,0,!0),this.insertShaderBorders(i,c,s,null,-s,0,!1),this.insertShaderBorders(i,s,c+s,-s,null,-s,!0),this.insertShaderBorders(i,s,c+s,null,-s,-s,!0),this.insertShaderBorders(i,s,c+s,-s,null,-s,!1),this.insertShaderBorders(i,s,c+s,null,-s,-s,!1),this.hasBorderShaders=!0}e.append(i)}},e.prototype.insertShaderBorders=function(e,t,n,r,i,a,o){var s=document.createElement(`div`);s.style.position=`absolute`,s.style.backgroundColor=EN.BORDER_SHADER_DEFAULT_COLOR,s.style.width=`${t}px`,s.style.height=`${n}px`,r!==null&&(s.style.top=`${r}px`),i!==null&&(s.style.bottom=`${i}px`),o?s.style.left=`${a}px`:s.style.right=`${a}px`,this.borderShaders||=[],this.borderShaders.push(s),e.appendChild(s)},e.prototype.showPausedState=function(){if(!this.scannerPausedUiElement)throw`[internal error] scanner paused UI element not found`;this.scannerPausedUiElement.style.display=`block`},e.prototype.hidePausedState=function(){if(!this.scannerPausedUiElement)throw`[internal error] scanner paused UI element not found`;this.scannerPausedUiElement.style.display=`none`},e.prototype.getTimeoutFps=function(e){return 1e3/e},e}(),kN=`data:image/svg+xml;base64,`,AN=kN+`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAzNzEuNjQzIDM3MS42NDMiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDM3MS42NDMgMzcxLjY0MyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PHBhdGggZD0iTTEwNS4wODQgMzguMjcxaDE2My43Njh2MjBIMTA1LjA4NHoiLz48cGF0aCBkPSJNMzExLjU5NiAxOTAuMTg5Yy03LjQ0MS05LjM0Ny0xOC40MDMtMTYuMjA2LTMyLjc0My0yMC41MjJWMzBjMC0xNi41NDItMTMuNDU4LTMwLTMwLTMwSDEyNS4wODRjLTE2LjU0MiAwLTMwIDEzLjQ1OC0zMCAzMHYxMjAuMTQzaC04LjI5NmMtMTYuNTQyIDAtMzAgMTMuNDU4LTMwIDMwdjEuMzMzYTI5LjgwNCAyOS44MDQgMCAwIDAgNC42MDMgMTUuOTM5Yy03LjM0IDUuNDc0LTEyLjEwMyAxNC4yMjEtMTIuMTAzIDI0LjA2MXYxLjMzM2MwIDkuODQgNC43NjMgMTguNTg3IDEyLjEwMyAyNC4wNjJhMjkuODEgMjkuODEgMCAwIDAtNC42MDMgMTUuOTM4djEuMzMzYzAgMTYuNTQyIDEzLjQ1OCAzMCAzMCAzMGg4LjMyNGMuNDI3IDExLjYzMSA3LjUwMyAyMS41ODcgMTcuNTM0IDI2LjE3Ny45MzEgMTAuNTAzIDQuMDg0IDMwLjE4NyAxNC43NjggNDUuNTM3YTkuOTg4IDkuOTg4IDAgMCAwIDguMjE2IDQuMjg4IDkuOTU4IDkuOTU4IDAgMCAwIDUuNzA0LTEuNzkzYzQuNTMzLTMuMTU1IDUuNjUtOS4zODggMi40OTUtMTMuOTIxLTYuNzk4LTkuNzY3LTkuNjAyLTIyLjYwOC0xMC43Ni0zMS40aDgyLjY4NWMuMjcyLjQxNC41NDUuODE4LjgxNSAxLjIxIDMuMTQyIDQuNTQxIDkuMzcyIDUuNjc5IDEzLjkxMyAyLjUzNCA0LjU0Mi0zLjE0MiA1LjY3Ny05LjM3MSAyLjUzNS0xMy45MTMtMTEuOTE5LTE3LjIyOS04Ljc4Ny0zNS44ODQgOS41ODEtNTcuMDEyIDMuMDY3LTIuNjUyIDEyLjMwNy0xMS43MzIgMTEuMjE3LTI0LjAzMy0uODI4LTkuMzQzLTcuMTA5LTE3LjE5NC0xOC42NjktMjMuMzM3YTkuODU3IDkuODU3IDAgMCAwLTEuMDYxLS40ODZjLS40NjYtLjE4Mi0xMS40MDMtNC41NzktOS43NDEtMTUuNzA2IDEuMDA3LTYuNzM3IDE0Ljc2OC04LjI3MyAyMy43NjYtNy42NjYgMjMuMTU2IDEuNTY5IDM5LjY5OCA3LjgwMyA0Ny44MzYgMTguMDI2IDUuNzUyIDcuMjI1IDcuNjA3IDE2LjYyMyA1LjY3MyAyOC43MzMtLjQxMyAyLjU4NS0uODI0IDUuMjQxLTEuMjQ1IDcuOTU5LTUuNzU2IDM3LjE5NC0xMi45MTkgODMuNDgzLTQ5Ljg3IDExNC42NjEtNC4yMjEgMy41NjEtNC43NTYgOS44Ny0xLjE5NCAxNC4wOTJhOS45OCA5Ljk4IDAgMCAwIDcuNjQ4IDMuNTUxIDkuOTU1IDkuOTU1IDAgMCAwIDYuNDQ0LTIuMzU4YzQyLjY3Mi0zNi4wMDUgNTAuODAyLTg4LjUzMyA1Ni43MzctMTI2Ljg4OC40MTUtMi42ODQuODIxLTUuMzA5IDEuMjI5LTcuODYzIDIuODM0LTE3LjcyMS0uNDU1LTMyLjY0MS05Ljc3Mi00NC4zNDV6bS0yMzIuMzA4IDQyLjYyYy01LjUxNCAwLTEwLTQuNDg2LTEwLTEwdi0xLjMzM2MwLTUuNTE0IDQuNDg2LTEwIDEwLTEwaDE1djIxLjMzM2gtMTV6bS0yLjUtNTIuNjY2YzAtNS41MTQgNC40ODYtMTAgMTAtMTBoNy41djIxLjMzM2gtNy41Yy01LjUxNCAwLTEwLTQuNDg2LTEwLTEwdi0xLjMzM3ptMTcuNSA5My45OTloLTcuNWMtNS41MTQgMC0xMC00LjQ4Ni0xMC0xMHYtMS4zMzNjMC01LjUxNCA0LjQ4Ni0xMCAxMC0xMGg3LjV2MjEuMzMzem0zMC43OTYgMjguODg3Yy01LjUxNCAwLTEwLTQuNDg2LTEwLTEwdi04LjI3MWg5MS40NTdjLS44NTEgNi42NjgtLjQzNyAxMi43ODcuNzMxIDE4LjI3MWgtODIuMTg4em03OS40ODItMTEzLjY5OGMtMy4xMjQgMjAuOTA2IDEyLjQyNyAzMy4xODQgMjEuNjI1IDM3LjA0IDUuNDQxIDIuOTY4IDcuNTUxIDUuNjQ3IDcuNzAxIDcuMTg4LjIxIDIuMTUtMi41NTMgNS42ODQtNC40NzcgNy4yNTEtLjQ4Mi4zNzgtLjkyOS44LTEuMzM1IDEuMjYxLTYuOTg3IDcuOTM2LTExLjk4MiAxNS41Mi0xNS40MzIgMjIuNjg4aC05Ny41NjRWMzBjMC01LjUxNCA0LjQ4Ni0xMCAxMC0xMGgxMjMuNzY5YzUuNTE0IDAgMTAgNC40ODYgMTAgMTB2MTM1LjU3OWMtMy4wMzItLjM4MS02LjE1LS42OTQtOS4zODktLjkxNC0yNS4xNTktMS42OTQtNDIuMzcgNy43NDgtNDQuODk4IDI0LjY2NnoiLz48cGF0aCBkPSJNMTc5LjEyOSA4My4xNjdoLTI0LjA2YTUgNSAwIDAgMC01IDV2MjQuMDYxYTUgNSAwIDAgMCA1IDVoMjQuMDZhNSA1IDAgMCAwIDUtNVY4OC4xNjdhNSA1IDAgMCAwLTUtNXpNMTcyLjYyOSAxNDIuODZoLTEyLjU2VjEzMC44YTUgNSAwIDEgMC0xMCAwdjE3LjA2MWE1IDUgMCAwIDAgNSA1aDE3LjU2YTUgNSAwIDEgMCAwLTEwLjAwMXpNMjE2LjU2OCA4My4xNjdoLTI0LjA2YTUgNSAwIDAgMC01IDV2MjQuMDYxYTUgNSAwIDAgMCA1IDVoMjQuMDZhNSA1IDAgMCAwIDUtNVY4OC4xNjdhNSA1IDAgMCAwLTUtNXptLTUgMjQuMDYxaC0xNC4wNlY5My4xNjdoMTQuMDZ2MTQuMDYxek0yMTEuNjY5IDEyNS45MzZIMTk3LjQxYTUgNSAwIDAgMC01IDV2MTQuMjU3YTUgNSAwIDAgMCA1IDVoMTQuMjU5YTUgNSAwIDAgMCA1LTV2LTE0LjI1N2E1IDUgMCAwIDAtNS01eiIvPjwvc3ZnPg==`,jN=kN+`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1OS4wMTggNTkuMDE4IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCA1OS4wMTggNTkuMDE4IiB4bWw6c3BhY2U9InByZXNlcnZlIj48cGF0aCBkPSJtNTguNzQxIDU0LjgwOS01Ljk2OS02LjI0NGExMC43NCAxMC43NCAwIDAgMCAyLjgyLTcuMjVjMC01Ljk1My00Ljg0My0xMC43OTYtMTAuNzk2LTEwLjc5NlMzNCAzNS4zNjEgMzQgNDEuMzE0IDM4Ljg0MyA1Mi4xMSA0NC43OTYgNTIuMTFjMi40NDEgMCA0LjY4OC0uODI0IDYuNDk5LTIuMTk2bDYuMDAxIDYuMjc3YS45OTguOTk4IDAgMCAwIDEuNDE0LjAzMiAxIDEgMCAwIDAgLjAzMS0xLjQxNHpNMzYgNDEuMzE0YzAtNC44NSAzLjk0Ni04Ljc5NiA4Ljc5Ni04Ljc5NnM4Ljc5NiAzLjk0NiA4Ljc5NiA4Ljc5Ni0zLjk0NiA4Ljc5Ni04Ljc5NiA4Ljc5NlMzNiA0Ni4xNjQgMzYgNDEuMzE0ek0xMC40MzEgMTYuMDg4YzAgMy4wNyAyLjQ5OCA1LjU2OCA1LjU2OSA1LjU2OHM1LjU2OS0yLjQ5OCA1LjU2OS01LjU2OGMwLTMuMDcxLTIuNDk4LTUuNTY5LTUuNTY5LTUuNTY5cy01LjU2OSAyLjQ5OC01LjU2OSA1LjU2OXptOS4xMzggMGMwIDEuOTY4LTEuNjAyIDMuNTY4LTMuNTY5IDMuNTY4cy0zLjU2OS0xLjYwMS0zLjU2OS0zLjU2OCAxLjYwMi0zLjU2OSAzLjU2OS0zLjU2OSAzLjU2OSAxLjYwMSAzLjU2OSAzLjU2OXoiLz48cGF0aCBkPSJtMzAuODgyIDI4Ljk4NyA5LjE4LTEwLjA1NCAxMS4yNjIgMTAuMzIzYTEgMSAwIDAgMCAxLjM1MS0xLjQ3NWwtMTItMTFhMSAxIDAgMCAwLTEuNDE0LjA2M2wtOS43OTQgMTAuNzI3LTQuNzQzLTQuNzQzYTEuMDAzIDEuMDAzIDAgMCAwLTEuMzY4LS4wNDRMNi4zMzkgMzcuNzY4YTEgMSAwIDEgMCAxLjMyMiAxLjUwMWwxNi4zMTMtMTQuMzYyIDcuMzE5IDcuMzE4YS45OTkuOTk5IDAgMSAwIDEuNDE0LTEuNDE0bC0xLjgyNS0xLjgyNHoiLz48cGF0aCBkPSJNMzAgNDYuNTE4SDJ2LTQyaDU0djI4YTEgMSAwIDEgMCAyIDB2LTI5YTEgMSAwIDAgMC0xLTFIMWExIDEgMCAwIDAtMSAxdjQ0YTEgMSAwIDAgMCAxIDFoMjlhMSAxIDAgMSAwIDAtMnoiLz48L3N2Zz4=`,MN=kN+`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA0NjAgNDYwIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCA0NjAgNDYwIiB4bWw6c3BhY2U9InByZXNlcnZlIj48cGF0aCBkPSJNMjMwIDBDMTAyLjk3NSAwIDAgMTAyLjk3NSAwIDIzMHMxMDIuOTc1IDIzMCAyMzAgMjMwIDIzMC0xMDIuOTc0IDIzMC0yMzBTMzU3LjAyNSAwIDIzMCAwem0zOC4zMzMgMzc3LjM2YzAgOC42NzYtNy4wMzQgMTUuNzEtMTUuNzEgMTUuNzFoLTQzLjEwMWMtOC42NzYgMC0xNS43MS03LjAzNC0xNS43MS0xNS43MVYyMDIuNDc3YzAtOC42NzYgNy4wMzMtMTUuNzEgMTUuNzEtMTUuNzFoNDMuMTAxYzguNjc2IDAgMTUuNzEgNy4wMzMgMTUuNzEgMTUuNzFWMzc3LjM2ek0yMzAgMTU3Yy0yMS41MzkgMC0zOS0xNy40NjEtMzktMzlzMTcuNDYxLTM5IDM5LTM5IDM5IDE3LjQ2MSAzOSAzOS0xNy40NjEgMzktMzkgMzl6Ii8+PC9zdmc+`,NN=`data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAAQgAAAEIBarqQRAAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAAE1SURBVDiNfdI7S0NBEAXgLya1otFgpbYSbISAgpXYi6CmiH9KCAiChaVga6OiWPgfRDQ+0itaGVNosXtluWwcuMzePfM4M3sq8lbHBubwg1dc4m1E/J/N4ghDPOIsfk/4xiEao5KX0McFljN4C9d4QTPXuY99jP3DsIoDPGM6BY5i5yI5R7O4q+ImFkJY2DCh3cAH2klyB+9J1xUMMAG7eCh1a+Mr+k48b5diXrFVwwLuS+BJ9MfR7+G0FHOHhTHhnXNWS87VDF4pcnfQK4Ep7XScNLmPTZgURNKKYENYWDpzW1BhscS1WHS8CDgURFJQrWcoF3c13KKbgg1BYQfy8xZWEzTTw1QZbAoKu8FqJnktdu5hcVSHmchiILzzuaDQvjBzV2m8yohCE1jHfPx/xhU+y4G/D75ELlRJsSYAAAAASUVORK5CYII=`,PN=function(){function e(){}return e.createDefault=function(){return{hasPermission:!1,lastUsedCameraId:null}},e}(),FN=function(){function e(){this.data=PN.createDefault();var t=localStorage.getItem(e.LOCAL_STORAGE_KEY);t?this.data=JSON.parse(t):this.reset()}return e.prototype.hasCameraPermissions=function(){return this.data.hasPermission},e.prototype.getLastUsedCameraId=function(){return this.data.lastUsedCameraId},e.prototype.setHasPermission=function(e){this.data.hasPermission=e,this.flush()},e.prototype.setLastUsedCameraId=function(e){this.data.lastUsedCameraId=e,this.flush()},e.prototype.resetLastUsedCameraId=function(){this.data.lastUsedCameraId=null,this.flush()},e.prototype.reset=function(){this.data=PN.createDefault(),this.flush()},e.prototype.flush=function(){localStorage.setItem(e.LOCAL_STORAGE_KEY,JSON.stringify(this.data))},e.LOCAL_STORAGE_KEY=`HTML5_QRCODE_DATA`,e}(),IN=function(){function e(){this.infoDiv=document.createElement(`div`)}return e.prototype.renderInto=function(e){this.infoDiv.style.position=`absolute`,this.infoDiv.style.top=`10px`,this.infoDiv.style.right=`10px`,this.infoDiv.style.zIndex=`2`,this.infoDiv.style.display=`none`,this.infoDiv.style.padding=`5pt`,this.infoDiv.style.border=`1px solid #171717`,this.infoDiv.style.fontSize=`10pt`,this.infoDiv.style.background=`rgb(0 0 0 / 69%)`,this.infoDiv.style.borderRadius=`5px`,this.infoDiv.style.textAlign=`center`,this.infoDiv.style.fontWeight=`400`,this.infoDiv.style.color=`white`,this.infoDiv.innerText=XM.poweredBy();var t=document.createElement(`a`);t.innerText=`ScanApp`,t.href=`https://scanapp.org`,t.target=`new`,t.style.color=`white`,this.infoDiv.appendChild(t);var n=document.createElement(`br`),r=document.createElement(`br`);this.infoDiv.appendChild(n),this.infoDiv.appendChild(r);var i=document.createElement(`a`);i.innerText=XM.reportIssues(),i.href=`https://github.com/mebjas/html5-qrcode/issues`,i.target=`new`,i.style.color=`white`,this.infoDiv.appendChild(i),e.appendChild(this.infoDiv)},e.prototype.show=function(){this.infoDiv.style.display=`block`},e.prototype.hide=function(){this.infoDiv.style.display=`none`},e}(),LN=function(){function e(e,t){this.isShowingInfoIcon=!0,this.onTapIn=e,this.onTapOut=t,this.infoIcon=document.createElement(`img`)}return e.prototype.renderInto=function(e){var t=this;this.infoIcon.alt=`Info icon`,this.infoIcon.src=MN,this.infoIcon.style.position=`absolute`,this.infoIcon.style.top=`4px`,this.infoIcon.style.right=`4px`,this.infoIcon.style.opacity=`0.6`,this.infoIcon.style.cursor=`pointer`,this.infoIcon.style.zIndex=`2`,this.infoIcon.style.width=`16px`,this.infoIcon.style.height=`16px`,this.infoIcon.onmouseover=function(e){return t.onHoverIn()},this.infoIcon.onmouseout=function(e){return t.onHoverOut()},this.infoIcon.onclick=function(e){return t.onClick()},e.appendChild(this.infoIcon)},e.prototype.onHoverIn=function(){this.isShowingInfoIcon&&(this.infoIcon.style.opacity=`1`)},e.prototype.onHoverOut=function(){this.isShowingInfoIcon&&(this.infoIcon.style.opacity=`0.6`)},e.prototype.onClick=function(){this.isShowingInfoIcon?(this.isShowingInfoIcon=!1,this.onTapIn(),this.infoIcon.src=NN,this.infoIcon.style.opacity=`1`):(this.isShowingInfoIcon=!0,this.onTapOut(),this.infoIcon.src=MN,this.infoIcon.style.opacity=`0.6`)},e}(),RN=function(){function e(){var e=this;this.infoDiv=new IN,this.infoIcon=new LN(function(){e.infoDiv.show()},function(){e.infoDiv.hide()})}return e.prototype.renderInto=function(e){this.infoDiv.renderInto(e),this.infoIcon.renderInto(e)},e}(),zN=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},BN=function(e,t){var n={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]},r,i,a,o;return o={next:s(0),throw:s(1),return:s(2)},typeof Symbol==`function`&&(o[Symbol.iterator]=function(){return this}),o;function s(e){return function(t){return c([e,t])}}function c(s){if(r)throw TypeError(`Generator is already executing.`);for(;o&&(o=0,s[0]&&(n=0)),n;)try{if(r=1,i&&(a=s[0]&2?i.return:s[0]?i.throw||((a=i.return)&&a.call(i),0):i.next)&&!(a=a.call(i,s[1])).done)return a;switch(i=0,a&&(s=[s[0]&2,a.value]),s[0]){case 0:case 1:a=s;break;case 4:return n.label++,{value:s[1],done:!1};case 5:n.label++,i=s[1],s=[0];continue;case 7:s=n.ops.pop(),n.trys.pop();continue;default:if((a=n.trys,!(a=a.length>0&&a[a.length-1]))&&(s[0]===6||s[0]===2)){n=0;continue}if(s[0]===3&&(!a||s[1]>a[0]&&s[1]<a[3])){n.label=s[1];break}if(s[0]===6&&n.label<a[1]){n.label=a[1],a=s;break}if(a&&n.label<a[2]){n.label=a[2],n.ops.push(s);break}a[2]&&n.ops.pop(),n.trys.pop();continue}s=t.call(e,n)}catch(e){s=[6,e],i=0}finally{r=a=0}if(s[0]&5)throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}},VN=function(){function e(){}return e.hasPermissions=function(){return zN(this,void 0,void 0,function(){var e,t,n,r;return BN(this,function(i){switch(i.label){case 0:return[4,navigator.mediaDevices.enumerateDevices()];case 1:for(e=i.sent(),t=0,n=e;t<n.length;t++)if(r=n[t],r.kind===`videoinput`&&r.label)return[2,!0];return[2,!1]}})})},e}(),HN=function(){function e(e){this.supportedScanTypes=this.validateAndReturnScanTypes(e)}return e.prototype.getDefaultScanType=function(){return this.supportedScanTypes[0]},e.prototype.hasMoreThanOneScanType=function(){return this.supportedScanTypes.length>1},e.prototype.isCameraScanRequired=function(){for(var t=0,n=this.supportedScanTypes;t<n.length;t++){var r=n[t];if(e.isCameraScanType(r))return!0}return!1},e.isCameraScanType=function(e){return e===zM.SCAN_TYPE_CAMERA},e.isFileScanType=function(e){return e===zM.SCAN_TYPE_FILE},e.prototype.validateAndReturnScanTypes=function(e){if(!e||e.length===0)return BM.DEFAULT_SUPPORTED_SCAN_TYPE;var t=BM.DEFAULT_SUPPORTED_SCAN_TYPE.length;if(e.length>t)throw`Max ${t} values expected for supportedScanTypes`;for(var n=0,r=e;n<r.length;n++){var i=r[n];if(!BM.DEFAULT_SUPPORTED_SCAN_TYPE.includes(i))throw`Unsupported scan type ${i}`}return e},e}(),UN=function(){function e(){}return e.ALL_ELEMENT_CLASS=`html5-qrcode-element`,e.CAMERA_PERMISSION_BUTTON_ID=`html5-qrcode-button-camera-permission`,e.CAMERA_START_BUTTON_ID=`html5-qrcode-button-camera-start`,e.CAMERA_STOP_BUTTON_ID=`html5-qrcode-button-camera-stop`,e.TORCH_BUTTON_ID=`html5-qrcode-button-torch`,e.CAMERA_SELECTION_SELECT_ID=`html5-qrcode-select-camera`,e.FILE_SELECTION_BUTTON_ID=`html5-qrcode-button-file-selection`,e.ZOOM_SLIDER_ID=`html5-qrcode-input-range-zoom`,e.SCAN_TYPE_CHANGE_ANCHOR_ID=`html5-qrcode-anchor-scan-type-change`,e.TORCH_BUTTON_CLASS_TORCH_ON=`html5-qrcode-button-torch-on`,e.TORCH_BUTTON_CLASS_TORCH_OFF=`html5-qrcode-button-torch-off`,e}(),WN=function(){function e(){}return e.createElement=function(e,t){var n=document.createElement(e);return n.id=t,n.classList.add(UN.ALL_ELEMENT_CLASS),e===`button`&&n.setAttribute(`type`,`button`),n},e}(),GN=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},KN=function(e,t){var n={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]},r,i,a,o;return o={next:s(0),throw:s(1),return:s(2)},typeof Symbol==`function`&&(o[Symbol.iterator]=function(){return this}),o;function s(e){return function(t){return c([e,t])}}function c(s){if(r)throw TypeError(`Generator is already executing.`);for(;o&&(o=0,s[0]&&(n=0)),n;)try{if(r=1,i&&(a=s[0]&2?i.return:s[0]?i.throw||((a=i.return)&&a.call(i),0):i.next)&&!(a=a.call(i,s[1])).done)return a;switch(i=0,a&&(s=[s[0]&2,a.value]),s[0]){case 0:case 1:a=s;break;case 4:return n.label++,{value:s[1],done:!1};case 5:n.label++,i=s[1],s=[0];continue;case 7:s=n.ops.pop(),n.trys.pop();continue;default:if((a=n.trys,!(a=a.length>0&&a[a.length-1]))&&(s[0]===6||s[0]===2)){n=0;continue}if(s[0]===3&&(!a||s[1]>a[0]&&s[1]<a[3])){n.label=s[1];break}if(s[0]===6&&n.label<a[1]){n.label=a[1],a=s;break}if(a&&n.label<a[2]){n.label=a[2],n.ops.push(s);break}a[2]&&n.ops.pop(),n.trys.pop();continue}s=t.call(e,n)}catch(e){s=[6,e],i=0}finally{r=a=0}if(s[0]&5)throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}},qN=function(){function e(e,t,n){this.isTorchOn=!1,this.torchCapability=e,this.buttonController=t,this.onTorchActionFailureCallback=n}return e.prototype.isTorchEnabled=function(){return this.isTorchOn},e.prototype.flipState=function(){return GN(this,void 0,void 0,function(){var e,t;return KN(this,function(n){switch(n.label){case 0:this.buttonController.disable(),e=!this.isTorchOn,n.label=1;case 1:return n.trys.push([1,3,,4]),[4,this.torchCapability.apply(e)];case 2:return n.sent(),this.updateUiBasedOnLatestSettings(this.torchCapability.value(),e),[3,4];case 3:return t=n.sent(),this.propagateFailure(e,t),this.buttonController.enable(),[3,4];case 4:return[2]}})})},e.prototype.updateUiBasedOnLatestSettings=function(e,t){e===t?(this.buttonController.setText(t?YM.torchOffButton():YM.torchOnButton()),this.isTorchOn=t):this.propagateFailure(t),this.buttonController.enable()},e.prototype.propagateFailure=function(e,t){var n=e?YM.torchOnFailedMessage():YM.torchOffFailedMessage();t&&(n+=`; Error = `+t),this.onTorchActionFailureCallback(n)},e.prototype.reset=function(){this.isTorchOn=!1},e}(),JN=function(){function e(e,t){this.onTorchActionFailureCallback=t,this.torchButton=WN.createElement(`button`,UN.TORCH_BUTTON_ID),this.torchController=new qN(e,this,t)}return e.prototype.render=function(e,t){var n=this;this.torchButton.innerText=YM.torchOnButton(),this.torchButton.style.display=t.display,this.torchButton.style.marginLeft=t.marginLeft;var r=this;this.torchButton.addEventListener(`click`,function(e){return GN(n,void 0,void 0,function(){return KN(this,function(e){switch(e.label){case 0:return[4,r.torchController.flipState()];case 1:return e.sent(),r.torchController.isTorchEnabled()?(r.torchButton.classList.remove(UN.TORCH_BUTTON_CLASS_TORCH_OFF),r.torchButton.classList.add(UN.TORCH_BUTTON_CLASS_TORCH_ON)):(r.torchButton.classList.remove(UN.TORCH_BUTTON_CLASS_TORCH_ON),r.torchButton.classList.add(UN.TORCH_BUTTON_CLASS_TORCH_OFF)),[2]}})})}),e.appendChild(this.torchButton)},e.prototype.updateTorchCapability=function(e){this.torchController=new qN(e,this,this.onTorchActionFailureCallback)},e.prototype.getTorchButton=function(){return this.torchButton},e.prototype.hide=function(){this.torchButton.style.display=`none`},e.prototype.show=function(){this.torchButton.style.display=`inline-block`},e.prototype.disable=function(){this.torchButton.disabled=!0},e.prototype.enable=function(){this.torchButton.disabled=!1},e.prototype.setText=function(e){this.torchButton.innerText=e},e.prototype.reset=function(){this.torchButton.innerText=YM.torchOnButton(),this.torchController.reset()},e.create=function(t,n,r,i){var a=new e(n,i);return a.render(t,r),a},e}(),YN=function(){function e(e,t,n){this.fileBasedScanRegion=this.createFileBasedScanRegion(),this.fileBasedScanRegion.style.display=t?`block`:`none`,e.appendChild(this.fileBasedScanRegion);var r=document.createElement(`label`);r.setAttribute(`for`,this.getFileScanInputId()),r.style.display=`inline-block`,this.fileBasedScanRegion.appendChild(r),this.fileSelectionButton=WN.createElement(`button`,UN.FILE_SELECTION_BUTTON_ID),this.setInitialValueToButton(),this.fileSelectionButton.addEventListener(`click`,function(e){r.click()}),r.append(this.fileSelectionButton),this.fileScanInput=WN.createElement(`input`,this.getFileScanInputId()),this.fileScanInput.type=`file`,this.fileScanInput.accept=`image/*`,this.fileScanInput.style.display=`none`,r.appendChild(this.fileScanInput);var i=this;this.fileScanInput.addEventListener(`change`,function(e){if(!(e==null||e.target==null)){var t=e.target;if(!(t.files&&t.files.length===0)){var r=t.files[0],a=r.name;i.setImageNameToButton(a),n(r)}}});var a=this.createDragAndDropMessage();this.fileBasedScanRegion.appendChild(a),this.fileBasedScanRegion.addEventListener(`dragenter`,function(e){i.fileBasedScanRegion.style.border=i.fileBasedScanRegionActiveBorder(),e.stopPropagation(),e.preventDefault()}),this.fileBasedScanRegion.addEventListener(`dragleave`,function(e){i.fileBasedScanRegion.style.border=i.fileBasedScanRegionDefaultBorder(),e.stopPropagation(),e.preventDefault()}),this.fileBasedScanRegion.addEventListener(`dragover`,function(e){i.fileBasedScanRegion.style.border=i.fileBasedScanRegionActiveBorder(),e.stopPropagation(),e.preventDefault()}),this.fileBasedScanRegion.addEventListener(`drop`,function(e){e.stopPropagation(),e.preventDefault(),i.fileBasedScanRegion.style.border=i.fileBasedScanRegionDefaultBorder();var t=e.dataTransfer;if(t){var r=t.files;if(!r||r.length===0)return;for(var o=!1,s=0;s<r.length;++s){var c=r.item(s);if(c&&c.type.match(/image.*/)){o=!0;var l=c.name;i.setImageNameToButton(l),n(c),a.innerText=YM.dragAndDropMessage();break}}o||(a.innerText=YM.dragAndDropMessageOnlyImages())}})}return e.prototype.hide=function(){this.fileBasedScanRegion.style.display=`none`,this.fileScanInput.disabled=!0},e.prototype.show=function(){this.fileBasedScanRegion.style.display=`block`,this.fileScanInput.disabled=!1},e.prototype.isShowing=function(){return this.fileBasedScanRegion.style.display===`block`},e.prototype.resetValue=function(){this.fileScanInput.value=``,this.setInitialValueToButton()},e.prototype.createFileBasedScanRegion=function(){var e=document.createElement(`div`);return e.style.textAlign=`center`,e.style.margin=`auto`,e.style.width=`80%`,e.style.maxWidth=`600px`,e.style.border=this.fileBasedScanRegionDefaultBorder(),e.style.padding=`10px`,e.style.marginBottom=`10px`,e},e.prototype.fileBasedScanRegionDefaultBorder=function(){return`6px dashed #ebebeb`},e.prototype.fileBasedScanRegionActiveBorder=function(){return`6px dashed rgb(153 151 151)`},e.prototype.createDragAndDropMessage=function(){var e=document.createElement(`div`);return e.innerText=YM.dragAndDropMessage(),e.style.fontWeight=`400`,e},e.prototype.setImageNameToButton=function(e){if(e.length>20){var t=e.substring(0,8),n=e.length;e=`${t}....${e.substring(n-8,n)}`}var r=YM.fileSelectionChooseAnother()+` - `+e;this.fileSelectionButton.innerText=r},e.prototype.setInitialValueToButton=function(){var e=YM.fileSelectionChooseImage()+` - `+YM.fileSelectionNoImageSelected();this.fileSelectionButton.innerText=e},e.prototype.getFileScanInputId=function(){return`html5-qrcode-private-filescan-input`},e.create=function(t,n,r){return new e(t,n,r)},e}(),XN=function(){function e(e){this.selectElement=WN.createElement(`select`,UN.CAMERA_SELECTION_SELECT_ID),this.cameras=e,this.options=[]}return e.prototype.render=function(e){var t=document.createElement(`span`);t.style.marginRight=`10px`;var n=this.cameras.length;if(n===0)throw Error(`No cameras found`);n===1?t.style.display=`none`:t.innerText=`${YM.selectCamera()} (${this.cameras.length}) `;for(var r=1,i=0,a=this.cameras;i<a.length;i++){var o=a[i],s=o.id,c=o.label==null?s:o.label;(!c||c===``)&&(c=[YM.anonymousCameraPrefix(),r++].join(` `));var l=document.createElement(`option`);l.value=s,l.innerText=c,this.options.push(l),this.selectElement.appendChild(l)}t.appendChild(this.selectElement),e.appendChild(t)},e.prototype.disable=function(){this.selectElement.disabled=!0},e.prototype.isDisabled=function(){return this.selectElement.disabled===!0},e.prototype.enable=function(){this.selectElement.disabled=!1},e.prototype.getValue=function(){return this.selectElement.value},e.prototype.hasValue=function(e){for(var t=0,n=this.options;t<n.length;t++)if(n[t].value===e)return!0;return!1},e.prototype.setValue=function(e){if(!this.hasValue(e))throw Error(`${e} is not present in the camera list.`);this.selectElement.value=e},e.prototype.hasSingleItem=function(){return this.cameras.length===1},e.prototype.numCameras=function(){return this.cameras.length},e.create=function(t,n){var r=new e(n);return r.render(t),r},e}(),ZN=function(){function e(){this.onChangeCallback=null,this.zoomElementContainer=document.createElement(`div`),this.rangeInput=WN.createElement(`input`,UN.ZOOM_SLIDER_ID),this.rangeInput.type=`range`,this.rangeText=document.createElement(`span`),this.rangeInput.min=`1`,this.rangeInput.max=`5`,this.rangeInput.value=`1`,this.rangeInput.step=`0.1`}return e.prototype.render=function(e,t){this.zoomElementContainer.style.display=t?`block`:`none`,this.zoomElementContainer.style.padding=`5px 10px`,this.zoomElementContainer.style.textAlign=`center`,e.appendChild(this.zoomElementContainer),this.rangeInput.style.display=`inline-block`,this.rangeInput.style.width=`50%`,this.rangeInput.style.height=`5px`,this.rangeInput.style.background=`#d3d3d3`,this.rangeInput.style.outline=`none`,this.rangeInput.style.opacity=`0.7`;var n=YM.zoom();this.rangeText.innerText=`${this.rangeInput.value}x ${n}`,this.rangeText.style.marginRight=`10px`;var r=this;this.rangeInput.addEventListener(`input`,function(){return r.onValueChange()}),this.rangeInput.addEventListener(`change`,function(){return r.onValueChange()}),this.zoomElementContainer.appendChild(this.rangeInput),this.zoomElementContainer.appendChild(this.rangeText)},e.prototype.onValueChange=function(){var e=YM.zoom();this.rangeText.innerText=`${this.rangeInput.value}x ${e}`,this.onChangeCallback&&this.onChangeCallback(parseFloat(this.rangeInput.value))},e.prototype.setValues=function(e,t,n,r){this.rangeInput.min=e.toString(),this.rangeInput.max=t.toString(),this.rangeInput.step=r.toString(),this.rangeInput.value=n.toString(),this.onValueChange()},e.prototype.show=function(){this.zoomElementContainer.style.display=`block`},e.prototype.hide=function(){this.zoomElementContainer.style.display=`none`},e.prototype.setOnCameraZoomValueChangeCallback=function(e){this.onChangeCallback=e},e.prototype.removeOnCameraZoomValueChangeCallback=function(){this.onChangeCallback=null},e.create=function(t,n){var r=new e;return r.render(t,n),r},e}(),QN;(function(e){e[e.STATUS_DEFAULT=0]=`STATUS_DEFAULT`,e[e.STATUS_SUCCESS=1]=`STATUS_SUCCESS`,e[e.STATUS_WARNING=2]=`STATUS_WARNING`,e[e.STATUS_REQUESTING_PERMISSION=3]=`STATUS_REQUESTING_PERMISSION`})(QN||={});function $N(e){return{fps:e.fps,qrbox:e.qrbox,aspectRatio:e.aspectRatio,disableFlip:e.disableFlip,videoConstraints:e.videoConstraints}}function eP(e,t){return{formatsToSupport:e.formatsToSupport,useBarCodeDetectorIfSupported:e.useBarCodeDetectorIfSupported,experimentalFeatures:e.experimentalFeatures,verbose:t}}(function(){function e(e,t,n){if(this.lastMatchFound=null,this.cameraScanImage=null,this.fileScanImage=null,this.fileSelectionUi=null,this.elementId=e,this.config=this.createConfig(t),this.verbose=n===!0,!document.getElementById(e))throw`HTML Element with id=${e} not found`;this.scanTypeSelector=new HN(this.config.supportedScanTypes),this.currentScanType=this.scanTypeSelector.getDefaultScanType(),this.sectionSwapAllowed=!0,this.logger=new GM(this.verbose),this.persistedDataManager=new FN,t.rememberLastUsedCamera!==!0&&this.persistedDataManager.reset()}return e.prototype.render=function(e,t){var n=this;this.lastMatchFound=null,this.qrCodeSuccessCallback=function(t,r){if(e)e(t,r);else{if(n.lastMatchFound===t)return;n.lastMatchFound=t,n.setHeaderMessage(YM.lastMatch(t),QN.STATUS_SUCCESS)}},this.qrCodeErrorCallback=function(e,n){t&&t(e,n)};var r=document.getElementById(this.elementId);if(!r)throw`HTML Element with id=${this.elementId} not found`;r.innerHTML=``,this.createBasicLayout(r),this.html5Qrcode=new ON(this.getScanRegionId(),eP(this.config,this.verbose))},e.prototype.pause=function(e){(KM(e)||e!==!0)&&(e=!1),this.getHtml5QrcodeOrFail().pause(e)},e.prototype.resume=function(){this.getHtml5QrcodeOrFail().resume()},e.prototype.getState=function(){return this.getHtml5QrcodeOrFail().getState()},e.prototype.clear=function(){var e=this,t=function(){var t=document.getElementById(e.elementId);t&&(t.innerHTML=``,e.resetBasicLayout(t))};return this.html5Qrcode?new Promise(function(n,r){if(!e.html5Qrcode){n();return}e.html5Qrcode.isScanning?e.html5Qrcode.stop().then(function(r){if(!e.html5Qrcode){n();return}e.html5Qrcode.clear(),t(),n()}).catch(function(t){e.verbose&&e.logger.logError(`Unable to stop qrcode scanner`,t),r(t)}):(e.html5Qrcode.clear(),t(),n())}):Promise.resolve()},e.prototype.getRunningTrackCapabilities=function(){return this.getHtml5QrcodeOrFail().getRunningTrackCapabilities()},e.prototype.getRunningTrackSettings=function(){return this.getHtml5QrcodeOrFail().getRunningTrackSettings()},e.prototype.applyVideoConstraints=function(e){return this.getHtml5QrcodeOrFail().applyVideoConstraints(e)},e.prototype.getHtml5QrcodeOrFail=function(){if(!this.html5Qrcode)throw`Code scanner not initialized.`;return this.html5Qrcode},e.prototype.createConfig=function(e){return e?(e.fps||=BM.SCAN_DEFAULT_FPS,e.rememberLastUsedCamera!==!BM.DEFAULT_REMEMBER_LAST_CAMERA_USED&&(e.rememberLastUsedCamera=BM.DEFAULT_REMEMBER_LAST_CAMERA_USED),e.supportedScanTypes||=BM.DEFAULT_SUPPORTED_SCAN_TYPE,e):{fps:BM.SCAN_DEFAULT_FPS,rememberLastUsedCamera:BM.DEFAULT_REMEMBER_LAST_CAMERA_USED,supportedScanTypes:BM.DEFAULT_SUPPORTED_SCAN_TYPE}},e.prototype.createBasicLayout=function(e){e.style.position=`relative`,e.style.padding=`0px`,e.style.border=`1px solid silver`,this.createHeader(e);var t=document.createElement(`div`);t.id=this.getScanRegionId(),t.style.width=`100%`,t.style.minHeight=`100px`,t.style.textAlign=`center`,e.appendChild(t),HN.isCameraScanType(this.currentScanType)?this.insertCameraScanImageToScanRegion():this.insertFileScanImageToScanRegion();var n=document.createElement(`div`);n.id=this.getDashboardId(),n.style.width=`100%`,e.appendChild(n),this.setupInitialDashboard(n)},e.prototype.resetBasicLayout=function(e){e.style.border=`none`},e.prototype.setupInitialDashboard=function(e){this.createSection(e),this.createSectionControlPanel(),this.scanTypeSelector.hasMoreThanOneScanType()&&this.createSectionSwap()},e.prototype.createHeader=function(e){var t=document.createElement(`div`);t.style.textAlign=`left`,t.style.margin=`0px`,e.appendChild(t),new RN().renderInto(t);var n=document.createElement(`div`);n.id=this.getHeaderMessageContainerId(),n.style.display=`none`,n.style.textAlign=`center`,n.style.fontSize=`14px`,n.style.padding=`2px 10px`,n.style.margin=`4px`,n.style.borderTop=`1px solid #f6f6f6`,t.appendChild(n)},e.prototype.createSection=function(e){var t=document.createElement(`div`);t.id=this.getDashboardSectionId(),t.style.width=`100%`,t.style.padding=`10px 0px 10px 0px`,t.style.textAlign=`left`,e.appendChild(t)},e.prototype.createCameraListUi=function(e,t,n){var r=this;r.showHideScanTypeSwapLink(!1),r.setHeaderMessage(YM.cameraPermissionRequesting());var i=function(){n||r.createPermissionButton(e,t)};ON.getCameras().then(function(n){r.persistedDataManager.setHasPermission(!0),r.showHideScanTypeSwapLink(!0),r.resetHeaderMessage(),n&&n.length>0?(e.removeChild(t),r.renderCameraSelection(n)):(r.setHeaderMessage(YM.noCameraFound(),QN.STATUS_WARNING),i())}).catch(function(e){r.persistedDataManager.setHasPermission(!1),n?n.disabled=!1:i(),r.setHeaderMessage(e,QN.STATUS_WARNING),r.showHideScanTypeSwapLink(!0)})},e.prototype.createPermissionButton=function(e,t){var n=this,r=WN.createElement(`button`,this.getCameraPermissionButtonId());r.innerText=YM.cameraPermissionTitle(),r.addEventListener(`click`,function(){r.disabled=!0,n.createCameraListUi(e,t,r)}),t.appendChild(r)},e.prototype.createPermissionsUi=function(e,t){var n=this;if(HN.isCameraScanType(this.currentScanType)&&this.persistedDataManager.hasCameraPermissions()){VN.hasPermissions().then(function(r){r?n.createCameraListUi(e,t):(n.persistedDataManager.setHasPermission(!1),n.createPermissionButton(e,t))}).catch(function(r){n.persistedDataManager.setHasPermission(!1),n.createPermissionButton(e,t)});return}this.createPermissionButton(e,t)},e.prototype.createSectionControlPanel=function(){var e=document.getElementById(this.getDashboardSectionId()),t=document.createElement(`div`);e.appendChild(t);var n=document.createElement(`div`);n.id=this.getDashboardSectionCameraScanRegionId(),n.style.display=HN.isCameraScanType(this.currentScanType)?`block`:`none`,t.appendChild(n);var r=document.createElement(`div`);r.style.textAlign=`center`,n.appendChild(r),this.scanTypeSelector.isCameraScanRequired()&&this.createPermissionsUi(n,r),this.renderFileScanUi(t)},e.prototype.renderFileScanUi=function(e){var t=HN.isFileScanType(this.currentScanType),n=this,r=function(e){if(!n.html5Qrcode)throw`html5Qrcode not defined`;HN.isFileScanType(n.currentScanType)&&(n.setHeaderMessage(YM.loadingImage()),n.html5Qrcode.scanFileV2(e,!0).then(function(e){n.resetHeaderMessage(),n.qrCodeSuccessCallback(e.decodedText,e)}).catch(function(e){n.setHeaderMessage(e,QN.STATUS_WARNING),n.qrCodeErrorCallback(e,WM.createFrom(e))}))};this.fileSelectionUi=YN.create(e,t,r)},e.prototype.renderCameraSelection=function(e){var t=this,n=this,r=document.getElementById(this.getDashboardSectionCameraScanRegionId());r.style.textAlign=`center`;var i=ZN.create(r,!1),a=function(e){var n=e.zoomFeature();if(n.isSupported()){i.setOnCameraZoomValueChangeCallback(function(e){n.apply(e)});var r=1;t.config.defaultZoomValueIfSupported&&(r=t.config.defaultZoomValueIfSupported),r=qM(r,n.min(),n.max()),i.setValues(n.min(),n.max(),r,n.step()),i.show()}},o=XN.create(r,e),s=document.createElement(`span`),c=WN.createElement(`button`,UN.CAMERA_START_BUTTON_ID);c.innerText=YM.scanButtonStartScanningText(),s.appendChild(c);var l=WN.createElement(`button`,UN.CAMERA_STOP_BUTTON_ID);l.innerText=YM.scanButtonStopScanningText(),l.style.display=`none`,l.disabled=!0,s.appendChild(l);var u,d=function(e){if(!e.torchFeature().isSupported()){u&&u.hide();return}u?u.updateTorchCapability(e.torchFeature()):u=JN.create(s,e.torchFeature(),{display:`none`,marginLeft:`5px`},function(e){n.setHeaderMessage(e,QN.STATUS_WARNING)}),u.show()};r.appendChild(s);var f=function(e){e||(c.style.display=`none`),c.innerText=YM.scanButtonStartScanningText(),c.style.opacity=`1`,c.disabled=!1,e&&(c.style.display=`inline-block`)};if(c.addEventListener(`click`,function(e){c.innerText=YM.scanButtonScanningStarting(),o.disable(),c.disabled=!0,c.style.opacity=`0.5`,t.scanTypeSelector.hasMoreThanOneScanType()&&n.showHideScanTypeSwapLink(!1),n.resetHeaderMessage();var r=o.getValue();n.persistedDataManager.setLastUsedCameraId(r),n.html5Qrcode.start(r,$N(n.config),n.qrCodeSuccessCallback,n.qrCodeErrorCallback).then(function(e){l.disabled=!1,l.style.display=`inline-block`,f(!1);var r=n.html5Qrcode.getRunningTrackCameraCapabilities();t.config.showTorchButtonIfSupported===!0&&d(r),t.config.showZoomSliderIfSupported===!0&&a(r)}).catch(function(e){n.showHideScanTypeSwapLink(!0),o.enable(),f(!0),n.setHeaderMessage(e,QN.STATUS_WARNING)})}),o.hasSingleItem()&&c.click(),l.addEventListener(`click`,function(e){if(!n.html5Qrcode)throw`html5Qrcode not defined`;l.disabled=!0,n.html5Qrcode.stop().then(function(e){t.scanTypeSelector.hasMoreThanOneScanType()&&n.showHideScanTypeSwapLink(!0),o.enable(),c.disabled=!1,l.style.display=`none`,c.style.display=`inline-block`,u&&(u.reset(),u.hide()),i.removeOnCameraZoomValueChangeCallback(),i.hide(),n.insertCameraScanImageToScanRegion()}).catch(function(e){l.disabled=!1,n.setHeaderMessage(e,QN.STATUS_WARNING)})}),n.persistedDataManager.getLastUsedCameraId()){var p=n.persistedDataManager.getLastUsedCameraId();o.hasValue(p)?(o.setValue(p),c.click()):n.persistedDataManager.resetLastUsedCameraId()}},e.prototype.createSectionSwap=function(){var e=this,t=YM.textIfCameraScanSelected(),n=YM.textIfFileScanSelected(),r=document.getElementById(this.getDashboardSectionId()),i=document.createElement(`div`);i.style.textAlign=`center`;var a=WN.createElement(`span`,this.getDashboardSectionSwapLinkId());a.style.textDecoration=`underline`,a.style.cursor=`pointer`,a.innerText=HN.isCameraScanType(this.currentScanType)?t:n,a.addEventListener(`click`,function(){if(!e.sectionSwapAllowed){e.verbose&&e.logger.logError(`Section swap called when not allowed`);return}e.resetHeaderMessage(),e.fileSelectionUi.resetValue(),e.sectionSwapAllowed=!1,HN.isCameraScanType(e.currentScanType)?(e.clearScanRegion(),e.getCameraScanRegion().style.display=`none`,e.fileSelectionUi.show(),a.innerText=n,e.currentScanType=zM.SCAN_TYPE_FILE,e.insertFileScanImageToScanRegion()):(e.clearScanRegion(),e.getCameraScanRegion().style.display=`block`,e.fileSelectionUi.hide(),a.innerText=t,e.currentScanType=zM.SCAN_TYPE_CAMERA,e.insertCameraScanImageToScanRegion(),e.startCameraScanIfPermissionExistsOnSwap()),e.sectionSwapAllowed=!0}),i.appendChild(a),r.appendChild(i)},e.prototype.startCameraScanIfPermissionExistsOnSwap=function(){var e=this,t=this;if(this.persistedDataManager.hasCameraPermissions()){VN.hasPermissions().then(function(n){if(n){var r=document.getElementById(t.getCameraPermissionButtonId());if(!r)throw e.logger.logError(`Permission button not found, fail;`),`Permission button not found`;r.click()}else t.persistedDataManager.setHasPermission(!1)}).catch(function(e){t.persistedDataManager.setHasPermission(!1)});return}},e.prototype.resetHeaderMessage=function(){var e=document.getElementById(this.getHeaderMessageContainerId());e.style.display=`none`},e.prototype.setHeaderMessage=function(e,t){t||=QN.STATUS_DEFAULT;var n=this.getHeaderMessageDiv();switch(n.innerText=e,n.style.display=`block`,t){case QN.STATUS_SUCCESS:n.style.background=`rgba(106, 175, 80, 0.26)`,n.style.color=`#477735`;break;case QN.STATUS_WARNING:n.style.background=`rgba(203, 36, 49, 0.14)`,n.style.color=`#cb2431`;break;case QN.STATUS_DEFAULT:default:n.style.background=`rgba(0, 0, 0, 0)`,n.style.color=`rgb(17, 17, 17)`;break}},e.prototype.showHideScanTypeSwapLink=function(e){this.scanTypeSelector.hasMoreThanOneScanType()&&(e!==!0&&(e=!1),this.sectionSwapAllowed=e,this.getDashboardSectionSwapLink().style.display=e?`inline-block`:`none`)},e.prototype.insertCameraScanImageToScanRegion=function(){var e=this,t=document.getElementById(this.getScanRegionId());if(this.cameraScanImage){t.innerHTML=`<br>`,t.appendChild(this.cameraScanImage);return}this.cameraScanImage=new Image,this.cameraScanImage.onload=function(n){t.innerHTML=`<br>`,t.appendChild(e.cameraScanImage)},this.cameraScanImage.width=64,this.cameraScanImage.style.opacity=`0.8`,this.cameraScanImage.src=AN,this.cameraScanImage.alt=YM.cameraScanAltText()},e.prototype.insertFileScanImageToScanRegion=function(){var e=this,t=document.getElementById(this.getScanRegionId());if(this.fileScanImage){t.innerHTML=`<br>`,t.appendChild(this.fileScanImage);return}this.fileScanImage=new Image,this.fileScanImage.onload=function(n){t.innerHTML=`<br>`,t.appendChild(e.fileScanImage)},this.fileScanImage.width=64,this.fileScanImage.style.opacity=`0.8`,this.fileScanImage.src=jN,this.fileScanImage.alt=YM.fileScanAltText()},e.prototype.clearScanRegion=function(){var e=document.getElementById(this.getScanRegionId());e.innerHTML=``},e.prototype.getDashboardSectionId=function(){return`${this.elementId}__dashboard_section`},e.prototype.getDashboardSectionCameraScanRegionId=function(){return`${this.elementId}__dashboard_section_csr`},e.prototype.getDashboardSectionSwapLinkId=function(){return UN.SCAN_TYPE_CHANGE_ANCHOR_ID},e.prototype.getScanRegionId=function(){return`${this.elementId}__scan_region`},e.prototype.getDashboardId=function(){return`${this.elementId}__dashboard`},e.prototype.getHeaderMessageContainerId=function(){return`${this.elementId}__header_message`},e.prototype.getCameraPermissionButtonId=function(){return UN.CAMERA_PERMISSION_BUTTON_ID},e.prototype.getCameraScanRegion=function(){return document.getElementById(this.getDashboardSectionCameraScanRegionId())},e.prototype.getDashboardSectionSwapLink=function(){return document.getElementById(this.getDashboardSectionSwapLinkId())},e.prototype.getHeaderMessageDiv=function(){return document.getElementById(this.getHeaderMessageContainerId())},e})();var tP;(function(e){e[e.BACK=1]=`BACK`,e[e.FRONT=2]=`FRONT`})(tP||={});var nP;(function(e){e[e.PORTRAIT=1]=`PORTRAIT`,e[e.LANDSCAPE=2]=`LANDSCAPE`,e[e.ADAPTIVE=3]=`ADAPTIVE`})(nP||={});var rP;(function(e){e[e.ALL=17]=`ALL`})(rP||={});var iP=Object.assign(Object.assign({},FM),rP),aP;(function(e){e.ZXING=`zxing`,e.MLKIT=`mlkit`})(aP||={});var oP=[{selector:`.scanner-container-display`,css:`display: block;`},{selector:`.scanner-dialog`,css:`display: none; position: fixed; z-index: 999; left: 0; top: 0; width: 100%; height: 100%; overflow: auto; background-color: rgba(0,0,0,0.4);`},{selector:`.scanner-dialog-inner`,css:`background-color: #fefefe; margin: 2% auto; padding: 20px; border: 1px solid #888; width: 96%;`},{selector:`.close-button`,css:`color: #aaa; float: right; font-size: 28px; font-weight: bold; cursor: pointer;`},{selector:`.close-button:hover`,css:`color: #222;`},{selector:`.scanner-container-full-width`,css:`width: 100%;`}];function sP(e){let t=`custom-style-os-cap-barcode`,n=document.getElementById(t);if(n||(n=document.createElement(`style`),n.type=`text/css`,n.id=t,document.head.appendChild(n)),n.sheet){for(;n.sheet.cssRules.length;)n.sheet.deleteRule(0);for(let{selector:t,css:r}of e)n.sheet.insertRule(`${t} { ${r} }`)}else{n.textContent=``;for(let{selector:t,css:r}of e)n.textContent+=`${t} { ${r} }`}}var cP=Og(`CapacitorBarcodeScanner`,{web:()=>(sP(oP),us(()=>import(`./web-BidDZaMC.js`).then(e=>new e.CapacitorBarcodeScannerWeb),[]))}),lP=class{static async scanBarcode(e){return e.scanInstructions=e.scanInstructions||` `,e.scanButton=e.scanButton||!1,e.scanText=e.scanText||` `,e.cameraDirection=e.cameraDirection||tP.BACK,e.scanOrientation=e.scanOrientation||nP.ADAPTIVE,cP.scanBarcode(e)}};function uP(e){if(e instanceof Error){let t=e.message.toLowerCase();return t.includes(`permission`)||t.includes(`denied`)||t.includes(`not allowed`)||t.includes(`unauthorized`)}return!1}function dP(e){if(e instanceof Error){let t=e.message.toLowerCase();return t.includes(`cancel`)||t.includes(`user cancelled`)||t.includes(`scan cancelled`)}return!1}function fP(){let[e,t]=(0,Z.useState)(!1);return{scan:(0,Z.useCallback)(async()=>{if(!Za())return{value:null,error:null};t(!0);try{let e=await lP.scanBarcode({hint:iP.QR_CODE,scanInstructions:`Point the camera at a Tarsk QR code`});return e?.ScanResult?{value:e.ScanResult,error:null}:{value:null,error:null}}catch(e){return dP(e)?{value:null,error:null}:uP(e)?{value:null,error:`Camera permission was denied. Please grant camera access in your device settings to scan QR codes.`}:{value:null,error:`Unable to scan QR code. Please make sure your device has a camera and try again.`}}finally{t(!1)}},[]),isScanning:e,isAvailable:Za()}}function pP(){let[e,t]=(0,Z.useState)(!0),[n,r]=(0,Z.useState)(Vr),[i,a]=(0,Z.useState)(null),[o,s]=(0,Z.useState)(null),[c,l]=(0,Z.useState)(!1),u=fP();(0,Z.useEffect)(()=>{let e=!0;return(async()=>{try{let n=await fetch(`${Fa()}/health`,{method:`GET`});e&&t(n.ok)}catch{e&&t(!1)}})(),()=>{e=!1}},[]);let d=(0,Z.useCallback)(async()=>{let e=qo(n);if(e){a(null),l(!0);try{if(!await Or(e)){a(e);return}Pi(n)}finally{l(!1)}}},[n]),f=(0,Z.useCallback)(async()=>{s(null);let e=await u.scan();if(e.error){s(e.error);return}if(e.value){r(e.value),a(null);let t=qo(e.value);if(!t){s(`The scanned QR code did not contain a valid server address.`);return}l(!0);try{if(!await Or(t)){a(t);return}Pi(e.value)}finally{l(!1)}}},[u]);return e?null:(0,$.jsx)(pc,{open:!0,children:(0,$.jsxs)(cc,{children:[(0,$.jsxs)(fc,{children:[(0,$.jsx)(`img`,{src:`/tarsk-color.svg`,alt:`Tarsk`,className:`mx-auto h-16 w-16 rounded-lg`}),(0,$.jsx)(sc,{children:`Connect to Tarsk`}),(0,$.jsx)(oc,{children:`Connect to the Tarsk server running on your local network by entering the IP Address or domain name below.`})]}),(0,$.jsxs)(`div`,{className:`relative`,children:[(0,$.jsx)(Qo,{value:n,onChange:e=>{r(e.target.value),a(null),s(null)},onKeyDown:e=>{e.key===`Enter`&&!c&&d()},placeholder:`192.168.1.100`,autoComplete:`off`,spellCheck:!1,disabled:c,className:u.isAvailable?`pr-10`:void 0}),u.isAvailable&&(0,$.jsx)(Hr,{type:`button`,variant:`ghost`,size:`icon`,className:`absolute right-1 top-1 h-8 w-8`,"aria-label":`Scan QR code`,disabled:c||u.isScanning,onClick:()=>void f(),children:u.isScanning?(0,$.jsx)(ln,{className:`h-4 w-4 animate-spin`}):(0,$.jsx)(jt,{className:`h-4 w-4`})})]}),o&&(0,$.jsxs)(mo,{variant:`error`,className:`mb-0 flex items-start gap-3`,children:[(0,$.jsx)(`p`,{className:`flex-1`,children:o}),(0,$.jsx)(Hr,{type:`button`,variant:`ghost`,size:`icon`,className:`h-8 w-8 shrink-0`,"aria-label":`Dismiss error`,onClick:()=>s(null),children:(0,$.jsx)(nt,{className:`h-4 w-4`})})]}),i&&(0,$.jsxs)(mo,{variant:`error`,className:`mb-0 flex items-start gap-3`,children:[(0,$.jsxs)(`p`,{className:`flex-1`,children:[`Unable to connect to `,i,`. Please check that you are on the same network and that the Tarsk server is running and accessible on the network.`]}),(0,$.jsx)(Hr,{type:`button`,variant:`ghost`,size:`icon`,className:`h-8 w-8 shrink-0`,"aria-label":`Dismiss error`,onClick:()=>a(null),children:(0,$.jsx)(nt,{className:`h-4 w-4`})})]}),(0,$.jsx)(uc,{children:(0,$.jsx)(Hr,{onClick:()=>void d(),disabled:!n.trim()||c,children:c?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(ln,{className:`mr-2 h-4 w-4 animate-spin`}),`Connecting...`]}):`Connect`})}),(0,$.jsxs)(mo,{variant:`hint`,className:`mb-0`,children:[(0,$.jsx)(`p`,{className:U.bodyMuted,children:`Start the Tarsk server on your local machine by running:`}),(0,$.jsx)(`code`,{className:G(U.mono,`mt-2 block rounded bg-background/60 px-2 py-1 text-foreground`),children:`npx tarsk --server`})]})]})})}var mP=(0,Z.lazy)(()=>us(()=>import(`./create-project-dialog-CSVkngnF.js`),__vite__mapDeps([35,1,33,4,5]))),hP=(0,Z.lazy)(()=>us(()=>import(`./onboarding-DVc9-yKJ.js`).then(e=>e.t),__vite__mapDeps([4,1,5])));function gP(e){let t=(0,Q.c)(42),{showCreateProject:n,createProjectInitialMode:r,onCreateProjectOpenChange:i,onSubmitClone:a,onSubmitWebApp:o,onSubmitFolder:s,deleteProject:c,deleteProjectBlocked:l,deleteProjectBlockReason:u,deleteProjectDeletesFolder:d,onDeleteProjectOpenChange:f,onConfirmDeleteProject:p,deleteProjectProgress:m,onDeleteProjectRetry:h,onDeleteProjectProgressClose:g,pendingSetupScriptConfirmation:_,onResolveSetupScriptConfirmation:v,pendingZipOverride:y,onResolveZipOverride:b,showOnboarding:x,onOnboardingOpenChange:S,onOnboardingComplete:C}=e,w=r??void 0,T;t[0]!==i||t[1]!==a||t[2]!==s||t[3]!==o||t[4]!==n||t[5]!==w?(T=(0,$.jsx)(Z.Suspense,{fallback:null,children:(0,$.jsx)(mP,{open:n,onOpenChange:i,initialMode:w,onSubmitClone:a,onSubmitWebApp:o,onSubmitFolder:s})}),t[0]=i,t[1]=a,t[2]=s,t[3]=o,t[4]=n,t[5]=w,t[6]=T):T=t[6];let E=c!==null,D=c?.name,O;t[7]!==u||t[8]!==l||t[9]!==d||t[10]!==p||t[11]!==f||t[12]!==E||t[13]!==D?(O=(0,$.jsx)(jM,{open:E,projectName:D,onOpenChange:f,onConfirm:p,blocked:l,blockReason:u,deletesFolder:d}),t[7]=u,t[8]=l,t[9]=d,t[10]=p,t[11]=f,t[12]=E,t[13]=D,t[14]=O):O=t[14];let k;t[15]!==m||t[16]!==g||t[17]!==h?(k=(0,$.jsx)(BC,{progress:m,onRetry:h,onClose:g}),t[15]=m,t[16]=g,t[17]=h,t[18]=k):k=t[18];let A=_!==null,j;t[19]===_?j=t[20]:(j=_?[_.command,..._.remainingScripts||[]]:[],t[19]=_,t[20]=j);let M;t[21]!==v||t[22]!==A||t[23]!==j?(M=(0,$.jsx)(MM,{open:A,setupScripts:j,onConfirm:v}),t[21]=v,t[22]=A,t[23]=j,t[24]=M):M=t[24];let N=y!==null,P=y?.existingProjectName,F=y?.zipFilename,I;t[25]!==b||t[26]!==N||t[27]!==P||t[28]!==F?(I=(0,$.jsx)(PM,{open:N,existingProjectName:P,zipFilename:F,onConfirm:b}),t[25]=b,t[26]=N,t[27]=P,t[28]=F,t[29]=I):I=t[29];let L;t[30]!==C||t[31]!==S||t[32]!==x?(L=(0,$.jsx)(Z.Suspense,{fallback:null,children:(0,$.jsx)(hP,{open:x,onOpenChange:S,onComplete:C})}),t[30]=C,t[31]=S,t[32]=x,t[33]=L):L=t[33];let R;t[34]===Symbol.for(`react.memo_cache_sentinel`)?(R=(0,$.jsx)(pP,{}),t[34]=R):R=t[34];let z;return t[35]!==I||t[36]!==L||t[37]!==T||t[38]!==O||t[39]!==k||t[40]!==M?(z=(0,$.jsxs)($.Fragment,{children:[T,O,k,M,I,L,R]}),t[35]=I,t[36]=L,t[37]=T,t[38]=O,t[39]=k,t[40]=M,t[41]=z):z=t[41],z}function _P(){let e=(0,Q.c)(8),{setIsSelectModeEnabled:t,setIsEditModeEnabled:n,setSelectedBrowserElement:r,setIsSelectionPromptOpen:i}=ek(),a;e[0]!==n||e[1]!==t||e[2]!==i||e[3]!==r?(a=e=>{r(e),t(!1),n(!1),i(!_M(e))},e[0]=n,e[1]=t,e[2]=i,e[3]=r,e[4]=a):a=e[4];let o=a,s,c;e[5]===o?(s=e[6],c=e[7]):(s=()=>{let e=function(e){let t=e.detail;uM(t)&&o(t)},t=function(e){let t=pM(e.data);t&&o(t)};return window.addEventListener(aM,e),window.addEventListener(`message`,t),function(){window.removeEventListener(aM,e),window.removeEventListener(`message`,t)}},c=[o],e[5]=o,e[6]=s,e[7]=c),(0,Z.useEffect)(s,c)}var vP=`__tarskBrowserCapture`,yP=15e3,bP=0,xP=null,SP=new Set;function CP(){for(let e of SP)e()}function wP(){xP!=null&&(clearTimeout(xP),xP=null)}function TP(){wP(),bP!==0&&(bP=0,CP())}function EP(){bP+=1,wP(),xP=setTimeout(TP,yP),bP===1&&CP()}function DP(){bP!==0&&(--bP,!(bP>0)&&(wP(),CP()))}function OP(){return bP>0}function kP(e){return SP.add(e),function(){SP.delete(e)}}function AP(e){if(e!=null){let t=document.getElementById(`electrobun-webview-${e}`);if(t)return t}return document.querySelector(`electrobun-webview`)}function jP(e,t){return e.width<=0||e.height<=0?null:{x:t.screenX+e.left,y:t.screenY+e.top,width:e.width,height:e.height}}function MP(e){let t=AP(e);return t?jP(t.getBoundingClientRect(),window):null}function NP(){let e=window;return e[vP]={begin:EP,end:DP,rect:MP},function(){delete e[vP],TP()}}var PP=Ut(`app.use-browser-tool-listener.hook`);function FP(e){let t=e.trim();return t?t.startsWith(`http://`)||t.startsWith(`https://`)?t:`http://${t}`:``}function IP(){return document.querySelector(`electrobun-webview`)}function LP(e=2e4){return new Promise((t,n)=>{let r=Date.now();function i(){let a=IP();if(a&&a.webviewId!=null){t(a);return}if(Date.now()-r>e){n(Error(`Timed out waiting for preview webview to mount`));return}requestAnimationFrame(i)}requestAnimationFrame(i)})}async function RP(e,t,n){switch(t.action){case`reload`:return e.reload(),{action:`reload`,webview_id:e.webviewId,current_url:n||e.src||null};case`go_back`:return e.goBack(),{action:`go_back`,webview_id:e.webviewId,current_url:n||e.src||null};case`go_forward`:return e.goForward(),{action:`go_forward`,webview_id:e.webviewId,current_url:n||e.src||null};case`get_state`:{let t=await e.canGoBack(),r=await e.canGoForward();return{action:`get_state`,webview_id:e.webviewId,current_url:n||e.src||null,can_go_back:t,can_go_forward:r}}default:throw Error(`Unsupported host browser action: ${String(t.action)}`)}}function zP(e){let t=Date.now();function n(){if(Date.now()-t>2e4){PP.error(`[browser-tool] timed out waiting for preview webview to mount (${e})`);return}let r=IP();if(!r||r.webviewId==null){requestAnimationFrame(n);return}w_(e,r.webviewId).catch(e=>{PP.error(`[browser-tool] failed to report preview webview ready`,e)})}requestAnimationFrame(n)}async function BP(e,t,n){let{toolCallId:r,input:i}=e;if(!(!r||!i.action)){if(i.action===`set_viewport`){let e=i.preset??`desktop`;n(e);try{let t=await LP();t.syncDimensions(!0),await T_(r,{action:`set_viewport`,preset:e,webview_id:t.webviewId})}catch(t){PP.error(`[browser-tool] failed to set viewport`,t),await T_(r,{action:`set_viewport`,preset:e,error:t instanceof Error?t.message:String(t)})}return}if(zt(i.action)){try{await T_(r,await RP(await LP(),i,t))}catch(e){PP.error(`[browser-tool] failed to execute host browser action`,e),await T_(r,{action:i.action,error:e instanceof Error?e.message:String(e)})}return}zP(r)}}function VP(){let{openChatDockPanel:e}=Hd(),{expandWindow:t,hasOpenWindows:n}=gc(),{setDevServerUrl:r,devServerUrl:i}=gw(),{setBrowserDeviceMode:a}=ek(),o=(0,Z.useRef)(null),s=X(e=>{let t=o.current;return t?e.threadStreamingStates[Es(t,`primary`)]?.isStreaming??!1:!1}),c=(0,Z.useRef)(i);c.current=i;let l=(0,Z.useRef)(e);l.current=e;let u=(0,Z.useRef)(t);u.current=t;let d=(0,Z.useRef)(n);d.current=n;let f=(0,Z.useRef)(r);f.current=r;let p=(0,Z.useRef)(a);p.current=a;let m=(0,Z.useRef)(!1);function h(){d.current&&u.current(Ct)}(0,Z.useEffect)(()=>{if(!o.current){m.current=!1;return}let e=m.current;m.current=s,!(!e||s)&&(o.current=null,h())},[s]),(0,Z.useEffect)(()=>{function e(e){let t=e.detail;t?.threadId&&o.current===t.threadId&&(o.current=null,h())}return window.addEventListener(i_,e),function(){window.removeEventListener(i_,e)}},[]),(0,Z.useEffect)(()=>{if(Pr())return NP()},[]),(0,Z.useEffect)(()=>{if(!Pr())return;function e(e){let t=e.detail;if(!t?.toolCallId||!t.input?.action)return;t.threadId&&(o.current=t.threadId,m.current=!0),l.current(`browser`,{navigateToChat:!1});let n=t.input.url?.trim()||c.current||``;if(n){let e=FP(n);e&&f.current(e)}BP(t,c.current||``,p.current)}return window.addEventListener(r_,e),function(){window.removeEventListener(r_,e)}},[])}var HP=e=>{let t=(0,Q.c)(8),n,r;t[0]===e?(n=t[1],r=t[2]):({className:n,...r}=e,t[0]=e,t[1]=n,t[2]=r);let i;t[3]===n?i=t[4]:(i=G(`flex h-full w-full data-[panel-group-direction=vertical]:flex-col`,n),t[3]=n,t[4]=i);let a;return t[5]!==r||t[6]!==i?(a=(0,$.jsx)(yn,{className:i,...r}),t[5]=r,t[6]=i,t[7]=a):a=t[7],a},UP=Hn,WP=e=>{let t=(0,Q.c)(12),n,r,i;t[0]===e?(n=t[1],r=t[2],i=t[3]):({withHandle:i,className:n,...r}=e,t[0]=e,t[1]=n,t[2]=r,t[3]=i);let a;t[4]===n?a=t[5]:(a=G(`relative flex w-px items-center justify-center bg-transparent after:absolute after:inset-y-0 after:left-1/2 after:w-1 after:-translate-x-1/2 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring focus-visible:ring-offset-1 data-[panel-group-direction=vertical]:h-px data-[panel-group-direction=vertical]:w-full data-[panel-group-direction=vertical]:after:left-0 data-[panel-group-direction=vertical]:after:h-1 data-[panel-group-direction=vertical]:after:w-full data-[panel-group-direction=vertical]:after:-translate-y-1/2 data-[panel-group-direction=vertical]:after:translate-x-0 [&[data-panel-group-direction=vertical]>div]:rotate-90`,n),t[4]=n,t[5]=a);let o;t[6]===i?o=t[7]:(o=i&&(0,$.jsx)(`div`,{className:`hidden z-10 flex h-4 w-3 items-center justify-center rounded-sm border bg-border`,children:(0,$.jsx)(I,{className:`h-2.5 w-2.5`})}),t[6]=i,t[7]=o);let s;return t[8]!==r||t[9]!==a||t[10]!==o?(s=(0,$.jsx)(J,{className:a,...r,children:o}),t[8]=r,t[9]=a,t[10]=o,t[11]=s):s=t[11],s};function GP(){let e=(0,Q.c)(5),{toasts:t}=ic(),n;e[0]===t?n=e[1]:(n=t.map(KP),e[0]=t,e[1]=n);let r;e[2]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,$.jsx)(HC,{}),e[2]=r):r=e[2];let i;return e[3]===n?i=e[4]:(i=(0,$.jsxs)(VC,{duration:5e3,children:[n,r]}),e[3]=n,e[4]=i),i}function KP(e){let{id:t,title:n,description:r,action:i,variant:a,...o}=e,s=a===`destructive`,c=[n,r].filter(Boolean).join(`
3357
- `),l=s?(0,$.jsxs)(GC,{altText:`Copy error`,onClick:()=>{navigator.clipboard.writeText(c)},children:[(0,$.jsx)(Ze,{className:`h-4 w-4`}),`Copy`]}):null;return(0,$.jsxs)(WC,{variant:a,...o,children:[(0,$.jsxs)(`div`,{className:`grid gap-1`,children:[n&&(0,$.jsx)(qC,{children:n}),r&&(0,$.jsx)(JC,{children:r})]}),(0,$.jsxs)(`div`,{className:`flex items-center gap-1`,children:[i,l]}),(0,$.jsx)(KC,{})]},t)}function qP(){return new Uc({defaultOptions:{queries:{staleTime:3e4,retry:1,refetchOnWindowFocus:!0},mutations:{retry:0}}})}function JP(e){let t=(0,Q.c)(3),{children:n}=e,[r]=(0,Z.useState)(qP),i;return t[0]!==n||t[1]!==r?(i=(0,$.jsx)(xr,{client:r,children:n}),t[0]=n,t[1]=r,t[2]=i):i=t[2],i}function YP(){let e=(0,Q.c)(4),{resolvedTheme:t,theme:n}=Ic(),r,i;return e[0]!==t||e[1]!==n?(r=()=>{if(window.tarsk?.setNativeTheme){let e=n===`system`?`system`:t||`system`;window.tarsk.setNativeTheme(e)}},i=[t,n],e[0]=t,e[1]=n,e[2]=r,e[3]=i):(r=e[2],i=e[3]),(0,Z.useEffect)(r,i),null}function XP(e){let t=(0,Q.c)(7),n,r;t[0]===e?(n=t[1],r=t[2]):({children:n,...r}=e,t[0]=e,t[1]=n,t[2]=r);let i;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(i=(0,$.jsx)(YP,{}),t[3]=i):i=t[3];let a;return t[4]!==n||t[5]!==r?(a=(0,$.jsxs)(Lc,{...r,children:[i,n]}),t[4]=n,t[5]=r,t[6]=a):a=t[6],a}function ZP(){let e=(0,Q.c)(2),[t,n]=(0,Z.useState)(QP),r,i;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=()=>{let e=()=>n(!0),t=()=>n(!1);return window.addEventListener(`focus`,e),window.addEventListener(`blur`,t),()=>{window.removeEventListener(`focus`,e),window.removeEventListener(`blur`,t)}},i=[],e[0]=r,e[1]=i):(r=e[0],i=e[1]),(0,Z.useEffect)(r,i),t}function QP(){return document.hasFocus()}var $P=Ut(`chat.processing-threads`),eF=null;function tF(){eF??=new Audio(`/pop.wav`),eF.currentTime=0,eF.play().catch(e=>{$P.debug(`Could not play completion sound`,{err:e})})}function nF(){let e=Ks(),t=Vs(),n=X(e=>e.processingThreadIds),r=X(e=>e.completedThreadIds),i=ZP(),{activeMainTab:a,setChatNotification:o}=mc(),s=(0,Z.useRef)(null),c=(0,Z.useRef)(!1),l=(0,Z.useRef)([]),u=(0,Z.useRef)(i),d=(0,Z.useRef)(a);(0,Z.useEffect)(()=>{u.current=i},[i]),(0,Z.useEffect)(()=>{d.current=a,a===`chat`&&o(!1)},[a,o]);let f=(0,Z.useCallback)(async()=>{try{let n=await _o(),r=Sg(n.processingThreadIds),i=n.processingRuns.filter(e=>!xg(e.threadId)),a=t.getState().selectedThreadId,s=l.current.filter(e=>!r.includes(e)),c=a!==null&&s.includes(a);for(let t of s)t!==a&&e({type:Y.MarkThreadCompleted,threadId:t});if(r.length>0&&d.current!==`chat`&&o(!0),(r.length===0||c)&&o(!1),s.length>0&&!u.current&&tF(),s.length>0)try{Si();let t=await lo();e({type:Y.SetProjects,projects:t.projects,cloneRootPath:t.cloneRootPath})}catch(e){$P.error(`Failed to refresh projects after thread completion`,{err:e})}return l.current=r,e({type:Y.SetProcessingThreads,threadIds:r,processingRuns:i}),r}catch(e){return $P.error(`Failed to fetch processing threads`,{err:e}),[]}},[e,t]);return(0,Z.useEffect)(()=>{let e=()=>{if(s.current||c.current)return;c.current=!0;let e=async()=>{let n=await f(),r=t.getState(),i=Object.values(r.threadStreamingStates).some(e=>e.isStreaming);n.length>0||i||r.isCreatingProject?s.current=setTimeout(e,1e3):(s.current=null,c.current=!1)};e()},n=()=>{s.current&&=(clearTimeout(s.current),null),c.current=!1};return e(),()=>{n()}},[f]),{processingThreadIds:n,completedThreadIds:r,isThreadProcessing:e=>n.includes(e),isThreadCompleted:e=>r.includes(e),clearCompleted:(0,Z.useCallback)(t=>{e({type:Y.ClearThreadCompleted,threadId:t})},[e])}}var rF=768;function iF(){let e=(0,Q.c)(2),[t,n]=Z.useState(aF),r,i;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=()=>{let e=window.matchMedia(`(max-width: ${rF-1}px)`),t=()=>{n(window.innerWidth<rF)};return e.addEventListener(`change`,t),n(window.innerWidth<rF),()=>e.removeEventListener(`change`,t)},i=[],e[0]=r,e[1]=i):(r=e[0],i=e[1]),Z.useEffect(r,i),t}function aF(){return typeof window>`u`?!1:window.innerWidth<rF}function oF(){let e=(0,Q.c)(15),t=Ks(),[n,r]=(0,Z.useState)(!1),[i,a]=(0,Z.useState)(!1),o;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(o={queryKey:hy.onboarding.status(),queryFn:Do,staleTime:1/0,retry:1},e[0]=o):o=e[0];let s=vr(o),c;e[1]===Symbol.for(`react.memo_cache_sentinel`)?(c={queryKey:hy.app.update(),queryFn:Er,staleTime:1/0,retry:!1},e[1]=c):c=e[1];let l=vr(c),u,d;e[2]!==s.data||e[3]!==s.isSuccess?(u=()=>{s.isSuccess&&!s.data.onboardingCompleted&&r(!0)},d=[s.isSuccess,s.data],e[2]=s.data,e[3]=s.isSuccess,e[4]=u,e[5]=d):(u=e[4],d=e[5]),(0,Z.useEffect)(u,d);let f,p;e[6]!==t||e[7]!==n?(f=()=>{n||t({type:Y.ConfigUpdated})},p=[n,t],e[6]=t,e[7]=n,e[8]=f,e[9]=p):(f=e[8],p=e[9]),(0,Z.useEffect)(f,p);let m;e[10]===Symbol.for(`react.memo_cache_sentinel`)?(m=async()=>{a(!0);try{await ta()}catch{a(!1)}},e[10]=m):m=e[10];let h=m,g=l.data?.updateAvailable??!1,_;return e[11]!==n||e[12]!==g||e[13]!==i?(_={showOnboarding:n,setShowOnboarding:r,updateAvailable:g,updatingApp:i,handleUpdateApp:h},e[11]=n,e[12]=g,e[13]=i,e[14]=_):_=e[14],_}function sF(e){let t=(0,Q.c)(22),{selectedThreadId:n}=e,r=Yn(),i=Gn(),{activeMainTab:a,setActiveMainTab:o}=mc(),{openChatDockPanel:s}=Hd(),{terminalState:c}=Ps(n),l;t[0]===i.pathname?l=t[1]:(l=i.pathname.startsWith(`/settings`),t[0]=i.pathname,t[1]=l);let u=l,d=i.pathname===`/review`,f=i.pathname===`/tasks`,p=(0,Z.useRef)(null),m,h;t[2]!==f||t[3]!==r||t[4]!==s?(m=()=>{f&&(r(`/`),s(`tasks`))},h=[f,r,s],t[2]=f,t[3]=r,t[4]=s,t[5]=m,t[6]=h):(m=t[5],h=t[6]),(0,Z.useEffect)(m,h);let g,_;t[7]!==i.pathname||t[8]!==s||t[9]!==n||t[10]!==c.open?(g=()=>{c.open&&n===p.current&&!Vd(i.pathname)&&s(`terminal`),p.current=n},_=[c.open,n,i.pathname,s],t[7]=i.pathname,t[8]=s,t[9]=n,t[10]=c.open,t[11]=g,t[12]=_):(g=t[11],_=t[12]),(0,Z.useEffect)(g,_);let v,y;t[13]!==a||t[14]!==d||t[15]!==u||t[16]!==o?(v=()=>{a!==`chat`&&!u&&!d&&o(`chat`)},y=[a,d,u,o],t[13]=a,t[14]=d,t[15]=u,t[16]=o,t[17]=v,t[18]=y):(v=t[17],y=t[18]),(0,Z.useEffect)(v,y);let b;return t[19]!==d||t[20]!==u?(b={isSettingsRoute:u,isReviewRoute:d},t[19]=d,t[20]=u,t[21]=b):b=t[21],b}function cF(e,t){let n=(0,Q.c)(8),r=Ks(),i=X(lF),a=(0,Z.useRef)(null),o;n[0]!==r||n[1]!==t||n[2]!==e||n[3]!==i?(o=()=>{let n=e||t;if(n&&a.current===null)a.current=i,i&&r({type:Y.ToggleSidebar});else if(!n&&a.current!==null){let e=a.current;a.current=null,e&&!i&&r({type:Y.ToggleSidebar})}},n[0]=r,n[1]=t,n[2]=e,n[3]=i,n[4]=o):o=n[4];let s;n[5]!==t||n[6]!==e?(s=[e,t],n[5]=t,n[6]=e,n[7]=s):s=n[7],(0,Z.useEffect)(o,s)}function lF(e){return e.sidebarOpen}var uF=Og(`App`,{web:()=>us(()=>import(`./web-C_HuLxHj.js`).then(e=>new e.AppWeb),[])}),dF=1e10,fF=1e3;function pF(e,t){let n=e.map(e=>`"${e}"`).join(`, `);return Error(`This RPC instance cannot ${t} because the transport did not provide one or more of these methods: ${n}`)}function mF(e={}){let t={},n={},r;function i(e){n.unregisterHandler&&n.unregisterHandler(),n=e,n.registerHandler?.(x)}function a(e){if(typeof e==`function`){r=e;return}r=(t,n)=>{let r=e[t];if(r)return r(n);let i=e._;if(!i)throw Error(`The requested method has no handler: ${String(t)}`);return i(t,n)}}let{maxRequestTime:o=fF}=e;e.transport&&i(e.transport),e.requestHandler&&a(e.requestHandler),e._debugHooks&&(t=e._debugHooks);let s=0;function c(){return s<=dF?++s:s=0}let l=new Map,u=new Map;function d(e,...r){let i=r[0];return new Promise((r,a)=>{if(!n.send)throw pF([`send`],`make requests`);let s=c(),d={type:`request`,id:s,method:e,params:i};l.set(s,{resolve:r,reject:a}),o!==1/0&&u.set(s,setTimeout(()=>{u.delete(s),l.delete(s),a(Error(`RPC request timed out.`))},o)),t.onSend?.(d),n.send(d)})}let f=new Proxy(d,{get:(e,t,n)=>t in e?Reflect.get(e,t,n):e=>d(t,e)}),p=f;function m(e,...r){let i=r[0];if(!n.send)throw pF([`send`],`send messages`);let a={type:`message`,id:e,payload:i};t.onSend?.(a),n.send(a)}let h=new Proxy(m,{get:(e,t,n)=>t in e?Reflect.get(e,t,n):e=>m(t,e)}),g=h,_=new Map,v=new Set;function y(e,t){if(!n.registerHandler)throw pF([`registerHandler`],`register message listeners`);if(e===`*`){v.add(t);return}_.has(e)||_.set(e,new Set),_.get(e).add(t)}function b(e,t){if(e===`*`){v.delete(t);return}_.get(e)?.delete(t),_.get(e)?.size===0&&_.delete(e)}async function x(e){if(t.onReceive?.(e),!(`type`in e))throw Error(`Message does not contain a type.`);if(e.type===`request`){if(!n.send||!r)throw pF([`send`,`requestHandler`],`handle requests`);let{id:i,method:a,params:o}=e,s;try{s={type:`response`,id:i,success:!0,payload:await r(a,o)}}catch(e){if(!(e instanceof Error))throw e;s={type:`response`,id:i,success:!1,error:e.message}}t.onSend?.(s),n.send(s);return}if(e.type===`response`){let t=u.get(e.id);t!=null&&clearTimeout(t),u.delete(e.id);let{resolve:n,reject:r}=l.get(e.id)??{};l.delete(e.id),e.success?n?.(e.payload):r?.(Error(e.error));return}if(e.type===`message`){for(let t of v)t(e.id,e.payload);let t=_.get(e.id);if(!t)return;for(let n of t)n(e.payload);return}throw Error(`Unexpected RPC message type: ${e.type}`)}return{setTransport:i,setRequestHandler:a,request:f,requestProxy:p,send:h,sendProxy:g,addMessageListener:y,removeMessageListener:b,proxy:{send:g,request:p}}}function hF(e,t){let n=mF({maxRequestTime:t.maxRequestTime,requestHandler:{...t.handlers.requests,...t.extraRequestHandlers},transport:{registerHandler:()=>{}}}),r=t.handlers.messages;return r&&n.addMessageListener(`*`,((e,t)=>{let n=r[`*`];n&&n(e,t);let i=r[e];i&&i(t)})),n}var gF=window.__electrobunWebviewId,_F=window.__electrobunRpcSocketPort,vF=class{bunSocket;rpc;rpcHandler;constructor(e){this.rpc=e.rpc,this.init()}init(){this.initSocketToBun(),window.__electrobun.receiveMessageFromBun=this.receiveMessageFromBun.bind(this),this.rpc&&this.rpc.setTransport(this.createTransport())}initSocketToBun(){let e=new WebSocket(`ws://localhost:${_F}/socket?webviewId=${gF}`);this.bunSocket=e,e.addEventListener(`open`,()=>{}),e.addEventListener(`message`,async e=>{let t=e.data;if(typeof t==`string`)try{let e=JSON.parse(t),n=await window.__electrobun_decrypt(e.encryptedData,e.iv,e.tag);this.rpcHandler?.(JSON.parse(n))}catch(e){console.error(`Error parsing bun message:`,e)}else t instanceof Blob||console.error(`UNKNOWN DATA TYPE RECEIVED:`,e.data)}),e.addEventListener(`error`,e=>{console.error(`Socket error:`,e)}),e.addEventListener(`close`,e=>{})}createTransport(){let e=this;return{send(t){try{let n=JSON.stringify(t);e.bunBridge(n)}catch(e){console.error(`bun: failed to serialize message to webview`,e)}},registerHandler(t){e.rpcHandler=t}}}async bunBridge(e){if(this.bunSocket?.readyState===WebSocket.OPEN)try{let{encryptedData:t,iv:n,tag:r}=await window.__electrobun_encrypt(e),i=JSON.stringify({encryptedData:t,iv:n,tag:r});this.bunSocket.send(i);return}catch(e){console.error(`Error sending message to bun via socket:`,e)}window.__electrobunBunBridge?.postMessage(e)}receiveMessageFromBun(e){this.rpcHandler&&this.rpcHandler(e)}static defineRPC(e){return hF(`webview`,{...e,extraRequestHandlers:{evaluateJavascriptWithResponse:({script:e})=>new Promise(t=>{try{let n=Function(e)();n instanceof Promise?n.then(e=>{t(e)}).catch(e=>{console.error(`bun: async script execution failed`,e),t(String(e))}):t(n)}catch(e){console.error(`bun: failed to eval script`,e),t(String(e))}})}})}},yF=null;function bF(e){yF?.send.setWindowLabel({label:e})}function xF(e){yF?.send.openProjectIconDialog({startingFolder:e})}function SF(e){let t=(0,Z.useRef)(e);t.current=e,(0,Z.useEffect)(()=>{window.__electrobunWebviewId&&(yF=vF.defineRPC({handlers:{requests:{},messages:{openTarskUrl:function({url:e}){t.current?.(e)},projectIconSelected:function({dataUrl:e}){window.dispatchEvent(new CustomEvent(`tarsk:project-icon-selected`,{detail:{dataUrl:e}}))}}}}),new vF({rpc:yF}))},[]),(0,Z.useEffect)(()=>{if(!Za())return;let e=uF.addListener(`backButton`,({canGoBack:e})=>{e?window.history.back():uF.exitApp()});return()=>{e.then(e=>e.remove())}},[])}var CF=Ut(`app.embed-host.hook`);function wF(e){let t=(0,Q.c)(7),n=Ks(),r=X(TF),i=(0,Z.useRef)(null),a,o;t[0]===n?(a=t[1],o=t[2]):(a=()=>{OO()&&n({type:Y.CloseSidebar})},o=[n],t[0]=n,t[1]=a,t[2]=o),(0,Z.useEffect)(a,o);let s,c;t[3]!==e||t[4]!==r?(s=()=>{if(!OO()||r)return;let t=DO();!t||i.current===t||(i.current=t,e(t).catch(e=>{i.current=null,CF.error(`Failed to open embed project path:`,e)}))},c=[r,e],t[3]=e,t[4]=r,t[5]=s,t[6]=c):(s=t[5],c=t[6]),(0,Z.useEffect)(s,c)}function TF(e){return e.projectsLoading}function EF(e){let t=e.replace(/\.zip$/i,``);return/-source-code$/i.test(t)?t.replace(/-source-code$/i,``):/\s+source\s+code$/i.test(t)?t.replace(/\s+source\s+code$/i,``):null}function DF(e){return e.trim().toLowerCase().replace(/[\\/]+/g,` `).replace(/[^a-z0-9._ -]+/g,``).replace(/\s+/g,`-`).replace(/-+/g,`-`).replace(/^-|-$/g,``)}function OF(e,t){let n=EF(e);if(!n)return null;let r=DF(n);return r?t.find(e=>DF(Ke(e))===r)??null:null}var kF=Ut(`app.merged-pr-dialog-host.ui`),AF=(0,Z.lazy)(()=>us(()=>import(`./merged-pr-dialog-BerRzLlh.js`).then(e=>({default:e.MergedPRDialog})),__vite__mapDeps([38,4,1,5])));function jF({threadId:e,projectId:t}){let n=Ks(),r=X(e=>e.projects.find(e=>e.projectId===t)),i=Nd(),[a,o]=(0,Z.useState)(!1),[s,c]=(0,Z.useState)(!1),l=(0,Z.useRef)(null),[u,d]=(0,Z.useState)(()=>aT());(0,Z.useEffect)(()=>{oT(u)},[u]),(0,Z.useEffect)(()=>pT(()=>{l.current=e,o(!0)}),[e]),(0,Z.useEffect)(()=>{i.prExists&&i.prState===`MERGED`&&l.current!==e&&(l.current=e,o(!0))},[i.prExists,i.prState,e]);async function f(){try{c(!0);let r=await Po(e);if(u.newChatOnNewBranch){let r=`New Chat`;await Qa(e,{title:r}),n({type:Y.UpdateThreadTitle,projectId:t,threadId:e,title:r});let i=await Io(e);n({type:Y.ClearMessages,conversationId:i})}Si();let a=await lo();n({type:Y.SetProjects,projects:a.projects,cloneRootPath:a.cloneRootPath}),ac({title:`New branch created`,description:`Created new branch "${r.branchName}" from the latest default branch`}),o(!1),await i.fetchUnifiedStatus(!0),setTimeout(()=>void i.fetchUnifiedStatus(!0),1500)}catch(e){kF.error(`Failed to create new branch:`,e),ac({title:`Failed to create new branch`,description:e instanceof Error?e.message:`Unknown error occurred`,variant:`destructive`})}finally{c(!1)}}function p(){o(!1),i.fetchUnifiedStatus(!0)}return a?(0,$.jsx)(Z.Suspense,{fallback:null,children:(0,$.jsx)(AF,{open:a,onOpenChange:o,onNewBranch:f,onJustOpen:p,newChatOnNewBranch:u.newChatOnNewBranch,onNewChatOnNewBranchChange:e=>d(t=>({...t,newChatOnNewBranch:e})),isLoading:s,projectName:r?.name})}):null}function MF(e){if(e.port!=null&&e.pid!=null){let t=e.command?`${e.command} `:``;return`Port ${e.port} is in use by ${t}(PID ${e.pid}). Kill it and retry starting the dev server?`}return e.port==null?`The dev server port is already in use. Kill the blocking process and retry?`:`Port ${e.port} is already in use. Kill the process on that port and retry?`}function NF(){let e=(0,Q.c)(28),{portConflictPrompt:t,clearPortConflictPrompt:n}=gw(),r;e[0]!==n||e[1]!==t?(r=function(e){!e&&t&&(t.resolve(!1),n())},e[0]=n,e[1]=t,e[2]=r):r=e[2];let i=r,a;e[3]!==n||e[4]!==t?(a=function(){t?.resolve(!1),n()},e[3]=n,e[4]=t,e[5]=a):a=e[5];let o=a,s;e[6]!==n||e[7]!==t?(s=function(){t?.resolve(!0),n()},e[6]=n,e[7]=t,e[8]=s):s=e[8];let c=s,l=t!=null,u;e[9]===Symbol.for(`react.memo_cache_sentinel`)?(u=(0,$.jsx)(sc,{children:`Port already in use`}),e[9]=u):u=e[9];let d;e[10]===t?d=e[11]:(d=t?MF(t):null,e[10]=t,e[11]=d);let f;e[12]===d?f=e[13]:(f=(0,$.jsxs)(fc,{children:[u,(0,$.jsx)(oc,{children:d})]}),e[12]=d,e[13]=f);let p;e[14]===o?p=e[15]:(p=(0,$.jsx)(dc,{onClick:o,children:`Cancel`}),e[14]=o,e[15]=p);let m;e[16]===c?m=e[17]:(m=(0,$.jsx)(lc,{onClick:c,children:`Kill and retry`}),e[16]=c,e[17]=m);let h;e[18]!==p||e[19]!==m?(h=(0,$.jsxs)(uc,{children:[p,m]}),e[18]=p,e[19]=m,e[20]=h):h=e[20];let g;e[21]!==f||e[22]!==h?(g=(0,$.jsxs)(cc,{children:[f,h]}),e[21]=f,e[22]=h,e[23]=g):g=e[23];let _;return e[24]!==i||e[25]!==g||e[26]!==l?(_=(0,$.jsx)(pc,{open:l,onOpenChange:i,children:g}),e[24]=i,e[25]=g,e[26]=l,e[27]=_):_=e[27],_}function PF(e){let t=(0,Q.c)(3),{children:n}=e,r;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,$.jsx)(NF,{}),t[0]=r):r=t[0];let i;return t[1]===n?i=t[2]:(i=(0,$.jsx)(hc,{children:(0,$.jsx)(_c,{children:(0,$.jsxs)(hw,{children:[r,(0,$.jsx)(yc,{children:(0,$.jsx)(QO,{children:n})})]})})}),t[1]=n,t[2]=i),i}function FF(e){let t=(0,Q.c)(5),n=Gn(),{windows:r,expandedWindowId:i}=gc();if(n.pathname===`/review`)return`Review`;if(n.pathname.startsWith(`/settings`))return`Settings`;if(!e)return`Projects`;if(i){let e;if(t[0]!==i||t[1]!==r){e=Symbol.for(`react.early_return_sentinel`);bb0:{let n;t[3]===i?n=t[4]:(n=e=>e.id===i,t[3]=i,t[4]=n);let a=r.find(n);if(a){e=HO(a.panelId);break bb0}}t[0]=i,t[1]=r,t[2]=e}else e=t[2];if(e!==Symbol.for(`react.early_return_sentinel`))return e}return`Chat`}function IF(){let e=(0,Q.c)(6),t=X(zF),n=X(RF),r=X(LF)===`projects`,i=FF(n!=null&&!r),a,o;e[0]!==r||e[1]!==t||e[2]!==n||e[3]!==i?(a=()=>{if(!n||r){document.title=`Tarsk - ${i}`,bF(`Projects`);return}let e=t.find(e=>e.projectId===n);if(!e){document.title=`Tarsk`,bF(`Projects`);return}let a=Ke(e);document.title=`${a} - ${i}`,bF(a)},o=[r,t,n,i],e[0]=r,e[1]=t,e[2]=n,e[3]=i,e[4]=a,e[5]=o):(a=e[4],o=e[5]),(0,Z.useEffect)(a,o)}function LF(e){return e.projectPanelView}function RF(e){return e.selectedProjectId}function zF(e){return e.projects}var BF=`tarsk.ui-crash-report`,VF=8e3,HF=2e3,UF=0,WF=``;function GF(e,t){if(e)return e.length<=t?e:`${e.slice(0,t)}…`}function KF(e,t){if(e instanceof DOMException&&e.name===`AbortError`||e instanceof Error&&e.name===`AbortError`)return!0;let n=t.trim().toLowerCase();return n===`fetch is aborted`||n.includes(`the operation was aborted`)||n.includes(`bodystreambuffer was aborted`)}function qF(e,t){return e instanceof Error&&e.name===`Canceled`?!0:t.trim()===`Canceled`}function JF(e,t){return e instanceof Error&&e.name===`Canceled`?!1:t.includes(`TextModel got disposed before DiffEditorWidget model got reset`)}function YF(e,t){return e instanceof Error?!1:t.trim().toLowerCase()===`script error.`}function XF(e){let{message:t}=ZF(e);return t.includes(`ResizeObserver loop`)||KF(e,t)||qF(e,t)||JF(e,t)||YF(e,t)}function ZF(e){if(e instanceof Error)return{message:e.message||e.name||`Unknown error`,stack:e.stack};if(typeof e==`string`)return{message:e.trim()||`Unknown error`};if(e&&typeof e==`object`&&`message`in e){let t=e.message;if(typeof t==`string`&&t.trim())return{message:t.trim()}}try{return{message:JSON.stringify(e)}}catch{return{message:String(e)}}}function QF(e,t,n){let r=ZF(e);return{message:r.message,stack:GF(r.stack,VF),componentStack:GF(n?.trim(),VF),source:t,url:typeof window<`u`?window.location.href:``,userAgent:typeof navigator<`u`?navigator.userAgent:``,timestamp:new Date().toISOString()}}function $F(e){let t=Date.now();return e===WF&&t-UF<HF?!0:(WF=e,UF=t,!1)}function eI(){if(typeof localStorage>`u`)return null;let e=localStorage.getItem(BF);if(!e)return null;try{let t=JSON.parse(e);return!t||typeof t.message!=`string`||typeof t.timestamp!=`string`?null:{message:t.message,stack:typeof t.stack==`string`?t.stack:void 0,componentStack:typeof t.componentStack==`string`?t.componentStack:void 0,source:t.source===`window.error`||t.source===`unhandledrejection`||t.source===`react`?t.source:`window.error`,url:typeof t.url==`string`?t.url:``,userAgent:typeof t.userAgent==`string`?t.userAgent:``,timestamp:t.timestamp}}catch{return null}}function tI(){typeof localStorage>`u`||localStorage.removeItem(BF)}function nI(e,t){let n=QF(e,t.source,t.componentStack);if(!$F(n.message)&&typeof localStorage<`u`)try{localStorage.setItem(BF,JSON.stringify(n))}catch{}return n}function rI(e){let t=[`Tarsk UI crash report`,`Time: ${e.timestamp}`,`Source: ${e.source}`,`URL: ${e.url||`(unknown)`}`,`Message: ${e.message}`];return e.stack&&t.push(``,`Stack:`,e.stack),e.componentStack&&t.push(``,`Component stack:`,e.componentStack),e.userAgent&&t.push(``,`User agent: ${e.userAgent}`),t.join(`
3358
- `)}function iI(e){if(typeof window>`u`)return;let t=e?.shouldIgnore;window.addEventListener(`error`,e=>{let n=e.error??e.message;t?.(n)||XF(n)||nI(n,{source:`window.error`})}),window.addEventListener(`unhandledrejection`,e=>{if(t?.(e.reason)||XF(e.reason)){e.preventDefault();return}nI(e.reason,{source:`unhandledrejection`})})}function aI(e){let t=new Date(e);return Number.isNaN(t.getTime())?e:t.toLocaleString()}function oI({open:e,report:t,variant:n,onDismiss:r,onReload:i}){let[a,o]=(0,Z.useState)(!1),[s,c]=(0,Z.useState)(!1);async function l(){c(!0);try{await navigator.clipboard.writeText(rI(t)),o(!0),window.setTimeout(()=>o(!1),2e3)}catch{o(!1)}finally{c(!1)}}let u=[t.stack,t.componentStack?`Component stack:\n${t.componentStack}`:void 0].filter(Boolean).join(`
3355
+ `),n=Un.singletonList(er.INITIAL_STATE);for(let r=0;r<this.text.length;r++){let i,a=r+1<this.text.length?this.text[r+1]:0;switch(this.text[r]){case E.getCharCode(`\r`):i=a===t?2:0;break;case E.getCharCode(`.`):i=a===e?3:0;break;case E.getCharCode(`,`):i=a===e?4:0;break;case E.getCharCode(`:`):i=a===e?5:0;break;default:i=0}i>0?(n=rr.updateStateListForPair(n,r,i),r++):n=this.updateStateListForChar(n,r)}return Un.min(n,(e,t)=>e.getBitCount()-t.getBitCount()).toBitArray(this.text)}updateStateListForChar(e,t){let n=[];for(let r of e)this.updateStateForChar(r,t,n);return rr.simplifyStates(n)}updateStateForChar(e,t,n){let r=this.text[t]&255,i=nr[e.getMode()][r]>0,a=null;for(let o=0;o<=4;o++){let s=nr[o][r];if(s>0){if(a??=e.endBinaryShift(t),!i||o===e.getMode()||o===2){let e=a.latchAndAppend(o,s);n.push(e)}if(!i&&$n[e.getMode()][o]>=0){let e=a.shiftAndAppend(o,s);n.push(e)}}}if(e.getBinaryShiftByteCount()>0||nr[e.getMode()][r]===0){let r=e.addBinaryShiftChar(t);n.push(r)}}static updateStateListForPair(e,t,n){let r=[];for(let i of e)this.updateStateForPair(i,t,n,r);return this.simplifyStates(r)}static updateStateForPair(e,t,n,r){let i=e.endBinaryShift(t);if(r.push(i.latchAndAppend(4,n)),e.getMode()!==4&&r.push(i.shiftAndAppend(4,n)),n===3||n===4){let e=i.latchAndAppend(2,16-n).latchAndAppend(2,1);r.push(e)}if(e.getBinaryShiftByteCount()>0){let n=e.addBinaryShiftChar(t).addBinaryShiftChar(t+1);r.push(n)}}static simplifyStates(e){let t=[];for(let n of e){let e=!0;for(let r of t){if(r.isBetterThanOrEqualTo(n)){e=!1;break}n.isBetterThanOrEqualTo(r)&&(t=t.filter(e=>e!==r))}e&&t.push(n)}return t}}class ir{constructor(){}static encodeBytes(e){return ir.encode(e,ir.DEFAULT_EC_PERCENT,ir.DEFAULT_AZTEC_LAYERS)}static encode(e,t,n){let r=new rr(e).encode(),i=_.truncDivision(r.getSize()*t,100)+11,a=r.getSize()+i,o,s,c,u,d;if(n!==ir.DEFAULT_AZTEC_LAYERS){if(o=n<0,s=Math.abs(n),s>(o?ir.MAX_NB_BITS_COMPACT:ir.MAX_NB_BITS))throw new l(E.format(`Illegal value %s for layers`,n));c=ir.totalBitsInLayer(s,o),u=ir.WORD_SIZE[s];let e=c-c%u;if(d=ir.stuffBits(r,u),d.getSize()+i>e||o&&d.getSize()>u*64)throw new l(`Data to large for user specified layer`)}else{u=0,d=null;for(let e=0;;e++){if(e>ir.MAX_NB_BITS)throw new l(`Data too large for an Aztec code`);if(o=e<=3,s=o?e+1:e,c=ir.totalBitsInLayer(s,o),a>c)continue;(d==null||u!==ir.WORD_SIZE[s])&&(u=ir.WORD_SIZE[s],d=ir.stuffBits(r,u));let t=c-c%u;if(!(o&&d.getSize()>u*64)&&d.getSize()+i<=t)break}}let f=ir.generateCheckWords(d,c,u),p=d.getSize()/u,m=ir.generateModeMessage(o,s,p),h=(o?11:14)+s*4,g=new Int32Array(h),v;if(o){v=h;for(let e=0;e<g.length;e++)g[e]=e}else{v=h+1+2*_.truncDivision(_.truncDivision(h,2)-1,15);let e=_.truncDivision(h,2),t=_.truncDivision(v,2);for(let n=0;n<e;n++){let r=n+_.truncDivision(n,15);g[e-n-1]=t-r-1,g[e+n]=t+r+1}}let y=new O(v);for(let e=0,t=0;e<s;e++){let n=(s-e)*4+(o?9:12);for(let r=0;r<n;r++){let i=r*2;for(let a=0;a<2;a++)f.get(t+i+a)&&y.set(g[e*2+a],g[e*2+r]),f.get(t+n*2+i+a)&&y.set(g[e*2+r],g[h-1-e*2-a]),f.get(t+n*4+i+a)&&y.set(g[h-1-e*2-a],g[h-1-e*2-r]),f.get(t+n*6+i+a)&&y.set(g[h-1-e*2-r],g[e*2+a])}t+=n*8}if(ir.drawModeMessage(y,o,v,m),o)ir.drawBullsEye(y,_.truncDivision(v,2),5);else{ir.drawBullsEye(y,_.truncDivision(v,2),7);for(let e=0,t=0;e<_.truncDivision(h,2)-1;e+=15,t+=16)for(let e=_.truncDivision(v,2)&1;e<v;e+=2)y.set(_.truncDivision(v,2)-t,e),y.set(_.truncDivision(v,2)+t,e),y.set(e,_.truncDivision(v,2)-t),y.set(e,_.truncDivision(v,2)+t)}let b=new Hn;return b.setCompact(o),b.setSize(v),b.setLayers(s),b.setCodeWords(p),b.setMatrix(y),b}static drawBullsEye(e,t,n){for(let r=0;r<n;r+=2)for(let n=t-r;n<=t+r;n++)e.set(n,t-r),e.set(n,t+r),e.set(t-r,n),e.set(t+r,n);e.set(t-n,t-n),e.set(t-n+1,t-n),e.set(t-n,t-n+1),e.set(t+n,t-n),e.set(t+n,t-n+1),e.set(t+n,t+n-1)}static generateModeMessage(e,t,n){let r=new v;return e?(r.appendBits(t-1,2),r.appendBits(n-1,6),r=ir.generateCheckWords(r,28,4)):(r.appendBits(t-1,5),r.appendBits(n-1,11),r=ir.generateCheckWords(r,40,4)),r}static drawModeMessage(e,t,n,r){let i=_.truncDivision(n,2);if(t)for(let t=0;t<7;t++){let n=i-3+t;r.get(t)&&e.set(n,i-5),r.get(t+7)&&e.set(i+5,n),r.get(20-t)&&e.set(n,i+5),r.get(27-t)&&e.set(i-5,n)}else for(let t=0;t<10;t++){let n=i-5+t+_.truncDivision(t,5);r.get(t)&&e.set(n,i-7),r.get(t+10)&&e.set(i+7,n),r.get(29-t)&&e.set(n,i+7),r.get(39-t)&&e.set(i-7,n)}}static generateCheckWords(e,t,n){let r=e.getSize()/n,i=new Dn(ir.getGF(n)),a=_.truncDivision(t,n),o=ir.bitsToWords(e,n,a);i.encode(o,a-r);let s=t%n,c=new v;c.appendBits(0,s);for(let e of Array.from(o))c.appendBits(e,n);return c}static bitsToWords(e,t,n){let r=new Int32Array(n),i,a;for(i=0,a=e.getSize()/t;i<a;i++){let n=0;for(let r=0;r<t;r++)n|=e.get(i*t+r)?1<<t-r-1:0;r[i]=n}return r}static getGF(e){switch(e){case 4:return ie.AZTEC_PARAM;case 6:return ie.AZTEC_DATA_6;case 8:return ie.AZTEC_DATA_8;case 10:return ie.AZTEC_DATA_10;case 12:return ie.AZTEC_DATA_12;default:throw new l(`Unsupported word size `+e)}}static stuffBits(e,t){let n=new v,r=e.getSize(),i=(1<<t)-2;for(let a=0;a<r;a+=t){let o=0;for(let n=0;n<t;n++)(a+n>=r||e.get(a+n))&&(o|=1<<t-1-n);(o&i)===i?(n.appendBits(o&i,t),a--):(o&i)===0?(n.appendBits(o|1,t),a--):n.appendBits(o,t)}return n}static totalBitsInLayer(e,t){return((t?88:112)+16*e)*e}}ir.DEFAULT_EC_PERCENT=33,ir.DEFAULT_AZTEC_LAYERS=0,ir.MAX_NB_BITS=32,ir.MAX_NB_BITS_COMPACT=4,ir.WORD_SIZE=Int32Array.from([4,6,6,8,8,8,8,8,8,10,10,10,10,10,10,10,10,10,10,10,10,10,10,12,12,12,12,12,12,12,12,12,12]);class ar{encode(e,t,n,r){return this.encodeWithHints(e,t,n,r,null)}encodeWithHints(e,t,n,r,i){let a=Vn.ISO_8859_1,o=ir.DEFAULT_EC_PERCENT,s=ir.DEFAULT_AZTEC_LAYERS;return i!=null&&(i.has(En.CHARACTER_SET)&&(a=Bn.forName(i.get(En.CHARACTER_SET).toString())),i.has(En.ERROR_CORRECTION)&&(o=_.parseInt(i.get(En.ERROR_CORRECTION).toString())),i.has(En.AZTEC_LAYERS)&&(s=_.parseInt(i.get(En.AZTEC_LAYERS).toString()))),ar.encodeLayers(e,t,n,r,a,o,s)}static encodeLayers(e,t,n,r,i,a,o){if(t!==B.AZTEC)throw new l(`Can only encode AZTEC, but got `+t);let s=ir.encode(E.getBytes(e,i),a,o);return ar.renderResult(s,n,r)}static renderResult(e,t,n){let r=e.getMatrix();if(r==null)throw new oe;let i=r.getWidth(),a=r.getHeight(),o=Math.max(t,i),s=Math.max(n,a),c=Math.min(o/i,s/a),l=(o-i*c)/2,u=(s-a*c)/2,d=new O(o,s);for(let e=0,t=u;e<a;e++,t+=c)for(let n=0,a=l;n<i;n++,a+=c)r.get(n,e)&&d.setRegion(a,t,c,c);return d}}e.AbstractExpandedDecoder=Je,e.ArgumentException=c,e.ArithmeticException=re,e.AztecCode=Hn,e.AztecCodeReader=be,e.AztecCodeWriter=ar,e.AztecDecoder=ce,e.AztecDetector=ye,e.AztecDetectorResult=fe,e.AztecEncoder=ir,e.AztecHighLevelEncoder=rr,e.AztecPoint=ve,e.BarcodeFormat=B,e.Binarizer=f,e.BinaryBitmap=u,e.BitArray=v,e.BitMatrix=O,e.BitSource=_t,e.BrowserAztecCodeReader=xe,e.BrowserBarcodeReader=G,e.BrowserCodeReader=L,e.BrowserDatamatrixCodeReader=Ct,e.BrowserMultiFormatReader=Sn,e.BrowserPDF417Reader=Cn,e.BrowserQRCodeReader=wn,e.BrowserQRCodeSvgWriter=Fn,e.CharacterSetECI=C,e.ChecksumException=d,e.Code128Reader=Ce,e.Code39Reader=we,e.DataMatrixDecodedBitStreamParser=yt,e.DataMatrixReader=St,e.DecodeHintType=b,e.DecoderResult=ee,e.DefaultGridSampler=ge,e.DetectorResult=de,e.EAN13Reader=je,e.EncodeHintType=En,e.Exception=s,e.FormatException=x,e.GenericGF=ie,e.GenericGFPoly=ne,e.GlobalHistogramBinarizer=A,e.GridSampler=me,e.GridSamplerInstance=_e,e.HTMLCanvasElementLuminanceSource=P,e.HybridBinarizer=j,e.ITFReader=Te,e.IllegalArgumentException=l,e.IllegalStateException=oe,e.InvertedLuminanceSource=N,e.LuminanceSource=M,e.MathUtils=le,e.MultiFormatOneDReader=dt,e.MultiFormatReader=xn,e.MultiFormatWriter=Ln,e.NotFoundException=k,e.OneDReader=Se,e.PDF417DecodedBitStreamParser=J,e.PDF417DecoderErrorCorrection=Xt,e.PDF417Reader=yn,e.PDF417ResultMetadata=sn,e.PerspectiveTransform=he,e.PlanarYUVLuminanceSource=Rn,e.QRCodeByteMatrix=kn,e.QRCodeDataMask=kt,e.QRCodeDecodedBitStreamParser=Pt,e.QRCodeDecoderErrorCorrectionLevel=Tt,e.QRCodeDecoderFormatInformation=Et,e.QRCodeEncoder=Pn,e.QRCodeEncoderQRCode=An,e.QRCodeMaskUtil=On,e.QRCodeMatrixUtil=Mn,e.QRCodeMode=Nt,e.QRCodeReader=Ut,e.QRCodeVersion=Dt,e.QRCodeWriter=In,e.RGBLuminanceSource=zn,e.RSS14Reader=ut,e.RSSExpandedReader=ct,e.ReaderException=bn,e.ReedSolomonDecoder=se,e.ReedSolomonEncoder=Dn,e.ReedSolomonException=ae,e.Result=R,e.ResultMetadataType=H,e.ResultPoint=W,e.StringUtils=E,e.UnsupportedOperationException=w,e.VideoInputDevice=F,e.WhiteRectangleDetector=pe,e.WriterException=jn,e.ZXingArrays=g,e.ZXingCharset=Bn,e.ZXingInteger=_,e.ZXingStandardCharsets=Vn,e.ZXingStringBuilder=D,e.ZXingStringEncoding=T,e.ZXingSystem=p,e.createAbstractExpandedDecoder=at,Object.defineProperty(e,"__esModule",{value:!0})}))}))()),tN=function(){function e(e,t,n){if(this.formatMap=new Map([[LM.QR_CODE,eN.BarcodeFormat.QR_CODE],[LM.AZTEC,eN.BarcodeFormat.AZTEC],[LM.CODABAR,eN.BarcodeFormat.CODABAR],[LM.CODE_39,eN.BarcodeFormat.CODE_39],[LM.CODE_93,eN.BarcodeFormat.CODE_93],[LM.CODE_128,eN.BarcodeFormat.CODE_128],[LM.DATA_MATRIX,eN.BarcodeFormat.DATA_MATRIX],[LM.MAXICODE,eN.BarcodeFormat.MAXICODE],[LM.ITF,eN.BarcodeFormat.ITF],[LM.EAN_13,eN.BarcodeFormat.EAN_13],[LM.EAN_8,eN.BarcodeFormat.EAN_8],[LM.PDF_417,eN.BarcodeFormat.PDF_417],[LM.RSS_14,eN.BarcodeFormat.RSS_14],[LM.RSS_EXPANDED,eN.BarcodeFormat.RSS_EXPANDED],[LM.UPC_A,eN.BarcodeFormat.UPC_A],[LM.UPC_E,eN.BarcodeFormat.UPC_E],[LM.UPC_EAN_EXTENSION,eN.BarcodeFormat.UPC_EAN_EXTENSION]]),this.reverseFormatMap=this.createReverseFormatMap(),!eN)throw`Use html5qrcode.min.js without edit, ZXing not found.`;this.verbose=t,this.logger=n;var r=this.createZXingFormats(e),i=new Map;i.set(eN.DecodeHintType.POSSIBLE_FORMATS,r),i.set(eN.DecodeHintType.TRY_HARDER,!1),this.hints=i}return e.prototype.decodeAsync=function(e){var t=this;return new Promise(function(n,r){try{n(t.decode(e))}catch(e){r(e)}})},e.prototype.decode=function(e){var t=new eN.MultiFormatReader(this.verbose,this.hints),n=new eN.HTMLCanvasElementLuminanceSource(e),r=new eN.BinaryBitmap(new eN.HybridBinarizer(n)),i=t.decode(r);return{text:i.text,format:UM.create(this.toHtml5QrcodeSupportedFormats(i.format)),debugData:this.createDebugData()}},e.prototype.createReverseFormatMap=function(){var e=new Map;return this.formatMap.forEach(function(t,n,r){e.set(t,n)}),e},e.prototype.toHtml5QrcodeSupportedFormats=function(e){if(!this.reverseFormatMap.has(e))throw`reverseFormatMap doesn't have ${e}`;return this.reverseFormatMap.get(e)},e.prototype.createZXingFormats=function(e){for(var t=[],n=0,r=e;n<r.length;n++){var i=r[n];this.formatMap.has(i)?t.push(this.formatMap.get(i)):this.logger.logError(`${i} is not supported byZXingHtml5QrcodeShim`)}return t},e.prototype.createDebugData=function(){return{decoderName:`zxing-js`}},e}(),nN=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},rN=function(e,t){var n={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]},r,i,a,o;return o={next:s(0),throw:s(1),return:s(2)},typeof Symbol==`function`&&(o[Symbol.iterator]=function(){return this}),o;function s(e){return function(t){return c([e,t])}}function c(s){if(r)throw TypeError(`Generator is already executing.`);for(;o&&(o=0,s[0]&&(n=0)),n;)try{if(r=1,i&&(a=s[0]&2?i.return:s[0]?i.throw||((a=i.return)&&a.call(i),0):i.next)&&!(a=a.call(i,s[1])).done)return a;switch(i=0,a&&(s=[s[0]&2,a.value]),s[0]){case 0:case 1:a=s;break;case 4:return n.label++,{value:s[1],done:!1};case 5:n.label++,i=s[1],s=[0];continue;case 7:s=n.ops.pop(),n.trys.pop();continue;default:if((a=n.trys,!(a=a.length>0&&a[a.length-1]))&&(s[0]===6||s[0]===2)){n=0;continue}if(s[0]===3&&(!a||s[1]>a[0]&&s[1]<a[3])){n.label=s[1];break}if(s[0]===6&&n.label<a[1]){n.label=a[1],a=s;break}if(a&&n.label<a[2]){n.label=a[2],n.ops.push(s);break}a[2]&&n.ops.pop(),n.trys.pop();continue}s=t.call(e,n)}catch(e){s=[6,e],i=0}finally{r=a=0}if(s[0]&5)throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}},iN=function(){function e(t,n,r){if(this.formatMap=new Map([[LM.QR_CODE,`qr_code`],[LM.AZTEC,`aztec`],[LM.CODABAR,`codabar`],[LM.CODE_39,`code_39`],[LM.CODE_93,`code_93`],[LM.CODE_128,`code_128`],[LM.DATA_MATRIX,`data_matrix`],[LM.ITF,`itf`],[LM.EAN_13,`ean_13`],[LM.EAN_8,`ean_8`],[LM.PDF_417,`pdf417`],[LM.UPC_A,`upc_a`],[LM.UPC_E,`upc_e`]]),this.reverseFormatMap=this.createReverseFormatMap(),!e.isSupported())throw`Use html5qrcode.min.js without edit, Use BarcodeDetectorDelegate only if it isSupported();`;this.verbose=n,this.logger=r;var i=this.createBarcodeDetectorFormats(t);if(this.detector=new BarcodeDetector(i),!this.detector)throw`BarcodeDetector detector not supported`}return e.isSupported=function(){return`BarcodeDetector`in window?new BarcodeDetector({formats:[`qr_code`]})!==void 0:!1},e.prototype.decodeAsync=function(e){return nN(this,void 0,void 0,function(){var t,n;return rN(this,function(r){switch(r.label){case 0:return[4,this.detector.detect(e)];case 1:if(t=r.sent(),!t||t.length===0)throw`No barcode or QR code detected.`;return n=this.selectLargestBarcode(t),[2,{text:n.rawValue,format:UM.create(this.toHtml5QrcodeSupportedFormats(n.format)),debugData:this.createDebugData()}]}})})},e.prototype.selectLargestBarcode=function(e){for(var t=null,n=0,r=0,i=e;r<i.length;r++){var a=i[r],o=a.boundingBox.width*a.boundingBox.height;o>n&&(n=o,t=a)}if(!t)throw`No largest barcode found`;return t},e.prototype.createBarcodeDetectorFormats=function(e){for(var t=[],n=0,r=e;n<r.length;n++){var i=r[n];this.formatMap.has(i)?t.push(this.formatMap.get(i)):this.logger.warn(`${i} is not supported byBarcodeDetectorDelegate`)}return{formats:t}},e.prototype.toHtml5QrcodeSupportedFormats=function(e){if(!this.reverseFormatMap.has(e))throw`reverseFormatMap doesn't have ${e}`;return this.reverseFormatMap.get(e)},e.prototype.createReverseFormatMap=function(){var e=new Map;return this.formatMap.forEach(function(t,n,r){e.set(t,n)}),e},e.prototype.createDebugData=function(){return{decoderName:`BarcodeDetector`}},e}(),aN=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},oN=function(e,t){var n={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]},r,i,a,o;return o={next:s(0),throw:s(1),return:s(2)},typeof Symbol==`function`&&(o[Symbol.iterator]=function(){return this}),o;function s(e){return function(t){return c([e,t])}}function c(s){if(r)throw TypeError(`Generator is already executing.`);for(;o&&(o=0,s[0]&&(n=0)),n;)try{if(r=1,i&&(a=s[0]&2?i.return:s[0]?i.throw||((a=i.return)&&a.call(i),0):i.next)&&!(a=a.call(i,s[1])).done)return a;switch(i=0,a&&(s=[s[0]&2,a.value]),s[0]){case 0:case 1:a=s;break;case 4:return n.label++,{value:s[1],done:!1};case 5:n.label++,i=s[1],s=[0];continue;case 7:s=n.ops.pop(),n.trys.pop();continue;default:if((a=n.trys,!(a=a.length>0&&a[a.length-1]))&&(s[0]===6||s[0]===2)){n=0;continue}if(s[0]===3&&(!a||s[1]>a[0]&&s[1]<a[3])){n.label=s[1];break}if(s[0]===6&&n.label<a[1]){n.label=a[1],a=s;break}if(a&&n.label<a[2]){n.label=a[2],n.ops.push(s);break}a[2]&&n.ops.pop(),n.trys.pop();continue}s=t.call(e,n)}catch(e){s=[6,e],i=0}finally{r=a=0}if(s[0]&5)throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}},sN=function(){function e(e,t,n,r){this.EXECUTIONS_TO_REPORT_PERFORMANCE=100,this.executions=0,this.executionResults=[],this.wasPrimaryDecoderUsedInLastDecode=!1,this.verbose=n,t&&iN.isSupported()?(this.primaryDecoder=new iN(e,n,r),this.secondaryDecoder=new tN(e,n,r)):this.primaryDecoder=new tN(e,n,r)}return e.prototype.decodeAsync=function(e){return aN(this,void 0,void 0,function(){var t;return oN(this,function(n){switch(n.label){case 0:t=performance.now(),n.label=1;case 1:return n.trys.push([1,,3,4]),[4,this.getDecoder().decodeAsync(e)];case 2:return[2,n.sent()];case 3:return this.possiblyLogPerformance(t),[7];case 4:return[2]}})})},e.prototype.decodeRobustlyAsync=function(e){return aN(this,void 0,void 0,function(){var t,n;return oN(this,function(r){switch(r.label){case 0:t=performance.now(),r.label=1;case 1:return r.trys.push([1,3,4,5]),[4,this.primaryDecoder.decodeAsync(e)];case 2:return[2,r.sent()];case 3:if(n=r.sent(),this.secondaryDecoder)return[2,this.secondaryDecoder.decodeAsync(e)];throw n;case 4:return this.possiblyLogPerformance(t),[7];case 5:return[2]}})})},e.prototype.getDecoder=function(){return this.secondaryDecoder?this.wasPrimaryDecoderUsedInLastDecode===!1?(this.wasPrimaryDecoderUsedInLastDecode=!0,this.primaryDecoder):(this.wasPrimaryDecoderUsedInLastDecode=!1,this.secondaryDecoder):this.primaryDecoder},e.prototype.possiblyLogPerformance=function(e){if(this.verbose){var t=performance.now()-e;this.executionResults.push(t),this.executions++,this.possiblyFlushPerformanceReport()}},e.prototype.possiblyFlushPerformanceReport=function(){if(!(this.executions<this.EXECUTIONS_TO_REPORT_PERFORMANCE)){for(var e=0,t=0,n=this.executionResults;t<n.length;t++){var r=n[t];e+=r}var i=e/this.executionResults.length;console.log(`${i} ms for ${this.executionResults.length} last runs.`),this.executions=0,this.executionResults=[]}},e}(),cN=(function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){if(typeof n!=`function`&&n!==null)throw TypeError(`Class extends value `+String(n)+` is not a constructor or null`);e(t,n);function r(){this.constructor=t}t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}})(),lN=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},uN=function(e,t){var n={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]},r,i,a,o;return o={next:s(0),throw:s(1),return:s(2)},typeof Symbol==`function`&&(o[Symbol.iterator]=function(){return this}),o;function s(e){return function(t){return c([e,t])}}function c(s){if(r)throw TypeError(`Generator is already executing.`);for(;o&&(o=0,s[0]&&(n=0)),n;)try{if(r=1,i&&(a=s[0]&2?i.return:s[0]?i.throw||((a=i.return)&&a.call(i),0):i.next)&&!(a=a.call(i,s[1])).done)return a;switch(i=0,a&&(s=[s[0]&2,a.value]),s[0]){case 0:case 1:a=s;break;case 4:return n.label++,{value:s[1],done:!1};case 5:n.label++,i=s[1],s=[0];continue;case 7:s=n.ops.pop(),n.trys.pop();continue;default:if((a=n.trys,!(a=a.length>0&&a[a.length-1]))&&(s[0]===6||s[0]===2)){n=0;continue}if(s[0]===3&&(!a||s[1]>a[0]&&s[1]<a[3])){n.label=s[1];break}if(s[0]===6&&n.label<a[1]){n.label=a[1],a=s;break}if(a&&n.label<a[2]){n.label=a[2],n.ops.push(s);break}a[2]&&n.ops.pop(),n.trys.pop();continue}s=t.call(e,n)}catch(e){s=[6,e],i=0}finally{r=a=0}if(s[0]&5)throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}},dN=function(){function e(e,t){this.name=e,this.track=t}return e.prototype.isSupported=function(){return this.track.getCapabilities?this.name in this.track.getCapabilities():!1},e.prototype.apply=function(e){var t={};t[this.name]=e;var n={advanced:[t]};return this.track.applyConstraints(n)},e.prototype.value=function(){var e=this.track.getSettings();return this.name in e?e[this.name]:null},e}(),fN=function(e){cN(t,e);function t(t){return e.call(this,`zoom`,t)||this}return t}(function(e){cN(t,e);function t(t,n){return e.call(this,t,n)||this}return t.prototype.min=function(){return this.getCapabilities().min},t.prototype.max=function(){return this.getCapabilities().max},t.prototype.step=function(){return this.getCapabilities().step},t.prototype.apply=function(e){var t={};t[this.name]=e;var n={advanced:[t]};return this.track.applyConstraints(n)},t.prototype.getCapabilities=function(){this.failIfNotSupported();var e=this.track.getCapabilities()[this.name];return{min:e.min,max:e.max,step:e.step}},t.prototype.failIfNotSupported=function(){if(!this.isSupported())throw Error(`${this.name} capability not supported`)},t}(dN)),pN=function(e){cN(t,e);function t(t){return e.call(this,`torch`,t)||this}return t}(dN),mN=function(){function e(e){this.track=e}return e.prototype.zoomFeature=function(){return new fN(this.track)},e.prototype.torchFeature=function(){return new pN(this.track)},e}(),hN=function(){function e(e,t,n){this.isClosed=!1,this.parentElement=e,this.mediaStream=t,this.callbacks=n,this.surface=this.createVideoElement(this.parentElement.clientWidth),e.append(this.surface)}return e.prototype.createVideoElement=function(e){var t=document.createElement(`video`);return t.style.width=`${e}px`,t.style.display=`block`,t.muted=!0,t.setAttribute(`muted`,`true`),t.playsInline=!0,t},e.prototype.setupSurface=function(){var e=this;this.surface.onabort=function(){throw`RenderedCameraImpl video surface onabort() called`},this.surface.onerror=function(){throw`RenderedCameraImpl video surface onerror() called`};var t=function(){var n=e.surface.clientWidth,r=e.surface.clientHeight;e.callbacks.onRenderSurfaceReady(n,r),e.surface.removeEventListener(`playing`,t)};this.surface.addEventListener(`playing`,t),this.surface.srcObject=this.mediaStream,this.surface.play()},e.create=function(t,n,r,i){return lN(this,void 0,void 0,function(){var a,o;return uN(this,function(s){switch(s.label){case 0:return a=new e(t,n,i),r.aspectRatio?(o={aspectRatio:r.aspectRatio},[4,a.getFirstTrackOrFail().applyConstraints(o)]):[3,2];case 1:s.sent(),s.label=2;case 2:return a.setupSurface(),[2,a]}})})},e.prototype.failIfClosed=function(){if(this.isClosed)throw`The RenderedCamera has already been closed.`},e.prototype.getFirstTrackOrFail=function(){if(this.failIfClosed(),this.mediaStream.getVideoTracks().length===0)throw`No video tracks found`;return this.mediaStream.getVideoTracks()[0]},e.prototype.pause=function(){this.failIfClosed(),this.surface.pause()},e.prototype.resume=function(e){this.failIfClosed();var t=this,n=function(){setTimeout(e,200),t.surface.removeEventListener(`playing`,n)};this.surface.addEventListener(`playing`,n),this.surface.play()},e.prototype.isPaused=function(){return this.failIfClosed(),this.surface.paused},e.prototype.getSurface=function(){return this.failIfClosed(),this.surface},e.prototype.getRunningTrackCapabilities=function(){return this.getFirstTrackOrFail().getCapabilities()},e.prototype.getRunningTrackSettings=function(){return this.getFirstTrackOrFail().getSettings()},e.prototype.applyVideoConstraints=function(e){return lN(this,void 0,void 0,function(){return uN(this,function(t){if(`aspectRatio`in e)throw`Changing 'aspectRatio' in run-time is not yet supported.`;return[2,this.getFirstTrackOrFail().applyConstraints(e)]})})},e.prototype.close=function(){if(this.isClosed)return Promise.resolve();var e=this;return new Promise(function(t,n){var r=e.mediaStream.getVideoTracks().length,i=0;e.mediaStream.getVideoTracks().forEach(function(n){e.mediaStream.removeTrack(n),n.stop(),++i,i>=r&&(e.isClosed=!0,e.parentElement.removeChild(e.surface),t())})})},e.prototype.getCapabilities=function(){return new mN(this.getFirstTrackOrFail())},e}(),gN=function(){function e(e){this.mediaStream=e}return e.prototype.render=function(e,t,n){return lN(this,void 0,void 0,function(){return uN(this,function(r){return[2,hN.create(e,this.mediaStream,t,n)]})})},e.create=function(t){return lN(this,void 0,void 0,function(){var n,r;return uN(this,function(i){switch(i.label){case 0:if(!navigator.mediaDevices)throw`navigator.mediaDevices not supported`;return n={audio:!1,video:t},[4,navigator.mediaDevices.getUserMedia(n)];case 1:return r=i.sent(),[2,new e(r)]}})})},e}(),_N=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},vN=function(e,t){var n={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]},r,i,a,o;return o={next:s(0),throw:s(1),return:s(2)},typeof Symbol==`function`&&(o[Symbol.iterator]=function(){return this}),o;function s(e){return function(t){return c([e,t])}}function c(s){if(r)throw TypeError(`Generator is already executing.`);for(;o&&(o=0,s[0]&&(n=0)),n;)try{if(r=1,i&&(a=s[0]&2?i.return:s[0]?i.throw||((a=i.return)&&a.call(i),0):i.next)&&!(a=a.call(i,s[1])).done)return a;switch(i=0,a&&(s=[s[0]&2,a.value]),s[0]){case 0:case 1:a=s;break;case 4:return n.label++,{value:s[1],done:!1};case 5:n.label++,i=s[1],s=[0];continue;case 7:s=n.ops.pop(),n.trys.pop();continue;default:if((a=n.trys,!(a=a.length>0&&a[a.length-1]))&&(s[0]===6||s[0]===2)){n=0;continue}if(s[0]===3&&(!a||s[1]>a[0]&&s[1]<a[3])){n.label=s[1];break}if(s[0]===6&&n.label<a[1]){n.label=a[1],a=s;break}if(a&&n.label<a[2]){n.label=a[2],n.ops.push(s);break}a[2]&&n.ops.pop(),n.trys.pop();continue}s=t.call(e,n)}catch(e){s=[6,e],i=0}finally{r=a=0}if(s[0]&5)throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}},yN=function(){function e(){}return e.failIfNotSupported=function(){return _N(this,void 0,void 0,function(){return vN(this,function(t){if(!navigator.mediaDevices)throw`navigator.mediaDevices not supported`;return[2,new e]})})},e.prototype.create=function(e){return _N(this,void 0,void 0,function(){return vN(this,function(t){return[2,gN.create(e)]})})},e}(),bN=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},xN=function(e,t){var n={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]},r,i,a,o;return o={next:s(0),throw:s(1),return:s(2)},typeof Symbol==`function`&&(o[Symbol.iterator]=function(){return this}),o;function s(e){return function(t){return c([e,t])}}function c(s){if(r)throw TypeError(`Generator is already executing.`);for(;o&&(o=0,s[0]&&(n=0)),n;)try{if(r=1,i&&(a=s[0]&2?i.return:s[0]?i.throw||((a=i.return)&&a.call(i),0):i.next)&&!(a=a.call(i,s[1])).done)return a;switch(i=0,a&&(s=[s[0]&2,a.value]),s[0]){case 0:case 1:a=s;break;case 4:return n.label++,{value:s[1],done:!1};case 5:n.label++,i=s[1],s=[0];continue;case 7:s=n.ops.pop(),n.trys.pop();continue;default:if((a=n.trys,!(a=a.length>0&&a[a.length-1]))&&(s[0]===6||s[0]===2)){n=0;continue}if(s[0]===3&&(!a||s[1]>a[0]&&s[1]<a[3])){n.label=s[1];break}if(s[0]===6&&n.label<a[1]){n.label=a[1],a=s;break}if(a&&n.label<a[2]){n.label=a[2],n.ops.push(s);break}a[2]&&n.ops.pop(),n.trys.pop();continue}s=t.call(e,n)}catch(e){s=[6,e],i=0}finally{r=a=0}if(s[0]&5)throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}},SN=function(){function e(){}return e.retrieve=function(){return navigator.mediaDevices?e.getCamerasFromMediaDevices():MediaStreamTrack&&MediaStreamTrack.getSources?e.getCamerasFromMediaStreamTrack():e.rejectWithError()},e.rejectWithError=function(){var t=XM.unableToQuerySupportedDevices();return e.isHttpsOrLocalhost()||(t=XM.insecureContextCameraQueryError()),Promise.reject(t)},e.isHttpsOrLocalhost=function(){if(location.protocol===`https:`)return!0;var e=location.host.split(`:`)[0];return e===`127.0.0.1`||e===`localhost`},e.getCamerasFromMediaDevices=function(){return bN(this,void 0,void 0,function(){var e,t,n,r,i,a,o;return xN(this,function(s){switch(s.label){case 0:return e=function(e){for(var t=e.getVideoTracks(),n=0,r=t;n<r.length;n++){var i=r[n];i.enabled=!1,i.stop(),e.removeTrack(i)}},[4,navigator.mediaDevices.getUserMedia({audio:!1,video:!0})];case 1:return t=s.sent(),[4,navigator.mediaDevices.enumerateDevices()];case 2:for(n=s.sent(),r=[],i=0,a=n;i<a.length;i++)o=a[i],o.kind===`videoinput`&&r.push({id:o.deviceId,label:o.label});return e(t),[2,r]}})})},e.getCamerasFromMediaStreamTrack=function(){return new Promise(function(e,t){MediaStreamTrack.getSources(function(t){for(var n=[],r=0,i=t;r<i.length;r++){var a=i[r];a.kind===`video`&&n.push({id:a.id,label:a.label})}e(n)})})},e}(),CN;(function(e){e[e.UNKNOWN=0]=`UNKNOWN`,e[e.NOT_STARTED=1]=`NOT_STARTED`,e[e.SCANNING=2]=`SCANNING`,e[e.PAUSED=3]=`PAUSED`})(CN||={});var wN=function(){function e(){this.state=CN.NOT_STARTED,this.onGoingTransactionNewState=CN.UNKNOWN}return e.prototype.directTransition=function(e){this.failIfTransitionOngoing(),this.validateTransition(e),this.state=e},e.prototype.startTransition=function(e){return this.failIfTransitionOngoing(),this.validateTransition(e),this.onGoingTransactionNewState=e,this},e.prototype.execute=function(){if(this.onGoingTransactionNewState===CN.UNKNOWN)throw`Transaction is already cancelled, cannot execute().`;var e=this.onGoingTransactionNewState;this.onGoingTransactionNewState=CN.UNKNOWN,this.directTransition(e)},e.prototype.cancel=function(){if(this.onGoingTransactionNewState===CN.UNKNOWN)throw`Transaction is already cancelled, cannot cancel().`;this.onGoingTransactionNewState=CN.UNKNOWN},e.prototype.getState=function(){return this.state},e.prototype.failIfTransitionOngoing=function(){if(this.onGoingTransactionNewState!==CN.UNKNOWN)throw`Cannot transition to a new state, already under transition`},e.prototype.validateTransition=function(e){switch(this.state){case CN.UNKNOWN:throw`Transition from unknown is not allowed`;case CN.NOT_STARTED:this.failIfNewStateIs(e,[CN.PAUSED]);break;case CN.SCANNING:break;case CN.PAUSED:break}},e.prototype.failIfNewStateIs=function(e,t){for(var n=0,r=t;n<r.length;n++)if(e===r[n])throw`Cannot transition from ${this.state} to ${e}`},e}(),TN=function(){function e(e){this.stateManager=e}return e.prototype.startTransition=function(e){return this.stateManager.startTransition(e)},e.prototype.directTransition=function(e){this.stateManager.directTransition(e)},e.prototype.getState=function(){return this.stateManager.getState()},e.prototype.canScanFile=function(){return this.stateManager.getState()===CN.NOT_STARTED},e.prototype.isScanning=function(){return this.stateManager.getState()!==CN.NOT_STARTED},e.prototype.isStrictlyScanning=function(){return this.stateManager.getState()===CN.SCANNING},e.prototype.isPaused=function(){return this.stateManager.getState()===CN.PAUSED},e}(),EN=function(){function e(){}return e.create=function(){return new TN(new wN)},e}(),DN=(function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){if(typeof n!=`function`&&n!==null)throw TypeError(`Class extends value `+String(n)+` is not a constructor or null`);e(t,n);function r(){this.constructor=t}t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}})(),ON=function(e){DN(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.DEFAULT_WIDTH=300,t.DEFAULT_WIDTH_OFFSET=2,t.FILE_SCAN_MIN_HEIGHT=300,t.FILE_SCAN_HIDDEN_CANVAS_PADDING=100,t.MIN_QR_BOX_SIZE=50,t.SHADED_LEFT=1,t.SHADED_RIGHT=2,t.SHADED_TOP=3,t.SHADED_BOTTOM=4,t.SHADED_REGION_ELEMENT_ID=`qr-shaded-region`,t.VERBOSE=!1,t.BORDER_SHADER_DEFAULT_COLOR=`#ffffff`,t.BORDER_SHADER_MATCH_COLOR=`rgb(90, 193, 56)`,t}(HM),kN=function(){function e(e,t){this.logger=t,this.fps=ON.SCAN_DEFAULT_FPS,e?(e.fps&&(this.fps=e.fps),this.disableFlip=e.disableFlip===!0,this.qrbox=e.qrbox,this.aspectRatio=e.aspectRatio,this.videoConstraints=e.videoConstraints):this.disableFlip=ON.DEFAULT_DISABLE_FLIP}return e.prototype.isMediaStreamConstraintsValid=function(){return this.videoConstraints?$M.isMediaStreamConstraintsValid(this.videoConstraints,this.logger):(this.logger.logError(`Empty videoConstraints`,!0),!1)},e.prototype.isShadedBoxEnabled=function(){return!JM(this.qrbox)},e.create=function(t,n){return new e(t,n)},e}(),AN=function(){function e(e,t){if(this.element=null,this.canvasElement=null,this.scannerPausedUiElement=null,this.hasBorderShaders=null,this.borderShaders=null,this.qrMatch=null,this.renderedCamera=null,this.qrRegion=null,this.context=null,this.lastScanImageFile=null,this.isScanning=!1,!document.getElementById(e))throw`HTML Element with id=${e} not found`;this.elementId=e,this.verbose=!1;var n;typeof t==`boolean`?this.verbose=t===!0:t&&(n=t,this.verbose=n.verbose===!0,n.experimentalFeatures),this.logger=new qM(this.verbose),this.qrcode=new sN(this.getSupportedFormats(t),this.getUseBarCodeDetectorIfSupported(n),this.verbose,this.logger),this.foreverScanTimeout,this.shouldScan=!0,this.stateManagerProxy=EN.create()}return e.prototype.start=function(e,t,n,r){var i=this;if(!e)throw`cameraIdOrConfig is required`;if(!n||typeof n!=`function`)throw`qrCodeSuccessCallback is required and should be a function.`;var a=r||(this.verbose?this.logger.log:function(){}),o=kN.create(t,this.logger);this.clearElement();var s=!1;o.videoConstraints&&(o.isMediaStreamConstraintsValid()?s=!0:this.logger.logError(`'videoConstraints' is not valid 'MediaStreamConstraints, it will be ignored.'`,!0));var c=s,l=document.getElementById(this.elementId);l.clientWidth?l.clientWidth:ON.DEFAULT_WIDTH,l.style.position=`relative`,this.shouldScan=!0,this.element=l;var u=this,d=this.stateManagerProxy.startTransition(CN.SCANNING);return new Promise(function(t,r){var s=c?o.videoConstraints:u.createVideoConstraints(e);if(!s){d.cancel(),r(`videoConstraints should be defined`);return}var l={};(!c||o.aspectRatio)&&(l.aspectRatio=o.aspectRatio);var f={onRenderSurfaceReady:function(e,t){u.setupUi(e,t,o),u.isScanning=!0,u.foreverScan(o,n,a)}};yN.failIfNotSupported().then(function(e){e.create(s).then(function(e){return e.render(i.element,l,f).then(function(e){u.renderedCamera=e,d.execute(),t(null)}).catch(function(e){d.cancel(),r(e)})}).catch(function(e){d.cancel(),r(XM.errorGettingUserMedia(e))})}).catch(function(e){d.cancel(),r(XM.cameraStreamingNotSupported())})})},e.prototype.pause=function(e){if(!this.stateManagerProxy.isStrictlyScanning())throw`Cannot pause, scanner is not scanning.`;this.stateManagerProxy.directTransition(CN.PAUSED),this.showPausedState(),(JM(e)||e!==!0)&&(e=!1),e&&this.renderedCamera&&this.renderedCamera.pause()},e.prototype.resume=function(){if(!this.stateManagerProxy.isPaused())throw`Cannot result, scanner is not paused.`;if(!this.renderedCamera)throw`renderedCamera doesn't exist while trying resume()`;var e=this,t=function(){e.stateManagerProxy.directTransition(CN.SCANNING),e.hidePausedState()};if(!this.renderedCamera.isPaused()){t();return}this.renderedCamera.resume(function(){t()})},e.prototype.getState=function(){return this.stateManagerProxy.getState()},e.prototype.stop=function(){var e=this;if(!this.stateManagerProxy.isScanning())throw`Cannot stop, scanner is not running or paused.`;var t=this.stateManagerProxy.startTransition(CN.NOT_STARTED);this.shouldScan=!1,this.foreverScanTimeout&&clearTimeout(this.foreverScanTimeout);var n=function(){if(e.element){var t=document.getElementById(ON.SHADED_REGION_ELEMENT_ID);t&&e.element.removeChild(t)}},r=this;return this.renderedCamera.close().then(function(){return r.renderedCamera=null,r.element&&(r.element.removeChild(r.canvasElement),r.canvasElement=null),n(),r.qrRegion&&=null,r.context&&=null,t.execute(),r.hidePausedState(),r.isScanning=!1,Promise.resolve()})},e.prototype.scanFile=function(e,t){return this.scanFileV2(e,t).then(function(e){return e.decodedText})},e.prototype.scanFileV2=function(e,t){var n=this;if(!e||!(e instanceof File))throw`imageFile argument is mandatory and should be instance of File. Use 'event.target.files[0]'.`;if(JM(t)&&(t=!0),!this.stateManagerProxy.canScanFile())throw`Cannot start file scan - ongoing camera scan`;return new Promise(function(r,i){n.possiblyCloseLastScanImageFile(),n.clearElement(),n.lastScanImageFile=URL.createObjectURL(e);var a=new Image;a.onload=function(){var e=a.width,o=a.height,s=document.getElementById(n.elementId),c=s.clientWidth?s.clientWidth:ON.DEFAULT_WIDTH,l=Math.max(s.clientHeight?s.clientHeight:o,ON.FILE_SCAN_MIN_HEIGHT),u=n.computeCanvasDrawConfig(e,o,c,l);if(t){var d=n.createCanvasElement(c,l,`qr-canvas-visible`);d.style.display=`inline-block`,s.appendChild(d);var f=d.getContext(`2d`);if(!f)throw`Unable to get 2d context from canvas`;f.canvas.width=c,f.canvas.height=l,f.drawImage(a,0,0,e,o,u.x,u.y,u.width,u.height)}var p=ON.FILE_SCAN_HIDDEN_CANVAS_PADDING,m=Math.max(a.width,u.width),h=Math.max(a.height,u.height),g=m+2*p,_=h+2*p,v=n.createCanvasElement(g,_);s.appendChild(v);var y=v.getContext(`2d`);if(!y)throw`Unable to get 2d context from canvas`;y.canvas.width=g,y.canvas.height=_,y.drawImage(a,0,0,e,o,p,p,m,h);try{n.qrcode.decodeRobustlyAsync(v).then(function(e){r(WM.createFromQrcodeResult(e))}).catch(i)}catch(e){i(`QR code parse error, error = ${e}`)}},a.onerror=i,a.onabort=i,a.onstalled=i,a.onsuspend=i,a.src=URL.createObjectURL(e)})},e.prototype.clear=function(){this.clearElement()},e.getCameras=function(){return SN.retrieve()},e.prototype.getRunningTrackCapabilities=function(){return this.getRenderedCameraOrFail().getRunningTrackCapabilities()},e.prototype.getRunningTrackSettings=function(){return this.getRenderedCameraOrFail().getRunningTrackSettings()},e.prototype.getRunningTrackCameraCapabilities=function(){return this.getRenderedCameraOrFail().getCapabilities()},e.prototype.applyVideoConstraints=function(e){if(!e)throw`videoConstaints is required argument.`;if(!$M.isMediaStreamConstraintsValid(e,this.logger))throw`invalid videoConstaints passed, check logs for more details`;return this.getRenderedCameraOrFail().applyVideoConstraints(e)},e.prototype.getRenderedCameraOrFail=function(){if(this.renderedCamera==null)throw`Scanning is not in running state, call this API only when QR code scanning using camera is in running state.`;return this.renderedCamera},e.prototype.getSupportedFormats=function(e){var t=[LM.QR_CODE,LM.AZTEC,LM.CODABAR,LM.CODE_39,LM.CODE_93,LM.CODE_128,LM.DATA_MATRIX,LM.MAXICODE,LM.ITF,LM.EAN_13,LM.EAN_8,LM.PDF_417,LM.RSS_14,LM.RSS_EXPANDED,LM.UPC_A,LM.UPC_E,LM.UPC_EAN_EXTENSION];if(!e||typeof e==`boolean`||!e.formatsToSupport)return t;if(!Array.isArray(e.formatsToSupport))throw`configOrVerbosityFlag.formatsToSupport should be undefined or an array.`;if(e.formatsToSupport.length===0)throw`Atleast 1 formatsToSupport is needed.`;for(var n=[],r=0,i=e.formatsToSupport;r<i.length;r++){var a=i[r];BM(a)?n.push(a):this.logger.warn(`Invalid format: ${a} passed in config, ignoring.`)}if(n.length===0)throw`None of formatsToSupport match supported values.`;return n},e.prototype.getUseBarCodeDetectorIfSupported=function(e){if(JM(e))return!0;if(!JM(e.useBarCodeDetectorIfSupported))return e.useBarCodeDetectorIfSupported!==!1;if(JM(e.experimentalFeatures))return!0;var t=e.experimentalFeatures;return JM(t.useBarCodeDetectorIfSupported)?!0:t.useBarCodeDetectorIfSupported!==!1},e.prototype.validateQrboxSize=function(e,t,n){var r=this,i=n.qrbox;this.validateQrboxConfig(i);var a=this.toQrdimensions(e,t,i),o=function(e){if(e<ON.MIN_QR_BOX_SIZE)throw`minimum size of 'config.qrbox' dimension value is ${ON.MIN_QR_BOX_SIZE}px.`};o(a.width),o(a.height),a.width=function(t){return t>e&&(r.logger.warn("`qrbox.width` or `qrbox` is larger than the width of the root element. The width will be truncated to the width of root element."),t=e),t}(a.width)},e.prototype.validateQrboxConfig=function(e){if(typeof e!=`number`&&typeof e!=`function`&&(e.width===void 0||e.height===void 0))throw`Invalid instance of QrDimensions passed for 'config.qrbox'. Both 'width' and 'height' should be set.`},e.prototype.toQrdimensions=function(e,t,n){if(typeof n==`number`)return{width:n,height:n};if(typeof n==`function`)try{return n(e,t)}catch(e){throw Error(`qrbox config was passed as a function but it failed with unknown error`+e)}return n},e.prototype.setupUi=function(e,t,n){n.isShadedBoxEnabled()&&this.validateQrboxSize(e,t,n);var r=JM(n.qrbox)?{width:e,height:t}:n.qrbox;this.validateQrboxConfig(r);var i=this.toQrdimensions(e,t,r);i.height>t&&this.logger.warn(`[Html5Qrcode] config.qrbox has height that isgreater than the height of the video stream. Shading will be ignored`);var a=n.isShadedBoxEnabled()&&i.height<=t,o=a?this.getShadedRegionBounds(e,t,i):{x:0,y:0,width:e,height:t},s=this.createCanvasElement(o.width,o.height),c=s.getContext(`2d`,{willReadFrequently:!0});c.canvas.width=o.width,c.canvas.height=o.height,this.element.append(s),a&&this.possiblyInsertShadingElement(this.element,e,t,i),this.createScannerPausedUiElement(this.element),this.qrRegion=o,this.context=c,this.canvasElement=s},e.prototype.createScannerPausedUiElement=function(e){var t=document.createElement(`div`);t.innerText=XM.scannerPaused(),t.style.display=`none`,t.style.position=`absolute`,t.style.top=`0px`,t.style.zIndex=`1`,t.style.background=`rgba(9, 9, 9, 0.46)`,t.style.color=`#FFECEC`,t.style.textAlign=`center`,t.style.width=`100%`,e.appendChild(t),this.scannerPausedUiElement=t},e.prototype.scanContext=function(e,t){var n=this;return this.stateManagerProxy.isPaused()?Promise.resolve(!1):this.qrcode.decodeAsync(this.canvasElement).then(function(t){return e(t.text,WM.createFromQrcodeResult(t)),n.possiblyUpdateShaders(!0),!0}).catch(function(e){n.possiblyUpdateShaders(!1);var r=XM.codeParseError(e);return t(r,KM.createFrom(r)),!1})},e.prototype.foreverScan=function(e,t,n){var r=this;if(this.shouldScan&&this.renderedCamera){var i=this.renderedCamera.getSurface(),a=i.videoWidth/i.clientWidth,o=i.videoHeight/i.clientHeight;if(!this.qrRegion)throw`qrRegion undefined when localMediaStream is ready.`;var s=this.qrRegion.width*a,c=this.qrRegion.height*o,l=this.qrRegion.x*a,u=this.qrRegion.y*o;this.context.drawImage(i,l,u,s,c,0,0,this.qrRegion.width,this.qrRegion.height);var d=function(){r.foreverScanTimeout=setTimeout(function(){r.foreverScan(e,t,n)},r.getTimeoutFps(e.fps))};this.scanContext(t,n).then(function(i){!i&&e.disableFlip!==!0?(r.context.translate(r.context.canvas.width,0),r.context.scale(-1,1),r.scanContext(t,n).finally(function(){d()})):d()}).catch(function(e){r.logger.logError(`Error happend while scanning context`,e),d()})}},e.prototype.createVideoConstraints=function(e){if(typeof e==`string`)return{deviceId:{exact:e}};if(typeof e==`object`){var t=`facingMode`,n=`deviceId`,r={user:!0,environment:!0},i=`exact`,a=function(e){if(e in r)return!0;throw`config has invalid 'facingMode' value = '${e}'`},o=Object.keys(e);if(o.length!==1)throw`'cameraIdOrConfig' object should have exactly 1 key, if passed as an object, found ${o.length} keys`;var s=Object.keys(e)[0];if(s!==t&&s!==n)throw`Only '${t}' and '${n}' are supported for 'cameraIdOrConfig'`;if(s===t){var c=e.facingMode;if(typeof c==`string`){if(a(c))return{facingMode:c}}else if(typeof c==`object`)if(i in c){if(a(c[`${i}`]))return{facingMode:{exact:c[`${i}`]}}}else throw`'facingMode' should be string or object with ${i} as key.`;else throw`Invalid type of 'facingMode' = ${typeof c}`}else{var l=e.deviceId;if(typeof l==`string`)return{deviceId:l};if(typeof l==`object`){if(i in l)return{deviceId:{exact:l[`${i}`]}};throw`'deviceId' should be string or object with ${i} as key.`}else throw`Invalid type of 'deviceId' = ${typeof l}`}}throw`Invalid type of 'cameraIdOrConfig' = ${typeof e}`},e.prototype.computeCanvasDrawConfig=function(e,t,n,r){if(e<=n&&t<=r)return{x:(n-e)/2,y:(r-t)/2,width:e,height:t};var i=e,a=t;return e>n&&(t=n/e*t,e=n),t>r&&(e=r/t*e,t=r),this.logger.log(`Image downsampled from ${i}X${a} to ${e}X${t}.`),this.computeCanvasDrawConfig(e,t,n,r)},e.prototype.clearElement=function(){if(this.stateManagerProxy.isScanning())throw`Cannot clear while scan is ongoing, close it first.`;var e=document.getElementById(this.elementId);e&&(e.innerHTML=``)},e.prototype.possiblyUpdateShaders=function(e){this.qrMatch!==e&&(this.hasBorderShaders&&this.borderShaders&&this.borderShaders.length&&this.borderShaders.forEach(function(t){t.style.backgroundColor=e?ON.BORDER_SHADER_MATCH_COLOR:ON.BORDER_SHADER_DEFAULT_COLOR}),this.qrMatch=e)},e.prototype.possiblyCloseLastScanImageFile=function(){this.lastScanImageFile&&=(URL.revokeObjectURL(this.lastScanImageFile),null)},e.prototype.createCanvasElement=function(e,t,n){var r=e,i=t,a=document.createElement(`canvas`);return a.style.width=`${r}px`,a.style.height=`${i}px`,a.style.display=`none`,a.id=JM(n)?`qr-canvas`:n,a},e.prototype.getShadedRegionBounds=function(e,t,n){if(n.width>e||n.height>t)throw`'config.qrbox' dimensions should not be greater than the dimensions of the root HTML element.`;return{x:(e-n.width)/2,y:(t-n.height)/2,width:n.width,height:n.height}},e.prototype.possiblyInsertShadingElement=function(e,t,n,r){if(!(t-r.width<1||n-r.height<1)){var i=document.createElement(`div`);i.style.position=`absolute`;var a=(t-r.width)/2,o=(n-r.height)/2;if(i.style.borderLeft=`${a}px solid rgba(0, 0, 0, 0.48)`,i.style.borderRight=`${a}px solid rgba(0, 0, 0, 0.48)`,i.style.borderTop=`${o}px solid rgba(0, 0, 0, 0.48)`,i.style.borderBottom=`${o}px solid rgba(0, 0, 0, 0.48)`,i.style.boxSizing=`border-box`,i.style.top=`0px`,i.style.bottom=`0px`,i.style.left=`0px`,i.style.right=`0px`,i.id=`${ON.SHADED_REGION_ELEMENT_ID}`,t-r.width<11||n-r.height<11)this.hasBorderShaders=!1;else{var s=5,c=40;this.insertShaderBorders(i,c,s,-s,null,0,!0),this.insertShaderBorders(i,c,s,-s,null,0,!1),this.insertShaderBorders(i,c,s,null,-s,0,!0),this.insertShaderBorders(i,c,s,null,-s,0,!1),this.insertShaderBorders(i,s,c+s,-s,null,-s,!0),this.insertShaderBorders(i,s,c+s,null,-s,-s,!0),this.insertShaderBorders(i,s,c+s,-s,null,-s,!1),this.insertShaderBorders(i,s,c+s,null,-s,-s,!1),this.hasBorderShaders=!0}e.append(i)}},e.prototype.insertShaderBorders=function(e,t,n,r,i,a,o){var s=document.createElement(`div`);s.style.position=`absolute`,s.style.backgroundColor=ON.BORDER_SHADER_DEFAULT_COLOR,s.style.width=`${t}px`,s.style.height=`${n}px`,r!==null&&(s.style.top=`${r}px`),i!==null&&(s.style.bottom=`${i}px`),o?s.style.left=`${a}px`:s.style.right=`${a}px`,this.borderShaders||=[],this.borderShaders.push(s),e.appendChild(s)},e.prototype.showPausedState=function(){if(!this.scannerPausedUiElement)throw`[internal error] scanner paused UI element not found`;this.scannerPausedUiElement.style.display=`block`},e.prototype.hidePausedState=function(){if(!this.scannerPausedUiElement)throw`[internal error] scanner paused UI element not found`;this.scannerPausedUiElement.style.display=`none`},e.prototype.getTimeoutFps=function(e){return 1e3/e},e}(),jN=`data:image/svg+xml;base64,`,MN=jN+`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAzNzEuNjQzIDM3MS42NDMiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDM3MS42NDMgMzcxLjY0MyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PHBhdGggZD0iTTEwNS4wODQgMzguMjcxaDE2My43Njh2MjBIMTA1LjA4NHoiLz48cGF0aCBkPSJNMzExLjU5NiAxOTAuMTg5Yy03LjQ0MS05LjM0Ny0xOC40MDMtMTYuMjA2LTMyLjc0My0yMC41MjJWMzBjMC0xNi41NDItMTMuNDU4LTMwLTMwLTMwSDEyNS4wODRjLTE2LjU0MiAwLTMwIDEzLjQ1OC0zMCAzMHYxMjAuMTQzaC04LjI5NmMtMTYuNTQyIDAtMzAgMTMuNDU4LTMwIDMwdjEuMzMzYTI5LjgwNCAyOS44MDQgMCAwIDAgNC42MDMgMTUuOTM5Yy03LjM0IDUuNDc0LTEyLjEwMyAxNC4yMjEtMTIuMTAzIDI0LjA2MXYxLjMzM2MwIDkuODQgNC43NjMgMTguNTg3IDEyLjEwMyAyNC4wNjJhMjkuODEgMjkuODEgMCAwIDAtNC42MDMgMTUuOTM4djEuMzMzYzAgMTYuNTQyIDEzLjQ1OCAzMCAzMCAzMGg4LjMyNGMuNDI3IDExLjYzMSA3LjUwMyAyMS41ODcgMTcuNTM0IDI2LjE3Ny45MzEgMTAuNTAzIDQuMDg0IDMwLjE4NyAxNC43NjggNDUuNTM3YTkuOTg4IDkuOTg4IDAgMCAwIDguMjE2IDQuMjg4IDkuOTU4IDkuOTU4IDAgMCAwIDUuNzA0LTEuNzkzYzQuNTMzLTMuMTU1IDUuNjUtOS4zODggMi40OTUtMTMuOTIxLTYuNzk4LTkuNzY3LTkuNjAyLTIyLjYwOC0xMC43Ni0zMS40aDgyLjY4NWMuMjcyLjQxNC41NDUuODE4LjgxNSAxLjIxIDMuMTQyIDQuNTQxIDkuMzcyIDUuNjc5IDEzLjkxMyAyLjUzNCA0LjU0Mi0zLjE0MiA1LjY3Ny05LjM3MSAyLjUzNS0xMy45MTMtMTEuOTE5LTE3LjIyOS04Ljc4Ny0zNS44ODQgOS41ODEtNTcuMDEyIDMuMDY3LTIuNjUyIDEyLjMwNy0xMS43MzIgMTEuMjE3LTI0LjAzMy0uODI4LTkuMzQzLTcuMTA5LTE3LjE5NC0xOC42NjktMjMuMzM3YTkuODU3IDkuODU3IDAgMCAwLTEuMDYxLS40ODZjLS40NjYtLjE4Mi0xMS40MDMtNC41NzktOS43NDEtMTUuNzA2IDEuMDA3LTYuNzM3IDE0Ljc2OC04LjI3MyAyMy43NjYtNy42NjYgMjMuMTU2IDEuNTY5IDM5LjY5OCA3LjgwMyA0Ny44MzYgMTguMDI2IDUuNzUyIDcuMjI1IDcuNjA3IDE2LjYyMyA1LjY3MyAyOC43MzMtLjQxMyAyLjU4NS0uODI0IDUuMjQxLTEuMjQ1IDcuOTU5LTUuNzU2IDM3LjE5NC0xMi45MTkgODMuNDgzLTQ5Ljg3IDExNC42NjEtNC4yMjEgMy41NjEtNC43NTYgOS44Ny0xLjE5NCAxNC4wOTJhOS45OCA5Ljk4IDAgMCAwIDcuNjQ4IDMuNTUxIDkuOTU1IDkuOTU1IDAgMCAwIDYuNDQ0LTIuMzU4YzQyLjY3Mi0zNi4wMDUgNTAuODAyLTg4LjUzMyA1Ni43MzctMTI2Ljg4OC40MTUtMi42ODQuODIxLTUuMzA5IDEuMjI5LTcuODYzIDIuODM0LTE3LjcyMS0uNDU1LTMyLjY0MS05Ljc3Mi00NC4zNDV6bS0yMzIuMzA4IDQyLjYyYy01LjUxNCAwLTEwLTQuNDg2LTEwLTEwdi0xLjMzM2MwLTUuNTE0IDQuNDg2LTEwIDEwLTEwaDE1djIxLjMzM2gtMTV6bS0yLjUtNTIuNjY2YzAtNS41MTQgNC40ODYtMTAgMTAtMTBoNy41djIxLjMzM2gtNy41Yy01LjUxNCAwLTEwLTQuNDg2LTEwLTEwdi0xLjMzM3ptMTcuNSA5My45OTloLTcuNWMtNS41MTQgMC0xMC00LjQ4Ni0xMC0xMHYtMS4zMzNjMC01LjUxNCA0LjQ4Ni0xMCAxMC0xMGg3LjV2MjEuMzMzem0zMC43OTYgMjguODg3Yy01LjUxNCAwLTEwLTQuNDg2LTEwLTEwdi04LjI3MWg5MS40NTdjLS44NTEgNi42NjgtLjQzNyAxMi43ODcuNzMxIDE4LjI3MWgtODIuMTg4em03OS40ODItMTEzLjY5OGMtMy4xMjQgMjAuOTA2IDEyLjQyNyAzMy4xODQgMjEuNjI1IDM3LjA0IDUuNDQxIDIuOTY4IDcuNTUxIDUuNjQ3IDcuNzAxIDcuMTg4LjIxIDIuMTUtMi41NTMgNS42ODQtNC40NzcgNy4yNTEtLjQ4Mi4zNzgtLjkyOS44LTEuMzM1IDEuMjYxLTYuOTg3IDcuOTM2LTExLjk4MiAxNS41Mi0xNS40MzIgMjIuNjg4aC05Ny41NjRWMzBjMC01LjUxNCA0LjQ4Ni0xMCAxMC0xMGgxMjMuNzY5YzUuNTE0IDAgMTAgNC40ODYgMTAgMTB2MTM1LjU3OWMtMy4wMzItLjM4MS02LjE1LS42OTQtOS4zODktLjkxNC0yNS4xNTktMS42OTQtNDIuMzcgNy43NDgtNDQuODk4IDI0LjY2NnoiLz48cGF0aCBkPSJNMTc5LjEyOSA4My4xNjdoLTI0LjA2YTUgNSAwIDAgMC01IDV2MjQuMDYxYTUgNSAwIDAgMCA1IDVoMjQuMDZhNSA1IDAgMCAwIDUtNVY4OC4xNjdhNSA1IDAgMCAwLTUtNXpNMTcyLjYyOSAxNDIuODZoLTEyLjU2VjEzMC44YTUgNSAwIDEgMC0xMCAwdjE3LjA2MWE1IDUgMCAwIDAgNSA1aDE3LjU2YTUgNSAwIDEgMCAwLTEwLjAwMXpNMjE2LjU2OCA4My4xNjdoLTI0LjA2YTUgNSAwIDAgMC01IDV2MjQuMDYxYTUgNSAwIDAgMCA1IDVoMjQuMDZhNSA1IDAgMCAwIDUtNVY4OC4xNjdhNSA1IDAgMCAwLTUtNXptLTUgMjQuMDYxaC0xNC4wNlY5My4xNjdoMTQuMDZ2MTQuMDYxek0yMTEuNjY5IDEyNS45MzZIMTk3LjQxYTUgNSAwIDAgMC01IDV2MTQuMjU3YTUgNSAwIDAgMCA1IDVoMTQuMjU5YTUgNSAwIDAgMCA1LTV2LTE0LjI1N2E1IDUgMCAwIDAtNS01eiIvPjwvc3ZnPg==`,NN=jN+`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1OS4wMTggNTkuMDE4IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCA1OS4wMTggNTkuMDE4IiB4bWw6c3BhY2U9InByZXNlcnZlIj48cGF0aCBkPSJtNTguNzQxIDU0LjgwOS01Ljk2OS02LjI0NGExMC43NCAxMC43NCAwIDAgMCAyLjgyLTcuMjVjMC01Ljk1My00Ljg0My0xMC43OTYtMTAuNzk2LTEwLjc5NlMzNCAzNS4zNjEgMzQgNDEuMzE0IDM4Ljg0MyA1Mi4xMSA0NC43OTYgNTIuMTFjMi40NDEgMCA0LjY4OC0uODI0IDYuNDk5LTIuMTk2bDYuMDAxIDYuMjc3YS45OTguOTk4IDAgMCAwIDEuNDE0LjAzMiAxIDEgMCAwIDAgLjAzMS0xLjQxNHpNMzYgNDEuMzE0YzAtNC44NSAzLjk0Ni04Ljc5NiA4Ljc5Ni04Ljc5NnM4Ljc5NiAzLjk0NiA4Ljc5NiA4Ljc5Ni0zLjk0NiA4Ljc5Ni04Ljc5NiA4Ljc5NlMzNiA0Ni4xNjQgMzYgNDEuMzE0ek0xMC40MzEgMTYuMDg4YzAgMy4wNyAyLjQ5OCA1LjU2OCA1LjU2OSA1LjU2OHM1LjU2OS0yLjQ5OCA1LjU2OS01LjU2OGMwLTMuMDcxLTIuNDk4LTUuNTY5LTUuNTY5LTUuNTY5cy01LjU2OSAyLjQ5OC01LjU2OSA1LjU2OXptOS4xMzggMGMwIDEuOTY4LTEuNjAyIDMuNTY4LTMuNTY5IDMuNTY4cy0zLjU2OS0xLjYwMS0zLjU2OS0zLjU2OCAxLjYwMi0zLjU2OSAzLjU2OS0zLjU2OSAzLjU2OSAxLjYwMSAzLjU2OSAzLjU2OXoiLz48cGF0aCBkPSJtMzAuODgyIDI4Ljk4NyA5LjE4LTEwLjA1NCAxMS4yNjIgMTAuMzIzYTEgMSAwIDAgMCAxLjM1MS0xLjQ3NWwtMTItMTFhMSAxIDAgMCAwLTEuNDE0LjA2M2wtOS43OTQgMTAuNzI3LTQuNzQzLTQuNzQzYTEuMDAzIDEuMDAzIDAgMCAwLTEuMzY4LS4wNDRMNi4zMzkgMzcuNzY4YTEgMSAwIDEgMCAxLjMyMiAxLjUwMWwxNi4zMTMtMTQuMzYyIDcuMzE5IDcuMzE4YS45OTkuOTk5IDAgMSAwIDEuNDE0LTEuNDE0bC0xLjgyNS0xLjgyNHoiLz48cGF0aCBkPSJNMzAgNDYuNTE4SDJ2LTQyaDU0djI4YTEgMSAwIDEgMCAyIDB2LTI5YTEgMSAwIDAgMC0xLTFIMWExIDEgMCAwIDAtMSAxdjQ0YTEgMSAwIDAgMCAxIDFoMjlhMSAxIDAgMSAwIDAtMnoiLz48L3N2Zz4=`,PN=jN+`PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA0NjAgNDYwIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCA0NjAgNDYwIiB4bWw6c3BhY2U9InByZXNlcnZlIj48cGF0aCBkPSJNMjMwIDBDMTAyLjk3NSAwIDAgMTAyLjk3NSAwIDIzMHMxMDIuOTc1IDIzMCAyMzAgMjMwIDIzMC0xMDIuOTc0IDIzMC0yMzBTMzU3LjAyNSAwIDIzMCAwem0zOC4zMzMgMzc3LjM2YzAgOC42NzYtNy4wMzQgMTUuNzEtMTUuNzEgMTUuNzFoLTQzLjEwMWMtOC42NzYgMC0xNS43MS03LjAzNC0xNS43MS0xNS43MVYyMDIuNDc3YzAtOC42NzYgNy4wMzMtMTUuNzEgMTUuNzEtMTUuNzFoNDMuMTAxYzguNjc2IDAgMTUuNzEgNy4wMzMgMTUuNzEgMTUuNzFWMzc3LjM2ek0yMzAgMTU3Yy0yMS41MzkgMC0zOS0xNy40NjEtMzktMzlzMTcuNDYxLTM5IDM5LTM5IDM5IDE3LjQ2MSAzOSAzOS0xNy40NjEgMzktMzkgMzl6Ii8+PC9zdmc+`,FN=`data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAAQgAAAEIBarqQRAAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAAE1SURBVDiNfdI7S0NBEAXgLya1otFgpbYSbISAgpXYi6CmiH9KCAiChaVga6OiWPgfRDQ+0itaGVNosXtluWwcuMzePfM4M3sq8lbHBubwg1dc4m1E/J/N4ghDPOIsfk/4xiEao5KX0McFljN4C9d4QTPXuY99jP3DsIoDPGM6BY5i5yI5R7O4q+ImFkJY2DCh3cAH2klyB+9J1xUMMAG7eCh1a+Mr+k48b5diXrFVwwLuS+BJ9MfR7+G0FHOHhTHhnXNWS87VDF4pcnfQK4Ep7XScNLmPTZgURNKKYENYWDpzW1BhscS1WHS8CDgURFJQrWcoF3c13KKbgg1BYQfy8xZWEzTTw1QZbAoKu8FqJnktdu5hcVSHmchiILzzuaDQvjBzV2m8yohCE1jHfPx/xhU+y4G/D75ELlRJsSYAAAAASUVORK5CYII=`,IN=function(){function e(){}return e.createDefault=function(){return{hasPermission:!1,lastUsedCameraId:null}},e}(),LN=function(){function e(){this.data=IN.createDefault();var t=localStorage.getItem(e.LOCAL_STORAGE_KEY);t?this.data=JSON.parse(t):this.reset()}return e.prototype.hasCameraPermissions=function(){return this.data.hasPermission},e.prototype.getLastUsedCameraId=function(){return this.data.lastUsedCameraId},e.prototype.setHasPermission=function(e){this.data.hasPermission=e,this.flush()},e.prototype.setLastUsedCameraId=function(e){this.data.lastUsedCameraId=e,this.flush()},e.prototype.resetLastUsedCameraId=function(){this.data.lastUsedCameraId=null,this.flush()},e.prototype.reset=function(){this.data=IN.createDefault(),this.flush()},e.prototype.flush=function(){localStorage.setItem(e.LOCAL_STORAGE_KEY,JSON.stringify(this.data))},e.LOCAL_STORAGE_KEY=`HTML5_QRCODE_DATA`,e}(),RN=function(){function e(){this.infoDiv=document.createElement(`div`)}return e.prototype.renderInto=function(e){this.infoDiv.style.position=`absolute`,this.infoDiv.style.top=`10px`,this.infoDiv.style.right=`10px`,this.infoDiv.style.zIndex=`2`,this.infoDiv.style.display=`none`,this.infoDiv.style.padding=`5pt`,this.infoDiv.style.border=`1px solid #171717`,this.infoDiv.style.fontSize=`10pt`,this.infoDiv.style.background=`rgb(0 0 0 / 69%)`,this.infoDiv.style.borderRadius=`5px`,this.infoDiv.style.textAlign=`center`,this.infoDiv.style.fontWeight=`400`,this.infoDiv.style.color=`white`,this.infoDiv.innerText=QM.poweredBy();var t=document.createElement(`a`);t.innerText=`ScanApp`,t.href=`https://scanapp.org`,t.target=`new`,t.style.color=`white`,this.infoDiv.appendChild(t);var n=document.createElement(`br`),r=document.createElement(`br`);this.infoDiv.appendChild(n),this.infoDiv.appendChild(r);var i=document.createElement(`a`);i.innerText=QM.reportIssues(),i.href=`https://github.com/mebjas/html5-qrcode/issues`,i.target=`new`,i.style.color=`white`,this.infoDiv.appendChild(i),e.appendChild(this.infoDiv)},e.prototype.show=function(){this.infoDiv.style.display=`block`},e.prototype.hide=function(){this.infoDiv.style.display=`none`},e}(),zN=function(){function e(e,t){this.isShowingInfoIcon=!0,this.onTapIn=e,this.onTapOut=t,this.infoIcon=document.createElement(`img`)}return e.prototype.renderInto=function(e){var t=this;this.infoIcon.alt=`Info icon`,this.infoIcon.src=PN,this.infoIcon.style.position=`absolute`,this.infoIcon.style.top=`4px`,this.infoIcon.style.right=`4px`,this.infoIcon.style.opacity=`0.6`,this.infoIcon.style.cursor=`pointer`,this.infoIcon.style.zIndex=`2`,this.infoIcon.style.width=`16px`,this.infoIcon.style.height=`16px`,this.infoIcon.onmouseover=function(e){return t.onHoverIn()},this.infoIcon.onmouseout=function(e){return t.onHoverOut()},this.infoIcon.onclick=function(e){return t.onClick()},e.appendChild(this.infoIcon)},e.prototype.onHoverIn=function(){this.isShowingInfoIcon&&(this.infoIcon.style.opacity=`1`)},e.prototype.onHoverOut=function(){this.isShowingInfoIcon&&(this.infoIcon.style.opacity=`0.6`)},e.prototype.onClick=function(){this.isShowingInfoIcon?(this.isShowingInfoIcon=!1,this.onTapIn(),this.infoIcon.src=FN,this.infoIcon.style.opacity=`1`):(this.isShowingInfoIcon=!0,this.onTapOut(),this.infoIcon.src=PN,this.infoIcon.style.opacity=`0.6`)},e}(),BN=function(){function e(){var e=this;this.infoDiv=new RN,this.infoIcon=new zN(function(){e.infoDiv.show()},function(){e.infoDiv.hide()})}return e.prototype.renderInto=function(e){this.infoDiv.renderInto(e),this.infoIcon.renderInto(e)},e}(),VN=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},HN=function(e,t){var n={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]},r,i,a,o;return o={next:s(0),throw:s(1),return:s(2)},typeof Symbol==`function`&&(o[Symbol.iterator]=function(){return this}),o;function s(e){return function(t){return c([e,t])}}function c(s){if(r)throw TypeError(`Generator is already executing.`);for(;o&&(o=0,s[0]&&(n=0)),n;)try{if(r=1,i&&(a=s[0]&2?i.return:s[0]?i.throw||((a=i.return)&&a.call(i),0):i.next)&&!(a=a.call(i,s[1])).done)return a;switch(i=0,a&&(s=[s[0]&2,a.value]),s[0]){case 0:case 1:a=s;break;case 4:return n.label++,{value:s[1],done:!1};case 5:n.label++,i=s[1],s=[0];continue;case 7:s=n.ops.pop(),n.trys.pop();continue;default:if((a=n.trys,!(a=a.length>0&&a[a.length-1]))&&(s[0]===6||s[0]===2)){n=0;continue}if(s[0]===3&&(!a||s[1]>a[0]&&s[1]<a[3])){n.label=s[1];break}if(s[0]===6&&n.label<a[1]){n.label=a[1],a=s;break}if(a&&n.label<a[2]){n.label=a[2],n.ops.push(s);break}a[2]&&n.ops.pop(),n.trys.pop();continue}s=t.call(e,n)}catch(e){s=[6,e],i=0}finally{r=a=0}if(s[0]&5)throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}},UN=function(){function e(){}return e.hasPermissions=function(){return VN(this,void 0,void 0,function(){var e,t,n,r;return HN(this,function(i){switch(i.label){case 0:return[4,navigator.mediaDevices.enumerateDevices()];case 1:for(e=i.sent(),t=0,n=e;t<n.length;t++)if(r=n[t],r.kind===`videoinput`&&r.label)return[2,!0];return[2,!1]}})})},e}(),WN=function(){function e(e){this.supportedScanTypes=this.validateAndReturnScanTypes(e)}return e.prototype.getDefaultScanType=function(){return this.supportedScanTypes[0]},e.prototype.hasMoreThanOneScanType=function(){return this.supportedScanTypes.length>1},e.prototype.isCameraScanRequired=function(){for(var t=0,n=this.supportedScanTypes;t<n.length;t++){var r=n[t];if(e.isCameraScanType(r))return!0}return!1},e.isCameraScanType=function(e){return e===VM.SCAN_TYPE_CAMERA},e.isFileScanType=function(e){return e===VM.SCAN_TYPE_FILE},e.prototype.validateAndReturnScanTypes=function(e){if(!e||e.length===0)return HM.DEFAULT_SUPPORTED_SCAN_TYPE;var t=HM.DEFAULT_SUPPORTED_SCAN_TYPE.length;if(e.length>t)throw`Max ${t} values expected for supportedScanTypes`;for(var n=0,r=e;n<r.length;n++){var i=r[n];if(!HM.DEFAULT_SUPPORTED_SCAN_TYPE.includes(i))throw`Unsupported scan type ${i}`}return e},e}(),GN=function(){function e(){}return e.ALL_ELEMENT_CLASS=`html5-qrcode-element`,e.CAMERA_PERMISSION_BUTTON_ID=`html5-qrcode-button-camera-permission`,e.CAMERA_START_BUTTON_ID=`html5-qrcode-button-camera-start`,e.CAMERA_STOP_BUTTON_ID=`html5-qrcode-button-camera-stop`,e.TORCH_BUTTON_ID=`html5-qrcode-button-torch`,e.CAMERA_SELECTION_SELECT_ID=`html5-qrcode-select-camera`,e.FILE_SELECTION_BUTTON_ID=`html5-qrcode-button-file-selection`,e.ZOOM_SLIDER_ID=`html5-qrcode-input-range-zoom`,e.SCAN_TYPE_CHANGE_ANCHOR_ID=`html5-qrcode-anchor-scan-type-change`,e.TORCH_BUTTON_CLASS_TORCH_ON=`html5-qrcode-button-torch-on`,e.TORCH_BUTTON_CLASS_TORCH_OFF=`html5-qrcode-button-torch-off`,e}(),KN=function(){function e(){}return e.createElement=function(e,t){var n=document.createElement(e);return n.id=t,n.classList.add(GN.ALL_ELEMENT_CLASS),e===`button`&&n.setAttribute(`type`,`button`),n},e}(),qN=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},JN=function(e,t){var n={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]},r,i,a,o;return o={next:s(0),throw:s(1),return:s(2)},typeof Symbol==`function`&&(o[Symbol.iterator]=function(){return this}),o;function s(e){return function(t){return c([e,t])}}function c(s){if(r)throw TypeError(`Generator is already executing.`);for(;o&&(o=0,s[0]&&(n=0)),n;)try{if(r=1,i&&(a=s[0]&2?i.return:s[0]?i.throw||((a=i.return)&&a.call(i),0):i.next)&&!(a=a.call(i,s[1])).done)return a;switch(i=0,a&&(s=[s[0]&2,a.value]),s[0]){case 0:case 1:a=s;break;case 4:return n.label++,{value:s[1],done:!1};case 5:n.label++,i=s[1],s=[0];continue;case 7:s=n.ops.pop(),n.trys.pop();continue;default:if((a=n.trys,!(a=a.length>0&&a[a.length-1]))&&(s[0]===6||s[0]===2)){n=0;continue}if(s[0]===3&&(!a||s[1]>a[0]&&s[1]<a[3])){n.label=s[1];break}if(s[0]===6&&n.label<a[1]){n.label=a[1],a=s;break}if(a&&n.label<a[2]){n.label=a[2],n.ops.push(s);break}a[2]&&n.ops.pop(),n.trys.pop();continue}s=t.call(e,n)}catch(e){s=[6,e],i=0}finally{r=a=0}if(s[0]&5)throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}},YN=function(){function e(e,t,n){this.isTorchOn=!1,this.torchCapability=e,this.buttonController=t,this.onTorchActionFailureCallback=n}return e.prototype.isTorchEnabled=function(){return this.isTorchOn},e.prototype.flipState=function(){return qN(this,void 0,void 0,function(){var e,t;return JN(this,function(n){switch(n.label){case 0:this.buttonController.disable(),e=!this.isTorchOn,n.label=1;case 1:return n.trys.push([1,3,,4]),[4,this.torchCapability.apply(e)];case 2:return n.sent(),this.updateUiBasedOnLatestSettings(this.torchCapability.value(),e),[3,4];case 3:return t=n.sent(),this.propagateFailure(e,t),this.buttonController.enable(),[3,4];case 4:return[2]}})})},e.prototype.updateUiBasedOnLatestSettings=function(e,t){e===t?(this.buttonController.setText(t?ZM.torchOffButton():ZM.torchOnButton()),this.isTorchOn=t):this.propagateFailure(t),this.buttonController.enable()},e.prototype.propagateFailure=function(e,t){var n=e?ZM.torchOnFailedMessage():ZM.torchOffFailedMessage();t&&(n+=`; Error = `+t),this.onTorchActionFailureCallback(n)},e.prototype.reset=function(){this.isTorchOn=!1},e}(),XN=function(){function e(e,t){this.onTorchActionFailureCallback=t,this.torchButton=KN.createElement(`button`,GN.TORCH_BUTTON_ID),this.torchController=new YN(e,this,t)}return e.prototype.render=function(e,t){var n=this;this.torchButton.innerText=ZM.torchOnButton(),this.torchButton.style.display=t.display,this.torchButton.style.marginLeft=t.marginLeft;var r=this;this.torchButton.addEventListener(`click`,function(e){return qN(n,void 0,void 0,function(){return JN(this,function(e){switch(e.label){case 0:return[4,r.torchController.flipState()];case 1:return e.sent(),r.torchController.isTorchEnabled()?(r.torchButton.classList.remove(GN.TORCH_BUTTON_CLASS_TORCH_OFF),r.torchButton.classList.add(GN.TORCH_BUTTON_CLASS_TORCH_ON)):(r.torchButton.classList.remove(GN.TORCH_BUTTON_CLASS_TORCH_ON),r.torchButton.classList.add(GN.TORCH_BUTTON_CLASS_TORCH_OFF)),[2]}})})}),e.appendChild(this.torchButton)},e.prototype.updateTorchCapability=function(e){this.torchController=new YN(e,this,this.onTorchActionFailureCallback)},e.prototype.getTorchButton=function(){return this.torchButton},e.prototype.hide=function(){this.torchButton.style.display=`none`},e.prototype.show=function(){this.torchButton.style.display=`inline-block`},e.prototype.disable=function(){this.torchButton.disabled=!0},e.prototype.enable=function(){this.torchButton.disabled=!1},e.prototype.setText=function(e){this.torchButton.innerText=e},e.prototype.reset=function(){this.torchButton.innerText=ZM.torchOnButton(),this.torchController.reset()},e.create=function(t,n,r,i){var a=new e(n,i);return a.render(t,r),a},e}(),ZN=function(){function e(e,t,n){this.fileBasedScanRegion=this.createFileBasedScanRegion(),this.fileBasedScanRegion.style.display=t?`block`:`none`,e.appendChild(this.fileBasedScanRegion);var r=document.createElement(`label`);r.setAttribute(`for`,this.getFileScanInputId()),r.style.display=`inline-block`,this.fileBasedScanRegion.appendChild(r),this.fileSelectionButton=KN.createElement(`button`,GN.FILE_SELECTION_BUTTON_ID),this.setInitialValueToButton(),this.fileSelectionButton.addEventListener(`click`,function(e){r.click()}),r.append(this.fileSelectionButton),this.fileScanInput=KN.createElement(`input`,this.getFileScanInputId()),this.fileScanInput.type=`file`,this.fileScanInput.accept=`image/*`,this.fileScanInput.style.display=`none`,r.appendChild(this.fileScanInput);var i=this;this.fileScanInput.addEventListener(`change`,function(e){if(!(e==null||e.target==null)){var t=e.target;if(!(t.files&&t.files.length===0)){var r=t.files[0],a=r.name;i.setImageNameToButton(a),n(r)}}});var a=this.createDragAndDropMessage();this.fileBasedScanRegion.appendChild(a),this.fileBasedScanRegion.addEventListener(`dragenter`,function(e){i.fileBasedScanRegion.style.border=i.fileBasedScanRegionActiveBorder(),e.stopPropagation(),e.preventDefault()}),this.fileBasedScanRegion.addEventListener(`dragleave`,function(e){i.fileBasedScanRegion.style.border=i.fileBasedScanRegionDefaultBorder(),e.stopPropagation(),e.preventDefault()}),this.fileBasedScanRegion.addEventListener(`dragover`,function(e){i.fileBasedScanRegion.style.border=i.fileBasedScanRegionActiveBorder(),e.stopPropagation(),e.preventDefault()}),this.fileBasedScanRegion.addEventListener(`drop`,function(e){e.stopPropagation(),e.preventDefault(),i.fileBasedScanRegion.style.border=i.fileBasedScanRegionDefaultBorder();var t=e.dataTransfer;if(t){var r=t.files;if(!r||r.length===0)return;for(var o=!1,s=0;s<r.length;++s){var c=r.item(s);if(c&&c.type.match(/image.*/)){o=!0;var l=c.name;i.setImageNameToButton(l),n(c),a.innerText=ZM.dragAndDropMessage();break}}o||(a.innerText=ZM.dragAndDropMessageOnlyImages())}})}return e.prototype.hide=function(){this.fileBasedScanRegion.style.display=`none`,this.fileScanInput.disabled=!0},e.prototype.show=function(){this.fileBasedScanRegion.style.display=`block`,this.fileScanInput.disabled=!1},e.prototype.isShowing=function(){return this.fileBasedScanRegion.style.display===`block`},e.prototype.resetValue=function(){this.fileScanInput.value=``,this.setInitialValueToButton()},e.prototype.createFileBasedScanRegion=function(){var e=document.createElement(`div`);return e.style.textAlign=`center`,e.style.margin=`auto`,e.style.width=`80%`,e.style.maxWidth=`600px`,e.style.border=this.fileBasedScanRegionDefaultBorder(),e.style.padding=`10px`,e.style.marginBottom=`10px`,e},e.prototype.fileBasedScanRegionDefaultBorder=function(){return`6px dashed #ebebeb`},e.prototype.fileBasedScanRegionActiveBorder=function(){return`6px dashed rgb(153 151 151)`},e.prototype.createDragAndDropMessage=function(){var e=document.createElement(`div`);return e.innerText=ZM.dragAndDropMessage(),e.style.fontWeight=`400`,e},e.prototype.setImageNameToButton=function(e){if(e.length>20){var t=e.substring(0,8),n=e.length;e=`${t}....${e.substring(n-8,n)}`}var r=ZM.fileSelectionChooseAnother()+` - `+e;this.fileSelectionButton.innerText=r},e.prototype.setInitialValueToButton=function(){var e=ZM.fileSelectionChooseImage()+` - `+ZM.fileSelectionNoImageSelected();this.fileSelectionButton.innerText=e},e.prototype.getFileScanInputId=function(){return`html5-qrcode-private-filescan-input`},e.create=function(t,n,r){return new e(t,n,r)},e}(),QN=function(){function e(e){this.selectElement=KN.createElement(`select`,GN.CAMERA_SELECTION_SELECT_ID),this.cameras=e,this.options=[]}return e.prototype.render=function(e){var t=document.createElement(`span`);t.style.marginRight=`10px`;var n=this.cameras.length;if(n===0)throw Error(`No cameras found`);n===1?t.style.display=`none`:t.innerText=`${ZM.selectCamera()} (${this.cameras.length}) `;for(var r=1,i=0,a=this.cameras;i<a.length;i++){var o=a[i],s=o.id,c=o.label==null?s:o.label;(!c||c===``)&&(c=[ZM.anonymousCameraPrefix(),r++].join(` `));var l=document.createElement(`option`);l.value=s,l.innerText=c,this.options.push(l),this.selectElement.appendChild(l)}t.appendChild(this.selectElement),e.appendChild(t)},e.prototype.disable=function(){this.selectElement.disabled=!0},e.prototype.isDisabled=function(){return this.selectElement.disabled===!0},e.prototype.enable=function(){this.selectElement.disabled=!1},e.prototype.getValue=function(){return this.selectElement.value},e.prototype.hasValue=function(e){for(var t=0,n=this.options;t<n.length;t++)if(n[t].value===e)return!0;return!1},e.prototype.setValue=function(e){if(!this.hasValue(e))throw Error(`${e} is not present in the camera list.`);this.selectElement.value=e},e.prototype.hasSingleItem=function(){return this.cameras.length===1},e.prototype.numCameras=function(){return this.cameras.length},e.create=function(t,n){var r=new e(n);return r.render(t),r},e}(),$N=function(){function e(){this.onChangeCallback=null,this.zoomElementContainer=document.createElement(`div`),this.rangeInput=KN.createElement(`input`,GN.ZOOM_SLIDER_ID),this.rangeInput.type=`range`,this.rangeText=document.createElement(`span`),this.rangeInput.min=`1`,this.rangeInput.max=`5`,this.rangeInput.value=`1`,this.rangeInput.step=`0.1`}return e.prototype.render=function(e,t){this.zoomElementContainer.style.display=t?`block`:`none`,this.zoomElementContainer.style.padding=`5px 10px`,this.zoomElementContainer.style.textAlign=`center`,e.appendChild(this.zoomElementContainer),this.rangeInput.style.display=`inline-block`,this.rangeInput.style.width=`50%`,this.rangeInput.style.height=`5px`,this.rangeInput.style.background=`#d3d3d3`,this.rangeInput.style.outline=`none`,this.rangeInput.style.opacity=`0.7`;var n=ZM.zoom();this.rangeText.innerText=`${this.rangeInput.value}x ${n}`,this.rangeText.style.marginRight=`10px`;var r=this;this.rangeInput.addEventListener(`input`,function(){return r.onValueChange()}),this.rangeInput.addEventListener(`change`,function(){return r.onValueChange()}),this.zoomElementContainer.appendChild(this.rangeInput),this.zoomElementContainer.appendChild(this.rangeText)},e.prototype.onValueChange=function(){var e=ZM.zoom();this.rangeText.innerText=`${this.rangeInput.value}x ${e}`,this.onChangeCallback&&this.onChangeCallback(parseFloat(this.rangeInput.value))},e.prototype.setValues=function(e,t,n,r){this.rangeInput.min=e.toString(),this.rangeInput.max=t.toString(),this.rangeInput.step=r.toString(),this.rangeInput.value=n.toString(),this.onValueChange()},e.prototype.show=function(){this.zoomElementContainer.style.display=`block`},e.prototype.hide=function(){this.zoomElementContainer.style.display=`none`},e.prototype.setOnCameraZoomValueChangeCallback=function(e){this.onChangeCallback=e},e.prototype.removeOnCameraZoomValueChangeCallback=function(){this.onChangeCallback=null},e.create=function(t,n){var r=new e;return r.render(t,n),r},e}(),eP;(function(e){e[e.STATUS_DEFAULT=0]=`STATUS_DEFAULT`,e[e.STATUS_SUCCESS=1]=`STATUS_SUCCESS`,e[e.STATUS_WARNING=2]=`STATUS_WARNING`,e[e.STATUS_REQUESTING_PERMISSION=3]=`STATUS_REQUESTING_PERMISSION`})(eP||={});function tP(e){return{fps:e.fps,qrbox:e.qrbox,aspectRatio:e.aspectRatio,disableFlip:e.disableFlip,videoConstraints:e.videoConstraints}}function nP(e,t){return{formatsToSupport:e.formatsToSupport,useBarCodeDetectorIfSupported:e.useBarCodeDetectorIfSupported,experimentalFeatures:e.experimentalFeatures,verbose:t}}(function(){function e(e,t,n){if(this.lastMatchFound=null,this.cameraScanImage=null,this.fileScanImage=null,this.fileSelectionUi=null,this.elementId=e,this.config=this.createConfig(t),this.verbose=n===!0,!document.getElementById(e))throw`HTML Element with id=${e} not found`;this.scanTypeSelector=new WN(this.config.supportedScanTypes),this.currentScanType=this.scanTypeSelector.getDefaultScanType(),this.sectionSwapAllowed=!0,this.logger=new qM(this.verbose),this.persistedDataManager=new LN,t.rememberLastUsedCamera!==!0&&this.persistedDataManager.reset()}return e.prototype.render=function(e,t){var n=this;this.lastMatchFound=null,this.qrCodeSuccessCallback=function(t,r){if(e)e(t,r);else{if(n.lastMatchFound===t)return;n.lastMatchFound=t,n.setHeaderMessage(ZM.lastMatch(t),eP.STATUS_SUCCESS)}},this.qrCodeErrorCallback=function(e,n){t&&t(e,n)};var r=document.getElementById(this.elementId);if(!r)throw`HTML Element with id=${this.elementId} not found`;r.innerHTML=``,this.createBasicLayout(r),this.html5Qrcode=new AN(this.getScanRegionId(),nP(this.config,this.verbose))},e.prototype.pause=function(e){(JM(e)||e!==!0)&&(e=!1),this.getHtml5QrcodeOrFail().pause(e)},e.prototype.resume=function(){this.getHtml5QrcodeOrFail().resume()},e.prototype.getState=function(){return this.getHtml5QrcodeOrFail().getState()},e.prototype.clear=function(){var e=this,t=function(){var t=document.getElementById(e.elementId);t&&(t.innerHTML=``,e.resetBasicLayout(t))};return this.html5Qrcode?new Promise(function(n,r){if(!e.html5Qrcode){n();return}e.html5Qrcode.isScanning?e.html5Qrcode.stop().then(function(r){if(!e.html5Qrcode){n();return}e.html5Qrcode.clear(),t(),n()}).catch(function(t){e.verbose&&e.logger.logError(`Unable to stop qrcode scanner`,t),r(t)}):(e.html5Qrcode.clear(),t(),n())}):Promise.resolve()},e.prototype.getRunningTrackCapabilities=function(){return this.getHtml5QrcodeOrFail().getRunningTrackCapabilities()},e.prototype.getRunningTrackSettings=function(){return this.getHtml5QrcodeOrFail().getRunningTrackSettings()},e.prototype.applyVideoConstraints=function(e){return this.getHtml5QrcodeOrFail().applyVideoConstraints(e)},e.prototype.getHtml5QrcodeOrFail=function(){if(!this.html5Qrcode)throw`Code scanner not initialized.`;return this.html5Qrcode},e.prototype.createConfig=function(e){return e?(e.fps||=HM.SCAN_DEFAULT_FPS,e.rememberLastUsedCamera!==!HM.DEFAULT_REMEMBER_LAST_CAMERA_USED&&(e.rememberLastUsedCamera=HM.DEFAULT_REMEMBER_LAST_CAMERA_USED),e.supportedScanTypes||=HM.DEFAULT_SUPPORTED_SCAN_TYPE,e):{fps:HM.SCAN_DEFAULT_FPS,rememberLastUsedCamera:HM.DEFAULT_REMEMBER_LAST_CAMERA_USED,supportedScanTypes:HM.DEFAULT_SUPPORTED_SCAN_TYPE}},e.prototype.createBasicLayout=function(e){e.style.position=`relative`,e.style.padding=`0px`,e.style.border=`1px solid silver`,this.createHeader(e);var t=document.createElement(`div`);t.id=this.getScanRegionId(),t.style.width=`100%`,t.style.minHeight=`100px`,t.style.textAlign=`center`,e.appendChild(t),WN.isCameraScanType(this.currentScanType)?this.insertCameraScanImageToScanRegion():this.insertFileScanImageToScanRegion();var n=document.createElement(`div`);n.id=this.getDashboardId(),n.style.width=`100%`,e.appendChild(n),this.setupInitialDashboard(n)},e.prototype.resetBasicLayout=function(e){e.style.border=`none`},e.prototype.setupInitialDashboard=function(e){this.createSection(e),this.createSectionControlPanel(),this.scanTypeSelector.hasMoreThanOneScanType()&&this.createSectionSwap()},e.prototype.createHeader=function(e){var t=document.createElement(`div`);t.style.textAlign=`left`,t.style.margin=`0px`,e.appendChild(t),new BN().renderInto(t);var n=document.createElement(`div`);n.id=this.getHeaderMessageContainerId(),n.style.display=`none`,n.style.textAlign=`center`,n.style.fontSize=`14px`,n.style.padding=`2px 10px`,n.style.margin=`4px`,n.style.borderTop=`1px solid #f6f6f6`,t.appendChild(n)},e.prototype.createSection=function(e){var t=document.createElement(`div`);t.id=this.getDashboardSectionId(),t.style.width=`100%`,t.style.padding=`10px 0px 10px 0px`,t.style.textAlign=`left`,e.appendChild(t)},e.prototype.createCameraListUi=function(e,t,n){var r=this;r.showHideScanTypeSwapLink(!1),r.setHeaderMessage(ZM.cameraPermissionRequesting());var i=function(){n||r.createPermissionButton(e,t)};AN.getCameras().then(function(n){r.persistedDataManager.setHasPermission(!0),r.showHideScanTypeSwapLink(!0),r.resetHeaderMessage(),n&&n.length>0?(e.removeChild(t),r.renderCameraSelection(n)):(r.setHeaderMessage(ZM.noCameraFound(),eP.STATUS_WARNING),i())}).catch(function(e){r.persistedDataManager.setHasPermission(!1),n?n.disabled=!1:i(),r.setHeaderMessage(e,eP.STATUS_WARNING),r.showHideScanTypeSwapLink(!0)})},e.prototype.createPermissionButton=function(e,t){var n=this,r=KN.createElement(`button`,this.getCameraPermissionButtonId());r.innerText=ZM.cameraPermissionTitle(),r.addEventListener(`click`,function(){r.disabled=!0,n.createCameraListUi(e,t,r)}),t.appendChild(r)},e.prototype.createPermissionsUi=function(e,t){var n=this;if(WN.isCameraScanType(this.currentScanType)&&this.persistedDataManager.hasCameraPermissions()){UN.hasPermissions().then(function(r){r?n.createCameraListUi(e,t):(n.persistedDataManager.setHasPermission(!1),n.createPermissionButton(e,t))}).catch(function(r){n.persistedDataManager.setHasPermission(!1),n.createPermissionButton(e,t)});return}this.createPermissionButton(e,t)},e.prototype.createSectionControlPanel=function(){var e=document.getElementById(this.getDashboardSectionId()),t=document.createElement(`div`);e.appendChild(t);var n=document.createElement(`div`);n.id=this.getDashboardSectionCameraScanRegionId(),n.style.display=WN.isCameraScanType(this.currentScanType)?`block`:`none`,t.appendChild(n);var r=document.createElement(`div`);r.style.textAlign=`center`,n.appendChild(r),this.scanTypeSelector.isCameraScanRequired()&&this.createPermissionsUi(n,r),this.renderFileScanUi(t)},e.prototype.renderFileScanUi=function(e){var t=WN.isFileScanType(this.currentScanType),n=this,r=function(e){if(!n.html5Qrcode)throw`html5Qrcode not defined`;WN.isFileScanType(n.currentScanType)&&(n.setHeaderMessage(ZM.loadingImage()),n.html5Qrcode.scanFileV2(e,!0).then(function(e){n.resetHeaderMessage(),n.qrCodeSuccessCallback(e.decodedText,e)}).catch(function(e){n.setHeaderMessage(e,eP.STATUS_WARNING),n.qrCodeErrorCallback(e,KM.createFrom(e))}))};this.fileSelectionUi=ZN.create(e,t,r)},e.prototype.renderCameraSelection=function(e){var t=this,n=this,r=document.getElementById(this.getDashboardSectionCameraScanRegionId());r.style.textAlign=`center`;var i=$N.create(r,!1),a=function(e){var n=e.zoomFeature();if(n.isSupported()){i.setOnCameraZoomValueChangeCallback(function(e){n.apply(e)});var r=1;t.config.defaultZoomValueIfSupported&&(r=t.config.defaultZoomValueIfSupported),r=YM(r,n.min(),n.max()),i.setValues(n.min(),n.max(),r,n.step()),i.show()}},o=QN.create(r,e),s=document.createElement(`span`),c=KN.createElement(`button`,GN.CAMERA_START_BUTTON_ID);c.innerText=ZM.scanButtonStartScanningText(),s.appendChild(c);var l=KN.createElement(`button`,GN.CAMERA_STOP_BUTTON_ID);l.innerText=ZM.scanButtonStopScanningText(),l.style.display=`none`,l.disabled=!0,s.appendChild(l);var u,d=function(e){if(!e.torchFeature().isSupported()){u&&u.hide();return}u?u.updateTorchCapability(e.torchFeature()):u=XN.create(s,e.torchFeature(),{display:`none`,marginLeft:`5px`},function(e){n.setHeaderMessage(e,eP.STATUS_WARNING)}),u.show()};r.appendChild(s);var f=function(e){e||(c.style.display=`none`),c.innerText=ZM.scanButtonStartScanningText(),c.style.opacity=`1`,c.disabled=!1,e&&(c.style.display=`inline-block`)};if(c.addEventListener(`click`,function(e){c.innerText=ZM.scanButtonScanningStarting(),o.disable(),c.disabled=!0,c.style.opacity=`0.5`,t.scanTypeSelector.hasMoreThanOneScanType()&&n.showHideScanTypeSwapLink(!1),n.resetHeaderMessage();var r=o.getValue();n.persistedDataManager.setLastUsedCameraId(r),n.html5Qrcode.start(r,tP(n.config),n.qrCodeSuccessCallback,n.qrCodeErrorCallback).then(function(e){l.disabled=!1,l.style.display=`inline-block`,f(!1);var r=n.html5Qrcode.getRunningTrackCameraCapabilities();t.config.showTorchButtonIfSupported===!0&&d(r),t.config.showZoomSliderIfSupported===!0&&a(r)}).catch(function(e){n.showHideScanTypeSwapLink(!0),o.enable(),f(!0),n.setHeaderMessage(e,eP.STATUS_WARNING)})}),o.hasSingleItem()&&c.click(),l.addEventListener(`click`,function(e){if(!n.html5Qrcode)throw`html5Qrcode not defined`;l.disabled=!0,n.html5Qrcode.stop().then(function(e){t.scanTypeSelector.hasMoreThanOneScanType()&&n.showHideScanTypeSwapLink(!0),o.enable(),c.disabled=!1,l.style.display=`none`,c.style.display=`inline-block`,u&&(u.reset(),u.hide()),i.removeOnCameraZoomValueChangeCallback(),i.hide(),n.insertCameraScanImageToScanRegion()}).catch(function(e){l.disabled=!1,n.setHeaderMessage(e,eP.STATUS_WARNING)})}),n.persistedDataManager.getLastUsedCameraId()){var p=n.persistedDataManager.getLastUsedCameraId();o.hasValue(p)?(o.setValue(p),c.click()):n.persistedDataManager.resetLastUsedCameraId()}},e.prototype.createSectionSwap=function(){var e=this,t=ZM.textIfCameraScanSelected(),n=ZM.textIfFileScanSelected(),r=document.getElementById(this.getDashboardSectionId()),i=document.createElement(`div`);i.style.textAlign=`center`;var a=KN.createElement(`span`,this.getDashboardSectionSwapLinkId());a.style.textDecoration=`underline`,a.style.cursor=`pointer`,a.innerText=WN.isCameraScanType(this.currentScanType)?t:n,a.addEventListener(`click`,function(){if(!e.sectionSwapAllowed){e.verbose&&e.logger.logError(`Section swap called when not allowed`);return}e.resetHeaderMessage(),e.fileSelectionUi.resetValue(),e.sectionSwapAllowed=!1,WN.isCameraScanType(e.currentScanType)?(e.clearScanRegion(),e.getCameraScanRegion().style.display=`none`,e.fileSelectionUi.show(),a.innerText=n,e.currentScanType=VM.SCAN_TYPE_FILE,e.insertFileScanImageToScanRegion()):(e.clearScanRegion(),e.getCameraScanRegion().style.display=`block`,e.fileSelectionUi.hide(),a.innerText=t,e.currentScanType=VM.SCAN_TYPE_CAMERA,e.insertCameraScanImageToScanRegion(),e.startCameraScanIfPermissionExistsOnSwap()),e.sectionSwapAllowed=!0}),i.appendChild(a),r.appendChild(i)},e.prototype.startCameraScanIfPermissionExistsOnSwap=function(){var e=this,t=this;if(this.persistedDataManager.hasCameraPermissions()){UN.hasPermissions().then(function(n){if(n){var r=document.getElementById(t.getCameraPermissionButtonId());if(!r)throw e.logger.logError(`Permission button not found, fail;`),`Permission button not found`;r.click()}else t.persistedDataManager.setHasPermission(!1)}).catch(function(e){t.persistedDataManager.setHasPermission(!1)});return}},e.prototype.resetHeaderMessage=function(){var e=document.getElementById(this.getHeaderMessageContainerId());e.style.display=`none`},e.prototype.setHeaderMessage=function(e,t){t||=eP.STATUS_DEFAULT;var n=this.getHeaderMessageDiv();switch(n.innerText=e,n.style.display=`block`,t){case eP.STATUS_SUCCESS:n.style.background=`rgba(106, 175, 80, 0.26)`,n.style.color=`#477735`;break;case eP.STATUS_WARNING:n.style.background=`rgba(203, 36, 49, 0.14)`,n.style.color=`#cb2431`;break;case eP.STATUS_DEFAULT:default:n.style.background=`rgba(0, 0, 0, 0)`,n.style.color=`rgb(17, 17, 17)`;break}},e.prototype.showHideScanTypeSwapLink=function(e){this.scanTypeSelector.hasMoreThanOneScanType()&&(e!==!0&&(e=!1),this.sectionSwapAllowed=e,this.getDashboardSectionSwapLink().style.display=e?`inline-block`:`none`)},e.prototype.insertCameraScanImageToScanRegion=function(){var e=this,t=document.getElementById(this.getScanRegionId());if(this.cameraScanImage){t.innerHTML=`<br>`,t.appendChild(this.cameraScanImage);return}this.cameraScanImage=new Image,this.cameraScanImage.onload=function(n){t.innerHTML=`<br>`,t.appendChild(e.cameraScanImage)},this.cameraScanImage.width=64,this.cameraScanImage.style.opacity=`0.8`,this.cameraScanImage.src=MN,this.cameraScanImage.alt=ZM.cameraScanAltText()},e.prototype.insertFileScanImageToScanRegion=function(){var e=this,t=document.getElementById(this.getScanRegionId());if(this.fileScanImage){t.innerHTML=`<br>`,t.appendChild(this.fileScanImage);return}this.fileScanImage=new Image,this.fileScanImage.onload=function(n){t.innerHTML=`<br>`,t.appendChild(e.fileScanImage)},this.fileScanImage.width=64,this.fileScanImage.style.opacity=`0.8`,this.fileScanImage.src=NN,this.fileScanImage.alt=ZM.fileScanAltText()},e.prototype.clearScanRegion=function(){var e=document.getElementById(this.getScanRegionId());e.innerHTML=``},e.prototype.getDashboardSectionId=function(){return`${this.elementId}__dashboard_section`},e.prototype.getDashboardSectionCameraScanRegionId=function(){return`${this.elementId}__dashboard_section_csr`},e.prototype.getDashboardSectionSwapLinkId=function(){return GN.SCAN_TYPE_CHANGE_ANCHOR_ID},e.prototype.getScanRegionId=function(){return`${this.elementId}__scan_region`},e.prototype.getDashboardId=function(){return`${this.elementId}__dashboard`},e.prototype.getHeaderMessageContainerId=function(){return`${this.elementId}__header_message`},e.prototype.getCameraPermissionButtonId=function(){return GN.CAMERA_PERMISSION_BUTTON_ID},e.prototype.getCameraScanRegion=function(){return document.getElementById(this.getDashboardSectionCameraScanRegionId())},e.prototype.getDashboardSectionSwapLink=function(){return document.getElementById(this.getDashboardSectionSwapLinkId())},e.prototype.getHeaderMessageDiv=function(){return document.getElementById(this.getHeaderMessageContainerId())},e})();var rP;(function(e){e[e.BACK=1]=`BACK`,e[e.FRONT=2]=`FRONT`})(rP||={});var iP;(function(e){e[e.PORTRAIT=1]=`PORTRAIT`,e[e.LANDSCAPE=2]=`LANDSCAPE`,e[e.ADAPTIVE=3]=`ADAPTIVE`})(iP||={});var aP;(function(e){e[e.ALL=17]=`ALL`})(aP||={});var oP=Object.assign(Object.assign({},LM),aP),sP;(function(e){e.ZXING=`zxing`,e.MLKIT=`mlkit`})(sP||={});var cP=[{selector:`.scanner-container-display`,css:`display: block;`},{selector:`.scanner-dialog`,css:`display: none; position: fixed; z-index: 999; left: 0; top: 0; width: 100%; height: 100%; overflow: auto; background-color: rgba(0,0,0,0.4);`},{selector:`.scanner-dialog-inner`,css:`background-color: #fefefe; margin: 2% auto; padding: 20px; border: 1px solid #888; width: 96%;`},{selector:`.close-button`,css:`color: #aaa; float: right; font-size: 28px; font-weight: bold; cursor: pointer;`},{selector:`.close-button:hover`,css:`color: #222;`},{selector:`.scanner-container-full-width`,css:`width: 100%;`}];function lP(e){let t=`custom-style-os-cap-barcode`,n=document.getElementById(t);if(n||(n=document.createElement(`style`),n.type=`text/css`,n.id=t,document.head.appendChild(n)),n.sheet){for(;n.sheet.cssRules.length;)n.sheet.deleteRule(0);for(let{selector:t,css:r}of e)n.sheet.insertRule(`${t} { ${r} }`)}else{n.textContent=``;for(let{selector:t,css:r}of e)n.textContent+=`${t} { ${r} }`}}var uP=Ag(`CapacitorBarcodeScanner`,{web:()=>(lP(cP),us(()=>import(`./web-BuYdGVW8.js`).then(e=>new e.CapacitorBarcodeScannerWeb),[]))}),dP=class{static async scanBarcode(e){return e.scanInstructions=e.scanInstructions||` `,e.scanButton=e.scanButton||!1,e.scanText=e.scanText||` `,e.cameraDirection=e.cameraDirection||rP.BACK,e.scanOrientation=e.scanOrientation||iP.ADAPTIVE,uP.scanBarcode(e)}};function fP(e){if(e instanceof Error){let t=e.message.toLowerCase();return t.includes(`permission`)||t.includes(`denied`)||t.includes(`not allowed`)||t.includes(`unauthorized`)}return!1}function pP(e){if(e instanceof Error){let t=e.message.toLowerCase();return t.includes(`cancel`)||t.includes(`user cancelled`)||t.includes(`scan cancelled`)}return!1}function mP(){let[e,t]=(0,Z.useState)(!1);return{scan:(0,Z.useCallback)(async()=>{if(!Za())return{value:null,error:null};t(!0);try{let e=await dP.scanBarcode({hint:oP.QR_CODE,scanInstructions:`Point the camera at a Tarsk QR code`});return e?.ScanResult?{value:e.ScanResult,error:null}:{value:null,error:null}}catch(e){return pP(e)?{value:null,error:null}:fP(e)?{value:null,error:`Camera permission was denied. Please grant camera access in your device settings to scan QR codes.`}:{value:null,error:`Unable to scan QR code. Please make sure your device has a camera and try again.`}}finally{t(!1)}},[]),isScanning:e,isAvailable:Za()}}function hP(){let[e,t]=(0,Z.useState)(!0),[n,r]=(0,Z.useState)(Vr),[i,a]=(0,Z.useState)(null),[o,s]=(0,Z.useState)(null),[c,l]=(0,Z.useState)(!1),u=mP();(0,Z.useEffect)(()=>{let e=!0;return(async()=>{try{let n=await fetch(`${Fa()}/health`,{method:`GET`});e&&t(n.ok)}catch{e&&t(!1)}})(),()=>{e=!1}},[]);let d=(0,Z.useCallback)(async()=>{let e=qo(n);if(e){a(null),l(!0);try{if(!await Or(e)){a(e);return}Pi(n)}finally{l(!1)}}},[n]),f=(0,Z.useCallback)(async()=>{s(null);let e=await u.scan();if(e.error){s(e.error);return}if(e.value){r(e.value),a(null);let t=qo(e.value);if(!t){s(`The scanned QR code did not contain a valid server address.`);return}l(!0);try{if(!await Or(t)){a(t);return}Pi(e.value)}finally{l(!1)}}},[u]);return e?null:(0,$.jsx)(pc,{open:!0,children:(0,$.jsxs)(cc,{children:[(0,$.jsxs)(fc,{children:[(0,$.jsx)(`img`,{src:`/tarsk-color.svg`,alt:`Tarsk`,className:`mx-auto h-16 w-16 rounded-lg`}),(0,$.jsx)(sc,{children:`Connect to Tarsk`}),(0,$.jsx)(oc,{children:`Connect to the Tarsk server running on your local network by entering the IP Address or domain name below.`})]}),(0,$.jsxs)(`div`,{className:`relative`,children:[(0,$.jsx)(Qo,{value:n,onChange:e=>{r(e.target.value),a(null),s(null)},onKeyDown:e=>{e.key===`Enter`&&!c&&d()},placeholder:`192.168.1.100`,autoComplete:`off`,spellCheck:!1,disabled:c,className:u.isAvailable?`pr-10`:void 0}),u.isAvailable&&(0,$.jsx)(Hr,{type:`button`,variant:`ghost`,size:`icon`,className:`absolute right-1 top-1 h-8 w-8`,"aria-label":`Scan QR code`,disabled:c||u.isScanning,onClick:()=>void f(),children:u.isScanning?(0,$.jsx)(ln,{className:`h-4 w-4 animate-spin`}):(0,$.jsx)(jt,{className:`h-4 w-4`})})]}),o&&(0,$.jsxs)(mo,{variant:`error`,className:`mb-0 flex items-start gap-3`,children:[(0,$.jsx)(`p`,{className:`flex-1`,children:o}),(0,$.jsx)(Hr,{type:`button`,variant:`ghost`,size:`icon`,className:`h-8 w-8 shrink-0`,"aria-label":`Dismiss error`,onClick:()=>s(null),children:(0,$.jsx)(nt,{className:`h-4 w-4`})})]}),i&&(0,$.jsxs)(mo,{variant:`error`,className:`mb-0 flex items-start gap-3`,children:[(0,$.jsxs)(`p`,{className:`flex-1`,children:[`Unable to connect to `,i,`. Please check that you are on the same network and that the Tarsk server is running and accessible on the network.`]}),(0,$.jsx)(Hr,{type:`button`,variant:`ghost`,size:`icon`,className:`h-8 w-8 shrink-0`,"aria-label":`Dismiss error`,onClick:()=>a(null),children:(0,$.jsx)(nt,{className:`h-4 w-4`})})]}),(0,$.jsx)(uc,{children:(0,$.jsx)(Hr,{onClick:()=>void d(),disabled:!n.trim()||c,children:c?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(ln,{className:`mr-2 h-4 w-4 animate-spin`}),`Connecting...`]}):`Connect`})}),(0,$.jsxs)(mo,{variant:`hint`,className:`mb-0`,children:[(0,$.jsx)(`p`,{className:U.bodyMuted,children:`Start the Tarsk server on your local machine by running:`}),(0,$.jsx)(`code`,{className:G(U.mono,`mt-2 block rounded bg-background/60 px-2 py-1 text-foreground`),children:`npx tarsk --server`})]})]})})}var gP=(0,Z.lazy)(()=>us(()=>import(`./create-project-dialog-DrXo61FQ.js`),__vite__mapDeps([35,1,33,4,5]))),_P=(0,Z.lazy)(()=>us(()=>import(`./onboarding-KBcwP-kU.js`).then(e=>e.t),__vite__mapDeps([4,1,5])));function vP(e){let t=(0,Q.c)(42),{showCreateProject:n,createProjectInitialMode:r,onCreateProjectOpenChange:i,onSubmitClone:a,onSubmitWebApp:o,onSubmitFolder:s,deleteProject:c,deleteProjectBlocked:l,deleteProjectBlockReason:u,deleteProjectDeletesFolder:d,onDeleteProjectOpenChange:f,onConfirmDeleteProject:p,deleteProjectProgress:m,onDeleteProjectRetry:h,onDeleteProjectProgressClose:g,pendingSetupScriptConfirmation:_,onResolveSetupScriptConfirmation:v,pendingZipOverride:y,onResolveZipOverride:b,showOnboarding:x,onOnboardingOpenChange:S,onOnboardingComplete:C}=e,w=r??void 0,T;t[0]!==i||t[1]!==a||t[2]!==s||t[3]!==o||t[4]!==n||t[5]!==w?(T=(0,$.jsx)(Z.Suspense,{fallback:null,children:(0,$.jsx)(gP,{open:n,onOpenChange:i,initialMode:w,onSubmitClone:a,onSubmitWebApp:o,onSubmitFolder:s})}),t[0]=i,t[1]=a,t[2]=s,t[3]=o,t[4]=n,t[5]=w,t[6]=T):T=t[6];let E=c!==null,D=c?.name,O;t[7]!==u||t[8]!==l||t[9]!==d||t[10]!==p||t[11]!==f||t[12]!==E||t[13]!==D?(O=(0,$.jsx)(NM,{open:E,projectName:D,onOpenChange:f,onConfirm:p,blocked:l,blockReason:u,deletesFolder:d}),t[7]=u,t[8]=l,t[9]=d,t[10]=p,t[11]=f,t[12]=E,t[13]=D,t[14]=O):O=t[14];let k;t[15]!==m||t[16]!==g||t[17]!==h?(k=(0,$.jsx)(HC,{progress:m,onRetry:h,onClose:g}),t[15]=m,t[16]=g,t[17]=h,t[18]=k):k=t[18];let A=_!==null,j;t[19]===_?j=t[20]:(j=_?[_.command,..._.remainingScripts||[]]:[],t[19]=_,t[20]=j);let M;t[21]!==v||t[22]!==A||t[23]!==j?(M=(0,$.jsx)(PM,{open:A,setupScripts:j,onConfirm:v}),t[21]=v,t[22]=A,t[23]=j,t[24]=M):M=t[24];let N=y!==null,P=y?.existingProjectName,F=y?.zipFilename,I;t[25]!==b||t[26]!==N||t[27]!==P||t[28]!==F?(I=(0,$.jsx)(IM,{open:N,existingProjectName:P,zipFilename:F,onConfirm:b}),t[25]=b,t[26]=N,t[27]=P,t[28]=F,t[29]=I):I=t[29];let L;t[30]!==C||t[31]!==S||t[32]!==x?(L=(0,$.jsx)(Z.Suspense,{fallback:null,children:(0,$.jsx)(_P,{open:x,onOpenChange:S,onComplete:C})}),t[30]=C,t[31]=S,t[32]=x,t[33]=L):L=t[33];let R;t[34]===Symbol.for(`react.memo_cache_sentinel`)?(R=(0,$.jsx)(hP,{}),t[34]=R):R=t[34];let z;return t[35]!==I||t[36]!==L||t[37]!==T||t[38]!==O||t[39]!==k||t[40]!==M?(z=(0,$.jsxs)($.Fragment,{children:[T,O,k,M,I,L,R]}),t[35]=I,t[36]=L,t[37]=T,t[38]=O,t[39]=k,t[40]=M,t[41]=z):z=t[41],z}function yP(){let e=(0,Q.c)(8),{setIsSelectModeEnabled:t,setIsEditModeEnabled:n,setSelectedBrowserElement:r,setIsSelectionPromptOpen:i}=nk(),a;e[0]!==n||e[1]!==t||e[2]!==i||e[3]!==r?(a=e=>{r(e),t(!1),n(!1),i(!yM(e))},e[0]=n,e[1]=t,e[2]=i,e[3]=r,e[4]=a):a=e[4];let o=a,s,c;e[5]===o?(s=e[6],c=e[7]):(s=()=>{let e=function(e){let t=e.detail;fM(t)&&o(t)},t=function(e){let t=hM(e.data);t&&o(t)};return window.addEventListener(sM,e),window.addEventListener(`message`,t),function(){window.removeEventListener(sM,e),window.removeEventListener(`message`,t)}},c=[o],e[5]=o,e[6]=s,e[7]=c),(0,Z.useEffect)(s,c)}var bP=`__tarskBrowserCapture`,xP=15e3,SP=0,CP=null,wP=new Set;function TP(){for(let e of wP)e()}function EP(){CP!=null&&(clearTimeout(CP),CP=null)}function DP(){EP(),SP!==0&&(SP=0,TP())}function OP(){SP+=1,EP(),CP=setTimeout(DP,xP),SP===1&&TP()}function kP(){SP!==0&&(--SP,!(SP>0)&&(EP(),TP()))}function AP(){return SP>0}function jP(e){return wP.add(e),function(){wP.delete(e)}}function MP(e){if(e!=null){let t=document.getElementById(`electrobun-webview-${e}`);if(t)return t}return document.querySelector(`electrobun-webview`)}function NP(e,t){return e.width<=0||e.height<=0?null:{x:t.screenX+e.left,y:t.screenY+e.top,width:e.width,height:e.height}}function PP(e){let t=MP(e);return t?NP(t.getBoundingClientRect(),window):null}function FP(){let e=window;return e[bP]={begin:OP,end:kP,rect:PP},function(){delete e[bP],DP()}}var IP=Ut(`app.use-browser-tool-listener.hook`);function LP(e){let t=e.trim();return t?t.startsWith(`http://`)||t.startsWith(`https://`)?t:`http://${t}`:``}function RP(){return document.querySelector(`electrobun-webview`)}function zP(e=2e4){return new Promise((t,n)=>{let r=Date.now();function i(){let a=RP();if(a&&a.webviewId!=null){t(a);return}if(Date.now()-r>e){n(Error(`Timed out waiting for preview webview to mount`));return}requestAnimationFrame(i)}requestAnimationFrame(i)})}async function BP(e,t,n){switch(t.action){case`reload`:return e.reload(),{action:`reload`,webview_id:e.webviewId,current_url:n||e.src||null};case`go_back`:return e.goBack(),{action:`go_back`,webview_id:e.webviewId,current_url:n||e.src||null};case`go_forward`:return e.goForward(),{action:`go_forward`,webview_id:e.webviewId,current_url:n||e.src||null};case`get_state`:{let t=await e.canGoBack(),r=await e.canGoForward();return{action:`get_state`,webview_id:e.webviewId,current_url:n||e.src||null,can_go_back:t,can_go_forward:r}}default:throw Error(`Unsupported host browser action: ${String(t.action)}`)}}function VP(e){let t=Date.now();function n(){if(Date.now()-t>2e4){IP.error(`[browser-tool] timed out waiting for preview webview to mount (${e})`);return}let r=RP();if(!r||r.webviewId==null){requestAnimationFrame(n);return}E_(e,r.webviewId).catch(e=>{IP.error(`[browser-tool] failed to report preview webview ready`,e)})}requestAnimationFrame(n)}async function HP(e,t,n){let{toolCallId:r,input:i}=e;if(!(!r||!i.action)){if(i.action===`set_viewport`){let e=i.preset??`desktop`;n(e);try{let t=await zP();t.syncDimensions(!0),await D_(r,{action:`set_viewport`,preset:e,webview_id:t.webviewId})}catch(t){IP.error(`[browser-tool] failed to set viewport`,t),await D_(r,{action:`set_viewport`,preset:e,error:t instanceof Error?t.message:String(t)})}return}if(zt(i.action)){try{await D_(r,await BP(await zP(),i,t))}catch(e){IP.error(`[browser-tool] failed to execute host browser action`,e),await D_(r,{action:i.action,error:e instanceof Error?e.message:String(e)})}return}VP(r)}}function UP(){let{openChatDockPanel:e}=Wd(),{expandWindow:t,hasOpenWindows:n}=gc(),{setDevServerUrl:r,devServerUrl:i}=vw(),{setBrowserDeviceMode:a}=nk(),o=(0,Z.useRef)(null),s=X(e=>{let t=o.current;return t?e.threadStreamingStates[Es(t,`primary`)]?.isStreaming??!1:!1}),c=(0,Z.useRef)(i);c.current=i;let l=(0,Z.useRef)(e);l.current=e;let u=(0,Z.useRef)(t);u.current=t;let d=(0,Z.useRef)(n);d.current=n;let f=(0,Z.useRef)(r);f.current=r;let p=(0,Z.useRef)(a);p.current=a;let m=(0,Z.useRef)(!1);function h(){d.current&&u.current(Ct)}(0,Z.useEffect)(()=>{if(!o.current){m.current=!1;return}let e=m.current;m.current=s,!(!e||s)&&(o.current=null,h())},[s]),(0,Z.useEffect)(()=>{function e(e){let t=e.detail;t?.threadId&&o.current===t.threadId&&(o.current=null,h())}return window.addEventListener(o_,e),function(){window.removeEventListener(o_,e)}},[]),(0,Z.useEffect)(()=>{if(Pr())return FP()},[]),(0,Z.useEffect)(()=>{if(!Pr())return;function e(e){let t=e.detail;if(!t?.toolCallId||!t.input?.action)return;t.threadId&&(o.current=t.threadId,m.current=!0),l.current(`browser`,{navigateToChat:!1});let n=t.input.url?.trim()||c.current||``;if(n){let e=LP(n);e&&f.current(e)}HP(t,c.current||``,p.current)}return window.addEventListener(a_,e),function(){window.removeEventListener(a_,e)}},[])}var WP=e=>{let t=(0,Q.c)(8),n,r;t[0]===e?(n=t[1],r=t[2]):({className:n,...r}=e,t[0]=e,t[1]=n,t[2]=r);let i;t[3]===n?i=t[4]:(i=G(`flex h-full w-full data-[panel-group-direction=vertical]:flex-col`,n),t[3]=n,t[4]=i);let a;return t[5]!==r||t[6]!==i?(a=(0,$.jsx)(yn,{className:i,...r}),t[5]=r,t[6]=i,t[7]=a):a=t[7],a},GP=Hn,KP=e=>{let t=(0,Q.c)(12),n,r,i;t[0]===e?(n=t[1],r=t[2],i=t[3]):({withHandle:i,className:n,...r}=e,t[0]=e,t[1]=n,t[2]=r,t[3]=i);let a;t[4]===n?a=t[5]:(a=G(`relative flex w-px items-center justify-center bg-transparent after:absolute after:inset-y-0 after:left-1/2 after:w-1 after:-translate-x-1/2 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring focus-visible:ring-offset-1 data-[panel-group-direction=vertical]:h-px data-[panel-group-direction=vertical]:w-full data-[panel-group-direction=vertical]:after:left-0 data-[panel-group-direction=vertical]:after:h-1 data-[panel-group-direction=vertical]:after:w-full data-[panel-group-direction=vertical]:after:-translate-y-1/2 data-[panel-group-direction=vertical]:after:translate-x-0 [&[data-panel-group-direction=vertical]>div]:rotate-90`,n),t[4]=n,t[5]=a);let o;t[6]===i?o=t[7]:(o=i&&(0,$.jsx)(`div`,{className:`hidden z-10 flex h-4 w-3 items-center justify-center rounded-sm border bg-border`,children:(0,$.jsx)(I,{className:`h-2.5 w-2.5`})}),t[6]=i,t[7]=o);let s;return t[8]!==r||t[9]!==a||t[10]!==o?(s=(0,$.jsx)(J,{className:a,...r,children:o}),t[8]=r,t[9]=a,t[10]=o,t[11]=s):s=t[11],s};function qP(){let e=(0,Q.c)(5),{toasts:t}=ic(),n;e[0]===t?n=e[1]:(n=t.map(JP),e[0]=t,e[1]=n);let r;e[2]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,$.jsx)(WC,{}),e[2]=r):r=e[2];let i;return e[3]===n?i=e[4]:(i=(0,$.jsxs)(UC,{duration:5e3,children:[n,r]}),e[3]=n,e[4]=i),i}function JP(e){let{id:t,title:n,description:r,action:i,variant:a,...o}=e,s=a===`destructive`,c=[n,r].filter(Boolean).join(`
3356
+ `),l=s?(0,$.jsxs)(qC,{altText:`Copy error`,onClick:()=>{navigator.clipboard.writeText(c)},children:[(0,$.jsx)(Ze,{className:`h-4 w-4`}),`Copy`]}):null;return(0,$.jsxs)(KC,{variant:a,...o,children:[(0,$.jsxs)(`div`,{className:`grid gap-1`,children:[n&&(0,$.jsx)(YC,{children:n}),r&&(0,$.jsx)(XC,{children:r})]}),(0,$.jsxs)(`div`,{className:`flex items-center gap-1`,children:[i,l]}),(0,$.jsx)(JC,{})]},t)}function YP(){return new Uc({defaultOptions:{queries:{staleTime:3e4,retry:1,refetchOnWindowFocus:!0},mutations:{retry:0}}})}function XP(e){let t=(0,Q.c)(3),{children:n}=e,[r]=(0,Z.useState)(YP),i;return t[0]!==n||t[1]!==r?(i=(0,$.jsx)(xr,{client:r,children:n}),t[0]=n,t[1]=r,t[2]=i):i=t[2],i}function ZP(){let e=(0,Q.c)(4),{resolvedTheme:t,theme:n}=Ic(),r,i;return e[0]!==t||e[1]!==n?(r=()=>{if(window.tarsk?.setNativeTheme){let e=n===`system`?`system`:t||`system`;window.tarsk.setNativeTheme(e)}},i=[t,n],e[0]=t,e[1]=n,e[2]=r,e[3]=i):(r=e[2],i=e[3]),(0,Z.useEffect)(r,i),null}function QP(e){let t=(0,Q.c)(7),n,r;t[0]===e?(n=t[1],r=t[2]):({children:n,...r}=e,t[0]=e,t[1]=n,t[2]=r);let i;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(i=(0,$.jsx)(ZP,{}),t[3]=i):i=t[3];let a;return t[4]!==n||t[5]!==r?(a=(0,$.jsxs)(Lc,{...r,children:[i,n]}),t[4]=n,t[5]=r,t[6]=a):a=t[6],a}function $P(){let e=(0,Q.c)(2),[t,n]=(0,Z.useState)(eF),r,i;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=()=>{let e=()=>n(!0),t=()=>n(!1);return window.addEventListener(`focus`,e),window.addEventListener(`blur`,t),()=>{window.removeEventListener(`focus`,e),window.removeEventListener(`blur`,t)}},i=[],e[0]=r,e[1]=i):(r=e[0],i=e[1]),(0,Z.useEffect)(r,i),t}function eF(){return document.hasFocus()}var tF=Ut(`chat.processing-threads`),nF=null;function rF(){nF??=new Audio(`/pop.wav`),nF.currentTime=0,nF.play().catch(e=>{tF.debug(`Could not play completion sound`,{err:e})})}function iF(){let e=Ks(),t=Vs(),n=X(e=>e.processingThreadIds),r=X(e=>e.completedThreadIds),i=$P(),{activeMainTab:a,setChatNotification:o}=mc(),s=(0,Z.useRef)(null),c=(0,Z.useRef)(!1),l=(0,Z.useRef)([]),u=(0,Z.useRef)(i),d=(0,Z.useRef)(a);(0,Z.useEffect)(()=>{u.current=i},[i]),(0,Z.useEffect)(()=>{d.current=a,a===`chat`&&o(!1)},[a,o]);let f=(0,Z.useCallback)(async()=>{try{let n=await _o(),r=wg(n.processingThreadIds),i=n.processingRuns.filter(e=>!Cg(e.threadId)),a=t.getState().selectedThreadId,s=l.current.filter(e=>!r.includes(e)),c=a!==null&&s.includes(a);for(let t of s)t!==a&&e({type:Y.MarkThreadCompleted,threadId:t});if(r.length>0&&d.current!==`chat`&&o(!0),(r.length===0||c)&&o(!1),s.length>0&&!u.current&&rF(),s.length>0)try{Si();let t=await lo();e({type:Y.SetProjects,projects:t.projects,cloneRootPath:t.cloneRootPath})}catch(e){tF.error(`Failed to refresh projects after thread completion`,{err:e})}return l.current=r,e({type:Y.SetProcessingThreads,threadIds:r,processingRuns:i}),r}catch(e){return tF.error(`Failed to fetch processing threads`,{err:e}),[]}},[e,t]);return(0,Z.useEffect)(()=>{let e=()=>{if(s.current||c.current)return;c.current=!0;let e=async()=>{let n=await f(),r=t.getState(),i=Object.values(r.threadStreamingStates).some(e=>e.isStreaming);n.length>0||i||r.isCreatingProject?s.current=setTimeout(e,1e3):(s.current=null,c.current=!1)};e()},n=()=>{s.current&&=(clearTimeout(s.current),null),c.current=!1};return e(),()=>{n()}},[f]),{processingThreadIds:n,completedThreadIds:r,isThreadProcessing:e=>n.includes(e),isThreadCompleted:e=>r.includes(e),clearCompleted:(0,Z.useCallback)(t=>{e({type:Y.ClearThreadCompleted,threadId:t})},[e])}}var aF=768;function oF(){let e=(0,Q.c)(2),[t,n]=Z.useState(sF),r,i;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=()=>{let e=window.matchMedia(`(max-width: ${aF-1}px)`),t=()=>{n(window.innerWidth<aF)};return e.addEventListener(`change`,t),n(window.innerWidth<aF),()=>e.removeEventListener(`change`,t)},i=[],e[0]=r,e[1]=i):(r=e[0],i=e[1]),Z.useEffect(r,i),t}function sF(){return typeof window>`u`?!1:window.innerWidth<aF}function cF(){let e=(0,Q.c)(15),t=Ks(),[n,r]=(0,Z.useState)(!1),[i,a]=(0,Z.useState)(!1),o;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(o={queryKey:_y.onboarding.status(),queryFn:Do,staleTime:1/0,retry:1},e[0]=o):o=e[0];let s=vr(o),c;e[1]===Symbol.for(`react.memo_cache_sentinel`)?(c={queryKey:_y.app.update(),queryFn:Er,staleTime:1/0,retry:!1},e[1]=c):c=e[1];let l=vr(c),u,d;e[2]!==s.data||e[3]!==s.isSuccess?(u=()=>{s.isSuccess&&!s.data.onboardingCompleted&&r(!0)},d=[s.isSuccess,s.data],e[2]=s.data,e[3]=s.isSuccess,e[4]=u,e[5]=d):(u=e[4],d=e[5]),(0,Z.useEffect)(u,d);let f,p;e[6]!==t||e[7]!==n?(f=()=>{n||t({type:Y.ConfigUpdated})},p=[n,t],e[6]=t,e[7]=n,e[8]=f,e[9]=p):(f=e[8],p=e[9]),(0,Z.useEffect)(f,p);let m;e[10]===Symbol.for(`react.memo_cache_sentinel`)?(m=async()=>{a(!0);try{await ta()}catch{a(!1)}},e[10]=m):m=e[10];let h=m,g=l.data?.updateAvailable??!1,_;return e[11]!==n||e[12]!==g||e[13]!==i?(_={showOnboarding:n,setShowOnboarding:r,updateAvailable:g,updatingApp:i,handleUpdateApp:h},e[11]=n,e[12]=g,e[13]=i,e[14]=_):_=e[14],_}function lF(e){let t=(0,Q.c)(22),{selectedThreadId:n}=e,r=Yn(),i=Gn(),{activeMainTab:a,setActiveMainTab:o}=mc(),{openChatDockPanel:s}=Wd(),{terminalState:c}=Ps(n),l;t[0]===i.pathname?l=t[1]:(l=i.pathname.startsWith(`/settings`),t[0]=i.pathname,t[1]=l);let u=l,d=i.pathname===`/review`,f=i.pathname===`/tasks`,p=(0,Z.useRef)(null),m,h;t[2]!==f||t[3]!==r||t[4]!==s?(m=()=>{f&&(r(`/`),s(`tasks`))},h=[f,r,s],t[2]=f,t[3]=r,t[4]=s,t[5]=m,t[6]=h):(m=t[5],h=t[6]),(0,Z.useEffect)(m,h);let g,_;t[7]!==i.pathname||t[8]!==s||t[9]!==n||t[10]!==c.open?(g=()=>{c.open&&n===p.current&&!Ud(i.pathname)&&s(`terminal`),p.current=n},_=[c.open,n,i.pathname,s],t[7]=i.pathname,t[8]=s,t[9]=n,t[10]=c.open,t[11]=g,t[12]=_):(g=t[11],_=t[12]),(0,Z.useEffect)(g,_);let v,y;t[13]!==a||t[14]!==d||t[15]!==u||t[16]!==o?(v=()=>{a!==`chat`&&!u&&!d&&o(`chat`)},y=[a,d,u,o],t[13]=a,t[14]=d,t[15]=u,t[16]=o,t[17]=v,t[18]=y):(v=t[17],y=t[18]),(0,Z.useEffect)(v,y);let b;return t[19]!==d||t[20]!==u?(b={isSettingsRoute:u,isReviewRoute:d},t[19]=d,t[20]=u,t[21]=b):b=t[21],b}function uF(e,t){let n=(0,Q.c)(8),r=Ks(),i=X(dF),a=(0,Z.useRef)(null),o;n[0]!==r||n[1]!==t||n[2]!==e||n[3]!==i?(o=()=>{let n=e||t;if(n&&a.current===null)a.current=i,i&&r({type:Y.ToggleSidebar});else if(!n&&a.current!==null){let e=a.current;a.current=null,e&&!i&&r({type:Y.ToggleSidebar})}},n[0]=r,n[1]=t,n[2]=e,n[3]=i,n[4]=o):o=n[4];let s;n[5]!==t||n[6]!==e?(s=[e,t],n[5]=t,n[6]=e,n[7]=s):s=n[7],(0,Z.useEffect)(o,s)}function dF(e){return e.sidebarOpen}var fF=Ag(`App`,{web:()=>us(()=>import(`./web-yeAPC2wm.js`).then(e=>new e.AppWeb),[])}),pF=1e10,mF=1e3;function hF(e,t){let n=e.map(e=>`"${e}"`).join(`, `);return Error(`This RPC instance cannot ${t} because the transport did not provide one or more of these methods: ${n}`)}function gF(e={}){let t={},n={},r;function i(e){n.unregisterHandler&&n.unregisterHandler(),n=e,n.registerHandler?.(x)}function a(e){if(typeof e==`function`){r=e;return}r=(t,n)=>{let r=e[t];if(r)return r(n);let i=e._;if(!i)throw Error(`The requested method has no handler: ${String(t)}`);return i(t,n)}}let{maxRequestTime:o=mF}=e;e.transport&&i(e.transport),e.requestHandler&&a(e.requestHandler),e._debugHooks&&(t=e._debugHooks);let s=0;function c(){return s<=pF?++s:s=0}let l=new Map,u=new Map;function d(e,...r){let i=r[0];return new Promise((r,a)=>{if(!n.send)throw hF([`send`],`make requests`);let s=c(),d={type:`request`,id:s,method:e,params:i};l.set(s,{resolve:r,reject:a}),o!==1/0&&u.set(s,setTimeout(()=>{u.delete(s),l.delete(s),a(Error(`RPC request timed out.`))},o)),t.onSend?.(d),n.send(d)})}let f=new Proxy(d,{get:(e,t,n)=>t in e?Reflect.get(e,t,n):e=>d(t,e)}),p=f;function m(e,...r){let i=r[0];if(!n.send)throw hF([`send`],`send messages`);let a={type:`message`,id:e,payload:i};t.onSend?.(a),n.send(a)}let h=new Proxy(m,{get:(e,t,n)=>t in e?Reflect.get(e,t,n):e=>m(t,e)}),g=h,_=new Map,v=new Set;function y(e,t){if(!n.registerHandler)throw hF([`registerHandler`],`register message listeners`);if(e===`*`){v.add(t);return}_.has(e)||_.set(e,new Set),_.get(e).add(t)}function b(e,t){if(e===`*`){v.delete(t);return}_.get(e)?.delete(t),_.get(e)?.size===0&&_.delete(e)}async function x(e){if(t.onReceive?.(e),!(`type`in e))throw Error(`Message does not contain a type.`);if(e.type===`request`){if(!n.send||!r)throw hF([`send`,`requestHandler`],`handle requests`);let{id:i,method:a,params:o}=e,s;try{s={type:`response`,id:i,success:!0,payload:await r(a,o)}}catch(e){if(!(e instanceof Error))throw e;s={type:`response`,id:i,success:!1,error:e.message}}t.onSend?.(s),n.send(s);return}if(e.type===`response`){let t=u.get(e.id);t!=null&&clearTimeout(t),u.delete(e.id);let{resolve:n,reject:r}=l.get(e.id)??{};l.delete(e.id),e.success?n?.(e.payload):r?.(Error(e.error));return}if(e.type===`message`){for(let t of v)t(e.id,e.payload);let t=_.get(e.id);if(!t)return;for(let n of t)n(e.payload);return}throw Error(`Unexpected RPC message type: ${e.type}`)}return{setTransport:i,setRequestHandler:a,request:f,requestProxy:p,send:h,sendProxy:g,addMessageListener:y,removeMessageListener:b,proxy:{send:g,request:p}}}function _F(e,t){let n=gF({maxRequestTime:t.maxRequestTime,requestHandler:{...t.handlers.requests,...t.extraRequestHandlers},transport:{registerHandler:()=>{}}}),r=t.handlers.messages;return r&&n.addMessageListener(`*`,((e,t)=>{let n=r[`*`];n&&n(e,t);let i=r[e];i&&i(t)})),n}var vF=window.__electrobunWebviewId,yF=window.__electrobunRpcSocketPort,bF=class{bunSocket;rpc;rpcHandler;constructor(e){this.rpc=e.rpc,this.init()}init(){this.initSocketToBun(),window.__electrobun.receiveMessageFromBun=this.receiveMessageFromBun.bind(this),this.rpc&&this.rpc.setTransport(this.createTransport())}initSocketToBun(){let e=new WebSocket(`ws://localhost:${yF}/socket?webviewId=${vF}`);this.bunSocket=e,e.addEventListener(`open`,()=>{}),e.addEventListener(`message`,async e=>{let t=e.data;if(typeof t==`string`)try{let e=JSON.parse(t),n=await window.__electrobun_decrypt(e.encryptedData,e.iv,e.tag);this.rpcHandler?.(JSON.parse(n))}catch(e){console.error(`Error parsing bun message:`,e)}else t instanceof Blob||console.error(`UNKNOWN DATA TYPE RECEIVED:`,e.data)}),e.addEventListener(`error`,e=>{console.error(`Socket error:`,e)}),e.addEventListener(`close`,e=>{})}createTransport(){let e=this;return{send(t){try{let n=JSON.stringify(t);e.bunBridge(n)}catch(e){console.error(`bun: failed to serialize message to webview`,e)}},registerHandler(t){e.rpcHandler=t}}}async bunBridge(e){if(this.bunSocket?.readyState===WebSocket.OPEN)try{let{encryptedData:t,iv:n,tag:r}=await window.__electrobun_encrypt(e),i=JSON.stringify({encryptedData:t,iv:n,tag:r});this.bunSocket.send(i);return}catch(e){console.error(`Error sending message to bun via socket:`,e)}window.__electrobunBunBridge?.postMessage(e)}receiveMessageFromBun(e){this.rpcHandler&&this.rpcHandler(e)}static defineRPC(e){return _F(`webview`,{...e,extraRequestHandlers:{evaluateJavascriptWithResponse:({script:e})=>new Promise(t=>{try{let n=Function(e)();n instanceof Promise?n.then(e=>{t(e)}).catch(e=>{console.error(`bun: async script execution failed`,e),t(String(e))}):t(n)}catch(e){console.error(`bun: failed to eval script`,e),t(String(e))}})}})}},xF=null;function SF(e){xF?.send.setWindowLabel({label:e})}function CF(e){xF?.send.openProjectIconDialog({startingFolder:e})}function wF(e){let t=(0,Z.useRef)(e);t.current=e,(0,Z.useEffect)(()=>{window.__electrobunWebviewId&&(xF=bF.defineRPC({handlers:{requests:{},messages:{openTarskUrl:function({url:e}){t.current?.(e)},projectIconSelected:function({dataUrl:e}){window.dispatchEvent(new CustomEvent(`tarsk:project-icon-selected`,{detail:{dataUrl:e}}))}}}}),new bF({rpc:xF}))},[]),(0,Z.useEffect)(()=>{if(!Za())return;let e=fF.addListener(`backButton`,({canGoBack:e})=>{e?window.history.back():fF.exitApp()});return()=>{e.then(e=>e.remove())}},[])}var TF=Ut(`app.embed-host.hook`);function EF(e){let t=(0,Q.c)(7),n=Ks(),r=X(DF),i=(0,Z.useRef)(null),a,o;t[0]===n?(a=t[1],o=t[2]):(a=()=>{AO()&&n({type:Y.CloseSidebar})},o=[n],t[0]=n,t[1]=a,t[2]=o),(0,Z.useEffect)(a,o);let s,c;t[3]!==e||t[4]!==r?(s=()=>{if(!AO()||r)return;let t=kO();!t||i.current===t||(i.current=t,e(t).catch(e=>{i.current=null,TF.error(`Failed to open embed project path:`,e)}))},c=[r,e],t[3]=e,t[4]=r,t[5]=s,t[6]=c):(s=t[5],c=t[6]),(0,Z.useEffect)(s,c)}function DF(e){return e.projectsLoading}function OF(e){let t=e.replace(/\.zip$/i,``);return/-source-code$/i.test(t)?t.replace(/-source-code$/i,``):/\s+source\s+code$/i.test(t)?t.replace(/\s+source\s+code$/i,``):null}function kF(e){return e.trim().toLowerCase().replace(/[\\/]+/g,` `).replace(/[^a-z0-9._ -]+/g,``).replace(/\s+/g,`-`).replace(/-+/g,`-`).replace(/^-|-$/g,``)}function AF(e,t){let n=OF(e);if(!n)return null;let r=kF(n);return r?t.find(e=>kF(Ke(e))===r)??null:null}var jF=Ut(`app.merged-pr-dialog-host.ui`),MF=(0,Z.lazy)(()=>us(()=>import(`./merged-pr-dialog-C3euJvCu.js`).then(e=>({default:e.MergedPRDialog})),__vite__mapDeps([38,4,1,5])));function NF({threadId:e,projectId:t}){let n=Ks(),r=X(e=>e.projects.find(e=>e.projectId===t)),i=Fd(),[a,o]=(0,Z.useState)(!1),[s,c]=(0,Z.useState)(!1),l=(0,Z.useRef)(null),[u,d]=(0,Z.useState)(()=>sT());(0,Z.useEffect)(()=>{cT(u)},[u]),(0,Z.useEffect)(()=>hT(()=>{l.current=e,o(!0)}),[e]),(0,Z.useEffect)(()=>{i.prExists&&i.prState===`MERGED`&&l.current!==e&&(l.current=e,o(!0))},[i.prExists,i.prState,e]);async function f(){try{c(!0);let r=await Po(e);if(u.newChatOnNewBranch){let r=`New Chat`;await Qa(e,{title:r}),n({type:Y.UpdateThreadTitle,projectId:t,threadId:e,title:r});let i=await Io(e);n({type:Y.ClearMessages,conversationId:i})}Si();let a=await lo();n({type:Y.SetProjects,projects:a.projects,cloneRootPath:a.cloneRootPath}),ac({title:`New branch created`,description:`Created new branch "${r.branchName}" from the latest default branch`}),o(!1),await i.fetchUnifiedStatus(!0),setTimeout(()=>void i.fetchUnifiedStatus(!0),1500)}catch(e){jF.error(`Failed to create new branch:`,e),ac({title:`Failed to create new branch`,description:e instanceof Error?e.message:`Unknown error occurred`,variant:`destructive`})}finally{c(!1)}}function p(){o(!1),i.fetchUnifiedStatus(!0)}return a?(0,$.jsx)(Z.Suspense,{fallback:null,children:(0,$.jsx)(MF,{open:a,onOpenChange:o,onNewBranch:f,onJustOpen:p,newChatOnNewBranch:u.newChatOnNewBranch,onNewChatOnNewBranchChange:e=>d(t=>({...t,newChatOnNewBranch:e})),isLoading:s,projectName:r?.name})}):null}function PF(e){if(e.port!=null&&e.pid!=null){let t=e.command?`${e.command} `:``;return`Port ${e.port} is in use by ${t}(PID ${e.pid}). Kill it and retry starting the dev server?`}return e.port==null?`The dev server port is already in use. Kill the blocking process and retry?`:`Port ${e.port} is already in use. Kill the process on that port and retry?`}function FF(){let e=(0,Q.c)(28),{portConflictPrompt:t,clearPortConflictPrompt:n}=vw(),r;e[0]!==n||e[1]!==t?(r=function(e){!e&&t&&(t.resolve(!1),n())},e[0]=n,e[1]=t,e[2]=r):r=e[2];let i=r,a;e[3]!==n||e[4]!==t?(a=function(){t?.resolve(!1),n()},e[3]=n,e[4]=t,e[5]=a):a=e[5];let o=a,s;e[6]!==n||e[7]!==t?(s=function(){t?.resolve(!0),n()},e[6]=n,e[7]=t,e[8]=s):s=e[8];let c=s,l=t!=null,u;e[9]===Symbol.for(`react.memo_cache_sentinel`)?(u=(0,$.jsx)(sc,{children:`Port already in use`}),e[9]=u):u=e[9];let d;e[10]===t?d=e[11]:(d=t?PF(t):null,e[10]=t,e[11]=d);let f;e[12]===d?f=e[13]:(f=(0,$.jsxs)(fc,{children:[u,(0,$.jsx)(oc,{children:d})]}),e[12]=d,e[13]=f);let p;e[14]===o?p=e[15]:(p=(0,$.jsx)(dc,{onClick:o,children:`Cancel`}),e[14]=o,e[15]=p);let m;e[16]===c?m=e[17]:(m=(0,$.jsx)(lc,{onClick:c,children:`Kill and retry`}),e[16]=c,e[17]=m);let h;e[18]!==p||e[19]!==m?(h=(0,$.jsxs)(uc,{children:[p,m]}),e[18]=p,e[19]=m,e[20]=h):h=e[20];let g;e[21]!==f||e[22]!==h?(g=(0,$.jsxs)(cc,{children:[f,h]}),e[21]=f,e[22]=h,e[23]=g):g=e[23];let _;return e[24]!==i||e[25]!==g||e[26]!==l?(_=(0,$.jsx)(pc,{open:l,onOpenChange:i,children:g}),e[24]=i,e[25]=g,e[26]=l,e[27]=_):_=e[27],_}function IF(e){let t=(0,Q.c)(3),{children:n}=e,r;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,$.jsx)(FF,{}),t[0]=r):r=t[0];let i;return t[1]===n?i=t[2]:(i=(0,$.jsx)(hc,{children:(0,$.jsx)(_c,{children:(0,$.jsxs)(_w,{children:[r,(0,$.jsx)(yc,{children:(0,$.jsx)(ek,{children:n})})]})})}),t[1]=n,t[2]=i),i}function LF(e){let t=(0,Q.c)(5),n=Gn(),{windows:r,expandedWindowId:i}=gc();if(n.pathname===`/review`)return`Review`;if(n.pathname.startsWith(`/settings`))return`Settings`;if(!e)return`Projects`;if(i){let e;if(t[0]!==i||t[1]!==r){e=Symbol.for(`react.early_return_sentinel`);bb0:{let n;t[3]===i?n=t[4]:(n=e=>e.id===i,t[3]=i,t[4]=n);let a=r.find(n);if(a){e=WO(a.panelId);break bb0}}t[0]=i,t[1]=r,t[2]=e}else e=t[2];if(e!==Symbol.for(`react.early_return_sentinel`))return e}return`Chat`}function RF(){let e=(0,Q.c)(6),t=X(VF),n=X(BF),r=X(zF)===`projects`,i=LF(n!=null&&!r),a,o;e[0]!==r||e[1]!==t||e[2]!==n||e[3]!==i?(a=()=>{if(!n||r){document.title=`Tarsk - ${i}`,SF(`Projects`);return}let e=t.find(e=>e.projectId===n);if(!e){document.title=`Tarsk`,SF(`Projects`);return}let a=Ke(e);document.title=`${a} - ${i}`,SF(a)},o=[r,t,n,i],e[0]=r,e[1]=t,e[2]=n,e[3]=i,e[4]=a,e[5]=o):(a=e[4],o=e[5]),(0,Z.useEffect)(a,o)}function zF(e){return e.projectPanelView}function BF(e){return e.selectedProjectId}function VF(e){return e.projects}var HF=`tarsk.ui-crash-report`,UF=8e3,WF=2e3,GF=0,KF=``;function qF(e,t){if(e)return e.length<=t?e:`${e.slice(0,t)}…`}function JF(e,t){if(e instanceof DOMException&&e.name===`AbortError`||e instanceof Error&&e.name===`AbortError`)return!0;let n=t.trim().toLowerCase();return n===`fetch is aborted`||n.includes(`the operation was aborted`)||n.includes(`bodystreambuffer was aborted`)}function YF(e,t){return e instanceof Error&&e.name===`Canceled`?!0:t.trim()===`Canceled`}function XF(e,t){return e instanceof Error&&e.name===`Canceled`?!1:t.includes(`TextModel got disposed before DiffEditorWidget model got reset`)}function ZF(e,t){return e instanceof Error?!1:t.trim().toLowerCase()===`script error.`}function QF(e){let{message:t}=$F(e);return t.includes(`ResizeObserver loop`)||JF(e,t)||YF(e,t)||XF(e,t)||ZF(e,t)}function $F(e){if(e instanceof Error)return{message:e.message||e.name||`Unknown error`,stack:e.stack};if(typeof e==`string`)return{message:e.trim()||`Unknown error`};if(e&&typeof e==`object`&&`message`in e){let t=e.message;if(typeof t==`string`&&t.trim())return{message:t.trim()}}try{return{message:JSON.stringify(e)}}catch{return{message:String(e)}}}function eI(e,t,n){let r=$F(e);return{message:r.message,stack:qF(r.stack,UF),componentStack:qF(n?.trim(),UF),source:t,url:typeof window<`u`?window.location.href:``,userAgent:typeof navigator<`u`?navigator.userAgent:``,timestamp:new Date().toISOString()}}function tI(e){let t=Date.now();return e===KF&&t-GF<WF?!0:(KF=e,GF=t,!1)}function nI(){if(typeof localStorage>`u`)return null;let e=localStorage.getItem(HF);if(!e)return null;try{let t=JSON.parse(e);return!t||typeof t.message!=`string`||typeof t.timestamp!=`string`?null:{message:t.message,stack:typeof t.stack==`string`?t.stack:void 0,componentStack:typeof t.componentStack==`string`?t.componentStack:void 0,source:t.source===`window.error`||t.source===`unhandledrejection`||t.source===`react`?t.source:`window.error`,url:typeof t.url==`string`?t.url:``,userAgent:typeof t.userAgent==`string`?t.userAgent:``,timestamp:t.timestamp}}catch{return null}}function rI(){typeof localStorage>`u`||localStorage.removeItem(HF)}function iI(e,t){let n=eI(e,t.source,t.componentStack);if(!tI(n.message)&&typeof localStorage<`u`)try{localStorage.setItem(HF,JSON.stringify(n))}catch{}return n}function aI(e){let t=[`Tarsk UI crash report`,`Time: ${e.timestamp}`,`Source: ${e.source}`,`URL: ${e.url||`(unknown)`}`,`Message: ${e.message}`];return e.stack&&t.push(``,`Stack:`,e.stack),e.componentStack&&t.push(``,`Component stack:`,e.componentStack),e.userAgent&&t.push(``,`User agent: ${e.userAgent}`),t.join(`
3357
+ `)}function oI(e){if(typeof window>`u`)return;let t=e?.shouldIgnore;window.addEventListener(`error`,e=>{let n=e.error??e.message;t?.(n)||QF(n)||iI(n,{source:`window.error`})}),window.addEventListener(`unhandledrejection`,e=>{if(t?.(e.reason)||QF(e.reason)){e.preventDefault();return}iI(e.reason,{source:`unhandledrejection`})})}function sI(e){let t=new Date(e);return Number.isNaN(t.getTime())?e:t.toLocaleString()}function cI({open:e,report:t,variant:n,onDismiss:r,onReload:i}){let[a,o]=(0,Z.useState)(!1),[s,c]=(0,Z.useState)(!1);async function l(){c(!0);try{await navigator.clipboard.writeText(aI(t)),o(!0),window.setTimeout(()=>o(!1),2e3)}catch{o(!1)}finally{c(!1)}}let u=[t.stack,t.componentStack?`Component stack:\n${t.componentStack}`:void 0].filter(Boolean).join(`
3359
3358
 
3360
- `);return(0,$.jsx)(pc,{open:e,children:(0,$.jsxs)(cc,{className:`flex max-h-[85dvh] max-w-2xl flex-col gap-4 overflow-hidden`,children:[(0,$.jsxs)(fc,{className:`shrink-0`,children:[(0,$.jsx)(sc,{children:n===`previous-session`?`Previous UI crash`:`UI crashed`}),(0,$.jsx)(oc,{children:n===`previous-session`?`Tarsk recovered on launch, but the UI crashed during your last session.`:`The UI hit an unhandled error. You can copy the details below or reload the app.`})]}),(0,$.jsxs)(`div`,{className:`min-h-0 space-y-3`,children:[(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`p`,{className:G(U.label,`text-muted-foreground`),children:`Error`}),(0,$.jsx)(`p`,{className:G(U.body,`break-words`),children:t.message})]}),(0,$.jsxs)(`div`,{className:G(U.compact,`grid gap-1 text-muted-foreground sm:grid-cols-2`),children:[(0,$.jsxs)(`p`,{children:[(0,$.jsx)(`span`,{className:`font-medium text-foreground`,children:`When:`}),` `,aI(t.timestamp)]}),(0,$.jsxs)(`p`,{children:[(0,$.jsx)(`span`,{className:`font-medium text-foreground`,children:`Source:`}),` `,t.source]})]}),u?(0,$.jsx)(za,{className:`max-h-64 rounded-md border border-border bg-muted/40`,children:(0,$.jsx)(`pre`,{className:G(U.compact,`whitespace-pre-wrap break-words p-3 font-mono text-foreground`),children:u})}):null]}),(0,$.jsxs)(uc,{className:`shrink-0 sm:justify-between`,children:[(0,$.jsxs)(Hr,{type:`button`,variant:`outline`,disabled:s,onClick:()=>void l(),children:[s?(0,$.jsx)(ln,{className:`h-4 w-4 animate-spin`}):(0,$.jsx)(Ze,{className:`h-4 w-4`}),a?`Copied`:`Copy details`]}),(0,$.jsxs)(`div`,{className:`flex gap-2`,children:[n===`previous-session`?(0,$.jsx)(Hr,{type:`button`,variant:`outline`,onClick:r,children:`Close`}):null,n===`current-session`&&i?(0,$.jsx)(Hr,{type:`button`,onClick:i,children:`Reload`}):null]})]})]})})}var sI=Date.now();function cI(e){let t=Date.parse(e.timestamp);return Number.isFinite(t)?t<sI-500:!0}function lI(){let e=(0,Q.c)(3),[t,n]=(0,Z.useState)(uI);if(!t)return null;let r;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=function(){tI(),n(null)},e[0]=r):r=e[0];let i=r,a;return e[1]===t?a=e[2]:(a=(0,$.jsx)(oI,{open:!0,report:t,variant:`previous-session`,onDismiss:i}),e[1]=t,e[2]=a),a}function uI(){let e=eI();return!e||!cI(e)?null:e}function dI(e,t){for(let n of e)if(!(n.type!==`content`&&n.type!==`thinking`))for(let e of n.chunks)A_(e,t)}function fI(e,t,n){for(let t of Object.values(n))t.threadId===e&&j_(t,e);for(let n of fs(t,e)){let r=As(t,e,n);r.streamingContent&&A_(r.streamingContent,e),dI(r.streamingSegments,e)}}function pI(){let e=(0,Q.c)(6),t=X(_I),n=X(gI),r=X(hI),i=X(mI),a,o;e[0]!==t||e[1]!==n||e[2]!==r||e[3]!==i?(a=()=>{let e=new Set;for(let n of t)e.add(n);n&&e.add(n);for(let t of e)fI(t,r,i)},o=[t,n,r,i],e[0]=t,e[1]=n,e[2]=r,e[3]=i,e[4]=a,e[5]=o):(a=e[4],o=e[5]),(0,Z.useEffect)(a,o)}function mI(e){return e.toolCallProgress}function hI(e){return e.threadStreamingStates}function gI(e){return e.selectedThreadId}function _I(e){return e.processingThreadIds}function vI({url:e,projectId:t,projectName:n,projects:r,onSelectProject:i,onClose:a,onInstalled:o}){let[s,c]=(0,Z.useState)(null),[l,u]=(0,Z.useState)(null),[d,f]=(0,Z.useState)([]),[p,m]=(0,Z.useState)(!1),[h,g]=(0,Z.useState)(!1),_=(0,Z.useRef)(0),v=s!==null&&s.skills.length===0&&s.mcpServers.length>0;(0,Z.useEffect)(()=>{let n=++_.current;if(!e||!t){c(null),u(null),g(!1);return}c(null),u(null),g(!0),Ui(t,e).then(e=>{n===_.current&&(c(e),f(e.mcpServers.filter(e=>!e.conflict).map(e=>e.name)))}).catch(e=>{n===_.current&&u(e instanceof Error?e.message:`Unable to inspect plugin archive`)}).finally(()=>{n===_.current&&g(!1)})},[e,t]);async function y(){if(!(!e||!t||!s)){g(!0);try{await hi(t,{url:e,skills:s.skills.map(e=>e.name),mcpServers:d,replace:p}),o?.({mcpOnly:v}),a()}catch(e){u(e instanceof Error?e.message:`Unable to install plugin archive`)}finally{g(!1)}}}return(0,$.jsx)(Ni,{open:!!e,onOpenChange:e=>{e||a()},children:(0,$.jsxs)(Ir,{children:[(0,$.jsxs)(Dr,{children:[(0,$.jsx)(qa,{children:v?`Install MCP Server`:`Install plugin`}),(0,$.jsx)(_i,{children:t?s?`${s.manifest.name} will be installed in the project “${n??`Unknown`}”.`:`Inspecting the plugin archive…`:`Select a project to preview this plugin archive.`})]}),t?null:(0,$.jsxs)(vo,{value:void 0,onValueChange:i,children:[(0,$.jsx)(na,{children:(0,$.jsx)(Vo,{placeholder:`Select a project`})}),(0,$.jsx)(io,{children:r.map(e=>(0,$.jsx)(Ba,{value:e.projectId,children:Ke(e)},e.projectId))})]}),l?(0,$.jsx)(`p`,{className:`text-destructive text-sm`,children:l}):null,s?(0,$.jsxs)(`div`,{className:`space-y-4 text-sm`,children:[(0,$.jsxs)(`div`,{children:[(0,$.jsx)(`strong`,{children:`Skills`}),(0,$.jsx)(`p`,{children:s.skills.map(e=>`${e.name}${e.conflict?` (already installed)`:``}`).join(`, `)||`None`})]}),s.mcpServers.length?(0,$.jsxs)(`div`,{className:`space-y-2`,children:[(0,$.jsx)(`strong`,{children:`MCP servers`}),s.mcpServers.map(e=>(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(ko,{checked:d.includes(e.name),onCheckedChange:t=>f(n=>t?[...n,e.name]:n.filter(t=>t!==e.name)),id:`mcp-${e.name}`}),(0,$.jsxs)(da,{htmlFor:`mcp-${e.name}`,children:[e.name,e.conflict?` (already configured)`:``]})]},e.name))]}):null,s.skills.some(e=>e.conflict)||s.mcpServers.some(e=>e.conflict)?(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(ko,{checked:p,onCheckedChange:e=>m(e===!0),id:`replace-plugin`}),(0,$.jsx)(da,{htmlFor:`replace-plugin`,children:`Replace existing files and MCP servers`})]}):null]}):null,(0,$.jsxs)(Xa,{children:[(0,$.jsx)(Hr,{variant:`outline`,onClick:a,children:`Cancel`}),(0,$.jsx)(Hr,{disabled:!s||h,onClick:()=>void y(),children:`Install`})]})]})})}var yI=(0,Z.createContext)(null);function bI(){let e=(0,Z.useContext)(yI);if(!e)throw Error(`useRequestDeleteProject must be used within a DeleteProjectRequestContext`);return e}function xI(){return VP(),_P(),null}function SI(){return pI(),null}function CI(){let e=(0,Q.c)(1),t;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t={queryKey:[`health-status`,Fa()],queryFn:wI,refetchInterval:3e4,retry:!1},e[0]=t):t=e[0],vr(t)}async function wI(){let e=await fetch(`${Fa()}/health`,{method:`GET`});if(!e.ok)throw Error(`Failed to load health status`);return e.json()}function TI(){let e=Yn(),[t,n]=(0,Z.useState)(null);return SF((0,Z.useCallback)(t=>{if(!t.startsWith(`tarsk://`))return;let r=t.slice(8);try{let t=new URL(`https://tarsk.invalid/${r}`);if(t.pathname===`/skill-install`&&t.searchParams.get(`url`)){n(t.searchParams.get(`url`));return}let i=/^https?:\/\//i.test(r)?new URL(r):t;e(`${i.pathname}${i.search}${i.hash}`||`/`)}catch{}},[e,n])),{pendingPluginImportUrl:t,setPendingPluginImportUrl:n}}function EI(){let e=(0,Q.c)(2),t=Ks(),n;return e[0]===t?n=e[1]:(n=e=>{t({type:Y.OpenProjectPanel,projectId:e})},e[0]=t,e[1]=n),n}function DI(e){let t=(0,Q.c)(17),{handleOpenFolder:n,handleCreateZip:r,projects:i}=e,[a,o]=(0,Z.useState)(!1),[s,c]=(0,Z.useState)(null),[l,u]=(0,Z.useState)(null),d;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(d=e=>{o(e),e||c(null)},t[0]=d):d=t[0];let f=d,p;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(p=e=>{c(e),o(!0)},t[1]=p):p=t[1];let m=p,h;t[2]===n?h=t[3]:(h=()=>{n()},t[2]=n,t[3]=h);let g=h,_;t[4]!==r||t[5]!==i?(_=()=>{let e=document.createElement(`input`);e.type=`file`,e.accept=`.zip,application/zip,application/x-zip-compressed`,e.style.display=`none`,document.body.appendChild(e),e.addEventListener(`change`,()=>{document.body.removeChild(e);let t=e.files?.[0];if(!t)return;let n=OF(t.name,i);if(n){u({file:t,filename:t.name,existingProjectId:n.projectId,existingProjectName:Ke(n)});return}r(t,t.name)},{once:!0}),e.click()},t[4]=r,t[5]=i,t[6]=_):_=t[6];let v=_,y;t[7]!==r||t[8]!==l?(y=e=>{let t=l;u(null),t&&e&&r(t.file,t.filename,t.existingProjectId)},t[7]=r,t[8]=l,t[9]=y):y=t[9];let b=y,x;return t[10]!==s||t[11]!==g||t[12]!==v||t[13]!==l||t[14]!==b||t[15]!==a?(x={showCreateProject:a,setShowCreateProject:o,createProjectInitialMode:s,handleCreateProjectOpenChange:f,openCreateProjectDialog:m,handleOpenFolderProject:g,handleSelectZip:v,pendingZipOverride:l,resolveZipOverride:b},t[10]=s,t[11]=g,t[12]=v,t[13]=l,t[14]=b,t[15]=a,t[16]=x):x=t[16],x}function OI(e){let t=(0,Q.c)(35),{projects:n,cloneRootPath:r,processingThreadIds:i,devServerProjectId:a,devServerState:o,pendingSetupScriptConfirmation:s,confirmDeleteProject:c}=e,[l,u]=(0,Z.useState)(null),[d,f]=(0,Z.useState)(null),p;t[0]!==r||t[1]!==n?(p=e=>{let t=n.find(t=>t.projectId===e)?.projectPath;return!t||!r?!0:t.startsWith(r.replace(/\/+$/,``)+`/`)},t[0]=r,t[1]=n,t[2]=p):p=t[2];let m=p,h;t[3]!==m||t[4]!==n?(h=e=>{let t=n.find(t=>t.projectId===e);t&&u({id:t.projectId,name:Ke(t),deletesFolder:m(t.projectId)})},t[3]=m,t[4]=n,t[5]=h):h=t[5];let g=h,_;t[6]===m?_=t[7]:(_=e=>{u({...e,deletesFolder:m(e.id)})},t[6]=m,t[7]=_);let v=_,y;bb0:{if(!l){y=!1;break bb0}let e;if(t[8]!==l.id||t[9]!==i||t[10]!==n){let r;t[12]===l.id?r=t[13]:(r=e=>e.projectId===l.id,t[12]=l.id,t[13]=r);let a=n.find(r)?.threads.map(jI)??[],o;t[14]===i?o=t[15]:(o=e=>i.includes(e),t[14]=i,t[15]=o),e=a.some(o),t[8]=l.id,t[9]=i,t[10]=n,t[11]=e}else e=t[11];let r=e,c=a===l.id&&(o===`starting`||o===`running`||o===`stopping`),u=s?.projectId===l.id;y=r||c||u}let b=y,x=b?`Stop or finish active sessions before deleting this project.`:null,S;t[16]===c?S=t[17]:(S=(e,t)=>{u(null),f({projectId:e,projectName:t,step:0,status:`progressing`}),c(e,e=>f(e)).catch(AI)},t[16]=c,t[17]=S);let C=S,w;t[18]!==c||t[19]!==d?(w=()=>{if(!d)return;let{projectId:e,projectName:t}=d;f({projectId:e,projectName:t,step:0,status:`progressing`}),c(e,e=>f(e)).catch(kI)},t[18]=c,t[19]=d,t[20]=w):w=t[20];let T=w,E;t[21]===Symbol.for(`react.memo_cache_sentinel`)?(E=()=>{f(null)},t[21]=E):E=t[21];let D=E,O;t[22]===d?.status?O=t[23]:(O=()=>{if(d?.status!==`done`)return;let e=window.setTimeout(()=>f(null),800);return()=>window.clearTimeout(e)},t[22]=d?.status,t[23]=O);let k;t[24]===d?k=t[25]:(k=[d],t[24]=d,t[25]=k),(0,Z.useEffect)(O,k);let A;return t[26]!==d||t[27]!==l||t[28]!==x||t[29]!==b||t[30]!==g||t[31]!==v||t[32]!==T||t[33]!==C?(A={deleteProject:l,setDeleteProject:u,deleteProgress:d,deleteProjectBlocked:b,deleteProjectBlockReason:x,handleDeleteProject:g,handleDeleteProjectRequest:v,runDeleteProject:C,handleDeleteProjectRetry:T,handleDeleteProjectProgressClose:D},t[26]=d,t[27]=l,t[28]=x,t[29]=b,t[30]=g,t[31]=v,t[32]=T,t[33]=C,t[34]=A):A=t[34],A}function kI(){}function AI(){}function jI(e){return e.threadId}function MI({dispatch:e,navigate:t,location:n,projects:r,selectedThreadId:i,selectedProjectId:a,projectPanelView:o,projectPanelProjectId:s,sidebarOpen:c,useMobileLayout:l,clearCompleted:u,setActiveMainTab:d,triggerBrowserReset:f,handleSelectThread:p,handleCreateThread:m,openProjectActions:h}){let g=(0,Z.useRef)(()=>{}),_=(0,Z.useCallback)(e=>{m(e,void 0)},[m]);g.current=_;let v=s??a;(0,Z.useEffect)(()=>{function e(e){let t=e.key.toLowerCase();!((e.metaKey||e.ctrlKey)&&e.shiftKey&&!e.altKey)||t!==`t`||!v||(e.preventDefault(),g.current(v))}return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[v]);let y=(0,Z.useCallback)(()=>{e({type:Y.CloseProjectPanel}),c||e({type:Y.ToggleSidebar})},[e,c]),b=(0,Z.useCallback)((r,a)=>{u(a),n.pathname!==`/`&&t(`/`),d(`chat`),i!==a&&f(),p(r,a),l&&e({type:Y.CloseSidebar})},[p,l,i,e,u,n.pathname,t,d,f]);return{handleBackToProjects:y,handleSelectThreadWrapper:b,handleSelectProject:(0,Z.useCallback)(t=>{let n=o===`projects`;h(t);let a=r.find(e=>e.projectId===t);if(!a)return;function s(){n&&e({type:Y.FocusChatInput})}if(a.threads.some(e=>e.threadId===i)){s();return}let c=a.threads.find(e=>e.isSelected)??a.threads[0]??null;if(c){b(t,c.threadId),s();return}i&&f(),e({type:Y.SelectProject,projectId:t})},[h,o,r,i,b,f,e]),handleCreateThreadDirect:_}}function NI(e){let t=(0,Q.c)(23),{dispatch:n,handleBackToProjects:r,selectedProjectId:i,selectedThreadId:a,projectPanelView:o,projectPanelProjectId:s,actionsProject:c,sidebarOpen:l,sidebarPanelRef:u,showProjectsFullScreen:d,showingProjectDetails:f,useMobileLayout:p}=e,m,h;t[0]!==c||t[1]!==n||t[2]!==s||t[3]!==o||t[4]!==i||t[5]!==a?(m=()=>{if(o===`actions`&&s&&!c){if(i===s&&a)return;n({type:Y.CloseProjectPanel})}},h=[n,o,s,c,i,a],t[0]=c,t[1]=n,t[2]=s,t[3]=o,t[4]=i,t[5]=a,t[6]=m,t[7]=h):(m=t[6],h=t[7]),(0,Z.useEffect)(m,h);let g=(0,Z.useRef)(i),_,v;t[8]!==r||t[9]!==i?(_=()=>{let e=g.current!==null;g.current=i,e&&i===null&&r()},v=[i,r],t[8]=r,t[9]=i,t[10]=_,t[11]=v):(_=t[10],v=t[11]),(0,Z.useEffect)(_,v);let y;t[12]!==d||t[13]!==f||t[14]!==l||t[15]!==u||t[16]!==p?(y=()=>{if(!f){if(!l){u.current?.collapse();return}u.current?.expand(),d?u.current?.resize(100):p||u.current?.resize(25)}},t[12]=d,t[13]=f,t[14]=l,t[15]=u,t[16]=p,t[17]=y):y=t[17];let b;t[18]!==d||t[19]!==f||t[20]!==l||t[21]!==p?(b=[l,d,f,p],t[18]=d,t[19]=f,t[20]=l,t[21]=p,t[22]=b):b=t[22],(0,Z.useEffect)(y,b)}function PI(e){let t=(0,Q.c)(14),{selectedThreadId:n,sidebarOpen:r}=e,{mode:i}=xO(),a=iF(),o;t[0]===a?o=t[1]:(o=a||Za(),t[0]=a,t[1]=o);let s=o,{data:c}=CI(),l;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(l=OO(),t[2]=l):l=t[2];let u=l,d;t[3]===n?d=t[4]:(d={selectedThreadId:n},t[3]=n,t[4]=d);let{isSettingsRoute:f,isReviewRoute:p}=sF(d);cF(f,p),IF();let m=mC(),h=!f&&!p&&!m,g=h&&r,_;return t[5]!==c||t[6]!==p||t[7]!==f||t[8]!==g||t[9]!==h||t[10]!==m||t[11]!==s||t[12]!==i?(_={wallpaperMode:i,healthStatus:c,vscodeEmbed:u,isSettingsRoute:f,isReviewRoute:p,showingProjectDetails:m,useMobileLayout:s,showProjectsFullScreen:h,projectsHomeTakingScreen:g},t[5]=c,t[6]=p,t[7]=f,t[8]=g,t[9]=h,t[10]=m,t[11]=s,t[12]=i,t[13]=_):_=t[13],_}function FI(e){return G(`relative h-screen overflow-hidden`,e===`image`&&`bg-background`,e===`background`&&`bg-[hsl(var(--image-off-background))]`,e===`color`&&`bg-[var(--wallpaper-color)]`)}function II(e){let t=(0,Q.c)(1),{wallpaperMode:n}=e;if(n!==`image`)return null;let r;return t[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,$.jsx)(pl,{}),t[0]=r):r=t[0],r}function LI(e){return(0,$.jsx)(UP,{id:`app-sidebar-panel`,order:1,ref:e.sidebarPanelRef,defaultSize:e.showProjectsFullScreen||e.useMobileLayout?100:25,minSize:e.showProjectsFullScreen||e.useMobileLayout?50:12,maxSize:e.showProjectsFullScreen||e.useMobileLayout?100:32,collapsible:!0,collapsedSize:0,className:G(`border-r border-transparent`,e.useMobileLayout&&!e.sidebarOpen&&`hidden`),children:(0,$.jsx)(`div`,{className:`h-full overflow-hidden`,children:(0,$.jsx)(Ol,{projects:e.projects,selectedThreadId:e.selectedThreadId,selectedProjectId:e.selectedProjectId,deletingProjectIds:e.deletingProjectIds,onSelectProject:e.handleSelectProject,onCreateProject:e.openCreateProjectDialog,onOpenFolder:e.handleOpenFolderProject,onSelectZip:e.handleSelectZip,onDeleteProject:e.handleDeleteProject,collapsed:!e.sidebarOpen,updateAvailable:e.updateAvailable,updatingApp:e.updatingApp,onUpdateApp:e.handleUpdateApp,isDevMode:e.healthStatus?.isDevMode===!0})})})}function RI(e){let t=(0,Q.c)(16),n=e.projectsHomeTakingScreen?0:40,r=e.projectsHomeTakingScreen&&`hidden`,i;t[0]===r?i=t[1]:(i=G(`overflow-hidden`,r),t[0]=r,t[1]=i);let a;t[2]!==e.handleBackToProjects||t[3]!==e.handleCreateFolder||t[4]!==e.handleCreateProject||t[5]!==e.handleCreateThreadDirect||t[6]!==e.handleCreateWebApp||t[7]!==e.handleOpenFolder||t[8]!==e.handleSelectProject||t[9]!==e.isReviewRoute||t[10]!==e.selectedProjectId?(a=(0,$.jsx)(_v,{children:(0,$.jsx)(LC,{children:(0,$.jsx)(kM,{selectedProjectId:e.selectedProjectId,isReviewRoute:e.isReviewRoute,onCreateThread:e.handleCreateThreadDirect,onBackToProjects:e.handleBackToProjects,onSelectProject:e.handleSelectProject,onSubmitClone:e.handleCreateProject,onSubmitWebApp:e.handleCreateWebApp,onSubmitFolder:e.handleCreateFolder,onOpenFolder:e.handleOpenFolder})})}),t[2]=e.handleBackToProjects,t[3]=e.handleCreateFolder,t[4]=e.handleCreateProject,t[5]=e.handleCreateThreadDirect,t[6]=e.handleCreateWebApp,t[7]=e.handleOpenFolder,t[8]=e.handleSelectProject,t[9]=e.isReviewRoute,t[10]=e.selectedProjectId,t[11]=a):a=t[11];let o;return t[12]!==n||t[13]!==i||t[14]!==a?(o=(0,$.jsx)(UP,{id:`app-main-panel`,order:2,minSize:n,className:i,children:a}),t[12]=n,t[13]=i,t[14]=a,t[15]=o):o=t[15],o}function zI(e){let t=(0,Q.c)(57),n;t[0]===e.wallpaperMode?n=t[1]:(n=FI(e.wallpaperMode),t[0]=e.wallpaperMode,t[1]=n);let r;t[2]===e.wallpaperMode?r=t[3]:(r=(0,$.jsx)(II,{wallpaperMode:e.wallpaperMode}),t[2]=e.wallpaperMode,t[3]=r);let i=e.selectedThreadId??void 0,a;t[4]!==e.selectedProjectId||t[5]!==e.selectedThreadId?(a=e.selectedThreadId&&e.selectedProjectId?(0,$.jsx)(jF,{threadId:e.selectedThreadId,projectId:e.selectedProjectId}):null,t[4]=e.selectedProjectId,t[5]=e.selectedThreadId,t[6]=a):a=t[6];let o;t[7]===e?o=t[8]:(o=!e.vscodeEmbed&&!e.showingProjectDetails&&(0,$.jsx)(LI,{...e}),t[7]=e,t[8]=o);let s;t[9]!==e.showingProjectDetails||t[10]!==e.vscodeEmbed?(s=!e.vscodeEmbed&&!e.showingProjectDetails&&(0,$.jsx)(WP,{id:`app-sidebar-resize-handle`}),t[9]=e.showingProjectDetails,t[10]=e.vscodeEmbed,t[11]=s):s=t[11];let c;t[12]===e?c=t[13]:(c=(0,$.jsx)(RI,{...e}),t[12]=e,t[13]=c);let l=e.deleteProject?.deletesFolder??!0,u,d;t[14]===e?(u=t[15],d=t[16]):(u=t=>!t&&e.setDeleteProject(null),d=()=>{e.deleteProject&&e.runDeleteProject(e.deleteProject.id,e.deleteProject.name)},t[14]=e,t[15]=u,t[16]=d);let f;t[17]===e.pendingZipOverride?f=t[18]:(f=e.pendingZipOverride?{existingProjectId:e.pendingZipOverride.existingProjectId,existingProjectName:e.pendingZipOverride.existingProjectName,zipFilename:e.pendingZipOverride.filename}:null,t[17]=e.pendingZipOverride,t[18]=f);let p;t[19]===e?p=t[20]:(p=()=>{e.refreshProjects()},t[19]=e,t[20]=p);let m;t[21]!==e.createProjectInitialMode||t[22]!==e.deleteProgress||t[23]!==e.deleteProject||t[24]!==e.deleteProjectBlockReason||t[25]!==e.deleteProjectBlocked||t[26]!==e.handleCreateFolder||t[27]!==e.handleCreateProject||t[28]!==e.handleCreateProjectOpenChange||t[29]!==e.handleCreateWebApp||t[30]!==e.handleDeleteProjectProgressClose||t[31]!==e.handleDeleteProjectRetry||t[32]!==e.pendingSetupScriptConfirmation||t[33]!==e.resolveSetupScriptConfirmation||t[34]!==e.resolveZipOverride||t[35]!==e.setShowOnboarding||t[36]!==e.showCreateProject||t[37]!==e.showOnboarding||t[38]!==f||t[39]!==p||t[40]!==l||t[41]!==u||t[42]!==d?(m=(0,$.jsx)(gP,{showCreateProject:e.showCreateProject,createProjectInitialMode:e.createProjectInitialMode,onCreateProjectOpenChange:e.handleCreateProjectOpenChange,onSubmitClone:e.handleCreateProject,onSubmitWebApp:e.handleCreateWebApp,onSubmitFolder:e.handleCreateFolder,deleteProject:e.deleteProject,deleteProjectBlocked:e.deleteProjectBlocked,deleteProjectBlockReason:e.deleteProjectBlockReason,deleteProjectDeletesFolder:l,onDeleteProjectOpenChange:u,onConfirmDeleteProject:d,deleteProjectProgress:e.deleteProgress,onDeleteProjectRetry:e.handleDeleteProjectRetry,onDeleteProjectProgressClose:e.handleDeleteProjectProgressClose,pendingSetupScriptConfirmation:e.pendingSetupScriptConfirmation,onResolveSetupScriptConfirmation:e.resolveSetupScriptConfirmation,pendingZipOverride:f,onResolveZipOverride:e.resolveZipOverride,showOnboarding:e.showOnboarding,onOnboardingOpenChange:e.setShowOnboarding,onOnboardingComplete:p}),t[21]=e.createProjectInitialMode,t[22]=e.deleteProgress,t[23]=e.deleteProject,t[24]=e.deleteProjectBlockReason,t[25]=e.deleteProjectBlocked,t[26]=e.handleCreateFolder,t[27]=e.handleCreateProject,t[28]=e.handleCreateProjectOpenChange,t[29]=e.handleCreateWebApp,t[30]=e.handleDeleteProjectProgressClose,t[31]=e.handleDeleteProjectRetry,t[32]=e.pendingSetupScriptConfirmation,t[33]=e.resolveSetupScriptConfirmation,t[34]=e.resolveZipOverride,t[35]=e.setShowOnboarding,t[36]=e.showCreateProject,t[37]=e.showOnboarding,t[38]=f,t[39]=p,t[40]=l,t[41]=u,t[42]=d,t[43]=m):m=t[43];let h;t[44]!==m||t[45]!==o||t[46]!==s||t[47]!==c?(h=(0,$.jsxs)(HP,{id:`app-shell-panels`,direction:`horizontal`,className:`relative z-10 h-full`,children:[o,s,c,m]}),t[44]=m,t[45]=o,t[46]=s,t[47]=c,t[48]=h):h=t[48];let g;t[49]!==h||t[50]!==i||t[51]!==a?(g=(0,$.jsxs)(kE,{threadId:i,children:[a,h]}),t[49]=h,t[50]=i,t[51]=a,t[52]=g):g=t[52];let _;return t[53]!==n||t[54]!==r||t[55]!==g?(_=(0,$.jsxs)(`div`,{className:n,children:[r,g]}),t[53]=n,t[54]=r,t[55]=g,t[56]=_):_=t[56],_}function BI(e){let t=(0,Q.c)(25),n,r,i;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,$.jsx)(xI,{}),r=(0,$.jsx)(SI,{}),i=(0,$.jsx)(Xc,{}),t[0]=n,t[1]=r,t[2]=i):(n=t[0],r=t[1],i=t[2]);let a;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(a=(0,$.jsx)(Z.Suspense,{fallback:null,children:(0,$.jsx)(nw,{})}),t[3]=a):a=t[3];let o;t[4]===e?o=t[5]:(o=(0,$.jsx)(zI,{...e}),t[4]=e,t[5]=o);let s;t[6]===e.selectedProject?s=t[7]:(s=e.selectedProject?Ke(e.selectedProject):null,t[6]=e.selectedProject,t[7]=s);let c;t[8]===e?c=t[9]:(c=()=>e.setPendingPluginImportUrl(null),t[8]=e,t[9]=c);let l;t[10]!==e.handleSelectProject||t[11]!==e.pendingPluginImportUrl||t[12]!==e.projects||t[13]!==e.selectedProjectId||t[14]!==s||t[15]!==c?(l=(0,$.jsx)(vI,{url:e.pendingPluginImportUrl,projectId:e.selectedProjectId,projectName:s,projects:e.projects,onSelectProject:e.handleSelectProject,onClose:c}),t[10]=e.handleSelectProject,t[11]=e.pendingPluginImportUrl,t[12]=e.projects,t[13]=e.selectedProjectId,t[14]=s,t[15]=c,t[16]=l):l=t[16];let u,d;t[17]===Symbol.for(`react.memo_cache_sentinel`)?(u=(0,$.jsx)(GP,{}),d=(0,$.jsx)(lI,{}),t[17]=u,t[18]=d):(u=t[17],d=t[18]);let f;t[19]!==o||t[20]!==l?(f=(0,$.jsxs)($.Fragment,{children:[n,r,i,a,(0,$.jsxs)(Zo,{delayDuration:200,children:[o,l,u,d]})]}),t[19]=o,t[20]=l,t[21]=f):f=t[21];let p;return t[22]!==e.handleDeleteProjectRequest||t[23]!==f?(p=(0,$.jsx)(yI.Provider,{value:e.handleDeleteProjectRequest,children:f}),t[22]=e.handleDeleteProjectRequest,t[23]=f,t[24]=p):p=t[24],p}function VI(){let e=(0,Q.c)(79),t=Ks(),n=Yn(),r=Gn(),i=X(YI),a=X(JI),o=X(qI),s=X(KI),c=X(GI),l=X(WI),u=X(UI),d=X(HI),{pendingPluginImportUrl:f,setPendingPluginImportUrl:p}=TI(),{devServerProjectId:m,devServerState:h}=gw(),g=EI(),_;e[0]===g?_=e[1]:(_={onProjectCreated:g,onThreadCreateStart:g},e[0]=g,e[1]=_);let{projects:v,handleSelectThread:y,handleCreateProject:b,handleCreateWebApp:x,handleCreateFolder:S,handleCreateZip:C,handleOpenFolder:w,handleOpenPath:T,handleCreateThread:E,confirmDeleteProject:D,refreshProjects:O,pendingSetupScriptConfirmation:k,resolveSetupScriptConfirmation:A}=sw(_),j;if(e[2]!==v||e[3]!==a){let t;e[5]===a?t=e[6]:(t=e=>e.projectId===a,e[5]=a,e[6]=t),j=v.find(t),e[2]=v,e[3]=a,e[4]=j}else j=e[4];let M=j,N;e[7]!==i||e[8]!==o?(N={selectedThreadId:i,sidebarOpen:o},e[7]=i,e[8]=o,e[9]=N):N=e[9];let P=PI(N),F;e[10]!==C||e[11]!==w||e[12]!==v?(F={handleOpenFolder:w,handleCreateZip:C,projects:v},e[10]=C,e[11]=w,e[12]=v,e[13]=F):F=e[13];let I=DI(F),L;e[14]!==u||e[15]!==D||e[16]!==m||e[17]!==h||e[18]!==k||e[19]!==d||e[20]!==v?(L={projects:v,cloneRootPath:u,processingThreadIds:d,devServerProjectId:m,devServerState:h,pendingSetupScriptConfirmation:k,confirmDeleteProject:D},e[14]=u,e[15]=D,e[16]=m,e[17]=h,e[18]=k,e[19]=d,e[20]=v,e[21]=L):L=e[21];let R=OI(L),{clearCompleted:z}=nF(),{setActiveMainTab:B}=mc(),{triggerBrowserReset:V}=ek(),{showOnboarding:H,setShowOnboarding:ee,updateAvailable:te,updatingApp:ne,handleUpdateApp:re}=oF();wF(T);let ie;e[22]!==l||e[23]!==v?(ie=l==null?void 0:v.find(e=>e.projectId===l),e[22]=l,e[23]=v,e[24]=ie):ie=e[24];let ae=ie,oe=(0,Z.useRef)(null),se;e[25]!==z||e[26]!==t||e[27]!==E||e[28]!==y||e[29]!==r||e[30]!==n||e[31]!==g||e[32]!==l||e[33]!==c||e[34]!==v||e[35]!==a||e[36]!==i||e[37]!==B||e[38]!==o||e[39]!==V||e[40]!==P.useMobileLayout?(se={dispatch:t,navigate:n,location:r,projects:v,selectedThreadId:i,selectedProjectId:a,projectPanelView:c,projectPanelProjectId:l,sidebarOpen:o,useMobileLayout:P.useMobileLayout,clearCompleted:z,setActiveMainTab:B,triggerBrowserReset:V,handleSelectThread:y,handleCreateThread:E,openProjectActions:g},e[25]=z,e[26]=t,e[27]=E,e[28]=y,e[29]=r,e[30]=n,e[31]=g,e[32]=l,e[33]=c,e[34]=v,e[35]=a,e[36]=i,e[37]=B,e[38]=o,e[39]=V,e[40]=P.useMobileLayout,e[41]=se):se=e[41];let U=MI(se),ce;e[42]!==ae||e[43]!==t||e[44]!==l||e[45]!==c||e[46]!==a||e[47]!==i||e[48]!==U.handleBackToProjects||e[49]!==o||e[50]!==P.showProjectsFullScreen||e[51]!==P.showingProjectDetails||e[52]!==P.useMobileLayout?(ce={dispatch:t,handleBackToProjects:U.handleBackToProjects,selectedProjectId:a,selectedThreadId:i,projectPanelView:c,projectPanelProjectId:l,actionsProject:ae,sidebarOpen:o,sidebarPanelRef:oe,showProjectsFullScreen:P.showProjectsFullScreen,showingProjectDetails:P.showingProjectDetails,useMobileLayout:P.useMobileLayout},e[42]=ae,e[43]=t,e[44]=l,e[45]=c,e[46]=a,e[47]=i,e[48]=U.handleBackToProjects,e[49]=o,e[50]=P.showProjectsFullScreen,e[51]=P.showingProjectDetails,e[52]=P.useMobileLayout,e[53]=ce):ce=e[53],NI(ce);let le;return e[54]!==I||e[55]!==R||e[56]!==s||e[57]!==S||e[58]!==b||e[59]!==x||e[60]!==w||e[61]!==re||e[62]!==f||e[63]!==k||e[64]!==v||e[65]!==O||e[66]!==A||e[67]!==M||e[68]!==a||e[69]!==i||e[70]!==U||e[71]!==p||e[72]!==ee||e[73]!==H||e[74]!==o||e[75]!==te||e[76]!==ne||e[77]!==P?(le={...P,...I,...R,...U,sidebarOpen:o,selectedThreadId:i,selectedProjectId:a,deletingProjectIds:s,sidebarPanelRef:oe,projects:v,selectedProject:M,updateAvailable:te,updatingApp:ne,handleUpdateApp:re,handleCreateProject:b,handleCreateWebApp:x,handleCreateFolder:S,handleOpenFolder:w,showOnboarding:H,setShowOnboarding:ee,refreshProjects:O,pendingSetupScriptConfirmation:k,resolveSetupScriptConfirmation:A,pendingPluginImportUrl:f,setPendingPluginImportUrl:p},e[54]=I,e[55]=R,e[56]=s,e[57]=S,e[58]=b,e[59]=x,e[60]=w,e[61]=re,e[62]=f,e[63]=k,e[64]=v,e[65]=O,e[66]=A,e[67]=M,e[68]=a,e[69]=i,e[70]=U,e[71]=p,e[72]=ee,e[73]=H,e[74]=o,e[75]=te,e[76]=ne,e[77]=P,e[78]=le):le=e[78],le}function HI(e){return e.processingThreadIds}function UI(e){return e.cloneRootPath}function WI(e){return e.projectPanelProjectId}function GI(e){return e.projectPanelView}function KI(e){return e.deletingProjectIds}function qI(e){return e.sidebarOpen}function JI(e){return e.selectedProjectId}function YI(e){return e.selectedThreadId}function XI(){let e=(0,Q.c)(2),t=VI(),n;return e[0]===t?n=e[1]:(n=(0,$.jsx)(BI,{...t}),e[0]=t,e[1]=n),n}function ZI(){let e=(0,Q.c)(1),t;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,$.jsx)(PF,{children:(0,$.jsx)(XI,{})}),e[0]=t):t=e[0],t}function QI(){let e=(0,Q.c)(3),[t]=(0,Z.useState)(qs),n=OO(),r;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,$.jsx)(ZI,{}),e[0]=r):r=e[0];let i;return e[1]===t?i=e[2]:(i=(0,$.jsx)(XP,{attribute:`class`,defaultTheme:n?`dark`:`system`,enableSystem:!0,storageKey:n?`tarsk-theme-vscode`:`tarsk-theme`,children:(0,$.jsx)(JP,{children:(0,$.jsx)(Zs.Provider,{value:t,children:r})})}),e[1]=t,e[2]=i),i}var $I=75,eL=125,tL=100;function nL(){return window.matchMedia(`(max-width: 767px)`).matches}function rL(e){let t=C(e,nL());document.documentElement.style.fontSize=`${t}%`}var iL=!1;function aL(){iL||(iL=!0,window.matchMedia(`(max-width: 767px)`).addEventListener(`change`,()=>{rL(Vi(tL))}))}function oL(){let[e,t]=(0,Z.useState)(()=>Vi(tL));(0,Z.useEffect)(()=>{aL(),rL(e)},[e]);function n(e){let n=Math.max($I,Math.min(eL,Math.round(e)));t(n),Ta(n)}return{scale:e,updateScale:n,resetScale:(0,Z.useCallback)(()=>{n(tL)},[]),min:$I,max:eL,default:tL}}function sL(){aL(),rL(Vi(tL))}var cL=60,lL=100,uL=80,dL=`--frosted-panel-opacity`;function fL(e){document.documentElement.style.setProperty(dL,String(e/100))}function pL(){let[e,t]=(0,Z.useState)(()=>Gi(uL));(0,Z.useEffect)(()=>{fL(e)},[e]);function n(e){let n=Math.max(cL,Math.min(lL,Math.round(e)));t(n),Pa(n)}return{opacity:e,updateOpacity:n,resetOpacity:(0,Z.useCallback)(()=>{n(uL)},[]),min:cL,max:lL,default:uL}}function mL(){fL(Gi(uL))}var hL=`--brand`,gL=`--brand-foreground`,_L=`0 0% 9%`,vL=`0 0% 100%`,yL=jr(),bL=new Set;function xL(){for(let e of bL)e()}function SL(e){let t=uO(e);if(!t)return;document.documentElement.style.setProperty(hL,t);let n=lO(e);document.documentElement.style.setProperty(gL,n!==null&&n>140?_L:vL)}function CL(){return yL}function wL(e){return bL.add(e),function(){bL.delete(e)}}function TL(e){let t=sO(e);t===null||yL===t||(yL=t,xa(t),SL(t),xL())}function EL(){let e=(0,Q.c)(2),t=(0,Z.useSyncExternalStore)(wL,CL,CL),n=OL,r=DL,i;return e[0]===t?i=e[1]:(i={color:t,updateColor:n,resetColor:r,default:Ja},e[0]=t,e[1]=i),i}function DL(){TL(Ja)}function OL(e){TL(e)}function kL(){yL=jr(),SL(yL)}var AL;(function(e){e.Dark=`DARK`,e.Light=`LIGHT`,e.Default=`DEFAULT`})(AL||={});var jL;(function(e){e.None=`NONE`,e.Slide=`SLIDE`,e.Fade=`FADE`})(jL||={});var ML=Og(`StatusBar`),NL=`--app-viewport-height`;function PL(){let e=window.visualViewport,t=Math.round(Lr()===`ios`?window.innerHeight:e?.height??window.innerHeight);document.documentElement.style.setProperty(NL,`${t}px`)}function FL(){PL(),requestAnimationFrame(PL)}function IL(){document.documentElement.dataset.nativeShell=`true`,FL(),window.addEventListener(`resize`,PL),window.addEventListener(`orientationchange`,FL);let e=window.visualViewport;e?.addEventListener(`resize`,PL),e?.addEventListener(`scroll`,PL)}async function LL(){try{await ML.setOverlaysWebView({overlay:!0}),await ML.show(),FL()}catch{}}async function RL(){try{let e=Lr()===`ios`?eD.None:eD.Body;await tD.setResizeMode({mode:e})}catch{}}function zL(){Za()&&(IL(),LL(),RL(),document.addEventListener(`visibilitychange`,()=>{if(document.visibilityState===`visible`){FL(),LL();return}Kg()}))}var BL=class extends Z.Component{state={hasError:!1,report:null};static getDerivedStateFromError(){return{hasError:!0}}componentDidCatch(e,t){this.setState({report:nI(e,{source:`react`,componentStack:t.componentStack??void 0})})}handleReload=()=>{window.location.reload()};render(){return this.state.hasError?this.state.report?(0,$.jsx)(oI,{open:!0,report:this.state.report,variant:`current-session`,onDismiss:this.handleReload,onReload:this.handleReload}):null:this.props.children}};sL(),mL(),kL(),TO(),zL();function VL(e){if(!(e instanceof Error))return!1;let t=e.message;return t.includes(`valid JavaScript MIME type`)||t.includes(`Failed to fetch dynamically imported module`)||t.includes(`Importing a module script failed`)}function HL(){sessionStorage.getItem(UL)||(sessionStorage.setItem(UL,`1`),window.location.reload())}var UL=`tarsk-chunk-reload`;function WL(e){return e instanceof HTMLInputElement||e instanceof HTMLTextAreaElement}function GL(e){if(!OO())return;let t=document.activeElement;!(e.metaKey||e.ctrlKey)||e.altKey||e.key.toLowerCase()!==`v`||!WL(t)||(e.preventDefault(),window.parent.postMessage({type:`tarsk-paste-request`},`*`))}function KL(e){let t=document.activeElement;if(!WL(t)||t.disabled||t.readOnly)return;let n=t.selectionStart??t.value.length,r=t.selectionEnd??n,i=t.value.slice(0,n)+e+t.value.slice(r),a=t instanceof HTMLTextAreaElement?HTMLTextAreaElement.prototype:HTMLInputElement.prototype;(Object.getOwnPropertyDescriptor(a,`value`)?.set)?.call(t,i),t.setSelectionRange(n+e.length,n+e.length),t.dispatchEvent(new Event(`input`,{bubbles:!0}))}OO()&&(window.addEventListener(`keydown`,GL,!0),window.addEventListener(`message`,e=>{e.data?.type===`tarsk-clipboard-paste`&&typeof e.data.text==`string`&&KL(e.data.text)})),iI({shouldIgnore:VL}),window.addEventListener(`unhandledrejection`,e=>{VL(e.reason)&&(e.preventDefault(),HL())}),window.addEventListener(`vite:preloadError`,e=>{e.preventDefault(),HL()}),sessionStorage.removeItem(UL);var qL=!1;window.addEventListener(`resize`,()=>{qL||=(window.__electrobunWebviewId&&(document.body.style.height=`calc(100%)`),!0)});var JL=Za()?Bn:gn;(0,Wc.createRoot)(document.getElementById(`root`)).render((0,$.jsx)(Z.StrictMode,{children:(0,$.jsx)(BL,{children:(0,$.jsx)(JL,{children:(0,$.jsx)(QI,{})})})}));export{xS as $,DA as A,Np as At,jw as B,xl as Bt,wj as C,R_ as Ct,lj as D,C_ as Dt,xj as E,B_ as Et,XO as F,Nd as Ft,cw as G,vl as Gt,Aw as H,Tl as Ht,qO as I,Du as It,LC as J,Yc as Jt,lw as K,gl as Kt,xO as L,hl as Lt,OA as M,lp as Mt,kA as N,Hd as Nt,YA as O,kg as Ot,ek as P,Md as Pt,SS as Q,VE as R,Sl as Rt,gM as S,W_ as St,Sj as T,V_ as Tt,yw as U,_l as Ut,Mw as V,wl as Vt,gw as W,yl as Wt,ES as X,DS as Y,TS as Z,hM as _,vv as _t,vI as a,uS as at,_M as b,q_ as bt,WP as c,mS as ct,OP as d,ix as dt,hS as et,kP as f,nx as ft,oM as g,Sv as gt,ON as h,bv as ht,bI as i,dS as it,AA as j,Mp as jt,LA as k,jp as kt,UP as l,fS as lt,iP as m,hy as mt,pL as n,pS as nt,xF as o,yS as ot,nP as p,zb as pt,sw as q,el as qt,oL as r,_S as rt,iF as s,bS as st,EL as t,vS as tt,HP as u,iS as ut,cM as v,K_ as vt,Cj as w,G_ as wt,mM as x,U_ as xt,dM as y,z_ as yt,lE as z,bl as zt};
3359
+ `);return(0,$.jsx)(pc,{open:e,children:(0,$.jsxs)(cc,{className:`flex max-h-[85dvh] max-w-2xl flex-col gap-4 overflow-hidden`,children:[(0,$.jsxs)(fc,{className:`shrink-0`,children:[(0,$.jsx)(sc,{children:n===`previous-session`?`Previous UI crash`:`UI crashed`}),(0,$.jsx)(oc,{children:n===`previous-session`?`Tarsk recovered on launch, but the UI crashed during your last session.`:`The UI hit an unhandled error. You can copy the details below or reload the app.`})]}),(0,$.jsxs)(`div`,{className:`min-h-0 space-y-3`,children:[(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`p`,{className:G(U.label,`text-muted-foreground`),children:`Error`}),(0,$.jsx)(`p`,{className:G(U.body,`break-words`),children:t.message})]}),(0,$.jsxs)(`div`,{className:G(U.compact,`grid gap-1 text-muted-foreground sm:grid-cols-2`),children:[(0,$.jsxs)(`p`,{children:[(0,$.jsx)(`span`,{className:`font-medium text-foreground`,children:`When:`}),` `,sI(t.timestamp)]}),(0,$.jsxs)(`p`,{children:[(0,$.jsx)(`span`,{className:`font-medium text-foreground`,children:`Source:`}),` `,t.source]})]}),u?(0,$.jsx)(za,{className:`max-h-64 rounded-md border border-border bg-muted/40`,children:(0,$.jsx)(`pre`,{className:G(U.compact,`whitespace-pre-wrap break-words p-3 font-mono text-foreground`),children:u})}):null]}),(0,$.jsxs)(uc,{className:`shrink-0 sm:justify-between`,children:[(0,$.jsxs)(Hr,{type:`button`,variant:`outline`,disabled:s,onClick:()=>void l(),children:[s?(0,$.jsx)(ln,{className:`h-4 w-4 animate-spin`}):(0,$.jsx)(Ze,{className:`h-4 w-4`}),a?`Copied`:`Copy details`]}),(0,$.jsxs)(`div`,{className:`flex gap-2`,children:[n===`previous-session`?(0,$.jsx)(Hr,{type:`button`,variant:`outline`,onClick:r,children:`Close`}):null,n===`current-session`&&i?(0,$.jsx)(Hr,{type:`button`,onClick:i,children:`Reload`}):null]})]})]})})}var lI=Date.now();function uI(e){let t=Date.parse(e.timestamp);return Number.isFinite(t)?t<lI-500:!0}function dI(){let e=(0,Q.c)(3),[t,n]=(0,Z.useState)(fI);if(!t)return null;let r;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=function(){rI(),n(null)},e[0]=r):r=e[0];let i=r,a;return e[1]===t?a=e[2]:(a=(0,$.jsx)(cI,{open:!0,report:t,variant:`previous-session`,onDismiss:i}),e[1]=t,e[2]=a),a}function fI(){let e=nI();return!e||!uI(e)?null:e}function pI(e,t){for(let n of e)if(!(n.type!==`content`&&n.type!==`thinking`))for(let e of n.chunks)M_(e,t)}function mI(e,t,n){for(let t of Object.values(n))t.threadId===e&&N_(t,e);for(let n of fs(t,e)){let r=As(t,e,n);r.streamingContent&&M_(r.streamingContent,e),pI(r.streamingSegments,e)}}function hI(){let e=(0,Q.c)(6),t=X(yI),n=X(vI),r=X(_I),i=X(gI),a,o;e[0]!==t||e[1]!==n||e[2]!==r||e[3]!==i?(a=()=>{let e=new Set;for(let n of t)e.add(n);n&&e.add(n);for(let t of e)mI(t,r,i)},o=[t,n,r,i],e[0]=t,e[1]=n,e[2]=r,e[3]=i,e[4]=a,e[5]=o):(a=e[4],o=e[5]),(0,Z.useEffect)(a,o)}function gI(e){return e.toolCallProgress}function _I(e){return e.threadStreamingStates}function vI(e){return e.selectedThreadId}function yI(e){return e.processingThreadIds}function bI({url:e,projectId:t,projectName:n,projects:r,onSelectProject:i,onClose:a,onInstalled:o}){let[s,c]=(0,Z.useState)(null),[l,u]=(0,Z.useState)(null),[d,f]=(0,Z.useState)([]),[p,m]=(0,Z.useState)(!1),[h,g]=(0,Z.useState)(!1),_=(0,Z.useRef)(0),v=s!==null&&s.skills.length===0&&s.mcpServers.length>0;(0,Z.useEffect)(()=>{let n=++_.current;if(!e||!t){c(null),u(null),g(!1);return}c(null),u(null),g(!0),Ui(t,e).then(e=>{n===_.current&&(c(e),f(e.mcpServers.filter(e=>!e.conflict).map(e=>e.name)))}).catch(e=>{n===_.current&&u(e instanceof Error?e.message:`Unable to inspect plugin archive`)}).finally(()=>{n===_.current&&g(!1)})},[e,t]);async function y(){if(!(!e||!t||!s)){g(!0);try{await hi(t,{url:e,skills:s.skills.map(e=>e.name),mcpServers:d,replace:p}),o?.({mcpOnly:v}),a()}catch(e){u(e instanceof Error?e.message:`Unable to install plugin archive`)}finally{g(!1)}}}return(0,$.jsx)(Ni,{open:!!e,onOpenChange:e=>{e||a()},children:(0,$.jsxs)(Ir,{children:[(0,$.jsxs)(Dr,{children:[(0,$.jsx)(qa,{children:v?`Install MCP Server`:`Install plugin`}),(0,$.jsx)(_i,{children:t?s?`${s.manifest.name} will be installed in the project “${n??`Unknown`}”.`:`Inspecting the plugin archive…`:`Select a project to preview this plugin archive.`})]}),t?null:(0,$.jsxs)(vo,{value:void 0,onValueChange:i,children:[(0,$.jsx)(na,{children:(0,$.jsx)(Vo,{placeholder:`Select a project`})}),(0,$.jsx)(io,{children:r.map(e=>(0,$.jsx)(Ba,{value:e.projectId,children:Ke(e)},e.projectId))})]}),l?(0,$.jsx)(`p`,{className:`text-destructive text-sm`,children:l}):null,s?(0,$.jsxs)(`div`,{className:`space-y-4 text-sm`,children:[(0,$.jsxs)(`div`,{children:[(0,$.jsx)(`strong`,{children:`Skills`}),(0,$.jsx)(`p`,{children:s.skills.map(e=>`${e.name}${e.conflict?` (already installed)`:``}`).join(`, `)||`None`})]}),s.mcpServers.length?(0,$.jsxs)(`div`,{className:`space-y-2`,children:[(0,$.jsx)(`strong`,{children:`MCP servers`}),s.mcpServers.map(e=>(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(ko,{checked:d.includes(e.name),onCheckedChange:t=>f(n=>t?[...n,e.name]:n.filter(t=>t!==e.name)),id:`mcp-${e.name}`}),(0,$.jsxs)(da,{htmlFor:`mcp-${e.name}`,children:[e.name,e.conflict?` (already configured)`:``]})]},e.name))]}):null,s.skills.some(e=>e.conflict)||s.mcpServers.some(e=>e.conflict)?(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(ko,{checked:p,onCheckedChange:e=>m(e===!0),id:`replace-plugin`}),(0,$.jsx)(da,{htmlFor:`replace-plugin`,children:`Replace existing files and MCP servers`})]}):null]}):null,(0,$.jsxs)(Xa,{children:[(0,$.jsx)(Hr,{variant:`outline`,onClick:a,children:`Cancel`}),(0,$.jsx)(Hr,{disabled:!s||h,onClick:()=>void y(),children:`Install`})]})]})})}var xI=(0,Z.createContext)(null);function SI(){let e=(0,Z.useContext)(xI);if(!e)throw Error(`useRequestDeleteProject must be used within a DeleteProjectRequestContext`);return e}function CI(){return UP(),yP(),null}function wI(){return hI(),null}function TI(){let e=(0,Q.c)(1),t;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t={queryKey:[`health-status`,Fa()],queryFn:EI,refetchInterval:3e4,retry:!1},e[0]=t):t=e[0],vr(t)}async function EI(){let e=await fetch(`${Fa()}/health`,{method:`GET`});if(!e.ok)throw Error(`Failed to load health status`);return e.json()}function DI(){let e=Yn(),[t,n]=(0,Z.useState)(null);return wF((0,Z.useCallback)(t=>{if(!t.startsWith(`tarsk://`))return;let r=t.slice(8);try{let t=new URL(`https://tarsk.invalid/${r}`);if(t.pathname===`/skill-install`&&t.searchParams.get(`url`)){n(t.searchParams.get(`url`));return}let i=/^https?:\/\//i.test(r)?new URL(r):t;e(`${i.pathname}${i.search}${i.hash}`||`/`)}catch{}},[e,n])),{pendingPluginImportUrl:t,setPendingPluginImportUrl:n}}function OI(){let e=(0,Q.c)(2),t=Ks(),n;return e[0]===t?n=e[1]:(n=e=>{t({type:Y.OpenProjectPanel,projectId:e})},e[0]=t,e[1]=n),n}function kI(e){let t=(0,Q.c)(17),{handleOpenFolder:n,handleCreateZip:r,projects:i}=e,[a,o]=(0,Z.useState)(!1),[s,c]=(0,Z.useState)(null),[l,u]=(0,Z.useState)(null),d;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(d=e=>{o(e),e||c(null)},t[0]=d):d=t[0];let f=d,p;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(p=e=>{c(e),o(!0)},t[1]=p):p=t[1];let m=p,h;t[2]===n?h=t[3]:(h=()=>{n()},t[2]=n,t[3]=h);let g=h,_;t[4]!==r||t[5]!==i?(_=()=>{let e=document.createElement(`input`);e.type=`file`,e.accept=`.zip,application/zip,application/x-zip-compressed`,e.style.display=`none`,document.body.appendChild(e),e.addEventListener(`change`,()=>{document.body.removeChild(e);let t=e.files?.[0];if(!t)return;let n=AF(t.name,i);if(n){u({file:t,filename:t.name,existingProjectId:n.projectId,existingProjectName:Ke(n)});return}r(t,t.name)},{once:!0}),e.click()},t[4]=r,t[5]=i,t[6]=_):_=t[6];let v=_,y;t[7]!==r||t[8]!==l?(y=e=>{let t=l;u(null),t&&e&&r(t.file,t.filename,t.existingProjectId)},t[7]=r,t[8]=l,t[9]=y):y=t[9];let b=y,x;return t[10]!==s||t[11]!==g||t[12]!==v||t[13]!==l||t[14]!==b||t[15]!==a?(x={showCreateProject:a,setShowCreateProject:o,createProjectInitialMode:s,handleCreateProjectOpenChange:f,openCreateProjectDialog:m,handleOpenFolderProject:g,handleSelectZip:v,pendingZipOverride:l,resolveZipOverride:b},t[10]=s,t[11]=g,t[12]=v,t[13]=l,t[14]=b,t[15]=a,t[16]=x):x=t[16],x}function AI(e){let t=(0,Q.c)(35),{projects:n,cloneRootPath:r,processingThreadIds:i,devServerProjectId:a,devServerState:o,pendingSetupScriptConfirmation:s,confirmDeleteProject:c}=e,[l,u]=(0,Z.useState)(null),[d,f]=(0,Z.useState)(null),p;t[0]!==r||t[1]!==n?(p=e=>{let t=n.find(t=>t.projectId===e)?.projectPath;return!t||!r?!0:t.startsWith(r.replace(/\/+$/,``)+`/`)},t[0]=r,t[1]=n,t[2]=p):p=t[2];let m=p,h;t[3]!==m||t[4]!==n?(h=e=>{let t=n.find(t=>t.projectId===e);t&&u({id:t.projectId,name:Ke(t),deletesFolder:m(t.projectId)})},t[3]=m,t[4]=n,t[5]=h):h=t[5];let g=h,_;t[6]===m?_=t[7]:(_=e=>{u({...e,deletesFolder:m(e.id)})},t[6]=m,t[7]=_);let v=_,y;bb0:{if(!l){y=!1;break bb0}let e;if(t[8]!==l.id||t[9]!==i||t[10]!==n){let r;t[12]===l.id?r=t[13]:(r=e=>e.projectId===l.id,t[12]=l.id,t[13]=r);let a=n.find(r)?.threads.map(NI)??[],o;t[14]===i?o=t[15]:(o=e=>i.includes(e),t[14]=i,t[15]=o),e=a.some(o),t[8]=l.id,t[9]=i,t[10]=n,t[11]=e}else e=t[11];let r=e,c=a===l.id&&(o===`starting`||o===`running`||o===`stopping`),u=s?.projectId===l.id;y=r||c||u}let b=y,x=b?`Stop or finish active sessions before deleting this project.`:null,S;t[16]===c?S=t[17]:(S=(e,t)=>{u(null),f({projectId:e,projectName:t,step:0,status:`progressing`}),c(e,e=>f(e)).catch(MI)},t[16]=c,t[17]=S);let C=S,w;t[18]!==c||t[19]!==d?(w=()=>{if(!d)return;let{projectId:e,projectName:t}=d;f({projectId:e,projectName:t,step:0,status:`progressing`}),c(e,e=>f(e)).catch(jI)},t[18]=c,t[19]=d,t[20]=w):w=t[20];let T=w,E;t[21]===Symbol.for(`react.memo_cache_sentinel`)?(E=()=>{f(null)},t[21]=E):E=t[21];let D=E,O;t[22]===d?.status?O=t[23]:(O=()=>{if(d?.status!==`done`)return;let e=window.setTimeout(()=>f(null),800);return()=>window.clearTimeout(e)},t[22]=d?.status,t[23]=O);let k;t[24]===d?k=t[25]:(k=[d],t[24]=d,t[25]=k),(0,Z.useEffect)(O,k);let A;return t[26]!==d||t[27]!==l||t[28]!==x||t[29]!==b||t[30]!==g||t[31]!==v||t[32]!==T||t[33]!==C?(A={deleteProject:l,setDeleteProject:u,deleteProgress:d,deleteProjectBlocked:b,deleteProjectBlockReason:x,handleDeleteProject:g,handleDeleteProjectRequest:v,runDeleteProject:C,handleDeleteProjectRetry:T,handleDeleteProjectProgressClose:D},t[26]=d,t[27]=l,t[28]=x,t[29]=b,t[30]=g,t[31]=v,t[32]=T,t[33]=C,t[34]=A):A=t[34],A}function jI(){}function MI(){}function NI(e){return e.threadId}function PI({dispatch:e,navigate:t,location:n,projects:r,selectedThreadId:i,selectedProjectId:a,projectPanelView:o,projectPanelProjectId:s,sidebarOpen:c,useMobileLayout:l,clearCompleted:u,setActiveMainTab:d,triggerBrowserReset:f,handleSelectThread:p,handleCreateThread:m,openProjectActions:h}){let g=(0,Z.useRef)(()=>{}),_=(0,Z.useCallback)(e=>{m(e,void 0)},[m]);g.current=_;let v=s??a;(0,Z.useEffect)(()=>{function e(e){let t=e.key.toLowerCase();!((e.metaKey||e.ctrlKey)&&e.shiftKey&&!e.altKey)||t!==`t`||!v||(e.preventDefault(),g.current(v))}return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[v]);let y=(0,Z.useCallback)(()=>{e({type:Y.CloseProjectPanel}),c||e({type:Y.ToggleSidebar})},[e,c]),b=(0,Z.useCallback)((r,a)=>{u(a),n.pathname!==`/`&&t(`/`),d(`chat`),i!==a&&f(),p(r,a),l&&e({type:Y.CloseSidebar})},[p,l,i,e,u,n.pathname,t,d,f]);return{handleBackToProjects:y,handleSelectThreadWrapper:b,handleSelectProject:(0,Z.useCallback)(t=>{let n=o===`projects`;h(t);let a=r.find(e=>e.projectId===t);if(!a)return;function s(){n&&e({type:Y.FocusChatInput})}if(a.threads.some(e=>e.threadId===i)){s();return}let c=a.threads.find(e=>e.isSelected)??a.threads[0]??null;if(c){b(t,c.threadId),s();return}i&&f(),e({type:Y.SelectProject,projectId:t})},[h,o,r,i,b,f,e]),handleCreateThreadDirect:_}}function FI(e){let t=(0,Q.c)(23),{dispatch:n,handleBackToProjects:r,selectedProjectId:i,selectedThreadId:a,projectPanelView:o,projectPanelProjectId:s,actionsProject:c,sidebarOpen:l,sidebarPanelRef:u,showProjectsFullScreen:d,showingProjectDetails:f,useMobileLayout:p}=e,m,h;t[0]!==c||t[1]!==n||t[2]!==s||t[3]!==o||t[4]!==i||t[5]!==a?(m=()=>{if(o===`actions`&&s&&!c){if(i===s&&a)return;n({type:Y.CloseProjectPanel})}},h=[n,o,s,c,i,a],t[0]=c,t[1]=n,t[2]=s,t[3]=o,t[4]=i,t[5]=a,t[6]=m,t[7]=h):(m=t[6],h=t[7]),(0,Z.useEffect)(m,h);let g=(0,Z.useRef)(i),_,v;t[8]!==r||t[9]!==i?(_=()=>{let e=g.current!==null;g.current=i,e&&i===null&&r()},v=[i,r],t[8]=r,t[9]=i,t[10]=_,t[11]=v):(_=t[10],v=t[11]),(0,Z.useEffect)(_,v);let y;t[12]!==d||t[13]!==f||t[14]!==l||t[15]!==u||t[16]!==p?(y=()=>{if(!f){if(!l){u.current?.collapse();return}u.current?.expand(),d?u.current?.resize(100):p||u.current?.resize(25)}},t[12]=d,t[13]=f,t[14]=l,t[15]=u,t[16]=p,t[17]=y):y=t[17];let b;t[18]!==d||t[19]!==f||t[20]!==l||t[21]!==p?(b=[l,d,f,p],t[18]=d,t[19]=f,t[20]=l,t[21]=p,t[22]=b):b=t[22],(0,Z.useEffect)(y,b)}function II(e){let t=(0,Q.c)(14),{selectedThreadId:n,sidebarOpen:r}=e,{mode:i}=CO(),a=oF(),o;t[0]===a?o=t[1]:(o=a||Za(),t[0]=a,t[1]=o);let s=o,{data:c}=TI(),l;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(l=AO(),t[2]=l):l=t[2];let u=l,d;t[3]===n?d=t[4]:(d={selectedThreadId:n},t[3]=n,t[4]=d);let{isSettingsRoute:f,isReviewRoute:p}=lF(d);uF(f,p),RF();let m=gC(),h=!f&&!p&&!m,g=h&&r,_;return t[5]!==c||t[6]!==p||t[7]!==f||t[8]!==g||t[9]!==h||t[10]!==m||t[11]!==s||t[12]!==i?(_={wallpaperMode:i,healthStatus:c,vscodeEmbed:u,isSettingsRoute:f,isReviewRoute:p,showingProjectDetails:m,useMobileLayout:s,showProjectsFullScreen:h,projectsHomeTakingScreen:g},t[5]=c,t[6]=p,t[7]=f,t[8]=g,t[9]=h,t[10]=m,t[11]=s,t[12]=i,t[13]=_):_=t[13],_}function LI(e){return G(`relative h-screen overflow-hidden`,e===`image`&&`bg-background`,e===`background`&&`bg-[hsl(var(--image-off-background))]`,e===`color`&&`bg-[var(--wallpaper-color)]`)}function RI(e){let t=(0,Q.c)(1),{wallpaperMode:n}=e;if(n!==`image`)return null;let r;return t[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,$.jsx)(pl,{}),t[0]=r):r=t[0],r}function zI(e){return(0,$.jsx)(GP,{id:`app-sidebar-panel`,order:1,ref:e.sidebarPanelRef,defaultSize:e.showProjectsFullScreen||e.useMobileLayout?100:25,minSize:e.showProjectsFullScreen||e.useMobileLayout?50:12,maxSize:e.showProjectsFullScreen||e.useMobileLayout?100:32,collapsible:!0,collapsedSize:0,className:G(`border-r border-transparent`,e.useMobileLayout&&!e.sidebarOpen&&`hidden`),children:(0,$.jsx)(`div`,{className:`h-full overflow-hidden`,children:(0,$.jsx)(Ol,{projects:e.projects,selectedThreadId:e.selectedThreadId,selectedProjectId:e.selectedProjectId,deletingProjectIds:e.deletingProjectIds,onSelectProject:e.handleSelectProject,onCreateProject:e.openCreateProjectDialog,onOpenFolder:e.handleOpenFolderProject,onSelectZip:e.handleSelectZip,onDeleteProject:e.handleDeleteProject,collapsed:!e.sidebarOpen,updateAvailable:e.updateAvailable,updatingApp:e.updatingApp,onUpdateApp:e.handleUpdateApp,isDevMode:e.healthStatus?.isDevMode===!0})})})}function BI(e){let t=(0,Q.c)(16),n=e.projectsHomeTakingScreen?0:40,r=e.projectsHomeTakingScreen&&`hidden`,i;t[0]===r?i=t[1]:(i=G(`overflow-hidden`,r),t[0]=r,t[1]=i);let a;t[2]!==e.handleBackToProjects||t[3]!==e.handleCreateFolder||t[4]!==e.handleCreateProject||t[5]!==e.handleCreateThreadDirect||t[6]!==e.handleCreateWebApp||t[7]!==e.handleOpenFolder||t[8]!==e.handleSelectProject||t[9]!==e.isReviewRoute||t[10]!==e.selectedProjectId?(a=(0,$.jsx)(yv,{children:(0,$.jsx)(zC,{children:(0,$.jsx)(jM,{selectedProjectId:e.selectedProjectId,isReviewRoute:e.isReviewRoute,onCreateThread:e.handleCreateThreadDirect,onBackToProjects:e.handleBackToProjects,onSelectProject:e.handleSelectProject,onSubmitClone:e.handleCreateProject,onSubmitWebApp:e.handleCreateWebApp,onSubmitFolder:e.handleCreateFolder,onOpenFolder:e.handleOpenFolder})})}),t[2]=e.handleBackToProjects,t[3]=e.handleCreateFolder,t[4]=e.handleCreateProject,t[5]=e.handleCreateThreadDirect,t[6]=e.handleCreateWebApp,t[7]=e.handleOpenFolder,t[8]=e.handleSelectProject,t[9]=e.isReviewRoute,t[10]=e.selectedProjectId,t[11]=a):a=t[11];let o;return t[12]!==n||t[13]!==i||t[14]!==a?(o=(0,$.jsx)(GP,{id:`app-main-panel`,order:2,minSize:n,className:i,children:a}),t[12]=n,t[13]=i,t[14]=a,t[15]=o):o=t[15],o}function VI(e){let t=(0,Q.c)(57),n;t[0]===e.wallpaperMode?n=t[1]:(n=LI(e.wallpaperMode),t[0]=e.wallpaperMode,t[1]=n);let r;t[2]===e.wallpaperMode?r=t[3]:(r=(0,$.jsx)(RI,{wallpaperMode:e.wallpaperMode}),t[2]=e.wallpaperMode,t[3]=r);let i=e.selectedThreadId??void 0,a;t[4]!==e.selectedProjectId||t[5]!==e.selectedThreadId?(a=e.selectedThreadId&&e.selectedProjectId?(0,$.jsx)(NF,{threadId:e.selectedThreadId,projectId:e.selectedProjectId}):null,t[4]=e.selectedProjectId,t[5]=e.selectedThreadId,t[6]=a):a=t[6];let o;t[7]===e?o=t[8]:(o=!e.vscodeEmbed&&!e.showingProjectDetails&&(0,$.jsx)(zI,{...e}),t[7]=e,t[8]=o);let s;t[9]!==e.showingProjectDetails||t[10]!==e.vscodeEmbed?(s=!e.vscodeEmbed&&!e.showingProjectDetails&&(0,$.jsx)(KP,{id:`app-sidebar-resize-handle`}),t[9]=e.showingProjectDetails,t[10]=e.vscodeEmbed,t[11]=s):s=t[11];let c;t[12]===e?c=t[13]:(c=(0,$.jsx)(BI,{...e}),t[12]=e,t[13]=c);let l=e.deleteProject?.deletesFolder??!0,u,d;t[14]===e?(u=t[15],d=t[16]):(u=t=>!t&&e.setDeleteProject(null),d=()=>{e.deleteProject&&e.runDeleteProject(e.deleteProject.id,e.deleteProject.name)},t[14]=e,t[15]=u,t[16]=d);let f;t[17]===e.pendingZipOverride?f=t[18]:(f=e.pendingZipOverride?{existingProjectId:e.pendingZipOverride.existingProjectId,existingProjectName:e.pendingZipOverride.existingProjectName,zipFilename:e.pendingZipOverride.filename}:null,t[17]=e.pendingZipOverride,t[18]=f);let p;t[19]===e?p=t[20]:(p=()=>{e.refreshProjects()},t[19]=e,t[20]=p);let m;t[21]!==e.createProjectInitialMode||t[22]!==e.deleteProgress||t[23]!==e.deleteProject||t[24]!==e.deleteProjectBlockReason||t[25]!==e.deleteProjectBlocked||t[26]!==e.handleCreateFolder||t[27]!==e.handleCreateProject||t[28]!==e.handleCreateProjectOpenChange||t[29]!==e.handleCreateWebApp||t[30]!==e.handleDeleteProjectProgressClose||t[31]!==e.handleDeleteProjectRetry||t[32]!==e.pendingSetupScriptConfirmation||t[33]!==e.resolveSetupScriptConfirmation||t[34]!==e.resolveZipOverride||t[35]!==e.setShowOnboarding||t[36]!==e.showCreateProject||t[37]!==e.showOnboarding||t[38]!==f||t[39]!==p||t[40]!==l||t[41]!==u||t[42]!==d?(m=(0,$.jsx)(vP,{showCreateProject:e.showCreateProject,createProjectInitialMode:e.createProjectInitialMode,onCreateProjectOpenChange:e.handleCreateProjectOpenChange,onSubmitClone:e.handleCreateProject,onSubmitWebApp:e.handleCreateWebApp,onSubmitFolder:e.handleCreateFolder,deleteProject:e.deleteProject,deleteProjectBlocked:e.deleteProjectBlocked,deleteProjectBlockReason:e.deleteProjectBlockReason,deleteProjectDeletesFolder:l,onDeleteProjectOpenChange:u,onConfirmDeleteProject:d,deleteProjectProgress:e.deleteProgress,onDeleteProjectRetry:e.handleDeleteProjectRetry,onDeleteProjectProgressClose:e.handleDeleteProjectProgressClose,pendingSetupScriptConfirmation:e.pendingSetupScriptConfirmation,onResolveSetupScriptConfirmation:e.resolveSetupScriptConfirmation,pendingZipOverride:f,onResolveZipOverride:e.resolveZipOverride,showOnboarding:e.showOnboarding,onOnboardingOpenChange:e.setShowOnboarding,onOnboardingComplete:p}),t[21]=e.createProjectInitialMode,t[22]=e.deleteProgress,t[23]=e.deleteProject,t[24]=e.deleteProjectBlockReason,t[25]=e.deleteProjectBlocked,t[26]=e.handleCreateFolder,t[27]=e.handleCreateProject,t[28]=e.handleCreateProjectOpenChange,t[29]=e.handleCreateWebApp,t[30]=e.handleDeleteProjectProgressClose,t[31]=e.handleDeleteProjectRetry,t[32]=e.pendingSetupScriptConfirmation,t[33]=e.resolveSetupScriptConfirmation,t[34]=e.resolveZipOverride,t[35]=e.setShowOnboarding,t[36]=e.showCreateProject,t[37]=e.showOnboarding,t[38]=f,t[39]=p,t[40]=l,t[41]=u,t[42]=d,t[43]=m):m=t[43];let h;t[44]!==m||t[45]!==o||t[46]!==s||t[47]!==c?(h=(0,$.jsxs)(WP,{id:`app-shell-panels`,direction:`horizontal`,className:`relative z-10 h-full`,children:[o,s,c,m]}),t[44]=m,t[45]=o,t[46]=s,t[47]=c,t[48]=h):h=t[48];let g;t[49]!==h||t[50]!==i||t[51]!==a?(g=(0,$.jsxs)(jE,{threadId:i,children:[a,h]}),t[49]=h,t[50]=i,t[51]=a,t[52]=g):g=t[52];let _;return t[53]!==n||t[54]!==r||t[55]!==g?(_=(0,$.jsxs)(`div`,{className:n,children:[r,g]}),t[53]=n,t[54]=r,t[55]=g,t[56]=_):_=t[56],_}function HI(e){let t=(0,Q.c)(25),n,r,i;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,$.jsx)(CI,{}),r=(0,$.jsx)(wI,{}),i=(0,$.jsx)(Xc,{}),t[0]=n,t[1]=r,t[2]=i):(n=t[0],r=t[1],i=t[2]);let a;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(a=(0,$.jsx)(Z.Suspense,{fallback:null,children:(0,$.jsx)(iw,{})}),t[3]=a):a=t[3];let o;t[4]===e?o=t[5]:(o=(0,$.jsx)(VI,{...e}),t[4]=e,t[5]=o);let s;t[6]===e.selectedProject?s=t[7]:(s=e.selectedProject?Ke(e.selectedProject):null,t[6]=e.selectedProject,t[7]=s);let c;t[8]===e?c=t[9]:(c=()=>e.setPendingPluginImportUrl(null),t[8]=e,t[9]=c);let l;t[10]!==e.handleSelectProject||t[11]!==e.pendingPluginImportUrl||t[12]!==e.projects||t[13]!==e.selectedProjectId||t[14]!==s||t[15]!==c?(l=(0,$.jsx)(bI,{url:e.pendingPluginImportUrl,projectId:e.selectedProjectId,projectName:s,projects:e.projects,onSelectProject:e.handleSelectProject,onClose:c}),t[10]=e.handleSelectProject,t[11]=e.pendingPluginImportUrl,t[12]=e.projects,t[13]=e.selectedProjectId,t[14]=s,t[15]=c,t[16]=l):l=t[16];let u,d;t[17]===Symbol.for(`react.memo_cache_sentinel`)?(u=(0,$.jsx)(qP,{}),d=(0,$.jsx)(dI,{}),t[17]=u,t[18]=d):(u=t[17],d=t[18]);let f;t[19]!==o||t[20]!==l?(f=(0,$.jsxs)($.Fragment,{children:[n,r,i,a,(0,$.jsxs)(Zo,{delayDuration:200,children:[o,l,u,d]})]}),t[19]=o,t[20]=l,t[21]=f):f=t[21];let p;return t[22]!==e.handleDeleteProjectRequest||t[23]!==f?(p=(0,$.jsx)(xI.Provider,{value:e.handleDeleteProjectRequest,children:f}),t[22]=e.handleDeleteProjectRequest,t[23]=f,t[24]=p):p=t[24],p}function UI(){let e=(0,Q.c)(79),t=Ks(),n=Yn(),r=Gn(),i=X(ZI),a=X(XI),o=X(YI),s=X(JI),c=X(qI),l=X(KI),u=X(GI),d=X(WI),{pendingPluginImportUrl:f,setPendingPluginImportUrl:p}=DI(),{devServerProjectId:m,devServerState:h}=vw(),g=OI(),_;e[0]===g?_=e[1]:(_={onProjectCreated:g,onThreadCreateStart:g},e[0]=g,e[1]=_);let{projects:v,handleSelectThread:y,handleCreateProject:b,handleCreateWebApp:x,handleCreateFolder:S,handleCreateZip:C,handleOpenFolder:w,handleOpenPath:T,handleCreateThread:E,confirmDeleteProject:D,refreshProjects:O,pendingSetupScriptConfirmation:k,resolveSetupScriptConfirmation:A}=lw(_),j;if(e[2]!==v||e[3]!==a){let t;e[5]===a?t=e[6]:(t=e=>e.projectId===a,e[5]=a,e[6]=t),j=v.find(t),e[2]=v,e[3]=a,e[4]=j}else j=e[4];let M=j,N;e[7]!==i||e[8]!==o?(N={selectedThreadId:i,sidebarOpen:o},e[7]=i,e[8]=o,e[9]=N):N=e[9];let P=II(N),F;e[10]!==C||e[11]!==w||e[12]!==v?(F={handleOpenFolder:w,handleCreateZip:C,projects:v},e[10]=C,e[11]=w,e[12]=v,e[13]=F):F=e[13];let I=kI(F),L;e[14]!==u||e[15]!==D||e[16]!==m||e[17]!==h||e[18]!==k||e[19]!==d||e[20]!==v?(L={projects:v,cloneRootPath:u,processingThreadIds:d,devServerProjectId:m,devServerState:h,pendingSetupScriptConfirmation:k,confirmDeleteProject:D},e[14]=u,e[15]=D,e[16]=m,e[17]=h,e[18]=k,e[19]=d,e[20]=v,e[21]=L):L=e[21];let R=AI(L),{clearCompleted:z}=iF(),{setActiveMainTab:B}=mc(),{triggerBrowserReset:V}=nk(),{showOnboarding:H,setShowOnboarding:ee,updateAvailable:te,updatingApp:ne,handleUpdateApp:re}=cF();EF(T);let ie;e[22]!==l||e[23]!==v?(ie=l==null?void 0:v.find(e=>e.projectId===l),e[22]=l,e[23]=v,e[24]=ie):ie=e[24];let ae=ie,oe=(0,Z.useRef)(null),se;e[25]!==z||e[26]!==t||e[27]!==E||e[28]!==y||e[29]!==r||e[30]!==n||e[31]!==g||e[32]!==l||e[33]!==c||e[34]!==v||e[35]!==a||e[36]!==i||e[37]!==B||e[38]!==o||e[39]!==V||e[40]!==P.useMobileLayout?(se={dispatch:t,navigate:n,location:r,projects:v,selectedThreadId:i,selectedProjectId:a,projectPanelView:c,projectPanelProjectId:l,sidebarOpen:o,useMobileLayout:P.useMobileLayout,clearCompleted:z,setActiveMainTab:B,triggerBrowserReset:V,handleSelectThread:y,handleCreateThread:E,openProjectActions:g},e[25]=z,e[26]=t,e[27]=E,e[28]=y,e[29]=r,e[30]=n,e[31]=g,e[32]=l,e[33]=c,e[34]=v,e[35]=a,e[36]=i,e[37]=B,e[38]=o,e[39]=V,e[40]=P.useMobileLayout,e[41]=se):se=e[41];let U=PI(se),ce;e[42]!==ae||e[43]!==t||e[44]!==l||e[45]!==c||e[46]!==a||e[47]!==i||e[48]!==U.handleBackToProjects||e[49]!==o||e[50]!==P.showProjectsFullScreen||e[51]!==P.showingProjectDetails||e[52]!==P.useMobileLayout?(ce={dispatch:t,handleBackToProjects:U.handleBackToProjects,selectedProjectId:a,selectedThreadId:i,projectPanelView:c,projectPanelProjectId:l,actionsProject:ae,sidebarOpen:o,sidebarPanelRef:oe,showProjectsFullScreen:P.showProjectsFullScreen,showingProjectDetails:P.showingProjectDetails,useMobileLayout:P.useMobileLayout},e[42]=ae,e[43]=t,e[44]=l,e[45]=c,e[46]=a,e[47]=i,e[48]=U.handleBackToProjects,e[49]=o,e[50]=P.showProjectsFullScreen,e[51]=P.showingProjectDetails,e[52]=P.useMobileLayout,e[53]=ce):ce=e[53],FI(ce);let le;return e[54]!==I||e[55]!==R||e[56]!==s||e[57]!==S||e[58]!==b||e[59]!==x||e[60]!==w||e[61]!==re||e[62]!==f||e[63]!==k||e[64]!==v||e[65]!==O||e[66]!==A||e[67]!==M||e[68]!==a||e[69]!==i||e[70]!==U||e[71]!==p||e[72]!==ee||e[73]!==H||e[74]!==o||e[75]!==te||e[76]!==ne||e[77]!==P?(le={...P,...I,...R,...U,sidebarOpen:o,selectedThreadId:i,selectedProjectId:a,deletingProjectIds:s,sidebarPanelRef:oe,projects:v,selectedProject:M,updateAvailable:te,updatingApp:ne,handleUpdateApp:re,handleCreateProject:b,handleCreateWebApp:x,handleCreateFolder:S,handleOpenFolder:w,showOnboarding:H,setShowOnboarding:ee,refreshProjects:O,pendingSetupScriptConfirmation:k,resolveSetupScriptConfirmation:A,pendingPluginImportUrl:f,setPendingPluginImportUrl:p},e[54]=I,e[55]=R,e[56]=s,e[57]=S,e[58]=b,e[59]=x,e[60]=w,e[61]=re,e[62]=f,e[63]=k,e[64]=v,e[65]=O,e[66]=A,e[67]=M,e[68]=a,e[69]=i,e[70]=U,e[71]=p,e[72]=ee,e[73]=H,e[74]=o,e[75]=te,e[76]=ne,e[77]=P,e[78]=le):le=e[78],le}function WI(e){return e.processingThreadIds}function GI(e){return e.cloneRootPath}function KI(e){return e.projectPanelProjectId}function qI(e){return e.projectPanelView}function JI(e){return e.deletingProjectIds}function YI(e){return e.sidebarOpen}function XI(e){return e.selectedProjectId}function ZI(e){return e.selectedThreadId}function QI(){let e=(0,Q.c)(2),t=UI(),n;return e[0]===t?n=e[1]:(n=(0,$.jsx)(HI,{...t}),e[0]=t,e[1]=n),n}function $I(){let e=(0,Q.c)(1),t;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,$.jsx)(IF,{children:(0,$.jsx)(QI,{})}),e[0]=t):t=e[0],t}function eL(){let e=(0,Q.c)(3),[t]=(0,Z.useState)(qs),n=AO(),r;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,$.jsx)($I,{}),e[0]=r):r=e[0];let i;return e[1]===t?i=e[2]:(i=(0,$.jsx)(QP,{attribute:`class`,defaultTheme:n?`dark`:`system`,enableSystem:!0,storageKey:n?`tarsk-theme-vscode`:`tarsk-theme`,children:(0,$.jsx)(XP,{children:(0,$.jsx)(Zs.Provider,{value:t,children:r})})}),e[1]=t,e[2]=i),i}var tL=75,nL=125,rL=100;function iL(){return window.matchMedia(`(max-width: 767px)`).matches}function aL(e){let t=C(e,iL());document.documentElement.style.fontSize=`${t}%`}var oL=!1;function sL(){oL||(oL=!0,window.matchMedia(`(max-width: 767px)`).addEventListener(`change`,()=>{aL(Vi(rL))}))}function cL(){let[e,t]=(0,Z.useState)(()=>Vi(rL));(0,Z.useEffect)(()=>{sL(),aL(e)},[e]);function n(e){let n=Math.max(tL,Math.min(nL,Math.round(e)));t(n),Ta(n)}return{scale:e,updateScale:n,resetScale:(0,Z.useCallback)(()=>{n(rL)},[]),min:tL,max:nL,default:rL}}function lL(){sL(),aL(Vi(rL))}var uL=60,dL=100,fL=80,pL=`--frosted-panel-opacity`;function mL(e){document.documentElement.style.setProperty(pL,String(e/100))}function hL(){let[e,t]=(0,Z.useState)(()=>Gi(fL));(0,Z.useEffect)(()=>{mL(e)},[e]);function n(e){let n=Math.max(uL,Math.min(dL,Math.round(e)));t(n),Pa(n)}return{opacity:e,updateOpacity:n,resetOpacity:(0,Z.useCallback)(()=>{n(fL)},[]),min:uL,max:dL,default:fL}}function gL(){mL(Gi(fL))}var _L=`--brand`,vL=`--brand-foreground`,yL=`0 0% 9%`,bL=`0 0% 100%`,xL=jr(),SL=new Set;function CL(){for(let e of SL)e()}function wL(e){let t=fO(e);if(!t)return;document.documentElement.style.setProperty(_L,t);let n=dO(e);document.documentElement.style.setProperty(vL,n!==null&&n>140?yL:bL)}function TL(){return xL}function EL(e){return SL.add(e),function(){SL.delete(e)}}function DL(e){let t=lO(e);t===null||xL===t||(xL=t,xa(t),wL(t),CL())}function OL(){let e=(0,Q.c)(2),t=(0,Z.useSyncExternalStore)(EL,TL,TL),n=AL,r=kL,i;return e[0]===t?i=e[1]:(i={color:t,updateColor:n,resetColor:r,default:Ja},e[0]=t,e[1]=i),i}function kL(){DL(Ja)}function AL(e){DL(e)}function jL(){xL=jr(),wL(xL)}var ML;(function(e){e.Dark=`DARK`,e.Light=`LIGHT`,e.Default=`DEFAULT`})(ML||={});var NL;(function(e){e.None=`NONE`,e.Slide=`SLIDE`,e.Fade=`FADE`})(NL||={});var PL=Ag(`StatusBar`),FL=`--app-viewport-height`;function IL(){let e=window.visualViewport,t=Math.round(Lr()===`ios`?window.innerHeight:e?.height??window.innerHeight);document.documentElement.style.setProperty(FL,`${t}px`)}function LL(){IL(),requestAnimationFrame(IL)}function RL(){document.documentElement.dataset.nativeShell=`true`,LL(),window.addEventListener(`resize`,IL),window.addEventListener(`orientationchange`,LL);let e=window.visualViewport;e?.addEventListener(`resize`,IL),e?.addEventListener(`scroll`,IL)}async function zL(){try{await PL.setOverlaysWebView({overlay:!0}),await PL.show(),LL()}catch{}}async function BL(){try{let e=Lr()===`ios`?nD.None:nD.Body;await rD.setResizeMode({mode:e})}catch{}}function VL(){Za()&&(RL(),zL(),BL(),document.addEventListener(`visibilitychange`,()=>{if(document.visibilityState===`visible`){LL(),zL();return}Jg()}))}var HL=class extends Z.Component{state={hasError:!1,report:null};static getDerivedStateFromError(){return{hasError:!0}}componentDidCatch(e,t){this.setState({report:iI(e,{source:`react`,componentStack:t.componentStack??void 0})})}handleReload=()=>{window.location.reload()};render(){return this.state.hasError?this.state.report?(0,$.jsx)(cI,{open:!0,report:this.state.report,variant:`current-session`,onDismiss:this.handleReload,onReload:this.handleReload}):null:this.props.children}};lL(),gL(),jL(),DO(),VL();function UL(e){if(!(e instanceof Error))return!1;let t=e.message;return t.includes(`valid JavaScript MIME type`)||t.includes(`Failed to fetch dynamically imported module`)||t.includes(`Importing a module script failed`)}function WL(){sessionStorage.getItem(GL)||(sessionStorage.setItem(GL,`1`),window.location.reload())}var GL=`tarsk-chunk-reload`;function KL(e){return e instanceof HTMLInputElement||e instanceof HTMLTextAreaElement}function qL(e){if(!AO())return;let t=document.activeElement;!(e.metaKey||e.ctrlKey)||e.altKey||e.key.toLowerCase()!==`v`||!KL(t)||(e.preventDefault(),window.parent.postMessage({type:`tarsk-paste-request`},`*`))}function JL(e){let t=document.activeElement;if(!KL(t)||t.disabled||t.readOnly)return;let n=t.selectionStart??t.value.length,r=t.selectionEnd??n,i=t.value.slice(0,n)+e+t.value.slice(r),a=t instanceof HTMLTextAreaElement?HTMLTextAreaElement.prototype:HTMLInputElement.prototype;(Object.getOwnPropertyDescriptor(a,`value`)?.set)?.call(t,i),t.setSelectionRange(n+e.length,n+e.length),t.dispatchEvent(new Event(`input`,{bubbles:!0}))}AO()&&(window.addEventListener(`keydown`,qL,!0),window.addEventListener(`message`,e=>{e.data?.type===`tarsk-clipboard-paste`&&typeof e.data.text==`string`&&JL(e.data.text)})),oI({shouldIgnore:UL}),window.addEventListener(`unhandledrejection`,e=>{UL(e.reason)&&(e.preventDefault(),WL())}),window.addEventListener(`vite:preloadError`,e=>{e.preventDefault(),WL()}),sessionStorage.removeItem(GL);var YL=!1;window.addEventListener(`resize`,()=>{YL||=(window.__electrobunWebviewId&&(document.body.style.height=`calc(100%)`),!0)});var XL=Za()?Bn:gn;(0,Wc.createRoot)(document.getElementById(`root`)).render((0,$.jsx)(Z.StrictMode,{children:(0,$.jsx)(HL,{children:(0,$.jsx)(XL,{children:(0,$.jsx)(eL,{})})})}));export{CS as $,kA as A,Fp as At,Nw as B,xl as Bt,Ej as C,B_ as Ct,dj as D,T_ as Dt,Cj as E,H_ as Et,QO as F,Fd as Ft,uw as G,vl as Gt,Mw as H,Tl as Ht,YO as I,ku as It,zC as J,Yc as Jt,dw as K,gl as Kt,CO as L,hl as Lt,AA as M,dp as Mt,jA as N,Wd as Nt,ZA as O,jg as Ot,nk as P,Pd as Pt,wS as Q,UE as R,Sl as Rt,vM as S,K_ as St,wj as T,U_ as Tt,xw as U,_l as Ut,Pw as V,wl as Vt,vw as W,yl as Wt,OS as X,kS as Y,DS as Z,_M as _,bv as _t,bI as a,fS as at,yM as b,Y_ as bt,KP as c,gS as ct,AP as d,ox as dt,_S as et,jP as f,ix as ft,cM as g,wv as gt,AN as h,Sv as ht,SI as i,pS as it,MA as j,Pp as jt,zA as k,Np as kt,GP as l,mS as lt,oP as m,_y as mt,hL as n,hS as nt,CF as o,xS as ot,iP as p,Vb as pt,lw as q,el as qt,cL as r,yS as rt,oF as s,SS as st,OL as t,bS as tt,WP as u,oS as ut,uM as v,J_ as vt,Tj as w,q_ as wt,gM as x,G_ as xt,pM as y,V_ as yt,dE as z,bl as zt};