import{TC as F,UC as y,XC as S,bD as o,tm as D,xm as r}from"./cli-0.5.3-jbzr8k4s.mjs";import{XU as z,YU as O,fV as A,gV as l}from"./cli-0.5.3-842pf3t4.mjs";import{f7 as x,g7 as d,i7 as b,j7 as g}from"./cli-0.5.3-t65dek0m.mjs";import{Dfa as c,Nfa as V,Qfa as I,tfa as k,vfa as p,zfa as L}from"./cli-0.5.3-n3cxyxpg.mjs";import{Fma as T,Gma as C}from"./cli-0.5.3-2dk1sk8w.mjs";import{Xma as w}from"./cli-0.5.3-0df3r78b.mjs";import{spawn as G,spawnSync as _}from"child_process";import{basename as R}from"path";function u(q){return!!b(q)}function N(q){let H=R(q.split(" ")[0]??"");return h.find((B)=>H.includes(B))}function m(q,H,B){if(!B)return[H];if(f.has(q))return["-g",`${H}:${B}`];if(q==="subl")return[`${H}:${B}`];return[H]}function Qq(q,H){let B=v();if(!B)return!1;let J=B.split(" "),X=J[0]??B,K=J.slice(1),Q=N(B);if(Q){let W=m(Q,q,H),Z={detached:!0,stdio:"ignore"},M;if(process.platform==="win32"){let U=W.map((E)=>`"${E}"`).join(" ");M=G(`${B} ${U}`,{...Z,shell:!0})}else M=G(X,[...K,...W],Z);return M.on("error",(U)=>V(`editor spawn failed: ${U}`,{level:"error"})),M.unref(),!0}let $=z.get(process.stdout);if(!$)return!1;let Y=H&&P.test(R(X));$.enterAlternateScreen();try{let W={stdio:"inherit"},Z;if(process.platform==="win32"){let M=Y?`+${H} `:"";Z=_(`${B} ${M}"${q}"`,{...W,shell:!0})}else{let M=[...K,...Y?[`+${H}`,q]:[q]];Z=_(X,M,W)}if(Z.error)return V(`editor spawn failed: ${Z.error}`,{level:"error"}),!1;return!0}finally{$.exitAlternateScreen()}}var h,P,f,v;var j=w(()=>{C();O();I();g();h=["code","cursor","windsurf","codium","subl","atom","gedit","notepad++","notepad"],P=/\b(vi|vim|nvim|nano|emacs|pico|micro|helix|hx)\b/,f=new Set(["code","cursor","windsurf","codium"]);v=T(()=>{if(process.env.VISUAL?.trim())return process.env.VISUAL.trim();if(process.env.EDITOR?.trim())return process.env.EDITOR.trim();if(process.platform==="win32")return"start /wait notepad";return["code","vi","nano"].find((H)=>u(H))})});function a(q){return N(q)!==void 0}function i(q){let H=L(),B=z.get(process.stdout);if(!B)throw Error("Ink instance not found - cannot pause rendering");let J=v();if(!J)return{content:null};try{H.statSync(q)}catch{return{content:null}}let X=!a(J);if(X)B.enterAlternateScreen();else B.pause(),B.suspendStdin();try{let K=s[J]??J;return x(`${K} "${q}"`,{stdio:"inherit"}),{content:H.readFileSync(q,{encoding:"utf-8"})}}catch(K){if(typeof K==="object"&&K!==null&&"status"in K&&typeof K.status==="number"){let Q=K.status;if(Q!==0)return{content:null,error:`${D(J)} exited with code ${Q}`}}return{content:null}}finally{if(X)B.exitAlternateScreen();else B.resumeStdin(),B.resume()}}function n(q,H,B){let J=q;for(let[X,K]of Object.entries(B))if(K.type==="text"){let Q=parseInt(X),$=K.content,Y=J.indexOf($);if(Y!==-1){let W=F($),Z=y(Q,W);J=J.slice(0,Y)+Z+J.slice(Y+$.length)}}return J}function Nq(q,H){let B=L(),J=A();try{let X=H?S(q,H):q;k(J,X,{encoding:"utf-8",flush:!0});let K=i(J);if(K.content===null)return K;let Q=K.content;if(Q.endsWith(`
`)&&!Q.endsWith(`

`))Q=Q.slice(0,-1);if(H)Q=n(Q,q,H);return{content:Q}}finally{try{B.unlinkSync(J)}catch{}}}var s;var t=w(()=>{o();O();j();d();c();r();p();l();s={code:"code -w",subl:"subl --wait"}});
export{Qq as Bf,v as Cf,j as Df,i as Ef,Nq as Ff,t as Gf};
