import{n as e,o as t}from"./chunk-DR8-3Aex.js";import{n,t as r}from"./figures-gfT9mM8P.js";import{In as i,Ln as a,Rn as o,b as s,t as c,x as l}from"./src-Di342QoJ.js";import{t as u}from"./jsx-runtime-D-D469L8.js";import{Cn as d,cn as f,g as p}from"./state-sIHsFpDu.js";import{B as m,FA as h,FD as g,ID as _,MA as v,R as y,gT as b,hT as x,jD as S,z as C}from"./loadAgentsDir-C_wFhytF.js";import{n as w,t as T}from"./AddWorkspaceDirectory-C7od6sFQ.js";function E({message:e,args:t,onDone:n}){return(0,O.useEffect)(()=>{let e=setTimeout(n,0);return()=>clearTimeout(e)},[n]),(0,k.jsxs)(l,{flexDirection:`column`,children:[(0,k.jsxs)(s,{dimColor:!0,children:[r.pointer,` /add-dir `,t]}),(0,k.jsx)(x,{children:(0,k.jsx)(s,{children:e})})]})}async function D(e,t,n){let r=(n??``).trim(),a=t.getAppState(),o=async(n,r=!1)=>{let a={type:`addDirectories`,directories:[n],destination:r?`localSettings`:`session`},o=S(t.getAppState().toolPermissionContext,a);t.setAppState(e=>({...e,toolPermissionContext:o}));let s=p();s.includes(n)||d([...s,n]),v.refreshConfig();let c;if(r)try{_(a),c=`Added ${i.bold(n)} as a working directory and saved to local settings`}catch(e){c=`Added ${i.bold(n)} as a working directory. Failed to save to local settings: ${e instanceof Error?e.message:`Unknown error`}`}else c=`Added ${i.bold(n)} as a working directory for this session`;e(`${c} ${i.dim(`· /permissions to manage`)}`)};if(!r)return(0,k.jsx)(T,{permissionContext:a.toolPermissionContext,onAddDirectory:o,onCancel:()=>{e(`Did not add a working directory.`)}});let s=await m(r,a.toolPermissionContext);if(s.resultType!==`success`){let t=y(s);return(0,k.jsx)(E,{message:t,args:n??``,onDone:()=>e(t)})}return(0,k.jsx)(T,{directoryPath:s.absolutePath,permissionContext:a.toolPermissionContext,onAddDirectory:o,onCancel:()=>{e(`Did not add ${i.bold(s.absolutePath)} as a working directory.`)}})}var O,k;e((()=>{a(),n(),O=t(o(),1),f(),b(),w(),c(),g(),h(),C(),k=u()}))();export{D as call};