@qt4798/pi-web 0.18.12 → 0.18.13

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 (49) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-path-routes-manifest.json +28 -28
  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/api/files/[...path]/route.js +1 -1
  21. package/.next/server/app/index.html +1 -1
  22. package/.next/server/app/index.rsc +3 -3
  23. package/.next/server/app/index.segments/__PAGE__.segment.rsc +3 -3
  24. package/.next/server/app/index.segments/_full.segment.rsc +3 -3
  25. package/.next/server/app/index.segments/_tree.segment.rsc +1 -1
  26. package/.next/server/app/login/page_client-reference-manifest.js +1 -1
  27. package/.next/server/app/login.html +1 -1
  28. package/.next/server/app/login.rsc +1 -1
  29. package/.next/server/app/login.segments/_full.segment.rsc +1 -1
  30. package/.next/server/app/login.segments/_tree.segment.rsc +1 -1
  31. package/.next/server/app/login.segments/login/__PAGE__.segment.rsc +1 -1
  32. package/.next/server/app/page.js +1 -1
  33. package/.next/server/app/page_client-reference-manifest.js +1 -1
  34. package/.next/server/app-paths-manifest.json +28 -28
  35. package/.next/server/chunks/7915.js +1 -1
  36. package/.next/server/middleware-build-manifest.js +1 -1
  37. package/.next/server/pages/404.html +1 -1
  38. package/.next/server/pages/500.html +1 -1
  39. package/.next/server/server-reference-manifest.json +1 -1
  40. package/.next/static/chunks/app/{page-abc85eb2cca48bce.js → page-d143bb27f37954c7.js} +1 -1
  41. package/.next/trace +85 -84
  42. package/.next/trace-build +1 -1
  43. package/bin/fix-pi-agent-undici.js +4 -2
  44. package/bin/memory-watchdog.js +11 -2
  45. package/bin/pi-web.js +3 -1
  46. package/bin/with-memory-limit.js +28 -47
  47. package/package.json +3 -3
  48. /package/.next/static/{fs5JGinkTfT6aWXJqEdny → WSLpXBoGysol2bo7ZrmzF}/_buildManifest.js +0 -0
  49. /package/.next/static/{fs5JGinkTfT6aWXJqEdny → WSLpXBoGysol2bo7ZrmzF}/_ssgManifest.js +0 -0
@@ -193,7 +193,7 @@ ${c}`:a:c,images:g,pastedBlocks:function(a,b){if(!a?.length&&!b?.length)return;l
193
193
 
194
194
  Goal: ${c}`:cs)}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}
195
195
 
196
- ${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]),cg.current=uH(p),cf.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})),aL.current=!0),bX.current=!0,S(!0),bb(h?{kind:"running_command"}:{kind:"waiting_model"}),J({type:"start"}),b6.current=!0,bd(!0),b7.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=bO.current??await cd.current,b=a??await cO();if(b){s=b,cN(1,c),ai&&(a3(ai),a&&await c$(b,{type:"set_model",provider:ai.provider,modelId:ai.modelId}));let d=await Promise.race([cT(b).then(()=>!0).catch(()=>!1),uD(4e3).then(()=>!1)]);t=!0,await c$(b,{type:"prompt",message:n,...r?.length?{images:r}:{}}),d||c7(b,i),q&&c$(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([cT(b.id).then(()=>!0).catch(()=>!1),uD(4e3).then(()=>!1)]);t=!0,await c$(b.id,{type:"prompt",message:n,...r?.length?{images:r}:{}}),a||c7(b.id,i),q&&c$(b.id,{type:"goal_start",goalText:g}).catch(()=>{})}h&&s&&c7(s,i)}catch(b){if(console.error("Failed to send message:",b),t&&s&&!(b instanceof cX&&"prompt_rejected"===b.code&&!1===b.accepted))return void c7(s,i);if(aB.current={sessionKey:"",signature:""},q&&(aA.current=null,aL.current=!1,aH(a=>({...a,status:"idle",goalText:null}))),bZ.current=!1,cR(),b instanceof uC){let a=cg.current;a&&z(b=>{let c=b[b.length-1];return c?.role==="user"&&uH(c)===a?b.slice(0,-1):b}),cW({type:"error",message:b.message})}else{let c=cg.current;c&&z(a=>{let b=a[a.length-1];return b?.role==="user"&&uH(b)===c?a.slice(0,-1):a});let d=a.chatInputRef?.current;d?.restoreSubmission?d.restoreSubmission(p):d?.replaceMessage?.(p),cW({type:"error",message:`Failed to send message: ${b instanceof Error?b.message:String(b)}`})}cg.current=null,bX.current=!1,S(!1),bb(null),J({type:"end"})}},[l,d,ai,b,cO,cT,cN,c7,cW,cQ,cR,cA,a.chatInputRef]),dc=(0,U.useCallback)(async(c,d)=>{if(bX.current||b1.current)return;let e=`${d?"!!":"!"}${c}`;b1.current=!0,X({command:c,excludeFromContext:d}),V(!0);try{let a=bO.current??b?.id??await cO();if(!a)throw Error("Unable to create a session for the shell command");cN(1,e),await c$(a,{type:"bash",command:c,excludeFromContext:d}),await cL(a)}catch(b){console.error("Failed to execute shell command:",b),cW({type:"error",message:b instanceof Error?b.message:String(b)}),a.chatInputRef?.current?.insertIfEmpty(e)}finally{b1.current=!1,X(null),V(!1)}},[cW,cO,cL,a.chatInputRef,cN,b]),dd=(0,U.useCallback)(async()=>{let a=bO.current;if(a)try{await c$(a,{type:b1.current?"abort_bash":"abort"})}catch(a){console.error("Failed to abort:",a)}},[]),de=(0,U.useCallback)(async a=>{let b=bO.current;if(b){aX(a);try{let{cancelled:c,newSessionId:d}=await c$(b,{type:"fork",entryId:a})??{};!c&&d&&g?.(d)}catch(a){console.error("Fork failed:",a)}finally{aX(null)}}},[g]),df=(0,U.useCallback)(async a=>{if(b1.current)return!1;let b=bO.current;if(!b)return!1;try{let c=await c$(b,{type:"navigate_tree",targetId:a});if(c?.cancelled||bO.current!==b)return!1;return x(a),await cL(b),bO.current===b}catch(a){return console.error("Failed to navigate:",a),!1}},[cL]),dg=(0,U.useCallback)(async a=>{x(a);let b=bO.current;b&&(await c_(b,a),a&&c$(b,{type:"navigate_tree",targetId:a}).catch(()=>{}))},[c_]),dh=(0,U.useCallback)(a=>{a instanceof cY?cW({type:"error",message:uu("desktop.modelSwitchTimeout")}):cW({type:"error",message:uu("desktop.modelSwitchFailed",{reason:a instanceof Error?a.message:String(a)})})},[cW]),di=(0,U.useCallback)(async(a,b)=>{if(l){let c={provider:a,modelId:b};cx.current=c,aj(c),a3(c),null===cy.current&&bT(uz(bQ.current[`${a}/${b}`])??bR.current);let d=bO.current??await cd.current;if(!d)return;try{await c$(d,{type:"set_model",provider:a,modelId:b},{timeoutMs:12e4})}catch(a){console.error("Failed to set model:",a),dh(a)}return}let c=bO.current;if(!c)return;let d=++ch.current;aZ({provider:a,modelId:b});try{let e=await c$(c,{type:"set_model",provider:a,modelId:b},{timeoutMs:12e4});if(a_({provider:e.provider,modelId:e.id}),await cL(c),ch.current===d){let a=$.find(a=>a.provider===e.provider&&a.id===e.id)?.name??e.id;cW({type:"success",message:uu("desktop.modelSwitched",{model:a})})}}catch(e){if(console.error("Failed to set model:",e),ch.current===d&&(aZ(null),a_(null)),await cL(c,!1,!0),ch.current===d){let c=a0.current;c&&c.provider===a&&c.modelId===b?cW({type:"success",message:uu("desktop.modelSwitched",{model:$.find(c=>c.provider===a&&c.id===b)?.name??b})}):dh(e)}}},[cW,l,$,dh,aj]),dj=(0,U.useCallback)(async()=>{let a=bO.current;if(a&&!a4){a5(!0),a7(null),a9(null);try{let b=await c$(a,{type:"compact"});a9(uI(b,"manual")),await cL(a,!0)}catch(a){a7(a instanceof Error?a.message:String(a)),a9(null)}finally{a5(!1)}}},[a4,cL]),dk=(0,U.useCallback)(async a=>{let c=++cu.current,e=d??b?.cwd??"",f=e?`/api/models?cwd=${encodeURIComponent(e)}`:"/api/models",g=cv.current;g?.abort();let h=new AbortController;cv.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!==cu.current||m!==cw.current)return;ah(null),Z(b.models),ab(b.thinkingLevels??{}),ad(b.thinkingLevelMaps??{}),af(b.modelScopeWarnings??[]);let d=b.modelList??[];if(_(d),l&&!bO.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===cy.current&&aN(c??"auto")}}catch(a){if(h.signal.aborted||c!==cu.current||m!==cw.current)return;ah(a instanceof Error?a.message:String(a))}finally{a?.removeEventListener("abort",i),cv.current===h&&(cv.current=null)}},[l,m,d,b?.cwd]),dl=(0,U.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=bO.current??await cO(),h=a=>(a.handled&&(a.error?cW({type:"error",message:a.error}):"openSessionStats"!==a.action&&cW({type:"success",message:a.message??"Command completed"})),a);try{switch(c){case"compact":{if(!f||a4)return h({handled:!0,error:"No active session to compact"});a5(!0),a7(null),a9(null);let a=await c$(f,{type:"compact",...e?{customInstructions:e}:{}});return a9(uI(a,"manual")),await cL(f,!0)&&cN(),h({handled:!0,message:"Compacted context"})}case"auto-compact":{if(!f)return h({handled:!0,error:"No active session"});let a=await c$(f,{type:"get_state"}),b=!(a?.autoCompactionEnabled??!0);return await c$(f,{type:"set_auto_compaction",enabled:b}),aK(b),h({handled:!0,message:b?"Auto-compaction enabled":"Auto-compaction disabled"})}case"reload":if(!f)return h({handled:!0,error:"No active session to reload"});return await c$(f,{type:"reload"}),await Promise.all([cL(f,!1,!0),cM(f),cP(),dk()]),h({handled:!0,message:"Reloaded session resources"});case"name":if(!f)return h({handled:!0,error:"No active session to name"});if(!e)return h({handled:!0,error:"Usage: /name <name>"});return await c$(f,{type:"set_session_name",name:ct(e)}),await cL(f)&&cN(),h({handled:!0,message:`Session renamed to ${e}`});case"session":{if(!f)return h({handled:!0,error:"No active session"});let a=await c$(f,{type:"get_session_stats"});return a&&bn(a),k?.(),h({handled:!0,action:"openSessionStats"})}case"copy":{if(!f)return h({handled:!0,error:"No active session"});let a=await c$(f,{type:"get_last_assistant_text"}),b=a?.text??"";if(!b)return h({handled:!0,error:"No assistant message to copy"});return await navigator.clipboard.writeText(b),h({handled:!0,message:"Copied last assistant message"})}case"clone":{if(!f)return h({handled:!0,error:"No active session to clone"});if(bX.current||b1.current)return h({handled:!0,error:"Cannot clone while the session is running"});let a=await c$(f,{type:"clone",leafId:w});if(a?.cancelled||!a?.newSessionId)return h({handled:!0,error:"Cannot clone an empty or unsaved session"});let b=h({handled:!0,message:"Cloned current session branch"});return g?.(a.newSessionId),b}default:return{handled:!1}}}catch(a){return h({handled:!0,error:a instanceof Error?a.message:String(a)})}finally{"compact"===c&&a5(!1)}},[w,cW,cO,a4,dk,cL,cP,cM,cN,g,k]),dm=(0,U.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?c3():c7(a)},[c7,c3]),dn=(0,U.useCallback)(async(a,b)=>{let c=bO.current;if(!c)return;let d=b?.map(a=>({type:"image",data:a.data,mimeType:a.mimeType}));bX.current=!0,S(!0),bb(a=>a??{kind:"waiting_model"});try{await c$(c,{type:"steer",message:a,...d?.length?{images:d}:{}})}catch(a){console.error("Failed to steer:",a),dm(c)}},[dm]),dp=(0,U.useCallback)(async(a,b,c)=>{let d=bO.current;if(!d)return;let e=c?.map(a=>({type:"image",data:a.data,mimeType:a.mimeType}));bX.current=!0,S(!0),bb(a=>a??{kind:"waiting_model"});try{await c$(d,{type:"prompt",message:a,streamingBehavior:b,...e?.length?{images:e}:{}})}catch(a){console.error("Failed to queue prompt:",a),dm(d)}},[dm]),dq=(0,U.useCallback)(async(a,b)=>{let c=bO.current;if(!c)return;let d=b?.map(a=>({type:"image",data:a.data,mimeType:a.mimeType}));bX.current=!0,S(!0),bb(a=>a??{kind:"waiting_model"});try{await c$(c,{type:"follow_up",message:a,...d?.length?{images:d}:{}})}catch(a){console.error("Failed to follow up:",a),dm(c)}},[dm]),dr=(0,U.useCallback)(async()=>{let a=bO.current;if(a)try{await c$(a,{type:"abort_compaction"})}catch(a){console.error("Failed to abort compaction:",a)}},[]),ds=(0,U.useCallback)(async()=>{let b=bO.current;if(b)try{let c=await c$(b,{type:"clear_queue"});by({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),cW({type:"error",message:"Failed to recall queued messages"})}},[a.chatInputRef,cW,by]),dt=(0,U.useCallback)(async(a,b,c=!1)=>{let d=bO.current;if(!d)return bz;try{let e=await c$(d,{type:"resolve_recovery",keep:a,discard:b,continueRun:c}),f=e?.remaining??[];return bB(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;bY.current=!!c.isStreaming,bZ.current=!!c.isPromptRunning,bX.current=!0,S(!0),bb(uw(c)),J({type:"start"}),cS(d),!c.isStreaming&&c.isPromptRunning&&c7(d)}catch{}})(),f}catch(a){return console.error("Failed to resolve queued message recovery:",a),cW({type:"error",message:"Failed to resolve queued message recovery"}),bz}},[bz,cW,cS,c7,bB]),du=(0,U.useCallback)(async()=>{let a=bO.current;if(!a)return null;try{return await c$(a,{type:"export_queue"})}catch(a){return console.error("Failed to export queue:",a),cW({type:"error",message:"Failed to export queue"}),null}},[cW]),dv=(0,U.useCallback)(async a=>{let b=bO.current;if(!b)return null;try{let c=await c$(b,{type:"import_queue",entries:a});return c&&by(uy(c)),c?.imported??0}catch(a){return console.error("Failed to import queue:",a),cW({type:"error",message:"Failed to import queue"}),null}},[cW,by]),dw=(0,U.useCallback)(async a=>{let b=bO.current;if(!b)return null;try{let c=await c$(b,{type:"stage_recovery",entries:a});return c?.pendingRecovery&&bB(c.pendingRecovery),(c?.staged??0)>0&&bD(!0),c?.staged??0}catch(a){return console.error("Failed to stage imported queue:",a),cW({type:"error",message:"Failed to stage imported queue"}),null}},[cW,bB]),dx=(0,U.useCallback)(async(a,b,c)=>{let d=bO.current;if(!d)return!1;try{let e=await c$(d,{type:"move_queue",kind:a,fromIndex:b,toIndex:c});return e&&by(uy(e)),!0}catch(a){return console.error("Failed to move queued message:",a),cW({type:"error",message:a instanceof Error?a.message:"Failed to move queued message"}),!1}},[cW,by]),dy=(0,U.useCallback)(async(a,b)=>{let c=bO.current;if(!c)return null;try{let d=await c$(c,{type:"recall_queue_item",kind:a,index:b});return d&&(void 0!==d.steering||void 0!==d.followUp)&&by(uy(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),cW({type:"error",message:a instanceof Error?a.message:"Failed to recall queued message"}),null}},[cW,by]),dz=(0,U.useCallback)(async(a,b,c,d)=>{let e=bO.current;if(!e)return!1;try{let f=await c$(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&&by(uy(f)),!0}catch(a){return console.error("Failed to requeue message:",a),cW({type:"error",message:a instanceof Error?a.message:"Failed to requeue message"}),!1}},[cW,by]),dA=(0,U.useCallback)(async(a,b)=>{let c=bO.current;if(!c)return!1;try{let d=await c$(c,{type:"remove_queue_item",kind:a,index:b});return d&&by(uy(d)),!0}catch(a){return console.error("Failed to remove queued message:",a),cW({type:"error",message:a instanceof Error?a.message:"Failed to remove queued message"}),!1}},[cW,by]),dB=(0,U.useCallback)(async a=>{if("auto"===a){cy.current=null,aN(a);return}cy.current=a,aN(a);let b=bO.current??await cd.current;if(b)try{await c$(b,{type:"set_thinking_level",level:a}),bP.current&&bO.current===b&&aP(a)}catch(a){console.error("Failed to set thinking level:",a)}},[]),dC=(0,U.useCallback)(async a=>{let b=(0,uo.xG)(a);!function(a,b=null){if(b)try{b.setItem("pi-tool-preset",a)}catch{}}(a),cC(a);let c=bO.current??await cd.current;if(!c){bW.current=void 0!==b;return}try{let a=await c$(c,{type:"set_tools",...void 0!==b?{toolNames:b}:{}});bW.current=void 0!==b;let d=a?.sessionId??c;(d!==c||a?.recreated)&&(cQ(),cR(),bO.current=d),bh([]),bt([]),bv([]);let[e]=await Promise.all([c$(d,{type:"get_state"}),cM(d)]);bP.current&&bO.current===d&&(aV(e.systemPrompt??""),a1(e))}catch(a){console.error("Failed to set tools:",a)}},[cQ,cR,cM,cC,a1]),dD=(0,U.useRef)(0),dE=(0,U.useCallback)(async a=>{let b=bO.current??await cd.current,c=++dD.current;if("plan"===a){if(ao.current="plan"===am||"configured"===am?"default":am,b)try{await c$(b,{type:"prompt",message:"/plan"})}catch(a){if(dD.current!==c)return;console.error("Failed to enter plan mode:",a)}return}if(b){try{if(await c$(b,{type:"prompt",message:"/plan exit"}),dD.current!==c)return}catch(a){if(dD.current!==c)return;console.error("Failed to exit plan mode:",a)}if(dD.current!==c)return;try{await c$(b,{type:"set_tools",toolNames:(0,uo.xG)(ao.current)})}catch(a){console.error("Failed to restore tools after plan exit:",a)}}},[am]),dF=(0,U.useCallback)(a=>{aC.current=a,ar(a);let b=bO.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)})},[]),dG=(0,U.useCallback)(a=>{let b=cl(a),c="plan"===ay.current;if(dF({...aC.current,collaborationMode:b}),ay.current=b,aB.current={sessionKey:"",signature:""},"goal"!==b){aA.current=null,aL.current=!1,aH(a=>"idle"===a.status?a:{...a,status:"idle",goalText:null});let a=bO.current;a&&c$(a,{type:"goal_stop"}).catch(()=>{})}return"plan"!==b||c?"plan"!==b&&c?dE("normal"):Promise.resolve():dE("plan")},[dF,dE]),dH=(0,U.useCallback)(async a=>{dF({...aC.current,tokenMode:cm(a)});let b=bO.current??await cd.current;if(b)try{if("economy"!==a||ap.current){if("economy"!==a){let a=ap.current?uo.SC:(0,uo.xG)("plan"===am?"default":am);await c$(b,{type:"set_tools",toolNames:a})}}else await c$(b,{type:"set_tools",toolNames:[...co]})}catch(a){console.error("Failed to apply token mode tools:",a)}},[dF,am]),dI=(0,U.useCallback)(async a=>{dF({...aC.current,toolApprovalMode:cn(a)});let b=bO.current??await cd.current;if(b)try{await c$(b,{type:"set_approval_mode",mode:cn(a)})}catch(a){console.error("Failed to apply approval mode:",a)}},[dF]),dJ=(0,U.useCallback)(async a=>{dF({...aC.current,permissionRules:a});let b=bO.current??await cd.current;if(b)try{await c$(b,{type:"set_approval_policy",policy:a})}catch(a){console.error("Failed to apply permission rules:",a)}},[dF]),dK=(0,U.useCallback)(async(a,b,c,d)=>{let e=bO.current;if(e){if("always"===d){let c=aF.current.find(b=>b.id===a);if(c){let a=rQ(c.toolName,c.args),d=a?`${c.toolName}(${a})`:c.toolName,e=aC.current.permissionRules;(b?e.allow:e.deny).includes(d)||dJ(b?{...e,allow:[...e.allow,d]}:{...e,deny:[...e.deny,d]})}}try{await c$(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))}}},[dJ]),dL=(0,U.useCallback)(a=>{aA.current=a},[]),dM=(0,U.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=bO.current;c&&c$(c,{type:"goal_start",goalText:b}).catch(()=>{})},[]),dN=(0,U.useCallback)(()=>{if("running"!==aI.current.status)return;aH(a=>({...a,status:"paused"}));let a=bO.current;a&&c$(a,{type:"goal_pause"}).catch(()=>{})},[]),dO=(0,U.useCallback)(()=>{let a=aI.current;if("paused"!==a.status&&"blocked"!==a.status)return;aH(a=>({...a,status:"running"}));let b=bO.current;b&&c$(b,{type:"goal_resume"}).catch(()=>{})},[]),dP=(0,U.useCallback)(()=>{aL.current=!1,aA.current=null,aH(a=>({...a,status:"idle",goalText:null,turnsUsed:0,noProgressTurns:0}));let a=bO.current;a&&c$(a,{type:"goal_stop"}).catch(()=>{})},[]),dQ=(0,U.useCallback)(a=>{let b=a.trim();if(!b)return;aH(a=>({...a,goalText:b}));let c=bO.current;c&&c$(c,{type:"goal_edit",goalText:b}).catch(()=>{})},[]),dR=(0,U.useCallback)(()=>{let a=cc.current,b=b5.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);b8.current=e>=d-150,ca.current=Date.now()+700,a.scrollTo({top:e,behavior:"smooth"})},[]);(0,U.useCallback)(a=>{if(a instanceof KeyboardEvent){if(!uB.has(a.key)||a.target instanceof Element&&a.target.closest("input, textarea, [contenteditable='true']"))return}else if(a instanceof PointerEvent){let b=cc.current;if(b&&a.target instanceof Element&&!b.contains(a.target))return}b9.current=Date.now()+1200},[]),(0,U.useCallback)(()=>{let a=cc.current;if(a){let{scrollTop:b,clientHeight:c,scrollHeight:d}=a,e=bX.current,f=b8.current,g=function(a,b,c,d,e,f=96){return!!ut(c,d,e)||!(c<b)&&(!!(!a&&c>b&&ut(c,d,e,f))||a)}(f,bU.current,b,c,d,e?96:8);b8.current=g,bU.current=b;let h=function(a,b,c,d=8){return!(c<=b)&&!ut(a,b,c,d)}(b,c,d);bf(a=>a===h?a:h),!f&&g&&e&&c9("auto")}if(Date.now()<b9.current){b7.current=!1;return}Date.now()<ca.current||(b7.current=!1)},[]),(0,U.useRef)(null);let[dS,dT]=(0,U.useState)(0);b?.id;let dU=n?.tree??[];return{isAutoThinkingSelection:l&&null===cI,data:n,loading:s,error:u,activeLeafId:w,messages:y,activeToolResults:A,entryIds:C,historyCursor:E,hasEarlierMessages:G,streamState:I,agentRunning:R,bashRunning:T,pendingBash:W,modelNames:Y,modelList:$,modelThinkingLevels:aa,modelThinkingLevelMaps:ac,modelScopeWarnings:ae,modelsError:ag,newSessionModel:ai,toolPreset:am,thinkingLevel:cJ??aM,retryInfo:aQ,contextUsage:aS,systemPrompt:aU,forkingEntryId:aW,isCompacting:a4,compactError:a6,compactResult:a8,currentModel:cF,displayModel:cG,sessionStats:cK,tokenRate:L,planMode:ax,collaborationMode:at,tokenMode:au,toolApprovalMode:av,permissionRules:aw,modeSettings:aq,approvalRequests:aD,handleCollaborationModeChange:dG,handleTokenModeChange:dH,handleToolApprovalModeChange:dI,handlePermissionRulesChange:dJ,resolveApproval:dK,setActiveGoalText:dL,goalState:aG,handleGoalStart:dM,handleGoalPause:dN,handleGoalResume:dO,handleGoalStop:dP,handleGoalEdit:dQ,slashCommands:bg,slashCommandsLoading:bi,queuedMessages:bw,pendingRecovery:bz,recoveryIsImport:bC,notices:bk.visible,extensionDialog:bo,extensionCustomUi:bq,extensionStatuses:bs,extensionWidgets:bu,respondToExtensionUi:cU,sendExtensionCustomInput:cV,agentPhase:ba,isNew:l,promptAnchorActive:bc,branchTree:dU,autoCompactionEnabled:aJ,sessionIdRef:bO,eventSourceRef:bH,messagesEndRef:cb,scrollContainerRef:cc,lastUserMsgRef:b5,pendingScrollToUserRef:b6,initialScrollDoneRef:b4,scrollUserMsgToTop:dR,handleSend:db,executeBash:dc,handleAbort:dd,handleFork:de,handleNavigate:df,handleModelChange:di,handleCompact:dj,handleSteer:dn,handleFollowUp:dq,handlePromptWithStreamingBehavior:dp,handleAbortCompaction:dr,handleRecallQueue:ds,resolveRecovery:dt,exportQueueData:du,importQueueData:dv,stageQueueImport:dw,moveQueuedMessage:dx,recallQueuedMessage:dy,requeueAt:dz,removeQueuedMessage:dA,handleBuiltinSlashCommand:dl,handleToolPresetChange:dC,handleThinkingLevelChange:dB,loadTools:cM,loadSlashCommands:cP,reloadModels:dk,setActiveLeafId:x,setData:o,setMessages:z,loadContext:c_,dispatch:J,setAgentRunning:S,setForkingEntryId:aX,handleLeafChange:dg,handleAgentEventRef:b3}}({session:a,newSessionCwd:b,onAgentEnd:F,onSessionCreated:e,onSessionForked:f,modelsRefreshKey:g,chatInputRef:h,onBranchDataChange:i,onSystemPromptChange:j,onSessionStatsPanelOpen:l}),[bl,bm]=(0,U.useState)(!1),bn=(0,U.useMemo)(()=>{let a=L.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:re(a.model)?rf(a.model,b):0,costUSD:re(a.model)?0:b.cost?.total??0}},[L]),[bo,bp]=(0,U.useState)(!1),[bq,br]=(0,U.useState)(null);(0,U.useRef)(!1);let bs=(0,U.useCallback)(()=>{bp(!1);let a=bt.current;a&&a7("plan"===a5?"normal":a5).catch(a=>{console.error("Failed to leave plan mode before executing:",a)}).then(()=>{aJ(C("tasks.planReviewExecutePrompt",{plan:a}))})},[a7,aJ,C,a5]),bt=(0,U.useRef)(null),bu=(0,U.useCallback)(a=>{bp(!1),aJ(a)},[aJ]),bv=(0,U.useCallback)(()=>{bp(!1),a7("plan"===a5?"normal":a5)},[a7,a5]),[bw,bx]=(0,U.useState)(!1),[by,bz]=(0,U.useState)(!1),[bA,bB]=(0,U.useState)(!1),bC=(0,U.useCallback)(()=>{let a=aE.current;if(!a)return;let b=a.scrollHeight-a.scrollTop-a.clientHeight;bx(a.scrollTop>1),bz(b>1),bB(b>240)},[aE]),bD=(0,U.useCallback)(()=>{window.requestAnimationFrame(()=>{let a=aE.current,b=aD.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(),bC(),window.setTimeout(d,200)})},[aD,aE,bC,h]);(0,U.useRef)(!1),(0,U.useRef)(!1);let bE=(0,U.useRef)(null),bF=(0,U.useRef)([]),bG=(0,U.useRef)(new Map),bH=(0,U.useRef)(null),[bI,bJ]=(0,U.useState)(0),bK=(0,U.useMemo)(()=>({getOffsetForIndex:a=>bE.current?.getOffsetForIndex(a)?.[0]??0,sizeFor:a=>{let b=bE.current;if(!b)return 0;let c=b.measurementsCache[a];return c?.size??b.options.estimateSize?.(a)??0},totalHeight:()=>bE.current?.getTotalSize()??0,refToItemIndex:a=>bF.current[a],itemCount:bF.current.length}),[]);aj&&[aj.sessionId,aj.sessionFile??"",aj.sessionName??"",aj.userMessages,aj.assistantMessages,aj.toolCalls,aj.toolResults,aj.totalMessages,aj.tokens.input,aj.tokens.output,aj.tokens.cacheRead,aj.tokens.cacheWrite,aj.tokens.total,aj.cost??0,aj.totalActiveMs??0].join("|"),(0,U.useRef)(aj).current=aj,ad&&(ad.percent,ad.contextWindow,ad.tokens),(0,U.useRef)(ad).current=ad;let{isDragOver:bL,handleDragEnter:bM,handleDragOver:bN,handleDragLeave:bO,handleDrop:bP}=function(a){let[b,c]=(0,U.useState)(!1),d=(0,U.useRef)(0),e=(0,U.useCallback)(a=>{a.dataTransfer.files.length&&(a.preventDefault(),d.current+=1,c(!0))},[]),f=(0,U.useCallback)(a=>{a.dataTransfer.files.length&&a.preventDefault()},[]);return{isDragOver:b,handleDragEnter:e,handleDragOver:f,handleDragLeave:(0,U.useCallback)(()=>{d.current-=1,d.current<=0&&(d.current=0,c(!1))},[]),handleDrop:(0,U.useCallback)(b=>{b.preventDefault(),d.current=0,c(!1),a(Array.from(b.dataTransfer.files),b.dataTransfer)},[a])}}((0,U.useCallback)((a,b)=>{if(P){let b=a.filter(a=>a.type.startsWith("image/"));b.length&&h?.current?.addImages(b);return}h?.current?.addFiles(a,b)},[P,h])),bQ=L.filter(a=>"user"===a.role||"assistant"===a.role||hA(a));(0,U.useMemo)(()=>{let a=new Map(M);for(let b of L)"toolResult"===b.role&&a.set(b.toolCallId,b);return a},[M,L]);let bR=(0,U.useMemo)(()=>{let a=new Set,b=[];for(let d=L.length-1;d>=0&&b.length<50;d-=1){var c;let e="user"!==(c=L[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},[L]),bS=(v=bQ.length,(w=(0,U.useRef)([])).current.length!==v&&(w.current=Array.from({length:v},(a,b)=>w.current[b]??null)),w),bT=ay&&0===L.length&&!O.isStreaming&&!P,bU=a?.cwd??b??void 0;!function(a=!0){}(!!a?.id||!bT);let bV=(0,U.useMemo)(()=>h2(L,N,bU,M),[L,N,bU,M]),bW=ai?W[`${ai.provider}:${ai.modelId}`]??null:null,bX=ai?X[`${ai.provider}:${ai.modelId}`]??null:null,bY=(0,U.useCallback)(()=>{$()},[$]),bZ=(0,U.useCallback)(a=>{a7(a)},[a7]),b$=a?.relation?.kind==="subagent"?(0,T.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,T.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,T.jsx)("rect",{x:"3",y:"11",width:"18",height:"10",rx:"2"}),(0,T.jsx)("circle",{cx:"12",cy:"5",r:"2"}),(0,T.jsx)("path",{d:"M12 7v4"})]}),C("subagent.readOnlyNotice")]}):(0,T.jsx)(tI,{ref:h,onSend:aJ,onBash:aK,tasksBoardEnabled:r,onAbort:aL,onSteer:P?aQ:void 0,onFollowUp:P?aR:void 0,onPromptWithStreamingBehavior:P?aS:void 0,isStreaming:P,model:ai,modelNames:S,modelList:V,modelScopeWarnings:Y,modelsError:Z,onRetryModels:bY,onModelChange:aO,compactResult:ah,toolPreset:_,onToolPresetChange:a||ay?a1:void 0,collaborationMode:a5,toolApprovalMode:a6,onCollaborationModeChange:bZ,onToolApprovalModeChange:a8,goalState:bb,onGoalStart:bc,onGoalPause:bd,onGoalResume:be,onGoalStop:bf,thinkingLevel:aa,isAutoThinkingSelection:ab,onThinkingLevelChange:a||ay?a2:void 0,availableThinkingLevels:bW,thinkingLevelMap:bX,retryInfo:ac,queuedMessages:an,inputHistory:bR,onRecallQueue:aU,onMoveQueue:aY,onRecallOne:aZ,onRequeueAt:a$,onRemoveQueueItem:a_,slashCommands:al,slashCommandsLoading:am,onLoadSlashCommands:a3,onBuiltinCommand:a0,onAudioUnlock:A,draftKey:a?.id??(b?`new:${b}`:void 0),cwd:a?.cwd??b,topCenterControl:bA?(0,T.jsx)("button",{type:"button",className:"chat-input-top-center",onClick:bD,title:C("desktop.scrollToBottom"),"aria-label":C("desktop.scrollToBottom"),children:(0,T.jsx)(q3,{size:16,weight:"bold","aria-hidden":"true"})}):void 0}),b_=au.filter(a=>"belowEditor"!==a.placement),b0=au.filter(a=>"belowEditor"===a.placement),b1=af?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}(ax,C);return J?(0,T.jsx)("div",{className:"flex h-full items-center justify-center text-text-muted",children:C("desktop.loadingSession")}):K?(0,T.jsx)("div",{className:"flex h-full items-center justify-center text-red-400",children:K}):(0,T.jsxs)("div",{className:"relative flex h-full min-w-0 flex-col overflow-hidden",onDragEnter:bM,onDragOver:bN,onDragLeave:bO,onDrop:bP,children:[bL&&(0,T.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,T.jsx)("div",{className:"pointer-events-none absolute inset-0 flex items-center justify-center",children:[0,.8,1.6].map(a=>(0,T.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,T.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,T.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,T.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,T.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,T.jsxs)("g",{stroke:"rgba(37,99,235,0.45)",strokeWidth:"1.4",strokeLinecap:"round",children:[(0,T.jsx)("line",{x1:"96",y1:"46",x2:"96",y2:"43"}),(0,T.jsx)("line",{x1:"96",y1:"70",x2:"96",y2:"73"}),(0,T.jsx)("line",{x1:"84",y1:"58",x2:"81",y2:"58"}),(0,T.jsx)("line",{x1:"108",y1:"58",x2:"111",y2:"58"}),(0,T.jsx)("line",{x1:"87.5",y1:"49.5",x2:"85.4",y2:"47.4"}),(0,T.jsx)("line",{x1:"104.5",y1:"66.5",x2:"106.6",y2:"68.6"}),(0,T.jsx)("line",{x1:"104.5",y1:"49.5",x2:"106.6",y2:"47.4"}),(0,T.jsx)("line",{x1:"87.5",y1:"66.5",x2:"85.4",y2:"68.6"})]})]})]}),ar&&(0,T.jsx)(uN,{request:ar,onRespond:av}),as&&(0,T.jsx)(uO,{request:as,onInput:aw}),!ay&&ao.length>0&&!bl&&(0,T.jsx)(tL,{items:ao,sessionId:a?.id,onResolve:aV,onExport:aW,onStageImport:aX,onDismiss:()=>bm(!0),mode:ap?"import":"recovery"}),a9.length>0&&(0,T.jsx)(rT,{request:a9[0]??null,queuedCount:Math.max(0,a9.length-1),busy:!1,onResolve:(a,b,c)=>{let d=a9[0];d&&ba(d.id,a,b,c)}}),bT?(0,T.jsx)("div",{className:"flex flex-1 flex-col items-center justify-center overflow-y-auto",children:(0,T.jsxs)("div",{className:"w-full max-w-[820px]",children:[(0,T.jsx)("div",{style:{display:"flex",justifyContent:"center",marginBottom:28},children:(0,T.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,T.jsx)("title",{children:"Pi"}),(0,T.jsx)("path",{clipRule:"evenodd",d:"M1 1h16.5v11H12v5.5H6.5V23H1V1zm5.5 5.5V12H12V6.5H6.5z"}),(0,T.jsx)("path",{d:"M17.5 12H23v11h-5.5V12z"})]})}),B&&(0,T.jsxs)("div",{style:{display:"flex",justifyContent:"center",alignItems:"center",gap:10,marginBottom:18,marginTop:-14},children:[(0,T.jsxs)("span",{style:{fontSize:11,color:"var(--text-muted)",fontFamily:"var(--font-mono)"},children:["web ",(0,T.jsxs)("span",{style:{color:"var(--text)"},children:["v","0.18.12"]})]}),(0,T.jsxs)("span",{style:{fontSize:11,color:"var(--text-muted)",fontFamily:"var(--font-mono)"},children:["pi ",(0,T.jsxs)("span",{style:{color:"var(--text)"},children:["v","0.87.1"]})]})]}),(0,T.jsx)("div",{style:{padding:"0 34px 6px 7px",paddingRight:B?16:34},children:(0,T.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:12},children:[(0,T.jsx)("div",{ref:o,style:{display:"flex",alignItems:"center",minWidth:0,flex:1,minHeight:48}}),(0,T.jsxs)("div",{style:{display:B?"none":"flex",flexDirection:"column",alignItems:"flex-end",gap:2,flexShrink:0},children:[(0,T.jsxs)("span",{style:{fontSize:11,color:"var(--text-muted)",fontFamily:"var(--font-mono)"},children:["web ",(0,T.jsxs)("span",{style:{color:"var(--text)"},children:["v","0.18.12"]})]}),(0,T.jsxs)("span",{style:{fontSize:11,color:"var(--text-muted)",fontFamily:"var(--font-mono)"},children:["pi ",(0,T.jsxs)("span",{style:{color:"var(--text)"},children:["v","0.87.1"]})]})]})]})}),(0,T.jsx)("div",{style:{padding:"0 16px",paddingRight:B?16:34},children:(0,T.jsx)(uM,{notices:aq,align:"right"})}),"goal"===a5&&(0,T.jsx)(rP,{goalState:bb,onPause:bd,onResume:be,onStop:bf,onEdit:bg}),b$,(0,T.jsx)("div",{style:{padding:"0 16px 6px",paddingRight:B?16:34,marginTop:-15},children:(0,T.jsx)(t0,{onViewFullHistory:p,cwd:bU,systemPrompt:q,sessionStats:aj,contextUsage:ad,hasSession:!!a,showChat:!0,showSoundLabel:!0,soundEnabled:x,onSoundToggle:y,onCompact:a?aP:void 0,onAbortCompaction:aT,isCompacting:af,compactError:ag,lastTurnUsage:bn})})]})}):(0,T.jsxs)(T.Fragment,{children:[(0,T.jsxs)("div",{className:"relative flex flex-1 overflow-hidden z-0",children:[(0,T.jsx)("div",{style:{position:"absolute",top:12,left:0,right:18*!B,zIndex:40,padding:"0 16px",pointerEvents:"none"},children:(0,T.jsx)("div",{style:{maxWidth:820,margin:"0 auto"},children:(0,T.jsx)(uM,{notices:aq,floating:!0,align:"right"})})}),(0,T.jsxs)("div",{className:"relative flex-1 min-h-0 min-w-0",children:[(0,T.jsx)("div",{ref:aE,className:"scrollbar-subtle h-full min-w-0 overflow-x-hidden overflow-y-auto pt-4 [scrollbar-gutter:stable]",children:(0,T.jsx)("div",{style:{minWidth:0,padding:"0 16px"},children:(0,T.jsxs)("div",{style:{width:"100%",minWidth:0,maxWidth:820,margin:"0 auto"},children:[(0,T.jsxs)("div",{ref:bH,children:[(0,T.jsx)(uK,{statuses:at}),(0,T.jsx)(uL,{widgets:b_})]}),(()=>{let{toolResultsMap:b,lastUserIdx:c,visibleRefIndexByMessage:d,items:e}=bV;for(let a=L.length-1;a>=0&&!hA(L[a]);a--);let f=bG.current,g=(e,g={})=>{let h=g.messageOverride??L[e];if(!h||"toolResult"===h.role)return null;let i="user"===h.role||"assistant"===h.role||hA(h),j=d.get(e),k=g.keyPrefix??"message",l=!1;if("assistant"===h.role){l=!0;for(let a=e+1;a<L.length;a++){let b=L[a].role;if("user"===b)break;if("assistant"===b){l=!1;break}}l&&O.isStreaming&&e===L.length-1&&(l=!1)}void 0!==g.showTimestamp&&(l=g.showTimestamp);let m=(0,T.jsx)(rj,{message:h,toolResults:b,modelNames:S,cwd:bU,onOpenFile:n,entryId:N[e],onFork:P||ay?void 0:aM,forking:ae===N[e],onNavigate:P?void 0:aN,onEditContent:G,onQuoteReply:H,onOpenSession:s,onCreateTask:I,showTimestamp:l,prevTimestamp:e>0?L[e-1].timestamp:void 0,sessionId:a?.id??aC.current??void 0,writtenFiles:g.writtenFiles},`${k}-view-${e}`);return i&&!1!==g.attachRef&&void 0!==j?(0,T.jsx)("div",{ref:((a,b)=>{let d=f.get(b);if(!d){let a={isLastUser:!1};d={state:a,callback:c=>{bS.current[b]=c,a.isLastUser&&(aF.current=c,c&&aG.current&&(aG.current=!1,aH.current=!0,aI()))}},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)=>N[a]||`${b}-${a}`,m=a=>`live-answer-u${a}`,o=a=>`answer-${l(a,"user")}`,p=a=>`subagent-${a}`,q=a=>hH(a.result?.details)?a.result.details.sessionId:"",r=a=>{let b=q(a);if(b&&u){let a=u.get(b);if(a)return"running"===a.status}let c=hH(a.result?.details)?a.result.details:null;return c?"running"===c.status||"starting"===c.status:!a.result},v=(a,b)=>`live-process-u${a}-seg${b}`,w=(a,b,c)=>`process-${l(a,"user")}-${c||`seg${b}`}`;for(let f of e){if("single"===f.kind){if(L[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((P||O.isStreaming)&&h===L.length&&(e===c||i)){e>=0&&k(g(e),d.get(e),l(e,"user"));let c=O.streamingMessage?.role==="assistant",f=[],i=!c&&j>=0?j:h;for(let a=e+1;a<i;a++)h0(L[a])&&f.push(a);let o=hM(L,N,f,b),r=null;if(!c&&j>=0){let a=L[j],c=hF(a,{isStreaming:!0}),d=hL(a,{messageIndex:j,entryId:N[j],toolResults:b,isStreaming:!0});o=o.concat(d.processBlocks),c.answerBlocks.length>0&&(r=h1(a,c.answerBlocks,{omitUsage:!0}))}if(c){let a=O.streamingMessage,c=hF(a,{isStreaming:!0}),d=hL(a,{messageIndex:L.length,toolResults:b,isStreaming:!0});o=o.concat(d.processBlocks),c.answerBlocks.length>0&&(r=h1(a,c.answerBlocks,{omitUsage:!0}))}if(o.length>0){let b=f.map(a=>d.get(a)).find(a=>"number"==typeof a);hI(o).forEach((c,f)=>{let g=d.get(c.blocks[0].origin.sourceMessageIndex)??b;if("subagent"===c.kind&&c.subagent)return void k((0,T.jsx)(sM,{run:c.subagent,onOpenSubagent:t,sessionRun:u?.get(q(c.subagent))},p(c.subagent.toolCallId)),g,p(c.subagent.toolCallId));if("output"===c.kind){let a=c.blocks[0],b=d.get(a.origin.sourceMessageIndex);k((0,T.jsx)(rj,{message:{role:"assistant",provider:"",model:"",content:c.blocks},isStreaming:a.origin.sourceMessageIndex===L.length,cwd:bU,onOpenFile:n,onQuoteReply:H,onOpenSession:s}),b,`output-${a.id}`);return}k((0,T.jsx)("div",{ref:void 0===g?void 0:a=>{bS.current[g]=a},children:(0,T.jsx)(sJ,{blocks:c.blocks,isStreaming:P||O.isStreaming,cwd:bU,onOpenFile:n,sessionId:a?.id??aC.current??void 0,tokenRate:ak})},v(e,f)),g,v(e,f))})}r&&k((0,T.jsx)(rj,{message:r,isStreaming:!0,modelNames:S,cwd:bU,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:x,writtenFiles:y,visibleProcessIndices:z}=f;if(f.processBlocks.length>0){let b=z.map(a=>d.get(a)).find(a=>"number"==typeof a)??(x?void 0:d.get(j));f.processSegments.forEach((c,f)=>{let g=d.get(c.blocks[0].origin.sourceMessageIndex)??b;if("subagent"===c.kind&&c.subagent)return void k((0,T.jsx)(sM,{run:c.subagent,onOpenSubagent:t,sessionRun:u?.get(q(c.subagent))},p(c.subagent.toolCallId)),g,p(c.subagent.toolCallId));if("output"===c.kind){let a=c.blocks[0];k((0,T.jsx)(rj,{message:{role:"assistant",provider:"",model:"",content:c.blocks},cwd:bU,onOpenFile:n,onQuoteReply:H,onOpenSession:s}),d.get(a.origin.sourceMessageIndex),`output-${a.id}`);return}k((0,T.jsx)("div",{ref:void 0===g?void 0:a=>{bS.current[g]=a},children:(0,T.jsx)(sJ,{blocks:c.blocks,isStreaming:"subagent"===c.kind&&void 0!==c.subagent&&r(c.subagent),defaultExpanded:!1,onAutoExpanded:void 0,cwd:bU,onOpenFile:n,sessionId:a?.id??aC.current??void 0})},`process-group-${e}-${f}`),g,w(e,f,c.blocks[0]?.id??""))})}if(x&&k(g(j,{messageOverride:x,writtenFiles:y}),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 x=[],y=i.map((a,b)=>({startRef:a,itemIdx:b})).filter(a=>void 0!==a.startRef);return y.forEach((a,b)=>{let c=y[b+1]?.startRef??bQ.length;for(let b=a.startRef;b<c;b++)x[b]=a.itemIdx}),bF.current=x,(0,T.jsx)(uh,{scrollElementRef:aE,items:h,itemKeys:j,virtualizerRef:bE,headerHeight:bI})})(),b1&&(af||P&&!O.streamingMessage)&&(0,T.jsx)("div",{className:"py-2 text-[13px] text-text-muted",children:(0,T.jsxs)("span",{className:"animate-[pulse_1.5s_infinite]",children:[b1,ax?.kind==="waiting_model"&&(0,T.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"}})]})}),R&&(0,T.jsx)(rj,{message:{role:"bashExecution",command:R.command,output:"",excludeFromContext:R.excludeFromContext},sessionId:a?.id??aC.current??void 0}),Q&&!R&&(0,T.jsx)("div",{className:"py-2 text-[13px] text-text-muted",children:(0,T.jsx)("span",{className:"animate-[pulse_1.5s_infinite]",children:C("desktop.runningShellCommand")})}),(0,T.jsx)("div",{style:{height:96}}),(0,T.jsx)("div",{ref:aD}),(0,T.jsx)(rI,{open:bo,planText:bq,busy:P,onExecute:bs,onFeedback:bu,onExit:bv,onClose:()=>bp(!1)})]})})}),bw&&(0,T.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"}),by&&(0,T.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,T.jsx)(uk,{messages:L,streamingMessage:O.streamingMessage,scrollContainer:aE,messageRefs:bS,virtualizer:bK})]}),(0,T.jsxs)("div",{className:"relative z-10",children:[(0,T.jsx)("div",{style:{padding:"0 16px",paddingRight:B?16:34},children:(0,T.jsx)("div",{style:{maxWidth:820,margin:"0 auto"},children:(0,T.jsx)(uL,{widgets:b0})})}),b$,(0,T.jsx)("div",{className:`session-info-bar-wrap${B?" is-mobile":""}`,children:(0,T.jsx)("div",{className:"session-info-bar-inner",children:(0,T.jsx)(t0,{onViewFullHistory:p,cwd:bU,systemPrompt:q,sessionStats:aj,contextUsage:ad,hasSession:!!a,showChat:!0,soundEnabled:x,onSoundToggle:y,onCompact:a?aP:void 0,onAbortCompaction:aT,isCompacting:af,compactError:ag,branchTree:az,branchActiveLeafId:aA,onBranchLeafChange:aB,lastTurnUsage:bn})})})]})]})]})}function uK({statuses:a}){return 0===a.length?null:(0,T.jsx)("div",{style:{display:"flex",flexWrap:"wrap",gap:6,marginBottom:10},children:a.map(a=>(0,T.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,T.jsx)("span",{style:{color:"var(--accent)",fontFamily:"var(--font-mono)",fontSize:11},children:a.key}),(0,T.jsx)("span",{style:{minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a.text})]},a.key))})}function uL({widgets:a}){return 0===a.length?null:(0,T.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:8,marginBottom:10},children:a.map(a=>(0,T.jsxs)("div",{style:{border:"1px solid var(--border)",borderRadius:7,background:"var(--bg-panel)",overflow:"hidden"},children:[(0,T.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,T.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 uM({notices:a,floating:b=!1,align:c="left"}){return 0===a.length?null:(0,T.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,T.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,T.jsx)("span",{style:{width:7,height:7,borderRadius:"50%",background:e,flexShrink:0}}),(0,T.jsx)("span",{style:{padding:"10px 0",minWidth:0,maxWidth:"100%",overflowWrap:"anywhere",whiteSpace:"pre-wrap"},children:c.message})]},c.id)})})}function uN({request:a,onRespond:b}){let{t:c}=(0,bk.s)(),[d,e]=(0,U.useState)("editor"===a.method?a.prefill??"":""),[f,g]=(0,U.useState)(!1),[h,i]=(0,U.useState)(()=>Date.now()),j=(0,U.useCallback)(a=>a?.focus(),[]);!function(a){if("select"===a.method&&a.options.length>0)return a.options[0];if("confirm"===a.method){let b=a.message.split("\n").find(a=>a.trim());b?.trim()}}(a);let k=void 0===a.expiresAt?null:Math.max(0,Math.ceil((a.expiresAt-h)/1e3)),l=null!==k&&(0,T.jsx)("span",{style:{fontSize:11,color:"var(--text-dim)",whiteSpace:"nowrap",flexShrink:0},children:c("chat.extensionExpiresIn",{seconds:k})}),m=()=>{"confirm"===a.method?b(a,{confirmed:!0}):b(a,{value:d})};return(0,T.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,T.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,T.jsxs)("div",{style:{flexShrink:0,display:"flex",alignItems:"flex-start",gap:8,padding:"12px 14px",borderBottom:"1px solid var(--border)",maxHeight:"50%",overflowY:"auto"},children:[(0,T.jsxs)("div",{style:{flex:1,minWidth:0},children:[(0,T.jsx)("div",{style:{color:"var(--text)",fontSize:14,fontWeight:650,lineHeight:1.45,whiteSpace:"pre-wrap",overflowWrap:"anywhere"},children:a.title}),(0,T.jsxs)("div",{style:{display:"flex",flexWrap:"wrap",gap:8,marginTop:3,color:"var(--text-dim)",fontSize:11,fontFamily:"var(--font-mono)"},children:[(0,T.jsx)("span",{children:c("desktop.extensionRequest")}),l]})]}),(0,T.jsx)("button",{type:"button",onClick:()=>g(!0),"aria-expanded":!0,title:c("chat.extensionCollapse"),"aria-label":c("chat.extensionCollapse"),style:{display:"grid",placeItems:"center",width:28,height:28,borderRadius:6,border:"1px solid var(--border)",background:"var(--bg-panel)",color:"var(--text-muted)",cursor:"pointer",flexShrink:0},children:(0,T.jsx)("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",stroke:"currentColor",strokeWidth:"1.6",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:(0,T.jsx)("polyline",{points:"2 3.5 5 6.5 8 3.5"})})})]}),(0,T.jsxs)("div",{style:{padding:14},children:["confirm"===a.method&&(0,T.jsx)(qL,{children:a.message}),"select"===a.method&&(0,T.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,T.jsx)("div",{role:"button",tabIndex:0,"data-extension-option":!0,"aria-label":c,ref:0===d?j: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,overflowWrap:"anywhere",scrollMargin:14},children:(0,T.jsx)("div",{inert:!0,children:(0,T.jsx)(qL,{children:c})})},c))}),"input"===a.method&&(0,T.jsx)("input",{autoFocus:!0,className:"extension-input",value:d,placeholder:a.placeholder,onChange:a=>e(a.target.value),onKeyDown:c=>{"Enter"===c.key&&m(),"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,T.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&&m()},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,T.jsxs)("div",{style:{display:"flex",justifyContent:"flex-end",gap:8,padding:"10px 14px",borderTop:"1px solid var(--border)",background:"var(--bg-panel)"},children:[(0,T.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,T.jsx)("button",{onClick:m,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,T.jsx)("button",{onClick:m,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 uO({request:a,onInput:b}){let{t:c}=(0,bk.s)(),d=(0,U.useRef)(null),e=function(a){let b=/^[┌├└╭╰][─┬┴┼]+[┐┤┘╮╯]$/,c=[];for(let d of a){let a=hw(d).trimEnd();if(b.test(a))continue;let e=d,f=hz(e);("│"===f||"┃"===f)&&" "===hz(e=hy(e,0))&&(e=hy(e,0));let g=function(a){let b=hx(a);for(let a=b.length-1;a>=0;a--)if(""!==b[a].char.trim())return a;return -1}(e),h=g>=0?hx(e)[g]?.char:void 0;("│"===h||"┃"===h)&&(e=hy(e,g)),c.push(function(a){let b=a;for(;;){let a=hx(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&&""===hw(c[0]).trim();)c.shift();for(;c.length>0&&""===hw(c[c.length-1]).trim();)c.pop();return c.length?c:a}(a.lines);return(0,T.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,T.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,T.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:12,padding:"10px 12px",borderBottom:"1px solid var(--border)"},children:[(0,T.jsx)("div",{style:{color:"var(--text)",fontSize:13,fontWeight:650},children:c("desktop.extensionPanel")}),(0,T.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,T.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,T.jsxs)(U.Fragment,{children:[(d=`line-${b}`,(function(a){let b,c=[],d={},e=0;for(ht.lastIndex=0;null!==(b=ht.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=hu[d-30];else if(d>=90&&d<=97)c.color=hv[d-90];else if(d>=40&&d<=47)c.backgroundColor=hu[d-40];else if(d>=100&&d<=107)c.backgroundColor=hv[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 hu[a];if(a>=8&&a<16)return hv[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,T.jsx)("span",{style:a.style,children:a.text},`${d}-${b}`):a.text)),b<c.length-1?"\n":null]},b)})})]})})}let uP=new Map([["bold",U.createElement(U.Fragment,null,U.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",U.createElement(U.Fragment,null,U.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"}),U.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",U.createElement(U.Fragment,null,U.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",U.createElement(U.Fragment,null,U.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",U.createElement(U.Fragment,null,U.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",U.createElement(U.Fragment,null,U.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"}))]]),uQ=U.forwardRef((a,b)=>U.createElement(Y,{ref:b,...a,weights:uP}));uQ.displayName="FloppyDiskIcon";let uR={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"},uS={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 uT(a){return(a.replace(/\\/g,"/").split("/").pop()??"").toLowerCase().split(".").pop()??""}function uU(a,b,c,d={}){let e=f1(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 uV({filePath:a,sourceSessionId:b}){let{t:c}=(0,bk.s)();return(0,T.jsx)("a",{href:uU(a,"download",b),download:f2(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,T.jsx)(aN,{size:11,"aria-hidden":"true"})})}let uW={fontFamily:"var(--font-mono)",fontSize:13,lineHeight:1.6,tabSize:2},uX={fontFamily:"var(--font-mono)",fontSize:13,lineHeight:1.6,padding:"12px 0 12px 16px",color:"var(--text-dim)",textAlign:"right",userSelect:"none"};async function uY(a,b){let c=await fetch(`/api/files/${f1(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 uZ={delete:"3px solid var(--git-status-deleted)",add:"3px solid var(--git-status-added)",edit:"3px solid var(--git-status-modified)"},u$="var(--git-status-deleted-bg)",u_="var(--git-status-added-bg)",u0="var(--git-status-added)";function u1(a){return a<1024?`${a} B`:a<1048576?`${(a/1024).toFixed(1)} KB`:`${(a/1048576).toFixed(1)} MB`}function u2({oldContent:a,newContent:b}){let{t:c}=(0,bk.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,T.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,T.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,T.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?u$:"added"===a.kind?u_:"transparent",c=a.block?uZ[a.block]:"3px solid transparent",d="added"===a.kind?u0:"var(--text-dim)";return(0,T.jsxs)("div",{style:{display:"flex",background:b,borderLeft:c},children:[(0,T.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,T.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,T.jsx)("div",{children:h},b)})})}function u3({patch:a}){let b=qX(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,T.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,T.jsxs)("div",{children:[(0,T.jsx)("div",{style:{height:"1.55em"}}),(0,T.jsx)("div",{style:{padding:"3px 12px",color:"var(--accent-blue)",background:"var(--bg-secondary)"},children:a.text}),(0,T.jsx)("div",{style:{height:"1.55em"}})]},a.key);let b="removed"===a.kind?u$:"added"===a.kind?u_:"transparent",c=a.block?uZ[a.block]:"3px solid transparent",d="added"===a.kind?u0:"var(--text-dim)";return(0,T.jsxs)("div",{style:{display:"flex",background:b,borderLeft:c},children:[(0,T.jsx)("span",{style:{width:44,flexShrink:0,padding:"0 8px 0 16px",textAlign:"right",color:d,userSelect:"none",fontSize:11},children:a.lineNo??""}),(0,T.jsx)("span",{style:{flex:1,minWidth:0,padding:"0 8px 0 0",whiteSpace:"pre",color:"var(--text)"},children:a.text||"\xa0"})]},a.key)})})}function u4({filePath:a,cwd:b,sourceSessionId:c}){let{t:d}=(0,bk.s)(),[e,f]=(0,U.useState)(0),[g,h]=(0,U.useState)(null),[i,j]=(0,U.useState)(null),[k,l]=(0,U.useState)(null);(0,U.useRef)(null);let m=f2(a).toLowerCase().split(".").pop()??"",n=uU(a,"read",c,e?{v:e}:void 0),o=null!=g?u1(g):null;return(0,T.jsxs)("div",{style:{display:"flex",flexDirection:"column",height:"100%",overflow:"hidden"},children:[(0,T.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,T.jsx)("span",{style:{fontFamily:"var(--font-mono)",minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",flex:"0 1 auto"},title:a,children:f3(a,b)}),(0,T.jsx)("span",{style:{marginLeft:"auto"},children:m||d("desktop.image")}),i&&(0,T.jsxs)("span",{children:[i.w," \xd7 ",i.h]}),o&&(0,T.jsx)("span",{children:o}),(0,T.jsx)(uV,{filePath:a,sourceSessionId:c})]}),(0,T.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,T.jsx)("div",{style:{color:"var(--status-error)",fontSize:13},children:k}):(0,T.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 u5({filePath:a,cwd:b,sourceSessionId:c}){let{t:d}=(0,bk.s)(),[e,f]=(0,U.useState)(0),[g,h]=(0,U.useState)(null),[i,j]=(0,U.useState)(null),[k,l]=(0,U.useState)(null);(0,U.useRef)(null);let m=f2(a).toLowerCase().split(".").pop()??"",n=uU(a,"read",c,e?{v:e}:void 0);return(0,T.jsxs)("div",{style:{display:"flex",flexDirection:"column",height:"100%",overflow:"hidden"},children:[(0,T.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,T.jsx)("span",{style:{fontFamily:"var(--font-mono)",minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",flex:"0 1 auto"},title:a,children:f3(a,b)}),(0,T.jsx)("span",{style:{marginLeft:"auto"},children:m||d("desktop.audio")}),null!=i&&(0,T.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,T.jsx)("span",{children:u1(g)}),(0,T.jsx)(uV,{filePath:a,sourceSessionId:c})]}),(0,T.jsx)("div",{style:{flex:1,display:"flex",alignItems:"center",justifyContent:"center",padding:24,background:"var(--bg-panel)"},children:(0,T.jsxs)("div",{style:{width:"min(680px, 100%)"},children:[k&&(0,T.jsx)("div",{style:{color:"var(--status-error)",fontSize:13,marginBottom:12,textAlign:"center"},children:k}),(0,T.jsx)("audio",{controls:!0,preload:"metadata",src:n,onLoadedMetadata:a=>j(a.currentTarget.duration),onError:()=>l(d("desktop.failedToLoadAudio")),style:{width:"100%"}},n)]})})]})}function u6({filePath:a,cwd:b,sourceSessionId:c,initialPage:d}){let{t:e}=(0,bk.s)(),[f,g]=(0,U.useState)(0),[h,i]=(0,U.useState)(null),[j,k]=(0,U.useState)(null);(0,U.useRef)(null);let l=uT(a),m="pdf"===l,n=m&&d&&d>0?`#page=${d}`:"",o=m?`${uU(a,"read",c,f?{v:f}:void 0)}${n}`:uU(a,"preview",c,f?{v:f}:void 0);return(0,T.jsxs)("div",{style:{display:"flex",flexDirection:"column",height:"100%",overflow:"hidden"},children:[(0,T.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,T.jsx)("span",{style:{fontFamily:"var(--font-mono)",minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},title:a,children:f3(a,b)}),(0,T.jsx)("span",{style:{marginLeft:"auto"},children:"docx"===l?e("desktop.docxPreview"):"pdf"}),null!=h&&(0,T.jsx)("span",{children:u1(h)}),(0,T.jsx)(uV,{filePath:a,sourceSessionId:c})]}),(0,T.jsx)("div",{style:{flex:1,minHeight:0,background:"var(--bg-panel)"},children:j?(0,T.jsx)("div",{style:{height:"100%",display:"flex",alignItems:"center",justifyContent:"center",padding:24,color:"var(--status-error)",fontSize:13,textAlign:"center"},children:j}):(0,T.jsx)("iframe",{src:o,sandbox:m?void 0:"allow-same-origin",title:e("desktop.previewFile",{file:f2(a)}),style:{width:"100%",height:"100%",border:"none",background:m?"var(--bg)":"#eef1f5"}},o)})]})}function u7({filePath:a,cwd:b,sourceSessionId:c,onOpenFile:d,onAtMention:e,onMentionLines:f,initialDisplayMode:g,initialPage:h,onFileSaved:i}){let j;return null!==(uR[uT(a)]??null)?(0,T.jsx)(u4,{filePath:a,cwd:b,sourceSessionId:c}):null!==(uS[uT(a)]??null)?(0,T.jsx)(u5,{filePath:a,cwd:b,sourceSessionId:c}):null!==("pdf"===(j=uT(a))||"docx"===j?j:null)?(0,T.jsx)(u6,{filePath:a,cwd:b,sourceSessionId:c,initialPage:h}):(0,T.jsx)(u8,{filePath:a,cwd:b,sourceSessionId:c,onOpenFile:d,onAtMention:e,onMentionLines:f,initialDisplayMode:g,onFileSaved:i})}function u8({filePath:a,cwd:b,sourceSessionId:c,onOpenFile:d,onAtMention:e,onMentionLines:f,initialDisplayMode:g,onFileSaved:h}){let i,j,{t:k}=(0,bk.s)(),[l,m]=(0,U.useState)(null),[n,o]=(0,U.useState)(null),[p,q]=(0,U.useState)(null),[r,s]=(0,U.useState)(!0),[t,u]=(0,U.useState)(!1),[v,w]=(0,U.useState)(null),[x,y]=(0,U.useState)(!1),[z,A]=(0,U.useState)("source"),[B,C]=(0,U.useState)(!1),[D,E]=(0,U.useState)(0),[F,G]=(0,U.useState)(null);(0,U.useRef)(null);let H=(0,U.useRef)(null),[I,J]=(0,U.useState)(!1),[K,L]=(0,U.useState)(""),[M,N]=(0,U.useState)(""),[O,P]=(0,U.useState)(!1),[Q,R]=(0,U.useState)(null),[S,V]=(0,U.useState)(!1),W=(0,U.useRef)(null),X=(0,U.useRef)(null),Y=(0,U.useRef)(0);(0,U.useRef)(!1);let Z=I&&K!==M,$=!!(l?.content&&l.content.includes("\0")),_=(0,U.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]),aa=(0,U.useCallback)((a,b=!1,d=0)=>fetch(uU(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]),ab=(0,U.useCallback)(()=>{l&&!$&&(L(l.content),N(l.content),R(null),V(!1),J(!0))},[l,$]),ac=(0,U.useCallback)(()=>{J(!1),L(""),N(""),R(null),V(!1)},[]),ad=(0,U.useCallback)(()=>{(!Z||window.confirm(k("files.unsavedChanges")))&&ac()},[Z,ac,k]),ae=(0,U.useCallback)(async()=>{if(!l||O)return;let b=++Y.current;P(!0),R(null);try{let c=await uY(a,K);if(b!==Y.current)return;m(a=>a?{...a,content:K,size:c}:a),N(K),P(!1),ac(),_(a),h?.()}catch(a){if(b!==Y.current)return;R(a instanceof Error?a.message:String(a)),P(!1)}},[l,O,K,a,ac,_,h]),af=(0,U.useCallback)(()=>{let a=W.current,b=X.current;a&&b&&(b.scrollTop=a.scrollTop)},[]),ag=(0,U.useCallback)(a=>{if("Tab"!==a.key||a.metaKey||a.ctrlKey||a.altKey)return;a.preventDefault();let b=a.currentTarget,{selectionStart:c,selectionEnd:d}=b;L(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})},[]),ai=(0,U.useMemo)(()=>qs(l?.content??""),[l?.content]),aj=p?.supported===!0&&"string"==typeof p.patch,ak=aj&&p?.status==="deleted",al=(0,U.useCallback)(c=>{f&&c&&f(f3(a,b),c.startLine,c.endLine)},[b,a,f]);if(r)return(0,T.jsx)("div",{style:{height:"100%",display:"flex",alignItems:"center",justifyContent:"center",color:"var(--text-muted)",fontSize:13},children:k("desktop.loadingFile")});if(ak&&!l)return(0,T.jsxs)("div",{style:{display:"flex",flexDirection:"column",height:"100%",overflow:"hidden"},children:[(0,T.jsx)("div",{style:{padding:"5px 16px",borderBottom:"1px solid var(--border)",color:"var(--text-dim)",fontFamily:"var(--font-mono)",fontSize:11},title:a,children:f3(a,b)}),(0,T.jsx)("div",{style:{flex:1,overflow:"auto",background:"var(--bg)"},children:(0,T.jsx)(u3,{patch:p.patch})})]});if(v)return(0,T.jsx)("div",{style:{height:"100%",display:"flex",alignItems:"center",justifyContent:"center",color:"var(--status-error)",fontSize:13},children:v});if(!l)return null;let am="html"===l.language,ao="markdown"===l.language,ap=(j=(i=f0(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||aj,as=!ak&&!$&&f8();return(0,T.jsxs)("div",{style:{display:"flex",flexDirection:"column",height:"100%",overflow:"hidden"},children:[(0,T.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,T.jsx)("span",{style:{fontFamily:"var(--font-mono)",minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",flex:"0 1 auto"},title:a,children:f3(a,b)}),(0,T.jsx)("span",{style:{marginLeft:"auto"},children:l.language}),"source"===z&&!I&&(0,T.jsx)("span",{children:k("desktop.lines",{count:aq.length})}),(0,T.jsx)("span",{children:u1(l.size)}),ar&&!I&&(0,T.jsxs)("div",{style:{display:"flex",borderRadius:5,overflow:"hidden",border:"1px solid var(--border)"},children:[(0,T.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,T.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,T.jsxs)("span",{style:{color:"var(--git-status-added)",marginLeft:2},children:["+",D]})]})]}),"source"===z&&!x&&!I&&(0,T.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")}),am&&"source"===z&&!I&&(0,T.jsxs)("div",{style:{display:"flex",borderRadius:5,overflow:"hidden",border:"1px solid var(--border)"},children:[(0,T.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,T.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,T.jsxs)("div",{style:{display:"flex",borderRadius:5,overflow:"hidden",border:"1px solid var(--border)"},children:[(0,T.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,T.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,T.jsxs)(T.Fragment,{children:[(0,T.jsx)("button",{type:"button",onClick:()=>void ae(),disabled:O,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,T.jsx)(uQ,{size:13,"aria-hidden":"true"})}),(0,T.jsx)("button",{type:"button",onClick:ad,disabled:O,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,T.jsx)(ah,{size:13,"aria-hidden":"true"})})]}):"source"===z&&as?(0,T.jsx)("button",{type:"button",onClick:ab,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,T.jsx)(an,{size:13,"aria-hidden":"true"})}):null,(e||f)&&!I&&(0,T.jsx)("button",{type:"button",onPointerDown:a=>a.preventDefault(),onClick:()=>{F&&f?al(F):e?.(f3(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,T.jsx)(uV,{filePath:a,sourceSessionId:c})]}),l?.truncated&&"source"===z&&!I&&(0,T.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,T.jsxs)("span",{children:[u1(l.nextOffset)," / ",u1(l.size)]}),(0,T.jsx)("button",{type:"button",disabled:t,onClick:()=>{u(!0),aa(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,T.jsx)("div",{ref:H,style:{flex:1,overflow:"auto",background:"var(--bg)"},children:I?(0,T.jsxs)("div",{style:{display:"flex",flexDirection:"column",height:"100%",overflow:"hidden"},children:[S&&(0,T.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,T.jsx)("span",{style:{flex:1},children:k("files.externalModified")}),(0,T.jsx)("button",{type:"button",onClick:()=>{(!Z||window.confirm(k("files.reloadOverwriteConfirm")))&&aa(a).then(a=>{a&&(L(a.content),N(a.content),V(!1))})},disabled:O,style:{padding:"2px 8px",fontSize:11,border:"1px solid #d6a84b",borderRadius:4,background:"transparent",color:"#d6a84b",cursor:"pointer"},children:k("files.reload")})]}),Q&&(0,T.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:Q})}),(0,T.jsxs)("div",{style:{flex:1,display:"flex",overflow:"hidden"},children:[(0,T.jsx)("div",{ref:X,"aria-hidden":"true",style:{...uX,height:"100%",overflow:"hidden",whiteSpace:"pre",pointerEvents:"none"},children:K.split("\n").map((a,b)=>`${b+1}
196
+ ${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]),cg.current=uH(p),cf.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})),aL.current=!0),bX.current=!0,S(!0),bb(h?{kind:"running_command"}:{kind:"waiting_model"}),J({type:"start"}),b6.current=!0,bd(!0),b7.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=bO.current??await cd.current,b=a??await cO();if(b){s=b,cN(1,c),ai&&(a3(ai),a&&await c$(b,{type:"set_model",provider:ai.provider,modelId:ai.modelId}));let d=await Promise.race([cT(b).then(()=>!0).catch(()=>!1),uD(4e3).then(()=>!1)]);t=!0,await c$(b,{type:"prompt",message:n,...r?.length?{images:r}:{}}),d||c7(b,i),q&&c$(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([cT(b.id).then(()=>!0).catch(()=>!1),uD(4e3).then(()=>!1)]);t=!0,await c$(b.id,{type:"prompt",message:n,...r?.length?{images:r}:{}}),a||c7(b.id,i),q&&c$(b.id,{type:"goal_start",goalText:g}).catch(()=>{})}h&&s&&c7(s,i)}catch(b){if(console.error("Failed to send message:",b),t&&s&&!(b instanceof cX&&"prompt_rejected"===b.code&&!1===b.accepted))return void c7(s,i);if(aB.current={sessionKey:"",signature:""},q&&(aA.current=null,aL.current=!1,aH(a=>({...a,status:"idle",goalText:null}))),bZ.current=!1,cR(),b instanceof uC){let a=cg.current;a&&z(b=>{let c=b[b.length-1];return c?.role==="user"&&uH(c)===a?b.slice(0,-1):b}),cW({type:"error",message:b.message})}else{let c=cg.current;c&&z(a=>{let b=a[a.length-1];return b?.role==="user"&&uH(b)===c?a.slice(0,-1):a});let d=a.chatInputRef?.current;d?.restoreSubmission?d.restoreSubmission(p):d?.replaceMessage?.(p),cW({type:"error",message:`Failed to send message: ${b instanceof Error?b.message:String(b)}`})}cg.current=null,bX.current=!1,S(!1),bb(null),J({type:"end"})}},[l,d,ai,b,cO,cT,cN,c7,cW,cQ,cR,cA,a.chatInputRef]),dc=(0,U.useCallback)(async(c,d)=>{if(bX.current||b1.current)return;let e=`${d?"!!":"!"}${c}`;b1.current=!0,X({command:c,excludeFromContext:d}),V(!0);try{let a=bO.current??b?.id??await cO();if(!a)throw Error("Unable to create a session for the shell command");cN(1,e),await c$(a,{type:"bash",command:c,excludeFromContext:d}),await cL(a)}catch(b){console.error("Failed to execute shell command:",b),cW({type:"error",message:b instanceof Error?b.message:String(b)}),a.chatInputRef?.current?.insertIfEmpty(e)}finally{b1.current=!1,X(null),V(!1)}},[cW,cO,cL,a.chatInputRef,cN,b]),dd=(0,U.useCallback)(async()=>{let a=bO.current;if(a)try{await c$(a,{type:b1.current?"abort_bash":"abort"})}catch(a){console.error("Failed to abort:",a)}},[]),de=(0,U.useCallback)(async a=>{let b=bO.current;if(b){aX(a);try{let{cancelled:c,newSessionId:d}=await c$(b,{type:"fork",entryId:a})??{};!c&&d&&g?.(d)}catch(a){console.error("Fork failed:",a)}finally{aX(null)}}},[g]),df=(0,U.useCallback)(async a=>{if(b1.current)return!1;let b=bO.current;if(!b)return!1;try{let c=await c$(b,{type:"navigate_tree",targetId:a});if(c?.cancelled||bO.current!==b)return!1;return x(a),await cL(b),bO.current===b}catch(a){return console.error("Failed to navigate:",a),!1}},[cL]),dg=(0,U.useCallback)(async a=>{x(a);let b=bO.current;b&&(await c_(b,a),a&&c$(b,{type:"navigate_tree",targetId:a}).catch(()=>{}))},[c_]),dh=(0,U.useCallback)(a=>{a instanceof cY?cW({type:"error",message:uu("desktop.modelSwitchTimeout")}):cW({type:"error",message:uu("desktop.modelSwitchFailed",{reason:a instanceof Error?a.message:String(a)})})},[cW]),di=(0,U.useCallback)(async(a,b)=>{if(l){let c={provider:a,modelId:b};cx.current=c,aj(c),a3(c),null===cy.current&&bT(uz(bQ.current[`${a}/${b}`])??bR.current);let d=bO.current??await cd.current;if(!d)return;try{await c$(d,{type:"set_model",provider:a,modelId:b},{timeoutMs:12e4})}catch(a){console.error("Failed to set model:",a),dh(a)}return}let c=bO.current;if(!c)return;let d=++ch.current;aZ({provider:a,modelId:b});try{let e=await c$(c,{type:"set_model",provider:a,modelId:b},{timeoutMs:12e4});if(a_({provider:e.provider,modelId:e.id}),await cL(c),ch.current===d){let a=$.find(a=>a.provider===e.provider&&a.id===e.id)?.name??e.id;cW({type:"success",message:uu("desktop.modelSwitched",{model:a})})}}catch(e){if(console.error("Failed to set model:",e),ch.current===d&&(aZ(null),a_(null)),await cL(c,!1,!0),ch.current===d){let c=a0.current;c&&c.provider===a&&c.modelId===b?cW({type:"success",message:uu("desktop.modelSwitched",{model:$.find(c=>c.provider===a&&c.id===b)?.name??b})}):dh(e)}}},[cW,l,$,dh,aj]),dj=(0,U.useCallback)(async()=>{let a=bO.current;if(a&&!a4){a5(!0),a7(null),a9(null);try{let b=await c$(a,{type:"compact"});a9(uI(b,"manual")),await cL(a,!0)}catch(a){a7(a instanceof Error?a.message:String(a)),a9(null)}finally{a5(!1)}}},[a4,cL]),dk=(0,U.useCallback)(async a=>{let c=++cu.current,e=d??b?.cwd??"",f=e?`/api/models?cwd=${encodeURIComponent(e)}`:"/api/models",g=cv.current;g?.abort();let h=new AbortController;cv.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!==cu.current||m!==cw.current)return;ah(null),Z(b.models),ab(b.thinkingLevels??{}),ad(b.thinkingLevelMaps??{}),af(b.modelScopeWarnings??[]);let d=b.modelList??[];if(_(d),l&&!bO.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===cy.current&&aN(c??"auto")}}catch(a){if(h.signal.aborted||c!==cu.current||m!==cw.current)return;ah(a instanceof Error?a.message:String(a))}finally{a?.removeEventListener("abort",i),cv.current===h&&(cv.current=null)}},[l,m,d,b?.cwd]),dl=(0,U.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=bO.current??await cO(),h=a=>(a.handled&&(a.error?cW({type:"error",message:a.error}):"openSessionStats"!==a.action&&cW({type:"success",message:a.message??"Command completed"})),a);try{switch(c){case"compact":{if(!f||a4)return h({handled:!0,error:"No active session to compact"});a5(!0),a7(null),a9(null);let a=await c$(f,{type:"compact",...e?{customInstructions:e}:{}});return a9(uI(a,"manual")),await cL(f,!0)&&cN(),h({handled:!0,message:"Compacted context"})}case"auto-compact":{if(!f)return h({handled:!0,error:"No active session"});let a=await c$(f,{type:"get_state"}),b=!(a?.autoCompactionEnabled??!0);return await c$(f,{type:"set_auto_compaction",enabled:b}),aK(b),h({handled:!0,message:b?"Auto-compaction enabled":"Auto-compaction disabled"})}case"reload":if(!f)return h({handled:!0,error:"No active session to reload"});return await c$(f,{type:"reload"}),await Promise.all([cL(f,!1,!0),cM(f),cP(),dk()]),h({handled:!0,message:"Reloaded session resources"});case"name":if(!f)return h({handled:!0,error:"No active session to name"});if(!e)return h({handled:!0,error:"Usage: /name <name>"});return await c$(f,{type:"set_session_name",name:ct(e)}),await cL(f)&&cN(),h({handled:!0,message:`Session renamed to ${e}`});case"session":{if(!f)return h({handled:!0,error:"No active session"});let a=await c$(f,{type:"get_session_stats"});return a&&bn(a),k?.(),h({handled:!0,action:"openSessionStats"})}case"copy":{if(!f)return h({handled:!0,error:"No active session"});let a=await c$(f,{type:"get_last_assistant_text"}),b=a?.text??"";if(!b)return h({handled:!0,error:"No assistant message to copy"});return await navigator.clipboard.writeText(b),h({handled:!0,message:"Copied last assistant message"})}case"clone":{if(!f)return h({handled:!0,error:"No active session to clone"});if(bX.current||b1.current)return h({handled:!0,error:"Cannot clone while the session is running"});let a=await c$(f,{type:"clone",leafId:w});if(a?.cancelled||!a?.newSessionId)return h({handled:!0,error:"Cannot clone an empty or unsaved session"});let b=h({handled:!0,message:"Cloned current session branch"});return g?.(a.newSessionId),b}default:return{handled:!1}}}catch(a){return h({handled:!0,error:a instanceof Error?a.message:String(a)})}finally{"compact"===c&&a5(!1)}},[w,cW,cO,a4,dk,cL,cP,cM,cN,g,k]),dm=(0,U.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?c3():c7(a)},[c7,c3]),dn=(0,U.useCallback)(async(a,b)=>{let c=bO.current;if(!c)return;let d=b?.map(a=>({type:"image",data:a.data,mimeType:a.mimeType}));bX.current=!0,S(!0),bb(a=>a??{kind:"waiting_model"});try{await c$(c,{type:"steer",message:a,...d?.length?{images:d}:{}})}catch(a){console.error("Failed to steer:",a),dm(c)}},[dm]),dp=(0,U.useCallback)(async(a,b,c)=>{let d=bO.current;if(!d)return;let e=c?.map(a=>({type:"image",data:a.data,mimeType:a.mimeType}));bX.current=!0,S(!0),bb(a=>a??{kind:"waiting_model"});try{await c$(d,{type:"prompt",message:a,streamingBehavior:b,...e?.length?{images:e}:{}})}catch(a){console.error("Failed to queue prompt:",a),dm(d)}},[dm]),dq=(0,U.useCallback)(async(a,b)=>{let c=bO.current;if(!c)return;let d=b?.map(a=>({type:"image",data:a.data,mimeType:a.mimeType}));bX.current=!0,S(!0),bb(a=>a??{kind:"waiting_model"});try{await c$(c,{type:"follow_up",message:a,...d?.length?{images:d}:{}})}catch(a){console.error("Failed to follow up:",a),dm(c)}},[dm]),dr=(0,U.useCallback)(async()=>{let a=bO.current;if(a)try{await c$(a,{type:"abort_compaction"})}catch(a){console.error("Failed to abort compaction:",a)}},[]),ds=(0,U.useCallback)(async()=>{let b=bO.current;if(b)try{let c=await c$(b,{type:"clear_queue"});by({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),cW({type:"error",message:"Failed to recall queued messages"})}},[a.chatInputRef,cW,by]),dt=(0,U.useCallback)(async(a,b,c=!1)=>{let d=bO.current;if(!d)return bz;try{let e=await c$(d,{type:"resolve_recovery",keep:a,discard:b,continueRun:c}),f=e?.remaining??[];return bB(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;bY.current=!!c.isStreaming,bZ.current=!!c.isPromptRunning,bX.current=!0,S(!0),bb(uw(c)),J({type:"start"}),cS(d),!c.isStreaming&&c.isPromptRunning&&c7(d)}catch{}})(),f}catch(a){return console.error("Failed to resolve queued message recovery:",a),cW({type:"error",message:"Failed to resolve queued message recovery"}),bz}},[bz,cW,cS,c7,bB]),du=(0,U.useCallback)(async()=>{let a=bO.current;if(!a)return null;try{return await c$(a,{type:"export_queue"})}catch(a){return console.error("Failed to export queue:",a),cW({type:"error",message:"Failed to export queue"}),null}},[cW]),dv=(0,U.useCallback)(async a=>{let b=bO.current;if(!b)return null;try{let c=await c$(b,{type:"import_queue",entries:a});return c&&by(uy(c)),c?.imported??0}catch(a){return console.error("Failed to import queue:",a),cW({type:"error",message:"Failed to import queue"}),null}},[cW,by]),dw=(0,U.useCallback)(async a=>{let b=bO.current;if(!b)return null;try{let c=await c$(b,{type:"stage_recovery",entries:a});return c?.pendingRecovery&&bB(c.pendingRecovery),(c?.staged??0)>0&&bD(!0),c?.staged??0}catch(a){return console.error("Failed to stage imported queue:",a),cW({type:"error",message:"Failed to stage imported queue"}),null}},[cW,bB]),dx=(0,U.useCallback)(async(a,b,c)=>{let d=bO.current;if(!d)return!1;try{let e=await c$(d,{type:"move_queue",kind:a,fromIndex:b,toIndex:c});return e&&by(uy(e)),!0}catch(a){return console.error("Failed to move queued message:",a),cW({type:"error",message:a instanceof Error?a.message:"Failed to move queued message"}),!1}},[cW,by]),dy=(0,U.useCallback)(async(a,b)=>{let c=bO.current;if(!c)return null;try{let d=await c$(c,{type:"recall_queue_item",kind:a,index:b});return d&&(void 0!==d.steering||void 0!==d.followUp)&&by(uy(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),cW({type:"error",message:a instanceof Error?a.message:"Failed to recall queued message"}),null}},[cW,by]),dz=(0,U.useCallback)(async(a,b,c,d)=>{let e=bO.current;if(!e)return!1;try{let f=await c$(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&&by(uy(f)),!0}catch(a){return console.error("Failed to requeue message:",a),cW({type:"error",message:a instanceof Error?a.message:"Failed to requeue message"}),!1}},[cW,by]),dA=(0,U.useCallback)(async(a,b)=>{let c=bO.current;if(!c)return!1;try{let d=await c$(c,{type:"remove_queue_item",kind:a,index:b});return d&&by(uy(d)),!0}catch(a){return console.error("Failed to remove queued message:",a),cW({type:"error",message:a instanceof Error?a.message:"Failed to remove queued message"}),!1}},[cW,by]),dB=(0,U.useCallback)(async a=>{if("auto"===a){cy.current=null,aN(a);return}cy.current=a,aN(a);let b=bO.current??await cd.current;if(b)try{await c$(b,{type:"set_thinking_level",level:a}),bP.current&&bO.current===b&&aP(a)}catch(a){console.error("Failed to set thinking level:",a)}},[]),dC=(0,U.useCallback)(async a=>{let b=(0,uo.xG)(a);!function(a,b=null){if(b)try{b.setItem("pi-tool-preset",a)}catch{}}(a),cC(a);let c=bO.current??await cd.current;if(!c){bW.current=void 0!==b;return}try{let a=await c$(c,{type:"set_tools",...void 0!==b?{toolNames:b}:{}});bW.current=void 0!==b;let d=a?.sessionId??c;(d!==c||a?.recreated)&&(cQ(),cR(),bO.current=d),bh([]),bt([]),bv([]);let[e]=await Promise.all([c$(d,{type:"get_state"}),cM(d)]);bP.current&&bO.current===d&&(aV(e.systemPrompt??""),a1(e))}catch(a){console.error("Failed to set tools:",a)}},[cQ,cR,cM,cC,a1]),dD=(0,U.useRef)(0),dE=(0,U.useCallback)(async a=>{let b=bO.current??await cd.current,c=++dD.current;if("plan"===a){if(ao.current="plan"===am||"configured"===am?"default":am,b)try{await c$(b,{type:"prompt",message:"/plan"})}catch(a){if(dD.current!==c)return;console.error("Failed to enter plan mode:",a)}return}if(b){try{if(await c$(b,{type:"prompt",message:"/plan exit"}),dD.current!==c)return}catch(a){if(dD.current!==c)return;console.error("Failed to exit plan mode:",a)}if(dD.current!==c)return;try{await c$(b,{type:"set_tools",toolNames:(0,uo.xG)(ao.current)})}catch(a){console.error("Failed to restore tools after plan exit:",a)}}},[am]),dF=(0,U.useCallback)(a=>{aC.current=a,ar(a);let b=bO.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)})},[]),dG=(0,U.useCallback)(a=>{let b=cl(a),c="plan"===ay.current;if(dF({...aC.current,collaborationMode:b}),ay.current=b,aB.current={sessionKey:"",signature:""},"goal"!==b){aA.current=null,aL.current=!1,aH(a=>"idle"===a.status?a:{...a,status:"idle",goalText:null});let a=bO.current;a&&c$(a,{type:"goal_stop"}).catch(()=>{})}return"plan"!==b||c?"plan"!==b&&c?dE("normal"):Promise.resolve():dE("plan")},[dF,dE]),dH=(0,U.useCallback)(async a=>{dF({...aC.current,tokenMode:cm(a)});let b=bO.current??await cd.current;if(b)try{if("economy"!==a||ap.current){if("economy"!==a){let a=ap.current?uo.SC:(0,uo.xG)("plan"===am?"default":am);await c$(b,{type:"set_tools",toolNames:a})}}else await c$(b,{type:"set_tools",toolNames:[...co]})}catch(a){console.error("Failed to apply token mode tools:",a)}},[dF,am]),dI=(0,U.useCallback)(async a=>{dF({...aC.current,toolApprovalMode:cn(a)});let b=bO.current??await cd.current;if(b)try{await c$(b,{type:"set_approval_mode",mode:cn(a)})}catch(a){console.error("Failed to apply approval mode:",a)}},[dF]),dJ=(0,U.useCallback)(async a=>{dF({...aC.current,permissionRules:a});let b=bO.current??await cd.current;if(b)try{await c$(b,{type:"set_approval_policy",policy:a})}catch(a){console.error("Failed to apply permission rules:",a)}},[dF]),dK=(0,U.useCallback)(async(a,b,c,d)=>{let e=bO.current;if(e){if("always"===d){let c=aF.current.find(b=>b.id===a);if(c){let a=rQ(c.toolName,c.args),d=a?`${c.toolName}(${a})`:c.toolName,e=aC.current.permissionRules;(b?e.allow:e.deny).includes(d)||dJ(b?{...e,allow:[...e.allow,d]}:{...e,deny:[...e.deny,d]})}}try{await c$(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))}}},[dJ]),dL=(0,U.useCallback)(a=>{aA.current=a},[]),dM=(0,U.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=bO.current;c&&c$(c,{type:"goal_start",goalText:b}).catch(()=>{})},[]),dN=(0,U.useCallback)(()=>{if("running"!==aI.current.status)return;aH(a=>({...a,status:"paused"}));let a=bO.current;a&&c$(a,{type:"goal_pause"}).catch(()=>{})},[]),dO=(0,U.useCallback)(()=>{let a=aI.current;if("paused"!==a.status&&"blocked"!==a.status)return;aH(a=>({...a,status:"running"}));let b=bO.current;b&&c$(b,{type:"goal_resume"}).catch(()=>{})},[]),dP=(0,U.useCallback)(()=>{aL.current=!1,aA.current=null,aH(a=>({...a,status:"idle",goalText:null,turnsUsed:0,noProgressTurns:0}));let a=bO.current;a&&c$(a,{type:"goal_stop"}).catch(()=>{})},[]),dQ=(0,U.useCallback)(a=>{let b=a.trim();if(!b)return;aH(a=>({...a,goalText:b}));let c=bO.current;c&&c$(c,{type:"goal_edit",goalText:b}).catch(()=>{})},[]),dR=(0,U.useCallback)(()=>{let a=cc.current,b=b5.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);b8.current=e>=d-150,ca.current=Date.now()+700,a.scrollTo({top:e,behavior:"smooth"})},[]);(0,U.useCallback)(a=>{if(a instanceof KeyboardEvent){if(!uB.has(a.key)||a.target instanceof Element&&a.target.closest("input, textarea, [contenteditable='true']"))return}else if(a instanceof PointerEvent){let b=cc.current;if(b&&a.target instanceof Element&&!b.contains(a.target))return}b9.current=Date.now()+1200},[]),(0,U.useCallback)(()=>{let a=cc.current;if(a){let{scrollTop:b,clientHeight:c,scrollHeight:d}=a,e=bX.current,f=b8.current,g=function(a,b,c,d,e,f=96){return!!ut(c,d,e)||!(c<b)&&(!!(!a&&c>b&&ut(c,d,e,f))||a)}(f,bU.current,b,c,d,e?96:8);b8.current=g,bU.current=b;let h=function(a,b,c,d=8){return!(c<=b)&&!ut(a,b,c,d)}(b,c,d);bf(a=>a===h?a:h),!f&&g&&e&&c9("auto")}if(Date.now()<b9.current){b7.current=!1;return}Date.now()<ca.current||(b7.current=!1)},[]),(0,U.useRef)(null);let[dS,dT]=(0,U.useState)(0);b?.id;let dU=n?.tree??[];return{isAutoThinkingSelection:l&&null===cI,data:n,loading:s,error:u,activeLeafId:w,messages:y,activeToolResults:A,entryIds:C,historyCursor:E,hasEarlierMessages:G,streamState:I,agentRunning:R,bashRunning:T,pendingBash:W,modelNames:Y,modelList:$,modelThinkingLevels:aa,modelThinkingLevelMaps:ac,modelScopeWarnings:ae,modelsError:ag,newSessionModel:ai,toolPreset:am,thinkingLevel:cJ??aM,retryInfo:aQ,contextUsage:aS,systemPrompt:aU,forkingEntryId:aW,isCompacting:a4,compactError:a6,compactResult:a8,currentModel:cF,displayModel:cG,sessionStats:cK,tokenRate:L,planMode:ax,collaborationMode:at,tokenMode:au,toolApprovalMode:av,permissionRules:aw,modeSettings:aq,approvalRequests:aD,handleCollaborationModeChange:dG,handleTokenModeChange:dH,handleToolApprovalModeChange:dI,handlePermissionRulesChange:dJ,resolveApproval:dK,setActiveGoalText:dL,goalState:aG,handleGoalStart:dM,handleGoalPause:dN,handleGoalResume:dO,handleGoalStop:dP,handleGoalEdit:dQ,slashCommands:bg,slashCommandsLoading:bi,queuedMessages:bw,pendingRecovery:bz,recoveryIsImport:bC,notices:bk.visible,extensionDialog:bo,extensionCustomUi:bq,extensionStatuses:bs,extensionWidgets:bu,respondToExtensionUi:cU,sendExtensionCustomInput:cV,agentPhase:ba,isNew:l,promptAnchorActive:bc,branchTree:dU,autoCompactionEnabled:aJ,sessionIdRef:bO,eventSourceRef:bH,messagesEndRef:cb,scrollContainerRef:cc,lastUserMsgRef:b5,pendingScrollToUserRef:b6,initialScrollDoneRef:b4,scrollUserMsgToTop:dR,handleSend:db,executeBash:dc,handleAbort:dd,handleFork:de,handleNavigate:df,handleModelChange:di,handleCompact:dj,handleSteer:dn,handleFollowUp:dq,handlePromptWithStreamingBehavior:dp,handleAbortCompaction:dr,handleRecallQueue:ds,resolveRecovery:dt,exportQueueData:du,importQueueData:dv,stageQueueImport:dw,moveQueuedMessage:dx,recallQueuedMessage:dy,requeueAt:dz,removeQueuedMessage:dA,handleBuiltinSlashCommand:dl,handleToolPresetChange:dC,handleThinkingLevelChange:dB,loadTools:cM,loadSlashCommands:cP,reloadModels:dk,setActiveLeafId:x,setData:o,setMessages:z,loadContext:c_,dispatch:J,setAgentRunning:S,setForkingEntryId:aX,handleLeafChange:dg,handleAgentEventRef:b3}}({session:a,newSessionCwd:b,onAgentEnd:F,onSessionCreated:e,onSessionForked:f,modelsRefreshKey:g,chatInputRef:h,onBranchDataChange:i,onSystemPromptChange:j,onSessionStatsPanelOpen:l}),[bl,bm]=(0,U.useState)(!1),bn=(0,U.useMemo)(()=>{let a=L.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:re(a.model)?rf(a.model,b):0,costUSD:re(a.model)?0:b.cost?.total??0}},[L]),[bo,bp]=(0,U.useState)(!1),[bq,br]=(0,U.useState)(null);(0,U.useRef)(!1);let bs=(0,U.useCallback)(()=>{bp(!1);let a=bt.current;a&&a7("plan"===a5?"normal":a5).catch(a=>{console.error("Failed to leave plan mode before executing:",a)}).then(()=>{aJ(C("tasks.planReviewExecutePrompt",{plan:a}))})},[a7,aJ,C,a5]),bt=(0,U.useRef)(null),bu=(0,U.useCallback)(a=>{bp(!1),aJ(a)},[aJ]),bv=(0,U.useCallback)(()=>{bp(!1),a7("plan"===a5?"normal":a5)},[a7,a5]),[bw,bx]=(0,U.useState)(!1),[by,bz]=(0,U.useState)(!1),[bA,bB]=(0,U.useState)(!1),bC=(0,U.useCallback)(()=>{let a=aE.current;if(!a)return;let b=a.scrollHeight-a.scrollTop-a.clientHeight;bx(a.scrollTop>1),bz(b>1),bB(b>240)},[aE]),bD=(0,U.useCallback)(()=>{window.requestAnimationFrame(()=>{let a=aE.current,b=aD.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(),bC(),window.setTimeout(d,200)})},[aD,aE,bC,h]);(0,U.useRef)(!1),(0,U.useRef)(!1);let bE=(0,U.useRef)(null),bF=(0,U.useRef)([]),bG=(0,U.useRef)(new Map),bH=(0,U.useRef)(null),[bI,bJ]=(0,U.useState)(0),bK=(0,U.useMemo)(()=>({getOffsetForIndex:a=>bE.current?.getOffsetForIndex(a)?.[0]??0,sizeFor:a=>{let b=bE.current;if(!b)return 0;let c=b.measurementsCache[a];return c?.size??b.options.estimateSize?.(a)??0},totalHeight:()=>bE.current?.getTotalSize()??0,refToItemIndex:a=>bF.current[a],itemCount:bF.current.length}),[]);aj&&[aj.sessionId,aj.sessionFile??"",aj.sessionName??"",aj.userMessages,aj.assistantMessages,aj.toolCalls,aj.toolResults,aj.totalMessages,aj.tokens.input,aj.tokens.output,aj.tokens.cacheRead,aj.tokens.cacheWrite,aj.tokens.total,aj.cost??0,aj.totalActiveMs??0].join("|"),(0,U.useRef)(aj).current=aj,ad&&(ad.percent,ad.contextWindow,ad.tokens),(0,U.useRef)(ad).current=ad;let{isDragOver:bL,handleDragEnter:bM,handleDragOver:bN,handleDragLeave:bO,handleDrop:bP}=function(a){let[b,c]=(0,U.useState)(!1),d=(0,U.useRef)(0),e=(0,U.useCallback)(a=>{a.dataTransfer.files.length&&(a.preventDefault(),d.current+=1,c(!0))},[]),f=(0,U.useCallback)(a=>{a.dataTransfer.files.length&&a.preventDefault()},[]);return{isDragOver:b,handleDragEnter:e,handleDragOver:f,handleDragLeave:(0,U.useCallback)(()=>{d.current-=1,d.current<=0&&(d.current=0,c(!1))},[]),handleDrop:(0,U.useCallback)(b=>{b.preventDefault(),d.current=0,c(!1),a(Array.from(b.dataTransfer.files),b.dataTransfer)},[a])}}((0,U.useCallback)((a,b)=>{if(P){let b=a.filter(a=>a.type.startsWith("image/"));b.length&&h?.current?.addImages(b);return}h?.current?.addFiles(a,b)},[P,h])),bQ=L.filter(a=>"user"===a.role||"assistant"===a.role||hA(a));(0,U.useMemo)(()=>{let a=new Map(M);for(let b of L)"toolResult"===b.role&&a.set(b.toolCallId,b);return a},[M,L]);let bR=(0,U.useMemo)(()=>{let a=new Set,b=[];for(let d=L.length-1;d>=0&&b.length<50;d-=1){var c;let e="user"!==(c=L[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},[L]),bS=(v=bQ.length,(w=(0,U.useRef)([])).current.length!==v&&(w.current=Array.from({length:v},(a,b)=>w.current[b]??null)),w),bT=ay&&0===L.length&&!O.isStreaming&&!P,bU=a?.cwd??b??void 0;!function(a=!0){}(!!a?.id||!bT);let bV=(0,U.useMemo)(()=>h2(L,N,bU,M),[L,N,bU,M]),bW=ai?W[`${ai.provider}:${ai.modelId}`]??null:null,bX=ai?X[`${ai.provider}:${ai.modelId}`]??null:null,bY=(0,U.useCallback)(()=>{$()},[$]),bZ=(0,U.useCallback)(a=>{a7(a)},[a7]),b$=a?.relation?.kind==="subagent"?(0,T.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,T.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,T.jsx)("rect",{x:"3",y:"11",width:"18",height:"10",rx:"2"}),(0,T.jsx)("circle",{cx:"12",cy:"5",r:"2"}),(0,T.jsx)("path",{d:"M12 7v4"})]}),C("subagent.readOnlyNotice")]}):(0,T.jsx)(tI,{ref:h,onSend:aJ,onBash:aK,tasksBoardEnabled:r,onAbort:aL,onSteer:P?aQ:void 0,onFollowUp:P?aR:void 0,onPromptWithStreamingBehavior:P?aS:void 0,isStreaming:P,model:ai,modelNames:S,modelList:V,modelScopeWarnings:Y,modelsError:Z,onRetryModels:bY,onModelChange:aO,compactResult:ah,toolPreset:_,onToolPresetChange:a||ay?a1:void 0,collaborationMode:a5,toolApprovalMode:a6,onCollaborationModeChange:bZ,onToolApprovalModeChange:a8,goalState:bb,onGoalStart:bc,onGoalPause:bd,onGoalResume:be,onGoalStop:bf,thinkingLevel:aa,isAutoThinkingSelection:ab,onThinkingLevelChange:a||ay?a2:void 0,availableThinkingLevels:bW,thinkingLevelMap:bX,retryInfo:ac,queuedMessages:an,inputHistory:bR,onRecallQueue:aU,onMoveQueue:aY,onRecallOne:aZ,onRequeueAt:a$,onRemoveQueueItem:a_,slashCommands:al,slashCommandsLoading:am,onLoadSlashCommands:a3,onBuiltinCommand:a0,onAudioUnlock:A,draftKey:a?.id??(b?`new:${b}`:void 0),cwd:a?.cwd??b,topCenterControl:bA?(0,T.jsx)("button",{type:"button",className:"chat-input-top-center",onClick:bD,title:C("desktop.scrollToBottom"),"aria-label":C("desktop.scrollToBottom"),children:(0,T.jsx)(q3,{size:16,weight:"bold","aria-hidden":"true"})}):void 0}),b_=au.filter(a=>"belowEditor"!==a.placement),b0=au.filter(a=>"belowEditor"===a.placement),b1=af?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}(ax,C);return J?(0,T.jsx)("div",{className:"flex h-full items-center justify-center text-text-muted",children:C("desktop.loadingSession")}):K?(0,T.jsx)("div",{className:"flex h-full items-center justify-center text-red-400",children:K}):(0,T.jsxs)("div",{className:"relative flex h-full min-w-0 flex-col overflow-hidden",onDragEnter:bM,onDragOver:bN,onDragLeave:bO,onDrop:bP,children:[bL&&(0,T.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,T.jsx)("div",{className:"pointer-events-none absolute inset-0 flex items-center justify-center",children:[0,.8,1.6].map(a=>(0,T.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,T.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,T.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,T.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,T.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,T.jsxs)("g",{stroke:"rgba(37,99,235,0.45)",strokeWidth:"1.4",strokeLinecap:"round",children:[(0,T.jsx)("line",{x1:"96",y1:"46",x2:"96",y2:"43"}),(0,T.jsx)("line",{x1:"96",y1:"70",x2:"96",y2:"73"}),(0,T.jsx)("line",{x1:"84",y1:"58",x2:"81",y2:"58"}),(0,T.jsx)("line",{x1:"108",y1:"58",x2:"111",y2:"58"}),(0,T.jsx)("line",{x1:"87.5",y1:"49.5",x2:"85.4",y2:"47.4"}),(0,T.jsx)("line",{x1:"104.5",y1:"66.5",x2:"106.6",y2:"68.6"}),(0,T.jsx)("line",{x1:"104.5",y1:"49.5",x2:"106.6",y2:"47.4"}),(0,T.jsx)("line",{x1:"87.5",y1:"66.5",x2:"85.4",y2:"68.6"})]})]})]}),ar&&(0,T.jsx)(uN,{request:ar,onRespond:av}),as&&(0,T.jsx)(uO,{request:as,onInput:aw}),!ay&&ao.length>0&&!bl&&(0,T.jsx)(tL,{items:ao,sessionId:a?.id,onResolve:aV,onExport:aW,onStageImport:aX,onDismiss:()=>bm(!0),mode:ap?"import":"recovery"}),a9.length>0&&(0,T.jsx)(rT,{request:a9[0]??null,queuedCount:Math.max(0,a9.length-1),busy:!1,onResolve:(a,b,c)=>{let d=a9[0];d&&ba(d.id,a,b,c)}}),bT?(0,T.jsx)("div",{className:"flex flex-1 flex-col items-center justify-center overflow-y-auto",children:(0,T.jsxs)("div",{className:"w-full max-w-[820px]",children:[(0,T.jsx)("div",{style:{display:"flex",justifyContent:"center",marginBottom:28},children:(0,T.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,T.jsx)("title",{children:"Pi"}),(0,T.jsx)("path",{clipRule:"evenodd",d:"M1 1h16.5v11H12v5.5H6.5V23H1V1zm5.5 5.5V12H12V6.5H6.5z"}),(0,T.jsx)("path",{d:"M17.5 12H23v11h-5.5V12z"})]})}),B&&(0,T.jsxs)("div",{style:{display:"flex",justifyContent:"center",alignItems:"center",gap:10,marginBottom:18,marginTop:-14},children:[(0,T.jsxs)("span",{style:{fontSize:11,color:"var(--text-muted)",fontFamily:"var(--font-mono)"},children:["web ",(0,T.jsxs)("span",{style:{color:"var(--text)"},children:["v","0.18.13"]})]}),(0,T.jsxs)("span",{style:{fontSize:11,color:"var(--text-muted)",fontFamily:"var(--font-mono)"},children:["pi ",(0,T.jsxs)("span",{style:{color:"var(--text)"},children:["v","0.87.1"]})]})]}),(0,T.jsx)("div",{style:{padding:"0 34px 6px 7px",paddingRight:B?16:34},children:(0,T.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:12},children:[(0,T.jsx)("div",{ref:o,style:{display:"flex",alignItems:"center",minWidth:0,flex:1,minHeight:48}}),(0,T.jsxs)("div",{style:{display:B?"none":"flex",flexDirection:"column",alignItems:"flex-end",gap:2,flexShrink:0},children:[(0,T.jsxs)("span",{style:{fontSize:11,color:"var(--text-muted)",fontFamily:"var(--font-mono)"},children:["web ",(0,T.jsxs)("span",{style:{color:"var(--text)"},children:["v","0.18.13"]})]}),(0,T.jsxs)("span",{style:{fontSize:11,color:"var(--text-muted)",fontFamily:"var(--font-mono)"},children:["pi ",(0,T.jsxs)("span",{style:{color:"var(--text)"},children:["v","0.87.1"]})]})]})]})}),(0,T.jsx)("div",{style:{padding:"0 16px",paddingRight:B?16:34},children:(0,T.jsx)(uM,{notices:aq,align:"right"})}),"goal"===a5&&(0,T.jsx)(rP,{goalState:bb,onPause:bd,onResume:be,onStop:bf,onEdit:bg}),b$,(0,T.jsx)("div",{style:{padding:"0 16px 6px",paddingRight:B?16:34,marginTop:-15},children:(0,T.jsx)(t0,{onViewFullHistory:p,cwd:bU,systemPrompt:q,sessionStats:aj,contextUsage:ad,hasSession:!!a,showChat:!0,showSoundLabel:!0,soundEnabled:x,onSoundToggle:y,onCompact:a?aP:void 0,onAbortCompaction:aT,isCompacting:af,compactError:ag,lastTurnUsage:bn})})]})}):(0,T.jsxs)(T.Fragment,{children:[(0,T.jsxs)("div",{className:"relative flex flex-1 overflow-hidden z-0",children:[(0,T.jsx)("div",{style:{position:"absolute",top:12,left:0,right:18*!B,zIndex:40,padding:"0 16px",pointerEvents:"none"},children:(0,T.jsx)("div",{style:{maxWidth:820,margin:"0 auto"},children:(0,T.jsx)(uM,{notices:aq,floating:!0,align:"right"})})}),(0,T.jsxs)("div",{className:"relative flex-1 min-h-0 min-w-0",children:[(0,T.jsx)("div",{ref:aE,className:"scrollbar-subtle h-full min-w-0 overflow-x-hidden overflow-y-auto pt-4 [scrollbar-gutter:stable]",children:(0,T.jsx)("div",{style:{minWidth:0,padding:"0 16px"},children:(0,T.jsxs)("div",{style:{width:"100%",minWidth:0,maxWidth:820,margin:"0 auto"},children:[(0,T.jsxs)("div",{ref:bH,children:[(0,T.jsx)(uK,{statuses:at}),(0,T.jsx)(uL,{widgets:b_})]}),(()=>{let{toolResultsMap:b,lastUserIdx:c,visibleRefIndexByMessage:d,items:e}=bV;for(let a=L.length-1;a>=0&&!hA(L[a]);a--);let f=bG.current,g=(e,g={})=>{let h=g.messageOverride??L[e];if(!h||"toolResult"===h.role)return null;let i="user"===h.role||"assistant"===h.role||hA(h),j=d.get(e),k=g.keyPrefix??"message",l=!1;if("assistant"===h.role){l=!0;for(let a=e+1;a<L.length;a++){let b=L[a].role;if("user"===b)break;if("assistant"===b){l=!1;break}}l&&O.isStreaming&&e===L.length-1&&(l=!1)}void 0!==g.showTimestamp&&(l=g.showTimestamp);let m=(0,T.jsx)(rj,{message:h,toolResults:b,modelNames:S,cwd:bU,onOpenFile:n,entryId:N[e],onFork:P||ay?void 0:aM,forking:ae===N[e],onNavigate:P?void 0:aN,onEditContent:G,onQuoteReply:H,onOpenSession:s,onCreateTask:I,showTimestamp:l,prevTimestamp:e>0?L[e-1].timestamp:void 0,sessionId:a?.id??aC.current??void 0,writtenFiles:g.writtenFiles},`${k}-view-${e}`);return i&&!1!==g.attachRef&&void 0!==j?(0,T.jsx)("div",{ref:((a,b)=>{let d=f.get(b);if(!d){let a={isLastUser:!1};d={state:a,callback:c=>{bS.current[b]=c,a.isLastUser&&(aF.current=c,c&&aG.current&&(aG.current=!1,aH.current=!0,aI()))}},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)=>N[a]||`${b}-${a}`,m=a=>`live-answer-u${a}`,o=a=>`answer-${l(a,"user")}`,p=a=>`subagent-${a}`,q=a=>hH(a.result?.details)?a.result.details.sessionId:"",r=a=>{let b=q(a);if(b&&u){let a=u.get(b);if(a)return"running"===a.status}let c=hH(a.result?.details)?a.result.details:null;return c?"running"===c.status||"starting"===c.status:!a.result},v=(a,b)=>`live-process-u${a}-seg${b}`,w=(a,b,c)=>`process-${l(a,"user")}-${c||`seg${b}`}`;for(let f of e){if("single"===f.kind){if(L[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((P||O.isStreaming)&&h===L.length&&(e===c||i)){e>=0&&k(g(e),d.get(e),l(e,"user"));let c=O.streamingMessage?.role==="assistant",f=[],i=!c&&j>=0?j:h;for(let a=e+1;a<i;a++)h0(L[a])&&f.push(a);let o=hM(L,N,f,b),r=null;if(!c&&j>=0){let a=L[j],c=hF(a,{isStreaming:!0}),d=hL(a,{messageIndex:j,entryId:N[j],toolResults:b,isStreaming:!0});o=o.concat(d.processBlocks),c.answerBlocks.length>0&&(r=h1(a,c.answerBlocks,{omitUsage:!0}))}if(c){let a=O.streamingMessage,c=hF(a,{isStreaming:!0}),d=hL(a,{messageIndex:L.length,toolResults:b,isStreaming:!0});o=o.concat(d.processBlocks),c.answerBlocks.length>0&&(r=h1(a,c.answerBlocks,{omitUsage:!0}))}if(o.length>0){let b=f.map(a=>d.get(a)).find(a=>"number"==typeof a);hI(o).forEach((c,f)=>{let g=d.get(c.blocks[0].origin.sourceMessageIndex)??b;if("subagent"===c.kind&&c.subagent)return void k((0,T.jsx)(sM,{run:c.subagent,onOpenSubagent:t,sessionRun:u?.get(q(c.subagent))},p(c.subagent.toolCallId)),g,p(c.subagent.toolCallId));if("output"===c.kind){let a=c.blocks[0],b=d.get(a.origin.sourceMessageIndex);k((0,T.jsx)(rj,{message:{role:"assistant",provider:"",model:"",content:c.blocks},isStreaming:a.origin.sourceMessageIndex===L.length,cwd:bU,onOpenFile:n,onQuoteReply:H,onOpenSession:s}),b,`output-${a.id}`);return}k((0,T.jsx)("div",{ref:void 0===g?void 0:a=>{bS.current[g]=a},children:(0,T.jsx)(sJ,{blocks:c.blocks,isStreaming:P||O.isStreaming,cwd:bU,onOpenFile:n,sessionId:a?.id??aC.current??void 0,tokenRate:ak})},v(e,f)),g,v(e,f))})}r&&k((0,T.jsx)(rj,{message:r,isStreaming:!0,modelNames:S,cwd:bU,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:x,writtenFiles:y,visibleProcessIndices:z}=f;if(f.processBlocks.length>0){let b=z.map(a=>d.get(a)).find(a=>"number"==typeof a)??(x?void 0:d.get(j));f.processSegments.forEach((c,f)=>{let g=d.get(c.blocks[0].origin.sourceMessageIndex)??b;if("subagent"===c.kind&&c.subagent)return void k((0,T.jsx)(sM,{run:c.subagent,onOpenSubagent:t,sessionRun:u?.get(q(c.subagent))},p(c.subagent.toolCallId)),g,p(c.subagent.toolCallId));if("output"===c.kind){let a=c.blocks[0];k((0,T.jsx)(rj,{message:{role:"assistant",provider:"",model:"",content:c.blocks},cwd:bU,onOpenFile:n,onQuoteReply:H,onOpenSession:s}),d.get(a.origin.sourceMessageIndex),`output-${a.id}`);return}k((0,T.jsx)("div",{ref:void 0===g?void 0:a=>{bS.current[g]=a},children:(0,T.jsx)(sJ,{blocks:c.blocks,isStreaming:"subagent"===c.kind&&void 0!==c.subagent&&r(c.subagent),defaultExpanded:!1,onAutoExpanded:void 0,cwd:bU,onOpenFile:n,sessionId:a?.id??aC.current??void 0})},`process-group-${e}-${f}`),g,w(e,f,c.blocks[0]?.id??""))})}if(x&&k(g(j,{messageOverride:x,writtenFiles:y}),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 x=[],y=i.map((a,b)=>({startRef:a,itemIdx:b})).filter(a=>void 0!==a.startRef);return y.forEach((a,b)=>{let c=y[b+1]?.startRef??bQ.length;for(let b=a.startRef;b<c;b++)x[b]=a.itemIdx}),bF.current=x,(0,T.jsx)(uh,{scrollElementRef:aE,items:h,itemKeys:j,virtualizerRef:bE,headerHeight:bI})})(),b1&&(af||P&&!O.streamingMessage)&&(0,T.jsx)("div",{className:"py-2 text-[13px] text-text-muted",children:(0,T.jsxs)("span",{className:"animate-[pulse_1.5s_infinite]",children:[b1,ax?.kind==="waiting_model"&&(0,T.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"}})]})}),R&&(0,T.jsx)(rj,{message:{role:"bashExecution",command:R.command,output:"",excludeFromContext:R.excludeFromContext},sessionId:a?.id??aC.current??void 0}),Q&&!R&&(0,T.jsx)("div",{className:"py-2 text-[13px] text-text-muted",children:(0,T.jsx)("span",{className:"animate-[pulse_1.5s_infinite]",children:C("desktop.runningShellCommand")})}),(0,T.jsx)("div",{style:{height:96}}),(0,T.jsx)("div",{ref:aD}),(0,T.jsx)(rI,{open:bo,planText:bq,busy:P,onExecute:bs,onFeedback:bu,onExit:bv,onClose:()=>bp(!1)})]})})}),bw&&(0,T.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"}),by&&(0,T.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,T.jsx)(uk,{messages:L,streamingMessage:O.streamingMessage,scrollContainer:aE,messageRefs:bS,virtualizer:bK})]}),(0,T.jsxs)("div",{className:"relative z-10",children:[(0,T.jsx)("div",{style:{padding:"0 16px",paddingRight:B?16:34},children:(0,T.jsx)("div",{style:{maxWidth:820,margin:"0 auto"},children:(0,T.jsx)(uL,{widgets:b0})})}),b$,(0,T.jsx)("div",{className:`session-info-bar-wrap${B?" is-mobile":""}`,children:(0,T.jsx)("div",{className:"session-info-bar-inner",children:(0,T.jsx)(t0,{onViewFullHistory:p,cwd:bU,systemPrompt:q,sessionStats:aj,contextUsage:ad,hasSession:!!a,showChat:!0,soundEnabled:x,onSoundToggle:y,onCompact:a?aP:void 0,onAbortCompaction:aT,isCompacting:af,compactError:ag,branchTree:az,branchActiveLeafId:aA,onBranchLeafChange:aB,lastTurnUsage:bn})})})]})]})]})}function uK({statuses:a}){return 0===a.length?null:(0,T.jsx)("div",{style:{display:"flex",flexWrap:"wrap",gap:6,marginBottom:10},children:a.map(a=>(0,T.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,T.jsx)("span",{style:{color:"var(--accent)",fontFamily:"var(--font-mono)",fontSize:11},children:a.key}),(0,T.jsx)("span",{style:{minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a.text})]},a.key))})}function uL({widgets:a}){return 0===a.length?null:(0,T.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:8,marginBottom:10},children:a.map(a=>(0,T.jsxs)("div",{style:{border:"1px solid var(--border)",borderRadius:7,background:"var(--bg-panel)",overflow:"hidden"},children:[(0,T.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,T.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 uM({notices:a,floating:b=!1,align:c="left"}){return 0===a.length?null:(0,T.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,T.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,T.jsx)("span",{style:{width:7,height:7,borderRadius:"50%",background:e,flexShrink:0}}),(0,T.jsx)("span",{style:{padding:"10px 0",minWidth:0,maxWidth:"100%",overflowWrap:"anywhere",whiteSpace:"pre-wrap"},children:c.message})]},c.id)})})}function uN({request:a,onRespond:b}){let{t:c}=(0,bk.s)(),[d,e]=(0,U.useState)("editor"===a.method?a.prefill??"":""),[f,g]=(0,U.useState)(!1),[h,i]=(0,U.useState)(()=>Date.now()),j=(0,U.useCallback)(a=>a?.focus(),[]);!function(a){if("select"===a.method&&a.options.length>0)return a.options[0];if("confirm"===a.method){let b=a.message.split("\n").find(a=>a.trim());b?.trim()}}(a);let k=void 0===a.expiresAt?null:Math.max(0,Math.ceil((a.expiresAt-h)/1e3)),l=null!==k&&(0,T.jsx)("span",{style:{fontSize:11,color:"var(--text-dim)",whiteSpace:"nowrap",flexShrink:0},children:c("chat.extensionExpiresIn",{seconds:k})}),m=()=>{"confirm"===a.method?b(a,{confirmed:!0}):b(a,{value:d})};return(0,T.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,T.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,T.jsxs)("div",{style:{flexShrink:0,display:"flex",alignItems:"flex-start",gap:8,padding:"12px 14px",borderBottom:"1px solid var(--border)",maxHeight:"50%",overflowY:"auto"},children:[(0,T.jsxs)("div",{style:{flex:1,minWidth:0},children:[(0,T.jsx)("div",{style:{color:"var(--text)",fontSize:14,fontWeight:650,lineHeight:1.45,whiteSpace:"pre-wrap",overflowWrap:"anywhere"},children:a.title}),(0,T.jsxs)("div",{style:{display:"flex",flexWrap:"wrap",gap:8,marginTop:3,color:"var(--text-dim)",fontSize:11,fontFamily:"var(--font-mono)"},children:[(0,T.jsx)("span",{children:c("desktop.extensionRequest")}),l]})]}),(0,T.jsx)("button",{type:"button",onClick:()=>g(!0),"aria-expanded":!0,title:c("chat.extensionCollapse"),"aria-label":c("chat.extensionCollapse"),style:{display:"grid",placeItems:"center",width:28,height:28,borderRadius:6,border:"1px solid var(--border)",background:"var(--bg-panel)",color:"var(--text-muted)",cursor:"pointer",flexShrink:0},children:(0,T.jsx)("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",stroke:"currentColor",strokeWidth:"1.6",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:(0,T.jsx)("polyline",{points:"2 3.5 5 6.5 8 3.5"})})})]}),(0,T.jsxs)("div",{style:{padding:14},children:["confirm"===a.method&&(0,T.jsx)(qL,{children:a.message}),"select"===a.method&&(0,T.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,T.jsx)("div",{role:"button",tabIndex:0,"data-extension-option":!0,"aria-label":c,ref:0===d?j: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,overflowWrap:"anywhere",scrollMargin:14},children:(0,T.jsx)("div",{inert:!0,children:(0,T.jsx)(qL,{children:c})})},c))}),"input"===a.method&&(0,T.jsx)("input",{autoFocus:!0,className:"extension-input",value:d,placeholder:a.placeholder,onChange:a=>e(a.target.value),onKeyDown:c=>{"Enter"===c.key&&m(),"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,T.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&&m()},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,T.jsxs)("div",{style:{display:"flex",justifyContent:"flex-end",gap:8,padding:"10px 14px",borderTop:"1px solid var(--border)",background:"var(--bg-panel)"},children:[(0,T.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,T.jsx)("button",{onClick:m,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,T.jsx)("button",{onClick:m,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 uO({request:a,onInput:b}){let{t:c}=(0,bk.s)(),d=(0,U.useRef)(null),e=function(a){let b=/^[┌├└╭╰][─┬┴┼]+[┐┤┘╮╯]$/,c=[];for(let d of a){let a=hw(d).trimEnd();if(b.test(a))continue;let e=d,f=hz(e);("│"===f||"┃"===f)&&" "===hz(e=hy(e,0))&&(e=hy(e,0));let g=function(a){let b=hx(a);for(let a=b.length-1;a>=0;a--)if(""!==b[a].char.trim())return a;return -1}(e),h=g>=0?hx(e)[g]?.char:void 0;("│"===h||"┃"===h)&&(e=hy(e,g)),c.push(function(a){let b=a;for(;;){let a=hx(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&&""===hw(c[0]).trim();)c.shift();for(;c.length>0&&""===hw(c[c.length-1]).trim();)c.pop();return c.length?c:a}(a.lines);return(0,T.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,T.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,T.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:12,padding:"10px 12px",borderBottom:"1px solid var(--border)"},children:[(0,T.jsx)("div",{style:{color:"var(--text)",fontSize:13,fontWeight:650},children:c("desktop.extensionPanel")}),(0,T.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,T.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,T.jsxs)(U.Fragment,{children:[(d=`line-${b}`,(function(a){let b,c=[],d={},e=0;for(ht.lastIndex=0;null!==(b=ht.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=hu[d-30];else if(d>=90&&d<=97)c.color=hv[d-90];else if(d>=40&&d<=47)c.backgroundColor=hu[d-40];else if(d>=100&&d<=107)c.backgroundColor=hv[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 hu[a];if(a>=8&&a<16)return hv[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,T.jsx)("span",{style:a.style,children:a.text},`${d}-${b}`):a.text)),b<c.length-1?"\n":null]},b)})})]})})}let uP=new Map([["bold",U.createElement(U.Fragment,null,U.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",U.createElement(U.Fragment,null,U.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"}),U.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",U.createElement(U.Fragment,null,U.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",U.createElement(U.Fragment,null,U.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",U.createElement(U.Fragment,null,U.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",U.createElement(U.Fragment,null,U.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"}))]]),uQ=U.forwardRef((a,b)=>U.createElement(Y,{ref:b,...a,weights:uP}));uQ.displayName="FloppyDiskIcon";let uR={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"},uS={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 uT(a){return(a.replace(/\\/g,"/").split("/").pop()??"").toLowerCase().split(".").pop()??""}function uU(a,b,c,d={}){let e=f1(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 uV({filePath:a,sourceSessionId:b}){let{t:c}=(0,bk.s)();return(0,T.jsx)("a",{href:uU(a,"download",b),download:f2(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,T.jsx)(aN,{size:11,"aria-hidden":"true"})})}let uW={fontFamily:"var(--font-mono)",fontSize:13,lineHeight:1.6,tabSize:2},uX={fontFamily:"var(--font-mono)",fontSize:13,lineHeight:1.6,padding:"12px 0 12px 16px",color:"var(--text-dim)",textAlign:"right",userSelect:"none"};async function uY(a,b){let c=await fetch(`/api/files/${f1(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 uZ={delete:"3px solid var(--git-status-deleted)",add:"3px solid var(--git-status-added)",edit:"3px solid var(--git-status-modified)"},u$="var(--git-status-deleted-bg)",u_="var(--git-status-added-bg)",u0="var(--git-status-added)";function u1(a){return a<1024?`${a} B`:a<1048576?`${(a/1024).toFixed(1)} KB`:`${(a/1048576).toFixed(1)} MB`}function u2({oldContent:a,newContent:b}){let{t:c}=(0,bk.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,T.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,T.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,T.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?u$:"added"===a.kind?u_:"transparent",c=a.block?uZ[a.block]:"3px solid transparent",d="added"===a.kind?u0:"var(--text-dim)";return(0,T.jsxs)("div",{style:{display:"flex",background:b,borderLeft:c},children:[(0,T.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,T.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,T.jsx)("div",{children:h},b)})})}function u3({patch:a}){let b=qX(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,T.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,T.jsxs)("div",{children:[(0,T.jsx)("div",{style:{height:"1.55em"}}),(0,T.jsx)("div",{style:{padding:"3px 12px",color:"var(--accent-blue)",background:"var(--bg-secondary)"},children:a.text}),(0,T.jsx)("div",{style:{height:"1.55em"}})]},a.key);let b="removed"===a.kind?u$:"added"===a.kind?u_:"transparent",c=a.block?uZ[a.block]:"3px solid transparent",d="added"===a.kind?u0:"var(--text-dim)";return(0,T.jsxs)("div",{style:{display:"flex",background:b,borderLeft:c},children:[(0,T.jsx)("span",{style:{width:44,flexShrink:0,padding:"0 8px 0 16px",textAlign:"right",color:d,userSelect:"none",fontSize:11},children:a.lineNo??""}),(0,T.jsx)("span",{style:{flex:1,minWidth:0,padding:"0 8px 0 0",whiteSpace:"pre",color:"var(--text)"},children:a.text||"\xa0"})]},a.key)})})}function u4({filePath:a,cwd:b,sourceSessionId:c}){let{t:d}=(0,bk.s)(),[e,f]=(0,U.useState)(0),[g,h]=(0,U.useState)(null),[i,j]=(0,U.useState)(null),[k,l]=(0,U.useState)(null);(0,U.useRef)(null);let m=f2(a).toLowerCase().split(".").pop()??"",n=uU(a,"read",c,e?{v:e}:void 0),o=null!=g?u1(g):null;return(0,T.jsxs)("div",{style:{display:"flex",flexDirection:"column",height:"100%",overflow:"hidden"},children:[(0,T.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,T.jsx)("span",{style:{fontFamily:"var(--font-mono)",minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",flex:"0 1 auto"},title:a,children:f3(a,b)}),(0,T.jsx)("span",{style:{marginLeft:"auto"},children:m||d("desktop.image")}),i&&(0,T.jsxs)("span",{children:[i.w," \xd7 ",i.h]}),o&&(0,T.jsx)("span",{children:o}),(0,T.jsx)(uV,{filePath:a,sourceSessionId:c})]}),(0,T.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,T.jsx)("div",{style:{color:"var(--status-error)",fontSize:13},children:k}):(0,T.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 u5({filePath:a,cwd:b,sourceSessionId:c}){let{t:d}=(0,bk.s)(),[e,f]=(0,U.useState)(0),[g,h]=(0,U.useState)(null),[i,j]=(0,U.useState)(null),[k,l]=(0,U.useState)(null);(0,U.useRef)(null);let m=f2(a).toLowerCase().split(".").pop()??"",n=uU(a,"read",c,e?{v:e}:void 0);return(0,T.jsxs)("div",{style:{display:"flex",flexDirection:"column",height:"100%",overflow:"hidden"},children:[(0,T.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,T.jsx)("span",{style:{fontFamily:"var(--font-mono)",minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",flex:"0 1 auto"},title:a,children:f3(a,b)}),(0,T.jsx)("span",{style:{marginLeft:"auto"},children:m||d("desktop.audio")}),null!=i&&(0,T.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,T.jsx)("span",{children:u1(g)}),(0,T.jsx)(uV,{filePath:a,sourceSessionId:c})]}),(0,T.jsx)("div",{style:{flex:1,display:"flex",alignItems:"center",justifyContent:"center",padding:24,background:"var(--bg-panel)"},children:(0,T.jsxs)("div",{style:{width:"min(680px, 100%)"},children:[k&&(0,T.jsx)("div",{style:{color:"var(--status-error)",fontSize:13,marginBottom:12,textAlign:"center"},children:k}),(0,T.jsx)("audio",{controls:!0,preload:"metadata",src:n,onLoadedMetadata:a=>j(a.currentTarget.duration),onError:()=>l(d("desktop.failedToLoadAudio")),style:{width:"100%"}},n)]})})]})}function u6({filePath:a,cwd:b,sourceSessionId:c,initialPage:d}){let{t:e}=(0,bk.s)(),[f,g]=(0,U.useState)(0),[h,i]=(0,U.useState)(null),[j,k]=(0,U.useState)(null);(0,U.useRef)(null);let l=uT(a),m="pdf"===l,n=m&&d&&d>0?`#page=${d}`:"",o=m?`${uU(a,"read",c,f?{v:f}:void 0)}${n}`:uU(a,"preview",c,f?{v:f}:void 0);return(0,T.jsxs)("div",{style:{display:"flex",flexDirection:"column",height:"100%",overflow:"hidden"},children:[(0,T.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,T.jsx)("span",{style:{fontFamily:"var(--font-mono)",minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},title:a,children:f3(a,b)}),(0,T.jsx)("span",{style:{marginLeft:"auto"},children:"docx"===l?e("desktop.docxPreview"):"pdf"}),null!=h&&(0,T.jsx)("span",{children:u1(h)}),(0,T.jsx)(uV,{filePath:a,sourceSessionId:c})]}),(0,T.jsx)("div",{style:{flex:1,minHeight:0,background:"var(--bg-panel)"},children:j?(0,T.jsx)("div",{style:{height:"100%",display:"flex",alignItems:"center",justifyContent:"center",padding:24,color:"var(--status-error)",fontSize:13,textAlign:"center"},children:j}):(0,T.jsx)("iframe",{src:o,sandbox:m?void 0:"allow-same-origin",title:e("desktop.previewFile",{file:f2(a)}),style:{width:"100%",height:"100%",border:"none",background:m?"var(--bg)":"#eef1f5"}},o)})]})}function u7({filePath:a,cwd:b,sourceSessionId:c,onOpenFile:d,onAtMention:e,onMentionLines:f,initialDisplayMode:g,initialPage:h,onFileSaved:i}){let j;return null!==(uR[uT(a)]??null)?(0,T.jsx)(u4,{filePath:a,cwd:b,sourceSessionId:c}):null!==(uS[uT(a)]??null)?(0,T.jsx)(u5,{filePath:a,cwd:b,sourceSessionId:c}):null!==("pdf"===(j=uT(a))||"docx"===j?j:null)?(0,T.jsx)(u6,{filePath:a,cwd:b,sourceSessionId:c,initialPage:h}):(0,T.jsx)(u8,{filePath:a,cwd:b,sourceSessionId:c,onOpenFile:d,onAtMention:e,onMentionLines:f,initialDisplayMode:g,onFileSaved:i})}function u8({filePath:a,cwd:b,sourceSessionId:c,onOpenFile:d,onAtMention:e,onMentionLines:f,initialDisplayMode:g,onFileSaved:h}){let i,j,{t:k}=(0,bk.s)(),[l,m]=(0,U.useState)(null),[n,o]=(0,U.useState)(null),[p,q]=(0,U.useState)(null),[r,s]=(0,U.useState)(!0),[t,u]=(0,U.useState)(!1),[v,w]=(0,U.useState)(null),[x,y]=(0,U.useState)(!1),[z,A]=(0,U.useState)("source"),[B,C]=(0,U.useState)(!1),[D,E]=(0,U.useState)(0),[F,G]=(0,U.useState)(null);(0,U.useRef)(null);let H=(0,U.useRef)(null),[I,J]=(0,U.useState)(!1),[K,L]=(0,U.useState)(""),[M,N]=(0,U.useState)(""),[O,P]=(0,U.useState)(!1),[Q,R]=(0,U.useState)(null),[S,V]=(0,U.useState)(!1),W=(0,U.useRef)(null),X=(0,U.useRef)(null),Y=(0,U.useRef)(0);(0,U.useRef)(!1);let Z=I&&K!==M,$=!!(l?.content&&l.content.includes("\0")),_=(0,U.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]),aa=(0,U.useCallback)((a,b=!1,d=0)=>fetch(uU(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]),ab=(0,U.useCallback)(()=>{l&&!$&&(L(l.content),N(l.content),R(null),V(!1),J(!0))},[l,$]),ac=(0,U.useCallback)(()=>{J(!1),L(""),N(""),R(null),V(!1)},[]),ad=(0,U.useCallback)(()=>{(!Z||window.confirm(k("files.unsavedChanges")))&&ac()},[Z,ac,k]),ae=(0,U.useCallback)(async()=>{if(!l||O)return;let b=++Y.current;P(!0),R(null);try{let c=await uY(a,K);if(b!==Y.current)return;m(a=>a?{...a,content:K,size:c}:a),N(K),P(!1),ac(),_(a),h?.()}catch(a){if(b!==Y.current)return;R(a instanceof Error?a.message:String(a)),P(!1)}},[l,O,K,a,ac,_,h]),af=(0,U.useCallback)(()=>{let a=W.current,b=X.current;a&&b&&(b.scrollTop=a.scrollTop)},[]),ag=(0,U.useCallback)(a=>{if("Tab"!==a.key||a.metaKey||a.ctrlKey||a.altKey)return;a.preventDefault();let b=a.currentTarget,{selectionStart:c,selectionEnd:d}=b;L(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})},[]),ai=(0,U.useMemo)(()=>qs(l?.content??""),[l?.content]),aj=p?.supported===!0&&"string"==typeof p.patch,ak=aj&&p?.status==="deleted",al=(0,U.useCallback)(c=>{f&&c&&f(f3(a,b),c.startLine,c.endLine)},[b,a,f]);if(r)return(0,T.jsx)("div",{style:{height:"100%",display:"flex",alignItems:"center",justifyContent:"center",color:"var(--text-muted)",fontSize:13},children:k("desktop.loadingFile")});if(ak&&!l)return(0,T.jsxs)("div",{style:{display:"flex",flexDirection:"column",height:"100%",overflow:"hidden"},children:[(0,T.jsx)("div",{style:{padding:"5px 16px",borderBottom:"1px solid var(--border)",color:"var(--text-dim)",fontFamily:"var(--font-mono)",fontSize:11},title:a,children:f3(a,b)}),(0,T.jsx)("div",{style:{flex:1,overflow:"auto",background:"var(--bg)"},children:(0,T.jsx)(u3,{patch:p.patch})})]});if(v)return(0,T.jsx)("div",{style:{height:"100%",display:"flex",alignItems:"center",justifyContent:"center",color:"var(--status-error)",fontSize:13},children:v});if(!l)return null;let am="html"===l.language,ao="markdown"===l.language,ap=(j=(i=f0(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||aj,as=!ak&&!$&&f8();return(0,T.jsxs)("div",{style:{display:"flex",flexDirection:"column",height:"100%",overflow:"hidden"},children:[(0,T.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,T.jsx)("span",{style:{fontFamily:"var(--font-mono)",minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",flex:"0 1 auto"},title:a,children:f3(a,b)}),(0,T.jsx)("span",{style:{marginLeft:"auto"},children:l.language}),"source"===z&&!I&&(0,T.jsx)("span",{children:k("desktop.lines",{count:aq.length})}),(0,T.jsx)("span",{children:u1(l.size)}),ar&&!I&&(0,T.jsxs)("div",{style:{display:"flex",borderRadius:5,overflow:"hidden",border:"1px solid var(--border)"},children:[(0,T.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,T.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,T.jsxs)("span",{style:{color:"var(--git-status-added)",marginLeft:2},children:["+",D]})]})]}),"source"===z&&!x&&!I&&(0,T.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")}),am&&"source"===z&&!I&&(0,T.jsxs)("div",{style:{display:"flex",borderRadius:5,overflow:"hidden",border:"1px solid var(--border)"},children:[(0,T.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,T.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,T.jsxs)("div",{style:{display:"flex",borderRadius:5,overflow:"hidden",border:"1px solid var(--border)"},children:[(0,T.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,T.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,T.jsxs)(T.Fragment,{children:[(0,T.jsx)("button",{type:"button",onClick:()=>void ae(),disabled:O,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,T.jsx)(uQ,{size:13,"aria-hidden":"true"})}),(0,T.jsx)("button",{type:"button",onClick:ad,disabled:O,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,T.jsx)(ah,{size:13,"aria-hidden":"true"})})]}):"source"===z&&as?(0,T.jsx)("button",{type:"button",onClick:ab,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,T.jsx)(an,{size:13,"aria-hidden":"true"})}):null,(e||f)&&!I&&(0,T.jsx)("button",{type:"button",onPointerDown:a=>a.preventDefault(),onClick:()=>{F&&f?al(F):e?.(f3(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,T.jsx)(uV,{filePath:a,sourceSessionId:c})]}),l?.truncated&&"source"===z&&!I&&(0,T.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,T.jsxs)("span",{children:[u1(l.nextOffset)," / ",u1(l.size)]}),(0,T.jsx)("button",{type:"button",disabled:t,onClick:()=>{u(!0),aa(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,T.jsx)("div",{ref:H,style:{flex:1,overflow:"auto",background:"var(--bg)"},children:I?(0,T.jsxs)("div",{style:{display:"flex",flexDirection:"column",height:"100%",overflow:"hidden"},children:[S&&(0,T.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,T.jsx)("span",{style:{flex:1},children:k("files.externalModified")}),(0,T.jsx)("button",{type:"button",onClick:()=>{(!Z||window.confirm(k("files.reloadOverwriteConfirm")))&&aa(a).then(a=>{a&&(L(a.content),N(a.content),V(!1))})},disabled:O,style:{padding:"2px 8px",fontSize:11,border:"1px solid #d6a84b",borderRadius:4,background:"transparent",color:"#d6a84b",cursor:"pointer"},children:k("files.reload")})]}),Q&&(0,T.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:Q})}),(0,T.jsxs)("div",{style:{flex:1,display:"flex",overflow:"hidden"},children:[(0,T.jsx)("div",{ref:X,"aria-hidden":"true",style:{...uX,height:"100%",overflow:"hidden",whiteSpace:"pre",pointerEvents:"none"},children:K.split("\n").map((a,b)=>`${b+1}
197
197
  `).join("")}),(0,T.jsx)("textarea",{ref:W,className:"file-editor-textarea",value:K,onChange:a=>L(a.target.value),onScroll:af,onKeyDown:ag,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)",...uW,whiteSpace:"pre",overflow:"auto",padding:0,tabSize:2}})]})]}):"diff"===z&&ar?aj?(0,T.jsx)(u3,{patch:p.patch}):(0,T.jsx)(u2,{oldContent:n,newContent:l.content}):am&&x?(0,T.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,T.jsx)("div",{className:"markdown-body markdown-file-preview",style:{padding:"24px 32px"},children:(0,T.jsx)(lt,{remarkPlugins:qv,rehypePlugins:qw,components:{h1:({children:a})=>(0,T.jsx)("h1",{id:qq(a),children:a}),h2:({children:a})=>(0,T.jsx)("h2",{id:qq(a),children:a}),h3:({children:a})=>(0,T.jsx)("h3",{id:qq(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,T.jsx)(qN,{code:e.replace(/\n$/,"")}):(0,T.jsx)(qQ,{code:e.replace(/\n$/,""),lang:d}):(0,T.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,T.jsx)(T.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?hQ(a,ap,b??ap):null;return g&&d?(0,T.jsx)("a",{href:a,...e,className:f,onClick:b=>{if(b.defaultPrevented||0!==b.button||b.metaKey||b.ctrlKey||b.shiftKey||b.altKey)return;let c=b.currentTarget.getAttribute("target");c&&"_self"!==c||(b.preventDefault(),d(g,hS(a)??void 0))},children:c}):(0,T.jsx)("a",{href:a,...e,className:f,target:"_blank",rel:"noopener noreferrer",children:c})},table:({children:a})=>(0,T.jsx)("div",{className:"my-3 rounded-lg overflow-hidden border border-(--border)",children:(0,T.jsx)("div",{className:"overflow-x-auto",children:(0,T.jsx)("table",{className:"w-full text-sm border-collapse [&_tr:last-child>td]:border-b-0",children:a})})})},children:ai})}):(0,T.jsx)(l8,{language:"text"===l.language?"plaintext":l.language,style:qx,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 u9({sessionId:a,label:b,running:c=!1,onOpenFile:d}){let{t:e}=(0,bk.s)(),[f,g]=(0,U.useState)([]),[h,i]=(0,U.useState)([]),[j,k]=(0,U.useState)(!0),[l,m]=(0,U.useState)(null),n=(0,U.useMemo)(()=>{let a=new Map;for(let b of f)"toolResult"===b.role&&a.set(b.toolCallId,b);return a},[f]),o=(0,U.useMemo)(()=>h2(f,h,void 0,n),[f,h,n]),p=(0,U.useMemo)(()=>f.filter(a=>"user"===a.role||"assistant"===a.role).length,[f]),q=(b,c)=>(0,T.jsx)(rj,{message:c?.messageOverride??f[b],toolResults:o.toolResultsMap,entryId:h[b],sessionId:a,onOpenFile:d},`subagent-msg-${b}`);return(0,T.jsxs)("div",{style:{display:"flex",flexDirection:"column",height:"100%",minHeight:0,background:"var(--bg)"},children:[(0,T.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,T.jsx)("span",{style:{fontSize:12,fontWeight:600,color:"var(--text)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:b||e("subagent.transcriptTitle")}),c&&(0,T.jsx)("span",{style:{marginLeft:"auto",fontSize:11,color:"var(--accent)",whiteSpace:"nowrap"},children:e("agentSwitcher.status.running")})]}),(0,T.jsxs)("div",{className:"scrollbar-subtle scroll-overlay",style:{flex:1,minHeight:0,overflowY:"auto",padding:"10px 12px"},children:[j&&0===f.length&&(0,T.jsx)("div",{style:{color:"var(--text-dim)",fontSize:12},children:e("subagent.transcriptLoading")}),l&&0===f.length&&(0,T.jsx)("div",{style:{color:"var(--status-error)",fontSize:12},children:e("subagent.transcriptFailed",{error:l})}),!j&&!l&&0===p&&(0,T.jsx)("div",{style:{color:"var(--text-dim)",fontSize:12},children:e(c?"subagent.transcriptWaiting":"subagent.transcriptEmpty")}),o.items.map((a,b)=>{if("single"===a.kind)return(0,T.jsx)("div",{children:q(a.idx)},`single-${a.idx}`);let{userIdx:e,endIdx:f,finalAssistantIdx:g,finalAnswerMessage:h}=a,i=b===o.items.length-1,j=c&&i;return(0,T.jsxs)("div",{children:[e>=0&&q(e),a.processSegments.map((b,c)=>(0,T.jsx)(sJ,{blocks:b.blocks,isStreaming:j&&c===a.processSegments.length-1&&-1===g,defaultExpanded:j&&c===a.processSegments.length-1&&-1===g,onOpenFile:d},`seg-${e}-${c}`)),h&&q(g,{messageOverride:h}),g>=0&&(()=>{let a=[];for(let b=g+1;b<f;b++)a.push((0,T.jsx)("div",{children:q(b)},`tail-${b}`));return a})()]},`turn-${e}-${b}`)})]})]})}function va({tabs:a,activeTabId:b,onSelectTab:c,onCloseTab:d}){let{t:e}=(0,bk.s)(),f=(0,U.useRef)(null),[g,h]=(0,U.useState)(!1),i=(0,U.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,T.jsx)("div",{ref:f,role:"tablist",className:`file-tab-bar${g?"":" no-overflow"}`,children:a.map(f=>{let g=f.id===b;return(0,T.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,T.jsx)("span",{className:"file-tab-icon",children:"subagent"===f.kind?(0,T.jsx)(bb,{size:13,"aria-hidden":"true"}):"terminal"===f.kind?(0,T.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,T.jsx)("polyline",{points:"4 17 10 11 4 5"}),(0,T.jsx)("line",{x1:"12",y1:"19",x2:"20",y2:"19"})]}):f_(f.label,13)}),(0,T.jsx)("span",{className:"file-tab-label",title:f.filePath,children:f.label}),(0,T.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,T.jsx)(ah,{size:11,"aria-hidden":"true"})})]},f.id)})})}var vb=/[\\\/_+.#"@\[\(\{&]/,vc=/[\\\/_+.#"@\[\(\{&]/g,vd=/[\s-]/,ve=/[\s-]/g;function vf(a){return a.toLowerCase().replace(ve," ")}var vg=Object.defineProperty,vh=(a,b)=>vg(a,"name",{value:b,configurable:!0}),vi=!!("u">typeof window&&window.document&&window.document.createElement);function vj(a,b,{checkForDefaultPrevented:c=!0}={}){return vh(function(d){if(a?.(d),!1===c||!d||!d.defaultPrevented)return b?.(d)},"handleEvent")}function vk(a){if(!vi)throw Error("Cannot access document outside of the DOM");return a?.ownerDocument??document}function vl(a){return"IFRAME"===a.tagName}vh(vj,"composeEventHandlers"),vh(function(a){if(!vi)throw Error("Cannot access window outside of the DOM");return a?.ownerDocument?.defaultView??window},"getOwnerWindow"),vh(vk,"getOwnerDocument"),vh(function a(b,c=!1){let{activeElement:d}=vk(b);if(!d?.nodeName)return null;if(vl(d)&&d.contentDocument)return a(d.contentDocument.body,c);if(c){let a=d.getAttribute("aria-activedescendant");if(a){let b=vk(d).getElementById(a);if(b)return b}}return d},"getActiveElement"),vh(vl,"isFrame");var vm=Object.defineProperty,vn=(a,b)=>vm(a,"name",{value:b,configurable:!0});function vo(a,b){if("function"==typeof a)return a(b);null!=a&&(a.current=b)}function vp(...a){return b=>{let c=!1,d=a.map(a=>{let d=vo(a,b);return c||"function"!=typeof d||(c=!0),d});if(c)return()=>{for(let b=0;b<d.length;b++){let c=d[b];"function"==typeof c?c():vo(a[b],null)}}}}function vq(...a){return U.useCallback(vp(...a),a)}vn(vo,"setRef"),vn(vp,"composeRefs"),vn(vq,"useComposedRefs");var vr=Object.defineProperty,vs=(a,b)=>vr(a,"name",{value:b,configurable:!0});function vt(a,b=[]){let c=[];function d(b,d){let e=U.createContext(d);e.displayName=b+"Context";let f=c.length;c=[...c,d];let g=vs(b=>{let{scope:c,children:d,...g}=b,h=c?.[a]?.[f]||e,i=U.useMemo(()=>g,Object.values(g));return(0,T.jsx)(h.Provider,{value:i,children:d})},"Provider");function h(c,g,i={}){let{optional:j=!1}=i,k=g?.[a]?.[f]||e,l=U.useContext(k);if(l)return l;if(void 0!==d)return d;if(!j)throw Error(`\`${c}\` must be used within \`${b}\``)}return g.displayName=b+"Provider",vs(h,"useContext"),[g,h]}vs(d,"createContext");let e=vs(()=>{let b=c.map(a=>U.createContext(a));return vs(function(c){let d=c?.[a]||b;return U.useMemo(()=>({[`__scope${a}`]:{...c,[a]:d}}),[c,d])},"useScope")},"createScope");return e.scopeName=a,[d,vu(e,...b)]}function vu(...a){let b=a[0];if(1===a.length)return b;let c=vs(()=>{let c=a.map(a=>({useScope:a(),scopeName:a.scopeName}));return vs(function(a){let d=c.reduce((b,{useScope:c,scopeName:d})=>{let e=c(a)[`__scope${d}`];return{...b,...e}},{});return U.useMemo(()=>({[`__scope${b.scopeName}`]:d}),[d])},"useComposedScopes")},"createScope");return c.scopeName=b.scopeName,c}vs(function(a,b){let c=U.createContext(b);c.displayName=a+"Context";let d=vs(a=>{let{children:b,...d}=a,e=U.useMemo(()=>d,Object.values(d));return(0,T.jsx)(c.Provider,{value:e,children:b})},"Provider");function e(d,f={}){let{optional:g=!1}=f,h=U.useContext(c);if(h)return h;if(void 0!==b)return b;if(!g)throw Error(`\`${d}\` must be used within \`${a}\``)}return d.displayName=a+"Provider",vs(e,"useContext"),[d,e]},"createContext"),vs(vt,"createContextScope"),vs(vu,"composeContextScopes");var vv=globalThis?.document?U.useLayoutEffect:()=>{},vw=Object.defineProperty,vx=V[" useId ".trim().toString()]||(()=>void 0),vy=0;function vz(a){let[b,c]=U.useState(vx());return vv(()=>{a||c(a=>a??String(vy++))},[a]),a||(b?`radix-${b}`:"")}vw(vz,"name",{value:"useId",configurable:!0});var vA=Object.defineProperty,vB=V[" useEffectEvent ".trim().toString()],vC=V[" useInsertionEffect ".trim().toString()];function vD(a){if("function"==typeof vB)return vB(a);let b=U.useRef(()=>{throw Error("Cannot call an event handler while rendering.")});return"function"==typeof vC?vC(()=>{b.current=a}):vv(()=>{b.current=a}),U.useMemo(()=>(...a)=>b.current?.(...a),[])}vA(vD,"name",{value:"useEffectEvent",configurable:!0});var vE=Object.defineProperty,vF=(a,b)=>vE(a,"name",{value:b,configurable:!0}),vG=V[" useInsertionEffect ".trim().toString()]||vv;function vH({prop:a,defaultProp:b,onChange:c=vF(()=>{},"onChange"),caller:d}){let[e,f,g]=vI({defaultProp:b,onChange:c}),h=void 0!==a,i=h?a:e;return[i,U.useCallback(b=>{if(h){let c=vJ(b)?b(a):b;c!==a&&g.current?.(c)}else f(b)},[h,a,f,g])]}function vI({defaultProp:a,onChange:b}){let[c,d]=U.useState(a),e=U.useRef(c),f=U.useRef(b);return vG(()=>{f.current=b},[b]),U.useEffect(()=>{e.current!==c&&(f.current?.(c),e.current=c)},[c,e]),[c,d,f]}function vJ(a){return"function"==typeof a}vF(vH,"useControllableState"),vF(vI,"useUncontrolledState"),vF(vJ,"isFunction");var vK=Symbol("RADIX:SYNC_STATE");vF(function(a,b,c,d){let{prop:e,defaultProp:f,onChange:g,caller:h}=b,i=void 0!==e,j=vD(g),k=[{...c,state:f}];d&&k.push(d);let[l,m]=U.useReducer((b,c)=>{if(c.type===vK)return{...b,state:c.state};let d=a(b,c);return i&&!Object.is(d.state,b.state)&&j(d.state),d},...k),n=l.state,o=U.useRef(n);U.useEffect(()=>{o.current!==n&&(o.current=n,i||j(n))},[n,o,i]);let p=U.useMemo(()=>void 0!==e?{...l,state:e}:l,[l,e]);return U.useEffect(()=>{i&&!Object.is(e,l.state)&&m({type:vK,state:e})},[e,l.state,i]),[p,m]},"useControllableStateReducer");var vL=Object.defineProperty,vM=(a,b)=>vL(a,"name",{value:b,configurable:!0});function vN(a){let b=U.forwardRef((b,c)=>{let{children:d,...e}=b,f=null,g=!1,h=[];vU(d)&&"function"==typeof vY&&(d=vY(d._payload)),U.Children.forEach(d,a=>{if(vS(a)){g=!0;let b="child"in a.props?a.props.child:a.props.children;vU(b)&&"function"==typeof vY&&(b=vY(b._payload)),f=vP(a,b),h.push(f?.props?.children)}else h.push(a)}),f?f=U.cloneElement(f,void 0,h):!g&&1===U.Children.count(d)&&U.isValidElement(d)&&(f=d);let i=f?vR(f):void 0,j=vq(c,i);if(!f){if(d||0===d)throw Error(g?vX(a):vW(a));return d}let k=vQ(e,f.props??{});return f.type!==U.Fragment&&(k.ref=c?j:i),U.cloneElement(f,k)});return b.displayName=`${a}.Slot`,b}vM(vN,"createSlot");var vO=Symbol.for("radix.slottable");vM(function(a){let b=vM(a=>"child"in a?a.children(a.child):a.children,"Slottable");return b.displayName=`${a}.Slottable`,b.__radixId=vO,b},"createSlottable");var vP=vM((a,b)=>{if("child"in a.props){let b=a.props.child;return U.isValidElement(b)?U.cloneElement(b,void 0,a.props.children(b.props.children)):null}return U.isValidElement(b)?b:null},"getSlottableElementFromSlottable");function vQ(a,b){let c={...b};for(let d in b){let e=a[d],f=b[d];/^on[A-Z]/.test(d)?e&&f?c[d]=(...a)=>{let b=f(...a);return e(...a),b}:e&&(c[d]=e):"style"===d?c[d]={...e,...f}:"className"===d&&(c[d]=[e,f].filter(Boolean).join(" "))}return{...a,...c}}function vR(a){let b=Object.getOwnPropertyDescriptor(a.props,"ref")?.get,c=b&&"isReactWarning"in b&&b.isReactWarning;return c?a.ref:(c=(b=Object.getOwnPropertyDescriptor(a,"ref")?.get)&&"isReactWarning"in b&&b.isReactWarning)?a.props.ref:a.props.ref||a.ref}function vS(a){return U.isValidElement(a)&&"function"==typeof a.type&&"__radixId"in a.type&&a.type.__radixId===vO}vM(vQ,"mergeProps"),vM(vR,"getElementRef"),vM(vS,"isSlottable");var vT=Symbol.for("react.lazy");function vU(a){return null!=a&&"object"==typeof a&&"$$typeof"in a&&a.$$typeof===vT&&"_payload"in a&&vV(a._payload)}function vV(a){return"object"==typeof a&&null!==a&&"then"in a}vM(vU,"isLazyComponent"),vM(vV,"isPromiseLike");var vW=vM(a=>`${a} failed to slot onto its children. Expected a single React element child or \`Slottable\`.`,"createSlotError"),vX=vM(a=>`${a} failed to slot onto its \`Slottable\`. Expected \`Slottable\` to receive a single React element child.`,"createSlottableError"),vY=V[" use ".trim().toString()],vZ=Object.defineProperty,v$=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"].reduce((a,b)=>{let c=vN(`Primitive.${b}`),d=U.forwardRef((a,d)=>{let{asChild:e,...f}=a;return"u">typeof window&&(window[Symbol.for("radix-ui")]=!0),(0,T.jsx)(e?c:b,{...f,ref:d})});return d.displayName=`Primitive.${b}`,{...a,[b]:d}},{});function v_(a,b){a&&ad.flushSync(()=>a.dispatchEvent(b))}function v0(a){let b=U.useRef(a);return U.useEffect(()=>{b.current=a}),U.useMemo(()=>(...a)=>b.current?.(...a),[])}vZ(v_,"name",{value:"dispatchDiscreteCustomEvent",configurable:!0}),(0,Object.defineProperty)(v0,"name",{value:"useCallbackRef",configurable:!0});var v1=Object.defineProperty,v2=(a,b)=>v1(a,"name",{value:b,configurable:!0}),v3="dismissableLayer.update",v4=U.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set,dismissableSurfaces:new Set}),v5=U.forwardRef(v2(function(a,b){let{disableOutsidePointerEvents:c=!1,deferPointerDownOutside:d=!1,onEscapeKeyDown:e,onPointerDownOutside:f,onFocusOutside:g,onInteractOutside:h,onDismiss:i,...j}=a,k=U.useContext(v4),[l,m]=U.useState(null),n=l?.ownerDocument??globalThis?.document,[,o]=U.useState({}),p=vq(b,m),q=Array.from(k.layers),[r]=[...k.layersWithOutsidePointerEventsDisabled].slice(-1),s=r?q.indexOf(r):-1,t=l?q.indexOf(l):-1,u=k.layersWithOutsidePointerEventsDisabled.size>0,v=t>=s,w=U.useRef(!1),x=v8(a=>{f?.(a),h?.(a),a.defaultPrevented||i?.()},{ownerDocument:n,deferPointerDownOutside:d,isDeferredPointerDownOutsideRef:w,dismissableSurfaces:k.dismissableSurfaces,shouldHandlePointerDownOutside:U.useCallback(a=>{if(!(a instanceof Node))return!1;let b=[...k.branches].some(b=>b.contains(a));return v&&!b},[k.branches,v])}),y=v9(a=>{if(d&&w.current)return;let b=a.target;![...k.branches].some(a=>a.contains(b))&&(g?.(a),h?.(a),a.defaultPrevented||i?.())},n),z=!!l&&t===q.length-1,A=v0(a=>{"Escape"===a.key&&(e?.(a),!a.defaultPrevented&&i&&(a.preventDefault(),i()))});return U.useEffect(()=>{if(z)return n.addEventListener("keydown",A,{capture:!0}),()=>n.removeEventListener("keydown",A,{capture:!0})},[n,z,A]),U.useEffect(()=>{if(l)return c&&(0===k.layersWithOutsidePointerEventsDisabled.size&&(P=n.body.style.pointerEvents,n.body.style.pointerEvents="none"),k.layersWithOutsidePointerEventsDisabled.add(l)),k.layers.add(l),wa(),()=>{c&&(k.layersWithOutsidePointerEventsDisabled.delete(l),0===k.layersWithOutsidePointerEventsDisabled.size&&(n.body.style.pointerEvents=P))}},[l,n,c,k]),U.useEffect(()=>()=>{l&&(k.layers.delete(l),k.layersWithOutsidePointerEventsDisabled.delete(l),wa())},[l,k]),U.useEffect(()=>{let a=v2(()=>o({}),"handleUpdate");return document.addEventListener(v3,a),()=>document.removeEventListener(v3,a)},[]),(0,T.jsx)(v$.div,{...j,ref:p,style:{pointerEvents:u?v?"auto":"none":void 0,...a.style},onFocusCapture:vj(a.onFocusCapture,y.onFocusCapture),onBlurCapture:vj(a.onBlurCapture,y.onBlurCapture),onPointerDownCapture:vj(a.onPointerDownCapture,x.onPointerDownCapture)})},"DismissableLayer"));function v6(){let a=U.useContext(v4),[b,c]=U.useState(null);return U.useEffect(()=>{if(b)return a.dismissableSurfaces.add(b),()=>{a.dismissableSurfaces.delete(b)}},[b,a.dismissableSurfaces]),c}v2(v6,"useDismissableLayerSurface");var v7=v2(()=>!0,"IS_TRUE");function v8(a,b){let{ownerDocument:c=globalThis?.document,deferPointerDownOutside:d=!1,isDeferredPointerDownOutsideRef:e,dismissableSurfaces:f,shouldHandlePointerDownOutside:g=v7}=b,h=v0(a),i=U.useRef(!1),j=U.useRef(!1),k=U.useRef(new Map),l=U.useRef(()=>{});return U.useEffect(()=>{function a(){j.current=!1,e.current=!1,k.current.clear()}function b(){return Array.from(k.current.values()).some(Boolean)}function m(a){if(!j.current)return;let b=a.target;b instanceof Node&&[...f].some(a=>a.contains(b))||k.current.set(a.type,!0),"click"===a.type&&window.setTimeout(()=>{j.current&&l.current()},0)}function n(a){j.current&&k.current.set(a.type,!1)}v2(a,"resetOutsideInteraction"),v2(b,"isOutsideInteractionIntercepted"),v2(m,"handleInteractionCapture"),v2(n,"handleInteractionBubble");let o=v2(f=>{if(f.target&&!i.current){let m=function(){c.removeEventListener("click",l.current);let d=b();a(),d||wb("dismissableLayer.pointerDownOutside",h,n,{discrete:!0})};if(v2(m,"handleAndDispatchPointerDownOutsideEvent"),!g(f.target)){c.removeEventListener("click",l.current),a(),i.current=!1;return}let n={originalEvent:f};j.current=!0,e.current=d&&0===f.button,k.current.clear(),d&&0===f.button?(c.removeEventListener("click",l.current),l.current=m,c.addEventListener("click",l.current,{once:!0})):m()}else c.removeEventListener("click",l.current),a();i.current=!1},"handlePointerDown"),p=["pointerup","mousedown","mouseup","touchstart","touchend","click"];for(let a of p)c.addEventListener(a,m,!0),c.addEventListener(a,n);let q=window.setTimeout(()=>{c.addEventListener("pointerdown",o)},0);return()=>{for(let a of(window.clearTimeout(q),c.removeEventListener("pointerdown",o),c.removeEventListener("click",l.current),p))c.removeEventListener(a,m,!0),c.removeEventListener(a,n)}},[c,h,d,e,f,g]),{onPointerDownCapture:v2(()=>i.current=!0,"onPointerDownCapture")}}function v9(a,b=globalThis?.document){let c=v0(a),d=U.useRef(!1);return U.useEffect(()=>{let a=v2(a=>{a.target&&!d.current&&wb("dismissableLayer.focusOutside",c,{originalEvent:a},{discrete:!1})},"handleFocus");return b.addEventListener("focusin",a),()=>b.removeEventListener("focusin",a)},[b,c]),{onFocusCapture:v2(()=>d.current=!0,"onFocusCapture"),onBlurCapture:v2(()=>d.current=!1,"onBlurCapture")}}function wa(){let a=new CustomEvent(v3);document.dispatchEvent(a)}function wb(a,b,c,{discrete:d}){let e=c.originalEvent.target,f=new CustomEvent(a,{bubbles:!1,cancelable:!0,detail:c});b&&e.addEventListener(a,b,{once:!0}),d?v_(e,f):e.dispatchEvent(f)}v2(v8,"usePointerDownOutside"),v2(v9,"useFocusOutside"),v2(wa,"dispatchUpdate"),v2(wb,"handleAndDispatchCustomEvent");var wc=Object.defineProperty,wd=(a,b)=>wc(a,"name",{value:b,configurable:!0}),we="focusScope.autoFocusOnMount",wf="focusScope.autoFocusOnUnmount",wg={bubbles:!1,cancelable:!0},wh=U.forwardRef(wd(function(a,b){let{loop:c=!1,trapped:d=!1,onMountAutoFocus:e,onUnmountAutoFocus:f,...g}=a,[h,i]=U.useState(null),j=v0(e),k=v0(f),l=U.useRef(null),m=vq(b,i),n=U.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;U.useEffect(()=>{if(d){let a=function(a){if(n.paused||!h)return;let b=a.target;h.contains(b)?l.current=b:wo(l.current,{select:!0})},b=function(a){if(n.paused||!h)return;let b=a.relatedTarget;null!==b&&(h.contains(b)||wo(l.current,{select:!0}))},c=function(a){if(document.activeElement===document.body)for(let b of a)b.removedNodes.length>0&&wo(h)};wd(a,"handleFocusIn"),wd(b,"handleFocusOut"),wd(c,"handleMutations"),document.addEventListener("focusin",a),document.addEventListener("focusout",b);let d=new MutationObserver(c);return h&&d.observe(h,{childList:!0,subtree:!0}),()=>{document.removeEventListener("focusin",a),document.removeEventListener("focusout",b),d.disconnect()}}},[d,h,n.paused]),U.useEffect(()=>{if(h){wp.add(n);let a=document.activeElement;if(!h.contains(a)){let b=new CustomEvent(we,wg);h.addEventListener(we,j),h.dispatchEvent(b),b.defaultPrevented||(wi(ws(wk(h)),{select:!0}),document.activeElement===a&&wo(h))}return()=>{h.removeEventListener(we,j),setTimeout(()=>{let b=new CustomEvent(wf,wg);h.addEventListener(wf,k),h.dispatchEvent(b),b.defaultPrevented||wo(a??document.body,{select:!0}),h.removeEventListener(wf,k),wp.remove(n)},0)}}},[h,j,k,n]);let o=U.useCallback(a=>{if(!c&&!d||n.paused)return;let b="Tab"===a.key&&!a.altKey&&!a.ctrlKey&&!a.metaKey,e=document.activeElement;if(b&&e){let b=a.currentTarget,[d,f]=wj(b);d&&f?a.shiftKey||e!==f?a.shiftKey&&e===d&&(a.preventDefault(),c&&wo(f,{select:!0})):(a.preventDefault(),c&&wo(d,{select:!0})):e===b&&a.preventDefault()}},[c,d,n.paused]);return(0,T.jsx)(v$.div,{tabIndex:-1,...g,ref:m,onKeyDown:o})},"FocusScope"));function wi(a,{select:b=!1}={}){let c=document.activeElement;for(let d of a)if(wo(d,{select:b}),document.activeElement!==c)return}function wj(a){let b=wk(a);return[wl(b,a),wl(b.reverse(),a)]}function wk(a){let b=[],c=document.createTreeWalker(a,NodeFilter.SHOW_ELEMENT,{acceptNode:wd(a=>{let b="INPUT"===a.tagName&&"hidden"===a.type;return a.disabled||a.hidden||b?NodeFilter.FILTER_SKIP:a.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP},"acceptNode")});for(;c.nextNode();)b.push(c.currentNode);return b}function wl(a,b){let c="function"==typeof b.checkVisibility&&b.checkVisibility({checkVisibilityCSS:!0});for(let d of a)if(!(c?!d.checkVisibility({checkVisibilityCSS:!0}):wm(d,{upTo:b})))return d}function wm(a,{upTo:b}){if("hidden"===getComputedStyle(a).visibility)return!0;for(;a&&(void 0===b||a!==b);){if("none"===getComputedStyle(a).display)return!0;a=a.parentElement}return!1}function wn(a){return a instanceof HTMLInputElement&&"select"in a}function wo(a,{select:b=!1}={}){if(a&&a.focus){let c=document.activeElement;a.focus({preventScroll:!0}),a!==c&&wn(a)&&b&&a.select()}}wd(wi,"focusFirst"),wd(wj,"getTabbableEdges"),wd(wk,"getTabbableCandidates"),wd(wl,"findVisible"),wd(wm,"isHidden"),wd(wn,"isSelectableInput"),wd(wo,"focus");var wp=wq();function wq(){let a=[];return{add(b){let c=a[0];b!==c&&c?.pause(),(a=wr(a,b)).unshift(b)},remove(b){a=wr(a,b),a[0]?.resume()}}}function wr(a,b){let c=[...a],d=c.indexOf(b);return -1!==d&&c.splice(d,1),c}function ws(a){return a.filter(a=>"A"!==a.tagName)}wd(wq,"createFocusScopesStack"),wd(wr,"arrayRemove"),wd(ws,"removeLinks");var wt=Object.defineProperty,wu=U.forwardRef(wt(function(a,b){let{container:c,...d}=a,[e,f]=U.useState(!1);vv(()=>f(!0),[]);let g=c||e&&globalThis?.document?.body;return g?ad.createPortal((0,T.jsx)(v$.div,{...d,ref:b}),g):null},"name",{value:"Portal",configurable:!0})),wv=Object.defineProperty,ww=(a,b)=>wv(a,"name",{value:b,configurable:!0});function wx(a,b){return U.useReducer((a,c)=>b[a][c]??a,a)}ww(wx,"useStateMachine");var wy=ww(a=>{let{present:b,children:c}=a,d=wz(b),e="function"==typeof c?c({present:d.isPresent}):U.Children.only(c),f=wB(d.ref,wD(e));return"function"==typeof c||d.isPresent?U.cloneElement(e,{ref:f}):null},"Presence");function wz(a){let[b,c]=U.useState(),d=U.useRef(null),e=U.useRef(a),f=U.useRef("none"),g=U.useRef(void 0),[h,i]=wx(a?"mounted":"unmounted",{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return U.useEffect(()=>{"mounted"===h?(f.current=g.current??wC(d.current),g.current=void 0):f.current="none"},[h]),vv(()=>{let b=d.current,c=e.current;if(c!==a){let d=f.current,h=wC(b);a?(g.current=h,i("MOUNT")):"none"===h||b?.display==="none"?i("UNMOUNT"):c&&d!==h?i("ANIMATION_OUT"):i("UNMOUNT"),e.current=a}},[a,i]),vv(()=>{if(b){let a,c=b.ownerDocument.defaultView??window,g=ww(f=>{let g=wC(d.current).includes(CSS.escape(f.animationName));if(f.target===b&&g&&(i("ANIMATION_END"),!e.current)){let d=b.style.animationFillMode;b.style.animationFillMode="forwards",a=c.setTimeout(()=>{"forwards"===b.style.animationFillMode&&(b.style.animationFillMode=d)})}},"handleAnimationEnd"),h=ww(a=>{a.target===b&&(f.current=wC(d.current))},"handleAnimationStart");return b.addEventListener("animationstart",h),b.addEventListener("animationcancel",g),b.addEventListener("animationend",g),()=>{c.clearTimeout(a),b.removeEventListener("animationstart",h),b.removeEventListener("animationcancel",g),b.removeEventListener("animationend",g)}}i("ANIMATION_END")},[b,i]),{isPresent:["mounted","unmountSuspended"].includes(h),ref:U.useCallback(a=>{if(a){let b=getComputedStyle(a);d.current=b,g.current=wC(b)}else d.current=null;c(a)},[])}}function wA(a,b){if("function"==typeof a)return a(b);null!=a&&(a.current=b)}function wB(...a){let b=U.useRef(a);return b.current=a,U.useCallback(a=>{let c=b.current,d=!1,e=c.map(b=>{let c=wA(b,a);return d||"function"!=typeof c||(d=!0),c});if(d)return()=>{for(let a=0;a<e.length;a++){let b=e[a];"function"==typeof b?b():wA(c[a],null)}}},[])}function wC(a){return a?.animationName||"none"}function wD(a){let b=Object.getOwnPropertyDescriptor(a.props,"ref")?.get,c=b&&"isReactWarning"in b&&b.isReactWarning;return c?a.ref:(c=(b=Object.getOwnPropertyDescriptor(a,"ref")?.get)&&"isReactWarning"in b&&b.isReactWarning)?a.props.ref:a.props.ref||a.ref}ww(wz,"usePresence"),ww(wA,"setRef"),ww(wB,"useStableComposedRefs"),ww(wC,"getAnimationName"),ww(wD,"getElementRef");var wE=Object.defineProperty,wF=(a,b)=>wE(a,"name",{value:b,configurable:!0}),wG=0,wH=null;function wI(){U.useEffect(()=>{wH||(wH={start:wJ(),end:wJ()});let{start:a,end:b}=wH;return document.body.firstElementChild!==a&&document.body.insertAdjacentElement("afterbegin",a),document.body.lastElementChild!==b&&document.body.insertAdjacentElement("beforeend",b),wG++,()=>{1===wG&&(wH?.start.remove(),wH?.end.remove(),wH=null),wG=Math.max(0,wG-1)}},[])}function wJ(){let a=document.createElement("span");return a.setAttribute("data-radix-focus-guard",""),a.tabIndex=0,a.style.outline="none",a.style.opacity="0",a.style.position="fixed",a.style.pointerEvents="none",a}wF(function(a){return wI(),a.children},"FocusGuards"),wF(wI,"useFocusGuards"),wF(wJ,"createFocusGuard");var wK=function(){return(wK=Object.assign||function(a){for(var b,c=1,d=arguments.length;c<d;c++)for(var e in b=arguments[c])Object.prototype.hasOwnProperty.call(b,e)&&(a[e]=b[e]);return a}).apply(this,arguments)};function wL(a,b){var c={};for(var d in a)Object.prototype.hasOwnProperty.call(a,d)&&0>b.indexOf(d)&&(c[d]=a[d]);if(null!=a&&"function"==typeof Object.getOwnPropertySymbols)for(var e=0,d=Object.getOwnPropertySymbols(a);e<d.length;e++)0>b.indexOf(d[e])&&Object.prototype.propertyIsEnumerable.call(a,d[e])&&(c[d[e]]=a[d[e]]);return c}var wM=("function"==typeof SuppressedError&&SuppressedError,"right-scroll-bar-position"),wN="width-before-scroll-bar";function wO(a,b){return"function"==typeof a?a(b):a&&(a.current=b),a}var wP="u">typeof window?U.useLayoutEffect:U.useEffect,wQ=new WeakMap,wR=(void 0===u&&(u={}),(void 0===v&&(v=function(a){return a}),w=[],x=!1,y={read:function(){if(x)throw Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return w.length?w[w.length-1]:null},useMedium:function(a){var b=v(a,x);return w.push(b),function(){w=w.filter(function(a){return a!==b})}},assignSyncMedium:function(a){for(x=!0;w.length;){var b=w;w=[],b.forEach(a)}w={push:function(b){return a(b)},filter:function(){return w}}},assignMedium:function(a){x=!0;var b=[];if(w.length){var c=w;w=[],c.forEach(a),b=w}var d=function(){var c=b;b=[],c.forEach(a)},e=function(){return Promise.resolve().then(d)};e(),w={push:function(a){b.push(a),e()},filter:function(a){return b=b.filter(a),w}}}}).options=wK({async:!0,ssr:!1},u),y),wS=function(){},wT=U.forwardRef(function(a,b){var c,d,e,f,g=U.useRef(null),h=U.useState({onScrollCapture:wS,onWheelCapture:wS,onTouchMoveCapture:wS}),i=h[0],j=h[1],k=a.forwardProps,l=a.children,m=a.className,n=a.removeScrollBar,o=a.enabled,p=a.shards,q=a.sideCar,r=a.noRelative,s=a.noIsolation,t=a.inert,u=a.allowPinchZoom,v=a.as,w=a.gapMode,x=wL(a,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noRelative","noIsolation","inert","allowPinchZoom","as","gapMode"]),y=(c=[g,b],d=function(a){return c.forEach(function(b){return wO(b,a)})},(e=(0,U.useState)(function(){return{value:null,callback:d,facade:{get current(){return e.value},set current(value){var a=e.value;a!==value&&(e.value=value,e.callback(value,a))}}}})[0]).callback=d,f=e.facade,wP(function(){var a=wQ.get(f);if(a){var b=new Set(a),d=new Set(c),e=f.current;b.forEach(function(a){d.has(a)||wO(a,null)}),d.forEach(function(a){b.has(a)||wO(a,e)})}wQ.set(f,c)},[c]),f),z=wK(wK({},x),i);return U.createElement(U.Fragment,null,o&&U.createElement(q,{sideCar:wR,removeScrollBar:n,shards:p,noRelative:r,noIsolation:s,inert:t,setCallbacks:j,allowPinchZoom:!!u,lockRef:g,gapMode:w}),k?U.cloneElement(U.Children.only(l),wK(wK({},z),{ref:y})):U.createElement(void 0===v?"div":v,wK({},z,{className:m,ref:y}),l))});wT.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1},wT.classNames={fullWidth:wN,zeroRight:wM};var wU=function(a){var b=a.sideCar,c=wL(a,["sideCar"]);if(!b)throw Error("Sidecar: please provide `sideCar` property to import the right car");var d=b.read();if(!d)throw Error("Sidecar medium not found");return U.createElement(d,wK({},c))};wU.isSideCarExport=!0;var wV=function(){var a=0,b=null;return{add:function(d){if(0==a&&(b=function(){if(!document)return null;var a=document.createElement("style");a.type="text/css";var b=Q||c.nc;return b&&a.setAttribute("nonce",b),a}())){var e,f;(e=b).styleSheet?e.styleSheet.cssText=d:e.appendChild(document.createTextNode(d)),f=b,(document.head||document.getElementsByTagName("head")[0]).appendChild(f)}a++},remove:function(){--a||!b||(b.parentNode&&b.parentNode.removeChild(b),b=null)}}},wW=function(){var a=wV();return function(b,c){U.useEffect(function(){return a.add(b),function(){a.remove()}},[b&&c])}},wX=function(){var a=wW();return function(b){return a(b.styles,b.dynamic),null}},wY={left:0,top:0,right:0,gap:0},wZ=function(a){return parseInt(a||"",10)||0},w$=function(a){var b=window.getComputedStyle(document.body),c=b["padding"===a?"paddingLeft":"marginLeft"],d=b["padding"===a?"paddingTop":"marginTop"],e=b["padding"===a?"paddingRight":"marginRight"];return[wZ(c),wZ(d),wZ(e)]},w_=function(a){if(void 0===a&&(a="margin"),"u"<typeof window)return wY;var b=w$(a),c=document.documentElement.clientWidth,d=window.innerWidth;return{left:b[0],top:b[1],right:b[2],gap:Math.max(0,d-c+b[2]-b[0])}},w0=wX(),w1="data-scroll-locked",w2=function(a,b,c,d){var e=a.left,f=a.top,g=a.right,h=a.gap;return void 0===c&&(c="margin"),"\n .".concat("with-scroll-bars-hidden"," {\n overflow: hidden ").concat(d,";\n padding-right: ").concat(h,"px ").concat(d,";\n }\n body[").concat(w1,"] {\n overflow: hidden ").concat(d,";\n overscroll-behavior: contain;\n ").concat([b&&"position: relative ".concat(d,";"),"margin"===c&&"\n padding-left: ".concat(e,"px;\n padding-top: ").concat(f,"px;\n padding-right: ").concat(g,"px;\n margin-left:0;\n margin-top:0;\n margin-right: ").concat(h,"px ").concat(d,";\n "),"padding"===c&&"padding-right: ".concat(h,"px ").concat(d,";")].filter(Boolean).join(""),"\n }\n \n .").concat(wM," {\n right: ").concat(h,"px ").concat(d,";\n }\n \n .").concat(wN," {\n margin-right: ").concat(h,"px ").concat(d,";\n }\n \n .").concat(wM," .").concat(wM," {\n right: 0 ").concat(d,";\n }\n \n .").concat(wN," .").concat(wN," {\n margin-right: 0 ").concat(d,";\n }\n \n body[").concat(w1,"] {\n ").concat("--removed-body-scroll-bar-size",": ").concat(h,"px;\n }\n")},w3=function(){var a=parseInt(document.body.getAttribute(w1)||"0",10);return isFinite(a)?a:0},w4=function(){U.useEffect(function(){return document.body.setAttribute(w1,(w3()+1).toString()),function(){var a=w3()-1;a<=0?document.body.removeAttribute(w1):document.body.setAttribute(w1,a.toString())}},[])},w5=function(a){var b=a.noRelative,c=a.noImportant,d=a.gapMode,e=void 0===d?"margin":d;w4();var f=U.useMemo(function(){return w_(e)},[e]);return U.createElement(w0,{styles:w2(f,!b,e,c?"":"!important")})},w6=!1;if("u">typeof window)try{var w7=Object.defineProperty({},"passive",{get:function(){return w6=!0,!0}});window.addEventListener("test",w7,w7),window.removeEventListener("test",w7,w7)}catch(a){w6=!1}var w8=!!w6&&{passive:!1},w9=function(a,b){if(!(a instanceof Element))return!1;var c=window.getComputedStyle(a);return"hidden"!==c[b]&&(c.overflowY!==c.overflowX||"TEXTAREA"===a.tagName||"visible"!==c[b])},xa=function(a,b){var c=b.ownerDocument,d=b;do{if("u">typeof ShadowRoot&&d instanceof ShadowRoot&&(d=d.host),xb(a,d)){var e=xc(a,d);if(e[1]>e[2])return!0}d=d.parentNode}while(d&&d!==c.body);return!1},xb=function(a,b){return"v"===a?w9(b,"overflowY"):w9(b,"overflowX")},xc=function(a,b){return"v"===a?[b.scrollTop,b.scrollHeight,b.clientHeight]:[b.scrollLeft,b.scrollWidth,b.clientWidth]},xd=function(a,b,c,d,e){var f,g=(f=window.getComputedStyle(b).direction,"h"===a&&"rtl"===f?-1:1),h=g*d,i=c.target,j=b.contains(i),k=!1,l=h>0,m=0,n=0;do{if(!i)break;var o=xc(a,i),p=o[0],q=o[1]-o[2]-g*p;(p||q)&&xb(a,i)&&(m+=q,n+=p);var r=i.parentNode;i=r&&r.nodeType===Node.DOCUMENT_FRAGMENT_NODE?r.host:r}while(!j&&i!==document.body||j&&(b.contains(i)||b===i));return l&&(e&&1>Math.abs(m)||!e&&h>m)?k=!0:!l&&(e&&1>Math.abs(n)||!e&&-h>n)&&(k=!0),k},xe=function(a){return"changedTouches"in a?[a.changedTouches[0].clientX,a.changedTouches[0].clientY]:[0,0]},xf=function(a){return[a.deltaX,a.deltaY]},xg=function(a){return a&&"current"in a?a.current:a},xh=0,xi=[];let xj=(z=function(a){var b=U.useRef([]),c=U.useRef([0,0]),d=U.useRef(),e=U.useState(xh++)[0],f=U.useState(wX)[0],g=U.useRef(a);U.useEffect(function(){g.current=a},[a]),U.useEffect(function(){if(a.inert){document.body.classList.add("block-interactivity-".concat(e));var b=(function(a,b,c){if(c||2==arguments.length)for(var d,e=0,f=b.length;e<f;e++)!d&&e in b||(d||(d=Array.prototype.slice.call(b,0,e)),d[e]=b[e]);return a.concat(d||Array.prototype.slice.call(b))})([a.lockRef.current],(a.shards||[]).map(xg),!0).filter(Boolean);return b.forEach(function(a){return a.classList.add("allow-interactivity-".concat(e))}),function(){document.body.classList.remove("block-interactivity-".concat(e)),b.forEach(function(a){return a.classList.remove("allow-interactivity-".concat(e))})}}},[a.inert,a.lockRef.current,a.shards]);var h=U.useCallback(function(a,b){if("touches"in a&&2===a.touches.length||"wheel"===a.type&&a.ctrlKey)return!g.current.allowPinchZoom;var e,f=xe(a),h=c.current,i="deltaX"in a?a.deltaX:h[0]-f[0],j="deltaY"in a?a.deltaY:h[1]-f[1],k=a.target,l=Math.abs(i)>Math.abs(j)?"h":"v";if("touches"in a&&"h"===l&&"range"===k.type)return!1;var m=window.getSelection(),n=m&&m.anchorNode;if(n&&(n===k||n.contains(k)))return!1;var o=xa(l,k);if(!o)return!0;if(o?e=l:(e="v"===l?"h":"v",o=xa(l,k)),!o)return!1;if(!d.current&&"changedTouches"in a&&(i||j)&&(d.current=e),!e)return!0;var p=d.current||e;return xd(p,b,a,"h"===p?i:j,!0)},[]),i=U.useCallback(function(a){if(xi.length&&xi[xi.length-1]===f){var c="deltaY"in a?xf(a):xe(a),d=b.current.filter(function(b){var d;return b.name===a.type&&(b.target===a.target||a.target===b.shadowParent)&&(d=b.delta,d[0]===c[0]&&d[1]===c[1])})[0];if(d&&d.should){a.cancelable&&a.preventDefault();return}if(!d){var e=(g.current.shards||[]).map(xg).filter(Boolean).filter(function(b){return b.contains(a.target)});(e.length>0?h(a,e[0]):!g.current.noIsolation)&&a.cancelable&&a.preventDefault()}}},[]),j=U.useCallback(function(a,c,d,e){var f={name:a,delta:c,target:d,should:e,shadowParent:function(a){for(var b=null;null!==a;)a instanceof ShadowRoot&&(b=a.host,a=a.host),a=a.parentNode;return b}(d)};b.current.push(f),setTimeout(function(){b.current=b.current.filter(function(a){return a!==f})},1)},[]),k=U.useCallback(function(a){c.current=xe(a),d.current=void 0},[]),l=U.useCallback(function(b){j(b.type,xf(b),b.target,h(b,a.lockRef.current))},[]),m=U.useCallback(function(b){j(b.type,xe(b),b.target,h(b,a.lockRef.current))},[]);U.useEffect(function(){return xi.push(f),a.setCallbacks({onScrollCapture:l,onWheelCapture:l,onTouchMoveCapture:m}),document.addEventListener("wheel",i,w8),document.addEventListener("touchmove",i,w8),document.addEventListener("touchstart",k,w8),function(){xi=xi.filter(function(a){return a!==f}),document.removeEventListener("wheel",i,w8),document.removeEventListener("touchmove",i,w8),document.removeEventListener("touchstart",k,w8)}},[]);var n=a.removeScrollBar,o=a.inert;return U.createElement(U.Fragment,null,o?U.createElement(f,{styles:"\n .block-interactivity-".concat(e," {pointer-events: none;}\n .allow-interactivity-").concat(e," {pointer-events: all;}\n")}):null,n?U.createElement(w5,{noRelative:a.noRelative,gapMode:a.gapMode}):null)},wR.useMedium(z),wU);var xk=U.forwardRef(function(a,b){return U.createElement(wT,wK({},a,{ref:b,sideCar:xj}))});xk.classNames=wT.classNames;var xl=new WeakMap,xm=new WeakMap,xn={},xo=0,xp=function(a){return a&&(a.host||xp(a.parentNode))},xq=function(a,b,c,d){var e=(Array.isArray(a)?a:[a]).map(function(a){if(b.contains(a))return a;var c=xp(a);return c&&b.contains(c)?c:(console.error("aria-hidden",a,"in not contained inside",b,". Doing nothing"),null)}).filter(function(a){return!!a});xn[c]||(xn[c]=new WeakMap);var f=xn[c],g=[],h=new Set,i=new Set(e),j=function(a){!a||h.has(a)||(h.add(a),j(a.parentNode))};e.forEach(j);var k=function(a){!a||i.has(a)||Array.prototype.forEach.call(a.children,function(a){if(h.has(a))k(a);else try{var b=a.getAttribute(d),e=null!==b&&"false"!==b,i=(xl.get(a)||0)+1,j=(f.get(a)||0)+1;xl.set(a,i),f.set(a,j),g.push(a),1===i&&e&&xm.set(a,!0),1===j&&a.setAttribute(c,"true"),e||a.setAttribute(d,"true")}catch(b){console.error("aria-hidden: cannot operate on ",a,b)}})};return k(b),h.clear(),xo++,function(){g.forEach(function(a){var b=xl.get(a)-1,e=f.get(a)-1;xl.set(a,b),f.set(a,e),b||(xm.has(a)||a.removeAttribute(d),xm.delete(a)),e||a.removeAttribute(c)}),--xo||(xl=new WeakMap,xl=new WeakMap,xm=new WeakMap,xn={})}},xr=function(a,b,c){void 0===c&&(c="data-aria-hidden");var d=Array.from(Array.isArray(a)?a:[a]),e=b||("u"<typeof document?null:(Array.isArray(a)?a[0]:a).ownerDocument.body);return e?(d.push.apply(d,Array.from(e.querySelectorAll("[aria-live], script"))),xq(d,e,c,"aria-hidden")):function(){return null}},xs=Object.defineProperty,xt=(a,b)=>xs(a,"name",{value:b,configurable:!0}),xu="Dialog",[xv,xw]=vt(xu),[xx,xy]=xv(xu),xz=xt(a=>{let{__scopeDialog:b,children:c,open:d,defaultOpen:e,onOpenChange:f,modal:g=!0}=a,h=U.useRef(null),i=U.useRef(null),[j,k]=vH({prop:d,defaultProp:e??!1,onChange:f,caller:xu}),[l,m]=U.useState(0),[n,o]=U.useState(0);return(0,T.jsx)(xx,{scope:b,triggerRef:h,contentRef:i,contentId:vz(),titleId:vz(),descriptionId:vz(),titlePresent:l>0,descriptionPresent:n>0,setTitleCount:m,setDescriptionCount:o,open:j,onOpenChange:k,onOpenToggle:U.useCallback(()=>k(a=>!a),[k]),modal:g,children:c})},"Dialog"),xA="DialogPortal",[xB,xC]=xv(xA,{forceMount:void 0}),xD=xt(a=>{let{__scopeDialog:b,forceMount:c,children:d,container:e}=a,f=xy(xA,b);return(0,T.jsx)(xB,{scope:b,forceMount:c,children:U.Children.map(d,a=>(0,T.jsx)(wy,{present:c||f.open,children:(0,T.jsx)(wu,{asChild:!0,container:e,children:a})}))})},"DialogPortal"),xE="DialogOverlay",xF=U.forwardRef(xt(function(a,b){let c=xC(xE,a.__scopeDialog),{forceMount:d=c.forceMount,...e}=a,f=xy(xE,a.__scopeDialog);return f.modal?(0,T.jsx)(wy,{present:d||f.open,children:(0,T.jsx)(xH,{...e,ref:b})}):null},"DialogOverlay")),xG=vN("DialogOverlay.RemoveScroll"),xH=U.forwardRef(xt(function(a,b){let{__scopeDialog:c,...d}=a,e=xy(xE,c),f=vq(b,v6());return(0,T.jsx)(xk,{as:xG,allowPinchZoom:!0,shards:[e.contentRef],children:(0,T.jsx)(v$.div,{"data-state":xO(e.open),...d,ref:f,style:{pointerEvents:"auto",...d.style}})})},"DialogOverlayImpl")),xI="DialogContent",xJ=U.forwardRef(xt(function(a,b){let c=xC(xI,a.__scopeDialog),{forceMount:d=c.forceMount,...e}=a,f=xy(xI,a.__scopeDialog);return(0,T.jsx)(wy,{present:d||f.open,children:f.modal?(0,T.jsx)(xK,{...e,ref:b}):(0,T.jsx)(xL,{...e,ref:b})})},"DialogContent")),xK=U.forwardRef(xt(function(a,b){let c=xy(xI,a.__scopeDialog),d=U.useRef(null),e=vq(b,c.contentRef,d);return U.useEffect(()=>{let a=d.current;if(a)return xr(a)},[]),(0,T.jsx)(xM,{...a,ref:e,trapFocus:c.open,disableOutsidePointerEvents:c.open,onCloseAutoFocus:vj(a.onCloseAutoFocus,a=>{a.preventDefault(),c.triggerRef.current?.focus()}),onPointerDownOutside:vj(a.onPointerDownOutside,a=>{let b=a.detail.originalEvent,c=0===b.button&&!0===b.ctrlKey;(2===b.button||c)&&a.preventDefault()}),onFocusOutside:vj(a.onFocusOutside,a=>a.preventDefault())})},"DialogContentModal")),xL=U.forwardRef(xt(function(a,b){let c=xy(xI,a.__scopeDialog),d=U.useRef(!1),e=U.useRef(!1);return(0,T.jsx)(xM,{...a,ref:b,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:b=>{a.onCloseAutoFocus?.(b),b.defaultPrevented||(d.current||c.triggerRef.current?.focus(),b.preventDefault()),d.current=!1,e.current=!1},onInteractOutside:b=>{a.onInteractOutside?.(b),b.defaultPrevented||(d.current=!0,"pointerdown"===b.detail.originalEvent.type&&(e.current=!0));let f=b.target;c.triggerRef.current?.contains(f)&&b.preventDefault(),"focusin"===b.detail.originalEvent.type&&e.current&&b.preventDefault()}})},"DialogContentNonModal")),xM=U.forwardRef(xt(function(a,b){let{__scopeDialog:c,trapFocus:d,onOpenAutoFocus:e,onCloseAutoFocus:f,...g}=a,h=xy(xI,c);return wI(),(0,T.jsx)(T.Fragment,{children:(0,T.jsx)(wh,{asChild:!0,loop:!0,trapped:d,onMountAutoFocus:e,onUnmountAutoFocus:f,children:(0,T.jsx)(v5,{role:"dialog",id:h.contentId,"aria-describedby":h.descriptionPresent?h.descriptionId:void 0,"aria-labelledby":h.titlePresent?h.titleId:void 0,"data-state":xO(h.open),...g,ref:b,deferPointerDownOutside:!0,onDismiss:()=>h.onOpenChange(!1)})})})},"DialogContentImpl")),xN=U.forwardRef(xt(function(a,b){let{__scopeDialog:c,...d}=a,e=xy("DialogTitle",c),{setTitleCount:f}=e;return vv(()=>(f(a=>a+1),()=>f(a=>a-1)),[f]),(0,T.jsx)(v$.h2,{id:e.titleId,...d,ref:b})},"DialogTitle"));function xO(a){return a?"open":"closed"}xt(xO,"getState");var xP='[cmdk-group=""]',xQ='[cmdk-group-items=""]',xR='[cmdk-item=""]',xS=`${xR}:not([aria-disabled="true"])`,xT="cmdk-item-select",xU="data-value",xV=(a,b,c)=>{var d;return d=a,function a(b,c,d,e,f,g,h){if(g===c.length)return f===b.length?1:.99;var i=`${f},${g}`;if(void 0!==h[i])return h[i];for(var j,k,l,m,n=e.charAt(g),o=d.indexOf(n,f),p=0;o>=0;)(j=a(b,c,d,e,o+1,g+1,h))>p&&(o===f?j*=1:vb.test(b.charAt(o-1))?(j*=.8,(l=b.slice(f,o-1).match(vc))&&f>0&&(j*=Math.pow(.999,l.length))):vd.test(b.charAt(o-1))?(j*=.9,(m=b.slice(f,o-1).match(ve))&&f>0&&(j*=Math.pow(.999,m.length))):(j*=.17,f>0&&(j*=Math.pow(.999,o-f))),b.charAt(o)!==c.charAt(g)&&(j*=.9999)),(j<.1&&d.charAt(o-1)===e.charAt(g+1)||e.charAt(g+1)===e.charAt(g)&&d.charAt(o-1)!==e.charAt(g))&&.1*(k=a(b,c,d,e,o+1,g+2,h))>j&&(j=.1*k),j>p&&(p=j),o=d.indexOf(n,o+1);return h[i]=p,p}(d=c&&c.length>0?`${d+" "+c.join(" ")}`:d,b,vf(d),vf(b),0,0,{})},xW=U.createContext(void 0),xX=U.createContext(void 0),xY=U.createContext(void 0),xZ=U.forwardRef((a,b)=>{let c=x7(()=>{var b,c;return{search:"",value:null!=(c=null!=(b=a.value)?b:a.defaultValue)?c:"",selectedItemId:void 0,filtered:{count:0,items:new Map,groups:new Set}}}),d=x7(()=>new Set),e=x7(()=>new Map),f=x7(()=>new Map),g=x7(()=>new Set),h=x5(a),{label:i,children:j,value:k,onValueChange:l,filter:m,shouldFilter:n,loop:o,disablePointerSelection:p=!1,vimBindings:q=!0,...r}=a,s=vz(),t=vz(),u=vz(),v=U.useRef(null),w=ya();x6(()=>{if(void 0!==k){let a=k.trim();c.current.value=a,x.emit()}},[k]),x6(()=>{w(6,D)},[]);let x=U.useMemo(()=>({subscribe:a=>(g.current.add(a),()=>g.current.delete(a)),snapshot:()=>c.current,setState:(a,b,d)=>{var e,f,g,i;if(!Object.is(c.current[a],b)){if(c.current[a]=b,"search"===a)C(),A(),w(1,B);else if("value"===a){if(document.activeElement.hasAttribute("cmdk-input")||document.activeElement.hasAttribute("cmdk-root")){let a=document.getElementById(u);a?a.focus():null==(e=document.getElementById(s))||e.focus()}if(w(7,()=>{var a;c.current.selectedItemId=null==(a=E())?void 0:a.id,x.emit()}),d||w(5,D),(null==(f=h.current)?void 0:f.value)!==void 0){null==(i=(g=h.current).onValueChange)||i.call(g,null!=b?b:"");return}}x.emit()}},emit:()=>{g.current.forEach(a=>a())}}),[]),y=U.useMemo(()=>({value:(a,b,d)=>{var e;b!==(null==(e=f.current.get(a))?void 0:e.value)&&(f.current.set(a,{value:b,keywords:d}),c.current.filtered.items.set(a,z(b,d)),w(2,()=>{A(),x.emit()}))},item:(a,b)=>(d.current.add(a),b&&(e.current.has(b)?e.current.get(b).add(a):e.current.set(b,new Set([a]))),w(3,()=>{C(),A(),c.current.value||B(),x.emit()}),()=>{f.current.delete(a),d.current.delete(a),c.current.filtered.items.delete(a);let b=E();w(4,()=>{C(),(null==b?void 0:b.getAttribute("id"))===a&&B(),x.emit()})}),group:a=>(e.current.has(a)||e.current.set(a,new Set),()=>{f.current.delete(a),e.current.delete(a)}),filter:()=>h.current.shouldFilter,label:i||a["aria-label"],getDisablePointerSelection:()=>h.current.disablePointerSelection,listId:s,inputId:u,labelId:t,listInnerRef:v}),[]);function z(a,b){var d,e;let f=null!=(e=null==(d=h.current)?void 0:d.filter)?e:xV;return a?f(a,c.current.search,b):0}function A(){if(!c.current.search||!1===h.current.shouldFilter)return;let a=c.current.filtered.items,b=[];c.current.filtered.groups.forEach(c=>{let d=e.current.get(c),f=0;d.forEach(b=>{f=Math.max(a.get(b),f)}),b.push([c,f])});let d=v.current;F().sort((b,c)=>{var d,e;let f=b.getAttribute("id"),g=c.getAttribute("id");return(null!=(d=a.get(g))?d:0)-(null!=(e=a.get(f))?e:0)}).forEach(a=>{let b=a.closest(xQ);b?b.appendChild(a.parentElement===b?a:a.closest(`${xQ} > *`)):d.appendChild(a.parentElement===d?a:a.closest(`${xQ} > *`))}),b.sort((a,b)=>b[1]-a[1]).forEach(a=>{var b;let c=null==(b=v.current)?void 0:b.querySelector(`${xP}[${xU}="${encodeURIComponent(a[0])}"]`);null==c||c.parentElement.appendChild(c)})}function B(){let a=F().find(a=>"true"!==a.getAttribute("aria-disabled")),b=null==a?void 0:a.getAttribute(xU);x.setState("value",b||void 0)}function C(){var a,b,g,i;if(!c.current.search||!1===h.current.shouldFilter){c.current.filtered.count=d.current.size;return}c.current.filtered.groups=new Set;let j=0;for(let e of d.current){let d=z(null!=(b=null==(a=f.current.get(e))?void 0:a.value)?b:"",null!=(i=null==(g=f.current.get(e))?void 0:g.keywords)?i:[]);c.current.filtered.items.set(e,d),d>0&&j++}for(let[a,b]of e.current)for(let d of b)if(c.current.filtered.items.get(d)>0){c.current.filtered.groups.add(a);break}c.current.filtered.count=j}function D(){var a,b,c;let d=E();d&&((null==(a=d.parentElement)?void 0:a.firstChild)===d&&(null==(c=null==(b=d.closest(xP))?void 0:b.querySelector('[cmdk-group-heading=""]'))||c.scrollIntoView({block:"nearest"})),d.scrollIntoView({block:"nearest"}))}function E(){var a;return null==(a=v.current)?void 0:a.querySelector(`${xR}[aria-selected="true"]`)}function F(){var a;return Array.from((null==(a=v.current)?void 0:a.querySelectorAll(xS))||[])}function G(a){let b=F()[a];b&&x.setState("value",b.getAttribute(xU))}function H(a){var b;let c=E(),d=F(),e=d.findIndex(a=>a===c),f=d[e+a];null!=(b=h.current)&&b.loop&&(f=e+a<0?d[d.length-1]:e+a===d.length?d[0]:d[e+a]),f&&x.setState("value",f.getAttribute(xU))}function I(a){let b=E(),c=null==b?void 0:b.closest(xP),d;for(;c&&!d;)d=null==(c=a>0?function(a,b){let c=a.nextElementSibling;for(;c;){if(c.matches(b))return c;c=c.nextElementSibling}}(c,xP):function(a,b){let c=a.previousElementSibling;for(;c;){if(c.matches(b))return c;c=c.previousElementSibling}}(c,xP))?void 0:c.querySelector(xS);d?x.setState("value",d.getAttribute(xU)):H(a)}let J=()=>G(F().length-1),K=a=>{a.preventDefault(),a.metaKey?J():a.altKey?I(1):H(1)},L=a=>{a.preventDefault(),a.metaKey?G(0):a.altKey?I(-1):H(-1)};return U.createElement(v$.div,{ref:b,tabIndex:-1,...r,"cmdk-root":"",onKeyDown:a=>{var b;null==(b=r.onKeyDown)||b.call(r,a);let c=a.nativeEvent.isComposing||229===a.keyCode;if(!(a.defaultPrevented||c))switch(a.key){case"n":case"j":q&&a.ctrlKey&&K(a);break;case"ArrowDown":K(a);break;case"p":case"k":q&&a.ctrlKey&&L(a);break;case"ArrowUp":L(a);break;case"Home":a.preventDefault(),G(0);break;case"End":a.preventDefault(),J();break;case"Enter":{a.preventDefault();let b=E();if(b){let a=new Event(xT);b.dispatchEvent(a)}}}}},U.createElement("label",{"cmdk-label":"",htmlFor:y.inputId,id:y.labelId,style:yc},i),yb(a,a=>U.createElement(xX.Provider,{value:x},U.createElement(xW.Provider,{value:y},a))))}),x$=U.forwardRef((a,b)=>{var c,d;let e=vz(),f=U.useRef(null),g=U.useContext(xY),h=U.useContext(xW),i=x5(a),j=null!=(d=null==(c=i.current)?void 0:c.forceMount)?d:null==g?void 0:g.forceMount;x6(()=>{if(!j)return h.item(e,null==g?void 0:g.id)},[j]);let k=x9(e,f,[a.value,a.children,f],a.keywords),l=U.useContext(xX),m=x8(a=>a.value&&a.value===k.current),n=x8(a=>!!j||!1===h.filter()||!a.search||a.filtered.items.get(e)>0);function o(){var a,b;p(),null==(b=(a=i.current).onSelect)||b.call(a,k.current)}function p(){l.setState("value",k.current,!0)}if(U.useEffect(()=>{let b=f.current;if(!(!b||a.disabled))return b.addEventListener(xT,o),()=>b.removeEventListener(xT,o)},[n,a.onSelect,a.disabled]),!n)return null;let{disabled:q,value:r,onSelect:s,forceMount:t,keywords:u,...v}=a;return U.createElement(v$.div,{ref:vp(f,b),...v,id:e,"cmdk-item":"",role:"option","aria-disabled":!!q,"aria-selected":!!m,"data-disabled":!!q,"data-selected":!!m,onPointerMove:q||h.getDisablePointerSelection()?void 0:p,onClick:q?void 0:o},a.children)}),x_=U.forwardRef((a,b)=>{let{heading:c,children:d,forceMount:e,...f}=a,g=vz(),h=U.useRef(null),i=U.useRef(null),j=vz(),k=U.useContext(xW),l=x8(a=>!!e||!1===k.filter()||!a.search||a.filtered.groups.has(g));x6(()=>k.group(g),[]),x9(g,h,[a.value,a.heading,i]);let m=U.useMemo(()=>({id:g,forceMount:e}),[e]);return U.createElement(v$.div,{ref:vp(h,b),...f,"cmdk-group":"",role:"presentation",hidden:!l||void 0},c&&U.createElement("div",{ref:i,"cmdk-group-heading":"","aria-hidden":!0,id:j},c),yb(a,a=>U.createElement("div",{"cmdk-group-items":"",role:"group","aria-labelledby":c?j:void 0},U.createElement(xY.Provider,{value:m},a))))}),x0=U.forwardRef((a,b)=>{let{alwaysRender:c,...d}=a,e=U.useRef(null),f=x8(a=>!a.search);return c||f?U.createElement(v$.div,{ref:vp(e,b),...d,"cmdk-separator":"",role:"separator"}):null}),x1=U.forwardRef((a,b)=>{let{onValueChange:c,...d}=a,e=null!=a.value,f=U.useContext(xX),g=x8(a=>a.search),h=x8(a=>a.selectedItemId),i=U.useContext(xW);return U.useEffect(()=>{null!=a.value&&f.setState("search",a.value)},[a.value]),U.createElement(v$.input,{ref:b,...d,"cmdk-input":"",autoComplete:"off",autoCorrect:"off",spellCheck:!1,"aria-autocomplete":"list",role:"combobox","aria-expanded":!0,"aria-controls":i.listId,"aria-labelledby":i.labelId,"aria-activedescendant":h,id:i.inputId,type:"text",value:e?a.value:g,onChange:a=>{e||f.setState("search",a.target.value),null==c||c(a.target.value)}})}),x2=U.forwardRef((a,b)=>{let{children:c,label:d="Suggestions",...e}=a,f=U.useRef(null),g=U.useRef(null),h=x8(a=>a.selectedItemId),i=U.useContext(xW);return U.useEffect(()=>{if(g.current&&f.current){let a=g.current,b=f.current,c,d=new ResizeObserver(()=>{c=requestAnimationFrame(()=>{let c=a.offsetHeight;b.style.setProperty("--cmdk-list-height",c.toFixed(1)+"px")})});return d.observe(a),()=>{cancelAnimationFrame(c),d.unobserve(a)}}},[]),U.createElement(v$.div,{ref:vp(f,b),...e,"cmdk-list":"",role:"listbox",tabIndex:-1,"aria-activedescendant":h,"aria-label":d,id:i.listId},yb(a,a=>U.createElement("div",{ref:vp(g,i.listInnerRef),"cmdk-list-sizer":""},a)))}),x3=U.forwardRef((a,b)=>{let{open:c,onOpenChange:d,overlayClassName:e,contentClassName:f,container:g,...h}=a;return U.createElement(xz,{open:c,onOpenChange:d},U.createElement(xD,{container:g},U.createElement(xF,{"cmdk-overlay":"",className:e}),U.createElement(xJ,{"aria-label":a.label,"cmdk-dialog":"",className:f},U.createElement(xZ,{ref:b,...h}))))}),x4=Object.assign(xZ,{List:x2,Item:x$,Input:x1,Group:x_,Separator:x0,Dialog:x3,Empty:U.forwardRef((a,b)=>x8(a=>0===a.filtered.count)?U.createElement(v$.div,{ref:b,...a,"cmdk-empty":"",role:"presentation"}):null),Loading:U.forwardRef((a,b)=>{let{progress:c,children:d,label:e="Loading...",...f}=a;return U.createElement(v$.div,{ref:b,...f,"cmdk-loading":"",role:"progressbar","aria-valuenow":c,"aria-valuemin":0,"aria-valuemax":100,"aria-label":e},yb(a,a=>U.createElement("div",{"aria-hidden":!0},a)))})});function x5(a){let b=U.useRef(a);return x6(()=>{b.current=a}),b}var x6=U.useEffect;function x7(a){let b=U.useRef();return void 0===b.current&&(b.current=a()),b}function x8(a){let b=U.useContext(xX),c=()=>a(b.snapshot());return U.useSyncExternalStore(b.subscribe,c,c)}function x9(a,b,c,d=[]){let e=U.useRef(),f=U.useContext(xW);return x6(()=>{var g;let h=(()=>{var a;for(let b of c){if("string"==typeof b)return b.trim();if("object"==typeof b&&"current"in b)return b.current?null==(a=b.current.textContent)?void 0:a.trim():e.current}})(),i=d.map(a=>a.trim());f.value(a,h,i),null==(g=b.current)||g.setAttribute(xU,h),e.current=h}),e}var ya=()=>{let[a,b]=U.useState(),c=x7(()=>new Map);return x6(()=>{c.current.forEach(a=>a()),c.current=new Map},[a]),(a,d)=>{c.current.set(a,d),b({})}};function yb({asChild:a,children:b},c){let d;return a&&U.isValidElement(b)?U.cloneElement("function"==typeof(d=b.type)?d(b.props):"render"in d?d.render(b.props):b,{ref:b.ref},c(b.props.children)):c(b)}var yc={position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",borderWidth:"0"};let yd=gu("list",[["path",{d:"M3 5h.01",key:"18ugdj"}],["path",{d:"M3 12h.01",key:"nlz23k"}],["path",{d:"M3 19h.01",key:"noohij"}],["path",{d:"M8 5h13",key:"1pao27"}],["path",{d:"M8 12h13",key:"1za7za"}],["path",{d:"M8 19h13",key:"m83p4d"}]]),ye=gu("rocket",[["path",{d:"M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5",key:"qeys4"}],["path",{d:"M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09",key:"u4xsad"}],["path",{d:"M9 12a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.4 22.4 0 0 1-4 2z",key:"676m9"}],["path",{d:"M9 12H4s.55-3.03 2-4c1.62-1.08 5 .05 5 .05",key:"92ym6u"}]]),yf=gu("message-square",[["path",{d:"M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z",key:"18887p"}]]),yg=gu("file",[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}]]),yh=gu("eye",[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]),yi=gu("square-pen",[["path",{d:"M12 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7",key:"1m0v6g"}],["path",{d:"M18.375 2.625a1 1 0 0 1 3 3l-9.013 9.014a2 2 0 0 1-.853.505l-2.873.84a.5.5 0 0 1-.62-.62l.84-2.873a2 2 0 0 1 .506-.852z",key:"ohrbg2"}]]),yj=gu("panel-left",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M9 3v18",key:"fh3hqa"}]]),yk=gu("terminal",[["path",{d:"M12 19h8",key:"baeox8"}],["path",{d:"m4 17 6-6-6-6",key:"1yngyt"}]]),yl=gu("sun",[["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"m4.93 4.93 1.41 1.41",key:"149t6j"}],["path",{d:"m17.66 17.66 1.41 1.41",key:"ptbguv"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"m6.34 17.66-1.41 1.41",key:"1m8zz5"}],["path",{d:"m19.07 4.93-1.41 1.41",key:"1shlcs"}]]),ym=gu("moon",[["path",{d:"M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401",key:"kfwtm"}]]),yn=gu("settings",[["path",{d:"M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915",key:"1i5ecw"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]),yo=[{id:"all",icon:yd,labelKey:"palette.scope.all"},{id:"commands",icon:ye,labelKey:"palette.scope.commands"},{id:"sessions",icon:yf,labelKey:"palette.scope.sessions"},{id:"files",icon:yg,labelKey:"palette.scope.files"}],yp=["suggested","navigation","panels","configure"];function yq({text:a,query:b}){let c=function(a,b){let c=b.trim().toLowerCase().split(/\s+/).filter(Boolean);if(!a||0===c.length)return[{text:a,hit:!1}];let d=a.toLowerCase(),e=[];for(let a of c){let b=0;for(;;){let c=d.indexOf(a,b);if(-1===c)break;e.push([c,c+a.length]),b=c+a.length}}if(0===e.length)return[{text:a,hit:!1}];e.sort((a,b)=>a[0]-b[0]||a[1]-b[1]);let f=[];for(let a of e){let b=f[f.length-1];b&&a[0]<=b[1]?b[1]=Math.max(b[1],a[1]):f.push([a[0],a[1]])}let g=[],h=0;for(let[b,c]of f)b>h&&g.push({text:a.slice(h,b),hit:!1}),g.push({text:a.slice(b,c),hit:!0}),h=c;return h<a.length&&g.push({text:a.slice(h),hit:!1}),g}(a,b);return(0,T.jsx)(T.Fragment,{children:c.map((a,b)=>a.hit?(0,T.jsx)("mark",{className:"palette-mark",children:a.text},b):(0,T.jsx)("span",{children:a.text},b))})}function yr({open:a,onOpenChange:b,sessions:c,projectKey:d,cwd:e,commands:f,onOpenSession:g,onOpenFile:h,onOpenMessage:i}){let j,k,l,{t:m}=(0,bk.s)(),[n,o]=(0,U.useState)(""),[p,q]=(0,U.useState)("all"),[r,s]=(0,U.useState)([]),[t,u]=(0,U.useState)(!1),[v,w]=(0,U.useState)([]),[x,y]=(0,U.useState)(!1),[z,A]=(0,U.useState)([]);(0,U.useRef)(null);let B=(0,U.useRef)(!1),{scope:C,query:D}=(k=(j=n.trimStart()).slice(0,1),(l=Object.prototype.hasOwnProperty.call(gS,k)?gS[k]:null)?{scope:l,query:j.slice(1).trim()}:{scope:p,query:n.trim()}),E=(0,U.useMemo)(()=>{if("files"!==C&&"all"!==C)return[];let a=D.trim().toLowerCase();return(a?z.filter(b=>a.split(/\s+/).every(a=>b.toLowerCase().includes(a))):z.slice(0,3)).slice(0,80)},[z,D,C]),F=(0,U.useMemo)(()=>{let a=D.trim().toLowerCase(),b=a?f.filter(b=>{let c=`${b.title} ${(b.keywords??[]).join(" ")}`.toLowerCase();return a.split(/\s+/).every(a=>c.includes(a))}):f,c=new Map;for(let a of yp)c.set(a,[]);for(let a of b)c.get(a.section)?.push(a);return c},[f,D]),G=(0,U.useCallback)((a,c)=>{let d=function(a,b,c,d){let e;if(!(e=b.trim())||Object.prototype.hasOwnProperty.call(gS,e))return[...a];let f=b.trim().toLowerCase(),g=a.filter(a=>a.query.trim().toLowerCase()!==f);return[{query:b.trim(),scope:c,updatedAt:d},...g].slice(0,20)}(r,gT(a),c,Date.now());s(d);setTimeout(()=>b(!1),0)},[r,d,b]),H=(0,U.useCallback)(a=>{B.current||(B.current=!0,G(n,C),setTimeout(()=>a.run(),0))},[n,C,G]),I=(0,U.useCallback)(a=>{G(n,C),setTimeout(()=>{a.entryId?i(a.session,a.entryId):g(a.session)},0)},[n,C,G,i,g]),J=(0,U.useCallback)(a=>{G(n,C),setTimeout(()=>h(a),0)},[n,C,G,h]),K="all"===C||"commands"===C,L="all"===C||"sessions"===C,M="all"===C||"files"===C,N="u">typeof navigator&&/mac/i.test(navigator.platform),O=a=>t?a:a.slice(0,3),P=!t&&(L&&v.length>3||M&&E.length>3||K&&yp.some(a=>(F.get(a)?.length??0)>3));return(0,T.jsx)(xz,{open:a,onOpenChange:b,children:(0,T.jsxs)(xD,{children:[(0,T.jsx)(xF,{className:"palette-overlay"}),(0,T.jsxs)(xJ,{className:"palette-content","aria-describedby":void 0,children:[(0,T.jsx)(xN,{className:"palette-sr-title",children:m("palette.placeholder")}),(0,T.jsxs)(x4,{shouldFilter:!1,loop:!0,label:m("palette.placeholder"),children:[(0,T.jsxs)("div",{className:"palette-search",children:[(0,T.jsx)(gE,{size:15,"aria-hidden":"true",style:{flexShrink:0,color:"var(--text-dim)"}}),(0,T.jsx)(x4.Input,{autoFocus:!0,value:n,onValueChange:o,placeholder:m("palette.placeholder"),className:"palette-input","aria-label":m("palette.placeholder")}),(0,T.jsx)("span",{className:"palette-kbd",children:gU(N)})]}),(0,T.jsx)("div",{className:"palette-scopes",role:"tablist","aria-label":m("palette.placeholder"),children:yo.map(({id:a,icon:b,labelKey:c})=>{let d=C===a;return(0,T.jsxs)("button",{type:"button",role:"tab","aria-selected":d,className:`palette-scope${d?" is-active":""}`,onClick:()=>{q(a),o(gT(n)),u(!1)},children:[(0,T.jsx)(b,{size:12,"aria-hidden":"true"}),m(c)]},a)})}),(0,T.jsxs)(x4.List,{className:"palette-list",children:[(0,T.jsxs)(x4.Empty,{className:"palette-empty",children:[(0,T.jsx)("div",{children:m("palette.empty")}),(0,T.jsx)("div",{className:"palette-empty-hint",children:m("palette.emptyHint")})]}),!D&&r.length>0&&(0,T.jsx)(x4.Group,{heading:m("palette.section.history"),className:"palette-group",children:r.slice(0,t?20:3).map(a=>(0,T.jsxs)(x4.Item,{value:`history ${a.query}`,onSelect:()=>{o(`${function(a){for(let[b,c]of Object.entries(gS))if(c===a)return b;return""}(a.scope)}${a.query}`),q(a.scope),u(!1)},className:"palette-item",children:[(0,T.jsx)(gN,{size:14,"aria-hidden":"true",style:{flexShrink:0,color:"var(--text-dim)"}}),(0,T.jsx)("span",{className:"palette-item-body",children:(0,T.jsx)("span",{className:"palette-item-title",children:a.query})})]},`${a.scope}:${a.query}`))}),L&&v.length>0&&(0,T.jsx)(x4.Group,{heading:m("palette.section.sessions"),className:"palette-group",children:O(v).map(a=>(0,T.jsxs)(x4.Item,{value:`${a.session.name??a.session.firstMessage??a.session.id} ${a.snippet??""}`,onSelect:()=>I(a),className:"palette-item",children:[(0,T.jsx)(yf,{size:14,"aria-hidden":"true",style:{flexShrink:0,color:"var(--text-dim)"}}),(0,T.jsxs)("span",{className:"palette-item-body",children:[(0,T.jsx)("span",{className:"palette-item-title",children:(0,T.jsx)(yq,{text:a.session.name||a.session.firstMessage||a.session.id,query:D})}),a.snippet&&(0,T.jsx)("span",{className:"palette-item-sub",children:(0,T.jsx)(yq,{text:a.snippet,query:D})})]}),(0,T.jsx)("span",{className:"palette-item-meta",children:a.session.cwd?a.session.cwd.split(/[\\/]/).filter(Boolean).pop():""})]},`s-${a.session.id}-${a.entryId??"session"}`))}),M&&E.length>0&&(0,T.jsx)(x4.Group,{heading:m("palette.section.files"),className:"palette-group",children:O(E).map(a=>(0,T.jsxs)(x4.Item,{value:`file ${a}`,onSelect:()=>J(a),className:"palette-item",children:[a.endsWith("/")?(0,T.jsx)(gG,{size:14,"aria-hidden":"true",style:{flexShrink:0,color:"var(--text-dim)"}}):(0,T.jsx)(yg,{size:14,"aria-hidden":"true",style:{flexShrink:0,color:"var(--text-dim)"}}),(0,T.jsx)("span",{className:"palette-item-body",children:(0,T.jsx)("span",{className:"palette-item-title",children:(0,T.jsx)(yq,{text:a,query:D})})})]},`f-${a}`))}),K&&yp.map(a=>{let b=F.get(a)??[];return 0===b.length?null:(0,T.jsx)(x4.Group,{heading:m(`palette.section.${a}`),className:"palette-group",children:O(b).map(a=>{let b=a.icon;return(0,T.jsxs)(x4.Item,{value:`${a.title} ${(a.keywords??[]).join(" ")}`,onSelect:()=>H(a),className:"palette-item",children:[(0,T.jsx)(b,{size:14,"aria-hidden":"true",style:{flexShrink:0,color:"var(--text-dim)"}}),(0,T.jsx)("span",{className:"palette-item-body",children:(0,T.jsx)("span",{className:"palette-item-title",children:(0,T.jsx)(yq,{text:a.title,query:D})})}),a.shortcut&&(0,T.jsx)("span",{className:"palette-kbd",children:a.shortcut})]},a.id)})},a)}),x&&(0,T.jsx)("div",{className:"palette-status",children:m("palette.searching")}),P&&(0,T.jsxs)(x4.Item,{value:"__show_more__",onSelect:()=>u(!0),className:"palette-item palette-item-more",children:[(0,T.jsx)(yh,{size:14,"aria-hidden":"true",style:{flexShrink:0,color:"var(--text-dim)"}}),(0,T.jsx)("span",{className:"palette-item-body",children:(0,T.jsx)("span",{className:"palette-item-title",children:m("palette.showMore")})})]})]})]})]})]})})}let ys=new Set(["awaiting_input","review","failed"]),yt=(0,U.createContext)(null);function yu(){let a=(0,U.useContext)(yt);if(!a)throw Error("useTasksView must be used within TasksViewProvider");return a}function yv({children:a}){let{t:b}=(0,bk.s)();(0,U.useRef)(b);let[c,d]=(0,U.useState)([]),[e,f]=(0,U.useState)([]),g=(0,U.useRef)(0),h=(0,U.useCallback)(async()=>{let a=++g.current;try{let b=await (0,s_.Wt)(),c=(await Promise.all(b.map(a=>(0,s_.Vk)(a).catch(()=>[])))).flat().sort((a,b)=>b.id-a.id);if(a!==g.current)return;f(a=>yw(a,b)?a:b),d(a=>yw(a,c)?a:c)}catch{}},[]),i=(0,U.useMemo)(()=>c.filter(a=>ys.has(a.status)&&null==a.archivedAt).length,[c]);(0,U.useRef)(null);let j=(0,U.useMemo)(()=>({tasks:c,projects:e,attentionCount:i,refetch:h}),[c,e,i,h]);return(0,T.jsx)(yt.Provider,{value:j,children:a})}function yw(a,b){return JSON.stringify(a)===JSON.stringify(b)}let yx=new Map([["bold",U.createElement(U.Fragment,null,U.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",U.createElement(U.Fragment,null,U.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"}),U.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",U.createElement(U.Fragment,null,U.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",U.createElement(U.Fragment,null,U.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",U.createElement(U.Fragment,null,U.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",U.createElement(U.Fragment,null,U.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"}))]]),yy=U.forwardRef((a,b)=>U.createElement(Y,{ref:b,...a,weights:yx}));yy.displayName="GearIcon";let yz=new Map([["bold",U.createElement(U.Fragment,null,U.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",U.createElement(U.Fragment,null,U.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"}),U.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",U.createElement(U.Fragment,null,U.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",U.createElement(U.Fragment,null,U.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",U.createElement(U.Fragment,null,U.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",U.createElement(U.Fragment,null,U.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"}))]]),yA=U.forwardRef((a,b)=>U.createElement(Y,{ref:b,...a,weights:yz}));yA.displayName="FunnelSimpleIcon";let yB=new Map([["bold",U.createElement(U.Fragment,null,U.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",U.createElement(U.Fragment,null,U.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"}),U.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",U.createElement(U.Fragment,null,U.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",U.createElement(U.Fragment,null,U.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",U.createElement(U.Fragment,null,U.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",U.createElement(U.Fragment,null,U.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"}))]]),yC=U.forwardRef((a,b)=>U.createElement(Y,{ref:b,...a,weights:yB}));yC.displayName="PlayIcon";let yD=["todo","inProgress","attention","done"];function yE(a){return"review"===a.status&&0===a.filesChanged}function yF(){return{defaultAgentType:null,modeId:null,configValues:{},autoProcess:!0,maxConcurrent:1,mergeStrategy:"merge",deleteWorktreeDefault:!0,preflightCommand:null,initCommand:null,stagePrompts:null}}let yG=["todo","inProgress","attention","done"],yH={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)"}},yI=new Map([["bold",U.createElement(U.Fragment,null,U.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",U.createElement(U.Fragment,null,U.createElement("path",{d:"M224,128a96,96,0,1,1-96-96A96,96,0,0,1,224,128Z",opacity:"0.2"}),U.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",U.createElement(U.Fragment,null,U.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",U.createElement(U.Fragment,null,U.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",U.createElement(U.Fragment,null,U.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",U.createElement(U.Fragment,null,U.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"}))]]),yJ=U.forwardRef((a,b)=>U.createElement(Y,{ref:b,...a,weights:yI}));yJ.displayName="CircleNotchIcon";let yK=new Map([["bold",U.createElement(U.Fragment,null,U.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",U.createElement(U.Fragment,null,U.createElement("path",{d:"M224,128a96,96,0,1,1-96-96A96,96,0,0,1,224,128Z",opacity:"0.2"}),U.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",U.createElement(U.Fragment,null,U.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",U.createElement(U.Fragment,null,U.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",U.createElement(U.Fragment,null,U.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",U.createElement(U.Fragment,null,U.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"}))]]),yL=U.forwardRef((a,b)=>U.createElement(Y,{ref:b,...a,weights:yK}));yL.displayName="ProhibitIcon";let yM=new Map([["bold",U.createElement(U.Fragment,null,U.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",U.createElement(U.Fragment,null,U.createElement("path",{d:"M104,56A24,24,0,1,1,80,32,24,24,0,0,1,104,56Z",opacity:"0.2"}),U.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",U.createElement(U.Fragment,null,U.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",U.createElement(U.Fragment,null,U.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",U.createElement(U.Fragment,null,U.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",U.createElement(U.Fragment,null,U.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"}))]]),yN=U.forwardRef((a,b)=>U.createElement(Y,{ref:b,...a,weights:yM}));function yO({task:a}){let{t:b}=(0,bk.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,T.jsxs)("span",{style:{...d,color:"var(--accent)"},children:[(0,T.jsx)(yJ,{size:11,className:"pi-spin",style:{animation:"pi-spin 1s linear infinite"},"aria-hidden":"true"}),c]});case"awaiting_input":case"review":return(0,T.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,T.jsxs)("span",{style:{...d,background:"rgba(16,185,129,0.12)",color:"#059669"},children:[(0,T.jsx)(al,{size:10,weight:"bold","aria-hidden":"true"}),c]});case"failed":return(0,T.jsx)("span",{style:{...d,background:"rgba(239,68,68,0.12)",color:"var(--status-error)"},children:c});default:return(0,T.jsx)("span",{style:{...d,background:"var(--bg-hover)",color:"var(--text-muted)"},children:c})}}function yP({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,T.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,T.jsx)(yJ,{size:10,style:{animation:"pi-spin 1s linear infinite"},"aria-hidden":"true"}):"passed"===b.status?(0,T.jsx)(bv,{size:10,"aria-hidden":"true"}):(0,T.jsx)(eU,{size:10,"aria-hidden":"true"}),(0,T.jsx)("span",{style:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:b.command})]})}function yQ({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,bk.s)(),n=null!=a.archivedAt,o="running"===a.status||"awaiting_input"===a.status||"merging"===a.status,p=null!=a.filesChanged&&a.filesChanged>0?(0,T.jsxs)("span",{style:{display:"inline-flex",alignItems:"center",gap:3,fontFamily:"var(--font-mono)",fontSize:10},children:[(0,T.jsxs)("span",{style:{color:"#059669"},children:["+",a.additions??0]}),(0,T.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:aL,label:m("tasks.actionUnarchive"),onClick:k},more:b};switch(a.status){case"todo":c={icon:yC,label:m("tasks.actionStart"),onClick:e},b.push({icon:ss,label:m("tasks.actionEdit"),onClick:l});break;case"queued":case"preparing":case"running":case"awaiting_input":c={icon:yL,label:m("tasks.actionCancel"),onClick:f};break;case"review":c=yE(a)?{icon:al,label:m("tasks.actionComplete"),onClick:j}:{icon:yN,label:m("tasks.actionMerge"),onClick:j};break;case"merging":break;case"failed":c={icon:aF,label:m("tasks.actionRetry"),onClick:g},b.push({icon:ss,label:m("tasks.actionEdit"),onClick:l}),b.push({icon:aL,label:m("tasks.actionArchive"),onClick:k});break;case"done":c={icon:aL,label:m("tasks.actionArchive"),onClick:k};break;case"canceled":c={icon:rH,label:m("tasks.actionRequeue"),onClick:h},b.push({icon:aL,label:m("tasks.actionArchive"),onClick:k})}return{primary:c,more:b}})(),t=[...s];return null!=a.conversationId&&t.push({icon:rF,label:m("tasks.actionViewSession"),onClick:i}),(0,T.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,T.jsxs)("div",{style:{display:"flex",alignItems:"flex-start",justifyContent:"space-between",gap:8},children:[(0,T.jsx)("span",{style:{minWidth:0,overflowWrap:"break-word",fontSize:13,fontWeight:500,lineHeight:1.4},children:a.title}),(0,T.jsx)(yO,{task:a})]}),(0,T.jsxs)("div",{style:{display:"flex",flexWrap:"wrap",alignItems:"center",gap:"2px 6px",marginTop:6,fontSize:11,color:"var(--text-muted)"},children:[b?(0,T.jsx)("span",{style:{maxWidth:160,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:b}):null,b&&a.workBranch?(0,T.jsx)("span",{style:{opacity:.5},children:"/"}):null,a.workBranch?(0,T.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,T.jsx)("span",{style:{opacity:.5},children:"\xb7"}):null,p,p&&q?(0,T.jsx)("span",{style:{opacity:.5},children:"\xb7"}):null,q?(0,T.jsx)("span",{style:{flexShrink:0},children:q}):null,(0,T.jsx)(yP,{task:a})]}),a.lastError&&("failed"===a.status||"review"===a.status)?(0,T.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,T.jsx)(rb,{size:13,style:{flexShrink:0},"aria-hidden":"true"}),(0,T.jsx)("span",{style:{minWidth:0,flex:1,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a.lastError}),(0,T.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,T.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,T.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,T.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:6,marginTop:12,paddingTop:12,borderTop:"1px solid var(--border)"},children:[r?(0,T.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,T.jsx)(r.icon,{size:12,weight:"bold","aria-hidden":"true"}),r.label]}):null,(0,T.jsx)("div",{style:{flex:1}}),t.map(a=>(0,T.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,T.jsx)(a.icon,{size:13,"aria-hidden":"true"})},a.label))]}):null]})}function yR({open:a,onOpenChange:b,task:c}){let{t:d}=(0,bk.s)(),{refetch:e}=yu(),[f,g]=(0,U.useState)(""),[h,i]=(0,U.useState)(!1);if(!a||!c)return null;let j=async()=>{if(!h){i(!0);try{await (0,s_.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,T.jsx)("div",{style:{position:"fixed",inset:0,zIndex:950,display:"flex",alignItems:"center",justifyContent:"center",background:"rgba(0,0,0,0.45)"},children:(0,T.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,T.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"14px 16px 0"},children:[(0,T.jsx)("h3",{style:{fontSize:15,fontWeight:600,margin:0},children:d("tasks.cancelTitle")}),(0,T.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,T.jsx)(ah,{size:16,"aria-hidden":"true"})})]}),(0,T.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:12,padding:"14px 16px 16px"},children:[(0,T.jsx)("p",{style:{margin:0,fontSize:12,lineHeight:1.5,color:"var(--text-muted)"},children:d("tasks.cancelDescription")}),(0,T.jsxs)("label",{style:{display:"flex",flexDirection:"column",gap:5},children:[(0,T.jsx)("span",{style:{fontSize:12,color:"var(--text-muted)"},children:d("tasks.cancelReasonLabel")}),(0,T.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,T.jsxs)("div",{style:{display:"flex",justifyContent:"flex-end",gap:8,marginTop:4},children:[(0,T.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,T.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 yS({open:a,onOpenChange:b,task:c}){let{t:d}=(0,bk.s)(),{refetch:e}=yu(),[f,g]=(0,U.useState)(!0),[h,i]=(0,U.useState)(!1),j=c?.worktreePath!=null;if(!a||!c)return null;let k=async()=>{if(!h){i(!0);try{await (0,s_.ZX)(c.id,c.projectRoot,j&&f),b(!1),e()}catch(a){console.error("complete failed",a)}finally{i(!1)}}};return(0,T.jsx)("div",{style:{position:"fixed",inset:0,zIndex:950,display:"flex",alignItems:"center",justifyContent:"center",background:"rgba(0,0,0,0.45)"},children:(0,T.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,T.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"14px 16px 0"},children:[(0,T.jsx)("h3",{style:{fontSize:15,fontWeight:600,margin:0},children:d("tasks.completeTitle")}),(0,T.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,T.jsx)(ah,{size:16,"aria-hidden":"true"})})]}),(0,T.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:12,padding:"14px 16px 16px"},children:[(0,T.jsx)("p",{style:{margin:0,fontSize:12,lineHeight:1.5,color:"var(--text-muted)"},children:d("tasks.completeDescription")}),j?(0,T.jsxs)("label",{style:{display:"flex",alignItems:"center",gap:8,fontSize:13,cursor:"pointer"},children:[(0,T.jsx)("input",{type:"checkbox",checked:f,onChange:a=>g(a.target.checked),style:{accentColor:"var(--accent)"}}),d("tasks.completeDeleteWorktree")]}):null,(0,T.jsxs)("div",{style:{display:"flex",justifyContent:"flex-end",gap:8,marginTop:4},children:[(0,T.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,T.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")})]})]})]})})}yN.displayName="GitMergeIcon";let yT=new Map([["bold",U.createElement(U.Fragment,null,U.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",U.createElement(U.Fragment,null,U.createElement("path",{d:"M176,128a48,48,0,1,1-48-48A48,48,0,0,1,176,128Z",opacity:"0.2"}),U.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",U.createElement(U.Fragment,null,U.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",U.createElement(U.Fragment,null,U.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",U.createElement(U.Fragment,null,U.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",U.createElement(U.Fragment,null,U.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"}))]]),yU=U.forwardRef((a,b)=>U.createElement(Y,{ref:b,...a,weights:yT}));yU.displayName="GitCommitIcon";let yV=new Map([["bold",U.createElement(U.Fragment,null,U.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",U.createElement(U.Fragment,null,U.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"}),U.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",U.createElement(U.Fragment,null,U.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",U.createElement(U.Fragment,null,U.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",U.createElement(U.Fragment,null,U.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",U.createElement(U.Fragment,null,U.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"}))]]),yW=U.forwardRef((a,b)=>U.createElement(Y,{ref:b,...a,weights:yV}));function yX({open:a,onOpenChange:b,task:c,onViewSession:d,onMerge:e,onEdit:f,onCancel:g,onRetry:h,onRequeue:i,onComplete:j}){let{t:k}=(0,bk.s)(),{refetch:l}=yu(),[m,n]=(0,U.useState)([]),[o,p]=(0,U.useState)([]),[q,r]=(0,U.useState)(null),[s,t]=(0,U.useState)(null),[u,v]=(0,U.useState)(!1),[w,x]=(0,U.useState)(!1),[y,z]=(0,U.useState)(""),[A,B]=(0,U.useState)(!1),[C,D]=(0,U.useState)(!1),[E,F]=(0,U.useState)(!1),G=c?.id??null,H=c?.projectRoot??null;(0,U.useCallback)(async()=>{if(null==G||null==H)return;let[a,b]=await Promise.all([(0,s_.HB)(H,G).catch(()=>[]),c?.worktreePath?(0,s_.JH)(H,G).then(a=>a.files).catch(()=>[]):Promise.resolve([])]);n(a),p(b)},[G,H,c?.worktreePath]);let I=(0,U.useCallback)(async a=>{F(!0);try{await a()}catch(a){console.error("detail action failed",a)}finally{F(!1),l()}},[l]),J=(0,U.useCallback)(async a=>{if(null!=H&&null!=G){v(!0);try{let b=await (0,s_.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,s_.bH)(c.id,H,C)),b(!1))},L=async()=>{null!=c&&null!=H&&y.trim()&&(await I(()=>(0,s_.in)(c.id,H,y.trim())),x(!1),z(""))};if(!a||null==c||null==H)return null;let M=[];if(null==c.archivedAt)switch(c.status){case"todo":M.push({label:k("tasks.actionStart"),icon:yC,onClick:()=>void I(()=>(0,s_.oQ)(c.id,H,"start")),filled:!0}),M.push({label:k("tasks.actionEdit"),icon:ss,onClick:()=>f(c)});break;case"queued":case"preparing":case"running":case"awaiting_input":M.push({label:k("tasks.actionCancel"),icon:yL,onClick:()=>g(c),danger:!0});break;case"review":M.push({label:yE(c)?k("tasks.actionComplete"):k("tasks.actionMerge"),icon:yE(c)?al:yU,onClick:()=>yE(c)?j(c):e(c),filled:!0}),M.push({label:k("tasks.actionReturn"),icon:rH,onClick:()=>x(!0)});break;case"failed":M.push({label:k("tasks.actionRetry"),icon:aF,onClick:()=>h(c),filled:!0}),M.push({label:k("tasks.actionEdit"),icon:ss,onClick:()=>f(c)});break;case"done":M.push({label:k("tasks.actionArchive"),icon:aL,onClick:()=>void I(()=>(0,s_.et)(c.id,H,!0))});break;case"canceled":M.push({label:k("tasks.actionRequeue"),icon:rH,onClick:()=>i(c),filled:!0})}else M.push({label:k("tasks.actionUnarchive"),icon:aL,onClick:()=>void I(()=>(0,s_.et)(c.id,H,!1))});return null!=c.conversationId&&M.push({label:k("tasks.actionViewSession"),icon:rF,onClick:()=>d(c)}),(0,T.jsx)("div",{style:{position:"fixed",inset:0,zIndex:800,background:"rgba(0,0,0,0.35)"},children:(0,T.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,T.jsxs)("div",{style:{display:"flex",alignItems:"flex-start",justifyContent:"space-between",gap:12,padding:"16px 16px 0"},children:[(0,T.jsxs)("div",{style:{minWidth:0},children:[(0,T.jsx)("h3",{style:{margin:0,fontSize:15,fontWeight:600,lineHeight:1.4,overflowWrap:"break-word"},children:c.title}),(0,T.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8,marginTop:6},children:[(0,T.jsx)(yO,{task:c}),c.workBranch?(0,T.jsxs)("span",{style:{display:"inline-flex",alignItems:"center",gap:4,fontFamily:"var(--font-mono)",fontSize:11,color:"var(--text-muted)"},children:[(0,T.jsx)(ar,{size:12,"aria-hidden":"true"}),c.workBranch]}):null]})]}),(0,T.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,T.jsx)(ah,{size:16,"aria-hidden":"true"})})]}),(0,T.jsx)("div",{style:{display:"flex",flexWrap:"wrap",gap:8,padding:"14px 16px 0"},children:M.map(a=>{let b,c;return(0,T.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,T.jsx)(a.icon,{size:13,weight:"bold","aria-hidden":"true"}),a.label]},a.label)})}),w&&(0,T.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:8,padding:"12px 16px 0"},children:[(0,T.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,T.jsxs)("div",{style:{display:"flex",justifyContent:"flex-end",gap:8},children:[(0,T.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,T.jsx)("button",{type:"button",onClick:()=>void L(),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,T.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:6,padding:"14px 16px 0",fontSize:12,color:"var(--text-muted)"},children:[(0,T.jsxs)("div",{style:{display:"flex",gap:6},children:[(0,T.jsx)("span",{style:{flexShrink:0,color:"var(--text-dim)",width:64},children:k("tasks.metaProject")}),(0,T.jsx)("span",{style:{minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",fontFamily:"var(--font-mono)",fontSize:11},children:c.projectRoot})]}),c.createdAt?(0,T.jsxs)("div",{style:{display:"flex",gap:6},children:[(0,T.jsx)("span",{style:{flexShrink:0,color:"var(--text-dim)",width:64},children:k("tasks.metaCreated")}),(0,T.jsx)("span",{children:new Date(c.createdAt).toLocaleString()})]}):null,c.mergeCommit?(0,T.jsxs)("div",{style:{display:"flex",gap:6},children:[(0,T.jsx)("span",{style:{flexShrink:0,color:"var(--text-dim)",width:64},children:k("tasks.metaCommit")}),(0,T.jsx)("span",{style:{fontFamily:"var(--font-mono)",fontSize:11},children:c.mergeCommit})]}):null]}),o.length>0&&(0,T.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:4,padding:"14px 16px 0"},children:[(0,T.jsx)("span",{style:{fontSize:11,fontWeight:600,color:"var(--text-muted)",textTransform:"uppercase",letterSpacing:"0.05em"},children:k("tasks.changedFiles")}),(0,T.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:2,maxHeight:140,overflowY:"auto"},children:o.map(a=>(0,T.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,T.jsx)(yW,{size:13,style:{flexShrink:0,color:"var(--text-muted)"},"aria-hidden":"true"}),(0,T.jsx)("span",{style:{flex:1,minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",fontFamily:"var(--font-mono)",fontSize:11},children:a.file}),(0,T.jsxs)("span",{style:{fontFamily:"var(--font-mono)",fontSize:10,color:"#059669",flexShrink:0},children:["+",a.additions]}),(0,T.jsxs)("span",{style:{fontFamily:"var(--font-mono)",fontSize:10,color:"var(--status-error)",flexShrink:0},children:["-",a.deletions]})]},a.file))})]}),null!=q&&(0,T.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:6,padding:"12px 16px 0",minHeight:0,flexShrink:0},children:[(0,T.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8},children:[(0,T.jsx)("span",{style:{fontSize:11,fontWeight:600,color:"var(--text-muted)"},children:k("tasks.diff")}),(0,T.jsx)("span",{style:{fontFamily:"var(--font-mono)",fontSize:10,color:"var(--text-muted)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",flex:1},children:q}),(0,T.jsx)("button",{type:"button",onClick:()=>r(null),style:{background:"none",border:"none",cursor:"pointer",color:"var(--text-muted)",padding:2,display:"flex"},children:(0,T.jsx)(ah,{size:12,"aria-hidden":"true"})})]}),u?(0,T.jsx)("div",{style:{fontSize:11,color:"var(--text-muted)",padding:8},children:k("tasks.loading")}):s?(0,T.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,T.jsx)("div",{style:{color:c},children:a||" "},b)})}):(0,T.jsx)("div",{style:{fontSize:11,color:"var(--text-muted)",padding:8},children:k("tasks.noDiff")})]}),(0,T.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:4,padding:"14px 16px 0",flex:1,minHeight:0},children:[(0,T.jsx)("span",{style:{fontSize:11,fontWeight:600,color:"var(--text-muted)",textTransform:"uppercase",letterSpacing:"0.05em"},children:k("tasks.timeline")}),(0,T.jsx)("div",{style:{flex:1,minHeight:0,overflowY:"auto",paddingBottom:8},children:0===m.length?(0,T.jsx)("div",{style:{fontSize:11,color:"var(--text-dim)",padding:8},children:k("tasks.noEvents")}):(0,T.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:2},children:[...m].reverse().map(a=>{var b;let c,d;return(0,T.jsxs)("div",{style:{display:"flex",gap:8,padding:"4px 6px",borderRadius:6,fontSize:11},children:[(0,T.jsx)("span",{style:{color:"var(--text-dim)",flexShrink:0,fontFamily:"var(--font-mono)",fontSize:10,paddingTop:1},children:new Date(a.createdAt).toLocaleTimeString()}),(0,T.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,T.jsx)("span",{style:{color:"var(--text-muted)",fontStyle:"italic",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:String(a.payload.feedback)}):null]},a.id)})})})]}),(0,T.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,T.jsxs)(T.Fragment,{children:[(0,T.jsxs)("label",{style:{display:"flex",alignItems:"center",gap:6,fontSize:12,cursor:"pointer"},children:[(0,T.jsx)("input",{type:"checkbox",checked:C,onChange:a=>D(a.target.checked),style:{accentColor:"var(--accent)"}}),k("tasks.deleteWorktree")]}),(0,T.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,T.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,T.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,T.jsx)(aH,{size:13,"aria-hidden":"true"}),k("tasks.delete")]})})]})})}yW.displayName="GitDiffIcon";let yY=new Map([["bold",U.createElement(U.Fragment,null,U.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",U.createElement(U.Fragment,null,U.createElement("path",{d:"M192,48V224l-64-40L64,224V48a8,8,0,0,1,8-8H184A8,8,0,0,1,192,48Z",opacity:"0.2"}),U.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",U.createElement(U.Fragment,null,U.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",U.createElement(U.Fragment,null,U.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",U.createElement(U.Fragment,null,U.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",U.createElement(U.Fragment,null,U.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"}))]]),yZ=U.forwardRef((a,b)=>U.createElement(Y,{ref:b,...a,weights:yY}));function y$({open:a,onOpenChange:b,task:c,defaultProject:d,projects:e,prefillTitle:f,prefillPrompt:g,onSubmit:h}){let{t:i}=(0,bk.s)(),[j,k]=(0,U.useState)(""),[l,m]=(0,U.useState)(""),[n,o]=(0,U.useState)(""),[p,q]=(0,U.useState)([]),[r,s]=(0,U.useState)(""),[t,u]=(0,U.useState)(!1);if((0,U.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,s_.nY)({name:r.trim(),title:l.trim(),config:{prompt:n.trim()}}),s(""),(0,s_.VB)().then(q).catch(()=>void 0)}catch(a){console.error("save template failed",a)}},x=async a=>{try{await (0,s_.B_)(a),(0,s_.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,T.jsx)("div",{style:{position:"fixed",inset:0,zIndex:900,display:"flex",alignItems:"center",justifyContent:"center",background:"rgba(0,0,0,0.45)"},children:(0,T.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,T.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"14px 16px 0"},children:[(0,T.jsx)("h3",{style:{fontSize:15,fontWeight:600,margin:0},children:c?i("tasks.editTitle"):i("tasks.newTitle")}),(0,T.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,T.jsx)(ah,{size:16,"aria-hidden":"true"})})]}),(0,T.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:12,padding:"14px 16px 16px"},children:[p.length>0&&(0,T.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:4},children:[(0,T.jsx)("span",{style:{fontSize:11,fontWeight:600,color:"var(--text-muted)",textTransform:"uppercase",letterSpacing:"0.05em"},children:i("tasks.templates")}),(0,T.jsx)("div",{style:{display:"flex",flexWrap:"wrap",gap:6},children:p.map(a=>(0,T.jsxs)("span",{style:{display:"inline-flex",alignItems:"center",gap:4,borderRadius:999,background:"var(--bg-hover)",padding:"3px 8px",fontSize:11},children:[(0,T.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,T.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,T.jsx)(aH,{size:10,"aria-hidden":"true"})})]},a.id))})]}),(0,T.jsxs)("label",{style:{display:"flex",flexDirection:"column",gap:4},children:[(0,T.jsx)("span",{style:{fontSize:12,fontWeight:500,color:"var(--text)"},children:i("tasks.fieldProject")}),(0,T.jsx)("select",{value:j,onChange:a=>k(a.target.value),style:y,children:e.map(a=>(0,T.jsx)("option",{value:a,children:a.split("/").filter(Boolean).pop()??a},a))})]}),(0,T.jsxs)("label",{style:{display:"flex",flexDirection:"column",gap:4},children:[(0,T.jsx)("span",{style:{fontSize:12,fontWeight:500,color:"var(--text)"},children:i("tasks.fieldTitle")}),(0,T.jsx)("input",{value:l,onChange:a=>m(a.target.value),placeholder:i("tasks.fieldTitlePlaceholder"),style:y,autoFocus:!0})]}),(0,T.jsxs)("label",{style:{display:"flex",flexDirection:"column",gap:4},children:[(0,T.jsx)("span",{style:{fontSize:12,fontWeight:500,color:"var(--text)"},children:i("tasks.fieldPrompt")}),(0,T.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,T.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:6},children:[(0,T.jsx)("input",{value:r,onChange:a=>s(a.target.value),placeholder:i("tasks.templateNamePlaceholder"),style:{...y,flex:1}}),(0,T.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,T.jsx)(yZ,{size:13,"aria-hidden":"true"}),i("tasks.saveAsTemplate")]})]}),(0,T.jsxs)("div",{style:{display:"flex",justifyContent:"flex-end",gap:8,marginTop:4},children:[(0,T.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,T.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 y_({open:a,onOpenChange:b,task:c}){let{t:d}=(0,bk.s)(),{refetch:e}=yu(),[f,g]=(0,U.useState)(!0),[h,i]=(0,U.useState)(""),[j,k]=(0,U.useState)(!0),[l,m]=(0,U.useState)(!1);if(!a||!c)return null;let n=async()=>{if((f||h.trim())&&!l){m(!0);try{await (0,s_.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,T.jsx)("div",{style:{position:"fixed",inset:0,zIndex:950,display:"flex",alignItems:"center",justifyContent:"center",background:"rgba(0,0,0,0.45)"},children:(0,T.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,T.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"14px 16px 0"},children:[(0,T.jsx)("h3",{style:{fontSize:15,fontWeight:600,margin:0},children:d("tasks.mergeTitle")}),(0,T.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,T.jsx)(ah,{size:16,"aria-hidden":"true"})})]}),(0,T.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:12,padding:"14px 16px 16px"},children:[(0,T.jsxs)("label",{style:{display:"flex",alignItems:"center",gap:8,fontSize:13,cursor:"pointer"},children:[(0,T.jsx)("input",{type:"radio",checked:f,onChange:()=>g(!0),style:{accentColor:"var(--accent)"}}),d("tasks.mergeAutoMessage")]}),(0,T.jsxs)("label",{style:{display:"flex",alignItems:"center",gap:8,fontSize:13,cursor:"pointer"},children:[(0,T.jsx)("input",{type:"radio",checked:!f,onChange:()=>g(!1),style:{accentColor:"var(--accent)"}}),d("tasks.mergeManualMessage")]}),!f&&(0,T.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,T.jsxs)("label",{style:{display:"flex",alignItems:"center",gap:8,fontSize:13,cursor:"pointer"},children:[(0,T.jsx)("input",{type:"checkbox",checked:j,onChange:a=>k(a.target.checked),style:{accentColor:"var(--accent)"}}),d("tasks.mergeDeleteWorktree")]}),(0,T.jsxs)("div",{style:{display:"flex",justifyContent:"flex-end",gap:8,marginTop:4},children:[(0,T.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,T.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 y0({open:a,onOpenChange:b,task:c,kind:d}){let{t:e}=(0,bk.s)(),{refetch:f}=yu(),[g,h]=(0,U.useState)(""),[i,j]=(0,U.useState)(!1);if(!a||!c)return null;let k="retry"===d,l=async()=>{if(!i){j(!0);try{await (0,s_.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,T.jsx)("div",{style:{position:"fixed",inset:0,zIndex:950,display:"flex",alignItems:"center",justifyContent:"center",background:"rgba(0,0,0,0.45)"},children:(0,T.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,T.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"14px 16px 0"},children:[(0,T.jsx)("h3",{style:{fontSize:15,fontWeight:600,margin:0},children:e(k?"tasks.restartTitleRetry":"tasks.restartTitleRequeue")}),(0,T.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,T.jsx)(ah,{size:16,"aria-hidden":"true"})})]}),(0,T.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:12,padding:"14px 16px 16px"},children:[(0,T.jsx)("p",{style:{margin:0,fontSize:12,lineHeight:1.5,color:"var(--text-muted)"},children:e("tasks.restartDescription")}),(0,T.jsxs)("label",{style:{display:"flex",flexDirection:"column",gap:5},children:[(0,T.jsx)("span",{style:{fontSize:12,color:"var(--text-muted)"},children:e("tasks.actionAddNote")}),(0,T.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,T.jsxs)("div",{style:{display:"flex",justifyContent:"flex-end",gap:8,marginTop:4},children:[(0,T.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,T.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")})]})]})]})})}yZ.displayName="BookmarkSimpleIcon";let y1=["work","retry","return","merge"];function y2({open:a,onOpenChange:b,projectRoot:c}){let{t:d}=(0,bk.s)(),{projects:e}=yu(),[f,g]=(0,U.useState)(""),[h,i]=(0,U.useState)(()=>yF()),[j,k]=(0,U.useState)(!1),[l,m]=(0,U.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,s_.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,s_.E)(f),k(!1),i(yF())}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,T.jsx)("div",{style:{position:"fixed",inset:0,zIndex:960,display:"flex",alignItems:"center",justifyContent:"center",background:"rgba(0,0,0,0.45)"},children:(0,T.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,T.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"14px 16px 0"},children:[(0,T.jsx)("h3",{style:{fontSize:15,fontWeight:600,margin:0},children:d("tasks.settingsTitle")}),(0,T.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,T.jsx)(ah,{size:16,"aria-hidden":"true"})})]}),(0,T.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:10,padding:"14px 16px 16px"},children:[(0,T.jsxs)("label",{style:{display:"flex",flexDirection:"column",gap:4},children:[(0,T.jsx)("span",{style:{fontSize:12,fontWeight:500},children:d("tasks.settingsProject")}),(0,T.jsx)("select",{value:f,onChange:a=>g(a.target.value),style:q,children:e.map(a=>(0,T.jsx)("option",{value:a,children:a.split("/").filter(Boolean).pop()??a},a))})]}),f?(0,T.jsxs)(T.Fragment,{children:[(0,T.jsxs)("div",{style:r,children:[(0,T.jsx)("span",{style:{fontSize:12},children:d("tasks.settingsAutoProcess")}),(0,T.jsx)("input",{type:"checkbox",checked:h.autoProcess,onChange:a=>n("autoProcess",a.target.checked),style:{accentColor:"var(--accent)"}})]}),(0,T.jsxs)("div",{style:r,children:[(0,T.jsx)("span",{style:{fontSize:12},children:d("tasks.settingsMaxConcurrent")}),(0,T.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,T.jsxs)("div",{style:r,children:[(0,T.jsx)("span",{style:{fontSize:12},children:d("tasks.settingsMergeStrategy")}),(0,T.jsxs)("select",{value:h.mergeStrategy,onChange:a=>n("mergeStrategy",a.target.value),style:{...q,width:140},children:[(0,T.jsx)("option",{value:"merge",children:d("tasks.mergeStrategyMerge")}),(0,T.jsx)("option",{value:"squash",children:d("tasks.mergeStrategySquash")})]})]}),(0,T.jsxs)("div",{style:r,children:[(0,T.jsx)("span",{style:{fontSize:12},children:d("tasks.settingsDeleteWorktree")}),(0,T.jsx)("input",{type:"checkbox",checked:h.deleteWorktreeDefault,onChange:a=>n("deleteWorktreeDefault",a.target.checked),style:{accentColor:"var(--accent)"}})]}),(0,T.jsxs)("label",{style:{display:"flex",flexDirection:"column",gap:4},children:[(0,T.jsx)("span",{style:{fontSize:12},children:d("tasks.settingsPreflightCommand")}),(0,T.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,T.jsxs)("label",{style:{display:"flex",flexDirection:"column",gap:4},children:[(0,T.jsx)("span",{style:{fontSize:12},children:d("tasks.settingsInitCommand")}),(0,T.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,T.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:6,paddingTop:4},children:[(0,T.jsx)("span",{style:{fontSize:12,fontWeight:500},children:d("tasks.settingsStagePrompts")}),y1.map(a=>(0,T.jsxs)("label",{style:{display:"flex",flexDirection:"column",gap:4},children:[(0,T.jsx)("span",{style:{fontSize:11,color:"var(--text-muted)"},children:d(`tasks.stage.${a}`)}),(0,T.jsx)("input",{value:h.stagePrompts?.[a]??"",onChange:b=>n("stagePrompts",{...h.stagePrompts??{},[a]:b.target.value}),style:{...q,fontSize:11}})]},a))]}),j&&(0,T.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,T.jsx)("div",{style:{fontSize:12,color:"var(--text-muted)",padding:8},children:d("tasks.settingsNoProject")}),(0,T.jsxs)("div",{style:{display:"flex",justifyContent:"flex-end",gap:8,marginTop:4},children:[(0,T.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,T.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 y3({open:a,onOpenChange:b,task:c}){let{t:d}=(0,bk.s)();return a&&c?(0,T.jsx)("div",{style:{position:"fixed",inset:0,zIndex:970,display:"flex",alignItems:"center",justifyContent:"center",background:"rgba(0,0,0,0.45)"},children:(0,T.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,T.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"14px 16px 0"},children:[(0,T.jsx)("h3",{style:{fontSize:15,fontWeight:600,margin:0},children:d("tasks.sessionTitle")}),(0,T.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,T.jsx)(ah,{size:16,"aria-hidden":"true"})})]}),(0,T.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:10,padding:"14px 16px 16px",fontSize:12},children:[(0,T.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:4,background:"var(--bg)",border:"1px solid var(--border)",borderRadius:8,padding:10},children:[(0,T.jsx)("span",{style:{color:"var(--text-muted)"},children:d("tasks.sessionId")}),(0,T.jsx)("span",{style:{fontFamily:"var(--font-mono)",fontSize:11,overflowWrap:"anywhere"},children:c.conversationId??"—"})]}),c.sessionFile?(0,T.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:4,background:"var(--bg)",border:"1px solid var(--border)",borderRadius:8,padding:10},children:[(0,T.jsx)("span",{style:{color:"var(--text-muted)"},children:d("tasks.sessionFile")}),(0,T.jsx)("span",{style:{fontFamily:"var(--font-mono)",fontSize:11,overflowWrap:"anywhere"},children:c.sessionFile})]}):null,(0,T.jsx)("div",{style:{fontSize:11,color:"var(--text-muted)",lineHeight:1.6},children:d("tasks.sessionHint")}),(0,T.jsx)("div",{style:{display:"flex",justifyContent:"flex-end",marginTop:4},children:(0,T.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 y4="__all__",y5={showCanceled:!1,showArchived:!1};function y6(){let{t:a}=(0,bk.s)(),{attentionCount:b}=yu();return(0,T.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,T.jsxs)("h1",{style:{margin:0,display:"flex",alignItems:"center",gap:6,fontSize:13,fontWeight:600},children:[(0,T.jsx)(cd,{size:15,color:"var(--text-muted)","aria-hidden":"true"}),a("tasks.title"),(0,T.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,T.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,T.jsx)("div",{style:{flex:1}}),(0,T.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,T.jsx)(yy,{size:13,"aria-hidden":"true"}),a("tasks.settingsTitle")]})]})}function y7({activeProject:a}){let{t:b}=(0,bk.s)(),{tasks:d,projects:e,refetch:f}=yu(),[g,h]=(0,U.useState)(null),[i,j]=(0,U.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 y5})()),[k,l]=(0,U.useState)(!1),[m,n]=(0,U.useState)(null),[o,p]=(0,U.useState)(!1),q=(0,U.useRef)(null),r=(0,U.useRef)({x:0,y:0}),s=(0,U.useRef)(null),t=(0,U.useRef)(null),[u,v]=(0,U.useState)(null),w=(0,U.useRef)(null);w.current=u;let x=(0,U.useRef)(!1),y=(0,U.useRef)(!1),[z,A]=(0,U.useState)(()=>Date.now()),[B,C]=(0,U.useState)(!1),[D,E]=(0,U.useState)(null),[F,G]=(0,U.useState)(null),[H,I]=(0,U.useState)(null),[J,K]=(0,U.useState)(null),[L,M]=(0,U.useState)(!1),[N,O]=(0,U.useState)(null),[P,Q]=(0,U.useState)(!1),[R,S]=(0,U.useState)(null),[V,W]=(0,U.useState)("retry"),[X,Y]=(0,U.useState)(!1),[Z,$]=(0,U.useState)(null),[_,aa]=(0,U.useState)(!1),[ab,ac]=(0,U.useState)(!1),[ae,af]=(0,U.useState)(null),[ag,ah]=(0,U.useState)(!1),ai=(0,U.useMemo)(()=>null==g?d:d.filter(a=>a.projectRoot===g),[d,g]),aj=(0,U.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 yD)d[a].sort((a,b)=>(b.updatedAt??"").localeCompare(a.updatedAt??""));return d})(ai,i.showCanceled,i.showArchived),[ai,i]),ak=(0,U.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]),al=(0,U.useMemo)(()=>d.find(a=>a.id===H)??null,[d,H]),am=(0,U.useMemo)(()=>d.find(a=>a.id===ae)??null,[d,ae]),an=(0,U.useCallback)(async a=>{try{await a()}catch(a){console.error("task action failed",a)}finally{f()}},[f]),ao=(0,U.useCallback)(a=>{null!=a.conversationId&&(af(a.id),ah(!0))},[af,ah]),ap=(0,U.useCallback)(a=>{K(a),M(!0)},[K,M]),aq=(0,U.useCallback)(()=>{E(null),C(!0)},[E,C]),ar=(0,U.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)`)},[]),as=a=>{let b=a.currentTarget.getBoundingClientRect();q.current={dx:a.clientX-b.left,dy:a.clientY-b.top,width:b.width}},at=(0,U.useCallback)(a=>{if(n(null),p(!1),a){x.current=!1;return}requestAnimationFrame(()=>{x.current=!1})},[n,p]);(0,U.useCallback)(()=>{y.current=!0,v(null),at(!0)},[at,v]);let au=(0,U.useCallback)((a,b,c)=>{if(y.current){at(!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(at(!1),h){v(null);let b=d.find(b=>b.id===a.id);b?.status==="todo"&&null!=g&&an(()=>(0,s_.oQ)(a.id,a.projectRoot,"start"));return}let i=w.current;null!=g&&null!=i&&(async()=>{try{await (0,s_.Lu)(g,i)}catch(a){console.error("reorder failed",a)}await f(),v(null)})()},[an,at,g,f,d]),av=(0,U.useCallback)(()=>{an(async()=>{let a=await (0,s_.a5)(g);a>0&&console.log(`started ${a} tasks`)})},[an,g]),aw=(0,U.useCallback)(()=>{let a=aj.done.filter(a=>null==a.archivedAt);0!==a.length&&an(()=>Promise.all(a.map(a=>(0,s_.et)(a.id,a.projectRoot,!0))))},[an,aj.done]),ax=+(i.showCanceled!==y5.showCanceled)+ +(i.showArchived!==y5.showArchived),ay=d.length>0,az=(0,U.useMemo)(()=>{let b=new Set(e);return a&&b.add(a),[...b].sort()},[e,a]),aA=(0,U.useMemo)(()=>{let a=new Map;for(let b of az)a.set(b,b.split("/").filter(Boolean).pop()??b);return a},[az]);return(0,T.jsxs)("div",{style:{display:"flex",flexDirection:"column",height:"100%",minHeight:0},children:[ay&&(0,T.jsxs)("div",{style:{display:"flex",flexWrap:"wrap",alignItems:"center",gap:8,padding:"14px 16px 8px"},children:[(0,T.jsxs)("select",{value:g??y4,onChange:a=>h(a.target.value===y4?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,T.jsx)("option",{value:y4,children:b("tasks.allFolders")}),az.map(a=>(0,T.jsx)("option",{value:a,children:aA.get(a)??a},a))]}),(0,T.jsxs)("div",{style:{position:"relative"},children:[(0,T.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,T.jsx)(yA,{size:13,"aria-hidden":"true"}),b("tasks.filter"),ax>0?(0,T.jsx)("span",{style:{borderRadius:999,background:"rgba(37,99,235,0.12)",color:"var(--accent)",padding:"1px 6px",fontSize:10,fontWeight:700},children:ax}):null]}),k&&(0,T.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,T.jsxs)("label",{style:{display:"flex",alignItems:"center",gap:8,padding:"6px 8px",borderRadius:8,cursor:"pointer",fontSize:12},children:[(0,T.jsx)("input",{type:"checkbox",checked:i[a],onChange:b=>j(c=>({...c,[a]:b.target.checked})),style:{accentColor:"var(--accent)"}}),b]},a))})]}),(0,T.jsx)("div",{style:{flex:1}}),(0,T.jsxs)("button",{type:"button",onClick:av,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,T.jsx)(yC,{size:13,"aria-hidden":"true"}),b("tasks.startAll")]}),(0,T.jsxs)("button",{type:"button",onClick:aq,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,T.jsx)(aB,{size:13,weight:"bold","aria-hidden":"true"}),b("tasks.new")]})]}),ay?(0,T.jsx)("div",{style:{flex:1,minHeight:0,overflowX:"auto"},children:(0,T.jsx)("div",{style:{display:"grid",gridTemplateColumns:"repeat(4, minmax(0, 1fr))",gap:16,minWidth:"56rem",height:"100%",padding:"4px 16px 16px"},children:yG.map(a=>{let c="todo"===a?ak:aj[a],d=yH[a],e=a=>(0,T.jsx)(yQ,{task:a,folderName:a.projectRoot?aA.get(a.projectRoot)??null:null,now:z,onOpen:()=>{x.current||I(a.id)},onStart:()=>void an(()=>(0,s_.oQ)(a.id,a.projectRoot,"start")),onCancel:()=>{O(a),Q(!0)},onRetry:()=>{S(a),W("retry"),Y(!0)},onRequeue:()=>{S(a),W("requeue"),Y(!0)},onViewSession:()=>ao(a),onMerge:()=>{yE(a)?($(a),aa(!0)):ap(a)},onArchive:()=>void an(()=>(0,s_.et)(a.id,a.projectRoot,null==a.archivedAt)),onEdit:()=>{E(a),C(!0)}},a.id);return(0,T.jsxs)("div",{ref:"inProgress"===a?t:void 0,style:{display:"flex",flexDirection:"column",minHeight:0,gap:8},children:[(0,T.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8,height:24,flexShrink:0,padding:"0 2px"},children:[(0,T.jsx)("span",{style:{width:3,height:14,borderRadius:999,background:d.marker,flexShrink:0},"aria-hidden":"true"}),(0,T.jsx)("h2",{style:{fontSize:12,fontWeight:600,color:"var(--text)"},children:b(`tasks.col${a[0].toUpperCase()}${a.slice(1)}`)}),(0,T.jsx)("span",{style:{borderRadius:999,background:"var(--bg-hover)",padding:"1px 8px",fontSize:10,fontWeight:600,color:"var(--text-muted)"},children:c.length}),(0,T.jsx)("div",{style:{flex:1}}),"done"===a&&aj.done.some(a=>null==a.archivedAt)?(0,T.jsx)("button",{type:"button",onClick:aw,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,T.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,T.jsx)("p",{style:{fontSize:12,color:"var(--text-muted)"},children:b(`tasks.emptyCol${a[0].toUpperCase()}${a.slice(1)}`)})}):(0,T.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,T.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:16,paddingBottom:4},children:c.map(b=>"todo"===a?(0,T.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},ar(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=>au(b,a.clientX,a.clientY),onPointerDown:as,style:{cursor:"grab",opacity:m?.task.id===b.id?.4:1},children:e(b)},b.id):(0,T.jsx)("div",{children:e(b)},b.id))})})]},a)})})}):(0,T.jsxs)("div",{style:{flex:1,display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",gap:12,padding:32,textAlign:"center"},children:[(0,T.jsx)(cd,{size:40,color:"var(--text-dim)",opacity:.4,"aria-hidden":"true"}),(0,T.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:4},children:[(0,T.jsx)("p",{style:{fontSize:14,fontWeight:500,color:"var(--text)"},children:b("tasks.empty")}),(0,T.jsx)("p",{style:{maxWidth:320,fontSize:12,color:"var(--text-muted)",lineHeight:1.6},children:b("tasks.emptyHint")})]}),(0,T.jsxs)("button",{type:"button",onClick:aq,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,T.jsx)(aB,{size:13,weight:"bold","aria-hidden":"true"}),b("tasks.new")]})]}),(0,T.jsx)(y$,{open:B,onOpenChange:C,task:D,defaultProject:F?.projectRoot??g??a??null,projects:az,prefillTitle:F?F.text.slice(0,80):void 0,prefillPrompt:F?F.text:void 0,onSubmit:async(a,b,d)=>{await an(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,T.jsx)(yX,{open:null!=H,onOpenChange:a=>{a||I(null)},task:al,onViewSession:ao,onMerge:ap,onEdit:a=>{E(a),C(!0)},onCancel:a=>{O(a),Q(!0)},onRetry:a=>{S(a),W("retry"),Y(!0)},onRequeue:a=>{S(a),W("requeue"),Y(!0)},onComplete:a=>{$(a),aa(!0)}}),(0,T.jsx)(y_,{open:L,onOpenChange:M,task:J}),(0,T.jsx)(yR,{open:P,onOpenChange:Q,task:N}),(0,T.jsx)(y0,{open:X,onOpenChange:Y,task:R,kind:V}),(0,T.jsx)(yS,{open:_,onOpenChange:aa,task:Z}),(0,T.jsx)(y3,{open:ag&&null!=am,onOpenChange:ah,task:am}),(0,T.jsx)(y2,{open:ab,onOpenChange:ac,projectRoot:g}),m?(0,ad.createPortal)((0,T.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,T.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,T.jsxs)("div",{style:{display:"flex",alignItems:"flex-start",justifyContent:"space-between",gap:8},children:[(0,T.jsx)("span",{style:{minWidth:0,overflowWrap:"break-word",fontSize:13,fontWeight:500},children:m.task.title}),(0,T.jsx)(yO,{task:m.task})]}),o?(0,T.jsxs)("span",{style:{display:"inline-flex",alignItems:"center",gap:4,fontSize:11,fontWeight:600,color:"var(--accent)"},children:[(0,T.jsx)(yC,{size:11,weight:"bold","aria-hidden":"true"}),b("tasks.dropToStart")]}):null]})}),document.body):null]})}let y8=new Map([["bold",U.createElement(U.Fragment,null,U.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",U.createElement(U.Fragment,null,U.createElement("path",{d:"M88,48V208H40a8,8,0,0,1-8-8V56a8,8,0,0,1,8-8Z",opacity:"0.2"}),U.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",U.createElement(U.Fragment,null,U.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",U.createElement(U.Fragment,null,U.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",U.createElement(U.Fragment,null,U.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",U.createElement(U.Fragment,null,U.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"}))]]),y9=U.forwardRef((a,b)=>U.createElement(Y,{ref:b,...a,weights:y8}));y9.displayName="SidebarSimpleIcon";let za=new Map([["bold",U.createElement(U.Fragment,null,U.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",U.createElement(U.Fragment,null,U.createElement("path",{d:"M216,128a88,88,0,1,1-88-88A88,88,0,0,1,216,128Z",opacity:"0.2"}),U.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",U.createElement(U.Fragment,null,U.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",U.createElement(U.Fragment,null,U.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",U.createElement(U.Fragment,null,U.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",U.createElement(U.Fragment,null,U.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"}))]]),zb=U.forwardRef((a,b)=>U.createElement(Y,{ref:b,...a,weights:za}));zb.displayName="ArrowsClockwiseIcon";let zc=null;async function zd(a){let b=await (!zc&&(zc=c.e(1399).then(c.bind(c,91399)).then(a=>a.getCurrentWindow())),zc);await a(b)}async function ze(){await zd(a=>a.minimize())}async function zf(){await zd(a=>a.toggleMaximize())}async function zg(){await zd(a=>a.startDragging())}async function zh(){await zd(a=>a.close())}function zi(){let[a,b]=(0,U.useState)(null);return{platform:a,isDesktop:null!==a,isMacOS:"macos"===a,dragRegionProps:a?{"data-tauri-drag-region":!0}:{}}}let zj={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 zk({onRefreshSession:a}={}){let{t:b}=(0,bk.s)(),{isDark:c}=b0(),{isDesktop:d,isMacOS:e}=zi(),[f,g]=(0,U.useState)(!1),[h,i]=(0,U.useState)(null),[j,k]=(0,U.useState)(null),l=(0,U.useRef)(null),m=(0,U.useRef)(null),n=(0,U.useCallback)(a=>{a().catch(a=>{console.error("[DynamicIsland] window command failed:",a),i(String(a)),window.setTimeout(()=>i(null),4e3)})},[]),o=(0,U.useCallback)(()=>{window.location.reload()},[]),[p,q]=(0,U.useState)(0),r=(0,U.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,U.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,U.useCallback)(a=>{m.current=null;try{a.currentTarget.releasePointerCapture(a.pointerId)}catch{}},[]),u=(0,U.useCallback)(()=>zf().then(()=>{g(a=>!a)}),[]),v=(0,U.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,T.jsxs)(T.Fragment,{children:[(0,T.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,T.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,T.jsxs)("svg",{width:"6",height:"14",viewBox:"0 0 6 14",fill:"currentColor","aria-hidden":"true",children:[(0,T.jsx)("circle",{cx:"1.5",cy:"2",r:"1.2"}),(0,T.jsx)("circle",{cx:"4.5",cy:"2",r:"1.2"}),(0,T.jsx)("circle",{cx:"1.5",cy:"7",r:"1.2"}),(0,T.jsx)("circle",{cx:"4.5",cy:"7",r:"1.2"}),(0,T.jsx)("circle",{cx:"1.5",cy:"12",r:"1.2"}),(0,T.jsx)("circle",{cx:"4.5",cy:"12",r:"1.2"})]})}),a&&(0,T.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:zj,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,T.jsx)(zb,{size:13,"aria-hidden":"true"})}),(0,T.jsx)("button",{type:"button","data-island-btn":!0,"aria-label":b("desktop.reloadPage"),title:b("desktop.reloadPage"),onClick:o,style:zj,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,T.jsx)(aF,{size:13,"aria-hidden":"true"})}),(0,T.jsx)("span",{"aria-hidden":"true",style:{width:1,height:18,flexShrink:0,background:"var(--border)",margin:"0 3px"}}),(0,T.jsx)("button",{type:"button","data-island-btn":!0,"aria-label":b("desktop.minimize"),title:b("desktop.minimize"),onClick:()=>n(ze),style:zj,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,T.jsx)("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",stroke:"currentColor",strokeWidth:"1",children:(0,T.jsx)("line",{x1:"1",y1:"5",x2:"9",y2:"5"})})}),(0,T.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:zj,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,T.jsxs)("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",stroke:"currentColor",strokeWidth:"1",children:[(0,T.jsx)("rect",{x:"2",y:"0.5",width:"7.5",height:"7.5"}),(0,T.jsx)("path",{d:"M0.5 2.5 V9.5 H7.5"})]}):(0,T.jsx)("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",stroke:"currentColor",strokeWidth:"1",children:(0,T.jsx)("rect",{x:"0.5",y:"0.5",width:"9",height:"9"})})}),(0,T.jsx)("button",{type:"button","data-island-btn":!0,"aria-label":b("desktop.close"),title:b("desktop.close"),onClick:()=>n(zh),style:zj,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,T.jsxs)("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",stroke:"currentColor",strokeWidth:"1",children:[(0,T.jsx)("line",{x1:"0",y1:"0",x2:"10",y2:"10"}),(0,T.jsx)("line",{x1:"10",y1:"0",x2:"0",y2:"10"})]})})]}),h&&(0,T.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 zl(a=null){if(a)try{a.setItem("pi-web:desktop-server-hint-seen","1")}catch{}}function zm(){let{t:a}=(0,bk.s)(),[b,c]=(0,U.useState)(!1),d=(0,U.useCallback)(()=>{zl(),c(!1)},[]),e=(0,U.useCallback)(()=>{zl(),c(!1),window.location.href="piweb-switch://manage"},[]);return b?(0,T.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,T.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,T.jsxs)("div",{style:{display:"flex",alignItems:"flex-start",gap:10},children:[(0,T.jsx)(aV,{size:18,color:"var(--accent)",style:{flexShrink:0,marginTop:1}}),(0,T.jsxs)("div",{style:{minWidth:0,flex:1},children:[(0,T.jsx)("div",{style:{fontSize:13.5,fontWeight:600,lineHeight:1.45},children:a("desktop.serverHintTitle")}),(0,T.jsx)("p",{style:{margin:"6px 0 0",fontSize:12.5,lineHeight:1.65,color:"var(--text-muted)"},children:a("desktop.serverHintBody")})]}),(0,T.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,T.jsx)(ah,{size:14,"aria-hidden":"true"})})]}),(0,T.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 zn({isDark:a,toggleTheme:b,translate:c}){let[d,e]=(0,U.useState)(!1),f=c(d?a?"desktop.switchToLight":"desktop.switchToDark":"desktop.switchToLight");return(0,T.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,T.jsx)(bF,{size:16,"aria-hidden":"true"}):(0,T.jsx)(bD,{size:16,"aria-hidden":"true"}):(0,T.jsx)(bF,{size:16,"aria-hidden":"true"})})}function zo({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:L}=(0,bk.s)(),[M,N]=(0,U.useState)(!1),[O,P]=(0,U.useState)(!1);return(0,T.jsxs)(T.Fragment,{children:[O&&(0,T.jsx)(zm,{}),(0,T.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:"transparent",position:"relative",zIndex:600},children:[(0,T.jsxs)("div",{style:{display:"flex",alignItems:"center",minWidth:0,height:"100%",flex:"0 1 auto",position:"relative",zIndex:1},children:[(0,T.jsx)("button",{className:"app-no-drag",onClick:c,title:b?L("desktop.hideSidebar"):L("desktop.showSidebar"),"aria-label":b?L("desktop.hideSidebar"):L("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,T.jsx)(y9,{size:16,"aria-hidden":"true"}):(0,T.jsx)(ax,{size:16,"aria-hidden":"true"})}),(0,T.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,T.jsxs)("div",{className:"app-title-drag",style:{position:"relative",flex:"1 1 auto",minWidth:0,height:"100%",display:"flex",alignItems:"center",justifyContent:"flex-start",padding:f?"0 8px 0 4px":"0 4px 0 12px",overflow:"visible",userSelect:"none"},children:[v&&(0,T.jsx)("button",{type:"button",className:"app-no-drag",onClick:()=>{f&&N(!0)},style:{display:"block",flex:"0 1 auto",minWidth:0,maxWidth:f?"100%":"min(46vw, 560px)",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,T.jsx)("div",{className:"app-no-drag",ref:x,style:{flexShrink:0,display:"flex",alignItems:"center",marginLeft:4,position:"relative",zIndex:2}})]}),(0,T.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,T.jsx)("button",{className:"app-no-drag",onClick:i,title:g?L("desktop.hideTaskBoard"):L("desktop.showTaskBoard"),"aria-label":g?L("desktop.hideTaskBoard"):L("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,T.jsx)(cd,{size:16,"aria-hidden":"true"})}),(0,T.jsx)("button",{className:"app-no-drag",onClick:s,title:r?L("desktop.hideFilePanel"):L("desktop.showFilePanel"),"aria-label":r?L("desktop.hideFilePanel"):L("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,T.jsx)(y9,{size:16,"aria-hidden":"true",style:{transform:"scaleX(-1)"}})}),(0,T.jsx)(zn,{isDark:d,toggleTheme:e,translate:L}),O&&(0,T.jsx)("button",{className:"app-no-drag",type:"button",onClick:()=>{window.location.href="piweb-switch://manage"},title:L("desktop.serverSwitch"),"aria-label":L("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,T.jsx)(aV,{size:16,"aria-hidden":"true"})}),!O&&!f&&(0,T.jsx)("button",{className:"app-no-drag",type:"button",onClick:t,title:L("desktop.refreshSession"),"aria-label":L("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,T.jsx)(aF,{size:16,"aria-hidden":"true"})}),(0,T.jsx)("button",{className:"app-no-drag",type:"button",onClick:u,title:L("desktop.settings"),"aria-label":L("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,T.jsx)(yy,{size:16,"aria-hidden":"true"})})]})]}),(0,T.jsx)(zk,{onRefreshSession:t}),k&&l&&(0,T.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,T.jsx)("div",{style:{background:"var(--bg-panel)",borderBottom:"1px solid var(--border)"},children:j?(0,T.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,T.jsx)("div",{style:{padding:"10px 16px",fontSize:12,color:"var(--text-muted)",fontStyle:"italic"},children:"System prompt is empty (tools are disabled)"}):(0,T.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,T.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:L("desktop.name"),value:m.sessionName,copyField:null}]:[],{label:L("desktop.sessionInfoFile"),value:m.sessionFile??L("desktop.sessionInfoInMemory"),copyField:"file"},{label:L("desktop.sessionInfoId"),value:m.sessionId,copyField:"id"}],B=[[L("desktop.sessionInfoUser"),m.userMessages.toLocaleString()],[L("desktop.sessionInfoAssistant"),m.assistantMessages.toLocaleString()],[L("desktop.sessionInfoToolCalls"),m.toolCalls.toLocaleString()],[L("desktop.sessionInfoToolResults"),m.toolResults.toLocaleString()],[L("desktop.sessionInfoTotal"),m.totalMessages.toLocaleString()]],C=[[L("desktop.sessionInfoInput"),m.tokens.input.toLocaleString()],[L("desktop.sessionInfoOutput"),m.tokens.output.toLocaleString()],...m.tokens.cacheRead>0?[[L("desktop.sessionInfoCacheRead"),m.tokens.cacheRead.toLocaleString()]]:[],...m.tokens.cacheWrite>0?[[L("desktop.sessionInfoCacheWrite"),m.tokens.cacheWrite.toLocaleString()]]:[],[L("desktop.sessionInfoTotal"),m.tokens.total.toLocaleString()]],D=o??m.contextUsage,F=[...m.cost>0?[[L("desktop.sessionInfoCost"),`$${m.cost.toFixed(4)}`]]:[],...D?.contextWindow?[[L("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,T.jsxs)("div",{style:{minWidth:0},children:[(0,T.jsx)("div",{style:{fontSize:11,fontWeight:700,color:"var(--text)",marginBottom:6},children:a}),(0,T.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,T.jsxs)("div",{style:{display:"contents"},children:[(0,T.jsx)("div",{style:{color:"var(--text-dim)",whiteSpace:"nowrap"},children:b}),(0,T.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,T.jsx)("button",{type:"button",title:c?L("desktop.copied"):L({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,T.jsx)(al,{size:12,"aria-hidden":"true"}):(0,T.jsx)(h4,{size:12,"aria-hidden":"true"})})},I=(0,T.jsxs)("div",{style:{minWidth:0},children:[(0,T.jsx)("div",{style:{fontSize:11,fontWeight:700,color:"var(--text)",marginBottom:6},children:L("desktop.sessionInfoTitle")}),(0,T.jsx)("div",{style:{display:"grid",gridTemplateColumns:"auto minmax(0, 1fr) auto",columnGap:12,rowGap:8,alignItems:"start"},children:A.map(a=>(0,T.jsxs)("div",{style:{display:"contents"},children:[(0,T.jsx)("div",{style:{color:"var(--text-dim)",whiteSpace:"nowrap"},children:a.label}),(0,T.jsx)("div",{style:{color:"var(--text-muted)",minWidth:0,overflowWrap:"anywhere",wordBreak:"break-word",whiteSpace:"normal"},children:a.value}),(0,T.jsx)("div",{children:a.copyField?H(a.copyField,a.value):null})]},`session-info:${a.label}`))})]}),K=(J=[...n?[{label:L("desktop.projectDir"),value:n.projectRoot??n.cwd,copyField:"projectDir"}]:[],...n?.branch?[{label:L("desktop.gitBranch"),value:n.branch,copyField:"gitBranch"}]:[],...n?.isWorktree?[{label:L("desktop.gitWorktree"),value:n.cwd,copyField:"gitWorktree"}]:[]]).length>0?(0,T.jsxs)("div",{style:{minWidth:0},children:[(0,T.jsx)("div",{style:{fontSize:11,fontWeight:700,color:"var(--text)",marginBottom:6},children:L("desktop.projectSection")}),(0,T.jsx)("div",{style:{display:"grid",gridTemplateColumns:"auto minmax(0, 1fr) auto",columnGap:12,rowGap:8,alignItems:"start"},children:J.map(a=>(0,T.jsxs)("div",{style:{display:"contents"},children:[(0,T.jsx)("div",{style:{color:"var(--text-dim)",whiteSpace:"nowrap"},children:a.label}),(0,T.jsx)("div",{style:{color:"var(--text-muted)",minWidth:0,overflowWrap:"anywhere",wordBreak:"break-word",whiteSpace:"normal"},children:a.value}),(0,T.jsx)("div",{children:a.copyField?H(a.copyField,a.value):null})]},`project-info:${a.label}`))})]}):null,(0,T.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,T.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:f?16:20,minWidth:0},children:[I,K]}),G(L("desktop.sessionInfoMessages"),B),G(L("desktop.sessionInfoTokens"),[...C,...F],"right",!0)]})):(0,T.jsx)("div",{style:{fontSize:12,color:"var(--text-muted)",fontStyle:"italic"},children:L("desktop.sendMessageForSessionInfo")})})]}),M&&v&&(0,T.jsx)("div",{className:"app-no-drag",onClick:()=>N(!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,T.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,T.jsx)("button",{type:"button","aria-label":L("i18n.close"),title:L("i18n.close"),onClick:a=>{a.stopPropagation(),N(!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 zp({status:a}){return"running"===a||"starting"===a?(0,T.jsxs)("svg",{className:"animate-spin",width:"13",height:"13",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",children:[(0,T.jsx)("circle",{cx:"12",cy:"12",r:"9",stroke:"currentColor",strokeWidth:"2",opacity:"0.25"}),(0,T.jsx)("path",{d:"M21 12a9 9 0 0 0-9-9",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"})]}):"queued"===a?(0,T.jsxs)("svg",{width:"13",height:"13",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round","aria-hidden":"true",children:[(0,T.jsx)("circle",{cx:"12",cy:"12",r:"9"}),(0,T.jsx)("path",{d:"M12 7v5l3 2"})]}):"failed"===a?(0,T.jsxs)("svg",{width:"13",height:"13",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round","aria-hidden":"true",children:[(0,T.jsx)("circle",{cx:"12",cy:"12",r:"9"}),(0,T.jsx)("path",{d:"m9 9 6 6M15 9l-6 6"})]}):"aborted"===a||"interrupted"===a?(0,T.jsxs)("svg",{width:"13",height:"13",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round","aria-hidden":"true",children:[(0,T.jsx)("circle",{cx:"12",cy:"12",r:"9"}),(0,T.jsx)("path",{d:"M9 9h6v6H9z"})]}):(0,T.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,T.jsx)("circle",{cx:"12",cy:"12",r:"9"}),(0,T.jsx)("path",{d:"m8 12 3 3 5-6"})]})}function zq({session:a,main:b,selected:c,running:d,onSelect:e}){let{locale:f,t:g}=(0,bk.s)(),h=a.relation?.kind==="subagent"?a.relation:null,i=d?"running":h?.status??"completed",j=b?g("agentSwitcher.main"):h?.description||fy(a),k=b?fy(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,T.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,T.jsx)("span",{style:{width:28,height:28,display:"grid",placeItems:"center",color:b?"var(--text-muted)":"var(--accent)"},children:b?(0,T.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,T.jsx)("circle",{cx:"12",cy:"8",r:"4"}),(0,T.jsx)("path",{d:"M4 21a8 8 0 0 1 16 0"})]}):(0,T.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,T.jsx)("rect",{x:"5",y:"7",width:"14",height:"11",rx:"2"}),(0,T.jsx)("path",{d:"M9 11h.01M15 11h.01M9 15h6M12 7V4M10 4h4"})]})}),(0,T.jsxs)("span",{style:{minWidth:0},children:[(0,T.jsx)("span",{style:{display:"block",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",fontSize:12,fontWeight:c?600:500},title:j,children:j}),(0,T.jsx)("span",{style:{display:"block",marginTop:2,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",color:"var(--text-dim)",fontSize:11},title:k,children:k})]}),(0,T.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,T.jsxs)(T.Fragment,{children:[(0,T.jsx)(zp,{status:i}),(0,T.jsx)("span",{children:g(`agentSwitcher.status.${i}`)})]})})]})}function zr({rootSession:a,subagents:b,selectedSessionId:c,runningSessionIds:d,onSelectSession:e}){let{t:f}=(0,bk.s)(),[g,h]=(0,U.useState)(""),i=(0,U.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,T.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,T.jsxs)("div",{children:[(0,T.jsxs)("div",{style:{minHeight:44,display:"flex",alignItems:"center",gap:8,padding:"7px 12px",borderBottom:"1px solid var(--border)"},children:[(0,T.jsx)("strong",{style:{fontSize:12,fontWeight:600},children:f("agentSwitcher.title")}),(0,T.jsx)("span",{style:{color:"var(--text-dim)",fontSize:11},children:f("agentSwitcher.count",{count:b.length})}),l>0&&(0,T.jsx)("span",{style:{marginLeft:"auto",color:"var(--accent)",fontSize:11},children:f("agentSwitcher.runningCount",{count:l})})]}),b.length>8&&(0,T.jsx)("div",{style:{padding:8,borderBottom:"1px solid var(--border)"},children:(0,T.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,T.jsxs)("div",{style:{maxHeight:"min(58dvh, 480px)",overflowY:"auto"},children:[(0,T.jsx)(zq,{session:a,main:!0,selected:a.id===c,running:d.has(a.id),onSelect:()=>e(a)}),k.map(a=>(0,T.jsx)(zq,{session:a,selected:a.id===c,running:d.has(a.id),onSelect:()=>e(a)},a.id)),0===k.length&&(0,T.jsx)("div",{style:{padding:"22px 12px",color:"var(--text-dim)",fontSize:12,textAlign:"center"},children:f("agentSwitcher.noMatches")})]})]})})}function zs({loading:a,prompt:b,translate:c}){return(0,T.jsxs)("section",{className:"system-prompt-panel","aria-label":c("system.prompt"),children:[(0,T.jsx)("div",{className:"system-prompt-scroll",children:b?(0,T.jsx)("div",{className:"system-prompt-text",children:b}):(0,T.jsx)("div",{className:"system-prompt-empty",children:c(""===b?"system.empty":a?"system.loading":"system.load")})}),(0,T.jsx)("style",{children:`
198
198
  .system-prompt-panel {
199
199
  display: flex;