@qt4798/pi-web 0.18.3 → 0.18.4

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 (44) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-path-routes-manifest.json +9 -9
  3. package/.next/build-manifest.json +2 -2
  4. package/.next/prerender-manifest.json +3 -3
  5. package/.next/required-server-files.js +1 -1
  6. package/.next/required-server-files.json +1 -1
  7. package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  8. package/.next/server/app/_global-error.html +1 -1
  9. package/.next/server/app/_global-error.rsc +1 -1
  10. package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  11. package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  12. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  13. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  14. package/.next/server/app/_not-found.html +1 -1
  15. package/.next/server/app/_not-found.rsc +1 -1
  16. package/.next/server/app/_not-found.segments/_full.segment.rsc +1 -1
  17. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  18. package/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  19. package/.next/server/app/api/app-update/route.js +1 -1
  20. package/.next/server/app/index.html +1 -1
  21. package/.next/server/app/index.rsc +3 -3
  22. package/.next/server/app/index.segments/__PAGE__.segment.rsc +3 -3
  23. package/.next/server/app/index.segments/_full.segment.rsc +3 -3
  24. package/.next/server/app/index.segments/_tree.segment.rsc +1 -1
  25. package/.next/server/app/login/page_client-reference-manifest.js +1 -1
  26. package/.next/server/app/login.html +1 -1
  27. package/.next/server/app/login.rsc +1 -1
  28. package/.next/server/app/login.segments/_full.segment.rsc +1 -1
  29. package/.next/server/app/login.segments/_tree.segment.rsc +1 -1
  30. package/.next/server/app/login.segments/login/__PAGE__.segment.rsc +1 -1
  31. package/.next/server/app/page.js +2 -2
  32. package/.next/server/app/page_client-reference-manifest.js +1 -1
  33. package/.next/server/app-paths-manifest.json +9 -9
  34. package/.next/server/chunks/7915.js +1 -1
  35. package/.next/server/middleware-build-manifest.js +1 -1
  36. package/.next/server/pages/404.html +1 -1
  37. package/.next/server/pages/500.html +1 -1
  38. package/.next/server/server-reference-manifest.json +1 -1
  39. package/.next/static/chunks/app/{page-bf524eccd13171ca.js → page-bd73baeec065cb84.js} +2 -2
  40. package/.next/trace +83 -83
  41. package/.next/trace-build +1 -1
  42. package/package.json +1 -1
  43. /package/.next/static/{_xksA4ZQaCVW_rYzSdTTL → I_FDqLx_bV7v2QRYgPTtm}/_buildManifest.js +0 -0
  44. /package/.next/static/{_xksA4ZQaCVW_rYzSdTTL → I_FDqLx_bV7v2QRYgPTtm}/_ssgManifest.js +0 -0
@@ -191,8 +191,8 @@ ${a}`,p=(0,L.jsx)("button",{onClick:()=>f(a=>!a),disabled:b,title:c(b?"desktop.m
191
191
 
192
192
  Goal: ${c}`:cj)}return b.join("\n\n")}({collaborationMode:ay.current,tokenMode:az.current,goalText:"goal"===ay.current?aA.current??void 0:void 0}),k=[ay.current,az.current,j?String(j.length):""].join("|"),m=b?.id??"new";j&&(aB.current.sessionKey!==m||aB.current.signature!==k)?(aB.current={sessionKey:m,signature:k},f=`${j}
193
193
 
194
- ${c}`):f=c;let n=f,o=e?.map(a=>({type:"image",source:{type:"base64",media_type:a.mimeType,data:a.data}})),p={role:"user",content:o?.length?[...c.trim()?[{type:"text",text:c}]:[],...o]:c,timestamp:Date.now()};z(a=>[...a,p]),b$.current=tL(p),bZ.current=i;let q="goal"===ay.current&&!h&&g.length>0&&"idle"===aI.current.status;q&&(aA.current=g,aH(a=>({...a,status:"running",goalText:g,turnsUsed:0,noProgressTurns:0,tokensUsed:0})),aJ.current=!0),bG.current=!0,T(!0),a3(h?{kind:"running_command"}:{kind:"waiting_model"}),J({type:"start"}),bQ.current=!0,a5(!0),bR.current=!0;let r=e?.map(a=>({type:"image",data:a.data,mimeType:a.mimeType})),s=null,t=!1;try{if(l&&d){let a=bE.current??await bX.current,b=a??await ct();if(b){s=b,cs(1,c),ai&&(aX(ai),a&&await cR(b,{type:"set_model",provider:ai.provider,modelId:ai.modelId}));let d=await Promise.race([cy(b).then(()=>!0).catch(()=>!1),tH(4e3).then(()=>!1)]);t=!0,await cR(b,{type:"prompt",message:n,...r?.length?{images:r}:{}}),d||cL(b,i),q&&cR(b,{type:"goal_start",goalText:g}).catch(()=>{})}else throw Error("Unable to create a session for this message")}else if(b){s=b.id;let a=await Promise.race([cy(b.id).then(()=>!0).catch(()=>!1),tH(4e3).then(()=>!1)]);t=!0,await cR(b.id,{type:"prompt",message:n,...r?.length?{images:r}:{}}),a||cL(b.id,i),q&&cR(b.id,{type:"goal_start",goalText:g}).catch(()=>{})}h&&s&&cL(s,i)}catch(b){if(console.error("Failed to send message:",b),t&&s)return void cL(s,i);if(bI.current=!1,cw(),b instanceof tG){let a=b$.current;a&&z(b=>{let c=b[b.length-1];return c?.role==="user"&&tL(c)===a?b.slice(0,-1):b}),cB({type:"error",message:b.message})}else{let c=b$.current;c&&z(a=>{let b=a[a.length-1];return b?.role==="user"&&tL(b)===c?a.slice(0,-1):a}),a.chatInputRef?.current?.replaceMessage?.(p),cB({type:"error",message:`Failed to send message: ${b instanceof Error?b.message:String(b)}`})}b$.current=null,bG.current=!1,T(!1),a3(null),J({type:"end"})}},[l,d,ai,b,ct,cy,cs,cL,cB,cv,cw,b6]),cQ=(0,M.useCallback)(async(c,d)=>{if(bG.current||bM.current)return;let e=`${d?"!!":"!"}${c}`;bM.current=!0,X({command:c,excludeFromContext:d}),V(!0);try{let a=bE.current??b?.id??await ct();if(!a)throw Error("Unable to create a session for the shell command");cs(1,e),await cR(a,{type:"bash",command:c,excludeFromContext:d}),await cq(a)}catch(b){console.error("Failed to execute shell command:",b),cB({type:"error",message:b instanceof Error?b.message:String(b)}),a.chatInputRef?.current?.insertIfEmpty(e)}finally{bM.current=!1,X(null),V(!1)}},[cB,ct,cq,a.chatInputRef,cs,b]),cS=(0,M.useCallback)(async()=>{let a=bE.current;if(a)try{await cR(a,{type:bM.current?"abort_bash":"abort"})}catch(a){console.error("Failed to abort:",a)}},[]),cT=(0,M.useCallback)(async a=>{let b=bE.current;if(b){aT(a);try{let{cancelled:c,newSessionId:d}=await cR(b,{type:"fork",entryId:a})??{};!c&&d&&g?.(d)}catch(a){console.error("Fork failed:",a)}finally{aT(null)}}},[g]),cU=(0,M.useCallback)(async a=>{if(bM.current)return!1;let b=bE.current;if(!b)return!1;try{let c=await cR(b,{type:"navigate_tree",targetId:a});if(c?.cancelled||bE.current!==b)return!1;return x(a),await cq(b),bE.current===b}catch(a){return console.error("Failed to navigate:",a),!1}},[cq]),cV=(0,M.useCallback)(async a=>{x(a);let b=bE.current;b&&(await cD(b,a),a&&cR(b,{type:"navigate_tree",targetId:a}).catch(()=>{}))},[cD]),cW=(0,M.useCallback)(async(a,b)=>{if(l){let c={provider:a,modelId:b};b3.current=c,aj(c),aX(c);let d=bE.current??await bX.current;if(!d)return;try{await cR(d,{type:"set_model",provider:a,modelId:b})}catch(a){console.error("Failed to set model:",a)}return}let c=bE.current;if(!c)return;let d=++b_.current,e=aU??n?.context.model??null;aV({provider:a,modelId:b});try{await cR(c,{type:"set_model",provider:a,modelId:b})}catch(c){console.error("Failed to set model:",c),b_.current===d&&(aV(e&&(e.provider!==a||e.modelId!==b)?e:null),cB({type:"error",message:c instanceof Error?c.message:String(c)}))}},[cB,aU,n?.context.model,l,aj]),cX=(0,M.useCallback)(async()=>{let a=bE.current;if(a&&!aY){aZ(!0),a_(null),a1(null);try{let b=await cR(a,{type:"compact"});a1(tM(b,"manual")),await cq(a,!0)}catch(a){a_(a instanceof Error?a.message:String(a)),a1(null)}finally{aZ(!1)}}},[aY,cq]),cY=(0,M.useCallback)(async a=>{let c=++b0.current,e=d??b?.cwd??"",f=e?`/api/models?cwd=${encodeURIComponent(e)}`:"/api/models",g=b1.current;g?.abort();let h=new AbortController;b1.current=h;let i=()=>h.abort();a?.aborted?h.abort():a?.addEventListener("abort",i,{once:!0});try{let a=await fetch(f,{signal:h.signal});if(!a.ok){let b=`HTTP ${a.status}`;try{let c=await a.json();c?.error&&(b=c.error)}catch{}throw Error(b)}let b=await a.json();if(c!==b0.current||m!==b2.current)return;ah(null),Z(b.models),ab(b.thinkingLevels??{}),ad(b.thinkingLevelMaps??{}),af(b.modelScopeWarnings??[]);let d=b.modelList??[];if(_(d),l&&!bE.current){let a=(b.defaultModel?d.find(a=>a.id===b.defaultModel?.modelId&&a.provider===b.defaultModel?.provider):void 0)??d[0];al(a?{provider:a.provider,modelId:a.id}:null);let c=a?b.thinkingLevelPins?.[`${a.provider}/${a.id}`]:void 0;null===b4.current&&aL(c??"auto")}}catch(a){if(h.signal.aborted||c!==b0.current||m!==b2.current)return;ah(a instanceof Error?a.message:String(a))}finally{a?.removeEventListener("abort",i),b1.current===h&&(b1.current=null)}},[l,m,d,b?.cwd]),cZ=(0,M.useCallback)(async a=>{if(!a.startsWith("/"))return{handled:!1};let b=a.match(/^\/([^\s]+)(?:\s+([\s\S]*))?$/);if(!b)return{handled:!1};let[,c,d=""]=b,e=d.trim(),f=bE.current??await ct(),g=a=>(a.handled&&(a.error?cB({type:"error",message:a.error}):"openSessionStats"!==a.action&&cB({type:"success",message:a.message??"Command completed"})),a);try{switch(c){case"compact":{if(!f||aY)return g({handled:!0,error:"No active session to compact"});aZ(!0),a_(null),a1(null);let a=await cR(f,{type:"compact",...e?{customInstructions:e}:{}});return a1(tM(a,"manual")),await cq(f,!0)&&cs(),g({handled:!0,message:"Compacted context"})}case"reload":if(!f)return g({handled:!0,error:"No active session to reload"});return await cR(f,{type:"reload"}),await Promise.all([cq(f,!1,!0),cr(f),cu(),cY()]),g({handled:!0,message:"Reloaded session resources"});case"name":if(!f)return g({handled:!0,error:"No active session to name"});if(!e)return g({handled:!0,error:"Usage: /name <name>"});return await cR(f,{type:"set_session_name",name:ck(e)}),await cq(f)&&cs(),g({handled:!0,message:`Session renamed to ${e}`});case"session":{if(!f)return g({handled:!0,error:"No active session"});let a=await cR(f,{type:"get_session_stats"});return a&&bd(a),k?.(),g({handled:!0,action:"openSessionStats"})}case"copy":{if(!f)return g({handled:!0,error:"No active session"});let a=await cR(f,{type:"get_last_assistant_text"}),b=a?.text??"";if(!b)return g({handled:!0,error:"No assistant message to copy"});return await navigator.clipboard.writeText(b),g({handled:!0,message:"Copied last assistant message"})}default:return{handled:!1}}}catch(a){return g({handled:!0,error:a instanceof Error?a.message:String(a)})}finally{"compact"===c&&aZ(!1)}},[cB,ct,aY,cY,cq,cu,cr,cs,k]),c$=(0,M.useCallback)(async a=>{let b=!1;try{let c=await fetch(`/api/agent/${encodeURIComponent(a)}`);if(c.ok){let a=await c.json(),d=a.state;if(a.running&&d&&(d.isStreaming||d.isPromptRunning||d.isBashRunning||d.isCompacting))return;b=!0}}catch{}b?cH():cL(a)},[cL,cH]),c_=(0,M.useCallback)(async(a,b)=>{let c=bE.current;if(!c)return;let d=b?.map(a=>({type:"image",data:a.data,mimeType:a.mimeType}));bG.current=!0,T(!0),a3(a=>a??{kind:"waiting_model"});try{await cR(c,{type:"steer",message:a,...d?.length?{images:d}:{}})}catch(a){console.error("Failed to steer:",a),c$(c)}},[c$]),c0=(0,M.useCallback)(async(a,b,c)=>{let d=bE.current;if(!d)return;let e=c?.map(a=>({type:"image",data:a.data,mimeType:a.mimeType}));bG.current=!0,T(!0),a3(a=>a??{kind:"waiting_model"});try{await cR(d,{type:"prompt",message:a,streamingBehavior:b,...e?.length?{images:e}:{}})}catch(a){console.error("Failed to queue prompt:",a),c$(d)}},[c$]),c1=(0,M.useCallback)(async(a,b)=>{let c=bE.current;if(!c)return;let d=b?.map(a=>({type:"image",data:a.data,mimeType:a.mimeType}));bG.current=!0,T(!0),a3(a=>a??{kind:"waiting_model"});try{await cR(c,{type:"follow_up",message:a,...d?.length?{images:d}:{}})}catch(a){console.error("Failed to follow up:",a),c$(c)}},[c$]),c2=(0,M.useCallback)(async()=>{let a=bE.current;if(a)try{await cR(a,{type:"abort_compaction"})}catch(a){console.error("Failed to abort compaction:",a)}},[]),c3=(0,M.useCallback)(async()=>{let b=bE.current;if(b)try{let c=await cR(b,{type:"clear_queue"});bo({steering:[],followUp:[]});let d=[...c?.steering??[],...c?.followUp??[]];d.length>0&&a.chatInputRef?.current?.prependText(d.join("\n\n"))}catch(a){console.error("Failed to recall queued messages:",a),cB({type:"error",message:"Failed to recall queued messages"})}},[a.chatInputRef,cB,bo]),c4=(0,M.useCallback)(async(a,b,c=!1)=>{let d=bE.current;if(!d)return bp;try{let e=await cR(d,{type:"resolve_recovery",keep:a,discard:b,continueRun:c}),f=e?.remaining??[];return br(f),c&&a.length>0&&(async()=>{try{let a=await fetch(`/api/agent/${encodeURIComponent(d)}`);if(!a.ok)return;let b=await a.json(),c=b.state;if(!b.running||!c||!c.isStreaming&&!c.isPromptRunning)return;bH.current=!!c.isStreaming,bI.current=!!c.isPromptRunning,bG.current=!0,T(!0),a3(tB(c)),J({type:"start"}),cx(d),!c.isStreaming&&c.isPromptRunning&&cL(d)}catch{}})(),f}catch(a){return console.error("Failed to resolve queued message recovery:",a),cB({type:"error",message:"Failed to resolve queued message recovery"}),bp}},[bp,cB,cx,cL,br]),c5=(0,M.useCallback)(async()=>{let a=bE.current;if(!a)return null;try{return await cR(a,{type:"export_queue"})}catch(a){return console.error("Failed to export queue:",a),cB({type:"error",message:"Failed to export queue"}),null}},[cB]),c6=(0,M.useCallback)(async a=>{let b=bE.current;if(!b)return null;try{let c=await cR(b,{type:"import_queue",entries:a});return c&&bo(tD(c)),c?.imported??0}catch(a){return console.error("Failed to import queue:",a),cB({type:"error",message:"Failed to import queue"}),null}},[cB,bo]),c7=(0,M.useCallback)(async a=>{let b=bE.current;if(!b)return null;try{let c=await cR(b,{type:"stage_recovery",entries:a});return c?.pendingRecovery&&br(c.pendingRecovery),(c?.staged??0)>0&&bt(!0),c?.staged??0}catch(a){return console.error("Failed to stage imported queue:",a),cB({type:"error",message:"Failed to stage imported queue"}),null}},[cB,br]),c8=(0,M.useCallback)(async(a,b,c)=>{let d=bE.current;if(!d)return!1;try{let e=await cR(d,{type:"move_queue",kind:a,fromIndex:b,toIndex:c});return e&&bo(tD(e)),!0}catch(a){return console.error("Failed to move queued message:",a),cB({type:"error",message:a instanceof Error?a.message:"Failed to move queued message"}),!1}},[cB,bo]),c9=(0,M.useCallback)(async(a,b)=>{let c=bE.current;if(!c)return null;try{let d=await cR(c,{type:"recall_queue_item",kind:a,index:b});return d&&(void 0!==d.steering||void 0!==d.followUp)&&bo(tD(d)),d?.entry?{text:d.entry.text,images:d.entry.images?.map(({data:a,mimeType:b})=>({data:a,mimeType:b}))}:null}catch(a){return console.error("Failed to recall queued message:",a),cB({type:"error",message:a instanceof Error?a.message:"Failed to recall queued message"}),null}},[cB,bo]),da=(0,M.useCallback)(async(a,b,c,d)=>{let e=bE.current;if(!e)return!1;try{let f=await cR(e,{type:"requeue_at",kind:a,index:b,text:c,images:d?.map(({data:a,mimeType:b})=>({type:"image",data:a,mimeType:b}))});return f&&bo(tD(f)),!0}catch(a){return console.error("Failed to requeue message:",a),cB({type:"error",message:a instanceof Error?a.message:"Failed to requeue message"}),!1}},[cB,bo]),db=(0,M.useCallback)(async(a,b)=>{let c=bE.current;if(!c)return!1;try{let d=await cR(c,{type:"remove_queue_item",kind:a,index:b});return d&&bo(tD(d)),!0}catch(a){return console.error("Failed to remove queued message:",a),cB({type:"error",message:a instanceof Error?a.message:"Failed to remove queued message"}),!1}},[cB,bo]),dc=(0,M.useCallback)(async a=>{if(b4.current="auto"===a?null:a,aL(a),"auto"===a)return;let b=bE.current??await bX.current;if(b)try{await cR(b,{type:"set_thinking_level",level:a})}catch(a){console.error("Failed to set thinking level:",a)}},[]),dd=(0,M.useCallback)(async a=>{let b=(0,tx.xG)(a);b8(a);let c=bE.current??await bX.current;if(c)try{await cR(c,{type:"set_tools",toolNames:b})}catch(a){console.error("Failed to set tools:",a)}},[b8]),de=(0,M.useRef)(0),df=(0,M.useCallback)(async a=>{let b=bE.current??await bX.current,c=++de.current;if("plan"===a){if(ao.current="plan"===am?"default":am,b)try{await cR(b,{type:"prompt",message:"/plan"})}catch(a){if(de.current!==c)return;console.error("Failed to enter plan mode:",a)}return}if(b){try{if(await cR(b,{type:"prompt",message:"/plan exit"}),de.current!==c)return}catch(a){if(de.current!==c)return;console.error("Failed to exit plan mode:",a)}if(de.current!==c)return;try{await cR(b,{type:"set_tools",toolNames:(0,tx.xG)(ao.current)})}catch(a){console.error("Failed to restore tools after plan exit:",a)}}},[am]),dg=(0,M.useCallback)(a=>{aC.current=a,ar(a);let b=bE.current;if(!b){as.current=a;return}as.current=null,fetch(`/api/modes?session=${encodeURIComponent(b)}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(a)}).catch(a=>{console.error("Failed to persist mode settings:",a)})},[]),dh=(0,M.useCallback)(a=>{let b=cc(a),c="plan"===ay.current;if(dg({...aC.current,collaborationMode:b}),ay.current=b,aB.current={sessionKey:"",signature:""},"goal"!==b){aA.current=null,aJ.current=!1,aH(a=>"idle"===a.status?a:{...a,status:"idle",goalText:null});let a=bE.current;a&&cR(a,{type:"goal_stop"}).catch(()=>{})}return"plan"!==b||c?"plan"!==b&&c?df("normal"):Promise.resolve():df("plan")},[dg,df]),di=(0,M.useCallback)(async a=>{dg({...aC.current,tokenMode:cd(a)});let b=bE.current??await bX.current;if(b)try{if("economy"!==a||ap.current){if("economy"!==a){let a=ap.current?tx.SC:(0,tx.xG)("plan"===am?"default":am);await cR(b,{type:"set_tools",toolNames:a})}}else await cR(b,{type:"set_tools",toolNames:[...cf]})}catch(a){console.error("Failed to apply token mode tools:",a)}},[dg,am]),dj=(0,M.useCallback)(async a=>{dg({...aC.current,toolApprovalMode:ce(a)});let b=bE.current??await bX.current;if(b)try{await cR(b,{type:"set_approval_mode",mode:ce(a)})}catch(a){console.error("Failed to apply approval mode:",a)}},[dg]),dk=(0,M.useCallback)(async a=>{dg({...aC.current,permissionRules:a});let b=bE.current??await bX.current;if(b)try{await cR(b,{type:"set_approval_policy",policy:a})}catch(a){console.error("Failed to apply permission rules:",a)}},[dg]),dl=(0,M.useCallback)(async(a,b,c,d)=>{let e=bE.current;if(e){if("always"===d){let c=aF.current.find(b=>b.id===a);if(c){let a=q6(c.toolName,c.args),d=a?`${c.toolName}(${a})`:c.toolName,e=aC.current.permissionRules;(b?e.allow:e.deny).includes(d)||dk(b?{...e,allow:[...e.allow,d]}:{...e,deny:[...e.deny,d]})}}try{await cR(e,{type:"resolve_approval",id:a,approve:b,reason:c})}catch(a){console.error("Failed to resolve approval:",a)}finally{aE(b=>b.filter(b=>b.id!==a))}}},[dk]),dm=(0,M.useCallback)(a=>{aA.current=a},[]),dn=(0,M.useCallback)(a=>{let b=a.trim();if(!b)return;aA.current=b,aH(a=>({...a,status:"running",goalText:b,turnsUsed:0,noProgressTurns:0,tokensUsed:0,startedAt:Date.now()}));let c=bE.current;c&&cR(c,{type:"goal_start",goalText:b}).catch(()=>{})},[]),dp=(0,M.useCallback)(()=>{if("running"!==aI.current.status)return;aH(a=>({...a,status:"paused"}));let a=bE.current;a&&cR(a,{type:"goal_pause"}).catch(()=>{})},[]),dq=(0,M.useCallback)(()=>{let a=aI.current;if("paused"!==a.status&&"blocked"!==a.status)return;aH(a=>({...a,status:"running"}));let b=bE.current;b&&cR(b,{type:"goal_resume"}).catch(()=>{})},[]),dr=(0,M.useCallback)(()=>{aJ.current=!1,aA.current=null,aH(a=>({...a,status:"idle",goalText:null,turnsUsed:0,noProgressTurns:0}));let a=bE.current;a&&cR(a,{type:"goal_stop"}).catch(()=>{})},[]),ds=(0,M.useCallback)(a=>{let b=a.trim();if(!b)return;aH(a=>({...a,goalText:b}));let c=bE.current;c&&cR(c,{type:"goal_edit",goalText:b}).catch(()=>{})},[]),dt=(0,M.useCallback)(()=>{let a=bW.current,b=bP.current;if(!a||!b)return;let c=b.getBoundingClientRect().top-a.getBoundingClientRect().top+a.scrollTop,d=Math.max(0,a.scrollHeight-a.clientHeight),e=Math.min(Math.max(0,c-16),d);bS.current=e>=d-150,bU.current=Date.now()+700,a.scrollTo({top:e,behavior:"smooth"})},[]);(0,M.useCallback)(a=>{if(a instanceof KeyboardEvent){if(!tF.has(a.key)||a.target instanceof Element&&a.target.closest("input, textarea, [contenteditable='true']"))return}else if(a instanceof PointerEvent){let b=bW.current;if(b&&a.target instanceof Element&&!b.contains(a.target))return}bT.current=Date.now()+1200},[]),(0,M.useCallback)(()=>{let a=bW.current;if(a){let{scrollTop:b,clientHeight:c,scrollHeight:d}=a;bS.current=b+c>=d-150}if(Date.now()<bT.current){bR.current=!1;return}Date.now()<bU.current||(bR.current=!1)},[]),(0,M.useRef)(null);let[du,dv]=(0,M.useState)(0);b?.id;let dw=n?.tree??[];return{data:n,loading:s,error:u,activeLeafId:w,messages:y,activeToolResults:A,entryIds:C,historyCursor:E,hasEarlierMessages:G,streamState:I,agentRunning:S,bashRunning:U,pendingBash:W,modelNames:Y,modelList:$,modelThinkingLevels:aa,modelThinkingLevelMaps:ac,modelScopeWarnings:ae,modelsError:ag,newSessionModel:ai,toolPreset:am,thinkingLevel:aK,retryInfo:aM,contextUsage:aO,systemPrompt:aQ,forkingEntryId:aS,isCompacting:aY,compactError:a$,compactResult:a0,currentModel:cn,displayModel:co,sessionStats:cp,tokenRate:L,planMode:ax,collaborationMode:at,tokenMode:au,toolApprovalMode:av,permissionRules:aw,modeSettings:aq,approvalRequests:aD,handleCollaborationModeChange:dh,handleTokenModeChange:di,handleToolApprovalModeChange:dj,handlePermissionRulesChange:dk,resolveApproval:dl,setActiveGoalText:dm,goalState:aG,handleGoalStart:dn,handleGoalPause:dp,handleGoalResume:dq,handleGoalStop:dr,handleGoalEdit:ds,slashCommands:a6,slashCommandsLoading:a8,queuedMessages:bm,pendingRecovery:bp,recoveryIsImport:bs,notices:ba.visible,extensionDialog:be,extensionCustomUi:bg,extensionStatuses:bi,extensionWidgets:bk,respondToExtensionUi:cz,sendExtensionCustomInput:cA,agentPhase:a2,isNew:l,promptAnchorActive:a4,branchTree:dw,sessionIdRef:bE,eventSourceRef:bx,messagesEndRef:bV,scrollContainerRef:bW,lastUserMsgRef:bP,pendingScrollToUserRef:bQ,initialScrollDoneRef:bO,scrollUserMsgToTop:dt,handleSend:cP,executeBash:cQ,handleAbort:cS,handleFork:cT,handleNavigate:cU,handleModelChange:cW,handleCompact:cX,handleSteer:c_,handleFollowUp:c1,handlePromptWithStreamingBehavior:c0,handleAbortCompaction:c2,handleRecallQueue:c3,resolveRecovery:c4,exportQueueData:c5,importQueueData:c6,stageQueueImport:c7,moveQueuedMessage:c8,recallQueuedMessage:c9,requeueAt:da,removeQueuedMessage:db,handleBuiltinSlashCommand:cZ,handleToolPresetChange:dd,handleThinkingLevelChange:dc,loadTools:cr,loadSlashCommands:cu,reloadModels:cY,setActiveLeafId:x,setData:o,setMessages:z,loadContext:cD,dispatch:J,setAgentRunning:T,setForkingEntryId:aT,handleLeafChange:cV,handleAgentEventRef:bN}}({session:a,newSessionCwd:b,onAgentEnd:F,onSessionCreated:e,onSessionForked:f,modelsRefreshKey:g,chatInputRef:h,onBranchDataChange:i,onSystemPromptChange:j,onSessionStatsPanelOpen:l}),[bk,bl]=(0,M.useState)(!1),bm=(0,M.useMemo)(()=>{let a=N.findLast(a=>"assistant"===a.role&&!!a.usage);if(!a?.usage)return null;let b=a.usage;return{model:a.model??"",input:b.input??0,output:b.output??0,cacheRead:b.cacheRead??0,costCNY:qz(a.model)?qA(a.model,b):0,costUSD:qz(a.model)?0:b.cost?.total??0}},[N]),[bn,bo]=(0,M.useState)(!1),[bp,bq]=(0,M.useState)(null);(0,M.useRef)(!1);let br=(0,M.useCallback)(()=>{bo(!1);let a=bs.current;a&&a6("plan"===a4?"normal":a4).catch(a=>{console.error("Failed to leave plan mode before executing:",a)}).then(()=>{aI(C("tasks.planReviewExecutePrompt",{plan:a}))})},[a6,aI,C,a4]),bs=(0,M.useRef)(null),bt=(0,M.useCallback)(a=>{bo(!1),aI(a)},[aI]),bu=(0,M.useCallback)(()=>{bo(!1),a6("plan"===a4?"normal":a4)},[a6,a4]),[bv,bw]=(0,M.useState)(!1),[bx,by]=(0,M.useState)(!1),[bz,bA]=(0,M.useState)(!1),bB=(0,M.useCallback)(()=>{let a=aD.current;if(!a)return;let b=a.scrollHeight-a.scrollTop-a.clientHeight;bw(a.scrollTop>1),by(b>1),bA(b>240)},[aD]),bC=(0,M.useCallback)(()=>{window.requestAnimationFrame(()=>{let a=aD.current,b=aC.current;if(!a||!b)return;let c=Math.max(88,h?.current?.measureHeight?.()??0),d=()=>{if(!a||!b)return;let d=Math.max(0,b.getBoundingClientRect().top-a.getBoundingClientRect().top+a.scrollTop-96-a.clientHeight+c);a.scrollTo({top:d,behavior:"auto"})};d(),bB(),window.setTimeout(d,200)})},[aC,aD,bB,h]);(0,M.useRef)(!1),(0,M.useRef)(!1);let bD=(0,M.useRef)(null),bE=(0,M.useRef)([]),bF=(0,M.useRef)(new Map),bG=(0,M.useRef)(null),[bH,bI]=(0,M.useState)(0),bJ=(0,M.useMemo)(()=>({getOffsetForIndex:a=>bD.current?.getOffsetForIndex(a)?.[0]??0,sizeFor:a=>{let b=bD.current;if(!b)return 0;let c=b.measurementsCache[a];return c?.size??b.options.estimateSize?.(a)??0},totalHeight:()=>bD.current?.getTotalSize()??0,refToItemIndex:a=>bE.current[a],itemCount:bE.current.length}),[]);ai&&[ai.sessionId,ai.sessionFile??"",ai.sessionName??"",ai.userMessages,ai.assistantMessages,ai.toolCalls,ai.toolResults,ai.totalMessages,ai.tokens.input,ai.tokens.output,ai.tokens.cacheRead,ai.tokens.cacheWrite,ai.tokens.total,ai.cost??0,ai.totalActiveMs??0].join("|"),(0,M.useRef)(ai).current=ai,ac&&(ac.percent,ac.contextWindow,ac.tokens),(0,M.useRef)(ac).current=ac;let{isDragOver:bK,handleDragEnter:bL,handleDragOver:bM,handleDragLeave:bN,handleDrop:bO}=function(a){let[b,c]=(0,M.useState)(!1),d=(0,M.useRef)(0),e=(0,M.useCallback)(a=>{a.dataTransfer.files.length&&(a.preventDefault(),d.current+=1,c(!0))},[]),f=(0,M.useCallback)(a=>{a.dataTransfer.files.length&&a.preventDefault()},[]);return{isDragOver:b,handleDragEnter:e,handleDragOver:f,handleDragLeave:(0,M.useCallback)(()=>{d.current-=1,d.current<=0&&(d.current=0,c(!1))},[]),handleDrop:(0,M.useCallback)(b=>{b.preventDefault(),d.current=0,c(!1),a(Array.from(b.dataTransfer.files),b.dataTransfer)},[a])}}((0,M.useCallback)((a,b)=>{if(R){let b=a.filter(a=>a.type.startsWith("image/"));b.length&&h?.current?.addImages(b);return}h?.current?.addFiles(a,b)},[R,h])),bP=N.filter(a=>"user"===a.role||"assistant"===a.role),bQ=(0,M.useMemo)(()=>{let a=new Set,b=[];for(let d=N.length-1;d>=0&&b.length<50;d-=1){var c;let e="user"!==(c=N[d]).role?null:("string"==typeof c.content?c.content:c.content.filter(a=>"text"===a.type).map(a=>a.text).join("\n")).trim()||null;!e||a.has(e)||(a.add(e),b.push(e))}return b},[N]),bR=(v=bP.length,(w=(0,M.useRef)([])).current.length!==v&&(w.current=Array.from({length:v},(a,b)=>w.current[b]??null)),w),bS=ax&&0===N.length&&!Q.isStreaming&&!R,bT=a?.cwd??b??void 0,bU=(0,M.useMemo)(()=>(function(a,b,c,d){let e=new Map(d);for(let b of a)"toolResult"===b.role&&e.set(b.toolCallId,b);let f=-1;for(let b=a.length-1;b>=0;b--)if("user"===a[b].role){f=b;break}let g=new Map,h=0;a.forEach((a,b)=>{("user"===a.role||"assistant"===a.role)&&g.set(b,h++)});let i=[];for(let d=0;d<a.length;){let f,g=a[d],h="custom"===g.role&&"compaction"===g.customType;if(0===d&&"user"!==g.role&&!h){let c=1;for(;c<a.length&&"user"!==a[c].role;)c+=1;let f=Array.from({length:c},(a,b)=>b).filter(b=>hq(a[b])),g=hl(a,b,f,e);if(g.length>0){i.push({kind:"turn",userIdx:-1,endIdx:c,startsCompactionTurn:!1,finalAssistantIdx:-1,visibleProcessIndices:f,processBlocks:g,processSegments:hg(g),finalAnswerMessage:null,writtenFiles:void 0}),d=c;continue}}if("user"!==g.role&&!h){i.push({kind:"single",idx:d}),d+=1;continue}let j=d,k=j+1;for(;k<a.length&&"user"!==a[k].role;)k+=1;let l=function(a,b,c){for(let e=c-1;e>b;e--){var d;if("assistant"===(d=a[e]).role&&hd(d).answerBlocks.some(a=>"image"===a.type||"text"===a.type&&a.text.trim().length>0))return e}for(let d=c-1;d>b;d--)if(a[d]?.role==="assistant")return d;return -1}(a,j,k);if(-1===l){let c=Array.from({length:k-j-1},(a,b)=>j+1+b).filter(b=>hq(a[b])),f=hl(a,b,c,e);i.push({kind:"turn",userIdx:j,endIdx:k,startsCompactionTurn:h,finalAssistantIdx:l,visibleProcessIndices:c,processBlocks:f,processSegments:hg(f),finalAnswerMessage:null,writtenFiles:void 0}),d=k;continue}let m=[];for(let a=j+1;a<l;a++)m.push(a);let n=m.filter(b=>hq(a[b])),o=a[l],p=hd(o),q=p.processBlocks.length>0?hr(o,p.processBlocks,{omitUsage:!0}):null,r=p.answerBlocks.length>0?hr(o,p.answerBlocks):null,s=hl(a,b,n,e);if(q&&(s=s.concat(hk(o,{messageIndex:l,entryId:b[l],toolResults:e}).processBlocks)),r){let b=[];for(let c=j+1;c<=l;c++){let d=a[c];if(d?.role==="assistant")for(let a of d.content??[])b.push(a)}f=function(a,b,c){let d=new Set,e=[];for(let f of a){if("toolCall"!==f.type||!function(a){let b,c;return"write"===(b=a.toLowerCase())||b.startsWith("write_")||b.endsWith(".write")||b.endsWith("_write")||"edit"===(c=a.toLowerCase())||c.startsWith("edit_")||c.endsWith(".edit")||c.endsWith("_edit")||c.includes("str_replace")||c.includes("replace_editor")}(f.toolName))continue;let a=b?.get(f.toolCallId);if(!a||a.isError)continue;let g=function(a){if(!a)return null;let b=a.file_path??a.path;return"string"==typeof b&&b.length>0?b:null}(f.input);if(!g)continue;let h=function(a,b){let c;if(!a)return null;let d=/^[a-zA-Z]:[\\/]/.test(a)||a.startsWith("\\\\")||void 0!==b&&(/^[a-zA-Z]:[\\/]/.test(b)||b.startsWith("\\\\")),e=a=>d?a.replace(/\\/g,"/"):a,f=e(a),g=b?e(b).replace(/\/+$/,""):void 0,h=/^[a-zA-Z]:\//.test(f),i=f.startsWith("//");if(h||i)c=f;else if(f.startsWith("/")){let a=g?.match(/^([a-zA-Z]:)(?:\/|$)/)?.[1]??g?.match(/^(\/\/[^/]+\/[^/]+)(?:\/|$)/)?.[1];c=a?`${a}${f}`:f}else{if(!g)return null;c=`${g}/${f}`}return ho(c)}(g,c);h&&(d.has(h)||(d.add(h),e.push({filePath:h})))}return e}(b,e,c)}i.push({kind:"turn",userIdx:j,endIdx:k,startsCompactionTurn:h,finalAssistantIdx:l,visibleProcessIndices:n,processBlocks:s,processSegments:hg(s),finalAnswerMessage:r,writtenFiles:f}),d=k}return{toolResultsMap:e,lastUserIdx:f,visibleRefIndexByMessage:g,items:i}})(N,P,bT,O),[N,P,bT,O]),bV=ah?W[`${ah.provider}:${ah.modelId}`]??null:null,bW=ah?X[`${ah.provider}:${ah.modelId}`]??null:null,bX=(0,M.useCallback)(()=>{$()},[$]),bY=(0,M.useCallback)(a=>{a6(a)},[a6]),bZ=a?.relation?.kind==="subagent"?(0,L.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",gap:8,padding:"14px 16px",borderTop:"1px solid var(--border)",color:"var(--text-dim)",fontSize:12},children:[(0,L.jsxs)("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[(0,L.jsx)("rect",{x:"3",y:"11",width:"18",height:"10",rx:"2"}),(0,L.jsx)("circle",{cx:"12",cy:"5",r:"2"}),(0,L.jsx)("path",{d:"M12 7v4"})]}),C("subagent.readOnlyNotice")]}):(0,L.jsx)(sU,{ref:h,onSend:aI,onBash:aJ,tasksBoardEnabled:r,onAbort:aK,onSteer:R?aP:void 0,onFollowUp:R?aQ:void 0,onPromptWithStreamingBehavior:R?aR:void 0,isStreaming:R,model:ah,modelNames:U,modelList:V,modelScopeWarnings:Y,modelsError:Z,onRetryModels:bX,onModelChange:aN,compactResult:ag,toolPreset:_,onToolPresetChange:a||ax?a0:void 0,collaborationMode:a4,toolApprovalMode:a5,onCollaborationModeChange:bY,onToolApprovalModeChange:a7,goalState:ba,onGoalStart:bc,onGoalPause:bd,onGoalResume:be,onGoalStop:bf,thinkingLevel:aa,onThinkingLevelChange:a||ax?a1:void 0,availableThinkingLevels:bV,thinkingLevelMap:bW,retryInfo:ab,queuedMessages:am,inputHistory:bQ,onRecallQueue:aT,onMoveQueue:aX,onRecallOne:aY,onRequeueAt:aZ,onRemoveQueueItem:a$,slashCommands:ak,slashCommandsLoading:al,onLoadSlashCommands:a2,onBuiltinCommand:a_,onAudioUnlock:A,draftKey:a?.id??(b?`new:${b}`:void 0),cwd:a?.cwd??b,topCenterControl:bz?(0,L.jsx)("button",{type:"button",className:"chat-input-top-center",onClick:bC,title:C("desktop.scrollToBottom"),"aria-label":C("desktop.scrollToBottom"),children:(0,L.jsx)(qo,{size:16,weight:"bold","aria-hidden":"true"})}):void 0}),b$=at.filter(a=>"belowEditor"!==a.placement),b_=at.filter(a=>"belowEditor"===a.placement),b0=ae?C("desktop.compacting"):function(a,b){if(a?.kind==="running_tools"){let c=a.tools.map(a=>a.name);return 0===c.length?b("desktop.runningTool"):b("desktop.runningTools",{tools:c.length<=3?c.join(", "):`${c.slice(0,2).join(", ")} (+${c.length-2})`})}return a?.kind==="waiting_model"?b("desktop.waitingForModel"):a?.kind==="running_command"?b("desktop.runningCommand"):null}(aw,C);return J?(0,L.jsx)("div",{className:"flex h-full items-center justify-center text-text-muted",children:C("desktop.loadingSession")}):K?(0,L.jsx)("div",{className:"flex h-full items-center justify-center text-red-400",children:K}):(0,L.jsxs)("div",{className:"relative flex h-full min-w-0 flex-col overflow-hidden",onDragEnter:bL,onDragOver:bM,onDragLeave:bN,onDrop:bO,children:[bK&&(0,L.jsxs)("div",{className:"pointer-events-none absolute inset-0 z-50 flex animate-[drop-zone-in_0.15s_ease_both] items-center justify-center bg-[rgba(37,99,235,0.06)] backdrop-blur-[1px]",children:[(0,L.jsx)("div",{className:"pointer-events-none absolute inset-0 flex items-center justify-center",children:[0,.8,1.6].map(a=>(0,L.jsx)("div",{className:"absolute h-[720px] w-[720px] rounded-full border-[1.5px] border-solid border-[rgba(37,99,235,0.5)] animate-[drop-ripple_2.4s_ease-out_infinite_backwards]",style:{transformOrigin:"center",animationDelay:`${a}s`}},a))}),(0,L.jsxs)("svg",{width:"280",height:"280",viewBox:"0 0 140 140",fill:"none",xmlns:"http://www.w3.org/2000/svg",className:"drop-shadow-[0_6px_18px_rgba(37,99,235,0.18)]",children:[(0,L.jsx)("rect",{x:"28",y:"44",width:"84",height:"60",rx:"8",fill:"rgba(37,99,235,0.08)",stroke:"rgba(37,99,235,0.50)",strokeWidth:"1.8"}),(0,L.jsx)("path",{d:"M36 100 L54 72 L68 88 L80 74 L104 100Z",fill:"rgba(37,99,235,0.16)",stroke:"rgba(37,99,235,0.40)",strokeWidth:"1.4",strokeLinejoin:"round"}),(0,L.jsx)("circle",{cx:"96",cy:"58",r:"8",fill:"rgba(37,99,235,0.22)",stroke:"rgba(37,99,235,0.55)",strokeWidth:"1.6"}),(0,L.jsxs)("g",{stroke:"rgba(37,99,235,0.45)",strokeWidth:"1.4",strokeLinecap:"round",children:[(0,L.jsx)("line",{x1:"96",y1:"46",x2:"96",y2:"43"}),(0,L.jsx)("line",{x1:"96",y1:"70",x2:"96",y2:"73"}),(0,L.jsx)("line",{x1:"84",y1:"58",x2:"81",y2:"58"}),(0,L.jsx)("line",{x1:"108",y1:"58",x2:"111",y2:"58"}),(0,L.jsx)("line",{x1:"87.5",y1:"49.5",x2:"85.4",y2:"47.4"}),(0,L.jsx)("line",{x1:"104.5",y1:"66.5",x2:"106.6",y2:"68.6"}),(0,L.jsx)("line",{x1:"104.5",y1:"49.5",x2:"106.6",y2:"47.4"}),(0,L.jsx)("line",{x1:"87.5",y1:"66.5",x2:"85.4",y2:"68.6"})]})]})]}),aq&&(0,L.jsx)(tR,{request:aq,onRespond:au}),ar&&(0,L.jsx)(tS,{request:ar,onInput:av}),!ax&&an.length>0&&!bk&&(0,L.jsx)(sX,{items:an,sessionId:a?.id,onResolve:aU,onExport:aV,onStageImport:aW,onDismiss:()=>bl(!0),mode:ao?"import":"recovery"}),a8.length>0&&(0,L.jsx)(q9,{request:a8[0]??null,queuedCount:Math.max(0,a8.length-1),busy:!1,onResolve:(a,b,c)=>{let d=a8[0];d&&a9(d.id,a,b,c)}}),bS?(0,L.jsx)("div",{className:"flex flex-1 flex-col items-center justify-center overflow-y-auto",children:(0,L.jsxs)("div",{className:"w-full max-w-[820px]",children:[(0,L.jsx)("div",{style:{display:"flex",justifyContent:"center",marginBottom:28},children:(0,L.jsxs)("svg",{fill:"currentColor",fillRule:"evenodd",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",style:{width:64,height:64,color:"var(--accent)",opacity:.85},"aria-label":"Pi",children:[(0,L.jsx)("title",{children:"Pi"}),(0,L.jsx)("path",{clipRule:"evenodd",d:"M1 1h16.5v11H12v5.5H6.5V23H1V1zm5.5 5.5V12H12V6.5H6.5z"}),(0,L.jsx)("path",{d:"M17.5 12H23v11h-5.5V12z"})]})}),B&&(0,L.jsxs)("div",{style:{display:"flex",justifyContent:"center",alignItems:"center",gap:10,marginBottom:18,marginTop:-14},children:[(0,L.jsxs)("span",{style:{fontSize:11,color:"var(--text-muted)",fontFamily:"var(--font-mono)"},children:["web ",(0,L.jsxs)("span",{style:{color:"var(--text)"},children:["v","0.18.3"]})]}),(0,L.jsxs)("span",{style:{fontSize:11,color:"var(--text-muted)",fontFamily:"var(--font-mono)"},children:["pi ",(0,L.jsxs)("span",{style:{color:"var(--text)"},children:["v","0.85.1"]})]})]}),(0,L.jsx)("div",{style:{padding:"0 34px 6px 7px",paddingRight:B?16:34},children:(0,L.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:12},children:[(0,L.jsx)("div",{ref:o,style:{display:"flex",alignItems:"center",minWidth:0,flex:1,minHeight:48}}),(0,L.jsxs)("div",{style:{display:B?"none":"flex",flexDirection:"column",alignItems:"flex-end",gap:2,flexShrink:0},children:[(0,L.jsxs)("span",{style:{fontSize:11,color:"var(--text-muted)",fontFamily:"var(--font-mono)"},children:["web ",(0,L.jsxs)("span",{style:{color:"var(--text)"},children:["v","0.18.3"]})]}),(0,L.jsxs)("span",{style:{fontSize:11,color:"var(--text-muted)",fontFamily:"var(--font-mono)"},children:["pi ",(0,L.jsxs)("span",{style:{color:"var(--text)"},children:["v","0.85.1"]})]})]})]})}),(0,L.jsx)("div",{style:{padding:"0 16px",paddingRight:B?16:34},children:(0,L.jsx)(tQ,{notices:ap,align:"right"})}),"goal"===a4&&(0,L.jsx)(q5,{goalState:ba,onPause:bd,onResume:be,onStop:bf,onEdit:bg}),bZ,(0,L.jsx)("div",{style:{padding:"0 16px 6px",paddingRight:B?16:34,marginTop:-15},children:(0,L.jsx)(tb,{onViewFullHistory:p,cwd:bT,systemPrompt:q,sessionStats:ai,contextUsage:ac,hasSession:!!a,showChat:!0,showSoundLabel:!0,soundEnabled:x,onSoundToggle:y,onCompact:a?aO:void 0,onAbortCompaction:aS,isCompacting:ae,compactError:af,lastTurnUsage:bm})})]})}):(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)("div",{className:"relative flex flex-1 overflow-hidden z-0",children:[(0,L.jsx)("div",{style:{position:"absolute",top:12,left:0,right:18*!B,zIndex:40,padding:"0 16px",pointerEvents:"none"},children:(0,L.jsx)("div",{style:{maxWidth:820,margin:"0 auto"},children:(0,L.jsx)(tQ,{notices:ap,floating:!0,align:"right"})})}),(0,L.jsxs)("div",{className:"relative flex-1 min-h-0 min-w-0",children:[(0,L.jsx)("div",{ref:aD,className:"h-full min-w-0 overflow-x-hidden overflow-y-auto pt-4 [scrollbar-width:none] [&::-webkit-scrollbar]:hidden",children:(0,L.jsx)("div",{style:{minWidth:0,padding:"0 16px"},children:(0,L.jsxs)("div",{style:{width:"100%",minWidth:0,maxWidth:820,margin:"0 auto"},children:[(0,L.jsxs)("div",{ref:bG,children:[(0,L.jsx)(tO,{statuses:as}),(0,L.jsx)(tP,{widgets:b$})]}),(()=>{let{toolResultsMap:b,lastUserIdx:c,visibleRefIndexByMessage:d,items:e}=bU,f=bF.current,g=(e,g={})=>{let h=g.messageOverride??N[e];if(!h||"toolResult"===h.role)return null;let i="user"===h.role||"assistant"===h.role,j=d.get(e),k=g.keyPrefix??"message",l=!1;if("assistant"===h.role){l=!0;for(let a=e+1;a<N.length;a++){let b=N[a].role;if("user"===b)break;if("assistant"===b){l=!1;break}}l&&Q.isStreaming&&e===N.length-1&&(l=!1)}void 0!==g.showTimestamp&&(l=g.showTimestamp);let m=(0,L.jsx)(qE,{message:h,toolResults:b,modelNames:U,cwd:bT,onOpenFile:n,entryId:P[e],onFork:R||ax?void 0:aL,forking:ad===P[e],onNavigate:R?void 0:aM,onEditContent:G,onQuoteReply:H,onOpenSession:s,onCreateTask:I,showTimestamp:l,prevTimestamp:e>0?N[e-1].timestamp:void 0,sessionId:a?.id??aB.current??void 0,writtenFiles:g.writtenFiles},`${k}-view-${e}`);return i&&!1!==g.attachRef&&void 0!==j?(0,L.jsx)("div",{ref:((a,b)=>{let d=f.get(b);if(!d){let a={isLastUser:!1};d={state:a,callback:c=>{bR.current[b]=c,a.isLastUser&&(aE.current=c,c&&aF.current&&(aF.current=!1,aG.current=!0,aH()))}},f.set(b,d)}return d.state.isLastUser=a===c,d.callback})(e,j),children:m},`${k}-${e}`):m},h=[],i=[],j=[],k=(a,b,c)=>{null!==a&&(h.push(a),i.push(b),j.push(c))},l=(a,b)=>P[a]||`${b}-${a}`,m=a=>`live-answer-u${a}`,o=a=>`answer-${l(a,"user")}`,p=a=>`subagent-${a}`,q=a=>hf(a.result?.details)?a.result.details.sessionId:"",r=(a,b)=>`live-process-u${a}-seg${b}`,v=(a,b,c)=>`process-${l(a,"user")}-${c||`seg${b}`}`;for(let f of e){if("single"===f.kind){if(N[f.idx]?.role==="toolResult")continue;k(g(f.idx),d.get(f.idx),l(f.idx,"single"));continue}let{userIdx:e,endIdx:h,startsCompactionTurn:i,finalAssistantIdx:j}=f;if((R||Q.isStreaming)&&h===N.length&&(e===c||i)){e>=0&&k(g(e),d.get(e),l(e,"user"));let c=Q.streamingMessage?.role==="assistant",f=[],i=!c&&j>=0?j:h;for(let a=e+1;a<i;a++)hq(N[a])&&f.push(a);let o=hl(N,P,f,b),v=null;if(!c&&j>=0){let a=N[j],c=hd(a,{isStreaming:!0}),d=hk(a,{messageIndex:j,entryId:P[j],toolResults:b,isStreaming:!0});o=o.concat(d.processBlocks),c.answerBlocks.length>0&&(v=hr(a,c.answerBlocks,{omitUsage:!0}))}if(c){let a=Q.streamingMessage,c=hd(a,{isStreaming:!0}),d=hk(a,{messageIndex:N.length,toolResults:b,isStreaming:!0});o=o.concat(d.processBlocks),c.answerBlocks.length>0&&(v=hr(a,c.answerBlocks,{omitUsage:!0}))}if(o.length>0){let b=f.map(a=>d.get(a)).find(a=>"number"==typeof a);hg(o).forEach((c,d)=>{"subagent"===c.kind&&c.subagent?k((0,L.jsx)(r2,{run:c.subagent,onOpenSubagent:t,sessionRun:u?.get(q(c.subagent))},p(c.subagent.toolCallId)),b,p(c.subagent.toolCallId)):k((0,L.jsx)("div",{ref:void 0===b?void 0:a=>{bR.current[b]=a},children:(0,L.jsx)(r_,{blocks:c.blocks,isStreaming:R||Q.isStreaming,cwd:bT,onOpenFile:n,sessionId:a?.id??aB.current??void 0,tokenRate:aj})},r(e,d)),b,r(e,d))})}v&&k((0,L.jsx)(qE,{message:v,isStreaming:!0,modelNames:U,cwd:bT,onOpenFile:n,onQuoteReply:H,onOpenSession:s},`live-answer-${e}`),j>=0?d.get(j):void 0,m(e));continue}if(-1===j&&0===f.processBlocks.length){if(e>=0)for(let a=e;a<h;a++)k(g(a),d.get(a),l(a,"raw"));continue}e>=0&&k(g(e),d.get(e),l(e,"user"));let{finalAnswerMessage:w,writtenFiles:x,visibleProcessIndices:y}=f;if(f.processBlocks.length>0){let b=y.map(a=>d.get(a)).find(a=>"number"==typeof a)??(w?void 0:d.get(j));f.processSegments.forEach((c,d)=>{"subagent"===c.kind&&c.subagent?k((0,L.jsx)(r2,{run:c.subagent,onOpenSubagent:t,sessionRun:u?.get(q(c.subagent))},p(c.subagent.toolCallId)),b,p(c.subagent.toolCallId)):k((0,L.jsx)("div",{ref:void 0===b?void 0:a=>{bR.current[b]=a},children:(0,L.jsx)(r_,{blocks:c.blocks,isStreaming:!1,defaultExpanded:!1,onAutoExpanded:void 0,cwd:bT,onOpenFile:n,sessionId:a?.id??aB.current??void 0})},`process-group-${e}-${d}`),b,v(e,d,c.blocks[0]?.id??""))})}if(w&&k(g(j,{messageOverride:w,writtenFiles:x}),d.get(j),o(e)),j>=0)for(let a=j+1;a<h;a++)k(g(a),d.get(a),l(a,"tail"))}let w=[],x=i.map((a,b)=>({startRef:a,itemIdx:b})).filter(a=>void 0!==a.startRef);return x.forEach((a,b)=>{let c=x[b+1]?.startRef??bP.length;for(let b=a.startRef;b<c;b++)w[b]=a.itemIdx}),bE.current=w,(0,L.jsx)(tr,{scrollElementRef:aD,items:h,itemKeys:j,virtualizerRef:bD,headerHeight:bH})})(),b0&&(ae||R&&!Q.streamingMessage)&&(0,L.jsx)("div",{className:"py-2 text-[13px] text-text-muted",children:(0,L.jsxs)("span",{className:"animate-[pulse_1.5s_infinite]",children:[b0,aw?.kind==="waiting_model"&&(0,L.jsx)("span",{style:{display:"inline-block",width:12,height:12,marginLeft:6,verticalAlign:"-2px",border:"1.5px solid var(--text-muted)",borderTopColor:"transparent",borderRadius:"50%",animation:"spin 0.6s linear infinite"}})]})}),T&&(0,L.jsx)(qE,{message:{role:"bashExecution",command:T.command,output:"",excludeFromContext:T.excludeFromContext},sessionId:a?.id??aB.current??void 0}),S&&!T&&(0,L.jsx)("div",{className:"py-2 text-[13px] text-text-muted",children:(0,L.jsx)("span",{className:"animate-[pulse_1.5s_infinite]",children:C("desktop.runningShellCommand")})}),(0,L.jsx)("div",{style:{height:96}}),(0,L.jsx)("div",{ref:aC}),(0,L.jsx)(q$,{open:bn,planText:bp,busy:R,onExecute:br,onFeedback:bt,onExit:bu,onClose:()=>bo(!1)})]})})}),bv&&(0,L.jsx)("div",{"aria-hidden":"true",className:"pointer-events-none absolute inset-x-0 top-0 z-10 h-8 bg-gradient-to-b from-[var(--bg)] to-transparent"}),bx&&(0,L.jsx)("div",{"aria-hidden":"true",className:"pointer-events-none absolute inset-x-0 bottom-0 z-10 h-8 bg-gradient-to-t from-[var(--bg)] to-transparent"})]}),B?null:(0,L.jsx)(tu,{messages:N,streamingMessage:Q.streamingMessage,scrollContainer:aD,messageRefs:bR,virtualizer:bJ})]}),(0,L.jsxs)("div",{className:"relative z-10",children:[(0,L.jsx)("div",{style:{padding:"0 16px",paddingRight:B?16:34},children:(0,L.jsx)("div",{style:{maxWidth:820,margin:"0 auto"},children:(0,L.jsx)(tP,{widgets:b_})})}),bZ,(0,L.jsx)("div",{className:`session-info-bar-wrap${B?" is-mobile":""}`,children:(0,L.jsx)("div",{className:"session-info-bar-inner",children:(0,L.jsx)(tb,{onViewFullHistory:p,cwd:bT,systemPrompt:q,sessionStats:ai,contextUsage:ac,hasSession:!!a,showChat:!0,soundEnabled:x,onSoundToggle:y,onCompact:a?aO:void 0,onAbortCompaction:aS,isCompacting:ae,compactError:af,branchTree:ay,branchActiveLeafId:az,onBranchLeafChange:aA,lastTurnUsage:bm})})})]})]})]})}function tO({statuses:a}){return 0===a.length?null:(0,L.jsx)("div",{style:{display:"flex",flexWrap:"wrap",gap:6,marginBottom:10},children:a.map(a=>(0,L.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:6,maxWidth:"100%",padding:"4px 8px",border:"1px solid color-mix(in srgb, var(--accent) 24%, var(--border))",borderRadius:6,background:"color-mix(in srgb, var(--accent) 7%, var(--bg))",color:"var(--text-muted)",fontSize:12},children:[(0,L.jsx)("span",{style:{color:"var(--accent)",fontFamily:"var(--font-mono)",fontSize:11},children:a.key}),(0,L.jsx)("span",{style:{minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a.text})]},a.key))})}function tP({widgets:a}){return 0===a.length?null:(0,L.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:8,marginBottom:10},children:a.map(a=>(0,L.jsxs)("div",{style:{border:"1px solid var(--border)",borderRadius:7,background:"var(--bg-panel)",overflow:"hidden"},children:[(0,L.jsx)("div",{style:{padding:"5px 9px",borderBottom:"1px solid var(--border)",color:"var(--text-dim)",fontSize:11,fontFamily:"var(--font-mono)"},children:a.key}),(0,L.jsx)("pre",{style:{margin:0,padding:"8px 9px",color:"var(--text-muted)",fontSize:12,lineHeight:1.5,whiteSpace:"pre-wrap",wordBreak:"break-word",fontFamily:"var(--font-mono)"},children:a.lines.join("\n")})]},a.key))})}function tQ({notices:a,floating:b=!1,align:c="left"}){return 0===a.length?null:(0,L.jsx)("div",{style:{display:"flex",flexDirection:"column",alignItems:"right"===c?"flex-end":"stretch",marginBottom:10*!b},children:a.map((c,d)=>{let e="error"===c.type?"var(--status-error)":"warning"===c.type?"var(--status-warning)":"success"===c.type?"#10b981":"var(--accent)";return(0,L.jsxs)("div",{className:"notice-shelf-item",style:{display:"flex",alignItems:"center",gap:10,minHeight:44,maxHeight:180,marginBottom:6*(d!==a.length-1),overflowY:"auto",overflowX:"hidden",borderRadius:14,border:"1px solid color-mix(in srgb, var(--border) 70%, transparent)",background:"var(--bg)",color:"var(--text-muted)",width:"fit-content",maxWidth:"min(100%, 620px)",boxShadow:b?"0 1px 2px rgba(15,23,42,0.05), 0 10px 28px -14px rgba(15,23,42,0.24)":"0 1px 2px rgba(15,23,42,0.04), 0 8px 24px -12px rgba(15,23,42,0.10)",fontSize:13,lineHeight:1.45,transformOrigin:"top center",animation:c.exiting?"notice-shelf-out 0.18s ease-in forwards":"notice-shelf-in 0.18s ease-out both",padding:"0 12px"},children:[(0,L.jsx)("span",{style:{width:7,height:7,borderRadius:"50%",background:e,flexShrink:0}}),(0,L.jsx)("span",{style:{padding:"10px 0",minWidth:0,maxWidth:"100%",overflowWrap:"anywhere",whiteSpace:"pre-wrap"},children:c.message})]},c.id)})})}function tR({request:a,onRespond:b}){let{t:c}=(0,bb.s)(),[d,e]=(0,M.useState)("editor"===a.method?a.prefill??"":""),f=(0,M.useCallback)(a=>a?.focus(),[]),g=()=>{"confirm"===a.method?b(a,{confirmed:!0}):b(a,{value:d})};return(0,L.jsx)("div",{style:{position:"absolute",inset:0,zIndex:90,display:"flex",alignItems:"center",justifyContent:"center",padding:20,background:"rgba(0,0,0,0.18)"},children:(0,L.jsxs)("div",{role:"dialog","aria-modal":"true",style:{width:"min(560px, 100%)",border:"1px solid var(--border)",borderRadius:8,background:"var(--bg)",boxShadow:"0 20px 60px rgba(0,0,0,0.28)",overflow:"hidden"},children:[(0,L.jsxs)("div",{style:{padding:"12px 14px",borderBottom:"1px solid var(--border)"},children:[(0,L.jsx)("div",{style:{color:"var(--text)",fontSize:14,fontWeight:650},children:a.title}),(0,L.jsx)("div",{style:{marginTop:3,color:"var(--text-dim)",fontSize:11,fontFamily:"var(--font-mono)"},children:c("desktop.extensionRequest")})]}),(0,L.jsxs)("div",{style:{padding:14},children:["confirm"===a.method&&(0,L.jsx)(p4,{children:a.message}),"select"===a.method&&(0,L.jsx)("div",{onKeyDown:a=>{if(!["ArrowDown","ArrowRight","ArrowUp","ArrowLeft","Home","End"].includes(a.key))return;let b=Array.from(a.currentTarget.querySelectorAll("[data-extension-option]")),c=b.indexOf(a.target);if(c<0)return;a.preventDefault();let d="Home"===a.key?0:"End"===a.key?b.length-1:(c+("ArrowDown"===a.key||"ArrowRight"===a.key?1:-1)+b.length)%b.length;b[d]?.focus()},style:{display:"grid",gap:8},children:a.options.map((c,d)=>(0,L.jsx)("div",{role:"button",tabIndex:0,"data-extension-option":!0,"aria-label":c,ref:0===d?f:void 0,onClick:()=>b(a,{value:c}),onKeyDown:d=>{("Enter"===d.key||" "===d.key)&&(d.preventDefault(),b(a,{value:c}))},style:{width:"100%",padding:"9px 10px",borderRadius:7,border:"1px solid var(--border)",background:"var(--bg-panel)",color:"var(--text)",cursor:"pointer",textAlign:"left",fontSize:13},children:(0,L.jsx)("div",{inert:!0,children:(0,L.jsx)(p4,{children:c})})},c))}),"input"===a.method&&(0,L.jsx)("input",{autoFocus:!0,className:"extension-input",value:d,placeholder:a.placeholder,onChange:a=>e(a.target.value),onKeyDown:c=>{"Enter"===c.key&&g(),"Escape"===c.key&&b(a,{cancelled:!0})},style:{width:"100%",padding:"9px 10px",borderRadius:7,border:"1px solid var(--border)",background:"var(--bg-panel)",color:"var(--text)",outline:"none",fontSize:13}}),"editor"===a.method&&(0,L.jsx)("textarea",{autoFocus:!0,value:d,onChange:a=>e(a.target.value),onKeyDown:c=>{"Escape"===c.key&&b(a,{cancelled:!0}),(c.metaKey||c.ctrlKey)&&"Enter"===c.key&&g()},style:{width:"100%",minHeight:220,padding:10,borderRadius:7,border:"1px solid var(--border)",background:"var(--bg-panel)",color:"var(--text)",outline:"none",resize:"vertical",fontSize:13,lineHeight:1.55,fontFamily:"var(--font-mono)"}})]}),(0,L.jsxs)("div",{style:{display:"flex",justifyContent:"flex-end",gap:8,padding:"10px 14px",borderTop:"1px solid var(--border)",background:"var(--bg-panel)"},children:[(0,L.jsx)("button",{onClick:()=>b(a,{cancelled:!0}),style:{padding:"6px 10px",borderRadius:6,border:"1px solid var(--border)",background:"var(--bg)",color:"var(--text-muted)",cursor:"pointer"},children:c("desktop.cancel")}),"confirm"===a.method?(0,L.jsx)("button",{onClick:g,style:{padding:"6px 10px",borderRadius:6,border:"1px solid var(--accent)",background:"var(--accent)",color:"var(--accent-fg)",cursor:"pointer"},children:c("desktop.confirm")}):"select"!==a.method?(0,L.jsx)("button",{onClick:g,style:{padding:"6px 10px",borderRadius:6,border:"1px solid var(--accent)",background:"var(--accent)",color:"var(--accent-fg)",cursor:"pointer"},children:c("desktop.submit")}):null]})]})})}function tS({request:a,onInput:b}){let{t:c}=(0,bb.s)(),d=(0,M.useRef)(null),e=function(a){let b=/^[┌├└╭╰][─┬┴┼]+[┐┤┘╮╯]$/,c=[];for(let d of a){let a=g7(d).trimEnd();if(b.test(a))continue;let e=d,f=ha(e);("│"===f||"┃"===f)&&" "===ha(e=g9(e,0))&&(e=g9(e,0));let g=function(a){let b=g8(a);for(let a=b.length-1;a>=0;a--)if(""!==b[a].char.trim())return a;return -1}(e),h=g>=0?g8(e)[g]?.char:void 0;("│"===h||"┃"===h)&&(e=g9(e,g)),c.push(function(a){let b=a;for(;;){let a=g8(b),c=a[a.length-1];if(!c||""!==c.char.trim())return b;b=b.slice(0,c.start)+b.slice(c.end)}}(e))}for(;c.length>0&&""===g7(c[0]).trim();)c.shift();for(;c.length>0&&""===g7(c[c.length-1]).trim();)c.pop();return c.length?c:a}(a.lines);return(0,L.jsx)("div",{style:{position:"absolute",inset:0,zIndex:95,display:"flex",alignItems:"center",justifyContent:"center",padding:20,background:"rgba(0,0,0,0.18)"},children:(0,L.jsxs)("div",{ref:d,tabIndex:0,role:"dialog","aria-modal":"true",onKeyDown:c=>{let d=function(a){if(a.ctrlKey&&!a.metaKey&&!a.altKey&&1===a.key.length){let b=a.key.toLowerCase();if(b>="a"&&b<="z")return String.fromCharCode(b.charCodeAt(0)-96)}switch(a.key){case"ArrowUp":return"\x1b[A";case"ArrowDown":return"\x1b[B";case"ArrowRight":return"\x1b[C";case"ArrowLeft":return"\x1b[D";case"Enter":return"\r";case"Escape":return"\x1b";case"Backspace":return"";case"Tab":return" ";case" ":return" ";default:if(!a.ctrlKey&&!a.metaKey&&!a.altKey&&1===a.key.length)return a.key;return null}}(c);d&&(c.preventDefault(),c.stopPropagation(),b(a,d))},style:{width:"min(920px, 100%)",maxHeight:"min(760px, calc(100vh - 40px))",border:"1px solid var(--border)",borderRadius:8,background:"var(--bg)",boxShadow:"0 20px 60px rgba(0,0,0,0.28)",overflow:"hidden",outline:"none"},children:[(0,L.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:12,padding:"10px 12px",borderBottom:"1px solid var(--border)"},children:[(0,L.jsx)("div",{style:{color:"var(--text)",fontSize:13,fontWeight:650},children:c("desktop.extensionPanel")}),(0,L.jsx)("button",{onClick:()=>b(a,"\x03"),style:{padding:"5px 9px",borderRadius:6,border:"1px solid var(--border)",background:"var(--bg-panel)",color:"var(--text-muted)",cursor:"pointer",fontSize:12},children:c("desktop.close")})]}),(0,L.jsx)("pre",{style:{margin:0,padding:14,maxHeight:"calc(min(760px, 100vh - 40px) - 48px)",overflow:"auto",background:"var(--bg-panel)",color:"var(--text)",fontFamily:"var(--font-mono)",fontSize:13,lineHeight:1.45,whiteSpace:"pre"},children:(e.length?e:[""]).map((a,b,c)=>{var d;return(0,L.jsxs)(M.Fragment,{children:[(d=`line-${b}`,(function(a){let b,c=[],d={},e=0;for(g4.lastIndex=0;null!==(b=g4.exec(a));)b.index>e&&c.push({text:a.slice(e,b.index),style:d}),d=function(a,b){let c={...a};for(let a=0;a<b.length;a++){let d=b[a];if(0===d)for(let a of Object.keys(c))delete c[a];else if(1===d)c.fontWeight=700;else if(2===d)c.opacity=.65;else if(3===d)c.fontStyle="italic";else if(4===d)c.textDecoration="underline";else if(22===d)delete c.fontWeight,delete c.opacity;else if(23===d)delete c.fontStyle;else if(24===d)delete c.textDecoration;else if(39===d)delete c.color;else if(49===d)delete c.backgroundColor;else if(d>=30&&d<=37)c.color=g5[d-30];else if(d>=90&&d<=97)c.color=g6[d-90];else if(d>=40&&d<=47)c.backgroundColor=g5[d-40];else if(d>=100&&d<=107)c.backgroundColor=g6[d-100];else if((38===d||48===d)&&2===b[a+1]){let[e,f,g]=[b[a+2],b[a+3],b[a+4]];[e,f,g].every(a=>"number"==typeof a&&Number.isFinite(a))&&(38===d?c.color=`rgb(${e}, ${f}, ${g})`:c.backgroundColor=`rgb(${e}, ${f}, ${g})`),a+=4}else if((38===d||48===d)&&5===b[a+1]){let e=function(a){if(a>=0&&a<8)return g5[a];if(a>=8&&a<16)return g6[a-8];if(a>=16&&a<=231){let b=a-16,c=Math.floor(b/36),d=Math.floor(b%36/6),e=a=>0===a?0:55+40*a;return`rgb(${e(c)}, ${e(d)}, ${e(b%6)})`}if(a>=232&&a<=255){let b=8+(a-232)*10;return`rgb(${b}, ${b}, ${b})`}}(b[a+2]);e&&(38===d?c.color=e:c.backgroundColor=e),a+=2}}return c}(d,b[1]?b[1].split(";").map(a=>Number(a||"0")):[0]),e=b.index+b[0].length;return e<a.length&&c.push({text:a.slice(e),style:d}),c})(a).map((a,b)=>Object.keys(a.style).length>0?(0,L.jsx)("span",{style:a.style,children:a.text},`${d}-${b}`):a.text)),b<c.length-1?"\n":null]},b)})})]})})}let tT=new Map([["bold",M.createElement(M.Fragment,null,M.createElement("path",{d:"M222.14,69.17,186.83,33.86A19.86,19.86,0,0,0,172.69,28H48A20,20,0,0,0,28,48V208a20,20,0,0,0,20,20H208a20,20,0,0,0,20-20V83.31A19.86,19.86,0,0,0,222.14,69.17ZM164,204H92V160h72Zm40,0H188V156a20,20,0,0,0-20-20H88a20,20,0,0,0-20,20v48H52V52H171l33,33ZM164,84a12,12,0,0,1-12,12H96a12,12,0,0,1,0-24h56A12,12,0,0,1,164,84Z"}))],["duotone",M.createElement(M.Fragment,null,M.createElement("path",{d:"M216,83.31V208a8,8,0,0,1-8,8H176V152a8,8,0,0,0-8-8H88a8,8,0,0,0-8,8v64H48a8,8,0,0,1-8-8V48a8,8,0,0,1,8-8H172.69a8,8,0,0,1,5.65,2.34l35.32,35.32A8,8,0,0,1,216,83.31Z",opacity:"0.2"}),M.createElement("path",{d:"M219.31,72,184,36.69A15.86,15.86,0,0,0,172.69,32H48A16,16,0,0,0,32,48V208a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V83.31A15.86,15.86,0,0,0,219.31,72ZM168,208H88V152h80Zm40,0H184V152a16,16,0,0,0-16-16H88a16,16,0,0,0-16,16v56H48V48H172.69L208,83.31ZM160,72a8,8,0,0,1-8,8H96a8,8,0,0,1,0-16h56A8,8,0,0,1,160,72Z"}))],["fill",M.createElement(M.Fragment,null,M.createElement("path",{d:"M219.31,72,184,36.69A15.86,15.86,0,0,0,172.69,32H48A16,16,0,0,0,32,48V208a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V83.31A15.86,15.86,0,0,0,219.31,72ZM208,208H184V152a16,16,0,0,0-16-16H88a16,16,0,0,0-16,16v56H48V48H172.69L208,83.31ZM160,72a8,8,0,0,1-8,8H96a8,8,0,0,1,0-16h56A8,8,0,0,1,160,72Z"}))],["light",M.createElement(M.Fragment,null,M.createElement("path",{d:"M217.9,73.42,182.58,38.1a13.9,13.9,0,0,0-9.89-4.1H48A14,14,0,0,0,34,48V208a14,14,0,0,0,14,14H208a14,14,0,0,0,14-14V83.31A13.9,13.9,0,0,0,217.9,73.42ZM170,210H86V152a2,2,0,0,1,2-2h80a2,2,0,0,1,2,2Zm40-2a2,2,0,0,1-2,2H182V152a14,14,0,0,0-14-14H88a14,14,0,0,0-14,14v58H48a2,2,0,0,1-2-2V48a2,2,0,0,1,2-2H172.69a2,2,0,0,1,1.41.58L209.42,81.9a2,2,0,0,1,.58,1.41ZM158,72a6,6,0,0,1-6,6H96a6,6,0,0,1,0-12h56A6,6,0,0,1,158,72Z"}))],["regular",M.createElement(M.Fragment,null,M.createElement("path",{d:"M219.31,72,184,36.69A15.86,15.86,0,0,0,172.69,32H48A16,16,0,0,0,32,48V208a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V83.31A15.86,15.86,0,0,0,219.31,72ZM168,208H88V152h80Zm40,0H184V152a16,16,0,0,0-16-16H88a16,16,0,0,0-16,16v56H48V48H172.69L208,83.31ZM160,72a8,8,0,0,1-8,8H96a8,8,0,0,1,0-16h56A8,8,0,0,1,160,72Z"}))],["thin",M.createElement(M.Fragment,null,M.createElement("path",{d:"M216.49,74.83,181.17,39.51A11.93,11.93,0,0,0,172.69,36H48A12,12,0,0,0,36,48V208a12,12,0,0,0,12,12H208a12,12,0,0,0,12-12V83.31A11.93,11.93,0,0,0,216.49,74.83ZM172,212H84V152a4,4,0,0,1,4-4h80a4,4,0,0,1,4,4Zm40-4a4,4,0,0,1-4,4H180V152a12,12,0,0,0-12-12H88a12,12,0,0,0-12,12v60H48a4,4,0,0,1-4-4V48a4,4,0,0,1,4-4H172.69a4,4,0,0,1,2.82,1.17l35.32,35.32A4,4,0,0,1,212,83.31ZM156,72a4,4,0,0,1-4,4H96a4,4,0,0,1,0-8h56A4,4,0,0,1,156,72Z"}))]]),tU=M.forwardRef((a,b)=>M.createElement(P,{ref:b,...a,weights:tT}));tU.displayName="FloppyDiskIcon";let tV={png:"image/png",jpg:"image/jpeg",jpeg:"image/jpeg",gif:"image/gif",webp:"image/webp",svg:"image/svg+xml",bmp:"image/bmp",ico:"image/x-icon",avif:"image/avif"},tW={mp3:"audio/mpeg",wav:"audio/wav",ogg:"audio/ogg",oga:"audio/ogg",opus:"audio/ogg",m4a:"audio/mp4",aac:"audio/aac",flac:"audio/flac",weba:"audio/webm"};function tX(a){return(a.replace(/\\/g,"/").split("/").pop()??"").toLowerCase().split(".").pop()??""}function tY(a,b,c,d={}){let e=fJ(a),f=new URLSearchParams({type:b});for(let[a,b]of(c&&f.set("sessionId",c),Object.entries(d)))void 0!==b&&f.set(a,String(b));return`/api/files/${e}?${f.toString()}`}function tZ({filePath:a,sourceSessionId:b}){let{t:c}=(0,bb.s)();return(0,L.jsx)("a",{href:tY(a,"download",b),download:fK(a),title:c("desktop.downloadFile"),style:{display:"flex",alignItems:"center",justifyContent:"center",height:20,padding:"0 5px",background:"var(--bg-panel)",border:"1px solid var(--border)",borderRadius:4,color:"var(--text-muted)",cursor:"pointer",flexShrink:0,textDecoration:"none"},children:(0,L.jsx)(aE,{size:11,"aria-hidden":"true"})})}let t$={fontFamily:"var(--font-mono)",fontSize:13,lineHeight:1.6,tabSize:2},t_={fontFamily:"var(--font-mono)",fontSize:13,lineHeight:1.6,padding:"12px 0 12px 16px",color:"var(--text-dim)",textAlign:"right",userSelect:"none"};async function t0(a,b){let c=await fetch(`/api/files/${fJ(a)}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({content:b})});if(!c.ok)throw Error((await c.json().catch(()=>({}))).error??`HTTP ${c.status}`);let d=await c.json();return"number"==typeof d.size?d.size:0}let t1={delete:"3px solid var(--git-status-deleted)",add:"3px solid var(--git-status-added)",edit:"3px solid var(--git-status-modified)"},t2="var(--git-status-deleted-bg)",t3="var(--git-status-added-bg)",t4="var(--git-status-added)";function t5(a){return a<1024?`${a} B`:a<1048576?`${(a/1024).toFixed(1)} KB`:`${(a/1048576).toFixed(1)} MB`}function t6({oldContent:a,newContent:b}){let{t:c}=(0,bb.s)(),d=function(a,b){let c=a.length,d=b.length,e=c+d,f=Array(2*e+1).fill(0),g=[];for(let h=0;h<=e;h++){g.push([...f]);for(let i=-h;i<=h;i+=2){let j,k=(j=i===-h||i!==h&&f[i-1+e]<f[i+1+e]?f[i+1+e]:f[i-1+e]+1)-i;for(;j<c&&k<d&&a[j]===b[k];)j++,k++;if(f[i+e]=j,j>=c&&k>=d){let f=[],i=c,j=d;for(let c=h;c>0;c--){let d,h=g[c-1],k=i-j;d=k===-c||k!==c&&h[k-1+e]<h[k+1+e]?k+1:k-1;let l=h[d+e],m=l-d;for(;i>l&&j>m;)i--,j--,f.unshift({type:"unchanged",text:a[i]});c>0&&(i>l?(i--,f.unshift({type:"removed",text:a[i]})):(j--,f.unshift({type:"added",text:b[j]})))}for(;i>0&&j>0;)i--,j--,f.unshift({type:"unchanged",text:a[i]});return f}}}return[...a.map(a=>({type:"removed",text:a})),...b.map(a=>({type:"added",text:a}))]}(a.split("\n"),b.split("\n"));if(!d.some(a=>"unchanged"!==a.type))return(0,L.jsx)("div",{style:{padding:"12px 16px",fontSize:12,color:"var(--text-dim)",fontFamily:"var(--font-mono)"},children:c("desktop.noChanges")});let e=new Set(d.flatMap((a,b)=>"unchanged"!==a.type?[b]:[])),f=new Set;for(let a of e)for(let b=Math.max(0,a-3);b<=Math.min(d.length-1,a+3);b++)f.add(b);let g=[],h=0;for(;h<d.length;)if(f.has(h)){let a=[];for(;h<d.length&&f.has(h);)a.push(d[h]),h++;g.push({hidden:!1,lines:a})}else{let a=0;for(;h<d.length&&!f.has(h);)a++,h++;g.push({hidden:!0,count:a})}let i=[],j=1;for(let a of d)"removed"===a.type?i.push(0):i.push(j++);let k=0;return(0,L.jsx)("div",{style:{fontFamily:"var(--font-mono)",fontSize:13,lineHeight:1.6,minWidth:"max-content"},children:g.map((a,b)=>{if(a.hidden){let d=(0,L.jsx)("div",{style:{padding:"2px 16px",color:"var(--text-dim)",background:"var(--bg-panel)",fontSize:11,borderTop:"1px solid var(--border)",borderBottom:"1px solid var(--border)"},children:c("desktop.unchangedLines",{count:a.count})},b);return k+=a.count,d}let d=[],e=[],f=[],g=()=>{if(e.length||f.length){let a=e.length&&f.length?"edit":e.length?"delete":"add";for(let b of e)d.push({key:b.key,kind:"removed",text:b.text,lineNo:null,block:a});for(let b of f)d.push({key:b.key,kind:"added",text:b.text,lineNo:b.lineNo,block:a});e=[],f=[]}};a.lines.forEach((a,c)=>{"unchanged"===a.type?(g(),d.push({key:`${b}:${c}`,kind:"context",text:a.text,lineNo:i[k+c],block:null})):"removed"===a.type?e.push({key:`${b}:${c}`,text:a.text}):f.push({key:`${b}:${c}`,text:a.text,lineNo:i[k+c]})}),g();let h=d.map(a=>{let b="removed"===a.kind?t2:"added"===a.kind?t3:"transparent",c=a.block?t1[a.block]:"3px solid transparent",d="added"===a.kind?t4:"var(--text-dim)";return(0,L.jsxs)("div",{style:{display:"flex",background:b,borderLeft:c},children:[(0,L.jsx)("span",{style:{minWidth:44,padding:"0 8px 0 16px",textAlign:"right",color:d,userSelect:"none",fontSize:11,lineHeight:1.6,flexShrink:0},children:a.lineNo??""}),(0,L.jsx)("span",{style:{flex:1,minWidth:0,padding:"0 8px 0 0",whiteSpace:"pre",color:"var(--text)"},children:a.text||"\xa0"})]},a.key)});return k+=a.lines.length,(0,L.jsx)("div",{children:h},b)})})}function t7({patch:a}){let b=qh(a);if(!b)return null;let c=[],d=[],e=[],f=()=>{if(d.length||e.length){let a=d.length&&e.length?"edit":d.length?"delete":"add";for(let b of d)c.push({key:b.key,kind:"removed",text:b.text,lineNo:null,block:a});for(let b of e)c.push({key:b.key,kind:"added",text:b.text,lineNo:b.lineNo,block:a});d=[],e=[]}};return b.forEach((a,b)=>{a.rows.forEach((a,g)=>{if("hunk"===a.type){f(),c.push({key:`${b}:${g}:h`,kind:"hunk",text:a.text,lineNo:null,block:null});return}let{left:h,right:i}=a;if("context"===h.type&&"context"===i.type){f(),c.push({key:`${b}:${g}:c`,kind:"context",text:h.text,lineNo:i.lineNo,block:null});return}"removed"===h.type&&d.push({key:`${b}:${g}:l`,text:h.text}),"added"===i.type&&e.push({key:`${b}:${g}:r`,text:i.text,lineNo:i.lineNo})})}),f(),(0,L.jsx)("div",{style:{fontFamily:"var(--font-mono)",fontSize:12,lineHeight:1.55,minWidth:"max-content"},children:c.map(a=>{if("hunk"===a.kind)return(0,L.jsxs)("div",{children:[(0,L.jsx)("div",{style:{height:"1.55em"}}),(0,L.jsx)("div",{style:{padding:"3px 12px",color:"var(--accent-blue)",background:"var(--bg-secondary)"},children:a.text}),(0,L.jsx)("div",{style:{height:"1.55em"}})]},a.key);let b="removed"===a.kind?t2:"added"===a.kind?t3:"transparent",c=a.block?t1[a.block]:"3px solid transparent",d="added"===a.kind?t4:"var(--text-dim)";return(0,L.jsxs)("div",{style:{display:"flex",background:b,borderLeft:c},children:[(0,L.jsx)("span",{style:{width:44,flexShrink:0,padding:"0 8px 0 16px",textAlign:"right",color:d,userSelect:"none",fontSize:11},children:a.lineNo??""}),(0,L.jsx)("span",{style:{flex:1,minWidth:0,padding:"0 8px 0 0",whiteSpace:"pre",color:"var(--text)"},children:a.text||"\xa0"})]},a.key)})})}function t8({filePath:a,cwd:b,sourceSessionId:c}){let{t:d}=(0,bb.s)(),[e,f]=(0,M.useState)(0),[g,h]=(0,M.useState)(null),[i,j]=(0,M.useState)(null),[k,l]=(0,M.useState)(null);(0,M.useRef)(null);let m=fK(a).toLowerCase().split(".").pop()??"",n=tY(a,"read",c,e?{v:e}:void 0),o=null!=g?t5(g):null;return(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",height:"100%",overflow:"hidden"},children:[(0,L.jsxs)("div",{className:"file-viewer-status-bar",style:{display:"flex",alignItems:"center",gap:12,padding:"4px 16px",borderBottom:"1px solid var(--border)",fontSize:11,color:"var(--text-dim)",background:"var(--bg)",flexShrink:0,flexWrap:"wrap",rowGap:4},children:[(0,L.jsx)("span",{style:{fontFamily:"var(--font-mono)",minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",flex:"0 1 auto"},title:a,children:fL(a,b)}),(0,L.jsx)("span",{style:{marginLeft:"auto"},children:m||d("desktop.image")}),i&&(0,L.jsxs)("span",{children:[i.w," \xd7 ",i.h]}),o&&(0,L.jsx)("span",{children:o}),(0,L.jsx)(tZ,{filePath:a,sourceSessionId:c})]}),(0,L.jsx)("div",{style:{flex:1,overflow:"auto",background:"var(--bg-panel)",display:"flex",alignItems:"center",justifyContent:"center",padding:16,backgroundImage:"linear-gradient(45deg, var(--bg) 25%, transparent 25%), linear-gradient(-45deg, var(--bg) 25%, transparent 25%), linear-gradient(45deg, transparent 75%, var(--bg) 75%), linear-gradient(-45deg, transparent 75%, var(--bg) 75%)",backgroundSize:"16px 16px",backgroundPosition:"0 0, 0 8px, 8px -8px, -8px 0px"},children:k?(0,L.jsx)("div",{style:{color:"var(--status-error)",fontSize:13},children:k}):(0,L.jsx)("img",{src:n,alt:a,onLoad:a=>{let b=a.currentTarget;j({w:b.naturalWidth,h:b.naturalHeight})},onError:()=>l(d("desktop.failedToLoadImage")),style:{maxWidth:"100%",maxHeight:"100%",objectFit:"contain",boxShadow:"0 2px 8px rgba(0,0,0,0.15)"}})})]})}function t9({filePath:a,cwd:b,sourceSessionId:c}){let{t:d}=(0,bb.s)(),[e,f]=(0,M.useState)(0),[g,h]=(0,M.useState)(null),[i,j]=(0,M.useState)(null),[k,l]=(0,M.useState)(null);(0,M.useRef)(null);let m=fK(a).toLowerCase().split(".").pop()??"",n=tY(a,"read",c,e?{v:e}:void 0);return(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",height:"100%",overflow:"hidden"},children:[(0,L.jsxs)("div",{className:"file-viewer-status-bar",style:{display:"flex",alignItems:"center",gap:12,padding:"4px 16px",borderBottom:"1px solid var(--border)",fontSize:11,color:"var(--text-dim)",background:"var(--bg)",flexShrink:0,flexWrap:"wrap",rowGap:4},children:[(0,L.jsx)("span",{style:{fontFamily:"var(--font-mono)",minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",flex:"0 1 auto"},title:a,children:fL(a,b)}),(0,L.jsx)("span",{style:{marginLeft:"auto"},children:m||d("desktop.audio")}),null!=i&&(0,L.jsx)("span",{children:function(a){if(!Number.isFinite(a))return"";let b=Math.round(a),c=Math.floor(b/60);return`${c}:${String(b%60).padStart(2,"0")}`}(i)}),null!=g&&(0,L.jsx)("span",{children:t5(g)}),(0,L.jsx)(tZ,{filePath:a,sourceSessionId:c})]}),(0,L.jsx)("div",{style:{flex:1,display:"flex",alignItems:"center",justifyContent:"center",padding:24,background:"var(--bg-panel)"},children:(0,L.jsxs)("div",{style:{width:"min(680px, 100%)"},children:[k&&(0,L.jsx)("div",{style:{color:"var(--status-error)",fontSize:13,marginBottom:12,textAlign:"center"},children:k}),(0,L.jsx)("audio",{controls:!0,preload:"metadata",src:n,onLoadedMetadata:a=>j(a.currentTarget.duration),onError:()=>l(d("desktop.failedToLoadAudio")),style:{width:"100%"}},n)]})})]})}function ua({filePath:a,cwd:b,sourceSessionId:c}){let{t:d}=(0,bb.s)(),[e,f]=(0,M.useState)(0),[g,h]=(0,M.useState)(null),[i,j]=(0,M.useState)(null);(0,M.useRef)(null);let k=tX(a),l="pdf"===k,m=l?tY(a,"read",c,e?{v:e}:void 0):tY(a,"preview",c,e?{v:e}:void 0);return(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",height:"100%",overflow:"hidden"},children:[(0,L.jsxs)("div",{className:"file-viewer-status-bar",style:{display:"flex",alignItems:"center",gap:12,padding:"4px 16px",borderBottom:"1px solid var(--border)",fontSize:11,color:"var(--text-dim)",background:"var(--bg)",flexShrink:0,flexWrap:"wrap",rowGap:4},children:[(0,L.jsx)("span",{style:{fontFamily:"var(--font-mono)",minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},title:a,children:fL(a,b)}),(0,L.jsx)("span",{style:{marginLeft:"auto"},children:"docx"===k?d("desktop.docxPreview"):"pdf"}),null!=g&&(0,L.jsx)("span",{children:t5(g)}),(0,L.jsx)(tZ,{filePath:a,sourceSessionId:c})]}),(0,L.jsx)("div",{style:{flex:1,minHeight:0,background:"var(--bg-panel)"},children:i?(0,L.jsx)("div",{style:{height:"100%",display:"flex",alignItems:"center",justifyContent:"center",padding:24,color:"var(--status-error)",fontSize:13,textAlign:"center"},children:i}):(0,L.jsx)("iframe",{src:m,sandbox:l?void 0:"allow-same-origin",title:d("desktop.previewFile",{file:fK(a)}),style:{width:"100%",height:"100%",border:"none",background:l?"var(--bg)":"#eef1f5"}},m)})]})}function ub({filePath:a,cwd:b,sourceSessionId:c,onOpenFile:d,onAtMention:e,onMentionLines:f,initialDisplayMode:g,onFileSaved:h}){let i;return null!==(tV[tX(a)]??null)?(0,L.jsx)(t8,{filePath:a,cwd:b,sourceSessionId:c}):null!==(tW[tX(a)]??null)?(0,L.jsx)(t9,{filePath:a,cwd:b,sourceSessionId:c}):null!==("pdf"===(i=tX(a))||"docx"===i?i:null)?(0,L.jsx)(ua,{filePath:a,cwd:b,sourceSessionId:c}):(0,L.jsx)(uc,{filePath:a,cwd:b,sourceSessionId:c,onOpenFile:d,onAtMention:e,onMentionLines:f,initialDisplayMode:g,onFileSaved:h})}function uc({filePath:a,cwd:b,sourceSessionId:c,onOpenFile:d,onAtMention:e,onMentionLines:f,initialDisplayMode:g,onFileSaved:h}){let i,j,{t:k}=(0,bb.s)(),[l,m]=(0,M.useState)(null),[n,o]=(0,M.useState)(null),[p,q]=(0,M.useState)(null),[r,s]=(0,M.useState)(!0),[t,u]=(0,M.useState)(!1),[v,w]=(0,M.useState)(null),[x,y]=(0,M.useState)(!1),[z,A]=(0,M.useState)("source"),[B,C]=(0,M.useState)(!1),[D,E]=(0,M.useState)(0),[F,G]=(0,M.useState)(null);(0,M.useRef)(null);let H=(0,M.useRef)(null),[I,J]=(0,M.useState)(!1),[K,N]=(0,M.useState)(""),[O,P]=(0,M.useState)(""),[Q,R]=(0,M.useState)(!1),[S,T]=(0,M.useState)(null),[U,V]=(0,M.useState)(!1),W=(0,M.useRef)(null),X=(0,M.useRef)(null),Y=(0,M.useRef)(0);(0,M.useRef)(!1);let Z=I&&K!==O,_=!!(l?.content&&l.content.includes("\0")),aa=(0,M.useCallback)(async a=>{if(!b)return void q(null);try{let c=new URLSearchParams({cwd:b,path:a}),d=await fetch(`/api/git/diff?${c.toString()}`),e=await d.json();q(d.ok&&e.supported&&"string"==typeof e.patch?e:null)}catch{q(null)}},[b]),ab=(0,M.useCallback)((a,b=!1,d=0)=>fetch(tY(a,"read",c,d?{offset:d}:void 0)).then(a=>a.json()).then(a=>a.error?(w(a.error),null):(b?(m(b=>(b&&o(b.content),a)),E(a=>a+1)):d?m(b=>b?{...a,content:b.content+a.content}:a):m(a),a)).catch(a=>(w(String(a)),null)),[c]),ac=(0,M.useCallback)(()=>{l&&!_&&(N(l.content),P(l.content),T(null),V(!1),J(!0))},[l,_]),ad=(0,M.useCallback)(()=>{J(!1),N(""),P(""),T(null),V(!1)},[]),af=(0,M.useCallback)(()=>{(!Z||window.confirm(k("files.unsavedChanges")))&&ad()},[Z,ad,k]),ag=(0,M.useCallback)(async()=>{if(!l||Q)return;let b=++Y.current;R(!0),T(null);try{let c=await t0(a,K);if(b!==Y.current)return;m(a=>a?{...a,content:K,size:c}:a),P(K),R(!1),ad(),aa(a),h?.()}catch(a){if(b!==Y.current)return;T(a instanceof Error?a.message:String(a)),R(!1)}},[l,Q,K,a,ad,aa,h]),ah=(0,M.useCallback)(()=>{let a=W.current,b=X.current;a&&b&&(b.scrollTop=a.scrollTop)},[]),ai=(0,M.useCallback)(a=>{if("Tab"!==a.key||a.metaKey||a.ctrlKey||a.altKey)return;a.preventDefault();let b=a.currentTarget,{selectionStart:c,selectionEnd:d}=b;N(b.value.slice(0,c)+" "+b.value.slice(d)),requestAnimationFrame(()=>{let a=W.current;if(!a)return;let b=c+2;a.selectionStart=b,a.selectionEnd=b})},[]),aj=(0,M.useMemo)(()=>pQ(l?.content??""),[l?.content]),ak=p?.supported===!0&&"string"==typeof p.patch,al=ak&&p?.status==="deleted",am=(0,M.useCallback)(c=>{f&&c&&f(fL(a,b),c.startLine,c.endLine)},[b,a,f]);if(r)return(0,L.jsx)("div",{style:{height:"100%",display:"flex",alignItems:"center",justifyContent:"center",color:"var(--text-muted)",fontSize:13},children:k("desktop.loadingFile")});if(al&&!l)return(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",height:"100%",overflow:"hidden"},children:[(0,L.jsx)("div",{style:{padding:"5px 16px",borderBottom:"1px solid var(--border)",color:"var(--text-dim)",fontFamily:"var(--font-mono)",fontSize:11},title:a,children:fL(a,b)}),(0,L.jsx)("div",{style:{flex:1,overflow:"auto",background:"var(--bg)"},children:(0,L.jsx)(t7,{patch:p.patch})})]});if(v)return(0,L.jsx)("div",{style:{height:"100%",display:"flex",alignItems:"center",justifyContent:"center",color:"var(--status-error)",fontSize:13},children:v});if(!l)return null;let an="html"===l.language,ao="markdown"===l.language,ap=(j=(i=fI(a).replace(/\/+$/,"")).lastIndexOf("/"))<0?"":0===j?"/":2===j&&/^[a-zA-Z]:\//.test(i)?i.slice(0,3):i.slice(0,j),aq=l.content.split("\n"),ar=null!==n&&n!==l.content||ak,as=!al&&!_&&fN();return(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",height:"100%",overflow:"hidden"},children:[(0,L.jsxs)("div",{className:"file-viewer-status-bar",style:{display:"flex",alignItems:"center",gap:12,padding:"4px 16px",borderBottom:"1px solid var(--border)",fontSize:11,color:"var(--text-dim)",background:"var(--bg)",flexShrink:0,flexWrap:"wrap",rowGap:4},children:[(0,L.jsx)("span",{style:{fontFamily:"var(--font-mono)",minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",flex:"0 1 auto"},title:a,children:fL(a,b)}),(0,L.jsx)("span",{style:{marginLeft:"auto"},children:l.language}),"source"===z&&!I&&(0,L.jsx)("span",{children:k("desktop.lines",{count:aq.length})}),(0,L.jsx)("span",{children:t5(l.size)}),ar&&!I&&(0,L.jsxs)("div",{style:{display:"flex",borderRadius:5,overflow:"hidden",border:"1px solid var(--border)"},children:[(0,L.jsx)("button",{onClick:()=>A("source"),style:{padding:"2px 8px",fontSize:11,border:"none",cursor:"pointer",background:"source"===z?"var(--bg-selected)":"var(--bg-hover)",color:"source"===z?"var(--text)":"var(--text-muted)",fontWeight:"source"===z?600:400},children:k("desktop.source")}),(0,L.jsxs)("button",{onClick:()=>A("diff"),style:{padding:"2px 8px",fontSize:11,border:"none",borderLeft:"1px solid var(--border)",cursor:"pointer",background:"diff"===z?"var(--bg-selected)":"var(--bg-hover)",color:"diff"===z?"var(--text)":"var(--text-muted)",fontWeight:"diff"===z?600:400},children:[k("desktop.diff")," ",D>0&&(0,L.jsxs)("span",{style:{color:"var(--git-status-added)",marginLeft:2},children:["+",D]})]})]}),"source"===z&&!x&&!I&&(0,L.jsx)("button",{onClick:()=>C(a=>!a),title:B?k("desktop.disableWordWrap"):k("desktop.enableWordWrap"),style:{padding:"2px 8px",fontSize:11,cursor:"pointer",background:B?"var(--bg-selected)":"var(--bg-hover)",color:B?"var(--text)":"var(--text-muted)",border:"1px solid var(--border)",borderRadius:5,fontWeight:B?600:400},children:k("desktop.wrap")}),an&&"source"===z&&!I&&(0,L.jsxs)("div",{style:{display:"flex",borderRadius:5,overflow:"hidden",border:"1px solid var(--border)"},children:[(0,L.jsx)("button",{onClick:()=>y(!1),style:{padding:"2px 8px",fontSize:11,border:"none",cursor:"pointer",background:x?"var(--bg-hover)":"var(--bg-selected)",color:x?"var(--text-muted)":"var(--text)",fontWeight:x?400:600},children:k("desktop.code")}),(0,L.jsx)("button",{onClick:()=>y(!0),style:{padding:"2px 8px",fontSize:11,border:"none",borderLeft:"1px solid var(--border)",cursor:"pointer",background:x?"var(--bg-selected)":"var(--bg-hover)",color:x?"var(--text)":"var(--text-muted)",fontWeight:x?600:400},children:k("desktop.preview")})]}),ao&&"source"===z&&!I&&(0,L.jsxs)("div",{style:{display:"flex",borderRadius:5,overflow:"hidden",border:"1px solid var(--border)"},children:[(0,L.jsx)("button",{onClick:()=>y(!0),style:{padding:"2px 8px",fontSize:11,border:"none",cursor:"pointer",background:x?"var(--bg-selected)":"var(--bg-hover)",color:x?"var(--text)":"var(--text-muted)",fontWeight:x?600:400},children:k("desktop.preview")}),(0,L.jsx)("button",{onClick:()=>y(!1),style:{padding:"2px 8px",fontSize:11,border:"none",borderLeft:"1px solid var(--border)",cursor:"pointer",background:x?"var(--bg-hover)":"var(--bg-selected)",color:x?"var(--text-muted)":"var(--text)",fontWeight:x?400:600},children:k("desktop.raw")})]}),I?(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)("button",{type:"button",onClick:()=>void ag(),disabled:Q,title:k("files.saveHint"),"aria-label":k("files.save"),style:{height:20,minWidth:20,padding:"0 5px",display:"inline-flex",alignItems:"center",justifyContent:"center",border:"1px solid var(--border)",borderRadius:4,background:"var(--bg-selected)",color:"var(--text)",cursor:"pointer"},children:(0,L.jsx)(tU,{size:13,"aria-hidden":"true"})}),(0,L.jsx)("button",{type:"button",onClick:af,disabled:Q,title:k("files.cancelEdit"),"aria-label":k("files.cancelEdit"),style:{height:20,minWidth:20,padding:"0 5px",display:"inline-flex",alignItems:"center",justifyContent:"center",border:"1px solid var(--border)",borderRadius:4,background:"var(--bg-panel)",color:"var(--text-muted)",cursor:"pointer"},children:(0,L.jsx)($,{size:13,"aria-hidden":"true"})})]}):"source"===z&&as?(0,L.jsx)("button",{type:"button",onClick:ac,title:k("files.edit"),"aria-label":k("files.edit"),style:{height:20,minWidth:20,padding:"0 5px",display:"inline-flex",alignItems:"center",justifyContent:"center",border:"1px solid var(--border)",borderRadius:4,background:"var(--bg-panel)",color:"var(--text-muted)",cursor:"pointer"},children:(0,L.jsx)(ae,{size:13,"aria-hidden":"true"})}):null,(e||f)&&!I&&(0,L.jsx)("button",{type:"button",onPointerDown:a=>a.preventDefault(),onClick:()=>{F&&f?am(F):e?.(fL(a,b),!1)},title:F?k("desktop.mentionSelectedLines",{start:F.startLine,end:F.endLine}):k("desktop.mentionFile"),"aria-label":F?k("desktop.mentionSelectedLines",{start:F.startLine,end:F.endLine}):k("desktop.mentionFile"),style:{height:20,minWidth:20,padding:"0 5px",border:"1px solid var(--border)",borderRadius:4,background:"var(--bg-panel)",color:"var(--text-muted)",cursor:"pointer"},children:"@"}),!I&&(0,L.jsx)(tZ,{filePath:a,sourceSessionId:c})]}),l?.truncated&&"source"===z&&!I&&(0,L.jsxs)("div",{className:"file-viewer-load-more",style:{display:"flex",alignItems:"center",justifyContent:"center",gap:10,padding:"5px 8px",borderBottom:"1px solid var(--border)",color:"var(--text-dim)",fontSize:11},children:[(0,L.jsxs)("span",{children:[t5(l.nextOffset)," / ",t5(l.size)]}),(0,L.jsx)("button",{type:"button",disabled:t,onClick:()=>{u(!0),ab(a,!1,l.nextOffset).finally(()=>u(!1))},style:{padding:"2px 10px",fontSize:11,cursor:"pointer",border:"1px solid var(--border)",borderRadius:5,background:"var(--bg-hover)",color:"var(--text)",opacity:t?.6:1},children:t?k("i18n.loading"):k("i18n.loadMore")})]}),(0,L.jsx)("div",{ref:H,style:{flex:1,overflow:"auto",background:"var(--bg)"},children:I?(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",height:"100%",overflow:"hidden"},children:[U&&(0,L.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8,padding:"5px 12px",borderBottom:"1px solid var(--border)",background:"rgba(214,168,75,0.14)",color:"#d6a84b",fontSize:11,flexShrink:0},children:[(0,L.jsx)("span",{style:{flex:1},children:k("files.externalModified")}),(0,L.jsx)("button",{type:"button",onClick:()=>{(!Z||window.confirm(k("files.reloadOverwriteConfirm")))&&ab(a).then(a=>{a&&(N(a.content),P(a.content),V(!1))})},disabled:Q,style:{padding:"2px 8px",fontSize:11,border:"1px solid #d6a84b",borderRadius:4,background:"transparent",color:"#d6a84b",cursor:"pointer"},children:k("files.reload")})]}),S&&(0,L.jsx)("div",{style:{padding:"5px 12px",borderBottom:"1px solid var(--border)",background:"rgba(248,113,113,0.14)",color:"var(--status-error)",fontSize:11,flexShrink:0},children:k("files.saveFailed",{error:S})}),(0,L.jsxs)("div",{style:{flex:1,display:"flex",overflow:"hidden"},children:[(0,L.jsx)("div",{ref:X,"aria-hidden":"true",style:{...t_,height:"100%",overflow:"hidden",whiteSpace:"pre",pointerEvents:"none"},children:K.split("\n").map((a,b)=>`${b+1}
195
- `).join("")}),(0,L.jsx)("textarea",{ref:W,className:"file-editor-textarea",value:K,onChange:a=>N(a.target.value),onScroll:ah,onKeyDown:ai,spellCheck:!1,autoComplete:"off",autoCorrect:"off",autoCapitalize:"off",wrap:"off",style:{flex:1,height:"100%",resize:"none",border:"none",outline:"none",background:"var(--bg)",color:"var(--text)",...t$,whiteSpace:"pre",overflow:"auto",padding:0,tabSize:2}})]})]}):"diff"===z&&ar?ak?(0,L.jsx)(t7,{patch:p.patch}):(0,L.jsx)(t6,{oldContent:n,newContent:l.content}):an&&x?(0,L.jsx)("iframe",{srcDoc:l.content,sandbox:"allow-scripts",style:{width:"100%",height:"100%",border:"none",background:"var(--bg)"},title:k("desktop.htmlPreview")}):ao&&x?(0,L.jsx)("div",{className:"markdown-body markdown-file-preview",style:{padding:"24px 32px"},children:(0,L.jsx)(kS,{remarkPlugins:pT,rehypePlugins:pU,components:{h1:({children:a})=>(0,L.jsx)("h1",{id:pP(a),children:a}),h2:({children:a})=>(0,L.jsx)("h2",{id:pP(a),children:a}),h3:({children:a})=>(0,L.jsx)("h3",{id:pP(a),children:a}),code({className:a,children:b,...c}){let d=a?.replace("language-","").toLowerCase()??"",e=String(b);return a?.includes("language-")||e.includes("\n")?"mermaid"===d?(0,L.jsx)(p6,{code:e.replace(/\n$/,"")}):(0,L.jsx)(p9,{code:e.replace(/\n$/,""),lang:d}):(0,L.jsx)("code",{className:"inline max-w-full whitespace-normal break-words [overflow-wrap:anywhere] align-baseline bg-(--bg-secondary) border border-(--border) px-1.5 py-0.5 text-xs font-mono text-(--accent-blue)",...c,children:b})},pre:({children:a})=>(0,L.jsx)(L.Fragment,{children:a}),a({href:a,children:c,...e}){delete e.node;let f="text-(--accent-blue) underline underline-offset-2 hover:text-(--accent-blue)/80",g=d?hp(a,ap,b??ap):null;return g&&d?(0,L.jsx)("a",{href:a,...e,className:f,onClick:a=>{if(a.defaultPrevented||0!==a.button||a.metaKey||a.ctrlKey||a.shiftKey||a.altKey)return;let b=a.currentTarget.getAttribute("target");b&&"_self"!==b||(a.preventDefault(),d(g))},children:c}):(0,L.jsx)("a",{href:a,...e,className:f,target:"_blank",rel:"noopener noreferrer",children:c})},table:({children:a})=>(0,L.jsx)("div",{className:"my-3 rounded-lg overflow-hidden border border-(--border)",children:(0,L.jsx)("div",{className:"overflow-x-auto",children:(0,L.jsx)("table",{className:"w-full text-sm border-collapse [&_tr:last-child>td]:border-b-0",children:a})})})},children:aj})}):(0,L.jsx)(lx,{language:"text"===l.language?"plaintext":l.language,style:pV,showLineNumbers:!0,lineNumberStyle:{color:"var(--text-dim)",fontStyle:"normal",minWidth:"3em",paddingRight:"1em"},customStyle:{margin:0,padding:"12px 0",background:"var(--bg)",fontSize:13,lineHeight:1.6,fontFamily:"var(--font-mono)",minHeight:"100%"},codeTagProps:{style:{fontFamily:"var(--font-mono)"}},lineProps:a=>({className:"file-source-line","data-line-number":String(a)}),wrapLongLines:B,children:l.content})})]})}function ud({sessionId:a,label:b,running:c=!1,onOpenFile:d}){let{t:e}=(0,bb.s)(),[f,g]=(0,M.useState)([]),[h,i]=(0,M.useState)([]),[j,k]=(0,M.useState)(!0),[l,m]=(0,M.useState)(null),n=(0,M.useMemo)(()=>{let a=new Map;for(let b of f)"toolResult"===b.role&&a.set(b.toolCallId,b);return a},[f]),o=(0,M.useMemo)(()=>f.filter(a=>"user"===a.role||"assistant"===a.role),[f]);return(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",height:"100%",minHeight:0,background:"var(--bg)"},children:[(0,L.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8,flexShrink:0,padding:"8px 12px",borderBottom:"1px solid var(--border)",background:"var(--bg-panel)"},children:[(0,L.jsx)("span",{style:{fontSize:12,fontWeight:600,color:"var(--text)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:b||e("subagent.transcriptTitle")}),c&&(0,L.jsx)("span",{style:{marginLeft:"auto",fontSize:11,color:"var(--accent)",whiteSpace:"nowrap"},children:e("agentSwitcher.status.running")})]}),(0,L.jsxs)("div",{className:"scroll-overlay",style:{flex:1,minHeight:0,overflowY:"auto",padding:"10px 12px"},children:[j&&0===f.length&&(0,L.jsx)("div",{style:{color:"var(--text-dim)",fontSize:12},children:e("subagent.transcriptLoading")}),l&&0===f.length&&(0,L.jsx)("div",{style:{color:"var(--status-error)",fontSize:12},children:e("subagent.transcriptFailed",{error:l})}),!j&&!l&&0===o.length&&(0,L.jsx)("div",{style:{color:"var(--text-dim)",fontSize:12},children:e(c?"subagent.transcriptWaiting":"subagent.transcriptEmpty")}),o.map((b,c)=>(0,L.jsx)(qE,{message:b,toolResults:n,entryId:h[c],sessionId:a,onOpenFile:d},`subagent-msg-${c}`))]})]})}function ue({tabs:a,activeTabId:b,onSelectTab:c,onCloseTab:d}){let{t:e}=(0,bb.s)(),f=(0,M.useRef)(null),[g,h]=(0,M.useState)(!1),i=(0,M.useCallback)((b,d)=>{if(b.target!==b.currentTarget)return;if("Enter"===b.key||" "===b.key){b.preventDefault(),c(d.id);return}if(!["ArrowLeft","ArrowRight","Home","End"].includes(b.key))return;b.preventDefault();let e=a.findIndex(a=>a.id===d.id),g="Home"===b.key?0:"End"===b.key?a.length-1:(e+("ArrowRight"===b.key?1:-1)+a.length)%a.length;c(a[g].id);let h=f.current;h?.querySelector(`[data-tab-id="${CSS.escape(a[g].id)}"]`)?.focus()},[c,a]);return(0,L.jsx)("div",{ref:f,role:"tablist",className:`file-tab-bar${g?"":" no-overflow"}`,children:a.map(f=>{let g=f.id===b;return(0,L.jsxs)("div",{role:"tab","data-tab-id":f.id,"aria-label":"terminal"===f.kind?e("terminal.tabLabel",{name:f.label}):"subagent"===f.kind?e("subagent.transcriptTitle")+": "+f.label:f.label,"aria-selected":g,tabIndex:g||!b&&a[0].id===f.id?0:-1,className:"file-tab",onKeyDown:a=>i(a,f),onClick:()=>c(f.id),onMouseDown:a=>{1===a.button&&a.preventDefault()},onAuxClick:a=>{1===a.button&&(a.preventDefault(),a.stopPropagation(),f.closing||d(f.id))},children:[(0,L.jsx)("span",{className:"file-tab-icon",children:"subagent"===f.kind?(0,L.jsx)(a2,{size:13,"aria-hidden":"true"}):"terminal"===f.kind?(0,L.jsxs)("svg",{width:"13",height:"13",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[(0,L.jsx)("polyline",{points:"4 17 10 11 4 5"}),(0,L.jsx)("line",{x1:"12",y1:"19",x2:"20",y2:"19"})]}):fH(f.label,13)}),(0,L.jsx)("span",{className:"file-tab-label",title:f.filePath,children:f.label}),(0,L.jsx)("button",{type:"button",className:"file-tab-close",disabled:f.closing,onClick:a=>{a.stopPropagation(),d(f.id)},title:e("desktop.closeTab"),"aria-label":e("desktop.closeTabWithLabel",{label:f.label}),children:(0,L.jsx)($,{size:11,"aria-hidden":"true"})})]},f.id)})})}let uf=new Set(["awaiting_input","review","failed"]),ug=(0,M.createContext)(null);function uh(){let a=(0,M.useContext)(ug);if(!a)throw Error("useTasksView must be used within TasksViewProvider");return a}function ui({children:a}){let{t:b}=(0,bb.s)();(0,M.useRef)(b);let[c,d]=(0,M.useState)([]),[e,f]=(0,M.useState)([]),g=(0,M.useRef)(0),h=(0,M.useCallback)(async()=>{let a=++g.current;try{let b=await (0,se.Wt)(),c=(await Promise.all(b.map(a=>(0,se.Vk)(a).catch(()=>[])))).flat().sort((a,b)=>b.id-a.id);if(a!==g.current)return;f(a=>uj(a,b)?a:b),d(a=>uj(a,c)?a:c)}catch{}},[]),i=(0,M.useMemo)(()=>c.filter(a=>uf.has(a.status)&&null==a.archivedAt).length,[c]);(0,M.useRef)(null);let j=(0,M.useMemo)(()=>({tasks:c,projects:e,attentionCount:i,refetch:h}),[c,e,i,h]);return(0,L.jsx)(ug.Provider,{value:j,children:a})}function uj(a,b){return JSON.stringify(a)===JSON.stringify(b)}let uk=new Map([["bold",M.createElement(M.Fragment,null,M.createElement("path",{d:"M128,76a52,52,0,1,0,52,52A52.06,52.06,0,0,0,128,76Zm0,80a28,28,0,1,1,28-28A28,28,0,0,1,128,156Zm92-27.21v-1.58l14-17.51a12,12,0,0,0,2.23-10.59A111.75,111.75,0,0,0,225,71.89,12,12,0,0,0,215.89,66L193.61,63.5l-1.11-1.11L190,40.1A12,12,0,0,0,184.11,31a111.67,111.67,0,0,0-27.23-11.27A12,12,0,0,0,146.3,22L128.79,36h-1.58L109.7,22a12,12,0,0,0-10.59-2.23A111.75,111.75,0,0,0,71.89,31.05,12,12,0,0,0,66,40.11L63.5,62.39,62.39,63.5,40.1,66A12,12,0,0,0,31,71.89,111.67,111.67,0,0,0,19.77,99.12,12,12,0,0,0,22,109.7l14,17.51v1.58L22,146.3a12,12,0,0,0-2.23,10.59,111.75,111.75,0,0,0,11.29,27.22A12,12,0,0,0,40.11,190l22.28,2.48,1.11,1.11L66,215.9A12,12,0,0,0,71.89,225a111.67,111.67,0,0,0,27.23,11.27A12,12,0,0,0,109.7,234l17.51-14h1.58l17.51,14a12,12,0,0,0,10.59,2.23A111.75,111.75,0,0,0,184.11,225a12,12,0,0,0,5.91-9.06l2.48-22.28,1.11-1.11L215.9,190a12,12,0,0,0,9.06-5.91,111.67,111.67,0,0,0,11.27-27.23A12,12,0,0,0,234,146.3Zm-24.12-4.89a70.1,70.1,0,0,1,0,8.2,12,12,0,0,0,2.61,8.22l12.84,16.05A86.47,86.47,0,0,1,207,166.86l-20.43,2.27a12,12,0,0,0-7.65,4,69,69,0,0,1-5.8,5.8,12,12,0,0,0-4,7.65L166.86,207a86.47,86.47,0,0,1-10.49,4.35l-16.05-12.85a12,12,0,0,0-7.5-2.62c-.24,0-.48,0-.72,0a70.1,70.1,0,0,1-8.2,0,12.06,12.06,0,0,0-8.22,2.6L99.63,211.33A86.47,86.47,0,0,1,89.14,207l-2.27-20.43a12,12,0,0,0-4-7.65,69,69,0,0,1-5.8-5.8,12,12,0,0,0-7.65-4L49,166.86a86.47,86.47,0,0,1-4.35-10.49l12.84-16.05a12,12,0,0,0,2.61-8.22,70.1,70.1,0,0,1,0-8.2,12,12,0,0,0-2.61-8.22L44.67,99.63A86.47,86.47,0,0,1,49,89.14l20.43-2.27a12,12,0,0,0,7.65-4,69,69,0,0,1,5.8-5.8,12,12,0,0,0,4-7.65L89.14,49a86.47,86.47,0,0,1,10.49-4.35l16.05,12.85a12.06,12.06,0,0,0,8.22,2.6,70.1,70.1,0,0,1,8.2,0,12,12,0,0,0,8.22-2.6l16.05-12.85A86.47,86.47,0,0,1,166.86,49l2.27,20.43a12,12,0,0,0,4,7.65,69,69,0,0,1,5.8,5.8,12,12,0,0,0,7.65,4L207,89.14a86.47,86.47,0,0,1,4.35,10.49l-12.84,16.05A12,12,0,0,0,195.88,123.9Z"}))],["duotone",M.createElement(M.Fragment,null,M.createElement("path",{d:"M207.86,123.18l16.78-21a99.14,99.14,0,0,0-10.07-24.29l-26.7-3a81,81,0,0,0-6.81-6.81l-3-26.71a99.43,99.43,0,0,0-24.3-10l-21,16.77a81.59,81.59,0,0,0-9.64,0l-21-16.78A99.14,99.14,0,0,0,77.91,41.43l-3,26.7a81,81,0,0,0-6.81,6.81l-26.71,3a99.43,99.43,0,0,0-10,24.3l16.77,21a81.59,81.59,0,0,0,0,9.64l-16.78,21a99.14,99.14,0,0,0,10.07,24.29l26.7,3a81,81,0,0,0,6.81,6.81l3,26.71a99.43,99.43,0,0,0,24.3,10l21-16.77a81.59,81.59,0,0,0,9.64,0l21,16.78a99.14,99.14,0,0,0,24.29-10.07l3-26.7a81,81,0,0,0,6.81-6.81l26.71-3a99.43,99.43,0,0,0,10-24.3l-16.77-21A81.59,81.59,0,0,0,207.86,123.18ZM128,168a40,40,0,1,1,40-40A40,40,0,0,1,128,168Z",opacity:"0.2"}),M.createElement("path",{d:"M128,80a48,48,0,1,0,48,48A48.05,48.05,0,0,0,128,80Zm0,80a32,32,0,1,1,32-32A32,32,0,0,1,128,160Zm88-29.84q.06-2.16,0-4.32l14.92-18.64a8,8,0,0,0,1.48-7.06,107.6,107.6,0,0,0-10.88-26.25,8,8,0,0,0-6-3.93l-23.72-2.64q-1.48-1.56-3-3L186,40.54a8,8,0,0,0-3.94-6,107.29,107.29,0,0,0-26.25-10.86,8,8,0,0,0-7.06,1.48L130.16,40Q128,40,125.84,40L107.2,25.11a8,8,0,0,0-7.06-1.48A107.6,107.6,0,0,0,73.89,34.51a8,8,0,0,0-3.93,6L67.32,64.27q-1.56,1.49-3,3L40.54,70a8,8,0,0,0-6,3.94,107.71,107.71,0,0,0-10.87,26.25,8,8,0,0,0,1.49,7.06L40,125.84Q40,128,40,130.16L25.11,148.8a8,8,0,0,0-1.48,7.06,107.6,107.6,0,0,0,10.88,26.25,8,8,0,0,0,6,3.93l23.72,2.64q1.49,1.56,3,3L70,215.46a8,8,0,0,0,3.94,6,107.71,107.71,0,0,0,26.25,10.87,8,8,0,0,0,7.06-1.49L125.84,216q2.16.06,4.32,0l18.64,14.92a8,8,0,0,0,7.06,1.48,107.21,107.21,0,0,0,26.25-10.88,8,8,0,0,0,3.93-6l2.64-23.72q1.56-1.48,3-3L215.46,186a8,8,0,0,0,6-3.94,107.71,107.71,0,0,0,10.87-26.25,8,8,0,0,0-1.49-7.06Zm-16.1-6.5a73.93,73.93,0,0,1,0,8.68,8,8,0,0,0,1.74,5.48l14.19,17.73a91.57,91.57,0,0,1-6.23,15L187,173.11a8,8,0,0,0-5.1,2.64,74.11,74.11,0,0,1-6.14,6.14,8,8,0,0,0-2.64,5.1l-2.51,22.58a91.32,91.32,0,0,1-15,6.23l-17.74-14.19a8,8,0,0,0-5-1.75h-.48a73.93,73.93,0,0,1-8.68,0,8.06,8.06,0,0,0-5.48,1.74L100.45,215.8a91.57,91.57,0,0,1-15-6.23L82.89,187a8,8,0,0,0-2.64-5.1,74.11,74.11,0,0,1-6.14-6.14,8,8,0,0,0-5.1-2.64L46.43,170.6a91.32,91.32,0,0,1-6.23-15l14.19-17.74a8,8,0,0,0,1.74-5.48,73.93,73.93,0,0,1,0-8.68,8,8,0,0,0-1.74-5.48L40.2,100.45a91.57,91.57,0,0,1,6.23-15L69,82.89a8,8,0,0,0,5.1-2.64,74.11,74.11,0,0,1,6.14-6.14A8,8,0,0,0,82.89,69L85.4,46.43a91.32,91.32,0,0,1,15-6.23l17.74,14.19a8,8,0,0,0,5.48,1.74,73.93,73.93,0,0,1,8.68,0,8.06,8.06,0,0,0,5.48-1.74L155.55,40.2a91.57,91.57,0,0,1,15,6.23L173.11,69a8,8,0,0,0,2.64,5.1,74.11,74.11,0,0,1,6.14,6.14,8,8,0,0,0,5.1,2.64l22.58,2.51a91.32,91.32,0,0,1,6.23,15l-14.19,17.74A8,8,0,0,0,199.87,123.66Z"}))],["fill",M.createElement(M.Fragment,null,M.createElement("path",{d:"M216,130.16q.06-2.16,0-4.32l14.92-18.64a8,8,0,0,0,1.48-7.06,107.6,107.6,0,0,0-10.88-26.25,8,8,0,0,0-6-3.93l-23.72-2.64q-1.48-1.56-3-3L186,40.54a8,8,0,0,0-3.94-6,107.29,107.29,0,0,0-26.25-10.86,8,8,0,0,0-7.06,1.48L130.16,40Q128,40,125.84,40L107.2,25.11a8,8,0,0,0-7.06-1.48A107.6,107.6,0,0,0,73.89,34.51a8,8,0,0,0-3.93,6L67.32,64.27q-1.56,1.49-3,3L40.54,70a8,8,0,0,0-6,3.94,107.71,107.71,0,0,0-10.87,26.25,8,8,0,0,0,1.49,7.06L40,125.84Q40,128,40,130.16L25.11,148.8a8,8,0,0,0-1.48,7.06,107.6,107.6,0,0,0,10.88,26.25,8,8,0,0,0,6,3.93l23.72,2.64q1.49,1.56,3,3L70,215.46a8,8,0,0,0,3.94,6,107.71,107.71,0,0,0,26.25,10.87,8,8,0,0,0,7.06-1.49L125.84,216q2.16.06,4.32,0l18.64,14.92a8,8,0,0,0,7.06,1.48,107.21,107.21,0,0,0,26.25-10.88,8,8,0,0,0,3.93-6l2.64-23.72q1.56-1.48,3-3L215.46,186a8,8,0,0,0,6-3.94,107.71,107.71,0,0,0,10.87-26.25,8,8,0,0,0-1.49-7.06ZM128,168a40,40,0,1,1,40-40A40,40,0,0,1,128,168Z"}))],["light",M.createElement(M.Fragment,null,M.createElement("path",{d:"M128,82a46,46,0,1,0,46,46A46.06,46.06,0,0,0,128,82Zm0,80a34,34,0,1,1,34-34A34,34,0,0,1,128,162ZM214,130.84c.06-1.89.06-3.79,0-5.68L229.33,106a6,6,0,0,0,1.11-5.29A105.34,105.34,0,0,0,219.76,74.9a6,6,0,0,0-4.53-3l-24.45-2.71q-1.93-2.07-4-4l-2.72-24.46a6,6,0,0,0-3-4.53,105.65,105.65,0,0,0-25.77-10.66A6,6,0,0,0,150,26.68l-19.2,15.37c-1.89-.06-3.79-.06-5.68,0L106,26.67a6,6,0,0,0-5.29-1.11A105.34,105.34,0,0,0,74.9,36.24a6,6,0,0,0-3,4.53L69.23,65.22q-2.07,1.94-4,4L40.76,72a6,6,0,0,0-4.53,3,105.65,105.65,0,0,0-10.66,25.77A6,6,0,0,0,26.68,106l15.37,19.2c-.06,1.89-.06,3.79,0,5.68L26.67,150.05a6,6,0,0,0-1.11,5.29A105.34,105.34,0,0,0,36.24,181.1a6,6,0,0,0,4.53,3l24.45,2.71q1.94,2.07,4,4L72,215.24a6,6,0,0,0,3,4.53,105.65,105.65,0,0,0,25.77,10.66,6,6,0,0,0,5.29-1.11L125.16,214c1.89.06,3.79.06,5.68,0l19.21,15.38a6,6,0,0,0,3.75,1.31,6.2,6.2,0,0,0,1.54-.2,105.34,105.34,0,0,0,25.76-10.68,6,6,0,0,0,3-4.53l2.71-24.45q2.07-1.93,4-4l24.46-2.72a6,6,0,0,0,4.53-3,105.49,105.49,0,0,0,10.66-25.77,6,6,0,0,0-1.11-5.29Zm-3.1,41.63-23.64,2.63a6,6,0,0,0-3.82,2,75.14,75.14,0,0,1-6.31,6.31,6,6,0,0,0-2,3.82l-2.63,23.63A94.28,94.28,0,0,1,155.14,218l-18.57-14.86a6,6,0,0,0-3.75-1.31h-.36a78.07,78.07,0,0,1-8.92,0,6,6,0,0,0-4.11,1.3L100.87,218a94.13,94.13,0,0,1-17.34-7.17L80.9,187.21a6,6,0,0,0-2-3.82,75.14,75.14,0,0,1-6.31-6.31,6,6,0,0,0-3.82-2l-23.63-2.63A94.28,94.28,0,0,1,38,155.14l14.86-18.57a6,6,0,0,0,1.3-4.11,78.07,78.07,0,0,1,0-8.92,6,6,0,0,0-1.3-4.11L38,100.87a94.13,94.13,0,0,1,7.17-17.34L68.79,80.9a6,6,0,0,0,3.82-2,75.14,75.14,0,0,1,6.31-6.31,6,6,0,0,0,2-3.82l2.63-23.63A94.28,94.28,0,0,1,100.86,38l18.57,14.86a6,6,0,0,0,4.11,1.3,78.07,78.07,0,0,1,8.92,0,6,6,0,0,0,4.11-1.3L155.13,38a94.13,94.13,0,0,1,17.34,7.17l2.63,23.64a6,6,0,0,0,2,3.82,75.14,75.14,0,0,1,6.31,6.31,6,6,0,0,0,3.82,2l23.63,2.63A94.28,94.28,0,0,1,218,100.86l-14.86,18.57a6,6,0,0,0-1.3,4.11,78.07,78.07,0,0,1,0,8.92,6,6,0,0,0,1.3,4.11L218,155.13A94.13,94.13,0,0,1,210.85,172.47Z"}))],["regular",M.createElement(M.Fragment,null,M.createElement("path",{d:"M128,80a48,48,0,1,0,48,48A48.05,48.05,0,0,0,128,80Zm0,80a32,32,0,1,1,32-32A32,32,0,0,1,128,160Zm88-29.84q.06-2.16,0-4.32l14.92-18.64a8,8,0,0,0,1.48-7.06,107.21,107.21,0,0,0-10.88-26.25,8,8,0,0,0-6-3.93l-23.72-2.64q-1.48-1.56-3-3L186,40.54a8,8,0,0,0-3.94-6,107.71,107.71,0,0,0-26.25-10.87,8,8,0,0,0-7.06,1.49L130.16,40Q128,40,125.84,40L107.2,25.11a8,8,0,0,0-7.06-1.48A107.6,107.6,0,0,0,73.89,34.51a8,8,0,0,0-3.93,6L67.32,64.27q-1.56,1.49-3,3L40.54,70a8,8,0,0,0-6,3.94,107.71,107.71,0,0,0-10.87,26.25,8,8,0,0,0,1.49,7.06L40,125.84Q40,128,40,130.16L25.11,148.8a8,8,0,0,0-1.48,7.06,107.21,107.21,0,0,0,10.88,26.25,8,8,0,0,0,6,3.93l23.72,2.64q1.49,1.56,3,3L70,215.46a8,8,0,0,0,3.94,6,107.71,107.71,0,0,0,26.25,10.87,8,8,0,0,0,7.06-1.49L125.84,216q2.16.06,4.32,0l18.64,14.92a8,8,0,0,0,7.06,1.48,107.21,107.21,0,0,0,26.25-10.88,8,8,0,0,0,3.93-6l2.64-23.72q1.56-1.48,3-3L215.46,186a8,8,0,0,0,6-3.94,107.71,107.71,0,0,0,10.87-26.25,8,8,0,0,0-1.49-7.06Zm-16.1-6.5a73.93,73.93,0,0,1,0,8.68,8,8,0,0,0,1.74,5.48l14.19,17.73a91.57,91.57,0,0,1-6.23,15L187,173.11a8,8,0,0,0-5.1,2.64,74.11,74.11,0,0,1-6.14,6.14,8,8,0,0,0-2.64,5.1l-2.51,22.58a91.32,91.32,0,0,1-15,6.23l-17.74-14.19a8,8,0,0,0-5-1.75h-.48a73.93,73.93,0,0,1-8.68,0,8,8,0,0,0-5.48,1.74L100.45,215.8a91.57,91.57,0,0,1-15-6.23L82.89,187a8,8,0,0,0-2.64-5.1,74.11,74.11,0,0,1-6.14-6.14,8,8,0,0,0-5.1-2.64L46.43,170.6a91.32,91.32,0,0,1-6.23-15l14.19-17.74a8,8,0,0,0,1.74-5.48,73.93,73.93,0,0,1,0-8.68,8,8,0,0,0-1.74-5.48L40.2,100.45a91.57,91.57,0,0,1,6.23-15L69,82.89a8,8,0,0,0,5.1-2.64,74.11,74.11,0,0,1,6.14-6.14A8,8,0,0,0,82.89,69L85.4,46.43a91.32,91.32,0,0,1,15-6.23l17.74,14.19a8,8,0,0,0,5.48,1.74,73.93,73.93,0,0,1,8.68,0,8,8,0,0,0,5.48-1.74L155.55,40.2a91.57,91.57,0,0,1,15,6.23L173.11,69a8,8,0,0,0,2.64,5.1,74.11,74.11,0,0,1,6.14,6.14,8,8,0,0,0,5.1,2.64l22.58,2.51a91.32,91.32,0,0,1,6.23,15l-14.19,17.74A8,8,0,0,0,199.87,123.66Z"}))],["thin",M.createElement(M.Fragment,null,M.createElement("path",{d:"M128,84a44,44,0,1,0,44,44A44.05,44.05,0,0,0,128,84Zm0,80a36,36,0,1,1,36-36A36,36,0,0,1,128,164Zm83.93-32.49q.13-3.51,0-7l15.83-19.79a4,4,0,0,0,.75-3.53A103.64,103.64,0,0,0,218,75.9a4,4,0,0,0-3-2l-25.19-2.8c-1.58-1.71-3.24-3.37-4.95-4.95L182.07,41a4,4,0,0,0-2-3A104,104,0,0,0,154.82,27.5a4,4,0,0,0-3.53.74L131.51,44.07q-3.51-.14-7,0L104.7,28.24a4,4,0,0,0-3.53-.75A103.64,103.64,0,0,0,75.9,38a4,4,0,0,0-2,3l-2.8,25.19c-1.71,1.58-3.37,3.24-4.95,4.95L41,73.93a4,4,0,0,0-3,2A104,104,0,0,0,27.5,101.18a4,4,0,0,0,.74,3.53l15.83,19.78q-.14,3.51,0,7L28.24,151.3a4,4,0,0,0-.75,3.53A103.64,103.64,0,0,0,38,180.1a4,4,0,0,0,3,2l25.19,2.8c1.58,1.71,3.24,3.37,4.95,4.95l2.8,25.2a4,4,0,0,0,2,3,104,104,0,0,0,25.28,10.46,4,4,0,0,0,3.53-.74l19.78-15.83q3.51.13,7,0l19.79,15.83a4,4,0,0,0,2.5.88,4,4,0,0,0,1-.13A103.64,103.64,0,0,0,180.1,218a4,4,0,0,0,2-3l2.8-25.19c1.71-1.58,3.37-3.24,4.95-4.95l25.2-2.8a4,4,0,0,0,3-2,104,104,0,0,0,10.46-25.28,4,4,0,0,0-.74-3.53Zm.17,42.83-24.67,2.74a4,4,0,0,0-2.55,1.32,76.2,76.2,0,0,1-6.48,6.48,4,4,0,0,0-1.32,2.55l-2.74,24.66a95.45,95.45,0,0,1-19.64,8.15l-19.38-15.51a4,4,0,0,0-2.5-.87h-.24a73.67,73.67,0,0,1-9.16,0,4,4,0,0,0-2.74.87l-19.37,15.5a95.33,95.33,0,0,1-19.65-8.13l-2.74-24.67a4,4,0,0,0-1.32-2.55,76.2,76.2,0,0,1-6.48-6.48,4,4,0,0,0-2.55-1.32l-24.66-2.74a95.45,95.45,0,0,1-8.15-19.64l15.51-19.38a4,4,0,0,0,.87-2.74,77.76,77.76,0,0,1,0-9.16,4,4,0,0,0-.87-2.74l-15.5-19.37A95.33,95.33,0,0,1,43.9,81.66l24.67-2.74a4,4,0,0,0,2.55-1.32,76.2,76.2,0,0,1,6.48-6.48,4,4,0,0,0,1.32-2.55l2.74-24.66a95.45,95.45,0,0,1,19.64-8.15l19.38,15.51a4,4,0,0,0,2.74.87,73.67,73.67,0,0,1,9.16,0,4,4,0,0,0,2.74-.87l19.37-15.5a95.33,95.33,0,0,1,19.65,8.13l2.74,24.67a4,4,0,0,0,1.32,2.55,76.2,76.2,0,0,1,6.48,6.48,4,4,0,0,0,2.55,1.32l24.66,2.74a95.45,95.45,0,0,1,8.15,19.64l-15.51,19.38a4,4,0,0,0-.87,2.74,77.76,77.76,0,0,1,0,9.16,4,4,0,0,0,.87,2.74l15.5,19.37A95.33,95.33,0,0,1,212.1,174.34Z"}))]]),ul=M.forwardRef((a,b)=>M.createElement(P,{ref:b,...a,weights:uk}));ul.displayName="GearIcon";let um=new Map([["bold",M.createElement(M.Fragment,null,M.createElement("path",{d:"M204,136a12,12,0,0,1-12,12H64a12,12,0,0,1,0-24H192A12,12,0,0,1,204,136Zm28-60H24a12,12,0,0,0,0,24H232a12,12,0,0,0,0-24Zm-80,96H104a12,12,0,0,0,0,24h48a12,12,0,0,0,0-24Z"}))],["duotone",M.createElement(M.Fragment,null,M.createElement("path",{d:"M232,56V200a16,16,0,0,1-16,16H40a16,16,0,0,1-16-16V56A16,16,0,0,1,40,40H216A16,16,0,0,1,232,56Z",opacity:"0.2"}),M.createElement("path",{d:"M200,136a8,8,0,0,1-8,8H64a8,8,0,0,1,0-16H192A8,8,0,0,1,200,136Zm32-56H24a8,8,0,0,0,0,16H232a8,8,0,0,0,0-16Zm-80,96H104a8,8,0,0,0,0,16h48a8,8,0,0,0,0-16Z"}))],["fill",M.createElement(M.Fragment,null,M.createElement("path",{d:"M216,40H40A16,16,0,0,0,24,56V200a16,16,0,0,0,16,16H216a16,16,0,0,0,16-16V56A16,16,0,0,0,216,40ZM144,176H112a8,8,0,0,1,0-16h32a8,8,0,0,1,0,16Zm32-40H80a8,8,0,0,1,0-16h96a8,8,0,0,1,0,16Zm32-40H48a8,8,0,0,1,0-16H208a8,8,0,0,1,0,16Z"}))],["light",M.createElement(M.Fragment,null,M.createElement("path",{d:"M198,136a6,6,0,0,1-6,6H64a6,6,0,0,1,0-12H192A6,6,0,0,1,198,136Zm34-54H24a6,6,0,0,0,0,12H232a6,6,0,0,0,0-12Zm-80,96H104a6,6,0,0,0,0,12h48a6,6,0,0,0,0-12Z"}))],["regular",M.createElement(M.Fragment,null,M.createElement("path",{d:"M200,136a8,8,0,0,1-8,8H64a8,8,0,0,1,0-16H192A8,8,0,0,1,200,136Zm32-56H24a8,8,0,0,0,0,16H232a8,8,0,0,0,0-16Zm-80,96H104a8,8,0,0,0,0,16h48a8,8,0,0,0,0-16Z"}))],["thin",M.createElement(M.Fragment,null,M.createElement("path",{d:"M196,136a4,4,0,0,1-4,4H64a4,4,0,0,1,0-8H192A4,4,0,0,1,196,136Zm36-52H24a4,4,0,0,0,0,8H232a4,4,0,0,0,0-8Zm-80,96H104a4,4,0,0,0,0,8h48a4,4,0,0,0,0-8Z"}))]]),un=M.forwardRef((a,b)=>M.createElement(P,{ref:b,...a,weights:um}));un.displayName="FunnelSimpleIcon";let uo=new Map([["bold",M.createElement(M.Fragment,null,M.createElement("path",{d:"M234.49,111.07,90.41,22.94A20,20,0,0,0,60,39.87V216.13a20,20,0,0,0,30.41,16.93l144.08-88.13a19.82,19.82,0,0,0,0-33.86ZM84,208.85V47.15L216.16,128Z"}))],["duotone",M.createElement(M.Fragment,null,M.createElement("path",{d:"M228.23,134.69,84.15,222.81A8,8,0,0,1,72,216.12V39.88a8,8,0,0,1,12.15-6.69l144.08,88.12A7.82,7.82,0,0,1,228.23,134.69Z",opacity:"0.2"}),M.createElement("path",{d:"M232.4,114.49,88.32,26.35a16,16,0,0,0-16.2-.3A15.86,15.86,0,0,0,64,39.87V216.13A15.94,15.94,0,0,0,80,232a16.07,16.07,0,0,0,8.36-2.35L232.4,141.51a15.81,15.81,0,0,0,0-27ZM80,215.94V40l143.83,88Z"}))],["fill",M.createElement(M.Fragment,null,M.createElement("path",{d:"M240,128a15.74,15.74,0,0,1-7.6,13.51L88.32,229.65a16,16,0,0,1-16.2.3A15.86,15.86,0,0,1,64,216.13V39.87a15.86,15.86,0,0,1,8.12-13.82,16,16,0,0,1,16.2.3L232.4,114.49A15.74,15.74,0,0,1,240,128Z"}))],["light",M.createElement(M.Fragment,null,M.createElement("path",{d:"M231.36,116.19,87.28,28.06a14,14,0,0,0-14.18-.27A13.69,13.69,0,0,0,66,39.87V216.13a13.69,13.69,0,0,0,7.1,12.08,14,14,0,0,0,14.18-.27l144.08-88.13a13.82,13.82,0,0,0,0-23.62Zm-6.26,13.38L81,217.7a2,2,0,0,1-2.06,0,1.78,1.78,0,0,1-1-1.61V39.87a1.78,1.78,0,0,1,1-1.61A2.06,2.06,0,0,1,80,38a2,2,0,0,1,1,.31L225.1,126.43a1.82,1.82,0,0,1,0,3.14Z"}))],["regular",M.createElement(M.Fragment,null,M.createElement("path",{d:"M232.4,114.49,88.32,26.35a16,16,0,0,0-16.2-.3A15.86,15.86,0,0,0,64,39.87V216.13A15.94,15.94,0,0,0,80,232a16.07,16.07,0,0,0,8.36-2.35L232.4,141.51a15.81,15.81,0,0,0,0-27ZM80,215.94V40l143.83,88Z"}))],["thin",M.createElement(M.Fragment,null,M.createElement("path",{d:"M230.32,117.9,86.24,29.79a11.91,11.91,0,0,0-12.17-.23A11.71,11.71,0,0,0,68,39.89V216.11a11.71,11.71,0,0,0,6.07,10.33,11.91,11.91,0,0,0,12.17-.23L230.32,138.1a11.82,11.82,0,0,0,0-20.2Zm-4.18,13.37L82.06,219.39a4,4,0,0,1-4.07.07,3.77,3.77,0,0,1-2-3.35V39.89a3.77,3.77,0,0,1,2-3.35,4,4,0,0,1,4.07.07l144.08,88.12a3.8,3.8,0,0,1,0,6.54Z"}))]]),up=M.forwardRef((a,b)=>M.createElement(P,{ref:b,...a,weights:uo}));up.displayName="PlayIcon";let uq=["todo","inProgress","attention","done"];function ur(a){return"review"===a.status&&0===a.filesChanged}function us(){return{defaultAgentType:null,modeId:null,configValues:{},autoProcess:!0,maxConcurrent:1,mergeStrategy:"merge",deleteWorktreeDefault:!0,preflightCommand:null,initCommand:null,stagePrompts:null}}let ut=["todo","inProgress","attention","done"],uu={todo:{id:"todo",marker:"var(--text-dim)"},inProgress:{id:"inProgress",marker:"var(--accent)"},attention:{id:"attention",marker:"var(--status-warning)"},done:{id:"done",marker:"var(--status-success)"}},uv=new Map([["bold",M.createElement(M.Fragment,null,M.createElement("path",{d:"M236,128a108,108,0,0,1-216,0c0-42.52,24.73-81.34,63-98.9A12,12,0,1,1,93,50.91C63.24,64.57,44,94.83,44,128a84,84,0,0,0,168,0c0-33.17-19.24-63.43-49-77.09A12,12,0,1,1,173,29.1C211.27,46.66,236,85.48,236,128Z"}))],["duotone",M.createElement(M.Fragment,null,M.createElement("path",{d:"M224,128a96,96,0,1,1-96-96A96,96,0,0,1,224,128Z",opacity:"0.2"}),M.createElement("path",{d:"M232,128a104,104,0,0,1-208,0c0-41,23.81-78.36,60.66-95.27a8,8,0,0,1,6.68,14.54C60.15,61.59,40,93.27,40,128a88,88,0,0,0,176,0c0-34.73-20.15-66.41-51.34-80.73a8,8,0,0,1,6.68-14.54C208.19,49.64,232,87,232,128Z"}))],["fill",M.createElement(M.Fragment,null,M.createElement("path",{d:"M128,24A104,104,0,1,0,232,128,104.11,104.11,0,0,0,128,24Zm0,176A72,72,0,0,1,92,65.64a8,8,0,0,1,8,13.85,56,56,0,1,0,56,0,8,8,0,0,1,8-13.85A72,72,0,0,1,128,200Z"}))],["light",M.createElement(M.Fragment,null,M.createElement("path",{d:"M230,128a102,102,0,0,1-204,0c0-40.18,23.35-76.86,59.5-93.45a6,6,0,0,1,5,10.9C58.61,60.09,38,92.49,38,128a90,90,0,0,0,180,0c0-35.51-20.61-67.91-52.5-82.55a6,6,0,0,1,5-10.9C206.65,51.14,230,87.82,230,128Z"}))],["regular",M.createElement(M.Fragment,null,M.createElement("path",{d:"M232,128a104,104,0,0,1-208,0c0-41,23.81-78.36,60.66-95.27a8,8,0,0,1,6.68,14.54C60.15,61.59,40,93.27,40,128a88,88,0,0,0,176,0c0-34.73-20.15-66.41-51.34-80.73a8,8,0,0,1,6.68-14.54C208.19,49.64,232,87,232,128Z"}))],["thin",M.createElement(M.Fragment,null,M.createElement("path",{d:"M228,128a100,100,0,0,1-200,0c0-39.4,22.9-75.37,58.33-91.63a4,4,0,1,1,3.34,7.27C57.07,58.6,36,91.71,36,128a92,92,0,0,0,184,0c0-36.29-21.07-69.4-53.67-84.36a4,4,0,1,1,3.34-7.27C205.1,52.63,228,88.6,228,128Z"}))]]),uw=M.forwardRef((a,b)=>M.createElement(P,{ref:b,...a,weights:uv}));uw.displayName="CircleNotchIcon";let ux=new Map([["bold",M.createElement(M.Fragment,null,M.createElement("path",{d:"M128,20A108,108,0,1,0,236,128,108.12,108.12,0,0,0,128,20Zm84,108a83.6,83.6,0,0,1-16.75,50.28L77.72,60.75A84,84,0,0,1,212,128ZM44,128A83.6,83.6,0,0,1,60.75,77.72L178.28,195.25A84,84,0,0,1,44,128Z"}))],["duotone",M.createElement(M.Fragment,null,M.createElement("path",{d:"M224,128a96,96,0,1,1-96-96A96,96,0,0,1,224,128Z",opacity:"0.2"}),M.createElement("path",{d:"M128,24A104,104,0,1,0,232,128,104.11,104.11,0,0,0,128,24Zm88,104a87.56,87.56,0,0,1-20.41,56.28L71.72,60.4A88,88,0,0,1,216,128ZM40,128A87.56,87.56,0,0,1,60.41,71.72L184.28,195.6A88,88,0,0,1,40,128Z"}))],["fill",M.createElement(M.Fragment,null,M.createElement("path",{d:"M200,128a71.69,71.69,0,0,1-15.78,44.91L83.09,71.78A71.95,71.95,0,0,1,200,128ZM56,128a71.95,71.95,0,0,0,116.91,56.22L71.78,83.09A71.69,71.69,0,0,0,56,128Zm180,0A108,108,0,1,1,128,20,108.12,108.12,0,0,1,236,128Zm-20,0a88,88,0,1,0-88,88A88.1,88.1,0,0,0,216,128Z"}))],["light",M.createElement(M.Fragment,null,M.createElement("path",{d:"M128,26A102,102,0,1,0,230,128,102.12,102.12,0,0,0,128,26Zm90,102a89.6,89.6,0,0,1-22.29,59.22L68.78,60.29A89.95,89.95,0,0,1,218,128ZM38,128A89.6,89.6,0,0,1,60.29,68.78L187.22,195.71A89.95,89.95,0,0,1,38,128Z"}))],["regular",M.createElement(M.Fragment,null,M.createElement("path",{d:"M128,24A104,104,0,1,0,232,128,104.11,104.11,0,0,0,128,24Zm88,104a87.56,87.56,0,0,1-20.41,56.28L71.72,60.4A88,88,0,0,1,216,128ZM40,128A87.56,87.56,0,0,1,60.41,71.72L184.28,195.6A88,88,0,0,1,40,128Z"}))],["thin",M.createElement(M.Fragment,null,M.createElement("path",{d:"M128,28A100,100,0,1,0,228,128,100.11,100.11,0,0,0,128,28Zm92,100a91.67,91.67,0,0,1-24.21,62.13L65.87,60.21A92,92,0,0,1,220,128ZM36,128A91.67,91.67,0,0,1,60.21,65.87L190.13,195.79A92,92,0,0,1,36,128Z"}))]]),uy=M.forwardRef((a,b)=>M.createElement(P,{ref:b,...a,weights:ux}));uy.displayName="ProhibitIcon";let uz=new Map([["bold",M.createElement(M.Fragment,null,M.createElement("path",{d:"M208,108a36.05,36.05,0,0,0-33.38,22.54l-39-5.57a4,4,0,0,1-2.47-1.35L100.55,85.53A36,36,0,1,0,68,89.94v76.12a36,36,0,1,0,24,0V112.44l23,26.8a28,28,0,0,0,17.3,9.49l41.34,5.91A36,36,0,1,0,208,108ZM80,44A12,12,0,1,1,68,56,12,12,0,0,1,80,44Zm0,168a12,12,0,1,1,12-12A12,12,0,0,1,80,212Zm128-56a12,12,0,1,1,12-12A12,12,0,0,1,208,156Z"}))],["duotone",M.createElement(M.Fragment,null,M.createElement("path",{d:"M104,56A24,24,0,1,1,80,32,24,24,0,0,1,104,56Z",opacity:"0.2"}),M.createElement("path",{d:"M208,112a32.05,32.05,0,0,0-30.69,23l-42.21-6a8,8,0,0,1-4.95-2.71L94.43,84.55A32,32,0,1,0,72,87v82a32,32,0,1,0,16,0V101.63l30,35a24,24,0,0,0,14.83,8.14l44,6.28A32,32,0,1,0,208,112ZM64,56A16,16,0,1,1,80,72,16,16,0,0,1,64,56ZM96,200a16,16,0,1,1-16-16A16,16,0,0,1,96,200Zm112-40a16,16,0,1,1,16-16A16,16,0,0,1,208,160Z"}))],["fill",M.createElement(M.Fragment,null,M.createElement("path",{d:"M208,112a32.05,32.05,0,0,0-30.69,23l-42.21-6a8,8,0,0,1-4.95-2.71L94.43,84.55A32,32,0,1,0,72,87v82a32,32,0,1,0,16,0V101.63l30,35a24,24,0,0,0,14.83,8.14l44,6.28A32,32,0,1,0,208,112ZM96,200a16,16,0,1,1-16-16A16,16,0,0,1,96,200Zm112-40a16,16,0,1,1,16-16A16,16,0,0,1,208,160Z"}))],["light",M.createElement(M.Fragment,null,M.createElement("path",{d:"M208,114a30,30,0,0,0-29.21,23.19l-44-6.28a10,10,0,0,1-6.18-3.39L91.18,83.83A30,30,0,1,0,74,85.4v85.2a30,30,0,1,0,12,0V96.22l33.52,39.11a22,22,0,0,0,13.6,7.46l45.35,6.48A30,30,0,1,0,208,114ZM62,56A18,18,0,1,1,80,74,18,18,0,0,1,62,56ZM98,200a18,18,0,1,1-18-18A18,18,0,0,1,98,200Zm110-38a18,18,0,1,1,18-18A18,18,0,0,1,208,162Z"}))],["regular",M.createElement(M.Fragment,null,M.createElement("path",{d:"M208,112a32.05,32.05,0,0,0-30.69,23l-42.21-6a8,8,0,0,1-4.95-2.71L94.43,84.55A32,32,0,1,0,72,87v82a32,32,0,1,0,16,0V101.63l30,35a24,24,0,0,0,14.83,8.14l44,6.28A32,32,0,1,0,208,112ZM64,56A16,16,0,1,1,80,72,16,16,0,0,1,64,56ZM96,200a16,16,0,1,1-16-16A16,16,0,0,1,96,200Zm112-40a16,16,0,1,1,16-16A16,16,0,0,1,208,160Z"}))],["thin",M.createElement(M.Fragment,null,M.createElement("path",{d:"M208,116a28,28,0,0,0-27.62,23.44l-45.85-6.55a12,12,0,0,1-7.41-4.07L87.75,82.9A28,28,0,1,0,76,83.71v88.58a28,28,0,1,0,8,0V90.81L121,134a20,20,0,0,0,12.36,6.78l46.83,6.69A28,28,0,1,0,208,116ZM60,56A20,20,0,1,1,80,76,20,20,0,0,1,60,56Zm40,144a20,20,0,1,1-20-20A20,20,0,0,1,100,200Zm108-36a20,20,0,1,1,20-20A20,20,0,0,1,208,164Z"}))]]),uA=M.forwardRef((a,b)=>M.createElement(P,{ref:b,...a,weights:uz}));function uB({task:a}){let{t:b}=(0,bb.s)(),c=b("failed"===a.status&&"interrupted"===a.failureReason?"tasks.statusInterrupted":function(a){switch(a){case"todo":return"tasks.statusTodo";case"queued":return"tasks.statusQueued";case"preparing":return"tasks.statusPreparing";case"running":return"tasks.statusRunning";case"awaiting_input":return"tasks.statusAwaitingInput";case"review":return"tasks.statusReview";case"merging":return"tasks.statusMerging";case"done":return"tasks.statusDone";case"failed":return"tasks.statusFailed";case"canceled":return"tasks.statusCanceled"}}(a.status)),d={display:"inline-flex",alignItems:"center",gap:4,borderRadius:999,padding:"2px 8px",fontSize:10,fontWeight:600,lineHeight:1.4,flexShrink:0,whiteSpace:"nowrap"};switch(a.status){case"queued":case"preparing":case"running":case"merging":return(0,L.jsxs)("span",{style:{...d,color:"var(--accent)"},children:[(0,L.jsx)(uw,{size:11,className:"pi-spin",style:{animation:"pi-spin 1s linear infinite"},"aria-hidden":"true"}),c]});case"awaiting_input":case"review":return(0,L.jsx)("span",{style:{...d,border:"1px solid rgba(245,158,11,0.45)",background:"rgba(245,158,11,0.08)",color:"var(--status-warning)"},children:c});case"done":return(0,L.jsxs)("span",{style:{...d,background:"rgba(16,185,129,0.12)",color:"#059669"},children:[(0,L.jsx)(ac,{size:10,weight:"bold","aria-hidden":"true"}),c]});case"failed":return(0,L.jsx)("span",{style:{...d,background:"rgba(239,68,68,0.12)",color:"var(--status-error)"},children:c});default:return(0,L.jsx)("span",{style:{...d,background:"var(--bg-hover)",color:"var(--text-muted)"},children:c})}}function uC({task:a}){let b=a.preflight;if(!b||"review"!==a.status)return null;let c="passed"===b.status?{background:"rgba(16,185,129,0.12)",color:"#059669"}:"failed"===b.status?{background:"rgba(239,68,68,0.12)",color:"var(--status-error)"}:{background:"var(--bg-hover)",color:"var(--text-muted)"};return(0,L.jsxs)("span",{style:{display:"inline-flex",alignItems:"center",gap:4,borderRadius:999,padding:"1px 6px",fontSize:10,fontWeight:500,lineHeight:1.5,maxWidth:"100%",...c},title:b.command,children:["running"===b.status?(0,L.jsx)(uw,{size:10,style:{animation:"pi-spin 1s linear infinite"},"aria-hidden":"true"}):"passed"===b.status?(0,L.jsx)(bm,{size:10,"aria-hidden":"true"}):(0,L.jsx)(ei,{size:10,"aria-hidden":"true"}),(0,L.jsx)("span",{style:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:b.command})]})}function uD({task:a,folderName:b,now:c,onOpen:d,onStart:e,onCancel:f,onRetry:g,onRequeue:h,onViewSession:i,onMerge:j,onArchive:k,onEdit:l}){let{t:m}=(0,bb.s)(),n=null!=a.archivedAt,o="running"===a.status||"awaiting_input"===a.status||"merging"===a.status,p=null!=a.filesChanged&&a.filesChanged>0?(0,L.jsxs)("span",{style:{display:"inline-flex",alignItems:"center",gap:3,fontFamily:"var(--font-mono)",fontSize:10},children:[(0,L.jsxs)("span",{style:{color:"#059669"},children:["+",a.additions??0]}),(0,L.jsxs)("span",{style:{color:"var(--status-error)"},children:["-",a.deletions??0]})]}):null,q=function(a,b){if(!a)return"";let c=new Date(a).getTime();if(Number.isNaN(c))return"";let d=Math.floor(Math.max(0,b-c)/6e4);if(d<1)return"now";if(d<60)return`${d}m`;let e=Math.floor(d/60);if(e<24)return`${e}h`;let f=Math.floor(e/24);return`${f}d`}(a.finishedAt??a.settledAt??a.startedAt??a.createdAt,c),{primary:r,more:s}=(()=>{let b=[],c=null;if(n)return{primary:c={icon:aC,label:m("tasks.actionUnarchive"),onClick:k},more:b};switch(a.status){case"todo":c={icon:up,label:m("tasks.actionStart"),onClick:e},b.push({icon:rK,label:m("tasks.actionEdit"),onClick:l});break;case"queued":case"preparing":case"running":case"awaiting_input":c={icon:uy,label:m("tasks.actionCancel"),onClick:f};break;case"review":c=ur(a)?{icon:ac,label:m("tasks.actionComplete"),onClick:j}:{icon:uA,label:m("tasks.actionMerge"),onClick:j};break;case"merging":break;case"failed":c={icon:aw,label:m("tasks.actionRetry"),onClick:g},b.push({icon:rK,label:m("tasks.actionEdit"),onClick:l}),b.push({icon:aC,label:m("tasks.actionArchive"),onClick:k});break;case"done":c={icon:aC,label:m("tasks.actionArchive"),onClick:k};break;case"canceled":c={icon:qZ,label:m("tasks.actionRequeue"),onClick:h},b.push({icon:aC,label:m("tasks.actionArchive"),onClick:k})}return{primary:c,more:b}})(),t=[...s];return null!=a.conversationId&&t.push({icon:qX,label:m("tasks.actionViewSession"),onClick:i}),(0,L.jsxs)("div",{role:"button",tabIndex:0,onClick:d,onKeyDown:a=>{("Enter"===a.key||" "===a.key)&&(a.preventDefault(),d())},style:{display:"flex",flexDirection:"column",cursor:"pointer",borderRadius:12,border:"1px solid color-mix(in srgb, var(--border) 85%, transparent)",background:"var(--bg-panel)",padding:12,textAlign:"left",transition:"border-color 0.12s",opacity:n?.6:1,boxShadow:"0 1px 2px rgba(0,0,0,0.04)"},className:"task-card-hover",onMouseEnter:a=>{a.currentTarget.style.borderColor="var(--accent)"},onMouseLeave:a=>{a.currentTarget.style.borderColor="color-mix(in srgb, var(--border) 85%, transparent)"},children:[(0,L.jsxs)("div",{style:{display:"flex",alignItems:"flex-start",justifyContent:"space-between",gap:8},children:[(0,L.jsx)("span",{style:{minWidth:0,overflowWrap:"break-word",fontSize:13,fontWeight:500,lineHeight:1.4},children:a.title}),(0,L.jsx)(uB,{task:a})]}),(0,L.jsxs)("div",{style:{display:"flex",flexWrap:"wrap",alignItems:"center",gap:"2px 6px",marginTop:6,fontSize:11,color:"var(--text-muted)"},children:[b?(0,L.jsx)("span",{style:{maxWidth:160,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:b}):null,b&&a.workBranch?(0,L.jsx)("span",{style:{opacity:.5},children:"/"}):null,a.workBranch?(0,L.jsx)("span",{style:{fontFamily:"var(--font-mono)",fontSize:10,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",maxWidth:180},children:a.workBranch}):null,(b||a.workBranch)&&(p||q)?(0,L.jsx)("span",{style:{opacity:.5},children:"\xb7"}):null,p,p&&q?(0,L.jsx)("span",{style:{opacity:.5},children:"\xb7"}):null,q?(0,L.jsx)("span",{style:{flexShrink:0},children:q}):null,(0,L.jsx)(uC,{task:a})]}),a.lastError&&("failed"===a.status||"review"===a.status)?(0,L.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:6,marginTop:8,borderRadius:8,background:"rgba(239,68,68,0.08)",padding:"6px 8px",fontSize:11,color:"var(--status-error)"},children:[(0,L.jsx)(qw,{size:13,style:{flexShrink:0},"aria-hidden":"true"}),(0,L.jsx)("span",{style:{minWidth:0,flex:1,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a.lastError}),(0,L.jsx)("button",{type:"button",style:{flexShrink:0,fontWeight:600,background:"none",border:"none",cursor:"pointer",color:"inherit",fontSize:11,textDecoration:"underline"},onClick:a=>{a.stopPropagation(),d()},children:m("tasks.errorView")})]}):null,"review"===a.status&&a.resultSummary?(0,L.jsx)("p",{style:{margin:"6px 0 0",display:"-webkit-box",WebkitLineClamp:2,WebkitBoxOrient:"vertical",overflow:"hidden",fontSize:11,lineHeight:1.5,color:"var(--text-muted)"},children:a.resultSummary}):null,o&&a.latestProgress?(0,L.jsx)("p",{style:{margin:"6px 0 0",display:"-webkit-box",WebkitLineClamp:2,WebkitBoxOrient:"vertical",overflow:"hidden",fontSize:11,lineHeight:1.5,color:"var(--text-muted)",fontStyle:"italic"},children:a.latestProgress}):null,r||t.length>0?(0,L.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:6,marginTop:12,paddingTop:12,borderTop:"1px solid var(--border)"},children:[r?(0,L.jsxs)("button",{type:"button",onClick:a=>{a.stopPropagation(),r.onClick()},style:{display:"inline-flex",alignItems:"center",gap:5,padding:"4px 10px",borderRadius:7,background:"var(--accent)",color:"var(--accent-fg)",border:"none",cursor:"pointer",fontSize:11,fontWeight:600},children:[(0,L.jsx)(r.icon,{size:12,weight:"bold","aria-hidden":"true"}),r.label]}):null,(0,L.jsx)("div",{style:{flex:1}}),t.map(a=>(0,L.jsx)("button",{type:"button",title:a.label,"aria-label":a.label,onClick:b=>{b.stopPropagation(),a.onClick()},style:{display:"flex",alignItems:"center",justifyContent:"center",width:26,height:26,padding:0,borderRadius:999,background:"none",border:"1px solid var(--border)",color:"var(--text-muted)",cursor:"pointer",opacity:0,transition:"opacity 0.12s, background 0.12s, color 0.12s"},className:"task-card-secondary",onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-hover)",a.currentTarget.style.color="var(--text)"},onMouseLeave:a=>{a.currentTarget.style.background="none",a.currentTarget.style.color="var(--text-muted)"},children:(0,L.jsx)(a.icon,{size:13,"aria-hidden":"true"})},a.label))]}):null]})}function uE({open:a,onOpenChange:b,task:c}){let{t:d}=(0,bb.s)(),{refetch:e}=uh(),[f,g]=(0,M.useState)(""),[h,i]=(0,M.useState)(!1);if(!a||!c)return null;let j=async()=>{if(!h){i(!0);try{await (0,se.oQ)(c.id,c.projectRoot,"cancel",{reason:f.trim()||null}),b(!1),e()}catch(a){console.error("cancel failed",a)}finally{i(!1)}}};return(0,L.jsx)("div",{style:{position:"fixed",inset:0,zIndex:950,display:"flex",alignItems:"center",justifyContent:"center",background:"rgba(0,0,0,0.45)"},children:(0,L.jsxs)("div",{style:{width:"min(440px, calc(100vw - 48px))",background:"var(--bg-panel)",border:"1px solid var(--border)",borderRadius:14,boxShadow:"0 16px 48px rgba(0,0,0,0.3)"},children:[(0,L.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"14px 16px 0"},children:[(0,L.jsx)("h3",{style:{fontSize:15,fontWeight:600,margin:0},children:d("tasks.cancelTitle")}),(0,L.jsx)("button",{type:"button",onClick:()=>b(!1),"aria-label":d("i18n.close"),style:{background:"none",border:"none",cursor:"pointer",color:"var(--text-muted)",padding:4,display:"flex"},children:(0,L.jsx)($,{size:16,"aria-hidden":"true"})})]}),(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:12,padding:"14px 16px 16px"},children:[(0,L.jsx)("p",{style:{margin:0,fontSize:12,lineHeight:1.5,color:"var(--text-muted)"},children:d("tasks.cancelDescription")}),(0,L.jsxs)("label",{style:{display:"flex",flexDirection:"column",gap:5},children:[(0,L.jsx)("span",{style:{fontSize:12,color:"var(--text-muted)"},children:d("tasks.cancelReasonLabel")}),(0,L.jsx)("textarea",{value:f,onChange:a=>g(a.target.value),placeholder:d("tasks.cancelReasonPlaceholder"),rows:3,autoFocus:!0,style:{width:"100%",background:"var(--bg)",border:"1px solid var(--border)",borderRadius:8,padding:"8px 10px",color:"var(--text)",fontSize:13,outline:"none",fontFamily:"inherit",resize:"vertical"}})]}),(0,L.jsxs)("div",{style:{display:"flex",justifyContent:"flex-end",gap:8,marginTop:4},children:[(0,L.jsx)("button",{type:"button",onClick:()=>b(!1),disabled:h,style:{padding:"8px 14px",borderRadius:8,background:"none",border:"1px solid var(--border)",color:"var(--text)",fontSize:12,cursor:"pointer"},children:d("tasks.cancelKeep")}),(0,L.jsx)("button",{type:"button",onClick:()=>void j(),disabled:h,style:{padding:"8px 16px",borderRadius:8,background:"var(--accent)",color:"var(--accent-fg)",border:"none",fontSize:12,fontWeight:600,cursor:"pointer"},children:d("tasks.cancelSubmit")})]})]})]})})}function uF({open:a,onOpenChange:b,task:c}){let{t:d}=(0,bb.s)(),{refetch:e}=uh(),[f,g]=(0,M.useState)(!0),[h,i]=(0,M.useState)(!1),j=c?.worktreePath!=null;if(!a||!c)return null;let k=async()=>{if(!h){i(!0);try{await (0,se.ZX)(c.id,c.projectRoot,j&&f),b(!1),e()}catch(a){console.error("complete failed",a)}finally{i(!1)}}};return(0,L.jsx)("div",{style:{position:"fixed",inset:0,zIndex:950,display:"flex",alignItems:"center",justifyContent:"center",background:"rgba(0,0,0,0.45)"},children:(0,L.jsxs)("div",{style:{width:"min(440px, calc(100vw - 48px))",background:"var(--bg-panel)",border:"1px solid var(--border)",borderRadius:14,boxShadow:"0 16px 48px rgba(0,0,0,0.3)"},children:[(0,L.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"14px 16px 0"},children:[(0,L.jsx)("h3",{style:{fontSize:15,fontWeight:600,margin:0},children:d("tasks.completeTitle")}),(0,L.jsx)("button",{type:"button",onClick:()=>b(!1),"aria-label":d("i18n.close"),style:{background:"none",border:"none",cursor:"pointer",color:"var(--text-muted)",padding:4,display:"flex"},children:(0,L.jsx)($,{size:16,"aria-hidden":"true"})})]}),(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:12,padding:"14px 16px 16px"},children:[(0,L.jsx)("p",{style:{margin:0,fontSize:12,lineHeight:1.5,color:"var(--text-muted)"},children:d("tasks.completeDescription")}),j?(0,L.jsxs)("label",{style:{display:"flex",alignItems:"center",gap:8,fontSize:13,cursor:"pointer"},children:[(0,L.jsx)("input",{type:"checkbox",checked:f,onChange:a=>g(a.target.checked),style:{accentColor:"var(--accent)"}}),d("tasks.completeDeleteWorktree")]}):null,(0,L.jsxs)("div",{style:{display:"flex",justifyContent:"flex-end",gap:8,marginTop:4},children:[(0,L.jsx)("button",{type:"button",onClick:()=>b(!1),disabled:h,style:{padding:"8px 14px",borderRadius:8,background:"none",border:"1px solid var(--border)",color:"var(--text)",fontSize:12,cursor:"pointer"},children:d("i18n.cancel")}),(0,L.jsx)("button",{type:"button",onClick:()=>void k(),disabled:h,style:{padding:"8px 16px",borderRadius:8,background:"var(--accent)",color:"var(--accent-fg)",border:"none",fontSize:12,fontWeight:600,cursor:"pointer"},children:d("tasks.completeSubmit")})]})]})]})})}uA.displayName="GitMergeIcon";let uG=new Map([["bold",M.createElement(M.Fragment,null,M.createElement("path",{d:"M244,116H186.79a60,60,0,0,0-117.58,0H12a12,12,0,0,0,0,24H69.21a60,60,0,0,0,117.58,0H244a12,12,0,0,0,0-24ZM128,164a36,36,0,1,1,36-36A36,36,0,0,1,128,164Z"}))],["duotone",M.createElement(M.Fragment,null,M.createElement("path",{d:"M176,128a48,48,0,1,1-48-48A48,48,0,0,1,176,128Z",opacity:"0.2"}),M.createElement("path",{d:"M248,120H183.42a56,56,0,0,0-110.84,0H8a8,8,0,0,0,0,16H72.58a56,56,0,0,0,110.84,0H248a8,8,0,0,0,0-16ZM128,168a40,40,0,1,1,40-40A40,40,0,0,1,128,168Z"}))],["fill",M.createElement(M.Fragment,null,M.createElement("path",{d:"M256,128a8,8,0,0,1-8,8H183.42a56,56,0,0,1-110.84,0H8a8,8,0,0,1,0-16H72.58a56,56,0,0,1,110.84,0H248A8,8,0,0,1,256,128Z"}))],["light",M.createElement(M.Fragment,null,M.createElement("path",{d:"M248,122H181.66a54,54,0,0,0-107.32,0H8a6,6,0,0,0,0,12H74.34a54,54,0,0,0,107.32,0H248a6,6,0,0,0,0-12ZM128,170a42,42,0,1,1,42-42A42,42,0,0,1,128,170Z"}))],["regular",M.createElement(M.Fragment,null,M.createElement("path",{d:"M248,120H183.42a56,56,0,0,0-110.84,0H8a8,8,0,0,0,0,16H72.58a56,56,0,0,0,110.84,0H248a8,8,0,0,0,0-16ZM128,168a40,40,0,1,1,40-40A40,40,0,0,1,128,168Z"}))],["thin",M.createElement(M.Fragment,null,M.createElement("path",{d:"M248,124H179.83a52,52,0,0,0-103.66,0H8a4,4,0,0,0,0,8H76.17a52,52,0,0,0,103.66,0H248a4,4,0,0,0,0-8ZM128,172a44,44,0,1,1,44-44A44.05,44.05,0,0,1,128,172Z"}))]]),uH=M.forwardRef((a,b)=>M.createElement(P,{ref:b,...a,weights:uG}));uH.displayName="GitCommitIcon";let uI=new Map([["bold",M.createElement(M.Fragment,null,M.createElement("path",{d:"M112,148a12,12,0,0,0-12,12v19L69.17,148.2A4,4,0,0,1,68,145.37V97.94a36,36,0,1,0-24,0v47.43a27.81,27.81,0,0,0,8.2,19.8L83,196H64a12,12,0,0,0,0,24h48a12,12,0,0,0,12-12V160A12,12,0,0,0,112,148ZM56,52A12,12,0,1,1,44,64,12,12,0,0,1,56,52ZM212,158.06V110.63a27.81,27.81,0,0,0-8.2-19.8L173,60h19a12,12,0,0,0,0-24H144a12,12,0,0,0-12,12V96a12,12,0,0,0,24,0V77l30.83,30.83a4,4,0,0,1,1.17,2.83v47.43a36,36,0,1,0,24,0ZM200,204a12,12,0,1,1,12-12A12,12,0,0,1,200,204Z"}))],["duotone",M.createElement(M.Fragment,null,M.createElement("path",{d:"M80,64A24,24,0,1,1,56,40,24,24,0,0,1,80,64ZM200,168a24,24,0,1,0,24,24A24,24,0,0,0,200,168Z",opacity:"0.2"}),M.createElement("path",{d:"M112,152a8,8,0,0,0-8,8v28.69L66.34,151A8,8,0,0,1,64,145.37V95a32,32,0,1,0-16,0v50.38a23.85,23.85,0,0,0,7,17L92.69,200H64a8,8,0,0,0,0,16h48a8,8,0,0,0,8-8V160A8,8,0,0,0,112,152ZM40,64A16,16,0,1,1,56,80,16,16,0,0,1,40,64Zm168,97V110.63a23.85,23.85,0,0,0-7-17L163.31,56H192a8,8,0,0,0,0-16H144a8,8,0,0,0-8,8V96a8,8,0,0,0,16,0V67.31L189.66,105a8,8,0,0,1,2.34,5.66V161a32,32,0,1,0,16,0Zm-8,47a16,16,0,1,1,16-16A16,16,0,0,1,200,208Z"}))],["fill",M.createElement(M.Fragment,null,M.createElement("path",{d:"M118.18,213.08c-.11.14-.24.27-.36.4l-.16.18-.17.15a4.83,4.83,0,0,1-.42.37,3.92,3.92,0,0,1-.32.25l-.3.22-.38.23a2.91,2.91,0,0,1-.3.17l-.37.19-.34.15-.36.13a2.84,2.84,0,0,1-.38.13l-.36.1c-.14,0-.26.07-.4.09l-.42.07-.35.05a7,7,0,0,1-.79,0H64a8,8,0,0,1,0-16H92.69L55,162.34a23.85,23.85,0,0,1-7-17V95a32,32,0,1,1,16,0v50.38A8,8,0,0,0,66.34,151L104,188.69V160a8,8,0,0,1,16,0v48a7,7,0,0,1,0,.8c0,.11,0,.21,0,.32s0,.3-.07.46a2.83,2.83,0,0,1-.09.37c0,.13-.06.26-.1.39s-.08.23-.12.35l-.14.39-.15.31c-.06.13-.12.27-.19.4s-.11.18-.16.28l-.24.39-.21.28ZM208,161V110.63a23.85,23.85,0,0,0-7-17L163.31,56H192a8,8,0,0,0,0-16H143.82l-.6,0c-.14,0-.28,0-.41.06l-.37,0-.43.11-.33.08-.4.14-.34.13-.35.16-.36.18a3.14,3.14,0,0,0-.31.18c-.12.07-.25.14-.36.22a3.55,3.55,0,0,0-.31.23,3.81,3.81,0,0,0-.32.24c-.15.12-.28.24-.42.37l-.17.15-.16.18c-.12.13-.25.26-.36.4l-.26.35-.21.28-.24.39c-.05.1-.11.19-.16.28s-.13.27-.19.4l-.15.31-.14.39c0,.12-.09.23-.12.35s-.07.26-.1.39a2.83,2.83,0,0,0-.09.37c0,.16,0,.31-.07.46s0,.21-.05.32a7,7,0,0,0,0,.8V96a8,8,0,0,0,16,0V67.31L189.66,105a8,8,0,0,1,2.34,5.66V161a32,32,0,1,0,16,0Z"}))],["light",M.createElement(M.Fragment,null,M.createElement("path",{d:"M112,154a6,6,0,0,0-6,6v33.52L64.93,152.44A9.93,9.93,0,0,1,62,145.37v-52a30,30,0,1,0-12,0v52a21.88,21.88,0,0,0,6.44,15.56L97.52,202H64a6,6,0,0,0,0,12h48a6,6,0,0,0,6-6V160A6,6,0,0,0,112,154ZM38,64A18,18,0,1,1,56,82,18,18,0,0,1,38,64Zm168,98.6v-52a21.88,21.88,0,0,0-6.44-15.56L158.48,54H192a6,6,0,0,0,0-12H144a6,6,0,0,0-6,6V96a6,6,0,0,0,12,0V62.48l41.07,41.08a9.93,9.93,0,0,1,2.93,7.07v52a30,30,0,1,0,12,0ZM200,210a18,18,0,1,1,18-18A18,18,0,0,1,200,210Z"}))],["regular",M.createElement(M.Fragment,null,M.createElement("path",{d:"M112,152a8,8,0,0,0-8,8v28.69L66.34,151A8,8,0,0,1,64,145.37V95a32,32,0,1,0-16,0v50.38a23.85,23.85,0,0,0,7,17L92.69,200H64a8,8,0,0,0,0,16h48a8,8,0,0,0,8-8V160A8,8,0,0,0,112,152ZM40,64A16,16,0,1,1,56,80,16,16,0,0,1,40,64Zm168,97V110.63a23.85,23.85,0,0,0-7-17L163.31,56H192a8,8,0,0,0,0-16H144a8,8,0,0,0-8,8V96a8,8,0,0,0,16,0V67.31L189.66,105a8,8,0,0,1,2.34,5.66V161a32,32,0,1,0,16,0Zm-8,47a16,16,0,1,1,16-16A16,16,0,0,1,200,208Z"}))],["thin",M.createElement(M.Fragment,null,M.createElement("path",{d:"M112,156a4,4,0,0,0-4,4v38.34L63.51,153.86A12,12,0,0,1,60,145.37V91.71a28,28,0,1,0-8,0v53.66a19.85,19.85,0,0,0,5.86,14.14L102.34,204H64a4,4,0,0,0,0,8h48a4,4,0,0,0,4-4V160A4,4,0,0,0,112,156ZM36,64A20,20,0,1,1,56,84,20,20,0,0,1,36,64ZM204,164.29V110.63a19.85,19.85,0,0,0-5.86-14.14L153.66,52H192a4,4,0,0,0,0-8H144a4,4,0,0,0-4,4V96a4,4,0,0,0,8,0V57.66l44.49,44.48a12,12,0,0,1,3.51,8.49v53.66a28,28,0,1,0,8,0ZM200,212a20,20,0,1,1,20-20A20,20,0,0,1,200,212Z"}))]]),uJ=M.forwardRef((a,b)=>M.createElement(P,{ref:b,...a,weights:uI}));function uK({open:a,onOpenChange:b,task:c,onViewSession:d,onMerge:e,onEdit:f,onCancel:g,onRetry:h,onRequeue:i,onComplete:j}){let{t:k}=(0,bb.s)(),{refetch:l}=uh(),[m,n]=(0,M.useState)([]),[o,p]=(0,M.useState)([]),[q,r]=(0,M.useState)(null),[s,t]=(0,M.useState)(null),[u,v]=(0,M.useState)(!1),[w,x]=(0,M.useState)(!1),[y,z]=(0,M.useState)(""),[A,B]=(0,M.useState)(!1),[C,D]=(0,M.useState)(!1),[E,F]=(0,M.useState)(!1),G=c?.id??null,H=c?.projectRoot??null;(0,M.useCallback)(async()=>{if(null==G||null==H)return;let[a,b]=await Promise.all([(0,se.HB)(H,G).catch(()=>[]),c?.worktreePath?(0,se.JH)(H,G).then(a=>a.files).catch(()=>[]):Promise.resolve([])]);n(a),p(b)},[G,H,c?.worktreePath]);let I=(0,M.useCallback)(async a=>{F(!0);try{await a()}catch(a){console.error("detail action failed",a)}finally{F(!1),l()}},[l]),J=(0,M.useCallback)(async a=>{if(null!=H&&null!=G){v(!0);try{let b=await (0,se.h)(H,G,a);t(b.supported&&b.patch?b.patch:null)}catch{t(null)}finally{v(!1)}}},[H,G]),K=async()=>{null!=c&&null!=H&&(await I(()=>(0,se.bH)(c.id,H,C)),b(!1))},N=async()=>{null!=c&&null!=H&&y.trim()&&(await I(()=>(0,se.in)(c.id,H,y.trim())),x(!1),z(""))};if(!a||null==c||null==H)return null;let O=[];if(null==c.archivedAt)switch(c.status){case"todo":O.push({label:k("tasks.actionStart"),icon:up,onClick:()=>void I(()=>(0,se.oQ)(c.id,H,"start")),filled:!0}),O.push({label:k("tasks.actionEdit"),icon:rK,onClick:()=>f(c)});break;case"queued":case"preparing":case"running":case"awaiting_input":O.push({label:k("tasks.actionCancel"),icon:uy,onClick:()=>g(c),danger:!0});break;case"review":O.push({label:ur(c)?k("tasks.actionComplete"):k("tasks.actionMerge"),icon:ur(c)?ac:uH,onClick:()=>ur(c)?j(c):e(c),filled:!0}),O.push({label:k("tasks.actionReturn"),icon:qZ,onClick:()=>x(!0)});break;case"failed":O.push({label:k("tasks.actionRetry"),icon:aw,onClick:()=>h(c),filled:!0}),O.push({label:k("tasks.actionEdit"),icon:rK,onClick:()=>f(c)});break;case"done":O.push({label:k("tasks.actionArchive"),icon:aC,onClick:()=>void I(()=>(0,se.et)(c.id,H,!0))});break;case"canceled":O.push({label:k("tasks.actionRequeue"),icon:qZ,onClick:()=>i(c),filled:!0})}else O.push({label:k("tasks.actionUnarchive"),icon:aC,onClick:()=>void I(()=>(0,se.et)(c.id,H,!1))});return null!=c.conversationId&&O.push({label:k("tasks.actionViewSession"),icon:qX,onClick:()=>d(c)}),(0,L.jsx)("div",{style:{position:"fixed",inset:0,zIndex:800,background:"rgba(0,0,0,0.35)"},children:(0,L.jsxs)("div",{style:{position:"absolute",top:0,right:0,bottom:0,width:"min(480px, 90vw)",background:"var(--bg-panel)",borderLeft:"1px solid var(--border)",display:"flex",flexDirection:"column",boxShadow:"-8px 0 32px rgba(0,0,0,0.2)"},children:[(0,L.jsxs)("div",{style:{display:"flex",alignItems:"flex-start",justifyContent:"space-between",gap:12,padding:"16px 16px 0"},children:[(0,L.jsxs)("div",{style:{minWidth:0},children:[(0,L.jsx)("h3",{style:{margin:0,fontSize:15,fontWeight:600,lineHeight:1.4,overflowWrap:"break-word"},children:c.title}),(0,L.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8,marginTop:6},children:[(0,L.jsx)(uB,{task:c}),c.workBranch?(0,L.jsxs)("span",{style:{display:"inline-flex",alignItems:"center",gap:4,fontFamily:"var(--font-mono)",fontSize:11,color:"var(--text-muted)"},children:[(0,L.jsx)(am,{size:12,"aria-hidden":"true"}),c.workBranch]}):null]})]}),(0,L.jsx)("button",{type:"button",onClick:()=>b(!1),"aria-label":k("i18n.close"),style:{background:"none",border:"none",cursor:"pointer",color:"var(--text-muted)",padding:4,display:"flex",flexShrink:0},children:(0,L.jsx)($,{size:16,"aria-hidden":"true"})})]}),(0,L.jsx)("div",{style:{display:"flex",flexWrap:"wrap",gap:8,padding:"14px 16px 0"},children:O.map(a=>{let b,c;return(0,L.jsxs)("button",{type:"button",onClick:a.onClick,disabled:E,style:(b=a.filled,c=a.danger,{display:"inline-flex",alignItems:"center",gap:5,padding:"7px 12px",borderRadius:8,fontSize:12,fontWeight:600,cursor:"pointer",background:b?"var(--accent)":c?"rgba(239,68,68,0.1)":"var(--bg-hover)",color:b?"#fff":c?"var(--status-error)":"var(--text)",border:b||c?"none":"1px solid var(--border)"}),children:[(0,L.jsx)(a.icon,{size:13,weight:"bold","aria-hidden":"true"}),a.label]},a.label)})}),w&&(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:8,padding:"12px 16px 0"},children:[(0,L.jsx)("textarea",{value:y,onChange:a=>z(a.target.value),placeholder:k("tasks.returnPlaceholder"),rows:3,style:{width:"100%",background:"var(--bg)",border:"1px solid var(--border)",borderRadius:8,padding:"8px 10px",color:"var(--text)",fontSize:12,resize:"vertical",fontFamily:"inherit"}}),(0,L.jsxs)("div",{style:{display:"flex",justifyContent:"flex-end",gap:8},children:[(0,L.jsx)("button",{type:"button",onClick:()=>x(!1),style:{padding:"6px 12px",borderRadius:8,background:"none",border:"1px solid var(--border)",color:"var(--text)",fontSize:12,cursor:"pointer"},children:k("i18n.cancel")}),(0,L.jsx)("button",{type:"button",onClick:()=>void N(),disabled:!y.trim(),style:{padding:"6px 14px",borderRadius:8,background:"var(--accent)",color:"var(--accent-fg)",border:"none",fontSize:12,fontWeight:600,cursor:"pointer"},children:k("tasks.returnSubmit")})]})]}),(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:6,padding:"14px 16px 0",fontSize:12,color:"var(--text-muted)"},children:[(0,L.jsxs)("div",{style:{display:"flex",gap:6},children:[(0,L.jsx)("span",{style:{flexShrink:0,color:"var(--text-dim)",width:64},children:k("tasks.metaProject")}),(0,L.jsx)("span",{style:{minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",fontFamily:"var(--font-mono)",fontSize:11},children:c.projectRoot})]}),c.createdAt?(0,L.jsxs)("div",{style:{display:"flex",gap:6},children:[(0,L.jsx)("span",{style:{flexShrink:0,color:"var(--text-dim)",width:64},children:k("tasks.metaCreated")}),(0,L.jsx)("span",{children:new Date(c.createdAt).toLocaleString()})]}):null,c.mergeCommit?(0,L.jsxs)("div",{style:{display:"flex",gap:6},children:[(0,L.jsx)("span",{style:{flexShrink:0,color:"var(--text-dim)",width:64},children:k("tasks.metaCommit")}),(0,L.jsx)("span",{style:{fontFamily:"var(--font-mono)",fontSize:11},children:c.mergeCommit})]}):null]}),o.length>0&&(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:4,padding:"14px 16px 0"},children:[(0,L.jsx)("span",{style:{fontSize:11,fontWeight:600,color:"var(--text-muted)",textTransform:"uppercase",letterSpacing:"0.05em"},children:k("tasks.changedFiles")}),(0,L.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:2,maxHeight:140,overflowY:"auto"},children:o.map(a=>(0,L.jsxs)("button",{type:"button",onClick:()=>{var b;r(b=a.file),t(null),J(b)},style:{display:"flex",alignItems:"center",gap:8,textAlign:"left",padding:"4px 6px",borderRadius:6,background:"none",border:"none",color:"var(--text)",fontSize:12,cursor:"pointer"},children:[(0,L.jsx)(uJ,{size:13,style:{flexShrink:0,color:"var(--text-muted)"},"aria-hidden":"true"}),(0,L.jsx)("span",{style:{flex:1,minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",fontFamily:"var(--font-mono)",fontSize:11},children:a.file}),(0,L.jsxs)("span",{style:{fontFamily:"var(--font-mono)",fontSize:10,color:"#059669",flexShrink:0},children:["+",a.additions]}),(0,L.jsxs)("span",{style:{fontFamily:"var(--font-mono)",fontSize:10,color:"var(--status-error)",flexShrink:0},children:["-",a.deletions]})]},a.file))})]}),null!=q&&(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:6,padding:"12px 16px 0",minHeight:0,flexShrink:0},children:[(0,L.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8},children:[(0,L.jsx)("span",{style:{fontSize:11,fontWeight:600,color:"var(--text-muted)"},children:k("tasks.diff")}),(0,L.jsx)("span",{style:{fontFamily:"var(--font-mono)",fontSize:10,color:"var(--text-muted)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",flex:1},children:q}),(0,L.jsx)("button",{type:"button",onClick:()=>r(null),style:{background:"none",border:"none",cursor:"pointer",color:"var(--text-muted)",padding:2,display:"flex"},children:(0,L.jsx)($,{size:12,"aria-hidden":"true"})})]}),u?(0,L.jsx)("div",{style:{fontSize:11,color:"var(--text-muted)",padding:8},children:k("tasks.loading")}):s?(0,L.jsx)("pre",{style:{margin:0,maxHeight:200,overflow:"auto",background:"var(--bg)",border:"1px solid var(--border)",borderRadius:8,padding:10,fontSize:11,lineHeight:1.5,fontFamily:"var(--font-mono)",color:"var(--text-muted)",whiteSpace:"pre"},children:s.split("\n").map((a,b)=>{let c;return a.startsWith("+")&&!a.startsWith("+++")?c="#059669":a.startsWith("-")&&!a.startsWith("---")?c="var(--status-error)":a.startsWith("@@")&&(c="var(--accent)"),(0,L.jsx)("div",{style:{color:c},children:a||" "},b)})}):(0,L.jsx)("div",{style:{fontSize:11,color:"var(--text-muted)",padding:8},children:k("tasks.noDiff")})]}),(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:4,padding:"14px 16px 0",flex:1,minHeight:0},children:[(0,L.jsx)("span",{style:{fontSize:11,fontWeight:600,color:"var(--text-muted)",textTransform:"uppercase",letterSpacing:"0.05em"},children:k("tasks.timeline")}),(0,L.jsx)("div",{style:{flex:1,minHeight:0,overflowY:"auto",paddingBottom:8},children:0===m.length?(0,L.jsx)("div",{style:{fontSize:11,color:"var(--text-dim)",padding:8},children:k("tasks.noEvents")}):(0,L.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:2},children:[...m].reverse().map(a=>{var b;let c,d;return(0,L.jsxs)("div",{style:{display:"flex",gap:8,padding:"4px 6px",borderRadius:6,fontSize:11},children:[(0,L.jsx)("span",{style:{color:"var(--text-dim)",flexShrink:0,fontFamily:"var(--font-mono)",fontSize:10,paddingTop:1},children:new Date(a.createdAt).toLocaleTimeString()}),(0,L.jsx)("span",{style:{color:"var(--text)",flexShrink:0,fontWeight:500},children:(b=a.kind,(d=k(c=`tasks.event_${b}`))===c?b:d)}),a.payload?.feedback?(0,L.jsx)("span",{style:{color:"var(--text-muted)",fontStyle:"italic",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:String(a.payload.feedback)}):null]},a.id)})})})]}),(0,L.jsx)("div",{style:{display:"flex",alignItems:"center",justifyContent:"flex-end",gap:8,padding:"10px 16px",borderTop:"1px solid var(--border)",flexShrink:0},children:A?(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)("label",{style:{display:"flex",alignItems:"center",gap:6,fontSize:12,cursor:"pointer"},children:[(0,L.jsx)("input",{type:"checkbox",checked:C,onChange:a=>D(a.target.checked),style:{accentColor:"var(--accent)"}}),k("tasks.deleteWorktree")]}),(0,L.jsx)("button",{type:"button",onClick:()=>B(!1),style:{padding:"6px 12px",borderRadius:8,background:"none",border:"1px solid var(--border)",color:"var(--text)",fontSize:12,cursor:"pointer"},children:k("i18n.cancel")}),(0,L.jsx)("button",{type:"button",onClick:()=>void K(),disabled:E,style:{padding:"6px 14px",borderRadius:8,background:"var(--status-error)",color:"#fff",border:"none",fontSize:12,fontWeight:600,cursor:"pointer"},children:k("tasks.deleteConfirm")})]}):(0,L.jsxs)("button",{type:"button",onClick:()=>B(!0),style:{display:"inline-flex",alignItems:"center",gap:5,padding:"6px 12px",borderRadius:8,background:"none",border:"1px solid var(--border)",color:"var(--status-error)",fontSize:12,cursor:"pointer"},children:[(0,L.jsx)(ay,{size:13,"aria-hidden":"true"}),k("tasks.delete")]})})]})})}uJ.displayName="GitDiffIcon";let uL=new Map([["bold",M.createElement(M.Fragment,null,M.createElement("path",{d:"M184,28H72A20,20,0,0,0,52,48V224a12,12,0,0,0,18.36,10.18l57.63-36,57.65,36A12,12,0,0,0,204,224V48A20,20,0,0,0,184,28Zm-4,174.35-45.65-28.53a12,12,0,0,0-12.72,0L76,202.35V52H180Z"}))],["duotone",M.createElement(M.Fragment,null,M.createElement("path",{d:"M192,48V224l-64-40L64,224V48a8,8,0,0,1,8-8H184A8,8,0,0,1,192,48Z",opacity:"0.2"}),M.createElement("path",{d:"M184,32H72A16,16,0,0,0,56,48V224a8,8,0,0,0,12.24,6.78L128,193.43l59.77,37.35A8,8,0,0,0,200,224V48A16,16,0,0,0,184,32Zm0,177.57-51.77-32.35a8,8,0,0,0-8.48,0L72,209.57V48H184Z"}))],["fill",M.createElement(M.Fragment,null,M.createElement("path",{d:"M184,32H72A16,16,0,0,0,56,48V224a8,8,0,0,0,12.24,6.78L128,193.43l59.77,37.35A8,8,0,0,0,200,224V48A16,16,0,0,0,184,32Z"}))],["light",M.createElement(M.Fragment,null,M.createElement("path",{d:"M184,34H72A14,14,0,0,0,58,48V224a6,6,0,0,0,9.18,5.09l60.81-38,60.83,38A6,6,0,0,0,198,224V48A14,14,0,0,0,184,34Zm2,179.17-54.83-34.26a6,6,0,0,0-6.36,0L70,213.17V48a2,2,0,0,1,2-2H184a2,2,0,0,1,2,2Z"}))],["regular",M.createElement(M.Fragment,null,M.createElement("path",{d:"M184,32H72A16,16,0,0,0,56,48V224a8,8,0,0,0,12.24,6.78L128,193.43l59.77,37.35A8,8,0,0,0,200,224V48A16,16,0,0,0,184,32Zm0,177.57-51.77-32.35a8,8,0,0,0-8.48,0L72,209.57V48H184Z"}))],["thin",M.createElement(M.Fragment,null,M.createElement("path",{d:"M184,36H72A12,12,0,0,0,60,48V224a4,4,0,0,0,6.12,3.39L128,188.72l61.89,38.67A4,4,0,0,0,192,228a4.06,4.06,0,0,0,1.94-.5A4,4,0,0,0,196,224V48A12,12,0,0,0,184,36Zm4,180.78-57.89-36.17a4,4,0,0,0-4.24,0L68,216.78V48a4,4,0,0,1,4-4H184a4,4,0,0,1,4,4Z"}))]]),uM=M.forwardRef((a,b)=>M.createElement(P,{ref:b,...a,weights:uL}));function uN({open:a,onOpenChange:b,task:c,defaultProject:d,projects:e,prefillTitle:f,prefillPrompt:g,onSubmit:h}){let{t:i}=(0,bb.s)(),[j,k]=(0,M.useState)(""),[l,m]=(0,M.useState)(""),[n,o]=(0,M.useState)(""),[p,q]=(0,M.useState)([]),[r,s]=(0,M.useState)(""),[t,u]=(0,M.useState)(!1);if((0,M.useRef)(!1),!a)return null;let v=async()=>{if(j&&l.trim()&&!t){u(!0);try{await h(j,l.trim(),{prompt:n.trim(),agentType:c?.config?.agentType??null,modelId:c?.config?.modelId??null,thinkingLevel:c?.config?.thinkingLevel??null}),b(!1)}catch(a){console.error("submit task failed",a)}finally{u(!1)}}},w=async()=>{if(r.trim()&&l.trim())try{await (0,se.nY)({name:r.trim(),title:l.trim(),config:{prompt:n.trim()}}),s(""),(0,se.VB)().then(q).catch(()=>void 0)}catch(a){console.error("save template failed",a)}},x=async a=>{try{await (0,se.B_)(a),(0,se.VB)().then(q).catch(()=>void 0)}catch(a){console.error("delete template failed",a)}},y={width:"100%",background:"var(--bg)",border:"1px solid var(--border)",borderRadius:8,padding:"8px 10px",color:"var(--text)",fontSize:13,outline:"none"};return(0,L.jsx)("div",{style:{position:"fixed",inset:0,zIndex:900,display:"flex",alignItems:"center",justifyContent:"center",background:"rgba(0,0,0,0.45)"},children:(0,L.jsxs)("div",{style:{width:"min(520px, calc(100vw - 48px))",maxHeight:"80vh",overflowY:"auto",background:"var(--bg-panel)",border:"1px solid var(--border)",borderRadius:14,boxShadow:"0 16px 48px rgba(0,0,0,0.3)"},children:[(0,L.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"14px 16px 0"},children:[(0,L.jsx)("h3",{style:{fontSize:15,fontWeight:600,margin:0},children:c?i("tasks.editTitle"):i("tasks.newTitle")}),(0,L.jsx)("button",{type:"button",onClick:()=>b(!1),"aria-label":i("i18n.close"),style:{background:"none",border:"none",cursor:"pointer",color:"var(--text-muted)",padding:4,display:"flex"},children:(0,L.jsx)($,{size:16,"aria-hidden":"true"})})]}),(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:12,padding:"14px 16px 16px"},children:[p.length>0&&(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:4},children:[(0,L.jsx)("span",{style:{fontSize:11,fontWeight:600,color:"var(--text-muted)",textTransform:"uppercase",letterSpacing:"0.05em"},children:i("tasks.templates")}),(0,L.jsx)("div",{style:{display:"flex",flexWrap:"wrap",gap:6},children:p.map(a=>(0,L.jsxs)("span",{style:{display:"inline-flex",alignItems:"center",gap:4,borderRadius:999,background:"var(--bg-hover)",padding:"3px 8px",fontSize:11},children:[(0,L.jsx)("button",{type:"button",onClick:()=>{m(a.title),o(a.config?.prompt??"")},style:{background:"none",border:"none",cursor:"pointer",color:"var(--text)",fontSize:11,padding:0},children:a.name}),(0,L.jsx)("button",{type:"button",onClick:()=>void x(a.id),"aria-label":i("tasks.deleteTemplate"),style:{background:"none",border:"none",cursor:"pointer",color:"var(--text-dim)",padding:0,display:"flex"},children:(0,L.jsx)(ay,{size:10,"aria-hidden":"true"})})]},a.id))})]}),(0,L.jsxs)("label",{style:{display:"flex",flexDirection:"column",gap:4},children:[(0,L.jsx)("span",{style:{fontSize:12,fontWeight:500,color:"var(--text)"},children:i("tasks.fieldProject")}),(0,L.jsx)("select",{value:j,onChange:a=>k(a.target.value),style:y,children:e.map(a=>(0,L.jsx)("option",{value:a,children:a.split("/").filter(Boolean).pop()??a},a))})]}),(0,L.jsxs)("label",{style:{display:"flex",flexDirection:"column",gap:4},children:[(0,L.jsx)("span",{style:{fontSize:12,fontWeight:500,color:"var(--text)"},children:i("tasks.fieldTitle")}),(0,L.jsx)("input",{value:l,onChange:a=>m(a.target.value),placeholder:i("tasks.fieldTitlePlaceholder"),style:y,autoFocus:!0})]}),(0,L.jsxs)("label",{style:{display:"flex",flexDirection:"column",gap:4},children:[(0,L.jsx)("span",{style:{fontSize:12,fontWeight:500,color:"var(--text)"},children:i("tasks.fieldPrompt")}),(0,L.jsx)("textarea",{value:n,onChange:a=>o(a.target.value),placeholder:i("tasks.fieldPromptPlaceholder"),rows:6,style:{...y,resize:"vertical",fontFamily:"inherit",lineHeight:1.5}})]}),(0,L.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:6},children:[(0,L.jsx)("input",{value:r,onChange:a=>s(a.target.value),placeholder:i("tasks.templateNamePlaceholder"),style:{...y,flex:1}}),(0,L.jsxs)("button",{type:"button",onClick:()=>void w(),disabled:!r.trim()||!l.trim(),style:{display:"inline-flex",alignItems:"center",gap:5,padding:"8px 12px",borderRadius:8,background:"var(--bg-hover)",border:"1px solid var(--border)",color:"var(--text)",fontSize:12,cursor:"pointer"},children:[(0,L.jsx)(uM,{size:13,"aria-hidden":"true"}),i("tasks.saveAsTemplate")]})]}),(0,L.jsxs)("div",{style:{display:"flex",justifyContent:"flex-end",gap:8,marginTop:4},children:[(0,L.jsx)("button",{type:"button",onClick:()=>b(!1),style:{padding:"8px 14px",borderRadius:8,background:"none",border:"1px solid var(--border)",color:"var(--text)",fontSize:12,cursor:"pointer"},children:i("i18n.cancel")}),(0,L.jsx)("button",{type:"button",onClick:()=>void v(),disabled:!j||!l.trim()||t,style:{padding:"8px 16px",borderRadius:8,background:"var(--accent)",color:"var(--accent-fg)",border:"none",fontSize:12,fontWeight:600,cursor:"pointer"},children:i("tasks.save")})]})]})]})})}function uO({open:a,onOpenChange:b,task:c}){let{t:d}=(0,bb.s)(),{refetch:e}=uh(),[f,g]=(0,M.useState)(!0),[h,i]=(0,M.useState)(""),[j,k]=(0,M.useState)(!0),[l,m]=(0,M.useState)(!1);if(!a||!c)return null;let n=async()=>{if((f||h.trim())&&!l){m(!0);try{await (0,se.oB)(c.id,c.projectRoot,f?null:h.trim(),j),b(!1),e()}catch(a){console.error("merge failed",a)}finally{m(!1)}}};return(0,L.jsx)("div",{style:{position:"fixed",inset:0,zIndex:950,display:"flex",alignItems:"center",justifyContent:"center",background:"rgba(0,0,0,0.45)"},children:(0,L.jsxs)("div",{style:{width:"min(440px, calc(100vw - 48px))",background:"var(--bg-panel)",border:"1px solid var(--border)",borderRadius:14,boxShadow:"0 16px 48px rgba(0,0,0,0.3)"},children:[(0,L.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"14px 16px 0"},children:[(0,L.jsx)("h3",{style:{fontSize:15,fontWeight:600,margin:0},children:d("tasks.mergeTitle")}),(0,L.jsx)("button",{type:"button",onClick:()=>b(!1),"aria-label":d("i18n.close"),style:{background:"none",border:"none",cursor:"pointer",color:"var(--text-muted)",padding:4,display:"flex"},children:(0,L.jsx)($,{size:16,"aria-hidden":"true"})})]}),(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:12,padding:"14px 16px 16px"},children:[(0,L.jsxs)("label",{style:{display:"flex",alignItems:"center",gap:8,fontSize:13,cursor:"pointer"},children:[(0,L.jsx)("input",{type:"radio",checked:f,onChange:()=>g(!0),style:{accentColor:"var(--accent)"}}),d("tasks.mergeAutoMessage")]}),(0,L.jsxs)("label",{style:{display:"flex",alignItems:"center",gap:8,fontSize:13,cursor:"pointer"},children:[(0,L.jsx)("input",{type:"radio",checked:!f,onChange:()=>g(!1),style:{accentColor:"var(--accent)"}}),d("tasks.mergeManualMessage")]}),!f&&(0,L.jsx)("input",{value:h,onChange:a=>i(a.target.value),placeholder:d("tasks.mergeMessagePlaceholder"),style:{width:"100%",background:"var(--bg)",border:"1px solid var(--border)",borderRadius:8,padding:"8px 10px",color:"var(--text)",fontSize:13,outline:"none",fontFamily:"inherit"}}),(0,L.jsxs)("label",{style:{display:"flex",alignItems:"center",gap:8,fontSize:13,cursor:"pointer"},children:[(0,L.jsx)("input",{type:"checkbox",checked:j,onChange:a=>k(a.target.checked),style:{accentColor:"var(--accent)"}}),d("tasks.mergeDeleteWorktree")]}),(0,L.jsxs)("div",{style:{display:"flex",justifyContent:"flex-end",gap:8,marginTop:4},children:[(0,L.jsx)("button",{type:"button",onClick:()=>b(!1),style:{padding:"8px 14px",borderRadius:8,background:"none",border:"1px solid var(--border)",color:"var(--text)",fontSize:12,cursor:"pointer"},children:d("i18n.cancel")}),(0,L.jsx)("button",{type:"button",onClick:()=>void n(),disabled:!f&&!h.trim()||l,style:{padding:"8px 16px",borderRadius:8,background:"var(--accent)",color:"var(--accent-fg)",border:"none",fontSize:12,fontWeight:600,cursor:"pointer"},children:d("tasks.mergeConfirm")})]})]})]})})}function uP({open:a,onOpenChange:b,task:c,kind:d}){let{t:e}=(0,bb.s)(),{refetch:f}=uh(),[g,h]=(0,M.useState)(""),[i,j]=(0,M.useState)(!1);if(!a||!c)return null;let k="retry"===d,l=async()=>{if(!i){j(!0);try{await (0,se.oQ)(c.id,c.projectRoot,d,{note:g.trim()||null}),b(!1),f()}catch(a){console.error("restart failed",a)}finally{j(!1)}}};return(0,L.jsx)("div",{style:{position:"fixed",inset:0,zIndex:950,display:"flex",alignItems:"center",justifyContent:"center",background:"rgba(0,0,0,0.45)"},children:(0,L.jsxs)("div",{style:{width:"min(480px, calc(100vw - 48px))",background:"var(--bg-panel)",border:"1px solid var(--border)",borderRadius:14,boxShadow:"0 16px 48px rgba(0,0,0,0.3)"},children:[(0,L.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"14px 16px 0"},children:[(0,L.jsx)("h3",{style:{fontSize:15,fontWeight:600,margin:0},children:e(k?"tasks.restartTitleRetry":"tasks.restartTitleRequeue")}),(0,L.jsx)("button",{type:"button",onClick:()=>b(!1),"aria-label":e("i18n.close"),style:{background:"none",border:"none",cursor:"pointer",color:"var(--text-muted)",padding:4,display:"flex"},children:(0,L.jsx)($,{size:16,"aria-hidden":"true"})})]}),(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:12,padding:"14px 16px 16px"},children:[(0,L.jsx)("p",{style:{margin:0,fontSize:12,lineHeight:1.5,color:"var(--text-muted)"},children:e("tasks.restartDescription")}),(0,L.jsxs)("label",{style:{display:"flex",flexDirection:"column",gap:5},children:[(0,L.jsx)("span",{style:{fontSize:12,color:"var(--text-muted)"},children:e("tasks.actionAddNote")}),(0,L.jsx)("textarea",{value:g,onChange:a=>h(a.target.value),placeholder:e(k?"tasks.followUpPlaceholderRetry":"tasks.followUpPlaceholderRequeue"),rows:3,autoFocus:!0,style:{width:"100%",background:"var(--bg)",border:"1px solid var(--border)",borderRadius:8,padding:"8px 10px",color:"var(--text)",fontSize:13,outline:"none",fontFamily:"inherit",resize:"vertical"}})]}),(0,L.jsxs)("div",{style:{display:"flex",justifyContent:"flex-end",gap:8,marginTop:4},children:[(0,L.jsx)("button",{type:"button",onClick:()=>b(!1),disabled:i,style:{padding:"8px 14px",borderRadius:8,background:"none",border:"1px solid var(--border)",color:"var(--text)",fontSize:12,cursor:"pointer"},children:e("i18n.cancel")}),(0,L.jsx)("button",{type:"button",onClick:()=>void l(),disabled:i,style:{padding:"8px 16px",borderRadius:8,background:"var(--accent)",color:"var(--accent-fg)",border:"none",fontSize:12,fontWeight:600,cursor:"pointer"},children:e(k?"tasks.actionRetry":"tasks.actionRequeue")})]})]})]})})}uM.displayName="BookmarkSimpleIcon";let uQ=["work","retry","return","merge"];function uR({open:a,onOpenChange:b,projectRoot:c}){let{t:d}=(0,bb.s)(),{projects:e}=uh(),[f,g]=(0,M.useState)(""),[h,i]=(0,M.useState)(()=>us()),[j,k]=(0,M.useState)(!1),[l,m]=(0,M.useState)(!1);if(!a)return null;let n=(a,b)=>{i(c=>({...c,[a]:b}))},o=async()=>{if(f&&!l){m(!0);try{await (0,se.eA)(f,h),k(!0),b(!1)}catch(a){console.error("save settings failed",a)}finally{m(!1)}}},p=async()=>{if(f)try{await (0,se.E)(f),k(!1),i(us())}catch(a){console.error("reset settings failed",a)}},q={width:"100%",background:"var(--bg)",border:"1px solid var(--border)",borderRadius:8,padding:"7px 10px",color:"var(--text)",fontSize:12,outline:"none",fontFamily:"inherit"},r={display:"flex",alignItems:"center",justifyContent:"space-between",gap:12,padding:"10px 0",borderBottom:"1px solid var(--border)"};return(0,L.jsx)("div",{style:{position:"fixed",inset:0,zIndex:960,display:"flex",alignItems:"center",justifyContent:"center",background:"rgba(0,0,0,0.45)"},children:(0,L.jsxs)("div",{style:{width:"min(560px, calc(100vw - 48px))",maxHeight:"82vh",overflowY:"auto",background:"var(--bg-panel)",border:"1px solid var(--border)",borderRadius:14,boxShadow:"0 16px 48px rgba(0,0,0,0.3)"},children:[(0,L.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"14px 16px 0"},children:[(0,L.jsx)("h3",{style:{fontSize:15,fontWeight:600,margin:0},children:d("tasks.settingsTitle")}),(0,L.jsx)("button",{type:"button",onClick:()=>b(!1),"aria-label":d("i18n.close"),style:{background:"none",border:"none",cursor:"pointer",color:"var(--text-muted)",padding:4,display:"flex"},children:(0,L.jsx)($,{size:16,"aria-hidden":"true"})})]}),(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:10,padding:"14px 16px 16px"},children:[(0,L.jsxs)("label",{style:{display:"flex",flexDirection:"column",gap:4},children:[(0,L.jsx)("span",{style:{fontSize:12,fontWeight:500},children:d("tasks.settingsProject")}),(0,L.jsx)("select",{value:f,onChange:a=>g(a.target.value),style:q,children:e.map(a=>(0,L.jsx)("option",{value:a,children:a.split("/").filter(Boolean).pop()??a},a))})]}),f?(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)("div",{style:r,children:[(0,L.jsx)("span",{style:{fontSize:12},children:d("tasks.settingsAutoProcess")}),(0,L.jsx)("input",{type:"checkbox",checked:h.autoProcess,onChange:a=>n("autoProcess",a.target.checked),style:{accentColor:"var(--accent)"}})]}),(0,L.jsxs)("div",{style:r,children:[(0,L.jsx)("span",{style:{fontSize:12},children:d("tasks.settingsMaxConcurrent")}),(0,L.jsx)("input",{type:"number",min:0,value:h.maxConcurrent,onChange:a=>n("maxConcurrent",Math.max(0,Number(a.target.value)||0)),style:{...q,width:90}})]}),(0,L.jsxs)("div",{style:r,children:[(0,L.jsx)("span",{style:{fontSize:12},children:d("tasks.settingsMergeStrategy")}),(0,L.jsxs)("select",{value:h.mergeStrategy,onChange:a=>n("mergeStrategy",a.target.value),style:{...q,width:140},children:[(0,L.jsx)("option",{value:"merge",children:d("tasks.mergeStrategyMerge")}),(0,L.jsx)("option",{value:"squash",children:d("tasks.mergeStrategySquash")})]})]}),(0,L.jsxs)("div",{style:r,children:[(0,L.jsx)("span",{style:{fontSize:12},children:d("tasks.settingsDeleteWorktree")}),(0,L.jsx)("input",{type:"checkbox",checked:h.deleteWorktreeDefault,onChange:a=>n("deleteWorktreeDefault",a.target.checked),style:{accentColor:"var(--accent)"}})]}),(0,L.jsxs)("label",{style:{display:"flex",flexDirection:"column",gap:4},children:[(0,L.jsx)("span",{style:{fontSize:12},children:d("tasks.settingsPreflightCommand")}),(0,L.jsx)("input",{value:h.preflightCommand??"",onChange:a=>n("preflightCommand",a.target.value||null),placeholder:d("tasks.settingsPreflightPlaceholder"),style:{...q,fontFamily:"var(--font-mono)",fontSize:11}})]}),(0,L.jsxs)("label",{style:{display:"flex",flexDirection:"column",gap:4},children:[(0,L.jsx)("span",{style:{fontSize:12},children:d("tasks.settingsInitCommand")}),(0,L.jsx)("input",{value:h.initCommand??"",onChange:a=>n("initCommand",a.target.value||null),placeholder:d("tasks.settingsInitPlaceholder"),style:{...q,fontFamily:"var(--font-mono)",fontSize:11}})]}),(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:6,paddingTop:4},children:[(0,L.jsx)("span",{style:{fontSize:12,fontWeight:500},children:d("tasks.settingsStagePrompts")}),uQ.map(a=>(0,L.jsxs)("label",{style:{display:"flex",flexDirection:"column",gap:4},children:[(0,L.jsx)("span",{style:{fontSize:11,color:"var(--text-muted)"},children:d(`tasks.stage.${a}`)}),(0,L.jsx)("input",{value:h.stagePrompts?.[a]??"",onChange:b=>n("stagePrompts",{...h.stagePrompts??{},[a]:b.target.value}),style:{...q,fontSize:11}})]},a))]}),j&&(0,L.jsx)("button",{type:"button",onClick:()=>void p(),style:{alignSelf:"flex-start",padding:"6px 12px",borderRadius:8,background:"none",border:"1px solid var(--border)",color:"var(--text-muted)",fontSize:12,cursor:"pointer"},children:d("tasks.settingsReset")})]}):(0,L.jsx)("div",{style:{fontSize:12,color:"var(--text-muted)",padding:8},children:d("tasks.settingsNoProject")}),(0,L.jsxs)("div",{style:{display:"flex",justifyContent:"flex-end",gap:8,marginTop:4},children:[(0,L.jsx)("button",{type:"button",onClick:()=>b(!1),style:{padding:"8px 14px",borderRadius:8,background:"none",border:"1px solid var(--border)",color:"var(--text)",fontSize:12,cursor:"pointer"},children:d("i18n.cancel")}),(0,L.jsx)("button",{type:"button",onClick:()=>void o(),disabled:!f||l,style:{padding:"8px 16px",borderRadius:8,background:"var(--accent)",color:"var(--accent-fg)",border:"none",fontSize:12,fontWeight:600,cursor:"pointer"},children:d("tasks.save")})]})]})]})})}function uS({open:a,onOpenChange:b,task:c}){let{t:d}=(0,bb.s)();return a&&c?(0,L.jsx)("div",{style:{position:"fixed",inset:0,zIndex:970,display:"flex",alignItems:"center",justifyContent:"center",background:"rgba(0,0,0,0.45)"},children:(0,L.jsxs)("div",{style:{width:"min(520px, calc(100vw - 48px))",background:"var(--bg-panel)",border:"1px solid var(--border)",borderRadius:14,boxShadow:"0 16px 48px rgba(0,0,0,0.3)"},children:[(0,L.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"14px 16px 0"},children:[(0,L.jsx)("h3",{style:{fontSize:15,fontWeight:600,margin:0},children:d("tasks.sessionTitle")}),(0,L.jsx)("button",{type:"button",onClick:()=>b(!1),"aria-label":d("i18n.close"),style:{background:"none",border:"none",cursor:"pointer",color:"var(--text-muted)",padding:4,display:"flex"},children:(0,L.jsx)($,{size:16,"aria-hidden":"true"})})]}),(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:10,padding:"14px 16px 16px",fontSize:12},children:[(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:4,background:"var(--bg)",border:"1px solid var(--border)",borderRadius:8,padding:10},children:[(0,L.jsx)("span",{style:{color:"var(--text-muted)"},children:d("tasks.sessionId")}),(0,L.jsx)("span",{style:{fontFamily:"var(--font-mono)",fontSize:11,overflowWrap:"anywhere"},children:c.conversationId??"—"})]}),c.sessionFile?(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:4,background:"var(--bg)",border:"1px solid var(--border)",borderRadius:8,padding:10},children:[(0,L.jsx)("span",{style:{color:"var(--text-muted)"},children:d("tasks.sessionFile")}),(0,L.jsx)("span",{style:{fontFamily:"var(--font-mono)",fontSize:11,overflowWrap:"anywhere"},children:c.sessionFile})]}):null,(0,L.jsx)("div",{style:{fontSize:11,color:"var(--text-muted)",lineHeight:1.6},children:d("tasks.sessionHint")}),(0,L.jsx)("div",{style:{display:"flex",justifyContent:"flex-end",marginTop:4},children:(0,L.jsx)("button",{type:"button",onClick:()=>b(!1),style:{padding:"8px 16px",borderRadius:8,background:"var(--accent)",color:"var(--accent-fg)",border:"none",fontSize:12,fontWeight:600,cursor:"pointer"},children:d("i18n.close")})})]})]})}):null}let uT="__all__",uU={showCanceled:!1,showArchived:!1};function uV(){let{t:a}=(0,bb.s)(),{attentionCount:b}=uh();return(0,L.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8,height:36,flexShrink:0,padding:"0 16px",borderBottom:"1px solid var(--border)",background:"var(--bg-panel)"},children:[(0,L.jsxs)("h1",{style:{margin:0,display:"flex",alignItems:"center",gap:6,fontSize:13,fontWeight:600},children:[(0,L.jsx)(b4,{size:15,color:"var(--text-muted)","aria-hidden":"true"}),a("tasks.title"),(0,L.jsx)("span",{style:{borderRadius:999,background:"rgba(37,99,235,0.12)",color:"var(--accent)",padding:"1px 8px",fontSize:9,fontWeight:700,textTransform:"uppercase",letterSpacing:"0.04em"},children:"Beta"})]}),b>0?(0,L.jsxs)("span",{style:{display:"inline-flex",alignItems:"center",gap:4,borderRadius:999,background:"rgba(239,68,68,0.12)",color:"var(--status-error)",padding:"1px 8px",fontSize:10,fontWeight:700},children:[b," ",a("tasks.attentionBadge")]}):null,(0,L.jsx)("div",{style:{flex:1}}),(0,L.jsxs)("button",{type:"button",onClick:()=>window.dispatchEvent(new Event("pi:open-task-settings")),style:{display:"inline-flex",alignItems:"center",gap:5,height:26,padding:"0 10px",borderRadius:7,background:"none",border:"none",color:"var(--text-muted)",fontSize:12,cursor:"pointer"},title:a("tasks.settingsTitle"),children:[(0,L.jsx)(ul,{size:13,"aria-hidden":"true"}),a("tasks.settingsTitle")]})]})}function uW({activeProject:a}){let{t:b}=(0,bb.s)(),{tasks:d,projects:e,refetch:f}=uh(),[g,h]=(0,M.useState)(null),[i,j]=(0,M.useState)(()=>(function(){try{let a=window.localStorage.getItem("pi-tasks-board-filter");if(a){let b=JSON.parse(a);return{showCanceled:b.showCanceled??!1,showArchived:b.showArchived??!1}}}catch{}return uU})()),[k,l]=(0,M.useState)(!1),[m,n]=(0,M.useState)(null),[o,p]=(0,M.useState)(!1),q=(0,M.useRef)(null),r=(0,M.useRef)({x:0,y:0}),s=(0,M.useRef)(null),t=(0,M.useRef)(null),[u,v]=(0,M.useState)(null),w=(0,M.useRef)(null);w.current=u;let x=(0,M.useRef)(!1),y=(0,M.useRef)(!1),[z,A]=(0,M.useState)(()=>Date.now()),[B,C]=(0,M.useState)(!1),[D,E]=(0,M.useState)(null),[F,G]=(0,M.useState)(null),[H,I]=(0,M.useState)(null),[J,K]=(0,M.useState)(null),[N,O]=(0,M.useState)(!1),[P,Q]=(0,M.useState)(null),[R,S]=(0,M.useState)(!1),[T,U]=(0,M.useState)(null),[V,X]=(0,M.useState)("retry"),[Y,Z]=(0,M.useState)(!1),[$,_]=(0,M.useState)(null),[aa,ab]=(0,M.useState)(!1),[ac,ad]=(0,M.useState)(!1),[ae,af]=(0,M.useState)(null),[ag,ah]=(0,M.useState)(!1),ai=(0,M.useMemo)(()=>null==g?d:d.filter(a=>a.projectRoot===g),[d,g]),aj=(0,M.useMemo)(()=>(function(a,b,c=!1){let d={todo:[],inProgress:[],attention:[],done:[]};for(let e of a)("canceled"!==e.status||b)&&(null==e.archivedAt||c)&&d[function(a){switch(a){case"todo":case"queued":return"todo";case"preparing":case"running":return"inProgress";case"awaiting_input":case"review":case"merging":case"failed":return"attention";case"done":case"canceled":return"done"}}(e.status)].push(e);for(let a of uq)d[a].sort((a,b)=>(b.updatedAt??"").localeCompare(a.updatedAt??""));return d})(ai,i.showCanceled,i.showArchived),[ai,i]),al=(0,M.useMemo)(()=>{let a=aj.todo;if(null==u)return a;let b=new Map(a.map(a=>[a.id,a])),c=u.flatMap(a=>b.get(a)??[]);for(let b of a)u.includes(b.id)||c.push(b);return c},[aj.todo,u]),am=(0,M.useMemo)(()=>d.find(a=>a.id===H)??null,[d,H]),an=(0,M.useMemo)(()=>d.find(a=>a.id===ae)??null,[d,ae]),ao=(0,M.useCallback)(async a=>{try{await a()}catch(a){console.error("task action failed",a)}finally{f()}},[f]),ap=(0,M.useCallback)(a=>{null!=a.conversationId&&(af(a.id),ah(!0))},[af,ah]),aq=(0,M.useCallback)(a=>{K(a),O(!0)},[K,O]),ar=(0,M.useCallback)(()=>{E(null),C(!0)},[E,C]),as=(0,M.useCallback)((a,b)=>{let c=s.current,d=q.current;c&&d&&(c.style.transform=`translate3d(${a-d.dx}px, ${b-d.dy}px, 0)`)},[]),at=a=>{let b=a.currentTarget.getBoundingClientRect();q.current={dx:a.clientX-b.left,dy:a.clientY-b.top,width:b.width}},au=(0,M.useCallback)(a=>{if(n(null),p(!1),a){x.current=!1;return}requestAnimationFrame(()=>{x.current=!1})},[n,p]);(0,M.useCallback)(()=>{y.current=!0,v(null),au(!0)},[au,v]);let av=(0,M.useCallback)((a,b,c)=>{if(y.current){au(!0),v(null);return}let e=t.current?.getBoundingClientRect(),h=null!=e&&b>=e.left&&b<=e.right&&c>=e.top&&c<=e.bottom;if(au(!1),h){v(null);let b=d.find(b=>b.id===a.id);b?.status==="todo"&&null!=g&&ao(()=>(0,se.oQ)(a.id,a.projectRoot,"start"));return}let i=w.current;null!=g&&null!=i&&(async()=>{try{await (0,se.Lu)(g,i)}catch(a){console.error("reorder failed",a)}await f(),v(null)})()},[ao,au,g,f,d]),aw=(0,M.useCallback)(()=>{ao(async()=>{let a=await (0,se.a5)(g);a>0&&console.log(`started ${a} tasks`)})},[ao,g]),ax=(0,M.useCallback)(()=>{let a=aj.done.filter(a=>null==a.archivedAt);0!==a.length&&ao(()=>Promise.all(a.map(a=>(0,se.et)(a.id,a.projectRoot,!0))))},[ao,aj.done]),ay=+(i.showCanceled!==uU.showCanceled)+ +(i.showArchived!==uU.showArchived),az=d.length>0,aA=(0,M.useMemo)(()=>{let b=new Set(e);return a&&b.add(a),[...b].sort()},[e,a]),aB=(0,M.useMemo)(()=>{let a=new Map;for(let b of aA)a.set(b,b.split("/").filter(Boolean).pop()??b);return a},[aA]);return(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",height:"100%",minHeight:0},children:[az&&(0,L.jsxs)("div",{style:{display:"flex",flexWrap:"wrap",alignItems:"center",gap:8,padding:"14px 16px 8px"},children:[(0,L.jsxs)("select",{value:g??uT,onChange:a=>h(a.target.value===uT?null:a.target.value),style:{height:30,borderRadius:999,padding:"0 10px",background:"var(--bg-panel)",border:"1px solid var(--border)",color:"var(--text)",fontSize:12,fontWeight:500,cursor:"pointer",maxWidth:"14rem"},"aria-label":b("tasks.allFolders"),children:[(0,L.jsx)("option",{value:uT,children:b("tasks.allFolders")}),aA.map(a=>(0,L.jsx)("option",{value:a,children:aB.get(a)??a},a))]}),(0,L.jsxs)("div",{style:{position:"relative"},children:[(0,L.jsxs)("button",{type:"button",onClick:()=>l(a=>!a),style:{display:"inline-flex",alignItems:"center",gap:6,height:30,borderRadius:999,padding:"0 12px",background:"var(--bg-panel)",border:"1px solid var(--border)",color:"var(--text)",fontSize:12,fontWeight:500,cursor:"pointer"},children:[(0,L.jsx)(un,{size:13,"aria-hidden":"true"}),b("tasks.filter"),ay>0?(0,L.jsx)("span",{style:{borderRadius:999,background:"rgba(37,99,235,0.12)",color:"var(--accent)",padding:"1px 6px",fontSize:10,fontWeight:700},children:ay}):null]}),k&&(0,L.jsx)("div",{style:{position:"absolute",top:34,left:0,zIndex:50,width:200,borderRadius:12,padding:6,background:"var(--bg-panel)",border:"1px solid var(--border)",boxShadow:"0 8px 24px rgba(0,0,0,0.16)"},children:[["showCanceled",b("tasks.showCanceled")],["showArchived",b("tasks.showArchived")]].map(([a,b])=>(0,L.jsxs)("label",{style:{display:"flex",alignItems:"center",gap:8,padding:"6px 8px",borderRadius:8,cursor:"pointer",fontSize:12},children:[(0,L.jsx)("input",{type:"checkbox",checked:i[a],onChange:b=>j(c=>({...c,[a]:b.target.checked})),style:{accentColor:"var(--accent)"}}),b]},a))})]}),(0,L.jsx)("div",{style:{flex:1}}),(0,L.jsxs)("button",{type:"button",onClick:aw,style:{display:"inline-flex",alignItems:"center",gap:6,height:30,borderRadius:999,padding:"0 12px",background:"none",border:"none",color:"var(--text)",fontSize:12,cursor:"pointer"},title:b("tasks.startAll"),children:[(0,L.jsx)(up,{size:13,"aria-hidden":"true"}),b("tasks.startAll")]}),(0,L.jsxs)("button",{type:"button",onClick:ar,style:{display:"inline-flex",alignItems:"center",gap:6,height:30,borderRadius:999,padding:"0 14px",background:"var(--accent)",color:"var(--accent-fg)",border:"none",fontSize:12,fontWeight:600,cursor:"pointer"},children:[(0,L.jsx)(ak,{size:13,weight:"bold","aria-hidden":"true"}),b("tasks.new")]})]}),az?(0,L.jsx)("div",{style:{flex:1,minHeight:0,overflowX:"auto"},children:(0,L.jsx)("div",{style:{display:"grid",gridTemplateColumns:"repeat(4, minmax(0, 1fr))",gap:16,minWidth:"56rem",height:"100%",padding:"4px 16px 16px"},children:ut.map(a=>{let c="todo"===a?al:aj[a],d=uu[a],e=a=>(0,L.jsx)(uD,{task:a,folderName:a.projectRoot?aB.get(a.projectRoot)??null:null,now:z,onOpen:()=>{x.current||I(a.id)},onStart:()=>void ao(()=>(0,se.oQ)(a.id,a.projectRoot,"start")),onCancel:()=>{Q(a),S(!0)},onRetry:()=>{U(a),X("retry"),Z(!0)},onRequeue:()=>{U(a),X("requeue"),Z(!0)},onViewSession:()=>ap(a),onMerge:()=>{ur(a)?(_(a),ab(!0)):aq(a)},onArchive:()=>void ao(()=>(0,se.et)(a.id,a.projectRoot,null==a.archivedAt)),onEdit:()=>{E(a),C(!0)}},a.id);return(0,L.jsxs)("div",{ref:"inProgress"===a?t:void 0,style:{display:"flex",flexDirection:"column",minHeight:0,gap:8},children:[(0,L.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8,height:24,flexShrink:0,padding:"0 2px"},children:[(0,L.jsx)("span",{style:{width:3,height:14,borderRadius:999,background:d.marker,flexShrink:0},"aria-hidden":"true"}),(0,L.jsx)("h2",{style:{fontSize:12,fontWeight:600,color:"var(--text)"},children:b(`tasks.col${a[0].toUpperCase()}${a.slice(1)}`)}),(0,L.jsx)("span",{style:{borderRadius:999,background:"var(--bg-hover)",padding:"1px 8px",fontSize:10,fontWeight:600,color:"var(--text-muted)"},children:c.length}),(0,L.jsx)("div",{style:{flex:1}}),"done"===a&&aj.done.some(a=>null==a.archivedAt)?(0,L.jsx)("button",{type:"button",onClick:ax,style:{background:"none",border:"none",cursor:"pointer",fontSize:11,color:"var(--text-muted)",padding:"2px 6px",borderRadius:6},children:b("tasks.archiveAllDone")}):null]}),0===c.length?(0,L.jsx)("div",{style:{flex:1,display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",gap:4,borderRadius:12,border:"1px dashed var(--border)",padding:16,textAlign:"center",..."inProgress"===a&&m?o?{borderColor:"var(--accent)",background:"rgba(37,99,235,0.08)"}:{borderColor:"var(--accent)"}:{}},children:(0,L.jsx)("p",{style:{fontSize:12,color:"var(--text-muted)"},children:b(`tasks.emptyCol${a[0].toUpperCase()}${a.slice(1)}`)})}):(0,L.jsx)("div",{style:{flex:1,minHeight:0,overflowY:"auto",borderRadius:12,transition:"background 0.15s, box-shadow 0.15s",..."inProgress"===a&&m?o?{background:"rgba(37,99,235,0.06)",boxShadow:"inset 0 0 0 2px var(--accent)"}:{boxShadow:"inset 0 0 0 1px rgba(37,99,235,0.25)"}:{}},children:(0,L.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:16,paddingBottom:4},children:c.map(b=>"todo"===a?(0,L.jsx)("div",{draggable:!0,onDragStart:a=>{var c,d;a.dataTransfer.effectAllowed="move",c=a.clientX,d=a.clientY,x.current=!0,y.current=!1,r.current={x:c,y:d},n({task:b,width:q.current?.width??280})},onDrag:a=>{var b,c;let d,e;return r.current={x:b=a.clientX,y:c=a.clientY},as(b,c),void((e=null!=(d=t.current?.getBoundingClientRect())&&b>=d.left&&b<=d.right&&c>=d.top&&c<=d.bottom)!==o&&p(e))},onDragEnd:a=>av(b,a.clientX,a.clientY),onPointerDown:at,style:{cursor:"grab",opacity:m?.task.id===b.id?.4:1},children:e(b)},b.id):(0,L.jsx)("div",{children:e(b)},b.id))})})]},a)})})}):(0,L.jsxs)("div",{style:{flex:1,display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",gap:12,padding:32,textAlign:"center"},children:[(0,L.jsx)(b4,{size:40,color:"var(--text-dim)",opacity:.4,"aria-hidden":"true"}),(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:4},children:[(0,L.jsx)("p",{style:{fontSize:14,fontWeight:500,color:"var(--text)"},children:b("tasks.empty")}),(0,L.jsx)("p",{style:{maxWidth:320,fontSize:12,color:"var(--text-muted)",lineHeight:1.6},children:b("tasks.emptyHint")})]}),(0,L.jsxs)("button",{type:"button",onClick:ar,style:{display:"inline-flex",alignItems:"center",gap:6,padding:"7px 14px",borderRadius:8,background:"var(--accent)",color:"var(--accent-fg)",border:"none",fontSize:12,fontWeight:600,cursor:"pointer"},children:[(0,L.jsx)(ak,{size:13,weight:"bold","aria-hidden":"true"}),b("tasks.new")]})]}),(0,L.jsx)(uN,{open:B,onOpenChange:C,task:D,defaultProject:F?.projectRoot??g??a??null,projects:aA,prefillTitle:F?F.text.slice(0,80):void 0,prefillPrompt:F?F.text:void 0,onSubmit:async(a,b,d)=>{await ao(async()=>{let{createTaskApi:e}=await Promise.resolve().then(c.bind(c,85596)),{updateTaskApi:f}=await Promise.resolve().then(c.bind(c,85596));D?await f(D.id,a,{title:b,config:d}):await e({projectRoot:a,title:b,config:d})}),C(!1),G(null)}}),(0,L.jsx)(uK,{open:null!=H,onOpenChange:a=>{a||I(null)},task:am,onViewSession:ap,onMerge:aq,onEdit:a=>{E(a),C(!0)},onCancel:a=>{Q(a),S(!0)},onRetry:a=>{U(a),X("retry"),Z(!0)},onRequeue:a=>{U(a),X("requeue"),Z(!0)},onComplete:a=>{_(a),ab(!0)}}),(0,L.jsx)(uO,{open:N,onOpenChange:O,task:J}),(0,L.jsx)(uE,{open:R,onOpenChange:S,task:P}),(0,L.jsx)(uP,{open:Y,onOpenChange:Z,task:T,kind:V}),(0,L.jsx)(uF,{open:aa,onOpenChange:ab,task:$}),(0,L.jsx)(uS,{open:ag&&null!=an,onOpenChange:ah,task:an}),(0,L.jsx)(uR,{open:ac,onOpenChange:ad,projectRoot:g}),m?(0,W.createPortal)((0,L.jsx)("div",{ref:s,style:{position:"fixed",left:0,top:0,zIndex:999,pointerEvents:"none",width:m.width,willChange:"transform"},"aria-hidden":"true",children:(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:8,borderRadius:12,border:o?"1px solid var(--accent)":"1px solid var(--border)",background:"var(--bg-panel)",padding:12,boxShadow:"0 8px 24px rgba(0,0,0,0.2)",transform:"rotate(-1deg)"},children:[(0,L.jsxs)("div",{style:{display:"flex",alignItems:"flex-start",justifyContent:"space-between",gap:8},children:[(0,L.jsx)("span",{style:{minWidth:0,overflowWrap:"break-word",fontSize:13,fontWeight:500},children:m.task.title}),(0,L.jsx)(uB,{task:m.task})]}),o?(0,L.jsxs)("span",{style:{display:"inline-flex",alignItems:"center",gap:4,fontSize:11,fontWeight:600,color:"var(--accent)"},children:[(0,L.jsx)(up,{size:11,weight:"bold","aria-hidden":"true"}),b("tasks.dropToStart")]}):null]})}),document.body):null]})}let uX=new Map([["bold",M.createElement(M.Fragment,null,M.createElement("path",{d:"M216,36H40A20,20,0,0,0,20,56V200a20,20,0,0,0,20,20H216a20,20,0,0,0,20-20V56A20,20,0,0,0,216,36ZM44,60H76V196H44ZM212,196H100V60H212Z"}))],["duotone",M.createElement(M.Fragment,null,M.createElement("path",{d:"M88,48V208H40a8,8,0,0,1-8-8V56a8,8,0,0,1,8-8Z",opacity:"0.2"}),M.createElement("path",{d:"M216,40H40A16,16,0,0,0,24,56V200a16,16,0,0,0,16,16H216a16,16,0,0,0,16-16V56A16,16,0,0,0,216,40ZM40,56H80V200H40ZM216,200H96V56H216V200Z"}))],["fill",M.createElement(M.Fragment,null,M.createElement("path",{d:"M216,40H40A16,16,0,0,0,24,56V200a16,16,0,0,0,16,16H216a16,16,0,0,0,16-16V56A16,16,0,0,0,216,40Zm0,160H88V56H216V200Z"}))],["light",M.createElement(M.Fragment,null,M.createElement("path",{d:"M216,42H40A14,14,0,0,0,26,56V200a14,14,0,0,0,14,14H216a14,14,0,0,0,14-14V56A14,14,0,0,0,216,42ZM38,200V56a2,2,0,0,1,2-2H82V202H40A2,2,0,0,1,38,200Zm180,0a2,2,0,0,1-2,2H94V54H216a2,2,0,0,1,2,2Z"}))],["regular",M.createElement(M.Fragment,null,M.createElement("path",{d:"M216,40H40A16,16,0,0,0,24,56V200a16,16,0,0,0,16,16H216a16,16,0,0,0,16-16V56A16,16,0,0,0,216,40ZM40,56H80V200H40ZM216,200H96V56H216V200Z"}))],["thin",M.createElement(M.Fragment,null,M.createElement("path",{d:"M216,44H40A12,12,0,0,0,28,56V200a12,12,0,0,0,12,12H216a12,12,0,0,0,12-12V56A12,12,0,0,0,216,44ZM36,200V56a4,4,0,0,1,4-4H84V204H40A4,4,0,0,1,36,200Zm184,0a4,4,0,0,1-4,4H92V52H216a4,4,0,0,1,4,4Z"}))]]),uY=M.forwardRef((a,b)=>M.createElement(P,{ref:b,...a,weights:uX}));uY.displayName="SidebarSimpleIcon";let uZ=new Map([["bold",M.createElement(M.Fragment,null,M.createElement("path",{d:"M228,48V96a12,12,0,0,1-12,12H168a12,12,0,0,1,0-24h19l-7.8-7.8a75.55,75.55,0,0,0-53.32-22.26h-.43A75.49,75.49,0,0,0,72.39,75.57,12,12,0,1,1,55.61,58.41a99.38,99.38,0,0,1,69.87-28.47H126A99.42,99.42,0,0,1,196.2,59.23L204,67V48a12,12,0,0,1,24,0ZM183.61,180.43a75.49,75.49,0,0,1-53.09,21.63h-.43A75.55,75.55,0,0,1,76.77,179.8L69,172H88a12,12,0,0,0,0-24H40a12,12,0,0,0-12,12v48a12,12,0,0,0,24,0V189l7.8,7.8A99.42,99.42,0,0,0,130,226.06h.56a99.38,99.38,0,0,0,69.87-28.47,12,12,0,0,0-16.78-17.16Z"}))],["duotone",M.createElement(M.Fragment,null,M.createElement("path",{d:"M216,128a88,88,0,1,1-88-88A88,88,0,0,1,216,128Z",opacity:"0.2"}),M.createElement("path",{d:"M224,48V96a8,8,0,0,1-8,8H168a8,8,0,0,1,0-16h28.69L182.06,73.37a79.56,79.56,0,0,0-56.13-23.43h-.45A79.52,79.52,0,0,0,69.59,72.71,8,8,0,0,1,58.41,61.27a96,96,0,0,1,135,.79L208,76.69V48a8,8,0,0,1,16,0ZM186.41,183.29a80,80,0,0,1-112.47-.66L59.31,168H88a8,8,0,0,0,0-16H40a8,8,0,0,0-8,8v48a8,8,0,0,0,16,0V179.31l14.63,14.63A95.43,95.43,0,0,0,130,222.06h.53a95.36,95.36,0,0,0,67.07-27.33,8,8,0,0,0-11.18-11.44Z"}))],["fill",M.createElement(M.Fragment,null,M.createElement("path",{d:"M224,48V96a8,8,0,0,1-8,8H168a8,8,0,0,1-5.66-13.66L180.65,72a79.48,79.48,0,0,0-54.72-22.09h-.45A79.52,79.52,0,0,0,69.59,72.71,8,8,0,0,1,58.41,61.27,96,96,0,0,1,192,60.7l18.36-18.36A8,8,0,0,1,224,48ZM186.41,183.29A80,80,0,0,1,75.35,184l18.31-18.31A8,8,0,0,0,88,152H40a8,8,0,0,0-8,8v48a8,8,0,0,0,13.66,5.66L64,195.3a95.42,95.42,0,0,0,66,26.76h.53a95.36,95.36,0,0,0,67.07-27.33,8,8,0,0,0-11.18-11.44Z"}))],["light",M.createElement(M.Fragment,null,M.createElement("path",{d:"M222,48V96a6,6,0,0,1-6,6H168a6,6,0,0,1,0-12h33.52L183.47,72a81.51,81.51,0,0,0-57.53-24h-.46A81.5,81.5,0,0,0,68.19,71.28a6,6,0,1,1-8.38-8.58,93.38,93.38,0,0,1,65.67-26.76H126a93.45,93.45,0,0,1,66,27.53l18,18V48a6,6,0,0,1,12,0ZM187.81,184.72a81.5,81.5,0,0,1-57.29,23.34h-.46a81.51,81.51,0,0,1-57.53-24L54.48,166H88a6,6,0,0,0,0-12H40a6,6,0,0,0-6,6v48a6,6,0,0,0,12,0V174.48l18,18.05a93.45,93.45,0,0,0,66,27.53h.52a93.38,93.38,0,0,0,65.67-26.76,6,6,0,1,0-8.38-8.58Z"}))],["regular",M.createElement(M.Fragment,null,M.createElement("path",{d:"M224,48V96a8,8,0,0,1-8,8H168a8,8,0,0,1,0-16h28.69L182.06,73.37a79.56,79.56,0,0,0-56.13-23.43h-.45A79.52,79.52,0,0,0,69.59,72.71,8,8,0,0,1,58.41,61.27a96,96,0,0,1,135,.79L208,76.69V48a8,8,0,0,1,16,0ZM186.41,183.29a80,80,0,0,1-112.47-.66L59.31,168H88a8,8,0,0,0,0-16H40a8,8,0,0,0-8,8v48a8,8,0,0,0,16,0V179.31l14.63,14.63A95.43,95.43,0,0,0,130,222.06h.53a95.36,95.36,0,0,0,67.07-27.33,8,8,0,0,0-11.18-11.44Z"}))],["thin",M.createElement(M.Fragment,null,M.createElement("path",{d:"M220,48V96a4,4,0,0,1-4,4H168a4,4,0,0,1,0-8h38.34L184.89,70.54A84,84,0,0,0,66.8,69.85a4,4,0,1,1-5.6-5.72,92,92,0,0,1,129.34.76L212,86.34V48a4,4,0,0,1,8,0ZM189.2,186.15a83.44,83.44,0,0,1-58.68,23.91h-.47a83.52,83.52,0,0,1-58.94-24.6L49.66,164H88a4,4,0,0,0,0-8H40a4,4,0,0,0-4,4v48a4,4,0,0,0,8,0V169.66l21.46,21.45A91.43,91.43,0,0,0,130,218.06h.51a91.45,91.45,0,0,0,64.28-26.19,4,4,0,1,0-5.6-5.72Z"}))]]),u$=M.forwardRef((a,b)=>M.createElement(P,{ref:b,...a,weights:uZ}));u$.displayName="ArrowsClockwiseIcon";let u_=null;async function u0(a){let b=await (!u_&&(u_=c.e(1399).then(c.bind(c,91399)).then(a=>a.getCurrentWindow())),u_);await a(b)}async function u1(){await u0(a=>a.minimize())}async function u2(){await u0(a=>a.toggleMaximize())}async function u3(){await u0(a=>a.startDragging())}async function u4(){await u0(a=>a.close())}function u5(){let[a,b]=(0,M.useState)(null);return{platform:a,isDesktop:null!==a,isMacOS:"macos"===a,dragRegionProps:a?{"data-tauri-drag-region":!0}:{}}}let u6={display:"flex",alignItems:"center",justifyContent:"center",width:26,height:26,padding:0,flexShrink:0,background:"none",border:"none",color:"var(--text-muted)",cursor:"pointer",borderRadius:7,transition:"background 0.12s, color 0.12s"};function u7({onRefreshSession:a}={}){let{t:b}=(0,bb.s)(),{isDark:c}=bT(),{isDesktop:d,isMacOS:e}=u5(),[f,g]=(0,M.useState)(!1),[h,i]=(0,M.useState)(null),[j,k]=(0,M.useState)(null),l=(0,M.useRef)(null),m=(0,M.useRef)(null),n=(0,M.useCallback)(a=>{a().catch(a=>{console.error("[DynamicIsland] window command failed:",a),i(String(a)),window.setTimeout(()=>i(null),4e3)})},[]),o=(0,M.useCallback)(()=>{window.location.reload()},[]),[p,q]=(0,M.useState)(0),r=(0,M.useCallback)(a=>{if(0!==a.button||a.target.closest?.("[data-island-btn]"))return;let b=l.current;if(!b)return;let c=b.getBoundingClientRect();m.current={startX:a.clientX,startY:a.clientY,origX:c.left,origY:c.top},a.currentTarget.setPointerCapture(a.pointerId)},[]),s=(0,M.useCallback)(a=>{var b,c;let d=m.current;if(!d)return;let e=a.clientX-d.startX,f=a.clientY-d.startY;k((b=d.origX+e,c=d.origY+f,{x:Math.min(Math.max(0,b),Math.max(0,window.innerWidth-168)),y:Math.min(Math.max(0,c),Math.max(0,window.innerHeight-34))}))},[]),t=(0,M.useCallback)(a=>{m.current=null;try{a.currentTarget.releasePointerCapture(a.pointerId)}catch{}},[]),u=(0,M.useCallback)(()=>u2().then(()=>{g(a=>!a)}),[]),v=(0,M.useCallback)(a=>{if(!m.current&&!a.target.closest?.("[data-island-btn]")){k(null);try{localStorage.removeItem("pi-web-island-pos")}catch{}}},[]);if(!(d&&!e))return null;let w=p||window.innerWidth,x=null!==j?j.x:Math.max(0,w-168-14);return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)("div",{ref:l,role:"toolbar","aria-label":b("desktop.islandLabel"),title:b("desktop.islandResetHint"),onPointerDown:r,onPointerMove:s,onPointerUp:t,onPointerCancel:t,onDoubleClick:v,onMouseDown:a=>a.stopPropagation(),onDoubleClickCapture:a=>a.stopPropagation(),style:{position:"fixed",top:null!==j?j.y:100,left:x,zIndex:700,display:"flex",alignItems:"center",gap:1,padding:"3px 5px",borderRadius:999,background:"color-mix(in srgb, var(--bg-panel) 88%, transparent)",border:"1px solid var(--border)",boxShadow:c?"0 6px 24px rgba(0,0,0,0.45)":"0 6px 20px rgba(0,0,0,0.12)",cursor:"grab",userSelect:"none",touchAction:"none"},children:[(0,L.jsx)("span",{"data-island-grip":!0,"aria-hidden":"true",title:b("desktop.islandDrag"),style:{display:"flex",alignItems:"center",justifyContent:"center",width:12,height:26,flexShrink:0,marginRight:2,color:"var(--text-dim)",cursor:"grab"},children:(0,L.jsxs)("svg",{width:"6",height:"14",viewBox:"0 0 6 14",fill:"currentColor","aria-hidden":"true",children:[(0,L.jsx)("circle",{cx:"1.5",cy:"2",r:"1.2"}),(0,L.jsx)("circle",{cx:"4.5",cy:"2",r:"1.2"}),(0,L.jsx)("circle",{cx:"1.5",cy:"7",r:"1.2"}),(0,L.jsx)("circle",{cx:"4.5",cy:"7",r:"1.2"}),(0,L.jsx)("circle",{cx:"1.5",cy:"12",r:"1.2"}),(0,L.jsx)("circle",{cx:"4.5",cy:"12",r:"1.2"})]})}),a&&(0,L.jsx)("button",{type:"button","data-island-btn":!0,"aria-label":b("desktop.refreshSession"),title:b("desktop.refreshSession"),onClick:()=>{try{a()}catch(a){console.error("[DynamicIsland] refresh session failed:",a)}},style:u6,onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-hover)",a.currentTarget.style.color="var(--text)"},onMouseLeave:a=>{a.currentTarget.style.background="none",a.currentTarget.style.color="var(--text-muted)"},children:(0,L.jsx)(u$,{size:13,"aria-hidden":"true"})}),(0,L.jsx)("button",{type:"button","data-island-btn":!0,"aria-label":b("desktop.reloadPage"),title:b("desktop.reloadPage"),onClick:o,style:u6,onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-hover)",a.currentTarget.style.color="var(--text)"},onMouseLeave:a=>{a.currentTarget.style.background="none",a.currentTarget.style.color="var(--text-muted)"},children:(0,L.jsx)(aw,{size:13,"aria-hidden":"true"})}),(0,L.jsx)("span",{"aria-hidden":"true",style:{width:1,height:18,flexShrink:0,background:"var(--border)",margin:"0 3px"}}),(0,L.jsx)("button",{type:"button","data-island-btn":!0,"aria-label":b("desktop.minimize"),title:b("desktop.minimize"),onClick:()=>n(u1),style:u6,onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-hover)",a.currentTarget.style.color="var(--text)"},onMouseLeave:a=>{a.currentTarget.style.background="none",a.currentTarget.style.color="var(--text-muted)"},children:(0,L.jsx)("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",stroke:"currentColor",strokeWidth:"1",children:(0,L.jsx)("line",{x1:"1",y1:"5",x2:"9",y2:"5"})})}),(0,L.jsx)("button",{type:"button","data-island-btn":!0,"aria-label":b(f?"desktop.restore":"desktop.maximize"),title:b(f?"desktop.restore":"desktop.maximize"),onClick:()=>n(u),style:u6,onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-hover)",a.currentTarget.style.color="var(--text)"},onMouseLeave:a=>{a.currentTarget.style.background="none",a.currentTarget.style.color="var(--text-muted)"},children:f?(0,L.jsxs)("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",stroke:"currentColor",strokeWidth:"1",children:[(0,L.jsx)("rect",{x:"2",y:"0.5",width:"7.5",height:"7.5"}),(0,L.jsx)("path",{d:"M0.5 2.5 V9.5 H7.5"})]}):(0,L.jsx)("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",stroke:"currentColor",strokeWidth:"1",children:(0,L.jsx)("rect",{x:"0.5",y:"0.5",width:"9",height:"9"})})}),(0,L.jsx)("button",{type:"button","data-island-btn":!0,"aria-label":b("desktop.close"),title:b("desktop.close"),onClick:()=>n(u4),style:u6,onMouseEnter:a=>{a.currentTarget.style.background="#e81123",a.currentTarget.style.color="#fff"},onMouseLeave:a=>{a.currentTarget.style.background="none",a.currentTarget.style.color="var(--text-muted)"},children:(0,L.jsxs)("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",stroke:"currentColor",strokeWidth:"1",children:[(0,L.jsx)("line",{x1:"0",y1:"0",x2:"10",y2:"10"}),(0,L.jsx)("line",{x1:"10",y1:"0",x2:"0",y2:"10"})]})})]}),h&&(0,L.jsx)("div",{role:"alert",style:{position:"fixed",top:(null!==j?j.y:100)+34+6,left:x,zIndex:700,maxWidth:280,padding:"5px 10px",borderRadius:8,background:"var(--bg-panel)",border:"1px solid var(--status-error, #f85149)",color:"var(--status-error, #f85149)",fontSize:11,lineHeight:1.5,wordBreak:"break-all",boxShadow:c?"0 6px 24px rgba(0,0,0,0.45)":"0 6px 20px rgba(0,0,0,0.12)",pointerEvents:"none"},children:h})]})}function u8(a=null){if(a)try{a.setItem("pi-web:desktop-server-hint-seen","1")}catch{}}function u9(){let{t:a}=(0,bb.s)(),[b,c]=(0,M.useState)(!1),d=(0,M.useCallback)(()=>{u8(),c(!1)},[]),e=(0,M.useCallback)(()=>{u8(),c(!1),window.location.href="piweb-switch://manage"},[]);return b?(0,L.jsxs)("div",{role:"status",style:{position:"fixed",top:56,right:16,zIndex:700,width:288,padding:"14px 16px 14px",borderRadius:12,background:"var(--bg-panel)",border:"1px solid var(--border)",boxShadow:"0 12px 36px rgba(0,0,0,0.32)",color:"var(--text)"},children:[(0,L.jsx)("span",{"aria-hidden":"true",style:{position:"absolute",top:-6,right:28,width:10,height:10,background:"var(--bg-panel)",borderTop:"1px solid var(--border)",borderLeft:"1px solid var(--border)",transform:"rotate(45deg)"}}),(0,L.jsxs)("div",{style:{display:"flex",alignItems:"flex-start",gap:10},children:[(0,L.jsx)(aM,{size:18,color:"var(--accent)",style:{flexShrink:0,marginTop:1}}),(0,L.jsxs)("div",{style:{minWidth:0,flex:1},children:[(0,L.jsx)("div",{style:{fontSize:13.5,fontWeight:600,lineHeight:1.45},children:a("desktop.serverHintTitle")}),(0,L.jsx)("p",{style:{margin:"6px 0 0",fontSize:12.5,lineHeight:1.65,color:"var(--text-muted)"},children:a("desktop.serverHintBody")})]}),(0,L.jsx)("button",{type:"button",onClick:d,"aria-label":a("desktop.serverHintDismiss"),title:a("desktop.serverHintDismiss"),style:{display:"flex",alignItems:"center",justifyContent:"center",width:22,height:22,padding:0,flexShrink:0,background:"none",border:"none",cursor:"pointer",color:"var(--text-dim)"},children:(0,L.jsx)($,{size:14,"aria-hidden":"true"})})]}),(0,L.jsx)("button",{type:"button",onClick:e,style:{marginTop:12,width:"100%",display:"flex",alignItems:"center",justifyContent:"center",gap:6,padding:"8px 12px",borderRadius:9,background:"var(--accent)",border:"none",color:"var(--accent-fg)",fontSize:13,fontWeight:600,cursor:"pointer"},children:a("desktop.serverHintAction")})]}):null}function va({isDark:a,toggleTheme:b,translate:c}){let[d,e]=(0,M.useState)(!1),f=c(d?a?"desktop.switchToLight":"desktop.switchToDark":"desktop.switchToLight");return(0,L.jsx)("button",{className:"app-no-drag",suppressHydrationWarning:!0,onClick:a=>{let c=a.currentTarget.getBoundingClientRect();b({x:c.left+c.width/2,y:c.top+c.height/2})},title:f,"aria-label":f,"aria-pressed":!d||a,style:{display:"flex",alignItems:"center",justifyContent:"center",width:36,height:36,padding:0,background:"none",border:"none",color:"var(--text-muted)",cursor:"pointer",flexShrink:0,transition:"background 0.12s, color 0.12s"},onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-hover)",a.currentTarget.style.color="var(--text)"},onMouseLeave:a=>{a.currentTarget.style.background="none",a.currentTarget.style.color="var(--text-muted)"},children:d?a?(0,L.jsx)(bw,{size:16,"aria-hidden":"true"}):(0,L.jsx)(bu,{size:16,"aria-hidden":"true"}):(0,L.jsx)(bw,{size:16,"aria-hidden":"true"})})}function vb({topBarRef:a,sidebarOpen:b,onSidebarToggle:c,isDark:d,toggleTheme:e,isMobile:f,showTasks:g,tasksBoardEnabled:h,onToggleTasks:i,systemPrompt:j,activeTopPanel:k,topPanelPos:l,sessionStats:m,selectedSession:n,contextUsage:o,copiedSessionField:p,onCopySessionField:q,rightPanelOpen:r,onToggleFilePanel:s,onRefreshSession:t,onOpenSettings:u,sessionTitle:v,onWorkspaceControlsHostChange:w,onTitleRightHostChange:x,desktopChrome:y,windowDrag:z}){let A,B,C,D,E,F,G,H,I,J,K,{t:N}=(0,bb.s)(),[O,P]=(0,M.useState)(!1),[Q,R]=(0,M.useState)(!1);return(0,L.jsxs)(L.Fragment,{children:[Q&&(0,L.jsx)(u9,{}),(0,L.jsxs)("div",{ref:a,className:"app-title-bar",...y?.dragRegionProps,...z,style:{display:"flex",alignItems:"center",flexShrink:0,borderBottom:"1px solid var(--border)",height:48,background:"var(--bg-panel)",position:"relative",zIndex:600,paddingLeft:76*!!y?.isMacOS},children:[(0,L.jsxs)("div",{style:{display:"flex",alignItems:"center",minWidth:0,height:"100%",flex:"0 1 auto",position:"relative",zIndex:1},children:[(0,L.jsx)("button",{className:"app-no-drag",onClick:c,title:b?N("desktop.hideSidebar"):N("desktop.showSidebar"),"aria-label":b?N("desktop.hideSidebar"):N("desktop.showSidebar"),style:{display:"flex",alignItems:"center",justifyContent:"center",width:36,height:36,padding:0,flexShrink:0,background:"none",border:"none",color:"var(--text-muted)",cursor:"pointer",transition:"color 0.12s"},onMouseEnter:a=>{a.currentTarget.style.color="var(--text)"},onMouseLeave:a=>{a.currentTarget.style.color="var(--text-muted)"},children:b?(0,L.jsx)(uY,{size:16,"aria-hidden":"true"}):(0,L.jsx)(aq,{size:16,"aria-hidden":"true"})}),(0,L.jsx)("div",{className:"app-no-drag",ref:w,style:{flex:"0 1 auto",minWidth:0,maxWidth:"min(60vw, 820px)",height:"100%",display:"flex",alignItems:"center",padding:"0 8px 0 0",overflow:"visible"}})]}),(0,L.jsxs)("div",{className:"app-title-drag",style:{...f?{position:"relative",flex:"1 1 auto",minWidth:0}:{position:"absolute",left:"var(--pi-titlebar-sidebar-offset, 0px)",right:0,top:0,bottom:0},display:"flex",alignItems:"center",justifyContent:f?"flex-start":"center",padding:f?"0 8px 0 4px":"0 12px",overflow:"hidden",userSelect:"none"},children:[v&&(0,L.jsx)("button",{type:"button",className:"app-no-drag",onClick:()=>{f&&P(!0)},style:{display:"block",flex:"0 1 auto",minWidth:0,maxWidth:f?"100%":"calc(100% - 320px)",fontSize:12,fontWeight:500,color:"var(--text-muted)",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",background:"none",border:"none",cursor:"pointer",padding:"2px 6px",borderRadius:5},onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-hover)"},onMouseLeave:a=>{a.currentTarget.style.background="none"},children:v}),(0,L.jsx)("div",{className:"app-no-drag",ref:x,style:{flexShrink:0,display:"flex",alignItems:"center",marginLeft:4}})]}),(0,L.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"flex-end",gap:3,minWidth:0,height:"100%",flexShrink:+!f,overflow:"hidden",marginLeft:"auto",position:"relative",zIndex:1},children:[!f&&h&&(0,L.jsx)("button",{className:"app-no-drag",onClick:i,title:g?N("desktop.hideTaskBoard"):N("desktop.showTaskBoard"),"aria-label":g?N("desktop.hideTaskBoard"):N("desktop.showTaskBoard"),style:{display:"flex",alignItems:"center",justifyContent:"center",width:36,height:36,padding:0,background:g?"var(--bg-selected)":"none",border:"none",color:g?"var(--text)":"var(--text-muted)",cursor:"pointer",flexShrink:0,transition:"background 0.12s, color 0.12s"},onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-hover)",a.currentTarget.style.color="var(--text)"},onMouseLeave:a=>{a.currentTarget.style.background=g?"var(--bg-selected)":"none",a.currentTarget.style.color=g?"var(--text)":"var(--text-muted)"},children:(0,L.jsx)(b4,{size:16,"aria-hidden":"true"})}),(0,L.jsx)("button",{className:"app-no-drag",onClick:s,title:r?N("desktop.hideFilePanel"):N("desktop.showFilePanel"),"aria-label":r?N("desktop.hideFilePanel"):N("desktop.showFilePanel"),style:{display:"flex",alignItems:"center",justifyContent:"center",width:36,height:36,padding:0,background:r?"var(--bg-selected)":"none",border:"none",color:r?"var(--text)":"var(--text-muted)",cursor:"pointer",flexShrink:0,transition:"background 0.12s, color 0.12s"},onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-hover)",a.currentTarget.style.color="var(--text)"},onMouseLeave:a=>{a.currentTarget.style.background=r?"var(--bg-selected)":"none",a.currentTarget.style.color=r?"var(--text)":"var(--text-muted)"},children:(0,L.jsx)(uY,{size:16,"aria-hidden":"true",style:{transform:"scaleX(-1)"}})}),(0,L.jsx)(va,{isDark:d,toggleTheme:e,translate:N}),Q&&(0,L.jsx)("button",{className:"app-no-drag",type:"button",onClick:()=>{window.location.href="piweb-switch://manage"},title:N("desktop.serverSwitch"),"aria-label":N("desktop.serverSwitch"),style:{display:"flex",alignItems:"center",justifyContent:"center",width:36,height:36,padding:0,background:"none",border:"none",color:"var(--text-muted)",cursor:"pointer",flexShrink:0,transition:"background 0.12s, color 0.12s"},onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-hover)",a.currentTarget.style.color="var(--text)"},onMouseLeave:a=>{a.currentTarget.style.background="none",a.currentTarget.style.color="var(--text-muted)"},children:(0,L.jsx)(aM,{size:16,"aria-hidden":"true"})}),!Q&&!f&&(0,L.jsx)("button",{className:"app-no-drag",type:"button",onClick:t,title:N("desktop.refreshSession"),"aria-label":N("desktop.refreshSession"),style:{display:"flex",alignItems:"center",justifyContent:"center",width:36,height:36,padding:0,background:"none",border:"none",color:"var(--text-muted)",cursor:"pointer",flexShrink:0,transition:"background 0.12s, color 0.12s"},onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-hover)",a.currentTarget.style.color="var(--text)"},onMouseLeave:a=>{a.currentTarget.style.background="none",a.currentTarget.style.color="var(--text-muted)"},children:(0,L.jsx)(aw,{size:16,"aria-hidden":"true"})}),(0,L.jsx)("button",{className:"app-no-drag",type:"button",onClick:u,title:N("desktop.settings"),"aria-label":N("desktop.settings"),style:{display:"flex",alignItems:"center",justifyContent:"center",width:36,height:36,padding:0,background:"none",border:"none",color:"var(--text-muted)",cursor:"pointer",flexShrink:0,transition:"background 0.12s, color 0.12s"},onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-hover)",a.currentTarget.style.color="var(--text)"},onMouseLeave:a=>{a.currentTarget.style.background="none",a.currentTarget.style.color="var(--text-muted)"},children:(0,L.jsx)(ul,{size:16,"aria-hidden":"true"})})]})]}),(0,L.jsx)(u7,{onRefreshSession:t}),k&&l&&(0,L.jsxs)("div",{style:{position:"fixed",top:l.top,left:l.left,width:l.width,maxHeight:`calc(100dvh - ${l.top}px)`,overflowY:"auto",zIndex:500},children:["system"===k&&(0,L.jsx)("div",{style:{background:"var(--bg-panel)",borderBottom:"1px solid var(--border)"},children:j?(0,L.jsx)("div",{style:{maxHeight:"min(600px, 75vh)",overflowY:"auto",padding:"12px 16px",color:"var(--text-muted)",fontSize:12,lineHeight:1.6,whiteSpace:"pre-wrap",fontFamily:"var(--font-mono)"},children:j}):""===j?(0,L.jsx)("div",{style:{padding:"10px 16px",fontSize:12,color:"var(--text-muted)",fontStyle:"italic"},children:"System prompt is empty (tools are disabled)"}):(0,L.jsx)("div",{style:{padding:"10px 16px",fontSize:12,color:"var(--text-muted)",fontStyle:"italic"},children:"Send a message to load the system prompt"})}),"session"===k&&(0,L.jsx)("div",{style:{background:"var(--bg-panel)",borderBottom:"1px solid var(--border)",boxShadow:"0 10px 28px rgba(0,0,0,0.10)",padding:"12px 16px"},children:m?(A=[...m.sessionName?[{label:N("desktop.name"),value:m.sessionName,copyField:null}]:[],{label:N("desktop.sessionInfoFile"),value:m.sessionFile??N("desktop.sessionInfoInMemory"),copyField:"file"},{label:N("desktop.sessionInfoId"),value:m.sessionId,copyField:"id"}],B=[[N("desktop.sessionInfoUser"),m.userMessages.toLocaleString()],[N("desktop.sessionInfoAssistant"),m.assistantMessages.toLocaleString()],[N("desktop.sessionInfoToolCalls"),m.toolCalls.toLocaleString()],[N("desktop.sessionInfoToolResults"),m.toolResults.toLocaleString()],[N("desktop.sessionInfoTotal"),m.totalMessages.toLocaleString()]],C=[[N("desktop.sessionInfoInput"),m.tokens.input.toLocaleString()],[N("desktop.sessionInfoOutput"),m.tokens.output.toLocaleString()],...m.tokens.cacheRead>0?[[N("desktop.sessionInfoCacheRead"),m.tokens.cacheRead.toLocaleString()]]:[],...m.tokens.cacheWrite>0?[[N("desktop.sessionInfoCacheWrite"),m.tokens.cacheWrite.toLocaleString()]]:[],[N("desktop.sessionInfoTotal"),m.tokens.total.toLocaleString()]],D=o??m.contextUsage,F=[...m.cost>0?[[N("desktop.sessionInfoCost"),`$${m.cost.toFixed(4)}`]]:[],...D?.contextWindow?[[N("desktop.sessionInfoContext"),`${null!==D.percent?`${D.percent.toFixed(1)}%`:"?"} / ${(E=D.contextWindow)>=1e6?`${(E/1e6).toFixed(1)}M`:E>=1e3?`${(E/1e3).toFixed(0)}k`:String(E)}`]]:[]],G=(a,b,c="left",d=!1)=>(0,L.jsxs)("div",{style:{minWidth:0},children:[(0,L.jsx)("div",{style:{fontSize:11,fontWeight:700,color:"var(--text)",marginBottom:6},children:a}),(0,L.jsx)("div",{style:{display:"grid",gridTemplateColumns:d?"max-content max-content":"auto minmax(0, 1fr)",columnGap:d?14:12,rowGap:4,justifyContent:d?"start":void 0},children:b.map(([b,e])=>(0,L.jsxs)("div",{style:{display:"contents"},children:[(0,L.jsx)("div",{style:{color:"var(--text-dim)",whiteSpace:"nowrap"},children:b}),(0,L.jsx)("div",{style:{color:"var(--text-muted)",minWidth:0,overflowWrap:d?"normal":"anywhere",textAlign:c,whiteSpace:"right"===c?"nowrap":"normal"},children:e})]},`${a}:${b}`))})]}),H=(a,b)=>{let c=p===a;return(0,L.jsx)("button",{type:"button",title:c?N("desktop.copied"):N({file:"desktop.copyFilePath",id:"desktop.copySessionId",projectDir:"desktop.copyProjectDir",gitBranch:"desktop.copyGitBranch",gitWorktree:"desktop.copyGitWorktree"}[a]),onClick:()=>q(a,b),style:{alignSelf:"start",display:"inline-flex",alignItems:"center",justifyContent:"center",width:22,height:22,marginTop:-2,color:c?"var(--accent)":"var(--text-dim)",background:"transparent",border:"1px solid var(--border)",borderRadius:4,cursor:"pointer",flex:"0 0 auto",transition:"color 0.12s, border-color 0.12s, background 0.12s"},onMouseEnter:a=>{a.currentTarget.style.color="var(--accent)",a.currentTarget.style.borderColor="var(--accent)",a.currentTarget.style.background="var(--bg-hover)"},onMouseLeave:a=>{a.currentTarget.style.color=c?"var(--accent)":"var(--text-dim)",a.currentTarget.style.borderColor="var(--border)",a.currentTarget.style.background="transparent"},children:c?(0,L.jsx)(ac,{size:12,"aria-hidden":"true"}):(0,L.jsx)(ht,{size:12,"aria-hidden":"true"})})},I=(0,L.jsxs)("div",{style:{minWidth:0},children:[(0,L.jsx)("div",{style:{fontSize:11,fontWeight:700,color:"var(--text)",marginBottom:6},children:N("desktop.sessionInfoTitle")}),(0,L.jsx)("div",{style:{display:"grid",gridTemplateColumns:"auto minmax(0, 1fr) auto",columnGap:12,rowGap:8,alignItems:"start"},children:A.map(a=>(0,L.jsxs)("div",{style:{display:"contents"},children:[(0,L.jsx)("div",{style:{color:"var(--text-dim)",whiteSpace:"nowrap"},children:a.label}),(0,L.jsx)("div",{style:{color:"var(--text-muted)",minWidth:0,overflowWrap:"anywhere",wordBreak:"break-word",whiteSpace:"normal"},children:a.value}),(0,L.jsx)("div",{children:a.copyField?H(a.copyField,a.value):null})]},`session-info:${a.label}`))})]}),K=(J=[...n?[{label:N("desktop.projectDir"),value:n.projectRoot??n.cwd,copyField:"projectDir"}]:[],...n?.branch?[{label:N("desktop.gitBranch"),value:n.branch,copyField:"gitBranch"}]:[],...n?.isWorktree?[{label:N("desktop.gitWorktree"),value:n.cwd,copyField:"gitWorktree"}]:[]]).length>0?(0,L.jsxs)("div",{style:{minWidth:0},children:[(0,L.jsx)("div",{style:{fontSize:11,fontWeight:700,color:"var(--text)",marginBottom:6},children:N("desktop.projectSection")}),(0,L.jsx)("div",{style:{display:"grid",gridTemplateColumns:"auto minmax(0, 1fr) auto",columnGap:12,rowGap:8,alignItems:"start"},children:J.map(a=>(0,L.jsxs)("div",{style:{display:"contents"},children:[(0,L.jsx)("div",{style:{color:"var(--text-dim)",whiteSpace:"nowrap"},children:a.label}),(0,L.jsx)("div",{style:{color:"var(--text-muted)",minWidth:0,overflowWrap:"anywhere",wordBreak:"break-word",whiteSpace:"normal"},children:a.value}),(0,L.jsx)("div",{children:a.copyField?H(a.copyField,a.value):null})]},`project-info:${a.label}`))})]}):null,(0,L.jsxs)("div",{style:{display:"grid",gridTemplateColumns:f?"1fr":"minmax(360px, 1.7fr) minmax(140px, 0.55fr) minmax(190px, 0.75fr)",gap:f?16:24,fontSize:12,lineHeight:1.5,fontFamily:"var(--font-mono)"},children:[(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:f?16:20,minWidth:0},children:[I,K]}),G(N("desktop.sessionInfoMessages"),B),G(N("desktop.sessionInfoTokens"),[...C,...F],"right",!0)]})):(0,L.jsx)("div",{style:{fontSize:12,color:"var(--text-muted)",fontStyle:"italic"},children:N("desktop.sendMessageForSessionInfo")})})]}),O&&v&&(0,L.jsx)("div",{style:{position:"fixed",inset:0,zIndex:3e3,display:"flex",alignItems:"flex-start",justifyContent:"center",paddingTop:48,background:"rgba(0,0,0,0.35)"},children:(0,L.jsx)("div",{role:"dialog","aria-label":v,style:{maxWidth:"min(560px, calc(100vw - 32px))",maxHeight:"min(60vh, 400px)",overflow:"auto",background:"var(--bg-panel)",border:"1px solid var(--border)",borderRadius:12,boxShadow:"0 16px 40px rgba(0,0,0,0.3)",padding:"14px 18px",fontSize:13,lineHeight:1.6,color:"var(--text)",wordBreak:"break-word",whiteSpace:"pre-wrap"},children:v})})]})}function vc({cwd:a,busy:b,error:c,onCancelAction:d,onConfirmAction:e}){let{t:f}=(0,bb.s)();return(0,L.jsx)("div",{role:"presentation",style:{position:"fixed",inset:0,zIndex:1100,display:"flex",alignItems:"center",justifyContent:"center",padding:16,background:"rgba(0, 0, 0, 0.4)"},children:(0,L.jsxs)("section",{role:"dialog","aria-modal":"true","aria-labelledby":"project-trust-title",style:{width:440,maxWidth:"100%",border:"1px solid var(--border)",borderRadius:8,background:"var(--bg-panel)",boxShadow:"0 12px 36px rgba(0, 0, 0, 0.24)",overflow:"hidden"},children:[(0,L.jsxs)("div",{style:{display:"flex",gap:12,padding:"18px 18px 14px"},children:[(0,L.jsx)(q8,{size:21,weight:"duotone",color:"var(--accent-orange)",style:{flexShrink:0,marginTop:1},"aria-hidden":"true"}),(0,L.jsxs)("div",{style:{minWidth:0},children:[(0,L.jsx)("h2",{id:"project-trust-title",style:{margin:0,fontSize:15,fontWeight:700,color:"var(--text)"},children:f("desktop.trustProjectTitle")}),(0,L.jsx)("p",{style:{margin:"7px 0 0",fontSize:12,lineHeight:1.6,color:"var(--text-muted)"},children:f("desktop.trustProjectBody")}),(0,L.jsx)("code",{style:{display:"block",marginTop:10,padding:"8px 10px",border:"1px solid var(--border)",borderRadius:5,background:"var(--bg)",color:"var(--text)",fontFamily:"var(--font-mono)",fontSize:11,overflowWrap:"anywhere"},children:a}),c&&(0,L.jsx)("div",{role:"alert",style:{marginTop:10,color:"var(--accent-red)",fontSize:12,lineHeight:1.5},children:c})]})]}),(0,L.jsxs)("footer",{style:{display:"flex",justifyContent:"flex-end",gap:8,padding:"10px 18px",borderTop:"1px solid var(--border)"},children:[(0,L.jsx)("button",{type:"button",onClick:d,disabled:b,style:{height:32,padding:"0 12px",border:"1px solid var(--border)",borderRadius:5,background:"transparent",color:"var(--text-muted)",cursor:b?"not-allowed":"pointer",fontSize:12},children:f("desktop.cancel")}),(0,L.jsx)("button",{type:"button",onClick:e,disabled:b,style:{height:32,padding:"0 12px",border:"1px solid var(--accent)",borderRadius:5,background:"var(--accent)",color:"white",cursor:b?"wait":"pointer",opacity:b?.7:1,fontSize:12,fontWeight:600},children:f(b?"desktop.trustingProject":"desktop.trustProject")})]})]})})}function vd(a,b,c){let d=Number.isFinite(a)?a:b,e=Math.max(b,c);return Math.round(Math.max(b,Math.min(e,d)))}function ve(a){return vd(.42*a,360,640)}function vf(a){let{ariaLabel:b,cssVariable:c,defaultWidth:d,getDefaultWidth:e,getMaxWidth:f,growthDirection:g,maxWidth:h,minWidth:i,storageKey:j,widthRef:k}=a,l=(0,M.useRef)(null),m=(0,M.useRef)(null);(0,M.useRef)(!1);let[n,o]=(0,M.useState)(d),[p,q]=(0,M.useState)(!1),[r,s]=(0,M.useState)(!1),t=(0,M.useCallback)(()=>Math.min(h,Math.max(i,f())),[f,h,i]),u=(0,M.useCallback)(a=>vd(a,i,t()),[t,i]),v=(0,M.useCallback)(a=>{k.current=a;let b=`${a}px`;l.current?.style.setProperty(c,b),l.current?.parentElement?.style.setProperty(c,b)},[c,k]),w=(0,M.useCallback)((a,b={})=>{let{forcePersist:c=!1,persist:d=!0}=b,e=u(a),f=e!==k.current;return v(e),o(e),d&&(f||c)&&function(a,b){try{window.localStorage.setItem(a,String(b))}catch{}}(j,e),e},[v,u,j,k]),x=(0,M.useCallback)(a=>{document.body.style.cursor=a.previousCursor,document.body.style.userSelect=a.previousUserSelect},[]),y=(0,M.useCallback)(a=>{let b=m.current;if(b&&b.pointerId===a){m.current=null,x(b),q(!1),w(k.current,{forcePersist:!0});try{b.target.hasPointerCapture(a)&&b.target.releasePointerCapture(a)}catch{}}},[w,x,k]),z=(0,M.useCallback)(a=>{if("mouse"===a.pointerType&&0!==a.button)return;a.preventDefault(),a.stopPropagation();let b=m.current;b&&y(b.pointerId);let c=a.currentTarget;c.focus({preventScroll:!0}),c.setPointerCapture(a.pointerId),m.current={pointerId:a.pointerId,startX:a.clientX,startWidth:k.current,target:c,previousCursor:document.body.style.cursor,previousUserSelect:document.body.style.userSelect},document.body.style.cursor="col-resize",document.body.style.userSelect="none",q(!0)},[y,k]),A=(0,M.useCallback)(a=>{let b=m.current;if(!b||b.pointerId!==a.pointerId)return;if("mouse"===a.pointerType&&0===a.buttons)return void y(a.pointerId);a.preventDefault();let c="right"===g?1:-1,d=u(b.startWidth+(a.clientX-b.startX)*c);v(d),a.currentTarget.setAttribute("aria-valuenow",String(d)),a.currentTarget.setAttribute("aria-valuetext",`${d} px`)},[v,u,y,g]),B=(0,M.useCallback)(a=>{y(a.pointerId)},[y]),C=(0,M.useCallback)(a=>{y(a.pointerId)},[y]),D=(0,M.useCallback)(a=>{y(a.pointerId)},[y]),E=(0,M.useCallback)(()=>{w(e?.()??d,{forcePersist:!0})},[w,d,e]),F=(0,M.useCallback)(()=>{w(k.current)},[w,k]),G=(0,M.useCallback)(a=>{let b=a.shiftKey?32:12,c="right"===g?"ArrowRight":"ArrowLeft",d="right"===g?"ArrowLeft":"ArrowRight";a.key===c?(a.preventDefault(),w(k.current+b,{forcePersist:!0})):a.key===d?(a.preventDefault(),w(k.current-b,{forcePersist:!0})):"Home"===a.key?(a.preventDefault(),w(i,{forcePersist:!0})):"End"===a.key?(a.preventDefault(),w(t(),{forcePersist:!0})):"Enter"===a.key&&(a.preventDefault(),E())},[w,t,g,i,E,k]);return{isResizing:p,panelRef:l,reclampWidth:F,separatorProps:{"aria-label":b,"aria-orientation":"vertical","aria-valuemax":r?t():h,"aria-valuemin":i,"aria-valuenow":n,"aria-valuetext":`${n} px`,onDoubleClick:E,onKeyDown:G,onLostPointerCapture:D,onPointerCancel:C,onPointerDown:z,onPointerMove:A,onPointerUp:B,role:"separator",tabIndex:0},width:n}}function vg({status:a}){return"running"===a||"starting"===a?(0,L.jsxs)("svg",{className:"animate-spin",width:"13",height:"13",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",children:[(0,L.jsx)("circle",{cx:"12",cy:"12",r:"9",stroke:"currentColor",strokeWidth:"2",opacity:"0.25"}),(0,L.jsx)("path",{d:"M21 12a9 9 0 0 0-9-9",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"})]}):"queued"===a?(0,L.jsxs)("svg",{width:"13",height:"13",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round","aria-hidden":"true",children:[(0,L.jsx)("circle",{cx:"12",cy:"12",r:"9"}),(0,L.jsx)("path",{d:"M12 7v5l3 2"})]}):"failed"===a?(0,L.jsxs)("svg",{width:"13",height:"13",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round","aria-hidden":"true",children:[(0,L.jsx)("circle",{cx:"12",cy:"12",r:"9"}),(0,L.jsx)("path",{d:"m9 9 6 6M15 9l-6 6"})]}):"aborted"===a||"interrupted"===a?(0,L.jsxs)("svg",{width:"13",height:"13",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round","aria-hidden":"true",children:[(0,L.jsx)("circle",{cx:"12",cy:"12",r:"9"}),(0,L.jsx)("path",{d:"M9 9h6v6H9z"})]}):(0,L.jsxs)("svg",{width:"13",height:"13",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[(0,L.jsx)("circle",{cx:"12",cy:"12",r:"9"}),(0,L.jsx)("path",{d:"m8 12 3 3 5-6"})]})}function vh({session:a,main:b,selected:c,running:d,onSelect:e}){let{locale:f,t:g}=(0,bb.s)(),h=a.relation?.kind==="subagent"?a.relation:null,i=d?"running":h?.status??"completed",j=b?g("agentSwitcher.main"):h?.description||fe(a),k=b?fe(a):`${h?.profile??g("agentSwitcher.subagent")} \xb7 ${function(a,b){let c=new Date(a).getTime();if(!Number.isFinite(c))return"";let d=Math.round((c-Date.now())/1e3),e=new Intl.RelativeTimeFormat(b,{numeric:"auto"});if(60>Math.abs(d))return e.format(d,"second");let f=Math.round(d/60);if(60>Math.abs(f))return e.format(f,"minute");let g=Math.round(f/60);return 24>Math.abs(g)?e.format(g,"hour"):e.format(Math.round(g/24),"day")}(a.modified,f)}`;return(0,L.jsxs)("button",{type:"button",role:"option","aria-selected":c,onClick:e,style:{width:"100%",minHeight:56,display:"grid",gridTemplateColumns:"28px minmax(0, 1fr) auto",alignItems:"center",gap:9,padding:"7px 12px",border:"none",borderBottom:"1px solid var(--border)",borderLeft:c?"2px solid var(--accent)":"2px solid transparent",background:c?"var(--bg-selected)":"transparent",color:"var(--text)",cursor:"pointer",textAlign:"left"},onMouseEnter:a=>{c||(a.currentTarget.style.background="var(--bg-hover)")},onMouseLeave:a=>{c||(a.currentTarget.style.background="transparent")},children:[(0,L.jsx)("span",{style:{width:28,height:28,display:"grid",placeItems:"center",color:b?"var(--text-muted)":"var(--accent)"},children:b?(0,L.jsxs)("svg",{width:"17",height:"17",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[(0,L.jsx)("circle",{cx:"12",cy:"8",r:"4"}),(0,L.jsx)("path",{d:"M4 21a8 8 0 0 1 16 0"})]}):(0,L.jsxs)("svg",{width:"17",height:"17",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[(0,L.jsx)("rect",{x:"5",y:"7",width:"14",height:"11",rx:"2"}),(0,L.jsx)("path",{d:"M9 11h.01M15 11h.01M9 15h6M12 7V4M10 4h4"})]})}),(0,L.jsxs)("span",{style:{minWidth:0},children:[(0,L.jsx)("span",{style:{display:"block",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",fontSize:12,fontWeight:c?600:500},title:j,children:j}),(0,L.jsx)("span",{style:{display:"block",marginTop:2,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",color:"var(--text-dim)",fontSize:11},title:k,children:k})]}),(0,L.jsx)("span",{style:{display:"flex",alignItems:"center",gap:6,color:b&&!d?"var(--text-dim)":"running"===i||"starting"===i?"var(--accent)":"queued"===i?"var(--text-dim)":"completed"===i?"var(--status-success)":"failed"===i?"var(--status-error)":"aborted"===i?"var(--status-warning)":"var(--text-dim)",fontSize:11,whiteSpace:"nowrap"},children:b&&!d?c?g("agentSwitcher.current"):null:(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(vg,{status:i}),(0,L.jsx)("span",{children:g(`agentSwitcher.status.${i}`)})]})})]})}function vi({rootSession:a,subagents:b,selectedSessionId:c,runningSessionIds:d,onSelectSession:e}){let{t:f}=(0,bb.s)(),[g,h]=(0,M.useState)(""),i=(0,M.useMemo)(()=>[...b].sort((a,b)=>{let c=d.has(a.id);return c!==d.has(b.id)?c?-1:1:b.modified.localeCompare(a.modified)}),[d,b]),j=g.trim().toLowerCase(),k=j?i.filter(a=>{let b=a.relation?.kind==="subagent"?a.relation:null;return[b?.description,b?.profile,a.name,a.firstMessage].some(a=>a?.toLowerCase().includes(j))}):i,l=b.filter(a=>d.has(a.id)).length;return(0,L.jsx)("div",{role:"listbox","aria-label":f("agentSwitcher.title"),style:{background:"var(--bg-panel)",borderLeft:"1px solid var(--border)",borderRight:"1px solid var(--border)",borderBottom:"1px solid var(--border)",borderRadius:"0 0 6px 6px",boxShadow:"0 10px 28px rgba(0,0,0,0.10)",overflow:"hidden"},children:(0,L.jsxs)("div",{children:[(0,L.jsxs)("div",{style:{minHeight:44,display:"flex",alignItems:"center",gap:8,padding:"7px 12px",borderBottom:"1px solid var(--border)"},children:[(0,L.jsx)("strong",{style:{fontSize:12,fontWeight:600},children:f("agentSwitcher.title")}),(0,L.jsx)("span",{style:{color:"var(--text-dim)",fontSize:11},children:f("agentSwitcher.count",{count:b.length})}),l>0&&(0,L.jsx)("span",{style:{marginLeft:"auto",color:"var(--accent)",fontSize:11},children:f("agentSwitcher.runningCount",{count:l})})]}),b.length>8&&(0,L.jsx)("div",{style:{padding:8,borderBottom:"1px solid var(--border)"},children:(0,L.jsx)("input",{type:"search",value:g,onChange:a=>h(a.target.value),placeholder:f("agentSwitcher.search"),"aria-label":f("agentSwitcher.search"),style:{width:"100%",height:32,padding:"0 10px",border:"1px solid var(--border)",borderRadius:6,background:"var(--bg)",color:"var(--text)",fontSize:12,outline:"none"}})}),(0,L.jsxs)("div",{style:{maxHeight:"min(58dvh, 480px)",overflowY:"auto"},children:[(0,L.jsx)(vh,{session:a,main:!0,selected:a.id===c,running:d.has(a.id),onSelect:()=>e(a)}),k.map(a=>(0,L.jsx)(vh,{session:a,selected:a.id===c,running:d.has(a.id),onSelect:()=>e(a)},a.id)),0===k.length&&(0,L.jsx)("div",{style:{padding:"22px 12px",color:"var(--text-dim)",fontSize:12,textAlign:"center"},children:f("agentSwitcher.noMatches")})]})]})})}function vj(){var a;let b,c,d=(0,S.useRouter)(),e=(0,S.useSearchParams)(),f=(0,M.useMemo)(()=>{let a;return{requestedCwd:a=e.get("cwd")?.trim()||null,sessionId:a?null:e.get("session"),sidebarCollapsed:"collapsed"===e.get("sidebar")}},[e]),{isDark:g,toggleTheme:h}=bT(),{t:i}=(0,bb.s)(),j=cx(),[k,l]=(0,M.useState)(null),[m,n]=(0,M.useState)(null),[o,p]=(0,M.useState)(0),[q,r]=(0,M.useState)(0),[s,t]=(0,M.useState)(0),[u,v]=(0,M.useState)(!1),[w,x]=(0,M.useState)("models"),[y,z]=(0,M.useState)(0),[A,B]=(0,M.useState)(null),[C,D]=(0,M.useState)(!1),[E,F]=(0,M.useState)(!1),[G,H]=(0,M.useState)(null),[I,J]=(0,M.useState)(()=>!f.sidebarCollapsed),[K,N]=(0,M.useState)(!1),O=(0,M.useRef)(null),P=(0,M.useRef)(null),[Q,T]=(0,M.useState)(null),[U,V]=(0,M.useState)(null),[W,X]=(0,M.useState)(null),Y=u5(),Z=function(){let{isDesktop:a,isMacOS:b}=u5(),c=(0,M.useCallback)(a=>{var b;0===a.button&&(b=a.target).closest("[data-tauri-drag-region]")&&!b.closest('button, a, input, textarea, select, [role="button"], [contenteditable="true"], [data-no-drag]')&&(a.preventDefault(),a.stopPropagation(),2===a.detail?u2():u3())},[]);return a&&!b?{onMouseDown:c}:{}}(),[$,_]=(0,M.useState)(null),aa=(0,M.useCallback)(a=>{_(a)},[]),[ab,ac]=(0,M.useState)(null),ad=(0,M.useCallback)(a=>{ac(a)},[]),[ae,af]=(0,M.useState)(null),ag=(0,M.useRef)(null),ah=(0,M.useCallback)((a,b)=>{eu(b).then(()=>{ag.current&&clearTimeout(ag.current),af(a),ag.current=setTimeout(()=>af(null),1400)})},[]),[ai,aj]=(0,M.useState)(null),ak=(0,M.useCallback)(a=>{aj(a)},[]),[al,am]=(0,M.useState)(null),[an,ao]=(0,M.useState)(null),ap=(0,M.useCallback)(()=>{j&&J(!1),am("session")},[j]),aq=(0,M.useCallback)(()=>{j&&am(null),J(a=>!a)},[j]),[ar,as]=(0,M.useState)([]),[at,au]=(0,M.useState)(null),[av,aw]=(0,M.useState)(!1);(0,M.useRef)(!1);let[ax,ay]=(0,M.useState)(!1),[az,aA]=(0,M.useState)([]),[aB,aC]=(0,M.useState)(()=>new Set),aD=(0,M.useCallback)(async a=>{try{let b=await fetch(`/api/sessions/${encodeURIComponent(a)}`,{cache:"no-store"}),c=await b.json();if(!b.ok||!c.info)throw Error(c.error??`HTTP ${b.status}`);a2.current(c.info)}catch(a){console.error("[pi-web] failed to open session:",a instanceof Error?a.message:a)}},[]),aE=(0,M.useRef)(260),aF=(0,M.useRef)(ve(1366)),aG=(0,M.useCallback)(()=>ve(1366),[]),aH=(0,M.useCallback)(()=>480,[av]),aI=(0,M.useCallback)(()=>1200,[I]),aJ=vf({ariaLabel:i("desktop.resizeSidebar"),cssVariable:"--sidebar-width",defaultWidth:260,getMaxWidth:aH,growthDirection:"right",maxWidth:480,minWidth:180,storageKey:"pi-sidebar-width",widthRef:aE}),aK=vf({ariaLabel:i("desktop.resizeFilePanel"),cssVariable:"--right-panel-width",defaultWidth:ve(1366),getDefaultWidth:aG,getMaxWidth:aI,growthDirection:"left",maxWidth:1200,minWidth:300,storageKey:"pi-right-panel-width",widthRef:aF});aJ.reclampWidth,aK.reclampWidth;let aL=(0,M.useCallback)((a,b)=>{O.current?.insertText(sd(a,b))},[]),aM=(0,M.useCallback)(a=>{let b=a.map(a=>sd(a,!1)).join("");b&&O.current?.insertText(b)},[]),aN=(0,M.useCallback)((a,b,c)=>{let d,e,f,g;O.current?.insertText((d=Math.max(1,Math.min(b,c)),e=Math.max(1,Math.max(b,c)),f=a.includes(" ")?`@"${a}"`:`@${a}`,g=d===e?`:${d}`:`:${d}-${e}`,`${f}${g} `))},[]),[aO,aP]=(0,M.useState)(()=>f.sessionId),[aQ,aR]=(0,M.useState)(null),[aS,aT]=(0,M.useState)(()=>f.requestedCwd?"validating":"idle"),[aU,aV]=(0,M.useState)(null),[aW,aX]=(0,M.useState)(()=>!aO),aY=(0,M.useRef)(!1),aZ=(0,M.useRef)(new Map),[a$,a_]=(0,M.useState)(null);(0,M.useRef)("");let a0=(0,M.useCallback)((a,b)=>{if(!a)return;if(aR(a),aY.current&&k&&gT(k.projectRoot??k.cwd,b??a)){if(aY.current=!1,k){let a=k.projectRoot??k.cwd;a&&aZ.current.set(a,k.id)}return}aY.current=!1;let c=b??a;if(k&&gT(k.projectRoot??k.cwd,c)){(k.projectRoot??k.cwd)&&aZ.current.set(c,k.id);return}if(k){let a=k.projectRoot??k.cwd;a&&aZ.current.set(a,k.id)}l(null),n(b=>b&&b!==a?null:b),r(a=>a+1),_(null),am(null),window.history.replaceState(null,"","/");let d=aZ.current.get(c);a_(d?{projectRoot:c,sessionId:d}:null)},[k]),a1=(0,M.useCallback)((a,b=!1)=>{if(b||a_(null),!b&&k){let b=gT(k.projectRoot??k.cwd,a.projectRoot??a.cwd);if(k.id===a.id&&b){j&&J(!1);return}}let c=a.projectRoot??a.cwd;c&&aZ.current.set(c,a.id),n(null),l(a),r(a=>a+1),_(null),aX(!0),j&&!b&&J(!1),b&&(aY.current=!0),b||window.history.replaceState(null,"",`?session=${encodeURIComponent(a.id)}`)},[j,k]),a2=(0,M.useRef)(()=>{}),a3=(0,M.useCallback)(a=>{fetch("/api/sessions").then(a=>a.ok?a.json():null).then(b=>{let c=b?.sessions.find(b=>b.id===a);c&&l(b=>!b||b.id!==a||b.projectRoot&&b.name?b:c)}).catch(()=>{})},[]),a4=(0,M.useCallback)((a,b)=>{a_(null),l(null),n(b),r(a=>a+1),_(null),am(null),j&&J(!1),window.history.replaceState(null,"","/")},[d,j]);!function(a){let{onNewSession:b,activeCwd:c}=a}({onNewSession:a=>a4(`kb-${Date.now()}`,a),activeCwd:aQ});let a5=(0,M.useCallback)(a=>{n(null),a_(null);let b=a.projectRoot??a.cwd;b&&aZ.current.set(b,a.id),l(a),a.cwd&&aR(a.cwd),p(a=>a+1),a3(a.id),window.history.replaceState(null,"",`?session=${encodeURIComponent(a.id)}`),window.setTimeout(()=>p(a=>a+1),1200),window.setTimeout(()=>p(a=>a+1),4e3)},[d,a3]),a6=(0,M.useCallback)(()=>{p(a=>a+1),t(a=>a+1)},[]),a7=(0,M.useCallback)(a=>{p(a=>a+1),r(a=>a+1),n(null),a_(null),l(b=>{let c={...b??{path:"",cwd:"",created:"",modified:"",messageCount:0,firstMessage:""},id:a},d=c.projectRoot??c.cwd;return d&&aZ.current.set(d,a),c}),a3(a),window.history.replaceState(null,"",`?session=${encodeURIComponent(a)}`)},[d,a3]),a8=(0,M.useCallback)(()=>{aX(!0)},[]),a9=(0,M.useCallback)(a=>{if(p(a=>a+1),k?.id===a){let a=k.cwd;l(null),n(a??null),r(a=>a+1),_(null),am(null),window.history.replaceState(null,"","/")}},[d,k]),ba=(0,M.useCallback)((a,b,c,d)=>{let e="string"==typeof c||null===c?c:void 0,f="object"==typeof c&&null!==c?c:d,g=`file:${a}`;as(c=>{let d=c.find(a=>a.id===g);return d?e&&d.sourceSessionId!==e||f?.initialDisplayMode&&d.initialDisplayMode!==f.initialDisplayMode?c.map(a=>a.id===g?{...a,sourceSessionId:e??a.sourceSessionId,initialDisplayMode:f?.initialDisplayMode??a.initialDisplayMode}:a):c:[...c,{id:g,label:b,filePath:a,sourceSessionId:e,initialDisplayMode:f?.initialDisplayMode}]}),au(g),aw(!0),j&&J(!1)},[j]),bc=(0,M.useCallback)(a=>{ba(a,fK(a),k?.id??null)},[ba,k?.id]),bd=(0,M.useMemo)(()=>{let a=new Map;for(let b of az){if(b.relation?.kind!=="subagent")continue;let c=b.relation;a.set(b.id,{status:aB.has(b.id)?"running":c.status,...c.createdAt?{createdAt:c.createdAt}:{},...c.completedAt?{completedAt:c.completedAt}:{}})}return a},[az,aB]),be=(0,M.useCallback)((a,b)=>{let c=`subagent:${a}`;as(d=>d.some(a=>a.id===c)?d:[...d,{id:c,label:b,filePath:"",kind:"subagent",sessionId:a}]),au(c),aw(!0),j&&J(!1)},[j]),bf=(0,M.useCallback)(a=>{as(b=>{let c=b.filter(b=>b.id!==a);return 0===c.length&&aw(!1),c}),au(b=>{if(b!==a)return b;let c=ar.filter(b=>b.id!==a);return c.length>0?c[c.length-1].id:null})},[ar]),bg=(0,M.useCallback)(a=>{t(a=>a+1),ba(a,fK(a))},[ba]),bh=(0,M.useCallback)((a,b)=>{t(a=>a+1);let c=a.endsWith("/")?a:a+"/",d=d=>d===a||b&&d.startsWith(c);as(a=>{let b=a.filter(a=>!d(a.filePath));return 0===b.length&&aw(!1),b}),au(a=>{if(!a)return a;let b=ar.find(b=>b.id===a);if(!b||!d(b.filePath))return a;let c=ar.filter(a=>!d(a.filePath));return c.length>0?c[c.length-1].id:null})},[ar]),bi=k?fe({name:k.name||ab?.sessionName||void 0,firstMessage:k.firstMessage,id:k.id},(k.cwd??aQ??"").replace(/[\\/]+$/,"").split(/[\\/]/).filter(Boolean).pop()):(b=aQ??m)?b.replace(/[\\/]+$/,"").split(/[\\/]/).filter(Boolean).pop()||b:null,bj=(0,M.useCallback)(()=>{k&&window.open(`/api/sessions/${encodeURIComponent(k.id)}/export?inline=1`,"_blank","noopener,noreferrer")},[k]),bk=m??(null===k&&aQ?aQ:null),bl="validating"!==aS&&"error"!==aS&&(null!==k||null!==bk),bm=k?.cwd??bk,[bn,bo]=(0,M.useState)(!1),bp=(0,M.useCallback)(()=>{j||bo(a=>!a)},[j]),[bq,br]=(0,M.useState)(!0),bs=aW&&!bl,bt=(0,M.useCallback)(async()=>{if(bm&&!E){F(!0),H(null);try{let a=await fetch("/api/project-trust",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({cwd:bm})}),b=await a.json();if(!a.ok||b.error)throw Error(b.error??`HTTP ${a.status}`);B(b),D(!1),z(a=>a+1),r(a=>a+1)}catch(a){H(a instanceof Error?a.message:String(a))}finally{F(!1)}}},[E,bm]),bu=ar.find(a=>a.id===at)??null,bv=aQ??k?.cwd??m,bw=(0,M.useCallback)(a=>{x(a),v(!0)},[]),bx=(0,L.jsx)(L.Fragment,{children:(0,L.jsx)(gZ,{selectedSessionId:k?.id??null,onSelectSession:a1,onNewSession:a4,initialSessionId:aO,onInitialRestoreDone:a8,refreshKey:o,onSessionDeleted:a9,selectedCwd:k?.cwd??m??null,onCwdChange:a0,onOpenFile:ba,selectedSessionStats:ab,onOpenSettings:a=>{bw(a??"models")},explorerRefreshKey:s,onAtMention:aL,onAtMentions:aM,onFileCreated:bg,onFileDeleted:bh,workspaceControlsHosts:{title:Q,welcome:W,titleRight:U},showWorkspaceControls:!0})});return(0,L.jsxs)(ui,{children:[(0,L.jsx)("style",{children:`
194
+ ${c}`):f=c;let n=f,o=e?.map(a=>({type:"image",source:{type:"base64",media_type:a.mimeType,data:a.data}})),p={role:"user",content:o?.length?[...c.trim()?[{type:"text",text:c}]:[],...o]:c,timestamp:Date.now()};z(a=>[...a,p]),b$.current=tL(p),bZ.current=i;let q="goal"===ay.current&&!h&&g.length>0&&"idle"===aI.current.status;q&&(aA.current=g,aH(a=>({...a,status:"running",goalText:g,turnsUsed:0,noProgressTurns:0,tokensUsed:0})),aJ.current=!0),bG.current=!0,T(!0),a3(h?{kind:"running_command"}:{kind:"waiting_model"}),J({type:"start"}),bQ.current=!0,a5(!0),bR.current=!0;let r=e?.map(a=>({type:"image",data:a.data,mimeType:a.mimeType})),s=null,t=!1;try{if(l&&d){let a=bE.current??await bX.current,b=a??await ct();if(b){s=b,cs(1,c),ai&&(aX(ai),a&&await cR(b,{type:"set_model",provider:ai.provider,modelId:ai.modelId}));let d=await Promise.race([cy(b).then(()=>!0).catch(()=>!1),tH(4e3).then(()=>!1)]);t=!0,await cR(b,{type:"prompt",message:n,...r?.length?{images:r}:{}}),d||cL(b,i),q&&cR(b,{type:"goal_start",goalText:g}).catch(()=>{})}else throw Error("Unable to create a session for this message")}else if(b){s=b.id;let a=await Promise.race([cy(b.id).then(()=>!0).catch(()=>!1),tH(4e3).then(()=>!1)]);t=!0,await cR(b.id,{type:"prompt",message:n,...r?.length?{images:r}:{}}),a||cL(b.id,i),q&&cR(b.id,{type:"goal_start",goalText:g}).catch(()=>{})}h&&s&&cL(s,i)}catch(b){if(console.error("Failed to send message:",b),t&&s)return void cL(s,i);if(bI.current=!1,cw(),b instanceof tG){let a=b$.current;a&&z(b=>{let c=b[b.length-1];return c?.role==="user"&&tL(c)===a?b.slice(0,-1):b}),cB({type:"error",message:b.message})}else{let c=b$.current;c&&z(a=>{let b=a[a.length-1];return b?.role==="user"&&tL(b)===c?a.slice(0,-1):a}),a.chatInputRef?.current?.replaceMessage?.(p),cB({type:"error",message:`Failed to send message: ${b instanceof Error?b.message:String(b)}`})}b$.current=null,bG.current=!1,T(!1),a3(null),J({type:"end"})}},[l,d,ai,b,ct,cy,cs,cL,cB,cv,cw,b6]),cQ=(0,M.useCallback)(async(c,d)=>{if(bG.current||bM.current)return;let e=`${d?"!!":"!"}${c}`;bM.current=!0,X({command:c,excludeFromContext:d}),V(!0);try{let a=bE.current??b?.id??await ct();if(!a)throw Error("Unable to create a session for the shell command");cs(1,e),await cR(a,{type:"bash",command:c,excludeFromContext:d}),await cq(a)}catch(b){console.error("Failed to execute shell command:",b),cB({type:"error",message:b instanceof Error?b.message:String(b)}),a.chatInputRef?.current?.insertIfEmpty(e)}finally{bM.current=!1,X(null),V(!1)}},[cB,ct,cq,a.chatInputRef,cs,b]),cS=(0,M.useCallback)(async()=>{let a=bE.current;if(a)try{await cR(a,{type:bM.current?"abort_bash":"abort"})}catch(a){console.error("Failed to abort:",a)}},[]),cT=(0,M.useCallback)(async a=>{let b=bE.current;if(b){aT(a);try{let{cancelled:c,newSessionId:d}=await cR(b,{type:"fork",entryId:a})??{};!c&&d&&g?.(d)}catch(a){console.error("Fork failed:",a)}finally{aT(null)}}},[g]),cU=(0,M.useCallback)(async a=>{if(bM.current)return!1;let b=bE.current;if(!b)return!1;try{let c=await cR(b,{type:"navigate_tree",targetId:a});if(c?.cancelled||bE.current!==b)return!1;return x(a),await cq(b),bE.current===b}catch(a){return console.error("Failed to navigate:",a),!1}},[cq]),cV=(0,M.useCallback)(async a=>{x(a);let b=bE.current;b&&(await cD(b,a),a&&cR(b,{type:"navigate_tree",targetId:a}).catch(()=>{}))},[cD]),cW=(0,M.useCallback)(async(a,b)=>{if(l){let c={provider:a,modelId:b};b3.current=c,aj(c),aX(c);let d=bE.current??await bX.current;if(!d)return;try{await cR(d,{type:"set_model",provider:a,modelId:b})}catch(a){console.error("Failed to set model:",a)}return}let c=bE.current;if(!c)return;let d=++b_.current,e=aU??n?.context.model??null;aV({provider:a,modelId:b});try{await cR(c,{type:"set_model",provider:a,modelId:b})}catch(c){console.error("Failed to set model:",c),b_.current===d&&(aV(e&&(e.provider!==a||e.modelId!==b)?e:null),cB({type:"error",message:c instanceof Error?c.message:String(c)}))}},[cB,aU,n?.context.model,l,aj]),cX=(0,M.useCallback)(async()=>{let a=bE.current;if(a&&!aY){aZ(!0),a_(null),a1(null);try{let b=await cR(a,{type:"compact"});a1(tM(b,"manual")),await cq(a,!0)}catch(a){a_(a instanceof Error?a.message:String(a)),a1(null)}finally{aZ(!1)}}},[aY,cq]),cY=(0,M.useCallback)(async a=>{let c=++b0.current,e=d??b?.cwd??"",f=e?`/api/models?cwd=${encodeURIComponent(e)}`:"/api/models",g=b1.current;g?.abort();let h=new AbortController;b1.current=h;let i=()=>h.abort();a?.aborted?h.abort():a?.addEventListener("abort",i,{once:!0});try{let a=await fetch(f,{signal:h.signal});if(!a.ok){let b=`HTTP ${a.status}`;try{let c=await a.json();c?.error&&(b=c.error)}catch{}throw Error(b)}let b=await a.json();if(c!==b0.current||m!==b2.current)return;ah(null),Z(b.models),ab(b.thinkingLevels??{}),ad(b.thinkingLevelMaps??{}),af(b.modelScopeWarnings??[]);let d=b.modelList??[];if(_(d),l&&!bE.current){let a=(b.defaultModel?d.find(a=>a.id===b.defaultModel?.modelId&&a.provider===b.defaultModel?.provider):void 0)??d[0];al(a?{provider:a.provider,modelId:a.id}:null);let c=a?b.thinkingLevelPins?.[`${a.provider}/${a.id}`]:void 0;null===b4.current&&aL(c??"auto")}}catch(a){if(h.signal.aborted||c!==b0.current||m!==b2.current)return;ah(a instanceof Error?a.message:String(a))}finally{a?.removeEventListener("abort",i),b1.current===h&&(b1.current=null)}},[l,m,d,b?.cwd]),cZ=(0,M.useCallback)(async a=>{if(!a.startsWith("/"))return{handled:!1};let b=a.match(/^\/([^\s]+)(?:\s+([\s\S]*))?$/);if(!b)return{handled:!1};let[,c,d=""]=b,e=d.trim(),f=bE.current??await ct(),g=a=>(a.handled&&(a.error?cB({type:"error",message:a.error}):"openSessionStats"!==a.action&&cB({type:"success",message:a.message??"Command completed"})),a);try{switch(c){case"compact":{if(!f||aY)return g({handled:!0,error:"No active session to compact"});aZ(!0),a_(null),a1(null);let a=await cR(f,{type:"compact",...e?{customInstructions:e}:{}});return a1(tM(a,"manual")),await cq(f,!0)&&cs(),g({handled:!0,message:"Compacted context"})}case"reload":if(!f)return g({handled:!0,error:"No active session to reload"});return await cR(f,{type:"reload"}),await Promise.all([cq(f,!1,!0),cr(f),cu(),cY()]),g({handled:!0,message:"Reloaded session resources"});case"name":if(!f)return g({handled:!0,error:"No active session to name"});if(!e)return g({handled:!0,error:"Usage: /name <name>"});return await cR(f,{type:"set_session_name",name:ck(e)}),await cq(f)&&cs(),g({handled:!0,message:`Session renamed to ${e}`});case"session":{if(!f)return g({handled:!0,error:"No active session"});let a=await cR(f,{type:"get_session_stats"});return a&&bd(a),k?.(),g({handled:!0,action:"openSessionStats"})}case"copy":{if(!f)return g({handled:!0,error:"No active session"});let a=await cR(f,{type:"get_last_assistant_text"}),b=a?.text??"";if(!b)return g({handled:!0,error:"No assistant message to copy"});return await navigator.clipboard.writeText(b),g({handled:!0,message:"Copied last assistant message"})}default:return{handled:!1}}}catch(a){return g({handled:!0,error:a instanceof Error?a.message:String(a)})}finally{"compact"===c&&aZ(!1)}},[cB,ct,aY,cY,cq,cu,cr,cs,k]),c$=(0,M.useCallback)(async a=>{let b=!1;try{let c=await fetch(`/api/agent/${encodeURIComponent(a)}`);if(c.ok){let a=await c.json(),d=a.state;if(a.running&&d&&(d.isStreaming||d.isPromptRunning||d.isBashRunning||d.isCompacting))return;b=!0}}catch{}b?cH():cL(a)},[cL,cH]),c_=(0,M.useCallback)(async(a,b)=>{let c=bE.current;if(!c)return;let d=b?.map(a=>({type:"image",data:a.data,mimeType:a.mimeType}));bG.current=!0,T(!0),a3(a=>a??{kind:"waiting_model"});try{await cR(c,{type:"steer",message:a,...d?.length?{images:d}:{}})}catch(a){console.error("Failed to steer:",a),c$(c)}},[c$]),c0=(0,M.useCallback)(async(a,b,c)=>{let d=bE.current;if(!d)return;let e=c?.map(a=>({type:"image",data:a.data,mimeType:a.mimeType}));bG.current=!0,T(!0),a3(a=>a??{kind:"waiting_model"});try{await cR(d,{type:"prompt",message:a,streamingBehavior:b,...e?.length?{images:e}:{}})}catch(a){console.error("Failed to queue prompt:",a),c$(d)}},[c$]),c1=(0,M.useCallback)(async(a,b)=>{let c=bE.current;if(!c)return;let d=b?.map(a=>({type:"image",data:a.data,mimeType:a.mimeType}));bG.current=!0,T(!0),a3(a=>a??{kind:"waiting_model"});try{await cR(c,{type:"follow_up",message:a,...d?.length?{images:d}:{}})}catch(a){console.error("Failed to follow up:",a),c$(c)}},[c$]),c2=(0,M.useCallback)(async()=>{let a=bE.current;if(a)try{await cR(a,{type:"abort_compaction"})}catch(a){console.error("Failed to abort compaction:",a)}},[]),c3=(0,M.useCallback)(async()=>{let b=bE.current;if(b)try{let c=await cR(b,{type:"clear_queue"});bo({steering:[],followUp:[]});let d=[...c?.steering??[],...c?.followUp??[]];d.length>0&&a.chatInputRef?.current?.prependText(d.join("\n\n"))}catch(a){console.error("Failed to recall queued messages:",a),cB({type:"error",message:"Failed to recall queued messages"})}},[a.chatInputRef,cB,bo]),c4=(0,M.useCallback)(async(a,b,c=!1)=>{let d=bE.current;if(!d)return bp;try{let e=await cR(d,{type:"resolve_recovery",keep:a,discard:b,continueRun:c}),f=e?.remaining??[];return br(f),c&&a.length>0&&(async()=>{try{let a=await fetch(`/api/agent/${encodeURIComponent(d)}`);if(!a.ok)return;let b=await a.json(),c=b.state;if(!b.running||!c||!c.isStreaming&&!c.isPromptRunning)return;bH.current=!!c.isStreaming,bI.current=!!c.isPromptRunning,bG.current=!0,T(!0),a3(tB(c)),J({type:"start"}),cx(d),!c.isStreaming&&c.isPromptRunning&&cL(d)}catch{}})(),f}catch(a){return console.error("Failed to resolve queued message recovery:",a),cB({type:"error",message:"Failed to resolve queued message recovery"}),bp}},[bp,cB,cx,cL,br]),c5=(0,M.useCallback)(async()=>{let a=bE.current;if(!a)return null;try{return await cR(a,{type:"export_queue"})}catch(a){return console.error("Failed to export queue:",a),cB({type:"error",message:"Failed to export queue"}),null}},[cB]),c6=(0,M.useCallback)(async a=>{let b=bE.current;if(!b)return null;try{let c=await cR(b,{type:"import_queue",entries:a});return c&&bo(tD(c)),c?.imported??0}catch(a){return console.error("Failed to import queue:",a),cB({type:"error",message:"Failed to import queue"}),null}},[cB,bo]),c7=(0,M.useCallback)(async a=>{let b=bE.current;if(!b)return null;try{let c=await cR(b,{type:"stage_recovery",entries:a});return c?.pendingRecovery&&br(c.pendingRecovery),(c?.staged??0)>0&&bt(!0),c?.staged??0}catch(a){return console.error("Failed to stage imported queue:",a),cB({type:"error",message:"Failed to stage imported queue"}),null}},[cB,br]),c8=(0,M.useCallback)(async(a,b,c)=>{let d=bE.current;if(!d)return!1;try{let e=await cR(d,{type:"move_queue",kind:a,fromIndex:b,toIndex:c});return e&&bo(tD(e)),!0}catch(a){return console.error("Failed to move queued message:",a),cB({type:"error",message:a instanceof Error?a.message:"Failed to move queued message"}),!1}},[cB,bo]),c9=(0,M.useCallback)(async(a,b)=>{let c=bE.current;if(!c)return null;try{let d=await cR(c,{type:"recall_queue_item",kind:a,index:b});return d&&(void 0!==d.steering||void 0!==d.followUp)&&bo(tD(d)),d?.entry?{text:d.entry.text,images:d.entry.images?.map(({data:a,mimeType:b})=>({data:a,mimeType:b}))}:null}catch(a){return console.error("Failed to recall queued message:",a),cB({type:"error",message:a instanceof Error?a.message:"Failed to recall queued message"}),null}},[cB,bo]),da=(0,M.useCallback)(async(a,b,c,d)=>{let e=bE.current;if(!e)return!1;try{let f=await cR(e,{type:"requeue_at",kind:a,index:b,text:c,images:d?.map(({data:a,mimeType:b})=>({type:"image",data:a,mimeType:b}))});return f&&bo(tD(f)),!0}catch(a){return console.error("Failed to requeue message:",a),cB({type:"error",message:a instanceof Error?a.message:"Failed to requeue message"}),!1}},[cB,bo]),db=(0,M.useCallback)(async(a,b)=>{let c=bE.current;if(!c)return!1;try{let d=await cR(c,{type:"remove_queue_item",kind:a,index:b});return d&&bo(tD(d)),!0}catch(a){return console.error("Failed to remove queued message:",a),cB({type:"error",message:a instanceof Error?a.message:"Failed to remove queued message"}),!1}},[cB,bo]),dc=(0,M.useCallback)(async a=>{if(b4.current="auto"===a?null:a,aL(a),"auto"===a)return;let b=bE.current??await bX.current;if(b)try{await cR(b,{type:"set_thinking_level",level:a})}catch(a){console.error("Failed to set thinking level:",a)}},[]),dd=(0,M.useCallback)(async a=>{let b=(0,tx.xG)(a);b8(a);let c=bE.current??await bX.current;if(c)try{await cR(c,{type:"set_tools",toolNames:b})}catch(a){console.error("Failed to set tools:",a)}},[b8]),de=(0,M.useRef)(0),df=(0,M.useCallback)(async a=>{let b=bE.current??await bX.current,c=++de.current;if("plan"===a){if(ao.current="plan"===am?"default":am,b)try{await cR(b,{type:"prompt",message:"/plan"})}catch(a){if(de.current!==c)return;console.error("Failed to enter plan mode:",a)}return}if(b){try{if(await cR(b,{type:"prompt",message:"/plan exit"}),de.current!==c)return}catch(a){if(de.current!==c)return;console.error("Failed to exit plan mode:",a)}if(de.current!==c)return;try{await cR(b,{type:"set_tools",toolNames:(0,tx.xG)(ao.current)})}catch(a){console.error("Failed to restore tools after plan exit:",a)}}},[am]),dg=(0,M.useCallback)(a=>{aC.current=a,ar(a);let b=bE.current;if(!b){as.current=a;return}as.current=null,fetch(`/api/modes?session=${encodeURIComponent(b)}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(a)}).catch(a=>{console.error("Failed to persist mode settings:",a)})},[]),dh=(0,M.useCallback)(a=>{let b=cc(a),c="plan"===ay.current;if(dg({...aC.current,collaborationMode:b}),ay.current=b,aB.current={sessionKey:"",signature:""},"goal"!==b){aA.current=null,aJ.current=!1,aH(a=>"idle"===a.status?a:{...a,status:"idle",goalText:null});let a=bE.current;a&&cR(a,{type:"goal_stop"}).catch(()=>{})}return"plan"!==b||c?"plan"!==b&&c?df("normal"):Promise.resolve():df("plan")},[dg,df]),di=(0,M.useCallback)(async a=>{dg({...aC.current,tokenMode:cd(a)});let b=bE.current??await bX.current;if(b)try{if("economy"!==a||ap.current){if("economy"!==a){let a=ap.current?tx.SC:(0,tx.xG)("plan"===am?"default":am);await cR(b,{type:"set_tools",toolNames:a})}}else await cR(b,{type:"set_tools",toolNames:[...cf]})}catch(a){console.error("Failed to apply token mode tools:",a)}},[dg,am]),dj=(0,M.useCallback)(async a=>{dg({...aC.current,toolApprovalMode:ce(a)});let b=bE.current??await bX.current;if(b)try{await cR(b,{type:"set_approval_mode",mode:ce(a)})}catch(a){console.error("Failed to apply approval mode:",a)}},[dg]),dk=(0,M.useCallback)(async a=>{dg({...aC.current,permissionRules:a});let b=bE.current??await bX.current;if(b)try{await cR(b,{type:"set_approval_policy",policy:a})}catch(a){console.error("Failed to apply permission rules:",a)}},[dg]),dl=(0,M.useCallback)(async(a,b,c,d)=>{let e=bE.current;if(e){if("always"===d){let c=aF.current.find(b=>b.id===a);if(c){let a=q6(c.toolName,c.args),d=a?`${c.toolName}(${a})`:c.toolName,e=aC.current.permissionRules;(b?e.allow:e.deny).includes(d)||dk(b?{...e,allow:[...e.allow,d]}:{...e,deny:[...e.deny,d]})}}try{await cR(e,{type:"resolve_approval",id:a,approve:b,reason:c})}catch(a){console.error("Failed to resolve approval:",a)}finally{aE(b=>b.filter(b=>b.id!==a))}}},[dk]),dm=(0,M.useCallback)(a=>{aA.current=a},[]),dn=(0,M.useCallback)(a=>{let b=a.trim();if(!b)return;aA.current=b,aH(a=>({...a,status:"running",goalText:b,turnsUsed:0,noProgressTurns:0,tokensUsed:0,startedAt:Date.now()}));let c=bE.current;c&&cR(c,{type:"goal_start",goalText:b}).catch(()=>{})},[]),dp=(0,M.useCallback)(()=>{if("running"!==aI.current.status)return;aH(a=>({...a,status:"paused"}));let a=bE.current;a&&cR(a,{type:"goal_pause"}).catch(()=>{})},[]),dq=(0,M.useCallback)(()=>{let a=aI.current;if("paused"!==a.status&&"blocked"!==a.status)return;aH(a=>({...a,status:"running"}));let b=bE.current;b&&cR(b,{type:"goal_resume"}).catch(()=>{})},[]),dr=(0,M.useCallback)(()=>{aJ.current=!1,aA.current=null,aH(a=>({...a,status:"idle",goalText:null,turnsUsed:0,noProgressTurns:0}));let a=bE.current;a&&cR(a,{type:"goal_stop"}).catch(()=>{})},[]),ds=(0,M.useCallback)(a=>{let b=a.trim();if(!b)return;aH(a=>({...a,goalText:b}));let c=bE.current;c&&cR(c,{type:"goal_edit",goalText:b}).catch(()=>{})},[]),dt=(0,M.useCallback)(()=>{let a=bW.current,b=bP.current;if(!a||!b)return;let c=b.getBoundingClientRect().top-a.getBoundingClientRect().top+a.scrollTop,d=Math.max(0,a.scrollHeight-a.clientHeight),e=Math.min(Math.max(0,c-16),d);bS.current=e>=d-150,bU.current=Date.now()+700,a.scrollTo({top:e,behavior:"smooth"})},[]);(0,M.useCallback)(a=>{if(a instanceof KeyboardEvent){if(!tF.has(a.key)||a.target instanceof Element&&a.target.closest("input, textarea, [contenteditable='true']"))return}else if(a instanceof PointerEvent){let b=bW.current;if(b&&a.target instanceof Element&&!b.contains(a.target))return}bT.current=Date.now()+1200},[]),(0,M.useCallback)(()=>{let a=bW.current;if(a){let{scrollTop:b,clientHeight:c,scrollHeight:d}=a;bS.current=b+c>=d-150}if(Date.now()<bT.current){bR.current=!1;return}Date.now()<bU.current||(bR.current=!1)},[]),(0,M.useRef)(null);let[du,dv]=(0,M.useState)(0);b?.id;let dw=n?.tree??[];return{data:n,loading:s,error:u,activeLeafId:w,messages:y,activeToolResults:A,entryIds:C,historyCursor:E,hasEarlierMessages:G,streamState:I,agentRunning:S,bashRunning:U,pendingBash:W,modelNames:Y,modelList:$,modelThinkingLevels:aa,modelThinkingLevelMaps:ac,modelScopeWarnings:ae,modelsError:ag,newSessionModel:ai,toolPreset:am,thinkingLevel:aK,retryInfo:aM,contextUsage:aO,systemPrompt:aQ,forkingEntryId:aS,isCompacting:aY,compactError:a$,compactResult:a0,currentModel:cn,displayModel:co,sessionStats:cp,tokenRate:L,planMode:ax,collaborationMode:at,tokenMode:au,toolApprovalMode:av,permissionRules:aw,modeSettings:aq,approvalRequests:aD,handleCollaborationModeChange:dh,handleTokenModeChange:di,handleToolApprovalModeChange:dj,handlePermissionRulesChange:dk,resolveApproval:dl,setActiveGoalText:dm,goalState:aG,handleGoalStart:dn,handleGoalPause:dp,handleGoalResume:dq,handleGoalStop:dr,handleGoalEdit:ds,slashCommands:a6,slashCommandsLoading:a8,queuedMessages:bm,pendingRecovery:bp,recoveryIsImport:bs,notices:ba.visible,extensionDialog:be,extensionCustomUi:bg,extensionStatuses:bi,extensionWidgets:bk,respondToExtensionUi:cz,sendExtensionCustomInput:cA,agentPhase:a2,isNew:l,promptAnchorActive:a4,branchTree:dw,sessionIdRef:bE,eventSourceRef:bx,messagesEndRef:bV,scrollContainerRef:bW,lastUserMsgRef:bP,pendingScrollToUserRef:bQ,initialScrollDoneRef:bO,scrollUserMsgToTop:dt,handleSend:cP,executeBash:cQ,handleAbort:cS,handleFork:cT,handleNavigate:cU,handleModelChange:cW,handleCompact:cX,handleSteer:c_,handleFollowUp:c1,handlePromptWithStreamingBehavior:c0,handleAbortCompaction:c2,handleRecallQueue:c3,resolveRecovery:c4,exportQueueData:c5,importQueueData:c6,stageQueueImport:c7,moveQueuedMessage:c8,recallQueuedMessage:c9,requeueAt:da,removeQueuedMessage:db,handleBuiltinSlashCommand:cZ,handleToolPresetChange:dd,handleThinkingLevelChange:dc,loadTools:cr,loadSlashCommands:cu,reloadModels:cY,setActiveLeafId:x,setData:o,setMessages:z,loadContext:cD,dispatch:J,setAgentRunning:T,setForkingEntryId:aT,handleLeafChange:cV,handleAgentEventRef:bN}}({session:a,newSessionCwd:b,onAgentEnd:F,onSessionCreated:e,onSessionForked:f,modelsRefreshKey:g,chatInputRef:h,onBranchDataChange:i,onSystemPromptChange:j,onSessionStatsPanelOpen:l}),[bk,bl]=(0,M.useState)(!1),bm=(0,M.useMemo)(()=>{let a=N.findLast(a=>"assistant"===a.role&&!!a.usage);if(!a?.usage)return null;let b=a.usage;return{model:a.model??"",input:b.input??0,output:b.output??0,cacheRead:b.cacheRead??0,costCNY:qz(a.model)?qA(a.model,b):0,costUSD:qz(a.model)?0:b.cost?.total??0}},[N]),[bn,bo]=(0,M.useState)(!1),[bp,bq]=(0,M.useState)(null);(0,M.useRef)(!1);let br=(0,M.useCallback)(()=>{bo(!1);let a=bs.current;a&&a6("plan"===a4?"normal":a4).catch(a=>{console.error("Failed to leave plan mode before executing:",a)}).then(()=>{aI(C("tasks.planReviewExecutePrompt",{plan:a}))})},[a6,aI,C,a4]),bs=(0,M.useRef)(null),bt=(0,M.useCallback)(a=>{bo(!1),aI(a)},[aI]),bu=(0,M.useCallback)(()=>{bo(!1),a6("plan"===a4?"normal":a4)},[a6,a4]),[bv,bw]=(0,M.useState)(!1),[bx,by]=(0,M.useState)(!1),[bz,bA]=(0,M.useState)(!1),bB=(0,M.useCallback)(()=>{let a=aD.current;if(!a)return;let b=a.scrollHeight-a.scrollTop-a.clientHeight;bw(a.scrollTop>1),by(b>1),bA(b>240)},[aD]),bC=(0,M.useCallback)(()=>{window.requestAnimationFrame(()=>{let a=aD.current,b=aC.current;if(!a||!b)return;let c=Math.max(88,h?.current?.measureHeight?.()??0),d=()=>{if(!a||!b)return;let d=Math.max(0,b.getBoundingClientRect().top-a.getBoundingClientRect().top+a.scrollTop-96-a.clientHeight+c);a.scrollTo({top:d,behavior:"auto"})};d(),bB(),window.setTimeout(d,200)})},[aC,aD,bB,h]);(0,M.useRef)(!1),(0,M.useRef)(!1);let bD=(0,M.useRef)(null),bE=(0,M.useRef)([]),bF=(0,M.useRef)(new Map),bG=(0,M.useRef)(null),[bH,bI]=(0,M.useState)(0),bJ=(0,M.useMemo)(()=>({getOffsetForIndex:a=>bD.current?.getOffsetForIndex(a)?.[0]??0,sizeFor:a=>{let b=bD.current;if(!b)return 0;let c=b.measurementsCache[a];return c?.size??b.options.estimateSize?.(a)??0},totalHeight:()=>bD.current?.getTotalSize()??0,refToItemIndex:a=>bE.current[a],itemCount:bE.current.length}),[]);ai&&[ai.sessionId,ai.sessionFile??"",ai.sessionName??"",ai.userMessages,ai.assistantMessages,ai.toolCalls,ai.toolResults,ai.totalMessages,ai.tokens.input,ai.tokens.output,ai.tokens.cacheRead,ai.tokens.cacheWrite,ai.tokens.total,ai.cost??0,ai.totalActiveMs??0].join("|"),(0,M.useRef)(ai).current=ai,ac&&(ac.percent,ac.contextWindow,ac.tokens),(0,M.useRef)(ac).current=ac;let{isDragOver:bK,handleDragEnter:bL,handleDragOver:bM,handleDragLeave:bN,handleDrop:bO}=function(a){let[b,c]=(0,M.useState)(!1),d=(0,M.useRef)(0),e=(0,M.useCallback)(a=>{a.dataTransfer.files.length&&(a.preventDefault(),d.current+=1,c(!0))},[]),f=(0,M.useCallback)(a=>{a.dataTransfer.files.length&&a.preventDefault()},[]);return{isDragOver:b,handleDragEnter:e,handleDragOver:f,handleDragLeave:(0,M.useCallback)(()=>{d.current-=1,d.current<=0&&(d.current=0,c(!1))},[]),handleDrop:(0,M.useCallback)(b=>{b.preventDefault(),d.current=0,c(!1),a(Array.from(b.dataTransfer.files),b.dataTransfer)},[a])}}((0,M.useCallback)((a,b)=>{if(R){let b=a.filter(a=>a.type.startsWith("image/"));b.length&&h?.current?.addImages(b);return}h?.current?.addFiles(a,b)},[R,h])),bP=N.filter(a=>"user"===a.role||"assistant"===a.role),bQ=(0,M.useMemo)(()=>{let a=new Set,b=[];for(let d=N.length-1;d>=0&&b.length<50;d-=1){var c;let e="user"!==(c=N[d]).role?null:("string"==typeof c.content?c.content:c.content.filter(a=>"text"===a.type).map(a=>a.text).join("\n")).trim()||null;!e||a.has(e)||(a.add(e),b.push(e))}return b},[N]),bR=(v=bP.length,(w=(0,M.useRef)([])).current.length!==v&&(w.current=Array.from({length:v},(a,b)=>w.current[b]??null)),w),bS=ax&&0===N.length&&!Q.isStreaming&&!R,bT=a?.cwd??b??void 0,bU=(0,M.useMemo)(()=>(function(a,b,c,d){let e=new Map(d);for(let b of a)"toolResult"===b.role&&e.set(b.toolCallId,b);let f=-1;for(let b=a.length-1;b>=0;b--)if("user"===a[b].role){f=b;break}let g=new Map,h=0;a.forEach((a,b)=>{("user"===a.role||"assistant"===a.role)&&g.set(b,h++)});let i=[];for(let d=0;d<a.length;){let f,g=a[d],h="custom"===g.role&&"compaction"===g.customType;if(0===d&&"user"!==g.role&&!h){let c=1;for(;c<a.length&&"user"!==a[c].role;)c+=1;let f=Array.from({length:c},(a,b)=>b).filter(b=>hq(a[b])),g=hl(a,b,f,e);if(g.length>0){i.push({kind:"turn",userIdx:-1,endIdx:c,startsCompactionTurn:!1,finalAssistantIdx:-1,visibleProcessIndices:f,processBlocks:g,processSegments:hg(g),finalAnswerMessage:null,writtenFiles:void 0}),d=c;continue}}if("user"!==g.role&&!h){i.push({kind:"single",idx:d}),d+=1;continue}let j=d,k=j+1;for(;k<a.length&&"user"!==a[k].role;)k+=1;let l=function(a,b,c){for(let e=c-1;e>b;e--){var d;if("assistant"===(d=a[e]).role&&hd(d).answerBlocks.some(a=>"image"===a.type||"text"===a.type&&a.text.trim().length>0))return e}for(let d=c-1;d>b;d--)if(a[d]?.role==="assistant")return d;return -1}(a,j,k);if(-1===l){let c=Array.from({length:k-j-1},(a,b)=>j+1+b).filter(b=>hq(a[b])),f=hl(a,b,c,e);i.push({kind:"turn",userIdx:j,endIdx:k,startsCompactionTurn:h,finalAssistantIdx:l,visibleProcessIndices:c,processBlocks:f,processSegments:hg(f),finalAnswerMessage:null,writtenFiles:void 0}),d=k;continue}let m=[];for(let a=j+1;a<l;a++)m.push(a);let n=m.filter(b=>hq(a[b])),o=a[l],p=hd(o),q=p.processBlocks.length>0?hr(o,p.processBlocks,{omitUsage:!0}):null,r=p.answerBlocks.length>0?hr(o,p.answerBlocks):null,s=hl(a,b,n,e);if(q&&(s=s.concat(hk(o,{messageIndex:l,entryId:b[l],toolResults:e}).processBlocks)),r){let b=[];for(let c=j+1;c<=l;c++){let d=a[c];if(d?.role==="assistant")for(let a of d.content??[])b.push(a)}f=function(a,b,c){let d=new Set,e=[];for(let f of a){if("toolCall"!==f.type||!function(a){let b,c;return"write"===(b=a.toLowerCase())||b.startsWith("write_")||b.endsWith(".write")||b.endsWith("_write")||"edit"===(c=a.toLowerCase())||c.startsWith("edit_")||c.endsWith(".edit")||c.endsWith("_edit")||c.includes("str_replace")||c.includes("replace_editor")}(f.toolName))continue;let a=b?.get(f.toolCallId);if(!a||a.isError)continue;let g=function(a){if(!a)return null;let b=a.file_path??a.path;return"string"==typeof b&&b.length>0?b:null}(f.input);if(!g)continue;let h=function(a,b){let c;if(!a)return null;let d=/^[a-zA-Z]:[\\/]/.test(a)||a.startsWith("\\\\")||void 0!==b&&(/^[a-zA-Z]:[\\/]/.test(b)||b.startsWith("\\\\")),e=a=>d?a.replace(/\\/g,"/"):a,f=e(a),g=b?e(b).replace(/\/+$/,""):void 0,h=/^[a-zA-Z]:\//.test(f),i=f.startsWith("//");if(h||i)c=f;else if(f.startsWith("/")){let a=g?.match(/^([a-zA-Z]:)(?:\/|$)/)?.[1]??g?.match(/^(\/\/[^/]+\/[^/]+)(?:\/|$)/)?.[1];c=a?`${a}${f}`:f}else{if(!g)return null;c=`${g}/${f}`}return ho(c)}(g,c);h&&(d.has(h)||(d.add(h),e.push({filePath:h})))}return e}(b,e,c)}i.push({kind:"turn",userIdx:j,endIdx:k,startsCompactionTurn:h,finalAssistantIdx:l,visibleProcessIndices:n,processBlocks:s,processSegments:hg(s),finalAnswerMessage:r,writtenFiles:f}),d=k}return{toolResultsMap:e,lastUserIdx:f,visibleRefIndexByMessage:g,items:i}})(N,P,bT,O),[N,P,bT,O]),bV=ah?W[`${ah.provider}:${ah.modelId}`]??null:null,bW=ah?X[`${ah.provider}:${ah.modelId}`]??null:null,bX=(0,M.useCallback)(()=>{$()},[$]),bY=(0,M.useCallback)(a=>{a6(a)},[a6]),bZ=a?.relation?.kind==="subagent"?(0,L.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",gap:8,padding:"14px 16px",borderTop:"1px solid var(--border)",color:"var(--text-dim)",fontSize:12},children:[(0,L.jsxs)("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[(0,L.jsx)("rect",{x:"3",y:"11",width:"18",height:"10",rx:"2"}),(0,L.jsx)("circle",{cx:"12",cy:"5",r:"2"}),(0,L.jsx)("path",{d:"M12 7v4"})]}),C("subagent.readOnlyNotice")]}):(0,L.jsx)(sU,{ref:h,onSend:aI,onBash:aJ,tasksBoardEnabled:r,onAbort:aK,onSteer:R?aP:void 0,onFollowUp:R?aQ:void 0,onPromptWithStreamingBehavior:R?aR:void 0,isStreaming:R,model:ah,modelNames:U,modelList:V,modelScopeWarnings:Y,modelsError:Z,onRetryModels:bX,onModelChange:aN,compactResult:ag,toolPreset:_,onToolPresetChange:a||ax?a0:void 0,collaborationMode:a4,toolApprovalMode:a5,onCollaborationModeChange:bY,onToolApprovalModeChange:a7,goalState:ba,onGoalStart:bc,onGoalPause:bd,onGoalResume:be,onGoalStop:bf,thinkingLevel:aa,onThinkingLevelChange:a||ax?a1:void 0,availableThinkingLevels:bV,thinkingLevelMap:bW,retryInfo:ab,queuedMessages:am,inputHistory:bQ,onRecallQueue:aT,onMoveQueue:aX,onRecallOne:aY,onRequeueAt:aZ,onRemoveQueueItem:a$,slashCommands:ak,slashCommandsLoading:al,onLoadSlashCommands:a2,onBuiltinCommand:a_,onAudioUnlock:A,draftKey:a?.id??(b?`new:${b}`:void 0),cwd:a?.cwd??b,topCenterControl:bz?(0,L.jsx)("button",{type:"button",className:"chat-input-top-center",onClick:bC,title:C("desktop.scrollToBottom"),"aria-label":C("desktop.scrollToBottom"),children:(0,L.jsx)(qo,{size:16,weight:"bold","aria-hidden":"true"})}):void 0}),b$=at.filter(a=>"belowEditor"!==a.placement),b_=at.filter(a=>"belowEditor"===a.placement),b0=ae?C("desktop.compacting"):function(a,b){if(a?.kind==="running_tools"){let c=a.tools.map(a=>a.name);return 0===c.length?b("desktop.runningTool"):b("desktop.runningTools",{tools:c.length<=3?c.join(", "):`${c.slice(0,2).join(", ")} (+${c.length-2})`})}return a?.kind==="waiting_model"?b("desktop.waitingForModel"):a?.kind==="running_command"?b("desktop.runningCommand"):null}(aw,C);return J?(0,L.jsx)("div",{className:"flex h-full items-center justify-center text-text-muted",children:C("desktop.loadingSession")}):K?(0,L.jsx)("div",{className:"flex h-full items-center justify-center text-red-400",children:K}):(0,L.jsxs)("div",{className:"relative flex h-full min-w-0 flex-col overflow-hidden",onDragEnter:bL,onDragOver:bM,onDragLeave:bN,onDrop:bO,children:[bK&&(0,L.jsxs)("div",{className:"pointer-events-none absolute inset-0 z-50 flex animate-[drop-zone-in_0.15s_ease_both] items-center justify-center bg-[rgba(37,99,235,0.06)] backdrop-blur-[1px]",children:[(0,L.jsx)("div",{className:"pointer-events-none absolute inset-0 flex items-center justify-center",children:[0,.8,1.6].map(a=>(0,L.jsx)("div",{className:"absolute h-[720px] w-[720px] rounded-full border-[1.5px] border-solid border-[rgba(37,99,235,0.5)] animate-[drop-ripple_2.4s_ease-out_infinite_backwards]",style:{transformOrigin:"center",animationDelay:`${a}s`}},a))}),(0,L.jsxs)("svg",{width:"280",height:"280",viewBox:"0 0 140 140",fill:"none",xmlns:"http://www.w3.org/2000/svg",className:"drop-shadow-[0_6px_18px_rgba(37,99,235,0.18)]",children:[(0,L.jsx)("rect",{x:"28",y:"44",width:"84",height:"60",rx:"8",fill:"rgba(37,99,235,0.08)",stroke:"rgba(37,99,235,0.50)",strokeWidth:"1.8"}),(0,L.jsx)("path",{d:"M36 100 L54 72 L68 88 L80 74 L104 100Z",fill:"rgba(37,99,235,0.16)",stroke:"rgba(37,99,235,0.40)",strokeWidth:"1.4",strokeLinejoin:"round"}),(0,L.jsx)("circle",{cx:"96",cy:"58",r:"8",fill:"rgba(37,99,235,0.22)",stroke:"rgba(37,99,235,0.55)",strokeWidth:"1.6"}),(0,L.jsxs)("g",{stroke:"rgba(37,99,235,0.45)",strokeWidth:"1.4",strokeLinecap:"round",children:[(0,L.jsx)("line",{x1:"96",y1:"46",x2:"96",y2:"43"}),(0,L.jsx)("line",{x1:"96",y1:"70",x2:"96",y2:"73"}),(0,L.jsx)("line",{x1:"84",y1:"58",x2:"81",y2:"58"}),(0,L.jsx)("line",{x1:"108",y1:"58",x2:"111",y2:"58"}),(0,L.jsx)("line",{x1:"87.5",y1:"49.5",x2:"85.4",y2:"47.4"}),(0,L.jsx)("line",{x1:"104.5",y1:"66.5",x2:"106.6",y2:"68.6"}),(0,L.jsx)("line",{x1:"104.5",y1:"49.5",x2:"106.6",y2:"47.4"}),(0,L.jsx)("line",{x1:"87.5",y1:"66.5",x2:"85.4",y2:"68.6"})]})]})]}),aq&&(0,L.jsx)(tR,{request:aq,onRespond:au}),ar&&(0,L.jsx)(tS,{request:ar,onInput:av}),!ax&&an.length>0&&!bk&&(0,L.jsx)(sX,{items:an,sessionId:a?.id,onResolve:aU,onExport:aV,onStageImport:aW,onDismiss:()=>bl(!0),mode:ao?"import":"recovery"}),a8.length>0&&(0,L.jsx)(q9,{request:a8[0]??null,queuedCount:Math.max(0,a8.length-1),busy:!1,onResolve:(a,b,c)=>{let d=a8[0];d&&a9(d.id,a,b,c)}}),bS?(0,L.jsx)("div",{className:"flex flex-1 flex-col items-center justify-center overflow-y-auto",children:(0,L.jsxs)("div",{className:"w-full max-w-[820px]",children:[(0,L.jsx)("div",{style:{display:"flex",justifyContent:"center",marginBottom:28},children:(0,L.jsxs)("svg",{fill:"currentColor",fillRule:"evenodd",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",style:{width:64,height:64,color:"var(--accent)",opacity:.85},"aria-label":"Pi",children:[(0,L.jsx)("title",{children:"Pi"}),(0,L.jsx)("path",{clipRule:"evenodd",d:"M1 1h16.5v11H12v5.5H6.5V23H1V1zm5.5 5.5V12H12V6.5H6.5z"}),(0,L.jsx)("path",{d:"M17.5 12H23v11h-5.5V12z"})]})}),B&&(0,L.jsxs)("div",{style:{display:"flex",justifyContent:"center",alignItems:"center",gap:10,marginBottom:18,marginTop:-14},children:[(0,L.jsxs)("span",{style:{fontSize:11,color:"var(--text-muted)",fontFamily:"var(--font-mono)"},children:["web ",(0,L.jsxs)("span",{style:{color:"var(--text)"},children:["v","0.18.4"]})]}),(0,L.jsxs)("span",{style:{fontSize:11,color:"var(--text-muted)",fontFamily:"var(--font-mono)"},children:["pi ",(0,L.jsxs)("span",{style:{color:"var(--text)"},children:["v","0.85.1"]})]})]}),(0,L.jsx)("div",{style:{padding:"0 34px 6px 7px",paddingRight:B?16:34},children:(0,L.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:12},children:[(0,L.jsx)("div",{ref:o,style:{display:"flex",alignItems:"center",minWidth:0,flex:1,minHeight:48}}),(0,L.jsxs)("div",{style:{display:B?"none":"flex",flexDirection:"column",alignItems:"flex-end",gap:2,flexShrink:0},children:[(0,L.jsxs)("span",{style:{fontSize:11,color:"var(--text-muted)",fontFamily:"var(--font-mono)"},children:["web ",(0,L.jsxs)("span",{style:{color:"var(--text)"},children:["v","0.18.4"]})]}),(0,L.jsxs)("span",{style:{fontSize:11,color:"var(--text-muted)",fontFamily:"var(--font-mono)"},children:["pi ",(0,L.jsxs)("span",{style:{color:"var(--text)"},children:["v","0.85.1"]})]})]})]})}),(0,L.jsx)("div",{style:{padding:"0 16px",paddingRight:B?16:34},children:(0,L.jsx)(tQ,{notices:ap,align:"right"})}),"goal"===a4&&(0,L.jsx)(q5,{goalState:ba,onPause:bd,onResume:be,onStop:bf,onEdit:bg}),bZ,(0,L.jsx)("div",{style:{padding:"0 16px 6px",paddingRight:B?16:34,marginTop:-15},children:(0,L.jsx)(tb,{onViewFullHistory:p,cwd:bT,systemPrompt:q,sessionStats:ai,contextUsage:ac,hasSession:!!a,showChat:!0,showSoundLabel:!0,soundEnabled:x,onSoundToggle:y,onCompact:a?aO:void 0,onAbortCompaction:aS,isCompacting:ae,compactError:af,lastTurnUsage:bm})})]})}):(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)("div",{className:"relative flex flex-1 overflow-hidden z-0",children:[(0,L.jsx)("div",{style:{position:"absolute",top:12,left:0,right:18*!B,zIndex:40,padding:"0 16px",pointerEvents:"none"},children:(0,L.jsx)("div",{style:{maxWidth:820,margin:"0 auto"},children:(0,L.jsx)(tQ,{notices:ap,floating:!0,align:"right"})})}),(0,L.jsxs)("div",{className:"relative flex-1 min-h-0 min-w-0",children:[(0,L.jsx)("div",{ref:aD,className:"h-full min-w-0 overflow-x-hidden overflow-y-auto pt-4 [scrollbar-width:none] [&::-webkit-scrollbar]:hidden",children:(0,L.jsx)("div",{style:{minWidth:0,padding:"0 16px"},children:(0,L.jsxs)("div",{style:{width:"100%",minWidth:0,maxWidth:820,margin:"0 auto"},children:[(0,L.jsxs)("div",{ref:bG,children:[(0,L.jsx)(tO,{statuses:as}),(0,L.jsx)(tP,{widgets:b$})]}),(()=>{let{toolResultsMap:b,lastUserIdx:c,visibleRefIndexByMessage:d,items:e}=bU,f=bF.current,g=(e,g={})=>{let h=g.messageOverride??N[e];if(!h||"toolResult"===h.role)return null;let i="user"===h.role||"assistant"===h.role,j=d.get(e),k=g.keyPrefix??"message",l=!1;if("assistant"===h.role){l=!0;for(let a=e+1;a<N.length;a++){let b=N[a].role;if("user"===b)break;if("assistant"===b){l=!1;break}}l&&Q.isStreaming&&e===N.length-1&&(l=!1)}void 0!==g.showTimestamp&&(l=g.showTimestamp);let m=(0,L.jsx)(qE,{message:h,toolResults:b,modelNames:U,cwd:bT,onOpenFile:n,entryId:P[e],onFork:R||ax?void 0:aL,forking:ad===P[e],onNavigate:R?void 0:aM,onEditContent:G,onQuoteReply:H,onOpenSession:s,onCreateTask:I,showTimestamp:l,prevTimestamp:e>0?N[e-1].timestamp:void 0,sessionId:a?.id??aB.current??void 0,writtenFiles:g.writtenFiles},`${k}-view-${e}`);return i&&!1!==g.attachRef&&void 0!==j?(0,L.jsx)("div",{ref:((a,b)=>{let d=f.get(b);if(!d){let a={isLastUser:!1};d={state:a,callback:c=>{bR.current[b]=c,a.isLastUser&&(aE.current=c,c&&aF.current&&(aF.current=!1,aG.current=!0,aH()))}},f.set(b,d)}return d.state.isLastUser=a===c,d.callback})(e,j),children:m},`${k}-${e}`):m},h=[],i=[],j=[],k=(a,b,c)=>{null!==a&&(h.push(a),i.push(b),j.push(c))},l=(a,b)=>P[a]||`${b}-${a}`,m=a=>`live-answer-u${a}`,o=a=>`answer-${l(a,"user")}`,p=a=>`subagent-${a}`,q=a=>hf(a.result?.details)?a.result.details.sessionId:"",r=(a,b)=>`live-process-u${a}-seg${b}`,v=(a,b,c)=>`process-${l(a,"user")}-${c||`seg${b}`}`;for(let f of e){if("single"===f.kind){if(N[f.idx]?.role==="toolResult")continue;k(g(f.idx),d.get(f.idx),l(f.idx,"single"));continue}let{userIdx:e,endIdx:h,startsCompactionTurn:i,finalAssistantIdx:j}=f;if((R||Q.isStreaming)&&h===N.length&&(e===c||i)){e>=0&&k(g(e),d.get(e),l(e,"user"));let c=Q.streamingMessage?.role==="assistant",f=[],i=!c&&j>=0?j:h;for(let a=e+1;a<i;a++)hq(N[a])&&f.push(a);let o=hl(N,P,f,b),v=null;if(!c&&j>=0){let a=N[j],c=hd(a,{isStreaming:!0}),d=hk(a,{messageIndex:j,entryId:P[j],toolResults:b,isStreaming:!0});o=o.concat(d.processBlocks),c.answerBlocks.length>0&&(v=hr(a,c.answerBlocks,{omitUsage:!0}))}if(c){let a=Q.streamingMessage,c=hd(a,{isStreaming:!0}),d=hk(a,{messageIndex:N.length,toolResults:b,isStreaming:!0});o=o.concat(d.processBlocks),c.answerBlocks.length>0&&(v=hr(a,c.answerBlocks,{omitUsage:!0}))}if(o.length>0){let b=f.map(a=>d.get(a)).find(a=>"number"==typeof a);hg(o).forEach((c,d)=>{"subagent"===c.kind&&c.subagent?k((0,L.jsx)(r2,{run:c.subagent,onOpenSubagent:t,sessionRun:u?.get(q(c.subagent))},p(c.subagent.toolCallId)),b,p(c.subagent.toolCallId)):k((0,L.jsx)("div",{ref:void 0===b?void 0:a=>{bR.current[b]=a},children:(0,L.jsx)(r_,{blocks:c.blocks,isStreaming:R||Q.isStreaming,cwd:bT,onOpenFile:n,sessionId:a?.id??aB.current??void 0,tokenRate:aj})},r(e,d)),b,r(e,d))})}v&&k((0,L.jsx)(qE,{message:v,isStreaming:!0,modelNames:U,cwd:bT,onOpenFile:n,onQuoteReply:H,onOpenSession:s},`live-answer-${e}`),j>=0?d.get(j):void 0,m(e));continue}if(-1===j&&0===f.processBlocks.length){if(e>=0)for(let a=e;a<h;a++)k(g(a),d.get(a),l(a,"raw"));continue}e>=0&&k(g(e),d.get(e),l(e,"user"));let{finalAnswerMessage:w,writtenFiles:x,visibleProcessIndices:y}=f;if(f.processBlocks.length>0){let b=y.map(a=>d.get(a)).find(a=>"number"==typeof a)??(w?void 0:d.get(j));f.processSegments.forEach((c,d)=>{"subagent"===c.kind&&c.subagent?k((0,L.jsx)(r2,{run:c.subagent,onOpenSubagent:t,sessionRun:u?.get(q(c.subagent))},p(c.subagent.toolCallId)),b,p(c.subagent.toolCallId)):k((0,L.jsx)("div",{ref:void 0===b?void 0:a=>{bR.current[b]=a},children:(0,L.jsx)(r_,{blocks:c.blocks,isStreaming:!1,defaultExpanded:!1,onAutoExpanded:void 0,cwd:bT,onOpenFile:n,sessionId:a?.id??aB.current??void 0})},`process-group-${e}-${d}`),b,v(e,d,c.blocks[0]?.id??""))})}if(w&&k(g(j,{messageOverride:w,writtenFiles:x}),d.get(j),o(e)),j>=0)for(let a=j+1;a<h;a++)k(g(a),d.get(a),l(a,"tail"))}let w=[],x=i.map((a,b)=>({startRef:a,itemIdx:b})).filter(a=>void 0!==a.startRef);return x.forEach((a,b)=>{let c=x[b+1]?.startRef??bP.length;for(let b=a.startRef;b<c;b++)w[b]=a.itemIdx}),bE.current=w,(0,L.jsx)(tr,{scrollElementRef:aD,items:h,itemKeys:j,virtualizerRef:bD,headerHeight:bH})})(),b0&&(ae||R&&!Q.streamingMessage)&&(0,L.jsx)("div",{className:"py-2 text-[13px] text-text-muted",children:(0,L.jsxs)("span",{className:"animate-[pulse_1.5s_infinite]",children:[b0,aw?.kind==="waiting_model"&&(0,L.jsx)("span",{style:{display:"inline-block",width:12,height:12,marginLeft:6,verticalAlign:"-2px",border:"1.5px solid var(--text-muted)",borderTopColor:"transparent",borderRadius:"50%",animation:"spin 0.6s linear infinite"}})]})}),T&&(0,L.jsx)(qE,{message:{role:"bashExecution",command:T.command,output:"",excludeFromContext:T.excludeFromContext},sessionId:a?.id??aB.current??void 0}),S&&!T&&(0,L.jsx)("div",{className:"py-2 text-[13px] text-text-muted",children:(0,L.jsx)("span",{className:"animate-[pulse_1.5s_infinite]",children:C("desktop.runningShellCommand")})}),(0,L.jsx)("div",{style:{height:96}}),(0,L.jsx)("div",{ref:aC}),(0,L.jsx)(q$,{open:bn,planText:bp,busy:R,onExecute:br,onFeedback:bt,onExit:bu,onClose:()=>bo(!1)})]})})}),bv&&(0,L.jsx)("div",{"aria-hidden":"true",className:"pointer-events-none absolute inset-x-0 top-0 z-10 h-8 bg-gradient-to-b from-[var(--bg)] to-transparent"}),bx&&(0,L.jsx)("div",{"aria-hidden":"true",className:"pointer-events-none absolute inset-x-0 bottom-0 z-10 h-8 bg-gradient-to-t from-[var(--bg)] to-transparent"})]}),B?null:(0,L.jsx)(tu,{messages:N,streamingMessage:Q.streamingMessage,scrollContainer:aD,messageRefs:bR,virtualizer:bJ})]}),(0,L.jsxs)("div",{className:"relative z-10",children:[(0,L.jsx)("div",{style:{padding:"0 16px",paddingRight:B?16:34},children:(0,L.jsx)("div",{style:{maxWidth:820,margin:"0 auto"},children:(0,L.jsx)(tP,{widgets:b_})})}),bZ,(0,L.jsx)("div",{className:`session-info-bar-wrap${B?" is-mobile":""}`,children:(0,L.jsx)("div",{className:"session-info-bar-inner",children:(0,L.jsx)(tb,{onViewFullHistory:p,cwd:bT,systemPrompt:q,sessionStats:ai,contextUsage:ac,hasSession:!!a,showChat:!0,soundEnabled:x,onSoundToggle:y,onCompact:a?aO:void 0,onAbortCompaction:aS,isCompacting:ae,compactError:af,branchTree:ay,branchActiveLeafId:az,onBranchLeafChange:aA,lastTurnUsage:bm})})})]})]})]})}function tO({statuses:a}){return 0===a.length?null:(0,L.jsx)("div",{style:{display:"flex",flexWrap:"wrap",gap:6,marginBottom:10},children:a.map(a=>(0,L.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:6,maxWidth:"100%",padding:"4px 8px",border:"1px solid color-mix(in srgb, var(--accent) 24%, var(--border))",borderRadius:6,background:"color-mix(in srgb, var(--accent) 7%, var(--bg))",color:"var(--text-muted)",fontSize:12},children:[(0,L.jsx)("span",{style:{color:"var(--accent)",fontFamily:"var(--font-mono)",fontSize:11},children:a.key}),(0,L.jsx)("span",{style:{minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a.text})]},a.key))})}function tP({widgets:a}){return 0===a.length?null:(0,L.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:8,marginBottom:10},children:a.map(a=>(0,L.jsxs)("div",{style:{border:"1px solid var(--border)",borderRadius:7,background:"var(--bg-panel)",overflow:"hidden"},children:[(0,L.jsx)("div",{style:{padding:"5px 9px",borderBottom:"1px solid var(--border)",color:"var(--text-dim)",fontSize:11,fontFamily:"var(--font-mono)"},children:a.key}),(0,L.jsx)("pre",{style:{margin:0,padding:"8px 9px",color:"var(--text-muted)",fontSize:12,lineHeight:1.5,whiteSpace:"pre-wrap",wordBreak:"break-word",fontFamily:"var(--font-mono)"},children:a.lines.join("\n")})]},a.key))})}function tQ({notices:a,floating:b=!1,align:c="left"}){return 0===a.length?null:(0,L.jsx)("div",{style:{display:"flex",flexDirection:"column",alignItems:"right"===c?"flex-end":"stretch",marginBottom:10*!b},children:a.map((c,d)=>{let e="error"===c.type?"var(--status-error)":"warning"===c.type?"var(--status-warning)":"success"===c.type?"#10b981":"var(--accent)";return(0,L.jsxs)("div",{className:"notice-shelf-item",style:{display:"flex",alignItems:"center",gap:10,minHeight:44,maxHeight:180,marginBottom:6*(d!==a.length-1),overflowY:"auto",overflowX:"hidden",borderRadius:14,border:"1px solid color-mix(in srgb, var(--border) 70%, transparent)",background:"var(--bg)",color:"var(--text-muted)",width:"fit-content",maxWidth:"min(100%, 620px)",boxShadow:b?"0 1px 2px rgba(15,23,42,0.05), 0 10px 28px -14px rgba(15,23,42,0.24)":"0 1px 2px rgba(15,23,42,0.04), 0 8px 24px -12px rgba(15,23,42,0.10)",fontSize:13,lineHeight:1.45,transformOrigin:"top center",animation:c.exiting?"notice-shelf-out 0.18s ease-in forwards":"notice-shelf-in 0.18s ease-out both",padding:"0 12px"},children:[(0,L.jsx)("span",{style:{width:7,height:7,borderRadius:"50%",background:e,flexShrink:0}}),(0,L.jsx)("span",{style:{padding:"10px 0",minWidth:0,maxWidth:"100%",overflowWrap:"anywhere",whiteSpace:"pre-wrap"},children:c.message})]},c.id)})})}function tR({request:a,onRespond:b}){let{t:c}=(0,bb.s)(),[d,e]=(0,M.useState)("editor"===a.method?a.prefill??"":""),f=(0,M.useCallback)(a=>a?.focus(),[]),g=()=>{"confirm"===a.method?b(a,{confirmed:!0}):b(a,{value:d})};return(0,L.jsx)("div",{style:{position:"absolute",inset:0,zIndex:90,display:"flex",alignItems:"center",justifyContent:"center",padding:20,background:"rgba(0,0,0,0.18)"},children:(0,L.jsxs)("div",{role:"dialog","aria-modal":"true",style:{width:"min(560px, 100%)",border:"1px solid var(--border)",borderRadius:8,background:"var(--bg)",boxShadow:"0 20px 60px rgba(0,0,0,0.28)",overflow:"hidden"},children:[(0,L.jsxs)("div",{style:{padding:"12px 14px",borderBottom:"1px solid var(--border)"},children:[(0,L.jsx)("div",{style:{color:"var(--text)",fontSize:14,fontWeight:650},children:a.title}),(0,L.jsx)("div",{style:{marginTop:3,color:"var(--text-dim)",fontSize:11,fontFamily:"var(--font-mono)"},children:c("desktop.extensionRequest")})]}),(0,L.jsxs)("div",{style:{padding:14},children:["confirm"===a.method&&(0,L.jsx)(p4,{children:a.message}),"select"===a.method&&(0,L.jsx)("div",{onKeyDown:a=>{if(!["ArrowDown","ArrowRight","ArrowUp","ArrowLeft","Home","End"].includes(a.key))return;let b=Array.from(a.currentTarget.querySelectorAll("[data-extension-option]")),c=b.indexOf(a.target);if(c<0)return;a.preventDefault();let d="Home"===a.key?0:"End"===a.key?b.length-1:(c+("ArrowDown"===a.key||"ArrowRight"===a.key?1:-1)+b.length)%b.length;b[d]?.focus()},style:{display:"grid",gap:8},children:a.options.map((c,d)=>(0,L.jsx)("div",{role:"button",tabIndex:0,"data-extension-option":!0,"aria-label":c,ref:0===d?f:void 0,onClick:()=>b(a,{value:c}),onKeyDown:d=>{("Enter"===d.key||" "===d.key)&&(d.preventDefault(),b(a,{value:c}))},style:{width:"100%",padding:"9px 10px",borderRadius:7,border:"1px solid var(--border)",background:"var(--bg-panel)",color:"var(--text)",cursor:"pointer",textAlign:"left",fontSize:13},children:(0,L.jsx)("div",{inert:!0,children:(0,L.jsx)(p4,{children:c})})},c))}),"input"===a.method&&(0,L.jsx)("input",{autoFocus:!0,className:"extension-input",value:d,placeholder:a.placeholder,onChange:a=>e(a.target.value),onKeyDown:c=>{"Enter"===c.key&&g(),"Escape"===c.key&&b(a,{cancelled:!0})},style:{width:"100%",padding:"9px 10px",borderRadius:7,border:"1px solid var(--border)",background:"var(--bg-panel)",color:"var(--text)",outline:"none",fontSize:13}}),"editor"===a.method&&(0,L.jsx)("textarea",{autoFocus:!0,value:d,onChange:a=>e(a.target.value),onKeyDown:c=>{"Escape"===c.key&&b(a,{cancelled:!0}),(c.metaKey||c.ctrlKey)&&"Enter"===c.key&&g()},style:{width:"100%",minHeight:220,padding:10,borderRadius:7,border:"1px solid var(--border)",background:"var(--bg-panel)",color:"var(--text)",outline:"none",resize:"vertical",fontSize:13,lineHeight:1.55,fontFamily:"var(--font-mono)"}})]}),(0,L.jsxs)("div",{style:{display:"flex",justifyContent:"flex-end",gap:8,padding:"10px 14px",borderTop:"1px solid var(--border)",background:"var(--bg-panel)"},children:[(0,L.jsx)("button",{onClick:()=>b(a,{cancelled:!0}),style:{padding:"6px 10px",borderRadius:6,border:"1px solid var(--border)",background:"var(--bg)",color:"var(--text-muted)",cursor:"pointer"},children:c("desktop.cancel")}),"confirm"===a.method?(0,L.jsx)("button",{onClick:g,style:{padding:"6px 10px",borderRadius:6,border:"1px solid var(--accent)",background:"var(--accent)",color:"var(--accent-fg)",cursor:"pointer"},children:c("desktop.confirm")}):"select"!==a.method?(0,L.jsx)("button",{onClick:g,style:{padding:"6px 10px",borderRadius:6,border:"1px solid var(--accent)",background:"var(--accent)",color:"var(--accent-fg)",cursor:"pointer"},children:c("desktop.submit")}):null]})]})})}function tS({request:a,onInput:b}){let{t:c}=(0,bb.s)(),d=(0,M.useRef)(null),e=function(a){let b=/^[┌├└╭╰][─┬┴┼]+[┐┤┘╮╯]$/,c=[];for(let d of a){let a=g7(d).trimEnd();if(b.test(a))continue;let e=d,f=ha(e);("│"===f||"┃"===f)&&" "===ha(e=g9(e,0))&&(e=g9(e,0));let g=function(a){let b=g8(a);for(let a=b.length-1;a>=0;a--)if(""!==b[a].char.trim())return a;return -1}(e),h=g>=0?g8(e)[g]?.char:void 0;("│"===h||"┃"===h)&&(e=g9(e,g)),c.push(function(a){let b=a;for(;;){let a=g8(b),c=a[a.length-1];if(!c||""!==c.char.trim())return b;b=b.slice(0,c.start)+b.slice(c.end)}}(e))}for(;c.length>0&&""===g7(c[0]).trim();)c.shift();for(;c.length>0&&""===g7(c[c.length-1]).trim();)c.pop();return c.length?c:a}(a.lines);return(0,L.jsx)("div",{style:{position:"absolute",inset:0,zIndex:95,display:"flex",alignItems:"center",justifyContent:"center",padding:20,background:"rgba(0,0,0,0.18)"},children:(0,L.jsxs)("div",{ref:d,tabIndex:0,role:"dialog","aria-modal":"true",onKeyDown:c=>{let d=function(a){if(a.ctrlKey&&!a.metaKey&&!a.altKey&&1===a.key.length){let b=a.key.toLowerCase();if(b>="a"&&b<="z")return String.fromCharCode(b.charCodeAt(0)-96)}switch(a.key){case"ArrowUp":return"\x1b[A";case"ArrowDown":return"\x1b[B";case"ArrowRight":return"\x1b[C";case"ArrowLeft":return"\x1b[D";case"Enter":return"\r";case"Escape":return"\x1b";case"Backspace":return"";case"Tab":return" ";case" ":return" ";default:if(!a.ctrlKey&&!a.metaKey&&!a.altKey&&1===a.key.length)return a.key;return null}}(c);d&&(c.preventDefault(),c.stopPropagation(),b(a,d))},style:{width:"min(920px, 100%)",maxHeight:"min(760px, calc(100vh - 40px))",border:"1px solid var(--border)",borderRadius:8,background:"var(--bg)",boxShadow:"0 20px 60px rgba(0,0,0,0.28)",overflow:"hidden",outline:"none"},children:[(0,L.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:12,padding:"10px 12px",borderBottom:"1px solid var(--border)"},children:[(0,L.jsx)("div",{style:{color:"var(--text)",fontSize:13,fontWeight:650},children:c("desktop.extensionPanel")}),(0,L.jsx)("button",{onClick:()=>b(a,"\x03"),style:{padding:"5px 9px",borderRadius:6,border:"1px solid var(--border)",background:"var(--bg-panel)",color:"var(--text-muted)",cursor:"pointer",fontSize:12},children:c("desktop.close")})]}),(0,L.jsx)("pre",{style:{margin:0,padding:14,maxHeight:"calc(min(760px, 100vh - 40px) - 48px)",overflow:"auto",background:"var(--bg-panel)",color:"var(--text)",fontFamily:"var(--font-mono)",fontSize:13,lineHeight:1.45,whiteSpace:"pre"},children:(e.length?e:[""]).map((a,b,c)=>{var d;return(0,L.jsxs)(M.Fragment,{children:[(d=`line-${b}`,(function(a){let b,c=[],d={},e=0;for(g4.lastIndex=0;null!==(b=g4.exec(a));)b.index>e&&c.push({text:a.slice(e,b.index),style:d}),d=function(a,b){let c={...a};for(let a=0;a<b.length;a++){let d=b[a];if(0===d)for(let a of Object.keys(c))delete c[a];else if(1===d)c.fontWeight=700;else if(2===d)c.opacity=.65;else if(3===d)c.fontStyle="italic";else if(4===d)c.textDecoration="underline";else if(22===d)delete c.fontWeight,delete c.opacity;else if(23===d)delete c.fontStyle;else if(24===d)delete c.textDecoration;else if(39===d)delete c.color;else if(49===d)delete c.backgroundColor;else if(d>=30&&d<=37)c.color=g5[d-30];else if(d>=90&&d<=97)c.color=g6[d-90];else if(d>=40&&d<=47)c.backgroundColor=g5[d-40];else if(d>=100&&d<=107)c.backgroundColor=g6[d-100];else if((38===d||48===d)&&2===b[a+1]){let[e,f,g]=[b[a+2],b[a+3],b[a+4]];[e,f,g].every(a=>"number"==typeof a&&Number.isFinite(a))&&(38===d?c.color=`rgb(${e}, ${f}, ${g})`:c.backgroundColor=`rgb(${e}, ${f}, ${g})`),a+=4}else if((38===d||48===d)&&5===b[a+1]){let e=function(a){if(a>=0&&a<8)return g5[a];if(a>=8&&a<16)return g6[a-8];if(a>=16&&a<=231){let b=a-16,c=Math.floor(b/36),d=Math.floor(b%36/6),e=a=>0===a?0:55+40*a;return`rgb(${e(c)}, ${e(d)}, ${e(b%6)})`}if(a>=232&&a<=255){let b=8+(a-232)*10;return`rgb(${b}, ${b}, ${b})`}}(b[a+2]);e&&(38===d?c.color=e:c.backgroundColor=e),a+=2}}return c}(d,b[1]?b[1].split(";").map(a=>Number(a||"0")):[0]),e=b.index+b[0].length;return e<a.length&&c.push({text:a.slice(e),style:d}),c})(a).map((a,b)=>Object.keys(a.style).length>0?(0,L.jsx)("span",{style:a.style,children:a.text},`${d}-${b}`):a.text)),b<c.length-1?"\n":null]},b)})})]})})}let tT=new Map([["bold",M.createElement(M.Fragment,null,M.createElement("path",{d:"M222.14,69.17,186.83,33.86A19.86,19.86,0,0,0,172.69,28H48A20,20,0,0,0,28,48V208a20,20,0,0,0,20,20H208a20,20,0,0,0,20-20V83.31A19.86,19.86,0,0,0,222.14,69.17ZM164,204H92V160h72Zm40,0H188V156a20,20,0,0,0-20-20H88a20,20,0,0,0-20,20v48H52V52H171l33,33ZM164,84a12,12,0,0,1-12,12H96a12,12,0,0,1,0-24h56A12,12,0,0,1,164,84Z"}))],["duotone",M.createElement(M.Fragment,null,M.createElement("path",{d:"M216,83.31V208a8,8,0,0,1-8,8H176V152a8,8,0,0,0-8-8H88a8,8,0,0,0-8,8v64H48a8,8,0,0,1-8-8V48a8,8,0,0,1,8-8H172.69a8,8,0,0,1,5.65,2.34l35.32,35.32A8,8,0,0,1,216,83.31Z",opacity:"0.2"}),M.createElement("path",{d:"M219.31,72,184,36.69A15.86,15.86,0,0,0,172.69,32H48A16,16,0,0,0,32,48V208a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V83.31A15.86,15.86,0,0,0,219.31,72ZM168,208H88V152h80Zm40,0H184V152a16,16,0,0,0-16-16H88a16,16,0,0,0-16,16v56H48V48H172.69L208,83.31ZM160,72a8,8,0,0,1-8,8H96a8,8,0,0,1,0-16h56A8,8,0,0,1,160,72Z"}))],["fill",M.createElement(M.Fragment,null,M.createElement("path",{d:"M219.31,72,184,36.69A15.86,15.86,0,0,0,172.69,32H48A16,16,0,0,0,32,48V208a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V83.31A15.86,15.86,0,0,0,219.31,72ZM208,208H184V152a16,16,0,0,0-16-16H88a16,16,0,0,0-16,16v56H48V48H172.69L208,83.31ZM160,72a8,8,0,0,1-8,8H96a8,8,0,0,1,0-16h56A8,8,0,0,1,160,72Z"}))],["light",M.createElement(M.Fragment,null,M.createElement("path",{d:"M217.9,73.42,182.58,38.1a13.9,13.9,0,0,0-9.89-4.1H48A14,14,0,0,0,34,48V208a14,14,0,0,0,14,14H208a14,14,0,0,0,14-14V83.31A13.9,13.9,0,0,0,217.9,73.42ZM170,210H86V152a2,2,0,0,1,2-2h80a2,2,0,0,1,2,2Zm40-2a2,2,0,0,1-2,2H182V152a14,14,0,0,0-14-14H88a14,14,0,0,0-14,14v58H48a2,2,0,0,1-2-2V48a2,2,0,0,1,2-2H172.69a2,2,0,0,1,1.41.58L209.42,81.9a2,2,0,0,1,.58,1.41ZM158,72a6,6,0,0,1-6,6H96a6,6,0,0,1,0-12h56A6,6,0,0,1,158,72Z"}))],["regular",M.createElement(M.Fragment,null,M.createElement("path",{d:"M219.31,72,184,36.69A15.86,15.86,0,0,0,172.69,32H48A16,16,0,0,0,32,48V208a16,16,0,0,0,16,16H208a16,16,0,0,0,16-16V83.31A15.86,15.86,0,0,0,219.31,72ZM168,208H88V152h80Zm40,0H184V152a16,16,0,0,0-16-16H88a16,16,0,0,0-16,16v56H48V48H172.69L208,83.31ZM160,72a8,8,0,0,1-8,8H96a8,8,0,0,1,0-16h56A8,8,0,0,1,160,72Z"}))],["thin",M.createElement(M.Fragment,null,M.createElement("path",{d:"M216.49,74.83,181.17,39.51A11.93,11.93,0,0,0,172.69,36H48A12,12,0,0,0,36,48V208a12,12,0,0,0,12,12H208a12,12,0,0,0,12-12V83.31A11.93,11.93,0,0,0,216.49,74.83ZM172,212H84V152a4,4,0,0,1,4-4h80a4,4,0,0,1,4,4Zm40-4a4,4,0,0,1-4,4H180V152a12,12,0,0,0-12-12H88a12,12,0,0,0-12,12v60H48a4,4,0,0,1-4-4V48a4,4,0,0,1,4-4H172.69a4,4,0,0,1,2.82,1.17l35.32,35.32A4,4,0,0,1,212,83.31ZM156,72a4,4,0,0,1-4,4H96a4,4,0,0,1,0-8h56A4,4,0,0,1,156,72Z"}))]]),tU=M.forwardRef((a,b)=>M.createElement(P,{ref:b,...a,weights:tT}));tU.displayName="FloppyDiskIcon";let tV={png:"image/png",jpg:"image/jpeg",jpeg:"image/jpeg",gif:"image/gif",webp:"image/webp",svg:"image/svg+xml",bmp:"image/bmp",ico:"image/x-icon",avif:"image/avif"},tW={mp3:"audio/mpeg",wav:"audio/wav",ogg:"audio/ogg",oga:"audio/ogg",opus:"audio/ogg",m4a:"audio/mp4",aac:"audio/aac",flac:"audio/flac",weba:"audio/webm"};function tX(a){return(a.replace(/\\/g,"/").split("/").pop()??"").toLowerCase().split(".").pop()??""}function tY(a,b,c,d={}){let e=fJ(a),f=new URLSearchParams({type:b});for(let[a,b]of(c&&f.set("sessionId",c),Object.entries(d)))void 0!==b&&f.set(a,String(b));return`/api/files/${e}?${f.toString()}`}function tZ({filePath:a,sourceSessionId:b}){let{t:c}=(0,bb.s)();return(0,L.jsx)("a",{href:tY(a,"download",b),download:fK(a),title:c("desktop.downloadFile"),style:{display:"flex",alignItems:"center",justifyContent:"center",height:20,padding:"0 5px",background:"var(--bg-panel)",border:"1px solid var(--border)",borderRadius:4,color:"var(--text-muted)",cursor:"pointer",flexShrink:0,textDecoration:"none"},children:(0,L.jsx)(aE,{size:11,"aria-hidden":"true"})})}let t$={fontFamily:"var(--font-mono)",fontSize:13,lineHeight:1.6,tabSize:2},t_={fontFamily:"var(--font-mono)",fontSize:13,lineHeight:1.6,padding:"12px 0 12px 16px",color:"var(--text-dim)",textAlign:"right",userSelect:"none"};async function t0(a,b){let c=await fetch(`/api/files/${fJ(a)}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({content:b})});if(!c.ok)throw Error((await c.json().catch(()=>({}))).error??`HTTP ${c.status}`);let d=await c.json();return"number"==typeof d.size?d.size:0}let t1={delete:"3px solid var(--git-status-deleted)",add:"3px solid var(--git-status-added)",edit:"3px solid var(--git-status-modified)"},t2="var(--git-status-deleted-bg)",t3="var(--git-status-added-bg)",t4="var(--git-status-added)";function t5(a){return a<1024?`${a} B`:a<1048576?`${(a/1024).toFixed(1)} KB`:`${(a/1048576).toFixed(1)} MB`}function t6({oldContent:a,newContent:b}){let{t:c}=(0,bb.s)(),d=function(a,b){let c=a.length,d=b.length,e=c+d,f=Array(2*e+1).fill(0),g=[];for(let h=0;h<=e;h++){g.push([...f]);for(let i=-h;i<=h;i+=2){let j,k=(j=i===-h||i!==h&&f[i-1+e]<f[i+1+e]?f[i+1+e]:f[i-1+e]+1)-i;for(;j<c&&k<d&&a[j]===b[k];)j++,k++;if(f[i+e]=j,j>=c&&k>=d){let f=[],i=c,j=d;for(let c=h;c>0;c--){let d,h=g[c-1],k=i-j;d=k===-c||k!==c&&h[k-1+e]<h[k+1+e]?k+1:k-1;let l=h[d+e],m=l-d;for(;i>l&&j>m;)i--,j--,f.unshift({type:"unchanged",text:a[i]});c>0&&(i>l?(i--,f.unshift({type:"removed",text:a[i]})):(j--,f.unshift({type:"added",text:b[j]})))}for(;i>0&&j>0;)i--,j--,f.unshift({type:"unchanged",text:a[i]});return f}}}return[...a.map(a=>({type:"removed",text:a})),...b.map(a=>({type:"added",text:a}))]}(a.split("\n"),b.split("\n"));if(!d.some(a=>"unchanged"!==a.type))return(0,L.jsx)("div",{style:{padding:"12px 16px",fontSize:12,color:"var(--text-dim)",fontFamily:"var(--font-mono)"},children:c("desktop.noChanges")});let e=new Set(d.flatMap((a,b)=>"unchanged"!==a.type?[b]:[])),f=new Set;for(let a of e)for(let b=Math.max(0,a-3);b<=Math.min(d.length-1,a+3);b++)f.add(b);let g=[],h=0;for(;h<d.length;)if(f.has(h)){let a=[];for(;h<d.length&&f.has(h);)a.push(d[h]),h++;g.push({hidden:!1,lines:a})}else{let a=0;for(;h<d.length&&!f.has(h);)a++,h++;g.push({hidden:!0,count:a})}let i=[],j=1;for(let a of d)"removed"===a.type?i.push(0):i.push(j++);let k=0;return(0,L.jsx)("div",{style:{fontFamily:"var(--font-mono)",fontSize:13,lineHeight:1.6,minWidth:"max-content"},children:g.map((a,b)=>{if(a.hidden){let d=(0,L.jsx)("div",{style:{padding:"2px 16px",color:"var(--text-dim)",background:"var(--bg-panel)",fontSize:11,borderTop:"1px solid var(--border)",borderBottom:"1px solid var(--border)"},children:c("desktop.unchangedLines",{count:a.count})},b);return k+=a.count,d}let d=[],e=[],f=[],g=()=>{if(e.length||f.length){let a=e.length&&f.length?"edit":e.length?"delete":"add";for(let b of e)d.push({key:b.key,kind:"removed",text:b.text,lineNo:null,block:a});for(let b of f)d.push({key:b.key,kind:"added",text:b.text,lineNo:b.lineNo,block:a});e=[],f=[]}};a.lines.forEach((a,c)=>{"unchanged"===a.type?(g(),d.push({key:`${b}:${c}`,kind:"context",text:a.text,lineNo:i[k+c],block:null})):"removed"===a.type?e.push({key:`${b}:${c}`,text:a.text}):f.push({key:`${b}:${c}`,text:a.text,lineNo:i[k+c]})}),g();let h=d.map(a=>{let b="removed"===a.kind?t2:"added"===a.kind?t3:"transparent",c=a.block?t1[a.block]:"3px solid transparent",d="added"===a.kind?t4:"var(--text-dim)";return(0,L.jsxs)("div",{style:{display:"flex",background:b,borderLeft:c},children:[(0,L.jsx)("span",{style:{minWidth:44,padding:"0 8px 0 16px",textAlign:"right",color:d,userSelect:"none",fontSize:11,lineHeight:1.6,flexShrink:0},children:a.lineNo??""}),(0,L.jsx)("span",{style:{flex:1,minWidth:0,padding:"0 8px 0 0",whiteSpace:"pre",color:"var(--text)"},children:a.text||"\xa0"})]},a.key)});return k+=a.lines.length,(0,L.jsx)("div",{children:h},b)})})}function t7({patch:a}){let b=qh(a);if(!b)return null;let c=[],d=[],e=[],f=()=>{if(d.length||e.length){let a=d.length&&e.length?"edit":d.length?"delete":"add";for(let b of d)c.push({key:b.key,kind:"removed",text:b.text,lineNo:null,block:a});for(let b of e)c.push({key:b.key,kind:"added",text:b.text,lineNo:b.lineNo,block:a});d=[],e=[]}};return b.forEach((a,b)=>{a.rows.forEach((a,g)=>{if("hunk"===a.type){f(),c.push({key:`${b}:${g}:h`,kind:"hunk",text:a.text,lineNo:null,block:null});return}let{left:h,right:i}=a;if("context"===h.type&&"context"===i.type){f(),c.push({key:`${b}:${g}:c`,kind:"context",text:h.text,lineNo:i.lineNo,block:null});return}"removed"===h.type&&d.push({key:`${b}:${g}:l`,text:h.text}),"added"===i.type&&e.push({key:`${b}:${g}:r`,text:i.text,lineNo:i.lineNo})})}),f(),(0,L.jsx)("div",{style:{fontFamily:"var(--font-mono)",fontSize:12,lineHeight:1.55,minWidth:"max-content"},children:c.map(a=>{if("hunk"===a.kind)return(0,L.jsxs)("div",{children:[(0,L.jsx)("div",{style:{height:"1.55em"}}),(0,L.jsx)("div",{style:{padding:"3px 12px",color:"var(--accent-blue)",background:"var(--bg-secondary)"},children:a.text}),(0,L.jsx)("div",{style:{height:"1.55em"}})]},a.key);let b="removed"===a.kind?t2:"added"===a.kind?t3:"transparent",c=a.block?t1[a.block]:"3px solid transparent",d="added"===a.kind?t4:"var(--text-dim)";return(0,L.jsxs)("div",{style:{display:"flex",background:b,borderLeft:c},children:[(0,L.jsx)("span",{style:{width:44,flexShrink:0,padding:"0 8px 0 16px",textAlign:"right",color:d,userSelect:"none",fontSize:11},children:a.lineNo??""}),(0,L.jsx)("span",{style:{flex:1,minWidth:0,padding:"0 8px 0 0",whiteSpace:"pre",color:"var(--text)"},children:a.text||"\xa0"})]},a.key)})})}function t8({filePath:a,cwd:b,sourceSessionId:c}){let{t:d}=(0,bb.s)(),[e,f]=(0,M.useState)(0),[g,h]=(0,M.useState)(null),[i,j]=(0,M.useState)(null),[k,l]=(0,M.useState)(null);(0,M.useRef)(null);let m=fK(a).toLowerCase().split(".").pop()??"",n=tY(a,"read",c,e?{v:e}:void 0),o=null!=g?t5(g):null;return(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",height:"100%",overflow:"hidden"},children:[(0,L.jsxs)("div",{className:"file-viewer-status-bar",style:{display:"flex",alignItems:"center",gap:12,padding:"4px 16px",borderBottom:"1px solid var(--border)",fontSize:11,color:"var(--text-dim)",background:"var(--bg)",flexShrink:0,flexWrap:"wrap",rowGap:4},children:[(0,L.jsx)("span",{style:{fontFamily:"var(--font-mono)",minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",flex:"0 1 auto"},title:a,children:fL(a,b)}),(0,L.jsx)("span",{style:{marginLeft:"auto"},children:m||d("desktop.image")}),i&&(0,L.jsxs)("span",{children:[i.w," \xd7 ",i.h]}),o&&(0,L.jsx)("span",{children:o}),(0,L.jsx)(tZ,{filePath:a,sourceSessionId:c})]}),(0,L.jsx)("div",{style:{flex:1,overflow:"auto",background:"var(--bg-panel)",display:"flex",alignItems:"center",justifyContent:"center",padding:16,backgroundImage:"linear-gradient(45deg, var(--bg) 25%, transparent 25%), linear-gradient(-45deg, var(--bg) 25%, transparent 25%), linear-gradient(45deg, transparent 75%, var(--bg) 75%), linear-gradient(-45deg, transparent 75%, var(--bg) 75%)",backgroundSize:"16px 16px",backgroundPosition:"0 0, 0 8px, 8px -8px, -8px 0px"},children:k?(0,L.jsx)("div",{style:{color:"var(--status-error)",fontSize:13},children:k}):(0,L.jsx)("img",{src:n,alt:a,onLoad:a=>{let b=a.currentTarget;j({w:b.naturalWidth,h:b.naturalHeight})},onError:()=>l(d("desktop.failedToLoadImage")),style:{maxWidth:"100%",maxHeight:"100%",objectFit:"contain",boxShadow:"0 2px 8px rgba(0,0,0,0.15)"}})})]})}function t9({filePath:a,cwd:b,sourceSessionId:c}){let{t:d}=(0,bb.s)(),[e,f]=(0,M.useState)(0),[g,h]=(0,M.useState)(null),[i,j]=(0,M.useState)(null),[k,l]=(0,M.useState)(null);(0,M.useRef)(null);let m=fK(a).toLowerCase().split(".").pop()??"",n=tY(a,"read",c,e?{v:e}:void 0);return(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",height:"100%",overflow:"hidden"},children:[(0,L.jsxs)("div",{className:"file-viewer-status-bar",style:{display:"flex",alignItems:"center",gap:12,padding:"4px 16px",borderBottom:"1px solid var(--border)",fontSize:11,color:"var(--text-dim)",background:"var(--bg)",flexShrink:0,flexWrap:"wrap",rowGap:4},children:[(0,L.jsx)("span",{style:{fontFamily:"var(--font-mono)",minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",flex:"0 1 auto"},title:a,children:fL(a,b)}),(0,L.jsx)("span",{style:{marginLeft:"auto"},children:m||d("desktop.audio")}),null!=i&&(0,L.jsx)("span",{children:function(a){if(!Number.isFinite(a))return"";let b=Math.round(a),c=Math.floor(b/60);return`${c}:${String(b%60).padStart(2,"0")}`}(i)}),null!=g&&(0,L.jsx)("span",{children:t5(g)}),(0,L.jsx)(tZ,{filePath:a,sourceSessionId:c})]}),(0,L.jsx)("div",{style:{flex:1,display:"flex",alignItems:"center",justifyContent:"center",padding:24,background:"var(--bg-panel)"},children:(0,L.jsxs)("div",{style:{width:"min(680px, 100%)"},children:[k&&(0,L.jsx)("div",{style:{color:"var(--status-error)",fontSize:13,marginBottom:12,textAlign:"center"},children:k}),(0,L.jsx)("audio",{controls:!0,preload:"metadata",src:n,onLoadedMetadata:a=>j(a.currentTarget.duration),onError:()=>l(d("desktop.failedToLoadAudio")),style:{width:"100%"}},n)]})})]})}function ua({filePath:a,cwd:b,sourceSessionId:c}){let{t:d}=(0,bb.s)(),[e,f]=(0,M.useState)(0),[g,h]=(0,M.useState)(null),[i,j]=(0,M.useState)(null);(0,M.useRef)(null);let k=tX(a),l="pdf"===k,m=l?tY(a,"read",c,e?{v:e}:void 0):tY(a,"preview",c,e?{v:e}:void 0);return(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",height:"100%",overflow:"hidden"},children:[(0,L.jsxs)("div",{className:"file-viewer-status-bar",style:{display:"flex",alignItems:"center",gap:12,padding:"4px 16px",borderBottom:"1px solid var(--border)",fontSize:11,color:"var(--text-dim)",background:"var(--bg)",flexShrink:0,flexWrap:"wrap",rowGap:4},children:[(0,L.jsx)("span",{style:{fontFamily:"var(--font-mono)",minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},title:a,children:fL(a,b)}),(0,L.jsx)("span",{style:{marginLeft:"auto"},children:"docx"===k?d("desktop.docxPreview"):"pdf"}),null!=g&&(0,L.jsx)("span",{children:t5(g)}),(0,L.jsx)(tZ,{filePath:a,sourceSessionId:c})]}),(0,L.jsx)("div",{style:{flex:1,minHeight:0,background:"var(--bg-panel)"},children:i?(0,L.jsx)("div",{style:{height:"100%",display:"flex",alignItems:"center",justifyContent:"center",padding:24,color:"var(--status-error)",fontSize:13,textAlign:"center"},children:i}):(0,L.jsx)("iframe",{src:m,sandbox:l?void 0:"allow-same-origin",title:d("desktop.previewFile",{file:fK(a)}),style:{width:"100%",height:"100%",border:"none",background:l?"var(--bg)":"#eef1f5"}},m)})]})}function ub({filePath:a,cwd:b,sourceSessionId:c,onOpenFile:d,onAtMention:e,onMentionLines:f,initialDisplayMode:g,onFileSaved:h}){let i;return null!==(tV[tX(a)]??null)?(0,L.jsx)(t8,{filePath:a,cwd:b,sourceSessionId:c}):null!==(tW[tX(a)]??null)?(0,L.jsx)(t9,{filePath:a,cwd:b,sourceSessionId:c}):null!==("pdf"===(i=tX(a))||"docx"===i?i:null)?(0,L.jsx)(ua,{filePath:a,cwd:b,sourceSessionId:c}):(0,L.jsx)(uc,{filePath:a,cwd:b,sourceSessionId:c,onOpenFile:d,onAtMention:e,onMentionLines:f,initialDisplayMode:g,onFileSaved:h})}function uc({filePath:a,cwd:b,sourceSessionId:c,onOpenFile:d,onAtMention:e,onMentionLines:f,initialDisplayMode:g,onFileSaved:h}){let i,j,{t:k}=(0,bb.s)(),[l,m]=(0,M.useState)(null),[n,o]=(0,M.useState)(null),[p,q]=(0,M.useState)(null),[r,s]=(0,M.useState)(!0),[t,u]=(0,M.useState)(!1),[v,w]=(0,M.useState)(null),[x,y]=(0,M.useState)(!1),[z,A]=(0,M.useState)("source"),[B,C]=(0,M.useState)(!1),[D,E]=(0,M.useState)(0),[F,G]=(0,M.useState)(null);(0,M.useRef)(null);let H=(0,M.useRef)(null),[I,J]=(0,M.useState)(!1),[K,N]=(0,M.useState)(""),[O,P]=(0,M.useState)(""),[Q,R]=(0,M.useState)(!1),[S,T]=(0,M.useState)(null),[U,V]=(0,M.useState)(!1),W=(0,M.useRef)(null),X=(0,M.useRef)(null),Y=(0,M.useRef)(0);(0,M.useRef)(!1);let Z=I&&K!==O,_=!!(l?.content&&l.content.includes("\0")),aa=(0,M.useCallback)(async a=>{if(!b)return void q(null);try{let c=new URLSearchParams({cwd:b,path:a}),d=await fetch(`/api/git/diff?${c.toString()}`),e=await d.json();q(d.ok&&e.supported&&"string"==typeof e.patch?e:null)}catch{q(null)}},[b]),ab=(0,M.useCallback)((a,b=!1,d=0)=>fetch(tY(a,"read",c,d?{offset:d}:void 0)).then(a=>a.json()).then(a=>a.error?(w(a.error),null):(b?(m(b=>(b&&o(b.content),a)),E(a=>a+1)):d?m(b=>b?{...a,content:b.content+a.content}:a):m(a),a)).catch(a=>(w(String(a)),null)),[c]),ac=(0,M.useCallback)(()=>{l&&!_&&(N(l.content),P(l.content),T(null),V(!1),J(!0))},[l,_]),ad=(0,M.useCallback)(()=>{J(!1),N(""),P(""),T(null),V(!1)},[]),af=(0,M.useCallback)(()=>{(!Z||window.confirm(k("files.unsavedChanges")))&&ad()},[Z,ad,k]),ag=(0,M.useCallback)(async()=>{if(!l||Q)return;let b=++Y.current;R(!0),T(null);try{let c=await t0(a,K);if(b!==Y.current)return;m(a=>a?{...a,content:K,size:c}:a),P(K),R(!1),ad(),aa(a),h?.()}catch(a){if(b!==Y.current)return;T(a instanceof Error?a.message:String(a)),R(!1)}},[l,Q,K,a,ad,aa,h]),ah=(0,M.useCallback)(()=>{let a=W.current,b=X.current;a&&b&&(b.scrollTop=a.scrollTop)},[]),ai=(0,M.useCallback)(a=>{if("Tab"!==a.key||a.metaKey||a.ctrlKey||a.altKey)return;a.preventDefault();let b=a.currentTarget,{selectionStart:c,selectionEnd:d}=b;N(b.value.slice(0,c)+" "+b.value.slice(d)),requestAnimationFrame(()=>{let a=W.current;if(!a)return;let b=c+2;a.selectionStart=b,a.selectionEnd=b})},[]),aj=(0,M.useMemo)(()=>pQ(l?.content??""),[l?.content]),ak=p?.supported===!0&&"string"==typeof p.patch,al=ak&&p?.status==="deleted",am=(0,M.useCallback)(c=>{f&&c&&f(fL(a,b),c.startLine,c.endLine)},[b,a,f]);if(r)return(0,L.jsx)("div",{style:{height:"100%",display:"flex",alignItems:"center",justifyContent:"center",color:"var(--text-muted)",fontSize:13},children:k("desktop.loadingFile")});if(al&&!l)return(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",height:"100%",overflow:"hidden"},children:[(0,L.jsx)("div",{style:{padding:"5px 16px",borderBottom:"1px solid var(--border)",color:"var(--text-dim)",fontFamily:"var(--font-mono)",fontSize:11},title:a,children:fL(a,b)}),(0,L.jsx)("div",{style:{flex:1,overflow:"auto",background:"var(--bg)"},children:(0,L.jsx)(t7,{patch:p.patch})})]});if(v)return(0,L.jsx)("div",{style:{height:"100%",display:"flex",alignItems:"center",justifyContent:"center",color:"var(--status-error)",fontSize:13},children:v});if(!l)return null;let an="html"===l.language,ao="markdown"===l.language,ap=(j=(i=fI(a).replace(/\/+$/,"")).lastIndexOf("/"))<0?"":0===j?"/":2===j&&/^[a-zA-Z]:\//.test(i)?i.slice(0,3):i.slice(0,j),aq=l.content.split("\n"),ar=null!==n&&n!==l.content||ak,as=!al&&!_&&fN();return(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",height:"100%",overflow:"hidden"},children:[(0,L.jsxs)("div",{className:"file-viewer-status-bar",style:{display:"flex",alignItems:"center",gap:12,padding:"4px 16px",borderBottom:"1px solid var(--border)",fontSize:11,color:"var(--text-dim)",background:"var(--bg)",flexShrink:0,flexWrap:"wrap",rowGap:4},children:[(0,L.jsx)("span",{style:{fontFamily:"var(--font-mono)",minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",flex:"0 1 auto"},title:a,children:fL(a,b)}),(0,L.jsx)("span",{style:{marginLeft:"auto"},children:l.language}),"source"===z&&!I&&(0,L.jsx)("span",{children:k("desktop.lines",{count:aq.length})}),(0,L.jsx)("span",{children:t5(l.size)}),ar&&!I&&(0,L.jsxs)("div",{style:{display:"flex",borderRadius:5,overflow:"hidden",border:"1px solid var(--border)"},children:[(0,L.jsx)("button",{onClick:()=>A("source"),style:{padding:"2px 8px",fontSize:11,border:"none",cursor:"pointer",background:"source"===z?"var(--bg-selected)":"var(--bg-hover)",color:"source"===z?"var(--text)":"var(--text-muted)",fontWeight:"source"===z?600:400},children:k("desktop.source")}),(0,L.jsxs)("button",{onClick:()=>A("diff"),style:{padding:"2px 8px",fontSize:11,border:"none",borderLeft:"1px solid var(--border)",cursor:"pointer",background:"diff"===z?"var(--bg-selected)":"var(--bg-hover)",color:"diff"===z?"var(--text)":"var(--text-muted)",fontWeight:"diff"===z?600:400},children:[k("desktop.diff")," ",D>0&&(0,L.jsxs)("span",{style:{color:"var(--git-status-added)",marginLeft:2},children:["+",D]})]})]}),"source"===z&&!x&&!I&&(0,L.jsx)("button",{onClick:()=>C(a=>!a),title:B?k("desktop.disableWordWrap"):k("desktop.enableWordWrap"),style:{padding:"2px 8px",fontSize:11,cursor:"pointer",background:B?"var(--bg-selected)":"var(--bg-hover)",color:B?"var(--text)":"var(--text-muted)",border:"1px solid var(--border)",borderRadius:5,fontWeight:B?600:400},children:k("desktop.wrap")}),an&&"source"===z&&!I&&(0,L.jsxs)("div",{style:{display:"flex",borderRadius:5,overflow:"hidden",border:"1px solid var(--border)"},children:[(0,L.jsx)("button",{onClick:()=>y(!1),style:{padding:"2px 8px",fontSize:11,border:"none",cursor:"pointer",background:x?"var(--bg-hover)":"var(--bg-selected)",color:x?"var(--text-muted)":"var(--text)",fontWeight:x?400:600},children:k("desktop.code")}),(0,L.jsx)("button",{onClick:()=>y(!0),style:{padding:"2px 8px",fontSize:11,border:"none",borderLeft:"1px solid var(--border)",cursor:"pointer",background:x?"var(--bg-selected)":"var(--bg-hover)",color:x?"var(--text)":"var(--text-muted)",fontWeight:x?600:400},children:k("desktop.preview")})]}),ao&&"source"===z&&!I&&(0,L.jsxs)("div",{style:{display:"flex",borderRadius:5,overflow:"hidden",border:"1px solid var(--border)"},children:[(0,L.jsx)("button",{onClick:()=>y(!0),style:{padding:"2px 8px",fontSize:11,border:"none",cursor:"pointer",background:x?"var(--bg-selected)":"var(--bg-hover)",color:x?"var(--text)":"var(--text-muted)",fontWeight:x?600:400},children:k("desktop.preview")}),(0,L.jsx)("button",{onClick:()=>y(!1),style:{padding:"2px 8px",fontSize:11,border:"none",borderLeft:"1px solid var(--border)",cursor:"pointer",background:x?"var(--bg-hover)":"var(--bg-selected)",color:x?"var(--text-muted)":"var(--text)",fontWeight:x?400:600},children:k("desktop.raw")})]}),I?(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)("button",{type:"button",onClick:()=>void ag(),disabled:Q,title:k("files.saveHint"),"aria-label":k("files.save"),style:{height:20,minWidth:20,padding:"0 5px",display:"inline-flex",alignItems:"center",justifyContent:"center",border:"1px solid var(--border)",borderRadius:4,background:"var(--bg-selected)",color:"var(--text)",cursor:"pointer"},children:(0,L.jsx)(tU,{size:13,"aria-hidden":"true"})}),(0,L.jsx)("button",{type:"button",onClick:af,disabled:Q,title:k("files.cancelEdit"),"aria-label":k("files.cancelEdit"),style:{height:20,minWidth:20,padding:"0 5px",display:"inline-flex",alignItems:"center",justifyContent:"center",border:"1px solid var(--border)",borderRadius:4,background:"var(--bg-panel)",color:"var(--text-muted)",cursor:"pointer"},children:(0,L.jsx)($,{size:13,"aria-hidden":"true"})})]}):"source"===z&&as?(0,L.jsx)("button",{type:"button",onClick:ac,title:k("files.edit"),"aria-label":k("files.edit"),style:{height:20,minWidth:20,padding:"0 5px",display:"inline-flex",alignItems:"center",justifyContent:"center",border:"1px solid var(--border)",borderRadius:4,background:"var(--bg-panel)",color:"var(--text-muted)",cursor:"pointer"},children:(0,L.jsx)(ae,{size:13,"aria-hidden":"true"})}):null,(e||f)&&!I&&(0,L.jsx)("button",{type:"button",onPointerDown:a=>a.preventDefault(),onClick:()=>{F&&f?am(F):e?.(fL(a,b),!1)},title:F?k("desktop.mentionSelectedLines",{start:F.startLine,end:F.endLine}):k("desktop.mentionFile"),"aria-label":F?k("desktop.mentionSelectedLines",{start:F.startLine,end:F.endLine}):k("desktop.mentionFile"),style:{height:20,minWidth:20,padding:"0 5px",border:"1px solid var(--border)",borderRadius:4,background:"var(--bg-panel)",color:"var(--text-muted)",cursor:"pointer"},children:"@"}),!I&&(0,L.jsx)(tZ,{filePath:a,sourceSessionId:c})]}),l?.truncated&&"source"===z&&!I&&(0,L.jsxs)("div",{className:"file-viewer-load-more",style:{display:"flex",alignItems:"center",justifyContent:"center",gap:10,padding:"5px 8px",borderBottom:"1px solid var(--border)",color:"var(--text-dim)",fontSize:11},children:[(0,L.jsxs)("span",{children:[t5(l.nextOffset)," / ",t5(l.size)]}),(0,L.jsx)("button",{type:"button",disabled:t,onClick:()=>{u(!0),ab(a,!1,l.nextOffset).finally(()=>u(!1))},style:{padding:"2px 10px",fontSize:11,cursor:"pointer",border:"1px solid var(--border)",borderRadius:5,background:"var(--bg-hover)",color:"var(--text)",opacity:t?.6:1},children:t?k("i18n.loading"):k("i18n.loadMore")})]}),(0,L.jsx)("div",{ref:H,style:{flex:1,overflow:"auto",background:"var(--bg)"},children:I?(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",height:"100%",overflow:"hidden"},children:[U&&(0,L.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8,padding:"5px 12px",borderBottom:"1px solid var(--border)",background:"rgba(214,168,75,0.14)",color:"#d6a84b",fontSize:11,flexShrink:0},children:[(0,L.jsx)("span",{style:{flex:1},children:k("files.externalModified")}),(0,L.jsx)("button",{type:"button",onClick:()=>{(!Z||window.confirm(k("files.reloadOverwriteConfirm")))&&ab(a).then(a=>{a&&(N(a.content),P(a.content),V(!1))})},disabled:Q,style:{padding:"2px 8px",fontSize:11,border:"1px solid #d6a84b",borderRadius:4,background:"transparent",color:"#d6a84b",cursor:"pointer"},children:k("files.reload")})]}),S&&(0,L.jsx)("div",{style:{padding:"5px 12px",borderBottom:"1px solid var(--border)",background:"rgba(248,113,113,0.14)",color:"var(--status-error)",fontSize:11,flexShrink:0},children:k("files.saveFailed",{error:S})}),(0,L.jsxs)("div",{style:{flex:1,display:"flex",overflow:"hidden"},children:[(0,L.jsx)("div",{ref:X,"aria-hidden":"true",style:{...t_,height:"100%",overflow:"hidden",whiteSpace:"pre",pointerEvents:"none"},children:K.split("\n").map((a,b)=>`${b+1}
195
+ `).join("")}),(0,L.jsx)("textarea",{ref:W,className:"file-editor-textarea",value:K,onChange:a=>N(a.target.value),onScroll:ah,onKeyDown:ai,spellCheck:!1,autoComplete:"off",autoCorrect:"off",autoCapitalize:"off",wrap:"off",style:{flex:1,height:"100%",resize:"none",border:"none",outline:"none",background:"var(--bg)",color:"var(--text)",...t$,whiteSpace:"pre",overflow:"auto",padding:0,tabSize:2}})]})]}):"diff"===z&&ar?ak?(0,L.jsx)(t7,{patch:p.patch}):(0,L.jsx)(t6,{oldContent:n,newContent:l.content}):an&&x?(0,L.jsx)("iframe",{srcDoc:l.content,sandbox:"allow-scripts",style:{width:"100%",height:"100%",border:"none",background:"var(--bg)"},title:k("desktop.htmlPreview")}):ao&&x?(0,L.jsx)("div",{className:"markdown-body markdown-file-preview",style:{padding:"24px 32px"},children:(0,L.jsx)(kS,{remarkPlugins:pT,rehypePlugins:pU,components:{h1:({children:a})=>(0,L.jsx)("h1",{id:pP(a),children:a}),h2:({children:a})=>(0,L.jsx)("h2",{id:pP(a),children:a}),h3:({children:a})=>(0,L.jsx)("h3",{id:pP(a),children:a}),code({className:a,children:b,...c}){let d=a?.replace("language-","").toLowerCase()??"",e=String(b);return a?.includes("language-")||e.includes("\n")?"mermaid"===d?(0,L.jsx)(p6,{code:e.replace(/\n$/,"")}):(0,L.jsx)(p9,{code:e.replace(/\n$/,""),lang:d}):(0,L.jsx)("code",{className:"inline max-w-full whitespace-normal break-words [overflow-wrap:anywhere] align-baseline bg-(--bg-secondary) border border-(--border) px-1.5 py-0.5 text-xs font-mono text-(--accent-blue)",...c,children:b})},pre:({children:a})=>(0,L.jsx)(L.Fragment,{children:a}),a({href:a,children:c,...e}){delete e.node;let f="text-(--accent-blue) underline underline-offset-2 hover:text-(--accent-blue)/80",g=d?hp(a,ap,b??ap):null;return g&&d?(0,L.jsx)("a",{href:a,...e,className:f,onClick:a=>{if(a.defaultPrevented||0!==a.button||a.metaKey||a.ctrlKey||a.shiftKey||a.altKey)return;let b=a.currentTarget.getAttribute("target");b&&"_self"!==b||(a.preventDefault(),d(g))},children:c}):(0,L.jsx)("a",{href:a,...e,className:f,target:"_blank",rel:"noopener noreferrer",children:c})},table:({children:a})=>(0,L.jsx)("div",{className:"my-3 rounded-lg overflow-hidden border border-(--border)",children:(0,L.jsx)("div",{className:"overflow-x-auto",children:(0,L.jsx)("table",{className:"w-full text-sm border-collapse [&_tr:last-child>td]:border-b-0",children:a})})})},children:aj})}):(0,L.jsx)(lx,{language:"text"===l.language?"plaintext":l.language,style:pV,showLineNumbers:!0,lineNumberStyle:{color:"var(--text-dim)",fontStyle:"normal",minWidth:"3em",paddingRight:"1em"},customStyle:{margin:0,padding:"12px 0",background:"var(--bg)",fontSize:13,lineHeight:1.6,fontFamily:"var(--font-mono)",minHeight:"100%"},codeTagProps:{style:{fontFamily:"var(--font-mono)"}},lineProps:a=>({className:"file-source-line","data-line-number":String(a)}),wrapLongLines:B,children:l.content})})]})}function ud({sessionId:a,label:b,running:c=!1,onOpenFile:d}){let{t:e}=(0,bb.s)(),[f,g]=(0,M.useState)([]),[h,i]=(0,M.useState)([]),[j,k]=(0,M.useState)(!0),[l,m]=(0,M.useState)(null),n=(0,M.useMemo)(()=>{let a=new Map;for(let b of f)"toolResult"===b.role&&a.set(b.toolCallId,b);return a},[f]),o=(0,M.useMemo)(()=>f.filter(a=>"user"===a.role||"assistant"===a.role),[f]);return(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",height:"100%",minHeight:0,background:"var(--bg)"},children:[(0,L.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8,flexShrink:0,padding:"8px 12px",borderBottom:"1px solid var(--border)",background:"var(--bg-panel)"},children:[(0,L.jsx)("span",{style:{fontSize:12,fontWeight:600,color:"var(--text)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:b||e("subagent.transcriptTitle")}),c&&(0,L.jsx)("span",{style:{marginLeft:"auto",fontSize:11,color:"var(--accent)",whiteSpace:"nowrap"},children:e("agentSwitcher.status.running")})]}),(0,L.jsxs)("div",{className:"scroll-overlay",style:{flex:1,minHeight:0,overflowY:"auto",padding:"10px 12px"},children:[j&&0===f.length&&(0,L.jsx)("div",{style:{color:"var(--text-dim)",fontSize:12},children:e("subagent.transcriptLoading")}),l&&0===f.length&&(0,L.jsx)("div",{style:{color:"var(--status-error)",fontSize:12},children:e("subagent.transcriptFailed",{error:l})}),!j&&!l&&0===o.length&&(0,L.jsx)("div",{style:{color:"var(--text-dim)",fontSize:12},children:e(c?"subagent.transcriptWaiting":"subagent.transcriptEmpty")}),o.map((b,c)=>(0,L.jsx)(qE,{message:b,toolResults:n,entryId:h[c],sessionId:a,onOpenFile:d},`subagent-msg-${c}`))]})]})}function ue({tabs:a,activeTabId:b,onSelectTab:c,onCloseTab:d}){let{t:e}=(0,bb.s)(),f=(0,M.useRef)(null),[g,h]=(0,M.useState)(!1),i=(0,M.useCallback)((b,d)=>{if(b.target!==b.currentTarget)return;if("Enter"===b.key||" "===b.key){b.preventDefault(),c(d.id);return}if(!["ArrowLeft","ArrowRight","Home","End"].includes(b.key))return;b.preventDefault();let e=a.findIndex(a=>a.id===d.id),g="Home"===b.key?0:"End"===b.key?a.length-1:(e+("ArrowRight"===b.key?1:-1)+a.length)%a.length;c(a[g].id);let h=f.current;h?.querySelector(`[data-tab-id="${CSS.escape(a[g].id)}"]`)?.focus()},[c,a]);return(0,L.jsx)("div",{ref:f,role:"tablist",className:`file-tab-bar${g?"":" no-overflow"}`,children:a.map(f=>{let g=f.id===b;return(0,L.jsxs)("div",{role:"tab","data-tab-id":f.id,"aria-label":"terminal"===f.kind?e("terminal.tabLabel",{name:f.label}):"subagent"===f.kind?e("subagent.transcriptTitle")+": "+f.label:f.label,"aria-selected":g,tabIndex:g||!b&&a[0].id===f.id?0:-1,className:"file-tab",onKeyDown:a=>i(a,f),onClick:()=>c(f.id),onMouseDown:a=>{1===a.button&&a.preventDefault()},onAuxClick:a=>{1===a.button&&(a.preventDefault(),a.stopPropagation(),f.closing||d(f.id))},children:[(0,L.jsx)("span",{className:"file-tab-icon",children:"subagent"===f.kind?(0,L.jsx)(a2,{size:13,"aria-hidden":"true"}):"terminal"===f.kind?(0,L.jsxs)("svg",{width:"13",height:"13",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[(0,L.jsx)("polyline",{points:"4 17 10 11 4 5"}),(0,L.jsx)("line",{x1:"12",y1:"19",x2:"20",y2:"19"})]}):fH(f.label,13)}),(0,L.jsx)("span",{className:"file-tab-label",title:f.filePath,children:f.label}),(0,L.jsx)("button",{type:"button",className:"file-tab-close",disabled:f.closing,onClick:a=>{a.stopPropagation(),d(f.id)},title:e("desktop.closeTab"),"aria-label":e("desktop.closeTabWithLabel",{label:f.label}),children:(0,L.jsx)($,{size:11,"aria-hidden":"true"})})]},f.id)})})}let uf=new Set(["awaiting_input","review","failed"]),ug=(0,M.createContext)(null);function uh(){let a=(0,M.useContext)(ug);if(!a)throw Error("useTasksView must be used within TasksViewProvider");return a}function ui({children:a}){let{t:b}=(0,bb.s)();(0,M.useRef)(b);let[c,d]=(0,M.useState)([]),[e,f]=(0,M.useState)([]),g=(0,M.useRef)(0),h=(0,M.useCallback)(async()=>{let a=++g.current;try{let b=await (0,se.Wt)(),c=(await Promise.all(b.map(a=>(0,se.Vk)(a).catch(()=>[])))).flat().sort((a,b)=>b.id-a.id);if(a!==g.current)return;f(a=>uj(a,b)?a:b),d(a=>uj(a,c)?a:c)}catch{}},[]),i=(0,M.useMemo)(()=>c.filter(a=>uf.has(a.status)&&null==a.archivedAt).length,[c]);(0,M.useRef)(null);let j=(0,M.useMemo)(()=>({tasks:c,projects:e,attentionCount:i,refetch:h}),[c,e,i,h]);return(0,L.jsx)(ug.Provider,{value:j,children:a})}function uj(a,b){return JSON.stringify(a)===JSON.stringify(b)}let uk=new Map([["bold",M.createElement(M.Fragment,null,M.createElement("path",{d:"M128,76a52,52,0,1,0,52,52A52.06,52.06,0,0,0,128,76Zm0,80a28,28,0,1,1,28-28A28,28,0,0,1,128,156Zm92-27.21v-1.58l14-17.51a12,12,0,0,0,2.23-10.59A111.75,111.75,0,0,0,225,71.89,12,12,0,0,0,215.89,66L193.61,63.5l-1.11-1.11L190,40.1A12,12,0,0,0,184.11,31a111.67,111.67,0,0,0-27.23-11.27A12,12,0,0,0,146.3,22L128.79,36h-1.58L109.7,22a12,12,0,0,0-10.59-2.23A111.75,111.75,0,0,0,71.89,31.05,12,12,0,0,0,66,40.11L63.5,62.39,62.39,63.5,40.1,66A12,12,0,0,0,31,71.89,111.67,111.67,0,0,0,19.77,99.12,12,12,0,0,0,22,109.7l14,17.51v1.58L22,146.3a12,12,0,0,0-2.23,10.59,111.75,111.75,0,0,0,11.29,27.22A12,12,0,0,0,40.11,190l22.28,2.48,1.11,1.11L66,215.9A12,12,0,0,0,71.89,225a111.67,111.67,0,0,0,27.23,11.27A12,12,0,0,0,109.7,234l17.51-14h1.58l17.51,14a12,12,0,0,0,10.59,2.23A111.75,111.75,0,0,0,184.11,225a12,12,0,0,0,5.91-9.06l2.48-22.28,1.11-1.11L215.9,190a12,12,0,0,0,9.06-5.91,111.67,111.67,0,0,0,11.27-27.23A12,12,0,0,0,234,146.3Zm-24.12-4.89a70.1,70.1,0,0,1,0,8.2,12,12,0,0,0,2.61,8.22l12.84,16.05A86.47,86.47,0,0,1,207,166.86l-20.43,2.27a12,12,0,0,0-7.65,4,69,69,0,0,1-5.8,5.8,12,12,0,0,0-4,7.65L166.86,207a86.47,86.47,0,0,1-10.49,4.35l-16.05-12.85a12,12,0,0,0-7.5-2.62c-.24,0-.48,0-.72,0a70.1,70.1,0,0,1-8.2,0,12.06,12.06,0,0,0-8.22,2.6L99.63,211.33A86.47,86.47,0,0,1,89.14,207l-2.27-20.43a12,12,0,0,0-4-7.65,69,69,0,0,1-5.8-5.8,12,12,0,0,0-7.65-4L49,166.86a86.47,86.47,0,0,1-4.35-10.49l12.84-16.05a12,12,0,0,0,2.61-8.22,70.1,70.1,0,0,1,0-8.2,12,12,0,0,0-2.61-8.22L44.67,99.63A86.47,86.47,0,0,1,49,89.14l20.43-2.27a12,12,0,0,0,7.65-4,69,69,0,0,1,5.8-5.8,12,12,0,0,0,4-7.65L89.14,49a86.47,86.47,0,0,1,10.49-4.35l16.05,12.85a12.06,12.06,0,0,0,8.22,2.6,70.1,70.1,0,0,1,8.2,0,12,12,0,0,0,8.22-2.6l16.05-12.85A86.47,86.47,0,0,1,166.86,49l2.27,20.43a12,12,0,0,0,4,7.65,69,69,0,0,1,5.8,5.8,12,12,0,0,0,7.65,4L207,89.14a86.47,86.47,0,0,1,4.35,10.49l-12.84,16.05A12,12,0,0,0,195.88,123.9Z"}))],["duotone",M.createElement(M.Fragment,null,M.createElement("path",{d:"M207.86,123.18l16.78-21a99.14,99.14,0,0,0-10.07-24.29l-26.7-3a81,81,0,0,0-6.81-6.81l-3-26.71a99.43,99.43,0,0,0-24.3-10l-21,16.77a81.59,81.59,0,0,0-9.64,0l-21-16.78A99.14,99.14,0,0,0,77.91,41.43l-3,26.7a81,81,0,0,0-6.81,6.81l-26.71,3a99.43,99.43,0,0,0-10,24.3l16.77,21a81.59,81.59,0,0,0,0,9.64l-16.78,21a99.14,99.14,0,0,0,10.07,24.29l26.7,3a81,81,0,0,0,6.81,6.81l3,26.71a99.43,99.43,0,0,0,24.3,10l21-16.77a81.59,81.59,0,0,0,9.64,0l21,16.78a99.14,99.14,0,0,0,24.29-10.07l3-26.7a81,81,0,0,0,6.81-6.81l26.71-3a99.43,99.43,0,0,0,10-24.3l-16.77-21A81.59,81.59,0,0,0,207.86,123.18ZM128,168a40,40,0,1,1,40-40A40,40,0,0,1,128,168Z",opacity:"0.2"}),M.createElement("path",{d:"M128,80a48,48,0,1,0,48,48A48.05,48.05,0,0,0,128,80Zm0,80a32,32,0,1,1,32-32A32,32,0,0,1,128,160Zm88-29.84q.06-2.16,0-4.32l14.92-18.64a8,8,0,0,0,1.48-7.06,107.6,107.6,0,0,0-10.88-26.25,8,8,0,0,0-6-3.93l-23.72-2.64q-1.48-1.56-3-3L186,40.54a8,8,0,0,0-3.94-6,107.29,107.29,0,0,0-26.25-10.86,8,8,0,0,0-7.06,1.48L130.16,40Q128,40,125.84,40L107.2,25.11a8,8,0,0,0-7.06-1.48A107.6,107.6,0,0,0,73.89,34.51a8,8,0,0,0-3.93,6L67.32,64.27q-1.56,1.49-3,3L40.54,70a8,8,0,0,0-6,3.94,107.71,107.71,0,0,0-10.87,26.25,8,8,0,0,0,1.49,7.06L40,125.84Q40,128,40,130.16L25.11,148.8a8,8,0,0,0-1.48,7.06,107.6,107.6,0,0,0,10.88,26.25,8,8,0,0,0,6,3.93l23.72,2.64q1.49,1.56,3,3L70,215.46a8,8,0,0,0,3.94,6,107.71,107.71,0,0,0,26.25,10.87,8,8,0,0,0,7.06-1.49L125.84,216q2.16.06,4.32,0l18.64,14.92a8,8,0,0,0,7.06,1.48,107.21,107.21,0,0,0,26.25-10.88,8,8,0,0,0,3.93-6l2.64-23.72q1.56-1.48,3-3L215.46,186a8,8,0,0,0,6-3.94,107.71,107.71,0,0,0,10.87-26.25,8,8,0,0,0-1.49-7.06Zm-16.1-6.5a73.93,73.93,0,0,1,0,8.68,8,8,0,0,0,1.74,5.48l14.19,17.73a91.57,91.57,0,0,1-6.23,15L187,173.11a8,8,0,0,0-5.1,2.64,74.11,74.11,0,0,1-6.14,6.14,8,8,0,0,0-2.64,5.1l-2.51,22.58a91.32,91.32,0,0,1-15,6.23l-17.74-14.19a8,8,0,0,0-5-1.75h-.48a73.93,73.93,0,0,1-8.68,0,8.06,8.06,0,0,0-5.48,1.74L100.45,215.8a91.57,91.57,0,0,1-15-6.23L82.89,187a8,8,0,0,0-2.64-5.1,74.11,74.11,0,0,1-6.14-6.14,8,8,0,0,0-5.1-2.64L46.43,170.6a91.32,91.32,0,0,1-6.23-15l14.19-17.74a8,8,0,0,0,1.74-5.48,73.93,73.93,0,0,1,0-8.68,8,8,0,0,0-1.74-5.48L40.2,100.45a91.57,91.57,0,0,1,6.23-15L69,82.89a8,8,0,0,0,5.1-2.64,74.11,74.11,0,0,1,6.14-6.14A8,8,0,0,0,82.89,69L85.4,46.43a91.32,91.32,0,0,1,15-6.23l17.74,14.19a8,8,0,0,0,5.48,1.74,73.93,73.93,0,0,1,8.68,0,8.06,8.06,0,0,0,5.48-1.74L155.55,40.2a91.57,91.57,0,0,1,15,6.23L173.11,69a8,8,0,0,0,2.64,5.1,74.11,74.11,0,0,1,6.14,6.14,8,8,0,0,0,5.1,2.64l22.58,2.51a91.32,91.32,0,0,1,6.23,15l-14.19,17.74A8,8,0,0,0,199.87,123.66Z"}))],["fill",M.createElement(M.Fragment,null,M.createElement("path",{d:"M216,130.16q.06-2.16,0-4.32l14.92-18.64a8,8,0,0,0,1.48-7.06,107.6,107.6,0,0,0-10.88-26.25,8,8,0,0,0-6-3.93l-23.72-2.64q-1.48-1.56-3-3L186,40.54a8,8,0,0,0-3.94-6,107.29,107.29,0,0,0-26.25-10.86,8,8,0,0,0-7.06,1.48L130.16,40Q128,40,125.84,40L107.2,25.11a8,8,0,0,0-7.06-1.48A107.6,107.6,0,0,0,73.89,34.51a8,8,0,0,0-3.93,6L67.32,64.27q-1.56,1.49-3,3L40.54,70a8,8,0,0,0-6,3.94,107.71,107.71,0,0,0-10.87,26.25,8,8,0,0,0,1.49,7.06L40,125.84Q40,128,40,130.16L25.11,148.8a8,8,0,0,0-1.48,7.06,107.6,107.6,0,0,0,10.88,26.25,8,8,0,0,0,6,3.93l23.72,2.64q1.49,1.56,3,3L70,215.46a8,8,0,0,0,3.94,6,107.71,107.71,0,0,0,26.25,10.87,8,8,0,0,0,7.06-1.49L125.84,216q2.16.06,4.32,0l18.64,14.92a8,8,0,0,0,7.06,1.48,107.21,107.21,0,0,0,26.25-10.88,8,8,0,0,0,3.93-6l2.64-23.72q1.56-1.48,3-3L215.46,186a8,8,0,0,0,6-3.94,107.71,107.71,0,0,0,10.87-26.25,8,8,0,0,0-1.49-7.06ZM128,168a40,40,0,1,1,40-40A40,40,0,0,1,128,168Z"}))],["light",M.createElement(M.Fragment,null,M.createElement("path",{d:"M128,82a46,46,0,1,0,46,46A46.06,46.06,0,0,0,128,82Zm0,80a34,34,0,1,1,34-34A34,34,0,0,1,128,162ZM214,130.84c.06-1.89.06-3.79,0-5.68L229.33,106a6,6,0,0,0,1.11-5.29A105.34,105.34,0,0,0,219.76,74.9a6,6,0,0,0-4.53-3l-24.45-2.71q-1.93-2.07-4-4l-2.72-24.46a6,6,0,0,0-3-4.53,105.65,105.65,0,0,0-25.77-10.66A6,6,0,0,0,150,26.68l-19.2,15.37c-1.89-.06-3.79-.06-5.68,0L106,26.67a6,6,0,0,0-5.29-1.11A105.34,105.34,0,0,0,74.9,36.24a6,6,0,0,0-3,4.53L69.23,65.22q-2.07,1.94-4,4L40.76,72a6,6,0,0,0-4.53,3,105.65,105.65,0,0,0-10.66,25.77A6,6,0,0,0,26.68,106l15.37,19.2c-.06,1.89-.06,3.79,0,5.68L26.67,150.05a6,6,0,0,0-1.11,5.29A105.34,105.34,0,0,0,36.24,181.1a6,6,0,0,0,4.53,3l24.45,2.71q1.94,2.07,4,4L72,215.24a6,6,0,0,0,3,4.53,105.65,105.65,0,0,0,25.77,10.66,6,6,0,0,0,5.29-1.11L125.16,214c1.89.06,3.79.06,5.68,0l19.21,15.38a6,6,0,0,0,3.75,1.31,6.2,6.2,0,0,0,1.54-.2,105.34,105.34,0,0,0,25.76-10.68,6,6,0,0,0,3-4.53l2.71-24.45q2.07-1.93,4-4l24.46-2.72a6,6,0,0,0,4.53-3,105.49,105.49,0,0,0,10.66-25.77,6,6,0,0,0-1.11-5.29Zm-3.1,41.63-23.64,2.63a6,6,0,0,0-3.82,2,75.14,75.14,0,0,1-6.31,6.31,6,6,0,0,0-2,3.82l-2.63,23.63A94.28,94.28,0,0,1,155.14,218l-18.57-14.86a6,6,0,0,0-3.75-1.31h-.36a78.07,78.07,0,0,1-8.92,0,6,6,0,0,0-4.11,1.3L100.87,218a94.13,94.13,0,0,1-17.34-7.17L80.9,187.21a6,6,0,0,0-2-3.82,75.14,75.14,0,0,1-6.31-6.31,6,6,0,0,0-3.82-2l-23.63-2.63A94.28,94.28,0,0,1,38,155.14l14.86-18.57a6,6,0,0,0,1.3-4.11,78.07,78.07,0,0,1,0-8.92,6,6,0,0,0-1.3-4.11L38,100.87a94.13,94.13,0,0,1,7.17-17.34L68.79,80.9a6,6,0,0,0,3.82-2,75.14,75.14,0,0,1,6.31-6.31,6,6,0,0,0,2-3.82l2.63-23.63A94.28,94.28,0,0,1,100.86,38l18.57,14.86a6,6,0,0,0,4.11,1.3,78.07,78.07,0,0,1,8.92,0,6,6,0,0,0,4.11-1.3L155.13,38a94.13,94.13,0,0,1,17.34,7.17l2.63,23.64a6,6,0,0,0,2,3.82,75.14,75.14,0,0,1,6.31,6.31,6,6,0,0,0,3.82,2l23.63,2.63A94.28,94.28,0,0,1,218,100.86l-14.86,18.57a6,6,0,0,0-1.3,4.11,78.07,78.07,0,0,1,0,8.92,6,6,0,0,0,1.3,4.11L218,155.13A94.13,94.13,0,0,1,210.85,172.47Z"}))],["regular",M.createElement(M.Fragment,null,M.createElement("path",{d:"M128,80a48,48,0,1,0,48,48A48.05,48.05,0,0,0,128,80Zm0,80a32,32,0,1,1,32-32A32,32,0,0,1,128,160Zm88-29.84q.06-2.16,0-4.32l14.92-18.64a8,8,0,0,0,1.48-7.06,107.21,107.21,0,0,0-10.88-26.25,8,8,0,0,0-6-3.93l-23.72-2.64q-1.48-1.56-3-3L186,40.54a8,8,0,0,0-3.94-6,107.71,107.71,0,0,0-26.25-10.87,8,8,0,0,0-7.06,1.49L130.16,40Q128,40,125.84,40L107.2,25.11a8,8,0,0,0-7.06-1.48A107.6,107.6,0,0,0,73.89,34.51a8,8,0,0,0-3.93,6L67.32,64.27q-1.56,1.49-3,3L40.54,70a8,8,0,0,0-6,3.94,107.71,107.71,0,0,0-10.87,26.25,8,8,0,0,0,1.49,7.06L40,125.84Q40,128,40,130.16L25.11,148.8a8,8,0,0,0-1.48,7.06,107.21,107.21,0,0,0,10.88,26.25,8,8,0,0,0,6,3.93l23.72,2.64q1.49,1.56,3,3L70,215.46a8,8,0,0,0,3.94,6,107.71,107.71,0,0,0,26.25,10.87,8,8,0,0,0,7.06-1.49L125.84,216q2.16.06,4.32,0l18.64,14.92a8,8,0,0,0,7.06,1.48,107.21,107.21,0,0,0,26.25-10.88,8,8,0,0,0,3.93-6l2.64-23.72q1.56-1.48,3-3L215.46,186a8,8,0,0,0,6-3.94,107.71,107.71,0,0,0,10.87-26.25,8,8,0,0,0-1.49-7.06Zm-16.1-6.5a73.93,73.93,0,0,1,0,8.68,8,8,0,0,0,1.74,5.48l14.19,17.73a91.57,91.57,0,0,1-6.23,15L187,173.11a8,8,0,0,0-5.1,2.64,74.11,74.11,0,0,1-6.14,6.14,8,8,0,0,0-2.64,5.1l-2.51,22.58a91.32,91.32,0,0,1-15,6.23l-17.74-14.19a8,8,0,0,0-5-1.75h-.48a73.93,73.93,0,0,1-8.68,0,8,8,0,0,0-5.48,1.74L100.45,215.8a91.57,91.57,0,0,1-15-6.23L82.89,187a8,8,0,0,0-2.64-5.1,74.11,74.11,0,0,1-6.14-6.14,8,8,0,0,0-5.1-2.64L46.43,170.6a91.32,91.32,0,0,1-6.23-15l14.19-17.74a8,8,0,0,0,1.74-5.48,73.93,73.93,0,0,1,0-8.68,8,8,0,0,0-1.74-5.48L40.2,100.45a91.57,91.57,0,0,1,6.23-15L69,82.89a8,8,0,0,0,5.1-2.64,74.11,74.11,0,0,1,6.14-6.14A8,8,0,0,0,82.89,69L85.4,46.43a91.32,91.32,0,0,1,15-6.23l17.74,14.19a8,8,0,0,0,5.48,1.74,73.93,73.93,0,0,1,8.68,0,8,8,0,0,0,5.48-1.74L155.55,40.2a91.57,91.57,0,0,1,15,6.23L173.11,69a8,8,0,0,0,2.64,5.1,74.11,74.11,0,0,1,6.14,6.14,8,8,0,0,0,5.1,2.64l22.58,2.51a91.32,91.32,0,0,1,6.23,15l-14.19,17.74A8,8,0,0,0,199.87,123.66Z"}))],["thin",M.createElement(M.Fragment,null,M.createElement("path",{d:"M128,84a44,44,0,1,0,44,44A44.05,44.05,0,0,0,128,84Zm0,80a36,36,0,1,1,36-36A36,36,0,0,1,128,164Zm83.93-32.49q.13-3.51,0-7l15.83-19.79a4,4,0,0,0,.75-3.53A103.64,103.64,0,0,0,218,75.9a4,4,0,0,0-3-2l-25.19-2.8c-1.58-1.71-3.24-3.37-4.95-4.95L182.07,41a4,4,0,0,0-2-3A104,104,0,0,0,154.82,27.5a4,4,0,0,0-3.53.74L131.51,44.07q-3.51-.14-7,0L104.7,28.24a4,4,0,0,0-3.53-.75A103.64,103.64,0,0,0,75.9,38a4,4,0,0,0-2,3l-2.8,25.19c-1.71,1.58-3.37,3.24-4.95,4.95L41,73.93a4,4,0,0,0-3,2A104,104,0,0,0,27.5,101.18a4,4,0,0,0,.74,3.53l15.83,19.78q-.14,3.51,0,7L28.24,151.3a4,4,0,0,0-.75,3.53A103.64,103.64,0,0,0,38,180.1a4,4,0,0,0,3,2l25.19,2.8c1.58,1.71,3.24,3.37,4.95,4.95l2.8,25.2a4,4,0,0,0,2,3,104,104,0,0,0,25.28,10.46,4,4,0,0,0,3.53-.74l19.78-15.83q3.51.13,7,0l19.79,15.83a4,4,0,0,0,2.5.88,4,4,0,0,0,1-.13A103.64,103.64,0,0,0,180.1,218a4,4,0,0,0,2-3l2.8-25.19c1.71-1.58,3.37-3.24,4.95-4.95l25.2-2.8a4,4,0,0,0,3-2,104,104,0,0,0,10.46-25.28,4,4,0,0,0-.74-3.53Zm.17,42.83-24.67,2.74a4,4,0,0,0-2.55,1.32,76.2,76.2,0,0,1-6.48,6.48,4,4,0,0,0-1.32,2.55l-2.74,24.66a95.45,95.45,0,0,1-19.64,8.15l-19.38-15.51a4,4,0,0,0-2.5-.87h-.24a73.67,73.67,0,0,1-9.16,0,4,4,0,0,0-2.74.87l-19.37,15.5a95.33,95.33,0,0,1-19.65-8.13l-2.74-24.67a4,4,0,0,0-1.32-2.55,76.2,76.2,0,0,1-6.48-6.48,4,4,0,0,0-2.55-1.32l-24.66-2.74a95.45,95.45,0,0,1-8.15-19.64l15.51-19.38a4,4,0,0,0,.87-2.74,77.76,77.76,0,0,1,0-9.16,4,4,0,0,0-.87-2.74l-15.5-19.37A95.33,95.33,0,0,1,43.9,81.66l24.67-2.74a4,4,0,0,0,2.55-1.32,76.2,76.2,0,0,1,6.48-6.48,4,4,0,0,0,1.32-2.55l2.74-24.66a95.45,95.45,0,0,1,19.64-8.15l19.38,15.51a4,4,0,0,0,2.74.87,73.67,73.67,0,0,1,9.16,0,4,4,0,0,0,2.74-.87l19.37-15.5a95.33,95.33,0,0,1,19.65,8.13l2.74,24.67a4,4,0,0,0,1.32,2.55,76.2,76.2,0,0,1,6.48,6.48,4,4,0,0,0,2.55,1.32l24.66,2.74a95.45,95.45,0,0,1,8.15,19.64l-15.51,19.38a4,4,0,0,0-.87,2.74,77.76,77.76,0,0,1,0,9.16,4,4,0,0,0,.87,2.74l15.5,19.37A95.33,95.33,0,0,1,212.1,174.34Z"}))]]),ul=M.forwardRef((a,b)=>M.createElement(P,{ref:b,...a,weights:uk}));ul.displayName="GearIcon";let um=new Map([["bold",M.createElement(M.Fragment,null,M.createElement("path",{d:"M204,136a12,12,0,0,1-12,12H64a12,12,0,0,1,0-24H192A12,12,0,0,1,204,136Zm28-60H24a12,12,0,0,0,0,24H232a12,12,0,0,0,0-24Zm-80,96H104a12,12,0,0,0,0,24h48a12,12,0,0,0,0-24Z"}))],["duotone",M.createElement(M.Fragment,null,M.createElement("path",{d:"M232,56V200a16,16,0,0,1-16,16H40a16,16,0,0,1-16-16V56A16,16,0,0,1,40,40H216A16,16,0,0,1,232,56Z",opacity:"0.2"}),M.createElement("path",{d:"M200,136a8,8,0,0,1-8,8H64a8,8,0,0,1,0-16H192A8,8,0,0,1,200,136Zm32-56H24a8,8,0,0,0,0,16H232a8,8,0,0,0,0-16Zm-80,96H104a8,8,0,0,0,0,16h48a8,8,0,0,0,0-16Z"}))],["fill",M.createElement(M.Fragment,null,M.createElement("path",{d:"M216,40H40A16,16,0,0,0,24,56V200a16,16,0,0,0,16,16H216a16,16,0,0,0,16-16V56A16,16,0,0,0,216,40ZM144,176H112a8,8,0,0,1,0-16h32a8,8,0,0,1,0,16Zm32-40H80a8,8,0,0,1,0-16h96a8,8,0,0,1,0,16Zm32-40H48a8,8,0,0,1,0-16H208a8,8,0,0,1,0,16Z"}))],["light",M.createElement(M.Fragment,null,M.createElement("path",{d:"M198,136a6,6,0,0,1-6,6H64a6,6,0,0,1,0-12H192A6,6,0,0,1,198,136Zm34-54H24a6,6,0,0,0,0,12H232a6,6,0,0,0,0-12Zm-80,96H104a6,6,0,0,0,0,12h48a6,6,0,0,0,0-12Z"}))],["regular",M.createElement(M.Fragment,null,M.createElement("path",{d:"M200,136a8,8,0,0,1-8,8H64a8,8,0,0,1,0-16H192A8,8,0,0,1,200,136Zm32-56H24a8,8,0,0,0,0,16H232a8,8,0,0,0,0-16Zm-80,96H104a8,8,0,0,0,0,16h48a8,8,0,0,0,0-16Z"}))],["thin",M.createElement(M.Fragment,null,M.createElement("path",{d:"M196,136a4,4,0,0,1-4,4H64a4,4,0,0,1,0-8H192A4,4,0,0,1,196,136Zm36-52H24a4,4,0,0,0,0,8H232a4,4,0,0,0,0-8Zm-80,96H104a4,4,0,0,0,0,8h48a4,4,0,0,0,0-8Z"}))]]),un=M.forwardRef((a,b)=>M.createElement(P,{ref:b,...a,weights:um}));un.displayName="FunnelSimpleIcon";let uo=new Map([["bold",M.createElement(M.Fragment,null,M.createElement("path",{d:"M234.49,111.07,90.41,22.94A20,20,0,0,0,60,39.87V216.13a20,20,0,0,0,30.41,16.93l144.08-88.13a19.82,19.82,0,0,0,0-33.86ZM84,208.85V47.15L216.16,128Z"}))],["duotone",M.createElement(M.Fragment,null,M.createElement("path",{d:"M228.23,134.69,84.15,222.81A8,8,0,0,1,72,216.12V39.88a8,8,0,0,1,12.15-6.69l144.08,88.12A7.82,7.82,0,0,1,228.23,134.69Z",opacity:"0.2"}),M.createElement("path",{d:"M232.4,114.49,88.32,26.35a16,16,0,0,0-16.2-.3A15.86,15.86,0,0,0,64,39.87V216.13A15.94,15.94,0,0,0,80,232a16.07,16.07,0,0,0,8.36-2.35L232.4,141.51a15.81,15.81,0,0,0,0-27ZM80,215.94V40l143.83,88Z"}))],["fill",M.createElement(M.Fragment,null,M.createElement("path",{d:"M240,128a15.74,15.74,0,0,1-7.6,13.51L88.32,229.65a16,16,0,0,1-16.2.3A15.86,15.86,0,0,1,64,216.13V39.87a15.86,15.86,0,0,1,8.12-13.82,16,16,0,0,1,16.2.3L232.4,114.49A15.74,15.74,0,0,1,240,128Z"}))],["light",M.createElement(M.Fragment,null,M.createElement("path",{d:"M231.36,116.19,87.28,28.06a14,14,0,0,0-14.18-.27A13.69,13.69,0,0,0,66,39.87V216.13a13.69,13.69,0,0,0,7.1,12.08,14,14,0,0,0,14.18-.27l144.08-88.13a13.82,13.82,0,0,0,0-23.62Zm-6.26,13.38L81,217.7a2,2,0,0,1-2.06,0,1.78,1.78,0,0,1-1-1.61V39.87a1.78,1.78,0,0,1,1-1.61A2.06,2.06,0,0,1,80,38a2,2,0,0,1,1,.31L225.1,126.43a1.82,1.82,0,0,1,0,3.14Z"}))],["regular",M.createElement(M.Fragment,null,M.createElement("path",{d:"M232.4,114.49,88.32,26.35a16,16,0,0,0-16.2-.3A15.86,15.86,0,0,0,64,39.87V216.13A15.94,15.94,0,0,0,80,232a16.07,16.07,0,0,0,8.36-2.35L232.4,141.51a15.81,15.81,0,0,0,0-27ZM80,215.94V40l143.83,88Z"}))],["thin",M.createElement(M.Fragment,null,M.createElement("path",{d:"M230.32,117.9,86.24,29.79a11.91,11.91,0,0,0-12.17-.23A11.71,11.71,0,0,0,68,39.89V216.11a11.71,11.71,0,0,0,6.07,10.33,11.91,11.91,0,0,0,12.17-.23L230.32,138.1a11.82,11.82,0,0,0,0-20.2Zm-4.18,13.37L82.06,219.39a4,4,0,0,1-4.07.07,3.77,3.77,0,0,1-2-3.35V39.89a3.77,3.77,0,0,1,2-3.35,4,4,0,0,1,4.07.07l144.08,88.12a3.8,3.8,0,0,1,0,6.54Z"}))]]),up=M.forwardRef((a,b)=>M.createElement(P,{ref:b,...a,weights:uo}));up.displayName="PlayIcon";let uq=["todo","inProgress","attention","done"];function ur(a){return"review"===a.status&&0===a.filesChanged}function us(){return{defaultAgentType:null,modeId:null,configValues:{},autoProcess:!0,maxConcurrent:1,mergeStrategy:"merge",deleteWorktreeDefault:!0,preflightCommand:null,initCommand:null,stagePrompts:null}}let ut=["todo","inProgress","attention","done"],uu={todo:{id:"todo",marker:"var(--text-dim)"},inProgress:{id:"inProgress",marker:"var(--accent)"},attention:{id:"attention",marker:"var(--status-warning)"},done:{id:"done",marker:"var(--status-success)"}},uv=new Map([["bold",M.createElement(M.Fragment,null,M.createElement("path",{d:"M236,128a108,108,0,0,1-216,0c0-42.52,24.73-81.34,63-98.9A12,12,0,1,1,93,50.91C63.24,64.57,44,94.83,44,128a84,84,0,0,0,168,0c0-33.17-19.24-63.43-49-77.09A12,12,0,1,1,173,29.1C211.27,46.66,236,85.48,236,128Z"}))],["duotone",M.createElement(M.Fragment,null,M.createElement("path",{d:"M224,128a96,96,0,1,1-96-96A96,96,0,0,1,224,128Z",opacity:"0.2"}),M.createElement("path",{d:"M232,128a104,104,0,0,1-208,0c0-41,23.81-78.36,60.66-95.27a8,8,0,0,1,6.68,14.54C60.15,61.59,40,93.27,40,128a88,88,0,0,0,176,0c0-34.73-20.15-66.41-51.34-80.73a8,8,0,0,1,6.68-14.54C208.19,49.64,232,87,232,128Z"}))],["fill",M.createElement(M.Fragment,null,M.createElement("path",{d:"M128,24A104,104,0,1,0,232,128,104.11,104.11,0,0,0,128,24Zm0,176A72,72,0,0,1,92,65.64a8,8,0,0,1,8,13.85,56,56,0,1,0,56,0,8,8,0,0,1,8-13.85A72,72,0,0,1,128,200Z"}))],["light",M.createElement(M.Fragment,null,M.createElement("path",{d:"M230,128a102,102,0,0,1-204,0c0-40.18,23.35-76.86,59.5-93.45a6,6,0,0,1,5,10.9C58.61,60.09,38,92.49,38,128a90,90,0,0,0,180,0c0-35.51-20.61-67.91-52.5-82.55a6,6,0,0,1,5-10.9C206.65,51.14,230,87.82,230,128Z"}))],["regular",M.createElement(M.Fragment,null,M.createElement("path",{d:"M232,128a104,104,0,0,1-208,0c0-41,23.81-78.36,60.66-95.27a8,8,0,0,1,6.68,14.54C60.15,61.59,40,93.27,40,128a88,88,0,0,0,176,0c0-34.73-20.15-66.41-51.34-80.73a8,8,0,0,1,6.68-14.54C208.19,49.64,232,87,232,128Z"}))],["thin",M.createElement(M.Fragment,null,M.createElement("path",{d:"M228,128a100,100,0,0,1-200,0c0-39.4,22.9-75.37,58.33-91.63a4,4,0,1,1,3.34,7.27C57.07,58.6,36,91.71,36,128a92,92,0,0,0,184,0c0-36.29-21.07-69.4-53.67-84.36a4,4,0,1,1,3.34-7.27C205.1,52.63,228,88.6,228,128Z"}))]]),uw=M.forwardRef((a,b)=>M.createElement(P,{ref:b,...a,weights:uv}));uw.displayName="CircleNotchIcon";let ux=new Map([["bold",M.createElement(M.Fragment,null,M.createElement("path",{d:"M128,20A108,108,0,1,0,236,128,108.12,108.12,0,0,0,128,20Zm84,108a83.6,83.6,0,0,1-16.75,50.28L77.72,60.75A84,84,0,0,1,212,128ZM44,128A83.6,83.6,0,0,1,60.75,77.72L178.28,195.25A84,84,0,0,1,44,128Z"}))],["duotone",M.createElement(M.Fragment,null,M.createElement("path",{d:"M224,128a96,96,0,1,1-96-96A96,96,0,0,1,224,128Z",opacity:"0.2"}),M.createElement("path",{d:"M128,24A104,104,0,1,0,232,128,104.11,104.11,0,0,0,128,24Zm88,104a87.56,87.56,0,0,1-20.41,56.28L71.72,60.4A88,88,0,0,1,216,128ZM40,128A87.56,87.56,0,0,1,60.41,71.72L184.28,195.6A88,88,0,0,1,40,128Z"}))],["fill",M.createElement(M.Fragment,null,M.createElement("path",{d:"M200,128a71.69,71.69,0,0,1-15.78,44.91L83.09,71.78A71.95,71.95,0,0,1,200,128ZM56,128a71.95,71.95,0,0,0,116.91,56.22L71.78,83.09A71.69,71.69,0,0,0,56,128Zm180,0A108,108,0,1,1,128,20,108.12,108.12,0,0,1,236,128Zm-20,0a88,88,0,1,0-88,88A88.1,88.1,0,0,0,216,128Z"}))],["light",M.createElement(M.Fragment,null,M.createElement("path",{d:"M128,26A102,102,0,1,0,230,128,102.12,102.12,0,0,0,128,26Zm90,102a89.6,89.6,0,0,1-22.29,59.22L68.78,60.29A89.95,89.95,0,0,1,218,128ZM38,128A89.6,89.6,0,0,1,60.29,68.78L187.22,195.71A89.95,89.95,0,0,1,38,128Z"}))],["regular",M.createElement(M.Fragment,null,M.createElement("path",{d:"M128,24A104,104,0,1,0,232,128,104.11,104.11,0,0,0,128,24Zm88,104a87.56,87.56,0,0,1-20.41,56.28L71.72,60.4A88,88,0,0,1,216,128ZM40,128A87.56,87.56,0,0,1,60.41,71.72L184.28,195.6A88,88,0,0,1,40,128Z"}))],["thin",M.createElement(M.Fragment,null,M.createElement("path",{d:"M128,28A100,100,0,1,0,228,128,100.11,100.11,0,0,0,128,28Zm92,100a91.67,91.67,0,0,1-24.21,62.13L65.87,60.21A92,92,0,0,1,220,128ZM36,128A91.67,91.67,0,0,1,60.21,65.87L190.13,195.79A92,92,0,0,1,36,128Z"}))]]),uy=M.forwardRef((a,b)=>M.createElement(P,{ref:b,...a,weights:ux}));uy.displayName="ProhibitIcon";let uz=new Map([["bold",M.createElement(M.Fragment,null,M.createElement("path",{d:"M208,108a36.05,36.05,0,0,0-33.38,22.54l-39-5.57a4,4,0,0,1-2.47-1.35L100.55,85.53A36,36,0,1,0,68,89.94v76.12a36,36,0,1,0,24,0V112.44l23,26.8a28,28,0,0,0,17.3,9.49l41.34,5.91A36,36,0,1,0,208,108ZM80,44A12,12,0,1,1,68,56,12,12,0,0,1,80,44Zm0,168a12,12,0,1,1,12-12A12,12,0,0,1,80,212Zm128-56a12,12,0,1,1,12-12A12,12,0,0,1,208,156Z"}))],["duotone",M.createElement(M.Fragment,null,M.createElement("path",{d:"M104,56A24,24,0,1,1,80,32,24,24,0,0,1,104,56Z",opacity:"0.2"}),M.createElement("path",{d:"M208,112a32.05,32.05,0,0,0-30.69,23l-42.21-6a8,8,0,0,1-4.95-2.71L94.43,84.55A32,32,0,1,0,72,87v82a32,32,0,1,0,16,0V101.63l30,35a24,24,0,0,0,14.83,8.14l44,6.28A32,32,0,1,0,208,112ZM64,56A16,16,0,1,1,80,72,16,16,0,0,1,64,56ZM96,200a16,16,0,1,1-16-16A16,16,0,0,1,96,200Zm112-40a16,16,0,1,1,16-16A16,16,0,0,1,208,160Z"}))],["fill",M.createElement(M.Fragment,null,M.createElement("path",{d:"M208,112a32.05,32.05,0,0,0-30.69,23l-42.21-6a8,8,0,0,1-4.95-2.71L94.43,84.55A32,32,0,1,0,72,87v82a32,32,0,1,0,16,0V101.63l30,35a24,24,0,0,0,14.83,8.14l44,6.28A32,32,0,1,0,208,112ZM96,200a16,16,0,1,1-16-16A16,16,0,0,1,96,200Zm112-40a16,16,0,1,1,16-16A16,16,0,0,1,208,160Z"}))],["light",M.createElement(M.Fragment,null,M.createElement("path",{d:"M208,114a30,30,0,0,0-29.21,23.19l-44-6.28a10,10,0,0,1-6.18-3.39L91.18,83.83A30,30,0,1,0,74,85.4v85.2a30,30,0,1,0,12,0V96.22l33.52,39.11a22,22,0,0,0,13.6,7.46l45.35,6.48A30,30,0,1,0,208,114ZM62,56A18,18,0,1,1,80,74,18,18,0,0,1,62,56ZM98,200a18,18,0,1,1-18-18A18,18,0,0,1,98,200Zm110-38a18,18,0,1,1,18-18A18,18,0,0,1,208,162Z"}))],["regular",M.createElement(M.Fragment,null,M.createElement("path",{d:"M208,112a32.05,32.05,0,0,0-30.69,23l-42.21-6a8,8,0,0,1-4.95-2.71L94.43,84.55A32,32,0,1,0,72,87v82a32,32,0,1,0,16,0V101.63l30,35a24,24,0,0,0,14.83,8.14l44,6.28A32,32,0,1,0,208,112ZM64,56A16,16,0,1,1,80,72,16,16,0,0,1,64,56ZM96,200a16,16,0,1,1-16-16A16,16,0,0,1,96,200Zm112-40a16,16,0,1,1,16-16A16,16,0,0,1,208,160Z"}))],["thin",M.createElement(M.Fragment,null,M.createElement("path",{d:"M208,116a28,28,0,0,0-27.62,23.44l-45.85-6.55a12,12,0,0,1-7.41-4.07L87.75,82.9A28,28,0,1,0,76,83.71v88.58a28,28,0,1,0,8,0V90.81L121,134a20,20,0,0,0,12.36,6.78l46.83,6.69A28,28,0,1,0,208,116ZM60,56A20,20,0,1,1,80,76,20,20,0,0,1,60,56Zm40,144a20,20,0,1,1-20-20A20,20,0,0,1,100,200Zm108-36a20,20,0,1,1,20-20A20,20,0,0,1,208,164Z"}))]]),uA=M.forwardRef((a,b)=>M.createElement(P,{ref:b,...a,weights:uz}));function uB({task:a}){let{t:b}=(0,bb.s)(),c=b("failed"===a.status&&"interrupted"===a.failureReason?"tasks.statusInterrupted":function(a){switch(a){case"todo":return"tasks.statusTodo";case"queued":return"tasks.statusQueued";case"preparing":return"tasks.statusPreparing";case"running":return"tasks.statusRunning";case"awaiting_input":return"tasks.statusAwaitingInput";case"review":return"tasks.statusReview";case"merging":return"tasks.statusMerging";case"done":return"tasks.statusDone";case"failed":return"tasks.statusFailed";case"canceled":return"tasks.statusCanceled"}}(a.status)),d={display:"inline-flex",alignItems:"center",gap:4,borderRadius:999,padding:"2px 8px",fontSize:10,fontWeight:600,lineHeight:1.4,flexShrink:0,whiteSpace:"nowrap"};switch(a.status){case"queued":case"preparing":case"running":case"merging":return(0,L.jsxs)("span",{style:{...d,color:"var(--accent)"},children:[(0,L.jsx)(uw,{size:11,className:"pi-spin",style:{animation:"pi-spin 1s linear infinite"},"aria-hidden":"true"}),c]});case"awaiting_input":case"review":return(0,L.jsx)("span",{style:{...d,border:"1px solid rgba(245,158,11,0.45)",background:"rgba(245,158,11,0.08)",color:"var(--status-warning)"},children:c});case"done":return(0,L.jsxs)("span",{style:{...d,background:"rgba(16,185,129,0.12)",color:"#059669"},children:[(0,L.jsx)(ac,{size:10,weight:"bold","aria-hidden":"true"}),c]});case"failed":return(0,L.jsx)("span",{style:{...d,background:"rgba(239,68,68,0.12)",color:"var(--status-error)"},children:c});default:return(0,L.jsx)("span",{style:{...d,background:"var(--bg-hover)",color:"var(--text-muted)"},children:c})}}function uC({task:a}){let b=a.preflight;if(!b||"review"!==a.status)return null;let c="passed"===b.status?{background:"rgba(16,185,129,0.12)",color:"#059669"}:"failed"===b.status?{background:"rgba(239,68,68,0.12)",color:"var(--status-error)"}:{background:"var(--bg-hover)",color:"var(--text-muted)"};return(0,L.jsxs)("span",{style:{display:"inline-flex",alignItems:"center",gap:4,borderRadius:999,padding:"1px 6px",fontSize:10,fontWeight:500,lineHeight:1.5,maxWidth:"100%",...c},title:b.command,children:["running"===b.status?(0,L.jsx)(uw,{size:10,style:{animation:"pi-spin 1s linear infinite"},"aria-hidden":"true"}):"passed"===b.status?(0,L.jsx)(bm,{size:10,"aria-hidden":"true"}):(0,L.jsx)(ei,{size:10,"aria-hidden":"true"}),(0,L.jsx)("span",{style:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:b.command})]})}function uD({task:a,folderName:b,now:c,onOpen:d,onStart:e,onCancel:f,onRetry:g,onRequeue:h,onViewSession:i,onMerge:j,onArchive:k,onEdit:l}){let{t:m}=(0,bb.s)(),n=null!=a.archivedAt,o="running"===a.status||"awaiting_input"===a.status||"merging"===a.status,p=null!=a.filesChanged&&a.filesChanged>0?(0,L.jsxs)("span",{style:{display:"inline-flex",alignItems:"center",gap:3,fontFamily:"var(--font-mono)",fontSize:10},children:[(0,L.jsxs)("span",{style:{color:"#059669"},children:["+",a.additions??0]}),(0,L.jsxs)("span",{style:{color:"var(--status-error)"},children:["-",a.deletions??0]})]}):null,q=function(a,b){if(!a)return"";let c=new Date(a).getTime();if(Number.isNaN(c))return"";let d=Math.floor(Math.max(0,b-c)/6e4);if(d<1)return"now";if(d<60)return`${d}m`;let e=Math.floor(d/60);if(e<24)return`${e}h`;let f=Math.floor(e/24);return`${f}d`}(a.finishedAt??a.settledAt??a.startedAt??a.createdAt,c),{primary:r,more:s}=(()=>{let b=[],c=null;if(n)return{primary:c={icon:aC,label:m("tasks.actionUnarchive"),onClick:k},more:b};switch(a.status){case"todo":c={icon:up,label:m("tasks.actionStart"),onClick:e},b.push({icon:rK,label:m("tasks.actionEdit"),onClick:l});break;case"queued":case"preparing":case"running":case"awaiting_input":c={icon:uy,label:m("tasks.actionCancel"),onClick:f};break;case"review":c=ur(a)?{icon:ac,label:m("tasks.actionComplete"),onClick:j}:{icon:uA,label:m("tasks.actionMerge"),onClick:j};break;case"merging":break;case"failed":c={icon:aw,label:m("tasks.actionRetry"),onClick:g},b.push({icon:rK,label:m("tasks.actionEdit"),onClick:l}),b.push({icon:aC,label:m("tasks.actionArchive"),onClick:k});break;case"done":c={icon:aC,label:m("tasks.actionArchive"),onClick:k};break;case"canceled":c={icon:qZ,label:m("tasks.actionRequeue"),onClick:h},b.push({icon:aC,label:m("tasks.actionArchive"),onClick:k})}return{primary:c,more:b}})(),t=[...s];return null!=a.conversationId&&t.push({icon:qX,label:m("tasks.actionViewSession"),onClick:i}),(0,L.jsxs)("div",{role:"button",tabIndex:0,onClick:d,onKeyDown:a=>{("Enter"===a.key||" "===a.key)&&(a.preventDefault(),d())},style:{display:"flex",flexDirection:"column",cursor:"pointer",borderRadius:12,border:"1px solid color-mix(in srgb, var(--border) 85%, transparent)",background:"var(--bg-panel)",padding:12,textAlign:"left",transition:"border-color 0.12s",opacity:n?.6:1,boxShadow:"0 1px 2px rgba(0,0,0,0.04)"},className:"task-card-hover",onMouseEnter:a=>{a.currentTarget.style.borderColor="var(--accent)"},onMouseLeave:a=>{a.currentTarget.style.borderColor="color-mix(in srgb, var(--border) 85%, transparent)"},children:[(0,L.jsxs)("div",{style:{display:"flex",alignItems:"flex-start",justifyContent:"space-between",gap:8},children:[(0,L.jsx)("span",{style:{minWidth:0,overflowWrap:"break-word",fontSize:13,fontWeight:500,lineHeight:1.4},children:a.title}),(0,L.jsx)(uB,{task:a})]}),(0,L.jsxs)("div",{style:{display:"flex",flexWrap:"wrap",alignItems:"center",gap:"2px 6px",marginTop:6,fontSize:11,color:"var(--text-muted)"},children:[b?(0,L.jsx)("span",{style:{maxWidth:160,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:b}):null,b&&a.workBranch?(0,L.jsx)("span",{style:{opacity:.5},children:"/"}):null,a.workBranch?(0,L.jsx)("span",{style:{fontFamily:"var(--font-mono)",fontSize:10,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",maxWidth:180},children:a.workBranch}):null,(b||a.workBranch)&&(p||q)?(0,L.jsx)("span",{style:{opacity:.5},children:"\xb7"}):null,p,p&&q?(0,L.jsx)("span",{style:{opacity:.5},children:"\xb7"}):null,q?(0,L.jsx)("span",{style:{flexShrink:0},children:q}):null,(0,L.jsx)(uC,{task:a})]}),a.lastError&&("failed"===a.status||"review"===a.status)?(0,L.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:6,marginTop:8,borderRadius:8,background:"rgba(239,68,68,0.08)",padding:"6px 8px",fontSize:11,color:"var(--status-error)"},children:[(0,L.jsx)(qw,{size:13,style:{flexShrink:0},"aria-hidden":"true"}),(0,L.jsx)("span",{style:{minWidth:0,flex:1,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a.lastError}),(0,L.jsx)("button",{type:"button",style:{flexShrink:0,fontWeight:600,background:"none",border:"none",cursor:"pointer",color:"inherit",fontSize:11,textDecoration:"underline"},onClick:a=>{a.stopPropagation(),d()},children:m("tasks.errorView")})]}):null,"review"===a.status&&a.resultSummary?(0,L.jsx)("p",{style:{margin:"6px 0 0",display:"-webkit-box",WebkitLineClamp:2,WebkitBoxOrient:"vertical",overflow:"hidden",fontSize:11,lineHeight:1.5,color:"var(--text-muted)"},children:a.resultSummary}):null,o&&a.latestProgress?(0,L.jsx)("p",{style:{margin:"6px 0 0",display:"-webkit-box",WebkitLineClamp:2,WebkitBoxOrient:"vertical",overflow:"hidden",fontSize:11,lineHeight:1.5,color:"var(--text-muted)",fontStyle:"italic"},children:a.latestProgress}):null,r||t.length>0?(0,L.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:6,marginTop:12,paddingTop:12,borderTop:"1px solid var(--border)"},children:[r?(0,L.jsxs)("button",{type:"button",onClick:a=>{a.stopPropagation(),r.onClick()},style:{display:"inline-flex",alignItems:"center",gap:5,padding:"4px 10px",borderRadius:7,background:"var(--accent)",color:"var(--accent-fg)",border:"none",cursor:"pointer",fontSize:11,fontWeight:600},children:[(0,L.jsx)(r.icon,{size:12,weight:"bold","aria-hidden":"true"}),r.label]}):null,(0,L.jsx)("div",{style:{flex:1}}),t.map(a=>(0,L.jsx)("button",{type:"button",title:a.label,"aria-label":a.label,onClick:b=>{b.stopPropagation(),a.onClick()},style:{display:"flex",alignItems:"center",justifyContent:"center",width:26,height:26,padding:0,borderRadius:999,background:"none",border:"1px solid var(--border)",color:"var(--text-muted)",cursor:"pointer",opacity:0,transition:"opacity 0.12s, background 0.12s, color 0.12s"},className:"task-card-secondary",onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-hover)",a.currentTarget.style.color="var(--text)"},onMouseLeave:a=>{a.currentTarget.style.background="none",a.currentTarget.style.color="var(--text-muted)"},children:(0,L.jsx)(a.icon,{size:13,"aria-hidden":"true"})},a.label))]}):null]})}function uE({open:a,onOpenChange:b,task:c}){let{t:d}=(0,bb.s)(),{refetch:e}=uh(),[f,g]=(0,M.useState)(""),[h,i]=(0,M.useState)(!1);if(!a||!c)return null;let j=async()=>{if(!h){i(!0);try{await (0,se.oQ)(c.id,c.projectRoot,"cancel",{reason:f.trim()||null}),b(!1),e()}catch(a){console.error("cancel failed",a)}finally{i(!1)}}};return(0,L.jsx)("div",{style:{position:"fixed",inset:0,zIndex:950,display:"flex",alignItems:"center",justifyContent:"center",background:"rgba(0,0,0,0.45)"},children:(0,L.jsxs)("div",{style:{width:"min(440px, calc(100vw - 48px))",background:"var(--bg-panel)",border:"1px solid var(--border)",borderRadius:14,boxShadow:"0 16px 48px rgba(0,0,0,0.3)"},children:[(0,L.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"14px 16px 0"},children:[(0,L.jsx)("h3",{style:{fontSize:15,fontWeight:600,margin:0},children:d("tasks.cancelTitle")}),(0,L.jsx)("button",{type:"button",onClick:()=>b(!1),"aria-label":d("i18n.close"),style:{background:"none",border:"none",cursor:"pointer",color:"var(--text-muted)",padding:4,display:"flex"},children:(0,L.jsx)($,{size:16,"aria-hidden":"true"})})]}),(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:12,padding:"14px 16px 16px"},children:[(0,L.jsx)("p",{style:{margin:0,fontSize:12,lineHeight:1.5,color:"var(--text-muted)"},children:d("tasks.cancelDescription")}),(0,L.jsxs)("label",{style:{display:"flex",flexDirection:"column",gap:5},children:[(0,L.jsx)("span",{style:{fontSize:12,color:"var(--text-muted)"},children:d("tasks.cancelReasonLabel")}),(0,L.jsx)("textarea",{value:f,onChange:a=>g(a.target.value),placeholder:d("tasks.cancelReasonPlaceholder"),rows:3,autoFocus:!0,style:{width:"100%",background:"var(--bg)",border:"1px solid var(--border)",borderRadius:8,padding:"8px 10px",color:"var(--text)",fontSize:13,outline:"none",fontFamily:"inherit",resize:"vertical"}})]}),(0,L.jsxs)("div",{style:{display:"flex",justifyContent:"flex-end",gap:8,marginTop:4},children:[(0,L.jsx)("button",{type:"button",onClick:()=>b(!1),disabled:h,style:{padding:"8px 14px",borderRadius:8,background:"none",border:"1px solid var(--border)",color:"var(--text)",fontSize:12,cursor:"pointer"},children:d("tasks.cancelKeep")}),(0,L.jsx)("button",{type:"button",onClick:()=>void j(),disabled:h,style:{padding:"8px 16px",borderRadius:8,background:"var(--accent)",color:"var(--accent-fg)",border:"none",fontSize:12,fontWeight:600,cursor:"pointer"},children:d("tasks.cancelSubmit")})]})]})]})})}function uF({open:a,onOpenChange:b,task:c}){let{t:d}=(0,bb.s)(),{refetch:e}=uh(),[f,g]=(0,M.useState)(!0),[h,i]=(0,M.useState)(!1),j=c?.worktreePath!=null;if(!a||!c)return null;let k=async()=>{if(!h){i(!0);try{await (0,se.ZX)(c.id,c.projectRoot,j&&f),b(!1),e()}catch(a){console.error("complete failed",a)}finally{i(!1)}}};return(0,L.jsx)("div",{style:{position:"fixed",inset:0,zIndex:950,display:"flex",alignItems:"center",justifyContent:"center",background:"rgba(0,0,0,0.45)"},children:(0,L.jsxs)("div",{style:{width:"min(440px, calc(100vw - 48px))",background:"var(--bg-panel)",border:"1px solid var(--border)",borderRadius:14,boxShadow:"0 16px 48px rgba(0,0,0,0.3)"},children:[(0,L.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"14px 16px 0"},children:[(0,L.jsx)("h3",{style:{fontSize:15,fontWeight:600,margin:0},children:d("tasks.completeTitle")}),(0,L.jsx)("button",{type:"button",onClick:()=>b(!1),"aria-label":d("i18n.close"),style:{background:"none",border:"none",cursor:"pointer",color:"var(--text-muted)",padding:4,display:"flex"},children:(0,L.jsx)($,{size:16,"aria-hidden":"true"})})]}),(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:12,padding:"14px 16px 16px"},children:[(0,L.jsx)("p",{style:{margin:0,fontSize:12,lineHeight:1.5,color:"var(--text-muted)"},children:d("tasks.completeDescription")}),j?(0,L.jsxs)("label",{style:{display:"flex",alignItems:"center",gap:8,fontSize:13,cursor:"pointer"},children:[(0,L.jsx)("input",{type:"checkbox",checked:f,onChange:a=>g(a.target.checked),style:{accentColor:"var(--accent)"}}),d("tasks.completeDeleteWorktree")]}):null,(0,L.jsxs)("div",{style:{display:"flex",justifyContent:"flex-end",gap:8,marginTop:4},children:[(0,L.jsx)("button",{type:"button",onClick:()=>b(!1),disabled:h,style:{padding:"8px 14px",borderRadius:8,background:"none",border:"1px solid var(--border)",color:"var(--text)",fontSize:12,cursor:"pointer"},children:d("i18n.cancel")}),(0,L.jsx)("button",{type:"button",onClick:()=>void k(),disabled:h,style:{padding:"8px 16px",borderRadius:8,background:"var(--accent)",color:"var(--accent-fg)",border:"none",fontSize:12,fontWeight:600,cursor:"pointer"},children:d("tasks.completeSubmit")})]})]})]})})}uA.displayName="GitMergeIcon";let uG=new Map([["bold",M.createElement(M.Fragment,null,M.createElement("path",{d:"M244,116H186.79a60,60,0,0,0-117.58,0H12a12,12,0,0,0,0,24H69.21a60,60,0,0,0,117.58,0H244a12,12,0,0,0,0-24ZM128,164a36,36,0,1,1,36-36A36,36,0,0,1,128,164Z"}))],["duotone",M.createElement(M.Fragment,null,M.createElement("path",{d:"M176,128a48,48,0,1,1-48-48A48,48,0,0,1,176,128Z",opacity:"0.2"}),M.createElement("path",{d:"M248,120H183.42a56,56,0,0,0-110.84,0H8a8,8,0,0,0,0,16H72.58a56,56,0,0,0,110.84,0H248a8,8,0,0,0,0-16ZM128,168a40,40,0,1,1,40-40A40,40,0,0,1,128,168Z"}))],["fill",M.createElement(M.Fragment,null,M.createElement("path",{d:"M256,128a8,8,0,0,1-8,8H183.42a56,56,0,0,1-110.84,0H8a8,8,0,0,1,0-16H72.58a56,56,0,0,1,110.84,0H248A8,8,0,0,1,256,128Z"}))],["light",M.createElement(M.Fragment,null,M.createElement("path",{d:"M248,122H181.66a54,54,0,0,0-107.32,0H8a6,6,0,0,0,0,12H74.34a54,54,0,0,0,107.32,0H248a6,6,0,0,0,0-12ZM128,170a42,42,0,1,1,42-42A42,42,0,0,1,128,170Z"}))],["regular",M.createElement(M.Fragment,null,M.createElement("path",{d:"M248,120H183.42a56,56,0,0,0-110.84,0H8a8,8,0,0,0,0,16H72.58a56,56,0,0,0,110.84,0H248a8,8,0,0,0,0-16ZM128,168a40,40,0,1,1,40-40A40,40,0,0,1,128,168Z"}))],["thin",M.createElement(M.Fragment,null,M.createElement("path",{d:"M248,124H179.83a52,52,0,0,0-103.66,0H8a4,4,0,0,0,0,8H76.17a52,52,0,0,0,103.66,0H248a4,4,0,0,0,0-8ZM128,172a44,44,0,1,1,44-44A44.05,44.05,0,0,1,128,172Z"}))]]),uH=M.forwardRef((a,b)=>M.createElement(P,{ref:b,...a,weights:uG}));uH.displayName="GitCommitIcon";let uI=new Map([["bold",M.createElement(M.Fragment,null,M.createElement("path",{d:"M112,148a12,12,0,0,0-12,12v19L69.17,148.2A4,4,0,0,1,68,145.37V97.94a36,36,0,1,0-24,0v47.43a27.81,27.81,0,0,0,8.2,19.8L83,196H64a12,12,0,0,0,0,24h48a12,12,0,0,0,12-12V160A12,12,0,0,0,112,148ZM56,52A12,12,0,1,1,44,64,12,12,0,0,1,56,52ZM212,158.06V110.63a27.81,27.81,0,0,0-8.2-19.8L173,60h19a12,12,0,0,0,0-24H144a12,12,0,0,0-12,12V96a12,12,0,0,0,24,0V77l30.83,30.83a4,4,0,0,1,1.17,2.83v47.43a36,36,0,1,0,24,0ZM200,204a12,12,0,1,1,12-12A12,12,0,0,1,200,204Z"}))],["duotone",M.createElement(M.Fragment,null,M.createElement("path",{d:"M80,64A24,24,0,1,1,56,40,24,24,0,0,1,80,64ZM200,168a24,24,0,1,0,24,24A24,24,0,0,0,200,168Z",opacity:"0.2"}),M.createElement("path",{d:"M112,152a8,8,0,0,0-8,8v28.69L66.34,151A8,8,0,0,1,64,145.37V95a32,32,0,1,0-16,0v50.38a23.85,23.85,0,0,0,7,17L92.69,200H64a8,8,0,0,0,0,16h48a8,8,0,0,0,8-8V160A8,8,0,0,0,112,152ZM40,64A16,16,0,1,1,56,80,16,16,0,0,1,40,64Zm168,97V110.63a23.85,23.85,0,0,0-7-17L163.31,56H192a8,8,0,0,0,0-16H144a8,8,0,0,0-8,8V96a8,8,0,0,0,16,0V67.31L189.66,105a8,8,0,0,1,2.34,5.66V161a32,32,0,1,0,16,0Zm-8,47a16,16,0,1,1,16-16A16,16,0,0,1,200,208Z"}))],["fill",M.createElement(M.Fragment,null,M.createElement("path",{d:"M118.18,213.08c-.11.14-.24.27-.36.4l-.16.18-.17.15a4.83,4.83,0,0,1-.42.37,3.92,3.92,0,0,1-.32.25l-.3.22-.38.23a2.91,2.91,0,0,1-.3.17l-.37.19-.34.15-.36.13a2.84,2.84,0,0,1-.38.13l-.36.1c-.14,0-.26.07-.4.09l-.42.07-.35.05a7,7,0,0,1-.79,0H64a8,8,0,0,1,0-16H92.69L55,162.34a23.85,23.85,0,0,1-7-17V95a32,32,0,1,1,16,0v50.38A8,8,0,0,0,66.34,151L104,188.69V160a8,8,0,0,1,16,0v48a7,7,0,0,1,0,.8c0,.11,0,.21,0,.32s0,.3-.07.46a2.83,2.83,0,0,1-.09.37c0,.13-.06.26-.1.39s-.08.23-.12.35l-.14.39-.15.31c-.06.13-.12.27-.19.4s-.11.18-.16.28l-.24.39-.21.28ZM208,161V110.63a23.85,23.85,0,0,0-7-17L163.31,56H192a8,8,0,0,0,0-16H143.82l-.6,0c-.14,0-.28,0-.41.06l-.37,0-.43.11-.33.08-.4.14-.34.13-.35.16-.36.18a3.14,3.14,0,0,0-.31.18c-.12.07-.25.14-.36.22a3.55,3.55,0,0,0-.31.23,3.81,3.81,0,0,0-.32.24c-.15.12-.28.24-.42.37l-.17.15-.16.18c-.12.13-.25.26-.36.4l-.26.35-.21.28-.24.39c-.05.1-.11.19-.16.28s-.13.27-.19.4l-.15.31-.14.39c0,.12-.09.23-.12.35s-.07.26-.1.39a2.83,2.83,0,0,0-.09.37c0,.16,0,.31-.07.46s0,.21-.05.32a7,7,0,0,0,0,.8V96a8,8,0,0,0,16,0V67.31L189.66,105a8,8,0,0,1,2.34,5.66V161a32,32,0,1,0,16,0Z"}))],["light",M.createElement(M.Fragment,null,M.createElement("path",{d:"M112,154a6,6,0,0,0-6,6v33.52L64.93,152.44A9.93,9.93,0,0,1,62,145.37v-52a30,30,0,1,0-12,0v52a21.88,21.88,0,0,0,6.44,15.56L97.52,202H64a6,6,0,0,0,0,12h48a6,6,0,0,0,6-6V160A6,6,0,0,0,112,154ZM38,64A18,18,0,1,1,56,82,18,18,0,0,1,38,64Zm168,98.6v-52a21.88,21.88,0,0,0-6.44-15.56L158.48,54H192a6,6,0,0,0,0-12H144a6,6,0,0,0-6,6V96a6,6,0,0,0,12,0V62.48l41.07,41.08a9.93,9.93,0,0,1,2.93,7.07v52a30,30,0,1,0,12,0ZM200,210a18,18,0,1,1,18-18A18,18,0,0,1,200,210Z"}))],["regular",M.createElement(M.Fragment,null,M.createElement("path",{d:"M112,152a8,8,0,0,0-8,8v28.69L66.34,151A8,8,0,0,1,64,145.37V95a32,32,0,1,0-16,0v50.38a23.85,23.85,0,0,0,7,17L92.69,200H64a8,8,0,0,0,0,16h48a8,8,0,0,0,8-8V160A8,8,0,0,0,112,152ZM40,64A16,16,0,1,1,56,80,16,16,0,0,1,40,64Zm168,97V110.63a23.85,23.85,0,0,0-7-17L163.31,56H192a8,8,0,0,0,0-16H144a8,8,0,0,0-8,8V96a8,8,0,0,0,16,0V67.31L189.66,105a8,8,0,0,1,2.34,5.66V161a32,32,0,1,0,16,0Zm-8,47a16,16,0,1,1,16-16A16,16,0,0,1,200,208Z"}))],["thin",M.createElement(M.Fragment,null,M.createElement("path",{d:"M112,156a4,4,0,0,0-4,4v38.34L63.51,153.86A12,12,0,0,1,60,145.37V91.71a28,28,0,1,0-8,0v53.66a19.85,19.85,0,0,0,5.86,14.14L102.34,204H64a4,4,0,0,0,0,8h48a4,4,0,0,0,4-4V160A4,4,0,0,0,112,156ZM36,64A20,20,0,1,1,56,84,20,20,0,0,1,36,64ZM204,164.29V110.63a19.85,19.85,0,0,0-5.86-14.14L153.66,52H192a4,4,0,0,0,0-8H144a4,4,0,0,0-4,4V96a4,4,0,0,0,8,0V57.66l44.49,44.48a12,12,0,0,1,3.51,8.49v53.66a28,28,0,1,0,8,0ZM200,212a20,20,0,1,1,20-20A20,20,0,0,1,200,212Z"}))]]),uJ=M.forwardRef((a,b)=>M.createElement(P,{ref:b,...a,weights:uI}));function uK({open:a,onOpenChange:b,task:c,onViewSession:d,onMerge:e,onEdit:f,onCancel:g,onRetry:h,onRequeue:i,onComplete:j}){let{t:k}=(0,bb.s)(),{refetch:l}=uh(),[m,n]=(0,M.useState)([]),[o,p]=(0,M.useState)([]),[q,r]=(0,M.useState)(null),[s,t]=(0,M.useState)(null),[u,v]=(0,M.useState)(!1),[w,x]=(0,M.useState)(!1),[y,z]=(0,M.useState)(""),[A,B]=(0,M.useState)(!1),[C,D]=(0,M.useState)(!1),[E,F]=(0,M.useState)(!1),G=c?.id??null,H=c?.projectRoot??null;(0,M.useCallback)(async()=>{if(null==G||null==H)return;let[a,b]=await Promise.all([(0,se.HB)(H,G).catch(()=>[]),c?.worktreePath?(0,se.JH)(H,G).then(a=>a.files).catch(()=>[]):Promise.resolve([])]);n(a),p(b)},[G,H,c?.worktreePath]);let I=(0,M.useCallback)(async a=>{F(!0);try{await a()}catch(a){console.error("detail action failed",a)}finally{F(!1),l()}},[l]),J=(0,M.useCallback)(async a=>{if(null!=H&&null!=G){v(!0);try{let b=await (0,se.h)(H,G,a);t(b.supported&&b.patch?b.patch:null)}catch{t(null)}finally{v(!1)}}},[H,G]),K=async()=>{null!=c&&null!=H&&(await I(()=>(0,se.bH)(c.id,H,C)),b(!1))},N=async()=>{null!=c&&null!=H&&y.trim()&&(await I(()=>(0,se.in)(c.id,H,y.trim())),x(!1),z(""))};if(!a||null==c||null==H)return null;let O=[];if(null==c.archivedAt)switch(c.status){case"todo":O.push({label:k("tasks.actionStart"),icon:up,onClick:()=>void I(()=>(0,se.oQ)(c.id,H,"start")),filled:!0}),O.push({label:k("tasks.actionEdit"),icon:rK,onClick:()=>f(c)});break;case"queued":case"preparing":case"running":case"awaiting_input":O.push({label:k("tasks.actionCancel"),icon:uy,onClick:()=>g(c),danger:!0});break;case"review":O.push({label:ur(c)?k("tasks.actionComplete"):k("tasks.actionMerge"),icon:ur(c)?ac:uH,onClick:()=>ur(c)?j(c):e(c),filled:!0}),O.push({label:k("tasks.actionReturn"),icon:qZ,onClick:()=>x(!0)});break;case"failed":O.push({label:k("tasks.actionRetry"),icon:aw,onClick:()=>h(c),filled:!0}),O.push({label:k("tasks.actionEdit"),icon:rK,onClick:()=>f(c)});break;case"done":O.push({label:k("tasks.actionArchive"),icon:aC,onClick:()=>void I(()=>(0,se.et)(c.id,H,!0))});break;case"canceled":O.push({label:k("tasks.actionRequeue"),icon:qZ,onClick:()=>i(c),filled:!0})}else O.push({label:k("tasks.actionUnarchive"),icon:aC,onClick:()=>void I(()=>(0,se.et)(c.id,H,!1))});return null!=c.conversationId&&O.push({label:k("tasks.actionViewSession"),icon:qX,onClick:()=>d(c)}),(0,L.jsx)("div",{style:{position:"fixed",inset:0,zIndex:800,background:"rgba(0,0,0,0.35)"},children:(0,L.jsxs)("div",{style:{position:"absolute",top:0,right:0,bottom:0,width:"min(480px, 90vw)",background:"var(--bg-panel)",borderLeft:"1px solid var(--border)",display:"flex",flexDirection:"column",boxShadow:"-8px 0 32px rgba(0,0,0,0.2)"},children:[(0,L.jsxs)("div",{style:{display:"flex",alignItems:"flex-start",justifyContent:"space-between",gap:12,padding:"16px 16px 0"},children:[(0,L.jsxs)("div",{style:{minWidth:0},children:[(0,L.jsx)("h3",{style:{margin:0,fontSize:15,fontWeight:600,lineHeight:1.4,overflowWrap:"break-word"},children:c.title}),(0,L.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8,marginTop:6},children:[(0,L.jsx)(uB,{task:c}),c.workBranch?(0,L.jsxs)("span",{style:{display:"inline-flex",alignItems:"center",gap:4,fontFamily:"var(--font-mono)",fontSize:11,color:"var(--text-muted)"},children:[(0,L.jsx)(am,{size:12,"aria-hidden":"true"}),c.workBranch]}):null]})]}),(0,L.jsx)("button",{type:"button",onClick:()=>b(!1),"aria-label":k("i18n.close"),style:{background:"none",border:"none",cursor:"pointer",color:"var(--text-muted)",padding:4,display:"flex",flexShrink:0},children:(0,L.jsx)($,{size:16,"aria-hidden":"true"})})]}),(0,L.jsx)("div",{style:{display:"flex",flexWrap:"wrap",gap:8,padding:"14px 16px 0"},children:O.map(a=>{let b,c;return(0,L.jsxs)("button",{type:"button",onClick:a.onClick,disabled:E,style:(b=a.filled,c=a.danger,{display:"inline-flex",alignItems:"center",gap:5,padding:"7px 12px",borderRadius:8,fontSize:12,fontWeight:600,cursor:"pointer",background:b?"var(--accent)":c?"rgba(239,68,68,0.1)":"var(--bg-hover)",color:b?"#fff":c?"var(--status-error)":"var(--text)",border:b||c?"none":"1px solid var(--border)"}),children:[(0,L.jsx)(a.icon,{size:13,weight:"bold","aria-hidden":"true"}),a.label]},a.label)})}),w&&(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:8,padding:"12px 16px 0"},children:[(0,L.jsx)("textarea",{value:y,onChange:a=>z(a.target.value),placeholder:k("tasks.returnPlaceholder"),rows:3,style:{width:"100%",background:"var(--bg)",border:"1px solid var(--border)",borderRadius:8,padding:"8px 10px",color:"var(--text)",fontSize:12,resize:"vertical",fontFamily:"inherit"}}),(0,L.jsxs)("div",{style:{display:"flex",justifyContent:"flex-end",gap:8},children:[(0,L.jsx)("button",{type:"button",onClick:()=>x(!1),style:{padding:"6px 12px",borderRadius:8,background:"none",border:"1px solid var(--border)",color:"var(--text)",fontSize:12,cursor:"pointer"},children:k("i18n.cancel")}),(0,L.jsx)("button",{type:"button",onClick:()=>void N(),disabled:!y.trim(),style:{padding:"6px 14px",borderRadius:8,background:"var(--accent)",color:"var(--accent-fg)",border:"none",fontSize:12,fontWeight:600,cursor:"pointer"},children:k("tasks.returnSubmit")})]})]}),(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:6,padding:"14px 16px 0",fontSize:12,color:"var(--text-muted)"},children:[(0,L.jsxs)("div",{style:{display:"flex",gap:6},children:[(0,L.jsx)("span",{style:{flexShrink:0,color:"var(--text-dim)",width:64},children:k("tasks.metaProject")}),(0,L.jsx)("span",{style:{minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",fontFamily:"var(--font-mono)",fontSize:11},children:c.projectRoot})]}),c.createdAt?(0,L.jsxs)("div",{style:{display:"flex",gap:6},children:[(0,L.jsx)("span",{style:{flexShrink:0,color:"var(--text-dim)",width:64},children:k("tasks.metaCreated")}),(0,L.jsx)("span",{children:new Date(c.createdAt).toLocaleString()})]}):null,c.mergeCommit?(0,L.jsxs)("div",{style:{display:"flex",gap:6},children:[(0,L.jsx)("span",{style:{flexShrink:0,color:"var(--text-dim)",width:64},children:k("tasks.metaCommit")}),(0,L.jsx)("span",{style:{fontFamily:"var(--font-mono)",fontSize:11},children:c.mergeCommit})]}):null]}),o.length>0&&(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:4,padding:"14px 16px 0"},children:[(0,L.jsx)("span",{style:{fontSize:11,fontWeight:600,color:"var(--text-muted)",textTransform:"uppercase",letterSpacing:"0.05em"},children:k("tasks.changedFiles")}),(0,L.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:2,maxHeight:140,overflowY:"auto"},children:o.map(a=>(0,L.jsxs)("button",{type:"button",onClick:()=>{var b;r(b=a.file),t(null),J(b)},style:{display:"flex",alignItems:"center",gap:8,textAlign:"left",padding:"4px 6px",borderRadius:6,background:"none",border:"none",color:"var(--text)",fontSize:12,cursor:"pointer"},children:[(0,L.jsx)(uJ,{size:13,style:{flexShrink:0,color:"var(--text-muted)"},"aria-hidden":"true"}),(0,L.jsx)("span",{style:{flex:1,minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",fontFamily:"var(--font-mono)",fontSize:11},children:a.file}),(0,L.jsxs)("span",{style:{fontFamily:"var(--font-mono)",fontSize:10,color:"#059669",flexShrink:0},children:["+",a.additions]}),(0,L.jsxs)("span",{style:{fontFamily:"var(--font-mono)",fontSize:10,color:"var(--status-error)",flexShrink:0},children:["-",a.deletions]})]},a.file))})]}),null!=q&&(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:6,padding:"12px 16px 0",minHeight:0,flexShrink:0},children:[(0,L.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8},children:[(0,L.jsx)("span",{style:{fontSize:11,fontWeight:600,color:"var(--text-muted)"},children:k("tasks.diff")}),(0,L.jsx)("span",{style:{fontFamily:"var(--font-mono)",fontSize:10,color:"var(--text-muted)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",flex:1},children:q}),(0,L.jsx)("button",{type:"button",onClick:()=>r(null),style:{background:"none",border:"none",cursor:"pointer",color:"var(--text-muted)",padding:2,display:"flex"},children:(0,L.jsx)($,{size:12,"aria-hidden":"true"})})]}),u?(0,L.jsx)("div",{style:{fontSize:11,color:"var(--text-muted)",padding:8},children:k("tasks.loading")}):s?(0,L.jsx)("pre",{style:{margin:0,maxHeight:200,overflow:"auto",background:"var(--bg)",border:"1px solid var(--border)",borderRadius:8,padding:10,fontSize:11,lineHeight:1.5,fontFamily:"var(--font-mono)",color:"var(--text-muted)",whiteSpace:"pre"},children:s.split("\n").map((a,b)=>{let c;return a.startsWith("+")&&!a.startsWith("+++")?c="#059669":a.startsWith("-")&&!a.startsWith("---")?c="var(--status-error)":a.startsWith("@@")&&(c="var(--accent)"),(0,L.jsx)("div",{style:{color:c},children:a||" "},b)})}):(0,L.jsx)("div",{style:{fontSize:11,color:"var(--text-muted)",padding:8},children:k("tasks.noDiff")})]}),(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:4,padding:"14px 16px 0",flex:1,minHeight:0},children:[(0,L.jsx)("span",{style:{fontSize:11,fontWeight:600,color:"var(--text-muted)",textTransform:"uppercase",letterSpacing:"0.05em"},children:k("tasks.timeline")}),(0,L.jsx)("div",{style:{flex:1,minHeight:0,overflowY:"auto",paddingBottom:8},children:0===m.length?(0,L.jsx)("div",{style:{fontSize:11,color:"var(--text-dim)",padding:8},children:k("tasks.noEvents")}):(0,L.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:2},children:[...m].reverse().map(a=>{var b;let c,d;return(0,L.jsxs)("div",{style:{display:"flex",gap:8,padding:"4px 6px",borderRadius:6,fontSize:11},children:[(0,L.jsx)("span",{style:{color:"var(--text-dim)",flexShrink:0,fontFamily:"var(--font-mono)",fontSize:10,paddingTop:1},children:new Date(a.createdAt).toLocaleTimeString()}),(0,L.jsx)("span",{style:{color:"var(--text)",flexShrink:0,fontWeight:500},children:(b=a.kind,(d=k(c=`tasks.event_${b}`))===c?b:d)}),a.payload?.feedback?(0,L.jsx)("span",{style:{color:"var(--text-muted)",fontStyle:"italic",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:String(a.payload.feedback)}):null]},a.id)})})})]}),(0,L.jsx)("div",{style:{display:"flex",alignItems:"center",justifyContent:"flex-end",gap:8,padding:"10px 16px",borderTop:"1px solid var(--border)",flexShrink:0},children:A?(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)("label",{style:{display:"flex",alignItems:"center",gap:6,fontSize:12,cursor:"pointer"},children:[(0,L.jsx)("input",{type:"checkbox",checked:C,onChange:a=>D(a.target.checked),style:{accentColor:"var(--accent)"}}),k("tasks.deleteWorktree")]}),(0,L.jsx)("button",{type:"button",onClick:()=>B(!1),style:{padding:"6px 12px",borderRadius:8,background:"none",border:"1px solid var(--border)",color:"var(--text)",fontSize:12,cursor:"pointer"},children:k("i18n.cancel")}),(0,L.jsx)("button",{type:"button",onClick:()=>void K(),disabled:E,style:{padding:"6px 14px",borderRadius:8,background:"var(--status-error)",color:"#fff",border:"none",fontSize:12,fontWeight:600,cursor:"pointer"},children:k("tasks.deleteConfirm")})]}):(0,L.jsxs)("button",{type:"button",onClick:()=>B(!0),style:{display:"inline-flex",alignItems:"center",gap:5,padding:"6px 12px",borderRadius:8,background:"none",border:"1px solid var(--border)",color:"var(--status-error)",fontSize:12,cursor:"pointer"},children:[(0,L.jsx)(ay,{size:13,"aria-hidden":"true"}),k("tasks.delete")]})})]})})}uJ.displayName="GitDiffIcon";let uL=new Map([["bold",M.createElement(M.Fragment,null,M.createElement("path",{d:"M184,28H72A20,20,0,0,0,52,48V224a12,12,0,0,0,18.36,10.18l57.63-36,57.65,36A12,12,0,0,0,204,224V48A20,20,0,0,0,184,28Zm-4,174.35-45.65-28.53a12,12,0,0,0-12.72,0L76,202.35V52H180Z"}))],["duotone",M.createElement(M.Fragment,null,M.createElement("path",{d:"M192,48V224l-64-40L64,224V48a8,8,0,0,1,8-8H184A8,8,0,0,1,192,48Z",opacity:"0.2"}),M.createElement("path",{d:"M184,32H72A16,16,0,0,0,56,48V224a8,8,0,0,0,12.24,6.78L128,193.43l59.77,37.35A8,8,0,0,0,200,224V48A16,16,0,0,0,184,32Zm0,177.57-51.77-32.35a8,8,0,0,0-8.48,0L72,209.57V48H184Z"}))],["fill",M.createElement(M.Fragment,null,M.createElement("path",{d:"M184,32H72A16,16,0,0,0,56,48V224a8,8,0,0,0,12.24,6.78L128,193.43l59.77,37.35A8,8,0,0,0,200,224V48A16,16,0,0,0,184,32Z"}))],["light",M.createElement(M.Fragment,null,M.createElement("path",{d:"M184,34H72A14,14,0,0,0,58,48V224a6,6,0,0,0,9.18,5.09l60.81-38,60.83,38A6,6,0,0,0,198,224V48A14,14,0,0,0,184,34Zm2,179.17-54.83-34.26a6,6,0,0,0-6.36,0L70,213.17V48a2,2,0,0,1,2-2H184a2,2,0,0,1,2,2Z"}))],["regular",M.createElement(M.Fragment,null,M.createElement("path",{d:"M184,32H72A16,16,0,0,0,56,48V224a8,8,0,0,0,12.24,6.78L128,193.43l59.77,37.35A8,8,0,0,0,200,224V48A16,16,0,0,0,184,32Zm0,177.57-51.77-32.35a8,8,0,0,0-8.48,0L72,209.57V48H184Z"}))],["thin",M.createElement(M.Fragment,null,M.createElement("path",{d:"M184,36H72A12,12,0,0,0,60,48V224a4,4,0,0,0,6.12,3.39L128,188.72l61.89,38.67A4,4,0,0,0,192,228a4.06,4.06,0,0,0,1.94-.5A4,4,0,0,0,196,224V48A12,12,0,0,0,184,36Zm4,180.78-57.89-36.17a4,4,0,0,0-4.24,0L68,216.78V48a4,4,0,0,1,4-4H184a4,4,0,0,1,4,4Z"}))]]),uM=M.forwardRef((a,b)=>M.createElement(P,{ref:b,...a,weights:uL}));function uN({open:a,onOpenChange:b,task:c,defaultProject:d,projects:e,prefillTitle:f,prefillPrompt:g,onSubmit:h}){let{t:i}=(0,bb.s)(),[j,k]=(0,M.useState)(""),[l,m]=(0,M.useState)(""),[n,o]=(0,M.useState)(""),[p,q]=(0,M.useState)([]),[r,s]=(0,M.useState)(""),[t,u]=(0,M.useState)(!1);if((0,M.useRef)(!1),!a)return null;let v=async()=>{if(j&&l.trim()&&!t){u(!0);try{await h(j,l.trim(),{prompt:n.trim(),agentType:c?.config?.agentType??null,modelId:c?.config?.modelId??null,thinkingLevel:c?.config?.thinkingLevel??null}),b(!1)}catch(a){console.error("submit task failed",a)}finally{u(!1)}}},w=async()=>{if(r.trim()&&l.trim())try{await (0,se.nY)({name:r.trim(),title:l.trim(),config:{prompt:n.trim()}}),s(""),(0,se.VB)().then(q).catch(()=>void 0)}catch(a){console.error("save template failed",a)}},x=async a=>{try{await (0,se.B_)(a),(0,se.VB)().then(q).catch(()=>void 0)}catch(a){console.error("delete template failed",a)}},y={width:"100%",background:"var(--bg)",border:"1px solid var(--border)",borderRadius:8,padding:"8px 10px",color:"var(--text)",fontSize:13,outline:"none"};return(0,L.jsx)("div",{style:{position:"fixed",inset:0,zIndex:900,display:"flex",alignItems:"center",justifyContent:"center",background:"rgba(0,0,0,0.45)"},children:(0,L.jsxs)("div",{style:{width:"min(520px, calc(100vw - 48px))",maxHeight:"80vh",overflowY:"auto",background:"var(--bg-panel)",border:"1px solid var(--border)",borderRadius:14,boxShadow:"0 16px 48px rgba(0,0,0,0.3)"},children:[(0,L.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"14px 16px 0"},children:[(0,L.jsx)("h3",{style:{fontSize:15,fontWeight:600,margin:0},children:c?i("tasks.editTitle"):i("tasks.newTitle")}),(0,L.jsx)("button",{type:"button",onClick:()=>b(!1),"aria-label":i("i18n.close"),style:{background:"none",border:"none",cursor:"pointer",color:"var(--text-muted)",padding:4,display:"flex"},children:(0,L.jsx)($,{size:16,"aria-hidden":"true"})})]}),(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:12,padding:"14px 16px 16px"},children:[p.length>0&&(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:4},children:[(0,L.jsx)("span",{style:{fontSize:11,fontWeight:600,color:"var(--text-muted)",textTransform:"uppercase",letterSpacing:"0.05em"},children:i("tasks.templates")}),(0,L.jsx)("div",{style:{display:"flex",flexWrap:"wrap",gap:6},children:p.map(a=>(0,L.jsxs)("span",{style:{display:"inline-flex",alignItems:"center",gap:4,borderRadius:999,background:"var(--bg-hover)",padding:"3px 8px",fontSize:11},children:[(0,L.jsx)("button",{type:"button",onClick:()=>{m(a.title),o(a.config?.prompt??"")},style:{background:"none",border:"none",cursor:"pointer",color:"var(--text)",fontSize:11,padding:0},children:a.name}),(0,L.jsx)("button",{type:"button",onClick:()=>void x(a.id),"aria-label":i("tasks.deleteTemplate"),style:{background:"none",border:"none",cursor:"pointer",color:"var(--text-dim)",padding:0,display:"flex"},children:(0,L.jsx)(ay,{size:10,"aria-hidden":"true"})})]},a.id))})]}),(0,L.jsxs)("label",{style:{display:"flex",flexDirection:"column",gap:4},children:[(0,L.jsx)("span",{style:{fontSize:12,fontWeight:500,color:"var(--text)"},children:i("tasks.fieldProject")}),(0,L.jsx)("select",{value:j,onChange:a=>k(a.target.value),style:y,children:e.map(a=>(0,L.jsx)("option",{value:a,children:a.split("/").filter(Boolean).pop()??a},a))})]}),(0,L.jsxs)("label",{style:{display:"flex",flexDirection:"column",gap:4},children:[(0,L.jsx)("span",{style:{fontSize:12,fontWeight:500,color:"var(--text)"},children:i("tasks.fieldTitle")}),(0,L.jsx)("input",{value:l,onChange:a=>m(a.target.value),placeholder:i("tasks.fieldTitlePlaceholder"),style:y,autoFocus:!0})]}),(0,L.jsxs)("label",{style:{display:"flex",flexDirection:"column",gap:4},children:[(0,L.jsx)("span",{style:{fontSize:12,fontWeight:500,color:"var(--text)"},children:i("tasks.fieldPrompt")}),(0,L.jsx)("textarea",{value:n,onChange:a=>o(a.target.value),placeholder:i("tasks.fieldPromptPlaceholder"),rows:6,style:{...y,resize:"vertical",fontFamily:"inherit",lineHeight:1.5}})]}),(0,L.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:6},children:[(0,L.jsx)("input",{value:r,onChange:a=>s(a.target.value),placeholder:i("tasks.templateNamePlaceholder"),style:{...y,flex:1}}),(0,L.jsxs)("button",{type:"button",onClick:()=>void w(),disabled:!r.trim()||!l.trim(),style:{display:"inline-flex",alignItems:"center",gap:5,padding:"8px 12px",borderRadius:8,background:"var(--bg-hover)",border:"1px solid var(--border)",color:"var(--text)",fontSize:12,cursor:"pointer"},children:[(0,L.jsx)(uM,{size:13,"aria-hidden":"true"}),i("tasks.saveAsTemplate")]})]}),(0,L.jsxs)("div",{style:{display:"flex",justifyContent:"flex-end",gap:8,marginTop:4},children:[(0,L.jsx)("button",{type:"button",onClick:()=>b(!1),style:{padding:"8px 14px",borderRadius:8,background:"none",border:"1px solid var(--border)",color:"var(--text)",fontSize:12,cursor:"pointer"},children:i("i18n.cancel")}),(0,L.jsx)("button",{type:"button",onClick:()=>void v(),disabled:!j||!l.trim()||t,style:{padding:"8px 16px",borderRadius:8,background:"var(--accent)",color:"var(--accent-fg)",border:"none",fontSize:12,fontWeight:600,cursor:"pointer"},children:i("tasks.save")})]})]})]})})}function uO({open:a,onOpenChange:b,task:c}){let{t:d}=(0,bb.s)(),{refetch:e}=uh(),[f,g]=(0,M.useState)(!0),[h,i]=(0,M.useState)(""),[j,k]=(0,M.useState)(!0),[l,m]=(0,M.useState)(!1);if(!a||!c)return null;let n=async()=>{if((f||h.trim())&&!l){m(!0);try{await (0,se.oB)(c.id,c.projectRoot,f?null:h.trim(),j),b(!1),e()}catch(a){console.error("merge failed",a)}finally{m(!1)}}};return(0,L.jsx)("div",{style:{position:"fixed",inset:0,zIndex:950,display:"flex",alignItems:"center",justifyContent:"center",background:"rgba(0,0,0,0.45)"},children:(0,L.jsxs)("div",{style:{width:"min(440px, calc(100vw - 48px))",background:"var(--bg-panel)",border:"1px solid var(--border)",borderRadius:14,boxShadow:"0 16px 48px rgba(0,0,0,0.3)"},children:[(0,L.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"14px 16px 0"},children:[(0,L.jsx)("h3",{style:{fontSize:15,fontWeight:600,margin:0},children:d("tasks.mergeTitle")}),(0,L.jsx)("button",{type:"button",onClick:()=>b(!1),"aria-label":d("i18n.close"),style:{background:"none",border:"none",cursor:"pointer",color:"var(--text-muted)",padding:4,display:"flex"},children:(0,L.jsx)($,{size:16,"aria-hidden":"true"})})]}),(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:12,padding:"14px 16px 16px"},children:[(0,L.jsxs)("label",{style:{display:"flex",alignItems:"center",gap:8,fontSize:13,cursor:"pointer"},children:[(0,L.jsx)("input",{type:"radio",checked:f,onChange:()=>g(!0),style:{accentColor:"var(--accent)"}}),d("tasks.mergeAutoMessage")]}),(0,L.jsxs)("label",{style:{display:"flex",alignItems:"center",gap:8,fontSize:13,cursor:"pointer"},children:[(0,L.jsx)("input",{type:"radio",checked:!f,onChange:()=>g(!1),style:{accentColor:"var(--accent)"}}),d("tasks.mergeManualMessage")]}),!f&&(0,L.jsx)("input",{value:h,onChange:a=>i(a.target.value),placeholder:d("tasks.mergeMessagePlaceholder"),style:{width:"100%",background:"var(--bg)",border:"1px solid var(--border)",borderRadius:8,padding:"8px 10px",color:"var(--text)",fontSize:13,outline:"none",fontFamily:"inherit"}}),(0,L.jsxs)("label",{style:{display:"flex",alignItems:"center",gap:8,fontSize:13,cursor:"pointer"},children:[(0,L.jsx)("input",{type:"checkbox",checked:j,onChange:a=>k(a.target.checked),style:{accentColor:"var(--accent)"}}),d("tasks.mergeDeleteWorktree")]}),(0,L.jsxs)("div",{style:{display:"flex",justifyContent:"flex-end",gap:8,marginTop:4},children:[(0,L.jsx)("button",{type:"button",onClick:()=>b(!1),style:{padding:"8px 14px",borderRadius:8,background:"none",border:"1px solid var(--border)",color:"var(--text)",fontSize:12,cursor:"pointer"},children:d("i18n.cancel")}),(0,L.jsx)("button",{type:"button",onClick:()=>void n(),disabled:!f&&!h.trim()||l,style:{padding:"8px 16px",borderRadius:8,background:"var(--accent)",color:"var(--accent-fg)",border:"none",fontSize:12,fontWeight:600,cursor:"pointer"},children:d("tasks.mergeConfirm")})]})]})]})})}function uP({open:a,onOpenChange:b,task:c,kind:d}){let{t:e}=(0,bb.s)(),{refetch:f}=uh(),[g,h]=(0,M.useState)(""),[i,j]=(0,M.useState)(!1);if(!a||!c)return null;let k="retry"===d,l=async()=>{if(!i){j(!0);try{await (0,se.oQ)(c.id,c.projectRoot,d,{note:g.trim()||null}),b(!1),f()}catch(a){console.error("restart failed",a)}finally{j(!1)}}};return(0,L.jsx)("div",{style:{position:"fixed",inset:0,zIndex:950,display:"flex",alignItems:"center",justifyContent:"center",background:"rgba(0,0,0,0.45)"},children:(0,L.jsxs)("div",{style:{width:"min(480px, calc(100vw - 48px))",background:"var(--bg-panel)",border:"1px solid var(--border)",borderRadius:14,boxShadow:"0 16px 48px rgba(0,0,0,0.3)"},children:[(0,L.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"14px 16px 0"},children:[(0,L.jsx)("h3",{style:{fontSize:15,fontWeight:600,margin:0},children:e(k?"tasks.restartTitleRetry":"tasks.restartTitleRequeue")}),(0,L.jsx)("button",{type:"button",onClick:()=>b(!1),"aria-label":e("i18n.close"),style:{background:"none",border:"none",cursor:"pointer",color:"var(--text-muted)",padding:4,display:"flex"},children:(0,L.jsx)($,{size:16,"aria-hidden":"true"})})]}),(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:12,padding:"14px 16px 16px"},children:[(0,L.jsx)("p",{style:{margin:0,fontSize:12,lineHeight:1.5,color:"var(--text-muted)"},children:e("tasks.restartDescription")}),(0,L.jsxs)("label",{style:{display:"flex",flexDirection:"column",gap:5},children:[(0,L.jsx)("span",{style:{fontSize:12,color:"var(--text-muted)"},children:e("tasks.actionAddNote")}),(0,L.jsx)("textarea",{value:g,onChange:a=>h(a.target.value),placeholder:e(k?"tasks.followUpPlaceholderRetry":"tasks.followUpPlaceholderRequeue"),rows:3,autoFocus:!0,style:{width:"100%",background:"var(--bg)",border:"1px solid var(--border)",borderRadius:8,padding:"8px 10px",color:"var(--text)",fontSize:13,outline:"none",fontFamily:"inherit",resize:"vertical"}})]}),(0,L.jsxs)("div",{style:{display:"flex",justifyContent:"flex-end",gap:8,marginTop:4},children:[(0,L.jsx)("button",{type:"button",onClick:()=>b(!1),disabled:i,style:{padding:"8px 14px",borderRadius:8,background:"none",border:"1px solid var(--border)",color:"var(--text)",fontSize:12,cursor:"pointer"},children:e("i18n.cancel")}),(0,L.jsx)("button",{type:"button",onClick:()=>void l(),disabled:i,style:{padding:"8px 16px",borderRadius:8,background:"var(--accent)",color:"var(--accent-fg)",border:"none",fontSize:12,fontWeight:600,cursor:"pointer"},children:e(k?"tasks.actionRetry":"tasks.actionRequeue")})]})]})]})})}uM.displayName="BookmarkSimpleIcon";let uQ=["work","retry","return","merge"];function uR({open:a,onOpenChange:b,projectRoot:c}){let{t:d}=(0,bb.s)(),{projects:e}=uh(),[f,g]=(0,M.useState)(""),[h,i]=(0,M.useState)(()=>us()),[j,k]=(0,M.useState)(!1),[l,m]=(0,M.useState)(!1);if(!a)return null;let n=(a,b)=>{i(c=>({...c,[a]:b}))},o=async()=>{if(f&&!l){m(!0);try{await (0,se.eA)(f,h),k(!0),b(!1)}catch(a){console.error("save settings failed",a)}finally{m(!1)}}},p=async()=>{if(f)try{await (0,se.E)(f),k(!1),i(us())}catch(a){console.error("reset settings failed",a)}},q={width:"100%",background:"var(--bg)",border:"1px solid var(--border)",borderRadius:8,padding:"7px 10px",color:"var(--text)",fontSize:12,outline:"none",fontFamily:"inherit"},r={display:"flex",alignItems:"center",justifyContent:"space-between",gap:12,padding:"10px 0",borderBottom:"1px solid var(--border)"};return(0,L.jsx)("div",{style:{position:"fixed",inset:0,zIndex:960,display:"flex",alignItems:"center",justifyContent:"center",background:"rgba(0,0,0,0.45)"},children:(0,L.jsxs)("div",{style:{width:"min(560px, calc(100vw - 48px))",maxHeight:"82vh",overflowY:"auto",background:"var(--bg-panel)",border:"1px solid var(--border)",borderRadius:14,boxShadow:"0 16px 48px rgba(0,0,0,0.3)"},children:[(0,L.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"14px 16px 0"},children:[(0,L.jsx)("h3",{style:{fontSize:15,fontWeight:600,margin:0},children:d("tasks.settingsTitle")}),(0,L.jsx)("button",{type:"button",onClick:()=>b(!1),"aria-label":d("i18n.close"),style:{background:"none",border:"none",cursor:"pointer",color:"var(--text-muted)",padding:4,display:"flex"},children:(0,L.jsx)($,{size:16,"aria-hidden":"true"})})]}),(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:10,padding:"14px 16px 16px"},children:[(0,L.jsxs)("label",{style:{display:"flex",flexDirection:"column",gap:4},children:[(0,L.jsx)("span",{style:{fontSize:12,fontWeight:500},children:d("tasks.settingsProject")}),(0,L.jsx)("select",{value:f,onChange:a=>g(a.target.value),style:q,children:e.map(a=>(0,L.jsx)("option",{value:a,children:a.split("/").filter(Boolean).pop()??a},a))})]}),f?(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)("div",{style:r,children:[(0,L.jsx)("span",{style:{fontSize:12},children:d("tasks.settingsAutoProcess")}),(0,L.jsx)("input",{type:"checkbox",checked:h.autoProcess,onChange:a=>n("autoProcess",a.target.checked),style:{accentColor:"var(--accent)"}})]}),(0,L.jsxs)("div",{style:r,children:[(0,L.jsx)("span",{style:{fontSize:12},children:d("tasks.settingsMaxConcurrent")}),(0,L.jsx)("input",{type:"number",min:0,value:h.maxConcurrent,onChange:a=>n("maxConcurrent",Math.max(0,Number(a.target.value)||0)),style:{...q,width:90}})]}),(0,L.jsxs)("div",{style:r,children:[(0,L.jsx)("span",{style:{fontSize:12},children:d("tasks.settingsMergeStrategy")}),(0,L.jsxs)("select",{value:h.mergeStrategy,onChange:a=>n("mergeStrategy",a.target.value),style:{...q,width:140},children:[(0,L.jsx)("option",{value:"merge",children:d("tasks.mergeStrategyMerge")}),(0,L.jsx)("option",{value:"squash",children:d("tasks.mergeStrategySquash")})]})]}),(0,L.jsxs)("div",{style:r,children:[(0,L.jsx)("span",{style:{fontSize:12},children:d("tasks.settingsDeleteWorktree")}),(0,L.jsx)("input",{type:"checkbox",checked:h.deleteWorktreeDefault,onChange:a=>n("deleteWorktreeDefault",a.target.checked),style:{accentColor:"var(--accent)"}})]}),(0,L.jsxs)("label",{style:{display:"flex",flexDirection:"column",gap:4},children:[(0,L.jsx)("span",{style:{fontSize:12},children:d("tasks.settingsPreflightCommand")}),(0,L.jsx)("input",{value:h.preflightCommand??"",onChange:a=>n("preflightCommand",a.target.value||null),placeholder:d("tasks.settingsPreflightPlaceholder"),style:{...q,fontFamily:"var(--font-mono)",fontSize:11}})]}),(0,L.jsxs)("label",{style:{display:"flex",flexDirection:"column",gap:4},children:[(0,L.jsx)("span",{style:{fontSize:12},children:d("tasks.settingsInitCommand")}),(0,L.jsx)("input",{value:h.initCommand??"",onChange:a=>n("initCommand",a.target.value||null),placeholder:d("tasks.settingsInitPlaceholder"),style:{...q,fontFamily:"var(--font-mono)",fontSize:11}})]}),(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:6,paddingTop:4},children:[(0,L.jsx)("span",{style:{fontSize:12,fontWeight:500},children:d("tasks.settingsStagePrompts")}),uQ.map(a=>(0,L.jsxs)("label",{style:{display:"flex",flexDirection:"column",gap:4},children:[(0,L.jsx)("span",{style:{fontSize:11,color:"var(--text-muted)"},children:d(`tasks.stage.${a}`)}),(0,L.jsx)("input",{value:h.stagePrompts?.[a]??"",onChange:b=>n("stagePrompts",{...h.stagePrompts??{},[a]:b.target.value}),style:{...q,fontSize:11}})]},a))]}),j&&(0,L.jsx)("button",{type:"button",onClick:()=>void p(),style:{alignSelf:"flex-start",padding:"6px 12px",borderRadius:8,background:"none",border:"1px solid var(--border)",color:"var(--text-muted)",fontSize:12,cursor:"pointer"},children:d("tasks.settingsReset")})]}):(0,L.jsx)("div",{style:{fontSize:12,color:"var(--text-muted)",padding:8},children:d("tasks.settingsNoProject")}),(0,L.jsxs)("div",{style:{display:"flex",justifyContent:"flex-end",gap:8,marginTop:4},children:[(0,L.jsx)("button",{type:"button",onClick:()=>b(!1),style:{padding:"8px 14px",borderRadius:8,background:"none",border:"1px solid var(--border)",color:"var(--text)",fontSize:12,cursor:"pointer"},children:d("i18n.cancel")}),(0,L.jsx)("button",{type:"button",onClick:()=>void o(),disabled:!f||l,style:{padding:"8px 16px",borderRadius:8,background:"var(--accent)",color:"var(--accent-fg)",border:"none",fontSize:12,fontWeight:600,cursor:"pointer"},children:d("tasks.save")})]})]})]})})}function uS({open:a,onOpenChange:b,task:c}){let{t:d}=(0,bb.s)();return a&&c?(0,L.jsx)("div",{style:{position:"fixed",inset:0,zIndex:970,display:"flex",alignItems:"center",justifyContent:"center",background:"rgba(0,0,0,0.45)"},children:(0,L.jsxs)("div",{style:{width:"min(520px, calc(100vw - 48px))",background:"var(--bg-panel)",border:"1px solid var(--border)",borderRadius:14,boxShadow:"0 16px 48px rgba(0,0,0,0.3)"},children:[(0,L.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"14px 16px 0"},children:[(0,L.jsx)("h3",{style:{fontSize:15,fontWeight:600,margin:0},children:d("tasks.sessionTitle")}),(0,L.jsx)("button",{type:"button",onClick:()=>b(!1),"aria-label":d("i18n.close"),style:{background:"none",border:"none",cursor:"pointer",color:"var(--text-muted)",padding:4,display:"flex"},children:(0,L.jsx)($,{size:16,"aria-hidden":"true"})})]}),(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:10,padding:"14px 16px 16px",fontSize:12},children:[(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:4,background:"var(--bg)",border:"1px solid var(--border)",borderRadius:8,padding:10},children:[(0,L.jsx)("span",{style:{color:"var(--text-muted)"},children:d("tasks.sessionId")}),(0,L.jsx)("span",{style:{fontFamily:"var(--font-mono)",fontSize:11,overflowWrap:"anywhere"},children:c.conversationId??"—"})]}),c.sessionFile?(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:4,background:"var(--bg)",border:"1px solid var(--border)",borderRadius:8,padding:10},children:[(0,L.jsx)("span",{style:{color:"var(--text-muted)"},children:d("tasks.sessionFile")}),(0,L.jsx)("span",{style:{fontFamily:"var(--font-mono)",fontSize:11,overflowWrap:"anywhere"},children:c.sessionFile})]}):null,(0,L.jsx)("div",{style:{fontSize:11,color:"var(--text-muted)",lineHeight:1.6},children:d("tasks.sessionHint")}),(0,L.jsx)("div",{style:{display:"flex",justifyContent:"flex-end",marginTop:4},children:(0,L.jsx)("button",{type:"button",onClick:()=>b(!1),style:{padding:"8px 16px",borderRadius:8,background:"var(--accent)",color:"var(--accent-fg)",border:"none",fontSize:12,fontWeight:600,cursor:"pointer"},children:d("i18n.close")})})]})]})}):null}let uT="__all__",uU={showCanceled:!1,showArchived:!1};function uV(){let{t:a}=(0,bb.s)(),{attentionCount:b}=uh();return(0,L.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8,height:36,flexShrink:0,padding:"0 16px",borderBottom:"1px solid var(--border)",background:"var(--bg-panel)"},children:[(0,L.jsxs)("h1",{style:{margin:0,display:"flex",alignItems:"center",gap:6,fontSize:13,fontWeight:600},children:[(0,L.jsx)(b4,{size:15,color:"var(--text-muted)","aria-hidden":"true"}),a("tasks.title"),(0,L.jsx)("span",{style:{borderRadius:999,background:"rgba(37,99,235,0.12)",color:"var(--accent)",padding:"1px 8px",fontSize:9,fontWeight:700,textTransform:"uppercase",letterSpacing:"0.04em"},children:"Beta"})]}),b>0?(0,L.jsxs)("span",{style:{display:"inline-flex",alignItems:"center",gap:4,borderRadius:999,background:"rgba(239,68,68,0.12)",color:"var(--status-error)",padding:"1px 8px",fontSize:10,fontWeight:700},children:[b," ",a("tasks.attentionBadge")]}):null,(0,L.jsx)("div",{style:{flex:1}}),(0,L.jsxs)("button",{type:"button",onClick:()=>window.dispatchEvent(new Event("pi:open-task-settings")),style:{display:"inline-flex",alignItems:"center",gap:5,height:26,padding:"0 10px",borderRadius:7,background:"none",border:"none",color:"var(--text-muted)",fontSize:12,cursor:"pointer"},title:a("tasks.settingsTitle"),children:[(0,L.jsx)(ul,{size:13,"aria-hidden":"true"}),a("tasks.settingsTitle")]})]})}function uW({activeProject:a}){let{t:b}=(0,bb.s)(),{tasks:d,projects:e,refetch:f}=uh(),[g,h]=(0,M.useState)(null),[i,j]=(0,M.useState)(()=>(function(){try{let a=window.localStorage.getItem("pi-tasks-board-filter");if(a){let b=JSON.parse(a);return{showCanceled:b.showCanceled??!1,showArchived:b.showArchived??!1}}}catch{}return uU})()),[k,l]=(0,M.useState)(!1),[m,n]=(0,M.useState)(null),[o,p]=(0,M.useState)(!1),q=(0,M.useRef)(null),r=(0,M.useRef)({x:0,y:0}),s=(0,M.useRef)(null),t=(0,M.useRef)(null),[u,v]=(0,M.useState)(null),w=(0,M.useRef)(null);w.current=u;let x=(0,M.useRef)(!1),y=(0,M.useRef)(!1),[z,A]=(0,M.useState)(()=>Date.now()),[B,C]=(0,M.useState)(!1),[D,E]=(0,M.useState)(null),[F,G]=(0,M.useState)(null),[H,I]=(0,M.useState)(null),[J,K]=(0,M.useState)(null),[N,O]=(0,M.useState)(!1),[P,Q]=(0,M.useState)(null),[R,S]=(0,M.useState)(!1),[T,U]=(0,M.useState)(null),[V,X]=(0,M.useState)("retry"),[Y,Z]=(0,M.useState)(!1),[$,_]=(0,M.useState)(null),[aa,ab]=(0,M.useState)(!1),[ac,ad]=(0,M.useState)(!1),[ae,af]=(0,M.useState)(null),[ag,ah]=(0,M.useState)(!1),ai=(0,M.useMemo)(()=>null==g?d:d.filter(a=>a.projectRoot===g),[d,g]),aj=(0,M.useMemo)(()=>(function(a,b,c=!1){let d={todo:[],inProgress:[],attention:[],done:[]};for(let e of a)("canceled"!==e.status||b)&&(null==e.archivedAt||c)&&d[function(a){switch(a){case"todo":case"queued":return"todo";case"preparing":case"running":return"inProgress";case"awaiting_input":case"review":case"merging":case"failed":return"attention";case"done":case"canceled":return"done"}}(e.status)].push(e);for(let a of uq)d[a].sort((a,b)=>(b.updatedAt??"").localeCompare(a.updatedAt??""));return d})(ai,i.showCanceled,i.showArchived),[ai,i]),al=(0,M.useMemo)(()=>{let a=aj.todo;if(null==u)return a;let b=new Map(a.map(a=>[a.id,a])),c=u.flatMap(a=>b.get(a)??[]);for(let b of a)u.includes(b.id)||c.push(b);return c},[aj.todo,u]),am=(0,M.useMemo)(()=>d.find(a=>a.id===H)??null,[d,H]),an=(0,M.useMemo)(()=>d.find(a=>a.id===ae)??null,[d,ae]),ao=(0,M.useCallback)(async a=>{try{await a()}catch(a){console.error("task action failed",a)}finally{f()}},[f]),ap=(0,M.useCallback)(a=>{null!=a.conversationId&&(af(a.id),ah(!0))},[af,ah]),aq=(0,M.useCallback)(a=>{K(a),O(!0)},[K,O]),ar=(0,M.useCallback)(()=>{E(null),C(!0)},[E,C]),as=(0,M.useCallback)((a,b)=>{let c=s.current,d=q.current;c&&d&&(c.style.transform=`translate3d(${a-d.dx}px, ${b-d.dy}px, 0)`)},[]),at=a=>{let b=a.currentTarget.getBoundingClientRect();q.current={dx:a.clientX-b.left,dy:a.clientY-b.top,width:b.width}},au=(0,M.useCallback)(a=>{if(n(null),p(!1),a){x.current=!1;return}requestAnimationFrame(()=>{x.current=!1})},[n,p]);(0,M.useCallback)(()=>{y.current=!0,v(null),au(!0)},[au,v]);let av=(0,M.useCallback)((a,b,c)=>{if(y.current){au(!0),v(null);return}let e=t.current?.getBoundingClientRect(),h=null!=e&&b>=e.left&&b<=e.right&&c>=e.top&&c<=e.bottom;if(au(!1),h){v(null);let b=d.find(b=>b.id===a.id);b?.status==="todo"&&null!=g&&ao(()=>(0,se.oQ)(a.id,a.projectRoot,"start"));return}let i=w.current;null!=g&&null!=i&&(async()=>{try{await (0,se.Lu)(g,i)}catch(a){console.error("reorder failed",a)}await f(),v(null)})()},[ao,au,g,f,d]),aw=(0,M.useCallback)(()=>{ao(async()=>{let a=await (0,se.a5)(g);a>0&&console.log(`started ${a} tasks`)})},[ao,g]),ax=(0,M.useCallback)(()=>{let a=aj.done.filter(a=>null==a.archivedAt);0!==a.length&&ao(()=>Promise.all(a.map(a=>(0,se.et)(a.id,a.projectRoot,!0))))},[ao,aj.done]),ay=+(i.showCanceled!==uU.showCanceled)+ +(i.showArchived!==uU.showArchived),az=d.length>0,aA=(0,M.useMemo)(()=>{let b=new Set(e);return a&&b.add(a),[...b].sort()},[e,a]),aB=(0,M.useMemo)(()=>{let a=new Map;for(let b of aA)a.set(b,b.split("/").filter(Boolean).pop()??b);return a},[aA]);return(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",height:"100%",minHeight:0},children:[az&&(0,L.jsxs)("div",{style:{display:"flex",flexWrap:"wrap",alignItems:"center",gap:8,padding:"14px 16px 8px"},children:[(0,L.jsxs)("select",{value:g??uT,onChange:a=>h(a.target.value===uT?null:a.target.value),style:{height:30,borderRadius:999,padding:"0 10px",background:"var(--bg-panel)",border:"1px solid var(--border)",color:"var(--text)",fontSize:12,fontWeight:500,cursor:"pointer",maxWidth:"14rem"},"aria-label":b("tasks.allFolders"),children:[(0,L.jsx)("option",{value:uT,children:b("tasks.allFolders")}),aA.map(a=>(0,L.jsx)("option",{value:a,children:aB.get(a)??a},a))]}),(0,L.jsxs)("div",{style:{position:"relative"},children:[(0,L.jsxs)("button",{type:"button",onClick:()=>l(a=>!a),style:{display:"inline-flex",alignItems:"center",gap:6,height:30,borderRadius:999,padding:"0 12px",background:"var(--bg-panel)",border:"1px solid var(--border)",color:"var(--text)",fontSize:12,fontWeight:500,cursor:"pointer"},children:[(0,L.jsx)(un,{size:13,"aria-hidden":"true"}),b("tasks.filter"),ay>0?(0,L.jsx)("span",{style:{borderRadius:999,background:"rgba(37,99,235,0.12)",color:"var(--accent)",padding:"1px 6px",fontSize:10,fontWeight:700},children:ay}):null]}),k&&(0,L.jsx)("div",{style:{position:"absolute",top:34,left:0,zIndex:50,width:200,borderRadius:12,padding:6,background:"var(--bg-panel)",border:"1px solid var(--border)",boxShadow:"0 8px 24px rgba(0,0,0,0.16)"},children:[["showCanceled",b("tasks.showCanceled")],["showArchived",b("tasks.showArchived")]].map(([a,b])=>(0,L.jsxs)("label",{style:{display:"flex",alignItems:"center",gap:8,padding:"6px 8px",borderRadius:8,cursor:"pointer",fontSize:12},children:[(0,L.jsx)("input",{type:"checkbox",checked:i[a],onChange:b=>j(c=>({...c,[a]:b.target.checked})),style:{accentColor:"var(--accent)"}}),b]},a))})]}),(0,L.jsx)("div",{style:{flex:1}}),(0,L.jsxs)("button",{type:"button",onClick:aw,style:{display:"inline-flex",alignItems:"center",gap:6,height:30,borderRadius:999,padding:"0 12px",background:"none",border:"none",color:"var(--text)",fontSize:12,cursor:"pointer"},title:b("tasks.startAll"),children:[(0,L.jsx)(up,{size:13,"aria-hidden":"true"}),b("tasks.startAll")]}),(0,L.jsxs)("button",{type:"button",onClick:ar,style:{display:"inline-flex",alignItems:"center",gap:6,height:30,borderRadius:999,padding:"0 14px",background:"var(--accent)",color:"var(--accent-fg)",border:"none",fontSize:12,fontWeight:600,cursor:"pointer"},children:[(0,L.jsx)(ak,{size:13,weight:"bold","aria-hidden":"true"}),b("tasks.new")]})]}),az?(0,L.jsx)("div",{style:{flex:1,minHeight:0,overflowX:"auto"},children:(0,L.jsx)("div",{style:{display:"grid",gridTemplateColumns:"repeat(4, minmax(0, 1fr))",gap:16,minWidth:"56rem",height:"100%",padding:"4px 16px 16px"},children:ut.map(a=>{let c="todo"===a?al:aj[a],d=uu[a],e=a=>(0,L.jsx)(uD,{task:a,folderName:a.projectRoot?aB.get(a.projectRoot)??null:null,now:z,onOpen:()=>{x.current||I(a.id)},onStart:()=>void ao(()=>(0,se.oQ)(a.id,a.projectRoot,"start")),onCancel:()=>{Q(a),S(!0)},onRetry:()=>{U(a),X("retry"),Z(!0)},onRequeue:()=>{U(a),X("requeue"),Z(!0)},onViewSession:()=>ap(a),onMerge:()=>{ur(a)?(_(a),ab(!0)):aq(a)},onArchive:()=>void ao(()=>(0,se.et)(a.id,a.projectRoot,null==a.archivedAt)),onEdit:()=>{E(a),C(!0)}},a.id);return(0,L.jsxs)("div",{ref:"inProgress"===a?t:void 0,style:{display:"flex",flexDirection:"column",minHeight:0,gap:8},children:[(0,L.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8,height:24,flexShrink:0,padding:"0 2px"},children:[(0,L.jsx)("span",{style:{width:3,height:14,borderRadius:999,background:d.marker,flexShrink:0},"aria-hidden":"true"}),(0,L.jsx)("h2",{style:{fontSize:12,fontWeight:600,color:"var(--text)"},children:b(`tasks.col${a[0].toUpperCase()}${a.slice(1)}`)}),(0,L.jsx)("span",{style:{borderRadius:999,background:"var(--bg-hover)",padding:"1px 8px",fontSize:10,fontWeight:600,color:"var(--text-muted)"},children:c.length}),(0,L.jsx)("div",{style:{flex:1}}),"done"===a&&aj.done.some(a=>null==a.archivedAt)?(0,L.jsx)("button",{type:"button",onClick:ax,style:{background:"none",border:"none",cursor:"pointer",fontSize:11,color:"var(--text-muted)",padding:"2px 6px",borderRadius:6},children:b("tasks.archiveAllDone")}):null]}),0===c.length?(0,L.jsx)("div",{style:{flex:1,display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",gap:4,borderRadius:12,border:"1px dashed var(--border)",padding:16,textAlign:"center",..."inProgress"===a&&m?o?{borderColor:"var(--accent)",background:"rgba(37,99,235,0.08)"}:{borderColor:"var(--accent)"}:{}},children:(0,L.jsx)("p",{style:{fontSize:12,color:"var(--text-muted)"},children:b(`tasks.emptyCol${a[0].toUpperCase()}${a.slice(1)}`)})}):(0,L.jsx)("div",{style:{flex:1,minHeight:0,overflowY:"auto",borderRadius:12,transition:"background 0.15s, box-shadow 0.15s",..."inProgress"===a&&m?o?{background:"rgba(37,99,235,0.06)",boxShadow:"inset 0 0 0 2px var(--accent)"}:{boxShadow:"inset 0 0 0 1px rgba(37,99,235,0.25)"}:{}},children:(0,L.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:16,paddingBottom:4},children:c.map(b=>"todo"===a?(0,L.jsx)("div",{draggable:!0,onDragStart:a=>{var c,d;a.dataTransfer.effectAllowed="move",c=a.clientX,d=a.clientY,x.current=!0,y.current=!1,r.current={x:c,y:d},n({task:b,width:q.current?.width??280})},onDrag:a=>{var b,c;let d,e;return r.current={x:b=a.clientX,y:c=a.clientY},as(b,c),void((e=null!=(d=t.current?.getBoundingClientRect())&&b>=d.left&&b<=d.right&&c>=d.top&&c<=d.bottom)!==o&&p(e))},onDragEnd:a=>av(b,a.clientX,a.clientY),onPointerDown:at,style:{cursor:"grab",opacity:m?.task.id===b.id?.4:1},children:e(b)},b.id):(0,L.jsx)("div",{children:e(b)},b.id))})})]},a)})})}):(0,L.jsxs)("div",{style:{flex:1,display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",gap:12,padding:32,textAlign:"center"},children:[(0,L.jsx)(b4,{size:40,color:"var(--text-dim)",opacity:.4,"aria-hidden":"true"}),(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:4},children:[(0,L.jsx)("p",{style:{fontSize:14,fontWeight:500,color:"var(--text)"},children:b("tasks.empty")}),(0,L.jsx)("p",{style:{maxWidth:320,fontSize:12,color:"var(--text-muted)",lineHeight:1.6},children:b("tasks.emptyHint")})]}),(0,L.jsxs)("button",{type:"button",onClick:ar,style:{display:"inline-flex",alignItems:"center",gap:6,padding:"7px 14px",borderRadius:8,background:"var(--accent)",color:"var(--accent-fg)",border:"none",fontSize:12,fontWeight:600,cursor:"pointer"},children:[(0,L.jsx)(ak,{size:13,weight:"bold","aria-hidden":"true"}),b("tasks.new")]})]}),(0,L.jsx)(uN,{open:B,onOpenChange:C,task:D,defaultProject:F?.projectRoot??g??a??null,projects:aA,prefillTitle:F?F.text.slice(0,80):void 0,prefillPrompt:F?F.text:void 0,onSubmit:async(a,b,d)=>{await ao(async()=>{let{createTaskApi:e}=await Promise.resolve().then(c.bind(c,85596)),{updateTaskApi:f}=await Promise.resolve().then(c.bind(c,85596));D?await f(D.id,a,{title:b,config:d}):await e({projectRoot:a,title:b,config:d})}),C(!1),G(null)}}),(0,L.jsx)(uK,{open:null!=H,onOpenChange:a=>{a||I(null)},task:am,onViewSession:ap,onMerge:aq,onEdit:a=>{E(a),C(!0)},onCancel:a=>{Q(a),S(!0)},onRetry:a=>{U(a),X("retry"),Z(!0)},onRequeue:a=>{U(a),X("requeue"),Z(!0)},onComplete:a=>{_(a),ab(!0)}}),(0,L.jsx)(uO,{open:N,onOpenChange:O,task:J}),(0,L.jsx)(uE,{open:R,onOpenChange:S,task:P}),(0,L.jsx)(uP,{open:Y,onOpenChange:Z,task:T,kind:V}),(0,L.jsx)(uF,{open:aa,onOpenChange:ab,task:$}),(0,L.jsx)(uS,{open:ag&&null!=an,onOpenChange:ah,task:an}),(0,L.jsx)(uR,{open:ac,onOpenChange:ad,projectRoot:g}),m?(0,W.createPortal)((0,L.jsx)("div",{ref:s,style:{position:"fixed",left:0,top:0,zIndex:999,pointerEvents:"none",width:m.width,willChange:"transform"},"aria-hidden":"true",children:(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:8,borderRadius:12,border:o?"1px solid var(--accent)":"1px solid var(--border)",background:"var(--bg-panel)",padding:12,boxShadow:"0 8px 24px rgba(0,0,0,0.2)",transform:"rotate(-1deg)"},children:[(0,L.jsxs)("div",{style:{display:"flex",alignItems:"flex-start",justifyContent:"space-between",gap:8},children:[(0,L.jsx)("span",{style:{minWidth:0,overflowWrap:"break-word",fontSize:13,fontWeight:500},children:m.task.title}),(0,L.jsx)(uB,{task:m.task})]}),o?(0,L.jsxs)("span",{style:{display:"inline-flex",alignItems:"center",gap:4,fontSize:11,fontWeight:600,color:"var(--accent)"},children:[(0,L.jsx)(up,{size:11,weight:"bold","aria-hidden":"true"}),b("tasks.dropToStart")]}):null]})}),document.body):null]})}let uX=new Map([["bold",M.createElement(M.Fragment,null,M.createElement("path",{d:"M216,36H40A20,20,0,0,0,20,56V200a20,20,0,0,0,20,20H216a20,20,0,0,0,20-20V56A20,20,0,0,0,216,36ZM44,60H76V196H44ZM212,196H100V60H212Z"}))],["duotone",M.createElement(M.Fragment,null,M.createElement("path",{d:"M88,48V208H40a8,8,0,0,1-8-8V56a8,8,0,0,1,8-8Z",opacity:"0.2"}),M.createElement("path",{d:"M216,40H40A16,16,0,0,0,24,56V200a16,16,0,0,0,16,16H216a16,16,0,0,0,16-16V56A16,16,0,0,0,216,40ZM40,56H80V200H40ZM216,200H96V56H216V200Z"}))],["fill",M.createElement(M.Fragment,null,M.createElement("path",{d:"M216,40H40A16,16,0,0,0,24,56V200a16,16,0,0,0,16,16H216a16,16,0,0,0,16-16V56A16,16,0,0,0,216,40Zm0,160H88V56H216V200Z"}))],["light",M.createElement(M.Fragment,null,M.createElement("path",{d:"M216,42H40A14,14,0,0,0,26,56V200a14,14,0,0,0,14,14H216a14,14,0,0,0,14-14V56A14,14,0,0,0,216,42ZM38,200V56a2,2,0,0,1,2-2H82V202H40A2,2,0,0,1,38,200Zm180,0a2,2,0,0,1-2,2H94V54H216a2,2,0,0,1,2,2Z"}))],["regular",M.createElement(M.Fragment,null,M.createElement("path",{d:"M216,40H40A16,16,0,0,0,24,56V200a16,16,0,0,0,16,16H216a16,16,0,0,0,16-16V56A16,16,0,0,0,216,40ZM40,56H80V200H40ZM216,200H96V56H216V200Z"}))],["thin",M.createElement(M.Fragment,null,M.createElement("path",{d:"M216,44H40A12,12,0,0,0,28,56V200a12,12,0,0,0,12,12H216a12,12,0,0,0,12-12V56A12,12,0,0,0,216,44ZM36,200V56a4,4,0,0,1,4-4H84V204H40A4,4,0,0,1,36,200Zm184,0a4,4,0,0,1-4,4H92V52H216a4,4,0,0,1,4,4Z"}))]]),uY=M.forwardRef((a,b)=>M.createElement(P,{ref:b,...a,weights:uX}));uY.displayName="SidebarSimpleIcon";let uZ=new Map([["bold",M.createElement(M.Fragment,null,M.createElement("path",{d:"M228,48V96a12,12,0,0,1-12,12H168a12,12,0,0,1,0-24h19l-7.8-7.8a75.55,75.55,0,0,0-53.32-22.26h-.43A75.49,75.49,0,0,0,72.39,75.57,12,12,0,1,1,55.61,58.41a99.38,99.38,0,0,1,69.87-28.47H126A99.42,99.42,0,0,1,196.2,59.23L204,67V48a12,12,0,0,1,24,0ZM183.61,180.43a75.49,75.49,0,0,1-53.09,21.63h-.43A75.55,75.55,0,0,1,76.77,179.8L69,172H88a12,12,0,0,0,0-24H40a12,12,0,0,0-12,12v48a12,12,0,0,0,24,0V189l7.8,7.8A99.42,99.42,0,0,0,130,226.06h.56a99.38,99.38,0,0,0,69.87-28.47,12,12,0,0,0-16.78-17.16Z"}))],["duotone",M.createElement(M.Fragment,null,M.createElement("path",{d:"M216,128a88,88,0,1,1-88-88A88,88,0,0,1,216,128Z",opacity:"0.2"}),M.createElement("path",{d:"M224,48V96a8,8,0,0,1-8,8H168a8,8,0,0,1,0-16h28.69L182.06,73.37a79.56,79.56,0,0,0-56.13-23.43h-.45A79.52,79.52,0,0,0,69.59,72.71,8,8,0,0,1,58.41,61.27a96,96,0,0,1,135,.79L208,76.69V48a8,8,0,0,1,16,0ZM186.41,183.29a80,80,0,0,1-112.47-.66L59.31,168H88a8,8,0,0,0,0-16H40a8,8,0,0,0-8,8v48a8,8,0,0,0,16,0V179.31l14.63,14.63A95.43,95.43,0,0,0,130,222.06h.53a95.36,95.36,0,0,0,67.07-27.33,8,8,0,0,0-11.18-11.44Z"}))],["fill",M.createElement(M.Fragment,null,M.createElement("path",{d:"M224,48V96a8,8,0,0,1-8,8H168a8,8,0,0,1-5.66-13.66L180.65,72a79.48,79.48,0,0,0-54.72-22.09h-.45A79.52,79.52,0,0,0,69.59,72.71,8,8,0,0,1,58.41,61.27,96,96,0,0,1,192,60.7l18.36-18.36A8,8,0,0,1,224,48ZM186.41,183.29A80,80,0,0,1,75.35,184l18.31-18.31A8,8,0,0,0,88,152H40a8,8,0,0,0-8,8v48a8,8,0,0,0,13.66,5.66L64,195.3a95.42,95.42,0,0,0,66,26.76h.53a95.36,95.36,0,0,0,67.07-27.33,8,8,0,0,0-11.18-11.44Z"}))],["light",M.createElement(M.Fragment,null,M.createElement("path",{d:"M222,48V96a6,6,0,0,1-6,6H168a6,6,0,0,1,0-12h33.52L183.47,72a81.51,81.51,0,0,0-57.53-24h-.46A81.5,81.5,0,0,0,68.19,71.28a6,6,0,1,1-8.38-8.58,93.38,93.38,0,0,1,65.67-26.76H126a93.45,93.45,0,0,1,66,27.53l18,18V48a6,6,0,0,1,12,0ZM187.81,184.72a81.5,81.5,0,0,1-57.29,23.34h-.46a81.51,81.51,0,0,1-57.53-24L54.48,166H88a6,6,0,0,0,0-12H40a6,6,0,0,0-6,6v48a6,6,0,0,0,12,0V174.48l18,18.05a93.45,93.45,0,0,0,66,27.53h.52a93.38,93.38,0,0,0,65.67-26.76,6,6,0,1,0-8.38-8.58Z"}))],["regular",M.createElement(M.Fragment,null,M.createElement("path",{d:"M224,48V96a8,8,0,0,1-8,8H168a8,8,0,0,1,0-16h28.69L182.06,73.37a79.56,79.56,0,0,0-56.13-23.43h-.45A79.52,79.52,0,0,0,69.59,72.71,8,8,0,0,1,58.41,61.27a96,96,0,0,1,135,.79L208,76.69V48a8,8,0,0,1,16,0ZM186.41,183.29a80,80,0,0,1-112.47-.66L59.31,168H88a8,8,0,0,0,0-16H40a8,8,0,0,0-8,8v48a8,8,0,0,0,16,0V179.31l14.63,14.63A95.43,95.43,0,0,0,130,222.06h.53a95.36,95.36,0,0,0,67.07-27.33,8,8,0,0,0-11.18-11.44Z"}))],["thin",M.createElement(M.Fragment,null,M.createElement("path",{d:"M220,48V96a4,4,0,0,1-4,4H168a4,4,0,0,1,0-8h38.34L184.89,70.54A84,84,0,0,0,66.8,69.85a4,4,0,1,1-5.6-5.72,92,92,0,0,1,129.34.76L212,86.34V48a4,4,0,0,1,8,0ZM189.2,186.15a83.44,83.44,0,0,1-58.68,23.91h-.47a83.52,83.52,0,0,1-58.94-24.6L49.66,164H88a4,4,0,0,0,0-8H40a4,4,0,0,0-4,4v48a4,4,0,0,0,8,0V169.66l21.46,21.45A91.43,91.43,0,0,0,130,218.06h.51a91.45,91.45,0,0,0,64.28-26.19,4,4,0,1,0-5.6-5.72Z"}))]]),u$=M.forwardRef((a,b)=>M.createElement(P,{ref:b,...a,weights:uZ}));u$.displayName="ArrowsClockwiseIcon";let u_=null;async function u0(a){let b=await (!u_&&(u_=c.e(1399).then(c.bind(c,91399)).then(a=>a.getCurrentWindow())),u_);await a(b)}async function u1(){await u0(a=>a.minimize())}async function u2(){await u0(a=>a.toggleMaximize())}async function u3(){await u0(a=>a.startDragging())}async function u4(){await u0(a=>a.close())}function u5(){let[a,b]=(0,M.useState)(null);return{platform:a,isDesktop:null!==a,isMacOS:"macos"===a,dragRegionProps:a?{"data-tauri-drag-region":!0}:{}}}let u6={display:"flex",alignItems:"center",justifyContent:"center",width:26,height:26,padding:0,flexShrink:0,background:"none",border:"none",color:"var(--text-muted)",cursor:"pointer",borderRadius:7,transition:"background 0.12s, color 0.12s"};function u7({onRefreshSession:a}={}){let{t:b}=(0,bb.s)(),{isDark:c}=bT(),{isDesktop:d,isMacOS:e}=u5(),[f,g]=(0,M.useState)(!1),[h,i]=(0,M.useState)(null),[j,k]=(0,M.useState)(null),l=(0,M.useRef)(null),m=(0,M.useRef)(null),n=(0,M.useCallback)(a=>{a().catch(a=>{console.error("[DynamicIsland] window command failed:",a),i(String(a)),window.setTimeout(()=>i(null),4e3)})},[]),o=(0,M.useCallback)(()=>{window.location.reload()},[]),[p,q]=(0,M.useState)(0),r=(0,M.useCallback)(a=>{if(0!==a.button||a.target.closest?.("[data-island-btn]"))return;let b=l.current;if(!b)return;let c=b.getBoundingClientRect();m.current={startX:a.clientX,startY:a.clientY,origX:c.left,origY:c.top},a.currentTarget.setPointerCapture(a.pointerId)},[]),s=(0,M.useCallback)(a=>{var b,c;let d=m.current;if(!d)return;let e=a.clientX-d.startX,f=a.clientY-d.startY;k((b=d.origX+e,c=d.origY+f,{x:Math.min(Math.max(0,b),Math.max(0,window.innerWidth-168)),y:Math.min(Math.max(0,c),Math.max(0,window.innerHeight-34))}))},[]),t=(0,M.useCallback)(a=>{m.current=null;try{a.currentTarget.releasePointerCapture(a.pointerId)}catch{}},[]),u=(0,M.useCallback)(()=>u2().then(()=>{g(a=>!a)}),[]),v=(0,M.useCallback)(a=>{if(!m.current&&!a.target.closest?.("[data-island-btn]")){k(null);try{localStorage.removeItem("pi-web-island-pos")}catch{}}},[]);if(!(d&&!e))return null;let w=p||window.innerWidth,x=null!==j?j.x:Math.max(0,w-168-14);return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsxs)("div",{ref:l,role:"toolbar","aria-label":b("desktop.islandLabel"),title:b("desktop.islandResetHint"),onPointerDown:r,onPointerMove:s,onPointerUp:t,onPointerCancel:t,onDoubleClick:v,onMouseDown:a=>a.stopPropagation(),onDoubleClickCapture:a=>a.stopPropagation(),style:{position:"fixed",top:null!==j?j.y:100,left:x,zIndex:700,display:"flex",alignItems:"center",gap:1,padding:"3px 5px",borderRadius:999,background:"color-mix(in srgb, var(--bg-panel) 88%, transparent)",border:"1px solid var(--border)",boxShadow:c?"0 6px 24px rgba(0,0,0,0.45)":"0 6px 20px rgba(0,0,0,0.12)",cursor:"grab",userSelect:"none",touchAction:"none"},children:[(0,L.jsx)("span",{"data-island-grip":!0,"aria-hidden":"true",title:b("desktop.islandDrag"),style:{display:"flex",alignItems:"center",justifyContent:"center",width:12,height:26,flexShrink:0,marginRight:2,color:"var(--text-dim)",cursor:"grab"},children:(0,L.jsxs)("svg",{width:"6",height:"14",viewBox:"0 0 6 14",fill:"currentColor","aria-hidden":"true",children:[(0,L.jsx)("circle",{cx:"1.5",cy:"2",r:"1.2"}),(0,L.jsx)("circle",{cx:"4.5",cy:"2",r:"1.2"}),(0,L.jsx)("circle",{cx:"1.5",cy:"7",r:"1.2"}),(0,L.jsx)("circle",{cx:"4.5",cy:"7",r:"1.2"}),(0,L.jsx)("circle",{cx:"1.5",cy:"12",r:"1.2"}),(0,L.jsx)("circle",{cx:"4.5",cy:"12",r:"1.2"})]})}),a&&(0,L.jsx)("button",{type:"button","data-island-btn":!0,"aria-label":b("desktop.refreshSession"),title:b("desktop.refreshSession"),onClick:()=>{try{a()}catch(a){console.error("[DynamicIsland] refresh session failed:",a)}},style:u6,onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-hover)",a.currentTarget.style.color="var(--text)"},onMouseLeave:a=>{a.currentTarget.style.background="none",a.currentTarget.style.color="var(--text-muted)"},children:(0,L.jsx)(u$,{size:13,"aria-hidden":"true"})}),(0,L.jsx)("button",{type:"button","data-island-btn":!0,"aria-label":b("desktop.reloadPage"),title:b("desktop.reloadPage"),onClick:o,style:u6,onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-hover)",a.currentTarget.style.color="var(--text)"},onMouseLeave:a=>{a.currentTarget.style.background="none",a.currentTarget.style.color="var(--text-muted)"},children:(0,L.jsx)(aw,{size:13,"aria-hidden":"true"})}),(0,L.jsx)("span",{"aria-hidden":"true",style:{width:1,height:18,flexShrink:0,background:"var(--border)",margin:"0 3px"}}),(0,L.jsx)("button",{type:"button","data-island-btn":!0,"aria-label":b("desktop.minimize"),title:b("desktop.minimize"),onClick:()=>n(u1),style:u6,onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-hover)",a.currentTarget.style.color="var(--text)"},onMouseLeave:a=>{a.currentTarget.style.background="none",a.currentTarget.style.color="var(--text-muted)"},children:(0,L.jsx)("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",stroke:"currentColor",strokeWidth:"1",children:(0,L.jsx)("line",{x1:"1",y1:"5",x2:"9",y2:"5"})})}),(0,L.jsx)("button",{type:"button","data-island-btn":!0,"aria-label":b(f?"desktop.restore":"desktop.maximize"),title:b(f?"desktop.restore":"desktop.maximize"),onClick:()=>n(u),style:u6,onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-hover)",a.currentTarget.style.color="var(--text)"},onMouseLeave:a=>{a.currentTarget.style.background="none",a.currentTarget.style.color="var(--text-muted)"},children:f?(0,L.jsxs)("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",stroke:"currentColor",strokeWidth:"1",children:[(0,L.jsx)("rect",{x:"2",y:"0.5",width:"7.5",height:"7.5"}),(0,L.jsx)("path",{d:"M0.5 2.5 V9.5 H7.5"})]}):(0,L.jsx)("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",stroke:"currentColor",strokeWidth:"1",children:(0,L.jsx)("rect",{x:"0.5",y:"0.5",width:"9",height:"9"})})}),(0,L.jsx)("button",{type:"button","data-island-btn":!0,"aria-label":b("desktop.close"),title:b("desktop.close"),onClick:()=>n(u4),style:u6,onMouseEnter:a=>{a.currentTarget.style.background="#e81123",a.currentTarget.style.color="#fff"},onMouseLeave:a=>{a.currentTarget.style.background="none",a.currentTarget.style.color="var(--text-muted)"},children:(0,L.jsxs)("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",stroke:"currentColor",strokeWidth:"1",children:[(0,L.jsx)("line",{x1:"0",y1:"0",x2:"10",y2:"10"}),(0,L.jsx)("line",{x1:"10",y1:"0",x2:"0",y2:"10"})]})})]}),h&&(0,L.jsx)("div",{role:"alert",style:{position:"fixed",top:(null!==j?j.y:100)+34+6,left:x,zIndex:700,maxWidth:280,padding:"5px 10px",borderRadius:8,background:"var(--bg-panel)",border:"1px solid var(--status-error, #f85149)",color:"var(--status-error, #f85149)",fontSize:11,lineHeight:1.5,wordBreak:"break-all",boxShadow:c?"0 6px 24px rgba(0,0,0,0.45)":"0 6px 20px rgba(0,0,0,0.12)",pointerEvents:"none"},children:h})]})}function u8(a=null){if(a)try{a.setItem("pi-web:desktop-server-hint-seen","1")}catch{}}function u9(){let{t:a}=(0,bb.s)(),[b,c]=(0,M.useState)(!1),d=(0,M.useCallback)(()=>{u8(),c(!1)},[]),e=(0,M.useCallback)(()=>{u8(),c(!1),window.location.href="piweb-switch://manage"},[]);return b?(0,L.jsxs)("div",{role:"status",style:{position:"fixed",top:56,right:16,zIndex:700,width:288,padding:"14px 16px 14px",borderRadius:12,background:"var(--bg-panel)",border:"1px solid var(--border)",boxShadow:"0 12px 36px rgba(0,0,0,0.32)",color:"var(--text)"},children:[(0,L.jsx)("span",{"aria-hidden":"true",style:{position:"absolute",top:-6,right:28,width:10,height:10,background:"var(--bg-panel)",borderTop:"1px solid var(--border)",borderLeft:"1px solid var(--border)",transform:"rotate(45deg)"}}),(0,L.jsxs)("div",{style:{display:"flex",alignItems:"flex-start",gap:10},children:[(0,L.jsx)(aM,{size:18,color:"var(--accent)",style:{flexShrink:0,marginTop:1}}),(0,L.jsxs)("div",{style:{minWidth:0,flex:1},children:[(0,L.jsx)("div",{style:{fontSize:13.5,fontWeight:600,lineHeight:1.45},children:a("desktop.serverHintTitle")}),(0,L.jsx)("p",{style:{margin:"6px 0 0",fontSize:12.5,lineHeight:1.65,color:"var(--text-muted)"},children:a("desktop.serverHintBody")})]}),(0,L.jsx)("button",{type:"button",onClick:d,"aria-label":a("desktop.serverHintDismiss"),title:a("desktop.serverHintDismiss"),style:{display:"flex",alignItems:"center",justifyContent:"center",width:22,height:22,padding:0,flexShrink:0,background:"none",border:"none",cursor:"pointer",color:"var(--text-dim)"},children:(0,L.jsx)($,{size:14,"aria-hidden":"true"})})]}),(0,L.jsx)("button",{type:"button",onClick:e,style:{marginTop:12,width:"100%",display:"flex",alignItems:"center",justifyContent:"center",gap:6,padding:"8px 12px",borderRadius:9,background:"var(--accent)",border:"none",color:"var(--accent-fg)",fontSize:13,fontWeight:600,cursor:"pointer"},children:a("desktop.serverHintAction")})]}):null}function va({isDark:a,toggleTheme:b,translate:c}){let[d,e]=(0,M.useState)(!1),f=c(d?a?"desktop.switchToLight":"desktop.switchToDark":"desktop.switchToLight");return(0,L.jsx)("button",{className:"app-no-drag",suppressHydrationWarning:!0,onClick:a=>{let c=a.currentTarget.getBoundingClientRect();b({x:c.left+c.width/2,y:c.top+c.height/2})},title:f,"aria-label":f,"aria-pressed":!d||a,style:{display:"flex",alignItems:"center",justifyContent:"center",width:36,height:36,padding:0,background:"none",border:"none",color:"var(--text-muted)",cursor:"pointer",flexShrink:0,transition:"background 0.12s, color 0.12s"},onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-hover)",a.currentTarget.style.color="var(--text)"},onMouseLeave:a=>{a.currentTarget.style.background="none",a.currentTarget.style.color="var(--text-muted)"},children:d?a?(0,L.jsx)(bw,{size:16,"aria-hidden":"true"}):(0,L.jsx)(bu,{size:16,"aria-hidden":"true"}):(0,L.jsx)(bw,{size:16,"aria-hidden":"true"})})}function vb({topBarRef:a,sidebarOpen:b,onSidebarToggle:c,isDark:d,toggleTheme:e,isMobile:f,showTasks:g,tasksBoardEnabled:h,onToggleTasks:i,systemPrompt:j,activeTopPanel:k,topPanelPos:l,sessionStats:m,selectedSession:n,contextUsage:o,copiedSessionField:p,onCopySessionField:q,rightPanelOpen:r,onToggleFilePanel:s,onRefreshSession:t,onOpenSettings:u,sessionTitle:v,onWorkspaceControlsHostChange:w,onTitleRightHostChange:x,desktopChrome:y,windowDrag:z}){let A,B,C,D,E,F,G,H,I,J,K,{t:N}=(0,bb.s)(),[O,P]=(0,M.useState)(!1),[Q,R]=(0,M.useState)(!1);return(0,L.jsxs)(L.Fragment,{children:[Q&&(0,L.jsx)(u9,{}),(0,L.jsxs)("div",{ref:a,className:"app-title-bar",...y?.dragRegionProps,...z,style:{display:"flex",alignItems:"center",flexShrink:0,borderBottom:"1px solid var(--border)",height:48,background:"var(--bg-panel)",position:"relative",zIndex:600,paddingLeft:76*!!y?.isMacOS},children:[(0,L.jsxs)("div",{style:{display:"flex",alignItems:"center",minWidth:0,height:"100%",flex:"0 1 auto",position:"relative",zIndex:1},children:[(0,L.jsx)("button",{className:"app-no-drag",onClick:c,title:b?N("desktop.hideSidebar"):N("desktop.showSidebar"),"aria-label":b?N("desktop.hideSidebar"):N("desktop.showSidebar"),style:{display:"flex",alignItems:"center",justifyContent:"center",width:36,height:36,padding:0,flexShrink:0,background:"none",border:"none",color:"var(--text-muted)",cursor:"pointer",transition:"color 0.12s"},onMouseEnter:a=>{a.currentTarget.style.color="var(--text)"},onMouseLeave:a=>{a.currentTarget.style.color="var(--text-muted)"},children:b?(0,L.jsx)(uY,{size:16,"aria-hidden":"true"}):(0,L.jsx)(aq,{size:16,"aria-hidden":"true"})}),(0,L.jsx)("div",{className:"app-no-drag",ref:w,style:{flex:"0 1 auto",minWidth:0,maxWidth:"min(60vw, 820px)",height:"100%",display:"flex",alignItems:"center",padding:"0 8px 0 0",overflow:"visible"}})]}),(0,L.jsxs)("div",{className:"app-title-drag",style:{...f?{position:"relative",flex:"1 1 auto",minWidth:0}:{position:"absolute",left:"var(--pi-titlebar-sidebar-offset, 0px)",right:0,top:0,bottom:0},display:"flex",alignItems:"center",justifyContent:f?"flex-start":"center",padding:f?"0 8px 0 4px":"0 12px",overflow:"hidden",userSelect:"none"},children:[v&&(0,L.jsx)("button",{type:"button",className:"app-no-drag",onClick:()=>{f&&P(!0)},style:{display:"block",flex:"0 1 auto",minWidth:0,maxWidth:f?"100%":"calc(100% - 320px)",fontSize:12,fontWeight:500,color:"var(--text-muted)",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",background:"none",border:"none",cursor:"pointer",padding:"2px 6px",borderRadius:5},onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-hover)"},onMouseLeave:a=>{a.currentTarget.style.background="none"},children:v}),(0,L.jsx)("div",{className:"app-no-drag",ref:x,style:{flexShrink:0,display:"flex",alignItems:"center",marginLeft:4}})]}),(0,L.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"flex-end",gap:3,minWidth:0,height:"100%",flexShrink:+!f,overflow:"hidden",marginLeft:"auto",position:"relative",zIndex:1},children:[!f&&h&&(0,L.jsx)("button",{className:"app-no-drag",onClick:i,title:g?N("desktop.hideTaskBoard"):N("desktop.showTaskBoard"),"aria-label":g?N("desktop.hideTaskBoard"):N("desktop.showTaskBoard"),style:{display:"flex",alignItems:"center",justifyContent:"center",width:36,height:36,padding:0,background:g?"var(--bg-selected)":"none",border:"none",color:g?"var(--text)":"var(--text-muted)",cursor:"pointer",flexShrink:0,transition:"background 0.12s, color 0.12s"},onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-hover)",a.currentTarget.style.color="var(--text)"},onMouseLeave:a=>{a.currentTarget.style.background=g?"var(--bg-selected)":"none",a.currentTarget.style.color=g?"var(--text)":"var(--text-muted)"},children:(0,L.jsx)(b4,{size:16,"aria-hidden":"true"})}),(0,L.jsx)("button",{className:"app-no-drag",onClick:s,title:r?N("desktop.hideFilePanel"):N("desktop.showFilePanel"),"aria-label":r?N("desktop.hideFilePanel"):N("desktop.showFilePanel"),style:{display:"flex",alignItems:"center",justifyContent:"center",width:36,height:36,padding:0,background:r?"var(--bg-selected)":"none",border:"none",color:r?"var(--text)":"var(--text-muted)",cursor:"pointer",flexShrink:0,transition:"background 0.12s, color 0.12s"},onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-hover)",a.currentTarget.style.color="var(--text)"},onMouseLeave:a=>{a.currentTarget.style.background=r?"var(--bg-selected)":"none",a.currentTarget.style.color=r?"var(--text)":"var(--text-muted)"},children:(0,L.jsx)(uY,{size:16,"aria-hidden":"true",style:{transform:"scaleX(-1)"}})}),(0,L.jsx)(va,{isDark:d,toggleTheme:e,translate:N}),Q&&(0,L.jsx)("button",{className:"app-no-drag",type:"button",onClick:()=>{window.location.href="piweb-switch://manage"},title:N("desktop.serverSwitch"),"aria-label":N("desktop.serverSwitch"),style:{display:"flex",alignItems:"center",justifyContent:"center",width:36,height:36,padding:0,background:"none",border:"none",color:"var(--text-muted)",cursor:"pointer",flexShrink:0,transition:"background 0.12s, color 0.12s"},onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-hover)",a.currentTarget.style.color="var(--text)"},onMouseLeave:a=>{a.currentTarget.style.background="none",a.currentTarget.style.color="var(--text-muted)"},children:(0,L.jsx)(aM,{size:16,"aria-hidden":"true"})}),!Q&&!f&&(0,L.jsx)("button",{className:"app-no-drag",type:"button",onClick:t,title:N("desktop.refreshSession"),"aria-label":N("desktop.refreshSession"),style:{display:"flex",alignItems:"center",justifyContent:"center",width:36,height:36,padding:0,background:"none",border:"none",color:"var(--text-muted)",cursor:"pointer",flexShrink:0,transition:"background 0.12s, color 0.12s"},onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-hover)",a.currentTarget.style.color="var(--text)"},onMouseLeave:a=>{a.currentTarget.style.background="none",a.currentTarget.style.color="var(--text-muted)"},children:(0,L.jsx)(aw,{size:16,"aria-hidden":"true"})}),(0,L.jsx)("button",{className:"app-no-drag",type:"button",onClick:u,title:N("desktop.settings"),"aria-label":N("desktop.settings"),style:{display:"flex",alignItems:"center",justifyContent:"center",width:36,height:36,padding:0,background:"none",border:"none",color:"var(--text-muted)",cursor:"pointer",flexShrink:0,transition:"background 0.12s, color 0.12s"},onMouseEnter:a=>{a.currentTarget.style.background="var(--bg-hover)",a.currentTarget.style.color="var(--text)"},onMouseLeave:a=>{a.currentTarget.style.background="none",a.currentTarget.style.color="var(--text-muted)"},children:(0,L.jsx)(ul,{size:16,"aria-hidden":"true"})})]})]}),(0,L.jsx)(u7,{onRefreshSession:t}),k&&l&&(0,L.jsxs)("div",{style:{position:"fixed",top:l.top,left:l.left,width:l.width,maxHeight:`calc(100dvh - ${l.top}px)`,overflowY:"auto",zIndex:500},children:["system"===k&&(0,L.jsx)("div",{style:{background:"var(--bg-panel)",borderBottom:"1px solid var(--border)"},children:j?(0,L.jsx)("div",{style:{maxHeight:"min(600px, 75vh)",overflowY:"auto",padding:"12px 16px",color:"var(--text-muted)",fontSize:12,lineHeight:1.6,whiteSpace:"pre-wrap",fontFamily:"var(--font-mono)"},children:j}):""===j?(0,L.jsx)("div",{style:{padding:"10px 16px",fontSize:12,color:"var(--text-muted)",fontStyle:"italic"},children:"System prompt is empty (tools are disabled)"}):(0,L.jsx)("div",{style:{padding:"10px 16px",fontSize:12,color:"var(--text-muted)",fontStyle:"italic"},children:"Send a message to load the system prompt"})}),"session"===k&&(0,L.jsx)("div",{style:{background:"var(--bg-panel)",borderBottom:"1px solid var(--border)",boxShadow:"0 10px 28px rgba(0,0,0,0.10)",padding:"12px 16px"},children:m?(A=[...m.sessionName?[{label:N("desktop.name"),value:m.sessionName,copyField:null}]:[],{label:N("desktop.sessionInfoFile"),value:m.sessionFile??N("desktop.sessionInfoInMemory"),copyField:"file"},{label:N("desktop.sessionInfoId"),value:m.sessionId,copyField:"id"}],B=[[N("desktop.sessionInfoUser"),m.userMessages.toLocaleString()],[N("desktop.sessionInfoAssistant"),m.assistantMessages.toLocaleString()],[N("desktop.sessionInfoToolCalls"),m.toolCalls.toLocaleString()],[N("desktop.sessionInfoToolResults"),m.toolResults.toLocaleString()],[N("desktop.sessionInfoTotal"),m.totalMessages.toLocaleString()]],C=[[N("desktop.sessionInfoInput"),m.tokens.input.toLocaleString()],[N("desktop.sessionInfoOutput"),m.tokens.output.toLocaleString()],...m.tokens.cacheRead>0?[[N("desktop.sessionInfoCacheRead"),m.tokens.cacheRead.toLocaleString()]]:[],...m.tokens.cacheWrite>0?[[N("desktop.sessionInfoCacheWrite"),m.tokens.cacheWrite.toLocaleString()]]:[],[N("desktop.sessionInfoTotal"),m.tokens.total.toLocaleString()]],D=o??m.contextUsage,F=[...m.cost>0?[[N("desktop.sessionInfoCost"),`$${m.cost.toFixed(4)}`]]:[],...D?.contextWindow?[[N("desktop.sessionInfoContext"),`${null!==D.percent?`${D.percent.toFixed(1)}%`:"?"} / ${(E=D.contextWindow)>=1e6?`${(E/1e6).toFixed(1)}M`:E>=1e3?`${(E/1e3).toFixed(0)}k`:String(E)}`]]:[]],G=(a,b,c="left",d=!1)=>(0,L.jsxs)("div",{style:{minWidth:0},children:[(0,L.jsx)("div",{style:{fontSize:11,fontWeight:700,color:"var(--text)",marginBottom:6},children:a}),(0,L.jsx)("div",{style:{display:"grid",gridTemplateColumns:d?"max-content max-content":"auto minmax(0, 1fr)",columnGap:d?14:12,rowGap:4,justifyContent:d?"start":void 0},children:b.map(([b,e])=>(0,L.jsxs)("div",{style:{display:"contents"},children:[(0,L.jsx)("div",{style:{color:"var(--text-dim)",whiteSpace:"nowrap"},children:b}),(0,L.jsx)("div",{style:{color:"var(--text-muted)",minWidth:0,overflowWrap:d?"normal":"anywhere",textAlign:c,whiteSpace:"right"===c?"nowrap":"normal"},children:e})]},`${a}:${b}`))})]}),H=(a,b)=>{let c=p===a;return(0,L.jsx)("button",{type:"button",title:c?N("desktop.copied"):N({file:"desktop.copyFilePath",id:"desktop.copySessionId",projectDir:"desktop.copyProjectDir",gitBranch:"desktop.copyGitBranch",gitWorktree:"desktop.copyGitWorktree"}[a]),onClick:()=>q(a,b),style:{alignSelf:"start",display:"inline-flex",alignItems:"center",justifyContent:"center",width:22,height:22,marginTop:-2,color:c?"var(--accent)":"var(--text-dim)",background:"transparent",border:"1px solid var(--border)",borderRadius:4,cursor:"pointer",flex:"0 0 auto",transition:"color 0.12s, border-color 0.12s, background 0.12s"},onMouseEnter:a=>{a.currentTarget.style.color="var(--accent)",a.currentTarget.style.borderColor="var(--accent)",a.currentTarget.style.background="var(--bg-hover)"},onMouseLeave:a=>{a.currentTarget.style.color=c?"var(--accent)":"var(--text-dim)",a.currentTarget.style.borderColor="var(--border)",a.currentTarget.style.background="transparent"},children:c?(0,L.jsx)(ac,{size:12,"aria-hidden":"true"}):(0,L.jsx)(ht,{size:12,"aria-hidden":"true"})})},I=(0,L.jsxs)("div",{style:{minWidth:0},children:[(0,L.jsx)("div",{style:{fontSize:11,fontWeight:700,color:"var(--text)",marginBottom:6},children:N("desktop.sessionInfoTitle")}),(0,L.jsx)("div",{style:{display:"grid",gridTemplateColumns:"auto minmax(0, 1fr) auto",columnGap:12,rowGap:8,alignItems:"start"},children:A.map(a=>(0,L.jsxs)("div",{style:{display:"contents"},children:[(0,L.jsx)("div",{style:{color:"var(--text-dim)",whiteSpace:"nowrap"},children:a.label}),(0,L.jsx)("div",{style:{color:"var(--text-muted)",minWidth:0,overflowWrap:"anywhere",wordBreak:"break-word",whiteSpace:"normal"},children:a.value}),(0,L.jsx)("div",{children:a.copyField?H(a.copyField,a.value):null})]},`session-info:${a.label}`))})]}),K=(J=[...n?[{label:N("desktop.projectDir"),value:n.projectRoot??n.cwd,copyField:"projectDir"}]:[],...n?.branch?[{label:N("desktop.gitBranch"),value:n.branch,copyField:"gitBranch"}]:[],...n?.isWorktree?[{label:N("desktop.gitWorktree"),value:n.cwd,copyField:"gitWorktree"}]:[]]).length>0?(0,L.jsxs)("div",{style:{minWidth:0},children:[(0,L.jsx)("div",{style:{fontSize:11,fontWeight:700,color:"var(--text)",marginBottom:6},children:N("desktop.projectSection")}),(0,L.jsx)("div",{style:{display:"grid",gridTemplateColumns:"auto minmax(0, 1fr) auto",columnGap:12,rowGap:8,alignItems:"start"},children:J.map(a=>(0,L.jsxs)("div",{style:{display:"contents"},children:[(0,L.jsx)("div",{style:{color:"var(--text-dim)",whiteSpace:"nowrap"},children:a.label}),(0,L.jsx)("div",{style:{color:"var(--text-muted)",minWidth:0,overflowWrap:"anywhere",wordBreak:"break-word",whiteSpace:"normal"},children:a.value}),(0,L.jsx)("div",{children:a.copyField?H(a.copyField,a.value):null})]},`project-info:${a.label}`))})]}):null,(0,L.jsxs)("div",{style:{display:"grid",gridTemplateColumns:f?"1fr":"minmax(360px, 1.7fr) minmax(140px, 0.55fr) minmax(190px, 0.75fr)",gap:f?16:24,fontSize:12,lineHeight:1.5,fontFamily:"var(--font-mono)"},children:[(0,L.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:f?16:20,minWidth:0},children:[I,K]}),G(N("desktop.sessionInfoMessages"),B),G(N("desktop.sessionInfoTokens"),[...C,...F],"right",!0)]})):(0,L.jsx)("div",{style:{fontSize:12,color:"var(--text-muted)",fontStyle:"italic"},children:N("desktop.sendMessageForSessionInfo")})})]}),O&&v&&(0,L.jsx)("div",{className:"app-no-drag",onClick:()=>P(!1),style:{position:"fixed",inset:0,zIndex:3e3,display:"flex",alignItems:"flex-start",justifyContent:"center",paddingTop:48,background:"rgba(0,0,0,0.35)",cursor:"pointer"},children:(0,L.jsxs)("div",{role:"dialog","aria-label":v,style:{position:"relative",maxWidth:"min(560px, calc(100vw - 32px))",maxHeight:"min(60vh, 400px)",overflow:"auto",background:"var(--bg-panel)",border:"1px solid var(--border)",borderRadius:12,boxShadow:"0 16px 40px rgba(0,0,0,0.3)",padding:"14px 40px 14px 18px",fontSize:13,lineHeight:1.6,color:"var(--text)",wordBreak:"break-word",whiteSpace:"pre-wrap",cursor:"default"},children:[v,(0,L.jsx)("button",{type:"button","aria-label":N("i18n.close"),title:N("i18n.close"),onClick:a=>{a.stopPropagation(),P(!1)},style:{position:"sticky",top:0,float:"right",marginLeft:8,display:"inline-flex",alignItems:"center",justifyContent:"center",width:24,height:24,padding:0,border:"none",borderRadius:5,background:"none",color:"var(--text-muted)",cursor:"pointer",fontSize:14,lineHeight:1},onMouseEnter:a=>{a.currentTarget.style.color="var(--text)",a.currentTarget.style.background="var(--bg-hover)"},onMouseLeave:a=>{a.currentTarget.style.color="var(--text-muted)",a.currentTarget.style.background="none"},children:"✕"})]})})]})}function vc({cwd:a,busy:b,error:c,onCancelAction:d,onConfirmAction:e}){let{t:f}=(0,bb.s)();return(0,L.jsx)("div",{role:"presentation",style:{position:"fixed",inset:0,zIndex:1100,display:"flex",alignItems:"center",justifyContent:"center",padding:16,background:"rgba(0, 0, 0, 0.4)"},children:(0,L.jsxs)("section",{role:"dialog","aria-modal":"true","aria-labelledby":"project-trust-title",style:{width:440,maxWidth:"100%",border:"1px solid var(--border)",borderRadius:8,background:"var(--bg-panel)",boxShadow:"0 12px 36px rgba(0, 0, 0, 0.24)",overflow:"hidden"},children:[(0,L.jsxs)("div",{style:{display:"flex",gap:12,padding:"18px 18px 14px"},children:[(0,L.jsx)(q8,{size:21,weight:"duotone",color:"var(--accent-orange)",style:{flexShrink:0,marginTop:1},"aria-hidden":"true"}),(0,L.jsxs)("div",{style:{minWidth:0},children:[(0,L.jsx)("h2",{id:"project-trust-title",style:{margin:0,fontSize:15,fontWeight:700,color:"var(--text)"},children:f("desktop.trustProjectTitle")}),(0,L.jsx)("p",{style:{margin:"7px 0 0",fontSize:12,lineHeight:1.6,color:"var(--text-muted)"},children:f("desktop.trustProjectBody")}),(0,L.jsx)("code",{style:{display:"block",marginTop:10,padding:"8px 10px",border:"1px solid var(--border)",borderRadius:5,background:"var(--bg)",color:"var(--text)",fontFamily:"var(--font-mono)",fontSize:11,overflowWrap:"anywhere"},children:a}),c&&(0,L.jsx)("div",{role:"alert",style:{marginTop:10,color:"var(--accent-red)",fontSize:12,lineHeight:1.5},children:c})]})]}),(0,L.jsxs)("footer",{style:{display:"flex",justifyContent:"flex-end",gap:8,padding:"10px 18px",borderTop:"1px solid var(--border)"},children:[(0,L.jsx)("button",{type:"button",onClick:d,disabled:b,style:{height:32,padding:"0 12px",border:"1px solid var(--border)",borderRadius:5,background:"transparent",color:"var(--text-muted)",cursor:b?"not-allowed":"pointer",fontSize:12},children:f("desktop.cancel")}),(0,L.jsx)("button",{type:"button",onClick:e,disabled:b,style:{height:32,padding:"0 12px",border:"1px solid var(--accent)",borderRadius:5,background:"var(--accent)",color:"white",cursor:b?"wait":"pointer",opacity:b?.7:1,fontSize:12,fontWeight:600},children:f(b?"desktop.trustingProject":"desktop.trustProject")})]})]})})}function vd(a,b,c){let d=Number.isFinite(a)?a:b,e=Math.max(b,c);return Math.round(Math.max(b,Math.min(e,d)))}function ve(a){return vd(.42*a,360,640)}function vf(a){let{ariaLabel:b,cssVariable:c,defaultWidth:d,getDefaultWidth:e,getMaxWidth:f,growthDirection:g,maxWidth:h,minWidth:i,storageKey:j,widthRef:k}=a,l=(0,M.useRef)(null),m=(0,M.useRef)(null);(0,M.useRef)(!1);let[n,o]=(0,M.useState)(d),[p,q]=(0,M.useState)(!1),[r,s]=(0,M.useState)(!1),t=(0,M.useCallback)(()=>Math.min(h,Math.max(i,f())),[f,h,i]),u=(0,M.useCallback)(a=>vd(a,i,t()),[t,i]),v=(0,M.useCallback)(a=>{k.current=a;let b=`${a}px`;l.current?.style.setProperty(c,b),l.current?.parentElement?.style.setProperty(c,b)},[c,k]),w=(0,M.useCallback)((a,b={})=>{let{forcePersist:c=!1,persist:d=!0}=b,e=u(a),f=e!==k.current;return v(e),o(e),d&&(f||c)&&function(a,b){try{window.localStorage.setItem(a,String(b))}catch{}}(j,e),e},[v,u,j,k]),x=(0,M.useCallback)(a=>{document.body.style.cursor=a.previousCursor,document.body.style.userSelect=a.previousUserSelect},[]),y=(0,M.useCallback)(a=>{let b=m.current;if(b&&b.pointerId===a){m.current=null,x(b),q(!1),w(k.current,{forcePersist:!0});try{b.target.hasPointerCapture(a)&&b.target.releasePointerCapture(a)}catch{}}},[w,x,k]),z=(0,M.useCallback)(a=>{if("mouse"===a.pointerType&&0!==a.button)return;a.preventDefault(),a.stopPropagation();let b=m.current;b&&y(b.pointerId);let c=a.currentTarget;c.focus({preventScroll:!0}),c.setPointerCapture(a.pointerId),m.current={pointerId:a.pointerId,startX:a.clientX,startWidth:k.current,target:c,previousCursor:document.body.style.cursor,previousUserSelect:document.body.style.userSelect},document.body.style.cursor="col-resize",document.body.style.userSelect="none",q(!0)},[y,k]),A=(0,M.useCallback)(a=>{let b=m.current;if(!b||b.pointerId!==a.pointerId)return;if("mouse"===a.pointerType&&0===a.buttons)return void y(a.pointerId);a.preventDefault();let c="right"===g?1:-1,d=u(b.startWidth+(a.clientX-b.startX)*c);v(d),a.currentTarget.setAttribute("aria-valuenow",String(d)),a.currentTarget.setAttribute("aria-valuetext",`${d} px`)},[v,u,y,g]),B=(0,M.useCallback)(a=>{y(a.pointerId)},[y]),C=(0,M.useCallback)(a=>{y(a.pointerId)},[y]),D=(0,M.useCallback)(a=>{y(a.pointerId)},[y]),E=(0,M.useCallback)(()=>{w(e?.()??d,{forcePersist:!0})},[w,d,e]),F=(0,M.useCallback)(()=>{w(k.current)},[w,k]),G=(0,M.useCallback)(a=>{let b=a.shiftKey?32:12,c="right"===g?"ArrowRight":"ArrowLeft",d="right"===g?"ArrowLeft":"ArrowRight";a.key===c?(a.preventDefault(),w(k.current+b,{forcePersist:!0})):a.key===d?(a.preventDefault(),w(k.current-b,{forcePersist:!0})):"Home"===a.key?(a.preventDefault(),w(i,{forcePersist:!0})):"End"===a.key?(a.preventDefault(),w(t(),{forcePersist:!0})):"Enter"===a.key&&(a.preventDefault(),E())},[w,t,g,i,E,k]);return{isResizing:p,panelRef:l,reclampWidth:F,separatorProps:{"aria-label":b,"aria-orientation":"vertical","aria-valuemax":r?t():h,"aria-valuemin":i,"aria-valuenow":n,"aria-valuetext":`${n} px`,onDoubleClick:E,onKeyDown:G,onLostPointerCapture:D,onPointerCancel:C,onPointerDown:z,onPointerMove:A,onPointerUp:B,role:"separator",tabIndex:0},width:n}}function vg({status:a}){return"running"===a||"starting"===a?(0,L.jsxs)("svg",{className:"animate-spin",width:"13",height:"13",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",children:[(0,L.jsx)("circle",{cx:"12",cy:"12",r:"9",stroke:"currentColor",strokeWidth:"2",opacity:"0.25"}),(0,L.jsx)("path",{d:"M21 12a9 9 0 0 0-9-9",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"})]}):"queued"===a?(0,L.jsxs)("svg",{width:"13",height:"13",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round","aria-hidden":"true",children:[(0,L.jsx)("circle",{cx:"12",cy:"12",r:"9"}),(0,L.jsx)("path",{d:"M12 7v5l3 2"})]}):"failed"===a?(0,L.jsxs)("svg",{width:"13",height:"13",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round","aria-hidden":"true",children:[(0,L.jsx)("circle",{cx:"12",cy:"12",r:"9"}),(0,L.jsx)("path",{d:"m9 9 6 6M15 9l-6 6"})]}):"aborted"===a||"interrupted"===a?(0,L.jsxs)("svg",{width:"13",height:"13",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round","aria-hidden":"true",children:[(0,L.jsx)("circle",{cx:"12",cy:"12",r:"9"}),(0,L.jsx)("path",{d:"M9 9h6v6H9z"})]}):(0,L.jsxs)("svg",{width:"13",height:"13",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[(0,L.jsx)("circle",{cx:"12",cy:"12",r:"9"}),(0,L.jsx)("path",{d:"m8 12 3 3 5-6"})]})}function vh({session:a,main:b,selected:c,running:d,onSelect:e}){let{locale:f,t:g}=(0,bb.s)(),h=a.relation?.kind==="subagent"?a.relation:null,i=d?"running":h?.status??"completed",j=b?g("agentSwitcher.main"):h?.description||fe(a),k=b?fe(a):`${h?.profile??g("agentSwitcher.subagent")} \xb7 ${function(a,b){let c=new Date(a).getTime();if(!Number.isFinite(c))return"";let d=Math.round((c-Date.now())/1e3),e=new Intl.RelativeTimeFormat(b,{numeric:"auto"});if(60>Math.abs(d))return e.format(d,"second");let f=Math.round(d/60);if(60>Math.abs(f))return e.format(f,"minute");let g=Math.round(f/60);return 24>Math.abs(g)?e.format(g,"hour"):e.format(Math.round(g/24),"day")}(a.modified,f)}`;return(0,L.jsxs)("button",{type:"button",role:"option","aria-selected":c,onClick:e,style:{width:"100%",minHeight:56,display:"grid",gridTemplateColumns:"28px minmax(0, 1fr) auto",alignItems:"center",gap:9,padding:"7px 12px",border:"none",borderBottom:"1px solid var(--border)",borderLeft:c?"2px solid var(--accent)":"2px solid transparent",background:c?"var(--bg-selected)":"transparent",color:"var(--text)",cursor:"pointer",textAlign:"left"},onMouseEnter:a=>{c||(a.currentTarget.style.background="var(--bg-hover)")},onMouseLeave:a=>{c||(a.currentTarget.style.background="transparent")},children:[(0,L.jsx)("span",{style:{width:28,height:28,display:"grid",placeItems:"center",color:b?"var(--text-muted)":"var(--accent)"},children:b?(0,L.jsxs)("svg",{width:"17",height:"17",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[(0,L.jsx)("circle",{cx:"12",cy:"8",r:"4"}),(0,L.jsx)("path",{d:"M4 21a8 8 0 0 1 16 0"})]}):(0,L.jsxs)("svg",{width:"17",height:"17",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.8",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[(0,L.jsx)("rect",{x:"5",y:"7",width:"14",height:"11",rx:"2"}),(0,L.jsx)("path",{d:"M9 11h.01M15 11h.01M9 15h6M12 7V4M10 4h4"})]})}),(0,L.jsxs)("span",{style:{minWidth:0},children:[(0,L.jsx)("span",{style:{display:"block",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",fontSize:12,fontWeight:c?600:500},title:j,children:j}),(0,L.jsx)("span",{style:{display:"block",marginTop:2,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",color:"var(--text-dim)",fontSize:11},title:k,children:k})]}),(0,L.jsx)("span",{style:{display:"flex",alignItems:"center",gap:6,color:b&&!d?"var(--text-dim)":"running"===i||"starting"===i?"var(--accent)":"queued"===i?"var(--text-dim)":"completed"===i?"var(--status-success)":"failed"===i?"var(--status-error)":"aborted"===i?"var(--status-warning)":"var(--text-dim)",fontSize:11,whiteSpace:"nowrap"},children:b&&!d?c?g("agentSwitcher.current"):null:(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(vg,{status:i}),(0,L.jsx)("span",{children:g(`agentSwitcher.status.${i}`)})]})})]})}function vi({rootSession:a,subagents:b,selectedSessionId:c,runningSessionIds:d,onSelectSession:e}){let{t:f}=(0,bb.s)(),[g,h]=(0,M.useState)(""),i=(0,M.useMemo)(()=>[...b].sort((a,b)=>{let c=d.has(a.id);return c!==d.has(b.id)?c?-1:1:b.modified.localeCompare(a.modified)}),[d,b]),j=g.trim().toLowerCase(),k=j?i.filter(a=>{let b=a.relation?.kind==="subagent"?a.relation:null;return[b?.description,b?.profile,a.name,a.firstMessage].some(a=>a?.toLowerCase().includes(j))}):i,l=b.filter(a=>d.has(a.id)).length;return(0,L.jsx)("div",{role:"listbox","aria-label":f("agentSwitcher.title"),style:{background:"var(--bg-panel)",borderLeft:"1px solid var(--border)",borderRight:"1px solid var(--border)",borderBottom:"1px solid var(--border)",borderRadius:"0 0 6px 6px",boxShadow:"0 10px 28px rgba(0,0,0,0.10)",overflow:"hidden"},children:(0,L.jsxs)("div",{children:[(0,L.jsxs)("div",{style:{minHeight:44,display:"flex",alignItems:"center",gap:8,padding:"7px 12px",borderBottom:"1px solid var(--border)"},children:[(0,L.jsx)("strong",{style:{fontSize:12,fontWeight:600},children:f("agentSwitcher.title")}),(0,L.jsx)("span",{style:{color:"var(--text-dim)",fontSize:11},children:f("agentSwitcher.count",{count:b.length})}),l>0&&(0,L.jsx)("span",{style:{marginLeft:"auto",color:"var(--accent)",fontSize:11},children:f("agentSwitcher.runningCount",{count:l})})]}),b.length>8&&(0,L.jsx)("div",{style:{padding:8,borderBottom:"1px solid var(--border)"},children:(0,L.jsx)("input",{type:"search",value:g,onChange:a=>h(a.target.value),placeholder:f("agentSwitcher.search"),"aria-label":f("agentSwitcher.search"),style:{width:"100%",height:32,padding:"0 10px",border:"1px solid var(--border)",borderRadius:6,background:"var(--bg)",color:"var(--text)",fontSize:12,outline:"none"}})}),(0,L.jsxs)("div",{style:{maxHeight:"min(58dvh, 480px)",overflowY:"auto"},children:[(0,L.jsx)(vh,{session:a,main:!0,selected:a.id===c,running:d.has(a.id),onSelect:()=>e(a)}),k.map(a=>(0,L.jsx)(vh,{session:a,selected:a.id===c,running:d.has(a.id),onSelect:()=>e(a)},a.id)),0===k.length&&(0,L.jsx)("div",{style:{padding:"22px 12px",color:"var(--text-dim)",fontSize:12,textAlign:"center"},children:f("agentSwitcher.noMatches")})]})]})})}function vj(){var a;let b,c,d=(0,S.useRouter)(),e=(0,S.useSearchParams)(),f=(0,M.useMemo)(()=>{let a;return{requestedCwd:a=e.get("cwd")?.trim()||null,sessionId:a?null:e.get("session"),sidebarCollapsed:"collapsed"===e.get("sidebar")}},[e]),{isDark:g,toggleTheme:h}=bT(),{t:i}=(0,bb.s)(),j=cx(),[k,l]=(0,M.useState)(null),[m,n]=(0,M.useState)(null),[o,p]=(0,M.useState)(0),[q,r]=(0,M.useState)(0),[s,t]=(0,M.useState)(0),[u,v]=(0,M.useState)(!1),[w,x]=(0,M.useState)("models"),[y,z]=(0,M.useState)(0),[A,B]=(0,M.useState)(null),[C,D]=(0,M.useState)(!1),[E,F]=(0,M.useState)(!1),[G,H]=(0,M.useState)(null),[I,J]=(0,M.useState)(()=>!f.sidebarCollapsed),[K,N]=(0,M.useState)(!1),O=(0,M.useRef)(null),P=(0,M.useRef)(null),[Q,T]=(0,M.useState)(null),[U,V]=(0,M.useState)(null),[W,X]=(0,M.useState)(null),Y=u5(),Z=function(){let{isDesktop:a,isMacOS:b}=u5(),c=(0,M.useCallback)(a=>{var b;0===a.button&&(b=a.target).closest("[data-tauri-drag-region]")&&!b.closest('button, a, input, textarea, select, [role="button"], [contenteditable="true"], [data-no-drag]')&&(a.preventDefault(),a.stopPropagation(),2===a.detail?u2():u3())},[]);return a&&!b?{onMouseDown:c}:{}}(),[$,_]=(0,M.useState)(null),aa=(0,M.useCallback)(a=>{_(a)},[]),[ab,ac]=(0,M.useState)(null),ad=(0,M.useCallback)(a=>{ac(a)},[]),[ae,af]=(0,M.useState)(null),ag=(0,M.useRef)(null),ah=(0,M.useCallback)((a,b)=>{eu(b).then(()=>{ag.current&&clearTimeout(ag.current),af(a),ag.current=setTimeout(()=>af(null),1400)})},[]),[ai,aj]=(0,M.useState)(null),ak=(0,M.useCallback)(a=>{aj(a)},[]),[al,am]=(0,M.useState)(null),[an,ao]=(0,M.useState)(null),ap=(0,M.useCallback)(()=>{j&&J(!1),am("session")},[j]),aq=(0,M.useCallback)(()=>{j&&am(null),J(a=>!a)},[j]),[ar,as]=(0,M.useState)([]),[at,au]=(0,M.useState)(null),[av,aw]=(0,M.useState)(!1);(0,M.useRef)(!1);let[ax,ay]=(0,M.useState)(!1),[az,aA]=(0,M.useState)([]),[aB,aC]=(0,M.useState)(()=>new Set),aD=(0,M.useCallback)(async a=>{try{let b=await fetch(`/api/sessions/${encodeURIComponent(a)}`,{cache:"no-store"}),c=await b.json();if(!b.ok||!c.info)throw Error(c.error??`HTTP ${b.status}`);a2.current(c.info)}catch(a){console.error("[pi-web] failed to open session:",a instanceof Error?a.message:a)}},[]),aE=(0,M.useRef)(260),aF=(0,M.useRef)(ve(1366)),aG=(0,M.useCallback)(()=>ve(1366),[]),aH=(0,M.useCallback)(()=>480,[av]),aI=(0,M.useCallback)(()=>1200,[I]),aJ=vf({ariaLabel:i("desktop.resizeSidebar"),cssVariable:"--sidebar-width",defaultWidth:260,getMaxWidth:aH,growthDirection:"right",maxWidth:480,minWidth:180,storageKey:"pi-sidebar-width",widthRef:aE}),aK=vf({ariaLabel:i("desktop.resizeFilePanel"),cssVariable:"--right-panel-width",defaultWidth:ve(1366),getDefaultWidth:aG,getMaxWidth:aI,growthDirection:"left",maxWidth:1200,minWidth:300,storageKey:"pi-right-panel-width",widthRef:aF});aJ.reclampWidth,aK.reclampWidth;let aL=(0,M.useCallback)((a,b)=>{O.current?.insertText(sd(a,b))},[]),aM=(0,M.useCallback)(a=>{let b=a.map(a=>sd(a,!1)).join("");b&&O.current?.insertText(b)},[]),aN=(0,M.useCallback)((a,b,c)=>{let d,e,f,g;O.current?.insertText((d=Math.max(1,Math.min(b,c)),e=Math.max(1,Math.max(b,c)),f=a.includes(" ")?`@"${a}"`:`@${a}`,g=d===e?`:${d}`:`:${d}-${e}`,`${f}${g} `))},[]),[aO,aP]=(0,M.useState)(()=>f.sessionId),[aQ,aR]=(0,M.useState)(null),[aS,aT]=(0,M.useState)(()=>f.requestedCwd?"validating":"idle"),[aU,aV]=(0,M.useState)(null),[aW,aX]=(0,M.useState)(()=>!aO),aY=(0,M.useRef)(!1),aZ=(0,M.useRef)(new Map),[a$,a_]=(0,M.useState)(null);(0,M.useRef)("");let a0=(0,M.useCallback)((a,b)=>{if(!a)return;if(aR(a),aY.current&&k&&gT(k.projectRoot??k.cwd,b??a)){if(aY.current=!1,k){let a=k.projectRoot??k.cwd;a&&aZ.current.set(a,k.id)}return}aY.current=!1;let c=b??a;if(k&&gT(k.projectRoot??k.cwd,c)){(k.projectRoot??k.cwd)&&aZ.current.set(c,k.id);return}if(k){let a=k.projectRoot??k.cwd;a&&aZ.current.set(a,k.id)}l(null),n(b=>b&&b!==a?null:b),r(a=>a+1),_(null),am(null),window.history.replaceState(null,"","/");let d=aZ.current.get(c);a_(d?{projectRoot:c,sessionId:d}:null)},[k]),a1=(0,M.useCallback)((a,b=!1)=>{if(b||a_(null),!b&&k){let b=gT(k.projectRoot??k.cwd,a.projectRoot??a.cwd);if(k.id===a.id&&b){j&&J(!1);return}}let c=a.projectRoot??a.cwd;c&&aZ.current.set(c,a.id),n(null),l(a),r(a=>a+1),_(null),aX(!0),j&&!b&&J(!1),b&&(aY.current=!0),b||window.history.replaceState(null,"",`?session=${encodeURIComponent(a.id)}`)},[j,k]),a2=(0,M.useRef)(()=>{}),a3=(0,M.useCallback)(a=>{fetch("/api/sessions").then(a=>a.ok?a.json():null).then(b=>{let c=b?.sessions.find(b=>b.id===a);c&&l(b=>!b||b.id!==a||b.projectRoot&&b.name?b:c)}).catch(()=>{})},[]),a4=(0,M.useCallback)((a,b)=>{a_(null),l(null),n(b),r(a=>a+1),_(null),am(null),j&&J(!1),window.history.replaceState(null,"","/")},[d,j]);!function(a){let{onNewSession:b,activeCwd:c}=a}({onNewSession:a=>a4(`kb-${Date.now()}`,a),activeCwd:aQ});let a5=(0,M.useCallback)(a=>{n(null),a_(null);let b=a.projectRoot??a.cwd;b&&aZ.current.set(b,a.id),l(a),a.cwd&&aR(a.cwd),p(a=>a+1),a3(a.id),window.history.replaceState(null,"",`?session=${encodeURIComponent(a.id)}`),window.setTimeout(()=>p(a=>a+1),1200),window.setTimeout(()=>p(a=>a+1),4e3)},[d,a3]),a6=(0,M.useCallback)(()=>{p(a=>a+1),t(a=>a+1)},[]),a7=(0,M.useCallback)(a=>{p(a=>a+1),r(a=>a+1),n(null),a_(null),l(b=>{let c={...b??{path:"",cwd:"",created:"",modified:"",messageCount:0,firstMessage:""},id:a},d=c.projectRoot??c.cwd;return d&&aZ.current.set(d,a),c}),a3(a),window.history.replaceState(null,"",`?session=${encodeURIComponent(a)}`)},[d,a3]),a8=(0,M.useCallback)(()=>{aX(!0)},[]),a9=(0,M.useCallback)(a=>{if(p(a=>a+1),k?.id===a){let a=k.cwd;l(null),n(a??null),r(a=>a+1),_(null),am(null),window.history.replaceState(null,"","/")}},[d,k]),ba=(0,M.useCallback)((a,b,c,d)=>{let e="string"==typeof c||null===c?c:void 0,f="object"==typeof c&&null!==c?c:d,g=`file:${a}`;as(c=>{let d=c.find(a=>a.id===g);return d?e&&d.sourceSessionId!==e||f?.initialDisplayMode&&d.initialDisplayMode!==f.initialDisplayMode?c.map(a=>a.id===g?{...a,sourceSessionId:e??a.sourceSessionId,initialDisplayMode:f?.initialDisplayMode??a.initialDisplayMode}:a):c:[...c,{id:g,label:b,filePath:a,sourceSessionId:e,initialDisplayMode:f?.initialDisplayMode}]}),au(g),aw(!0),j&&J(!1)},[j]),bc=(0,M.useCallback)(a=>{ba(a,fK(a),k?.id??null)},[ba,k?.id]),bd=(0,M.useMemo)(()=>{let a=new Map;for(let b of az){if(b.relation?.kind!=="subagent")continue;let c=b.relation;a.set(b.id,{status:aB.has(b.id)?"running":c.status,...c.createdAt?{createdAt:c.createdAt}:{},...c.completedAt?{completedAt:c.completedAt}:{}})}return a},[az,aB]),be=(0,M.useCallback)((a,b)=>{let c=`subagent:${a}`;as(d=>d.some(a=>a.id===c)?d:[...d,{id:c,label:b,filePath:"",kind:"subagent",sessionId:a}]),au(c),aw(!0),j&&J(!1)},[j]),bf=(0,M.useCallback)(a=>{as(b=>{let c=b.filter(b=>b.id!==a);return 0===c.length&&aw(!1),c}),au(b=>{if(b!==a)return b;let c=ar.filter(b=>b.id!==a);return c.length>0?c[c.length-1].id:null})},[ar]),bg=(0,M.useCallback)(a=>{t(a=>a+1),ba(a,fK(a))},[ba]),bh=(0,M.useCallback)((a,b)=>{t(a=>a+1);let c=a.endsWith("/")?a:a+"/",d=d=>d===a||b&&d.startsWith(c);as(a=>{let b=a.filter(a=>!d(a.filePath));return 0===b.length&&aw(!1),b}),au(a=>{if(!a)return a;let b=ar.find(b=>b.id===a);if(!b||!d(b.filePath))return a;let c=ar.filter(a=>!d(a.filePath));return c.length>0?c[c.length-1].id:null})},[ar]),bi=k?fe({name:k.name||ab?.sessionName||void 0,firstMessage:k.firstMessage,id:k.id},(k.cwd??aQ??"").replace(/[\\/]+$/,"").split(/[\\/]/).filter(Boolean).pop()):(b=aQ??m)?b.replace(/[\\/]+$/,"").split(/[\\/]/).filter(Boolean).pop()||b:null,bj=(0,M.useCallback)(()=>{k&&window.open(`/api/sessions/${encodeURIComponent(k.id)}/export?inline=1`,"_blank","noopener,noreferrer")},[k]),bk=m??(null===k&&aQ?aQ:null),bl="validating"!==aS&&"error"!==aS&&(null!==k||null!==bk),bm=k?.cwd??bk,[bn,bo]=(0,M.useState)(!1),bp=(0,M.useCallback)(()=>{j||bo(a=>!a)},[j]),[bq,br]=(0,M.useState)(!0),bs=aW&&!bl,bt=(0,M.useCallback)(async()=>{if(bm&&!E){F(!0),H(null);try{let a=await fetch("/api/project-trust",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({cwd:bm})}),b=await a.json();if(!a.ok||b.error)throw Error(b.error??`HTTP ${a.status}`);B(b),D(!1),z(a=>a+1),r(a=>a+1)}catch(a){H(a instanceof Error?a.message:String(a))}finally{F(!1)}}},[E,bm]),bu=ar.find(a=>a.id===at)??null,bv=aQ??k?.cwd??m,bw=(0,M.useCallback)(a=>{x(a),v(!0)},[]),bx=(0,L.jsx)(L.Fragment,{children:(0,L.jsx)(gZ,{selectedSessionId:k?.id??null,onSelectSession:a1,onNewSession:a4,initialSessionId:aO,onInitialRestoreDone:a8,refreshKey:o,onSessionDeleted:a9,selectedCwd:k?.cwd??m??null,onCwdChange:a0,onOpenFile:ba,selectedSessionStats:ab,onOpenSettings:a=>{bw(a??"models")},explorerRefreshKey:s,onAtMention:aL,onAtMentions:aM,onFileCreated:bg,onFileDeleted:bh,workspaceControlsHosts:{title:Q,welcome:W,titleRight:U},showWorkspaceControls:!0})});return(0,L.jsxs)(ui,{children:[(0,L.jsx)("style",{children:`
196
196
  @media (max-width: 640px) {
197
197
  .sidebar-overlay-backdrop.sidebar-mobile-pending {
198
198
  opacity: 0 !important;