codeplane-linux-arm64-musl 27.4.52 → 27.4.53
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.
- package/bin/codeplane +0 -0
- package/bin/runtime/tui/node-main.js +3 -3
- package/package.json +1 -1
package/bin/codeplane
CHANGED
|
Binary file
|
|
@@ -739,7 +739,7 @@ ${A?A().outerHTML:""}`);return A()}if(L5.completed)L5.completed.add(u);return L5
|
|
|
739
739
|
`)}if(s6.hasName(A,"UICancelledError"))return""}function FrA(A){return qJA(A)}var rd0=k(()=>{dg();_Y()});var Al,VI1;var dVA=k(async()=>{rd0();NaA();await Z0([TA(),gU()]);({use:Al,provider:VI1}=_8({name:"Exit",init:(A)=>{let u=vq(),q,F,G={set:(Q)=>{let g=q;return q=Q,()=>{q=g}},clear:()=>{q=void 0},get:()=>q},w=Object.assign((Q)=>{if(F)return F;return F=(async()=>{if(await A.onBeforeExit?.(),u.setTerminalTitle(""),u.destroy(),HaA(),Q){let j=qrA(Q)??FrA(Q);if(j)process.stderr.write(j+`
|
|
740
740
|
`)}let g=G.get();if(g)process.stdout.write(g+`
|
|
741
741
|
`);await A.onExit?.()})(),F},{message:G});return process.on("SIGHUP",()=>w()),w}}))});var qP,ZI1;var s3A=k(async()=>{await gU();({use:qP,provider:ZI1}=_8({name:"Args",init:(A)=>A}))});var GrA,od0;var sd0=k(()=>{d0();C5();GrA=class GrA extends E.Class("ConsoleState")({consoleManagedProviders:E.mutable(E.Array(E.String)),activeOrgName:E.optional(E.String),switchableOrgCount:E.Number}){static zod=N0(this)};od0=GrA.make({consoleManagedProviders:[],activeOrgName:void 0,switchableOrgCount:0})});import HI1 from"path";var $4,NI1;var gg=k(async()=>{mF();YI1();K6();sd0();await Z0([gz(),o3A(),JQ(),gU(),dVA(),s3A(),Wp(),nr()]);({use:$4,provider:NI1}=_8({name:"Sync",init:()=>{let[A,u]=u4({provider_next:{all:[],catalog:[],default:{},connected:[]},console_state:od0,provider_auth:{},config:{},status:"loading",agent:[],permission:{},question:{},command:[],provider:[],provider_default:{},session:[],session_status:{},session_diff:{},todo:{},message:{},part:{},lsp:[],mcp:{},mcp_resource:{},formatter:[],vcs:void 0}),q=uP(),F=jU(),G=T4(),w=EB(),Q=new Set,g=F.workspace.current();function j(){if(!w.get("session_directory_filter_enabled",!0))return{scope:"project"};if(!F.data.instance.path.worktree||!F.data.instance.path.directory)return{scope:"project"};return{path:HI1.relative(HI1.resolve(F.data.instance.path.worktree),F.data.instance.path.directory).replaceAll("\\","/")}}function K(){return G.client.session.list({start:Date.now()-2592000000,...j()}).then((X)=>(X.data??[]).toSorted((Y,$)=>Y.id.localeCompare($.id)))}q.subscribe((X)=>{switch(X.type){case"server.instance.disposed":O();break;case"permission.replied":{let Y=A.permission[X.properties.sessionID];if(!Y)break;let $=eW.search(Y,X.properties.requestID,(V)=>V.id);if(!$.found)break;u("permission",X.properties.sessionID,T8((V)=>{V.splice($.index,1)}));break}case"permission.asked":{let Y=X.properties,$=A.permission[Y.sessionID];if(!$){u("permission",Y.sessionID,[Y]);break}let V=eW.search($,Y.id,(H)=>H.id);if(V.found){u("permission",Y.sessionID,V.index,V8(Y));break}u("permission",Y.sessionID,T8((H)=>{H.splice(V.index,0,Y)}));break}case"question.replied":case"question.rejected":{let Y=A.question[X.properties.sessionID];if(!Y)break;let $=eW.search(Y,X.properties.requestID,(V)=>V.id);if(!$.found)break;u("question",X.properties.sessionID,T8((V)=>{V.splice($.index,1)}));break}case"question.asked":{let Y=X.properties,$=A.question[Y.sessionID];if(!$){u("question",Y.sessionID,[Y]);break}let V=eW.search($,Y.id,(H)=>H.id);if(V.found){u("question",Y.sessionID,V.index,V8(Y));break}u("question",Y.sessionID,T8((H)=>{H.splice(V.index,0,Y)}));break}case"todo.updated":u("todo",X.properties.sessionID,X.properties.todos);break;case"session.diff":u("session_diff",X.properties.sessionID,X.properties.diff);break;case"session.deleted":{let Y=eW.search(A.session,X.properties.info.id,($)=>$.id);if(Y.found)u("session",T8(($)=>{$.splice(Y.index,1)}));break}case"session.updated":{let Y=eW.search(A.session,X.properties.info.id,($)=>$.id);if(Y.found){u("session",Y.index,V8(X.properties.info));break}u("session",T8(($)=>{$.splice(Y.index,0,X.properties.info)}));break}case"session.status":{u("session_status",X.properties.sessionID,X.properties.status);break}case"message.updated":{let Y=A.message[X.properties.info.sessionID];if(!Y){u("message",X.properties.info.sessionID,[X.properties.info]);break}let $=eW.search(Y,X.properties.info.id,(H)=>H.id);if($.found){u("message",X.properties.info.sessionID,$.index,V8(X.properties.info));break}u("message",X.properties.info.sessionID,T8((H)=>{H.splice($.index,0,X.properties.info)}));let V=A.message[X.properties.info.sessionID];if(V.length>100){let H=V[0];X7(()=>{u("message",X.properties.info.sessionID,T8((Z)=>{Z.shift()})),u("part",T8((Z)=>{delete Z[H.id]}))})}break}case"message.removed":{let Y=A.message[X.properties.sessionID],$=eW.search(Y,X.properties.messageID,(V)=>V.id);if($.found)u("message",X.properties.sessionID,T8((V)=>{V.splice($.index,1)}));break}case"message.part.updated":{let Y=A.part[X.properties.part.messageID];if(!Y){u("part",X.properties.part.messageID,[X.properties.part]);break}let $=eW.search(Y,X.properties.part.id,(V)=>V.id);if($.found){u("part",X.properties.part.messageID,$.index,V8(X.properties.part));break}u("part",X.properties.part.messageID,T8((V)=>{V.splice($.index,0,X.properties.part)}));break}case"message.part.delta":{let Y=A.part[X.properties.messageID];if(!Y)break;let $=eW.search(Y,X.properties.partID,(V)=>V.id);if(!$.found)break;u("part",X.properties.messageID,T8((V)=>{let H=V[$.index],Z=X.properties.field,N=H[Z];H[Z]=(N??"")+X.properties.delta}));break}case"message.part.removed":{let Y=A.part[X.properties.messageID],$=eW.search(Y,X.properties.partID,(V)=>V.id);if($.found)u("part",X.properties.messageID,T8((V)=>{V.splice($.index,1)}));break}case"lsp.updated":{let Y=F.workspace.current();G.client.lsp.status({workspace:Y}).then(($)=>u("lsp",$.data??[]));break}case"vcs.branch.updated":{u("vcs",{branch:X.properties.branch});break}}});let U=Al(),_=qP();async function O(X={}){let Y=X.fatal??!0,$=F.workspace.current();if($!==g)Q.clear(),g=$;let V=F.sync(),H=V.then(()=>K()),Z=G.client.config.providers({workspace:$},{throwOnError:!0}),N=G.client.provider.list({workspace:$},{throwOnError:!0}),B=G.client.experimental.console.get({workspace:$},{throwOnError:!0}).then((x)=>x.data).catch(()=>od0),z=G.client.app.agents({workspace:$},{throwOnError:!0}),M=G.client.config.get({workspace:$},{throwOnError:!0}),L=[Z,N,z,M,V,..._.continue?[H]:[]];await Promise.all(L).then(async()=>{let x=Z.then((f)=>f.data),P=N.then((f)=>f.data),D=B,C=z.then((f)=>f.data??[]),y=M.then((f)=>f.data),S=_.continue?H:void 0;return Promise.all([x,P,D,C,y,...S?[S]:[]]).then((f)=>{let r=f[0],l=f[1],o=f[2],a=f[3],n=f[4],s=f[5];X7(()=>{if(u("provider",V8(r.providers)),u("provider_default",V8(r.default)),u("provider_next",V8(l)),u("console_state",V8(o)),u("agent",V8(a)),u("config",V8(n)),s!==void 0)u("session",V8(s))})})}).then(()=>{if(A.status!=="complete")u("status","partial");Promise.all([..._.continue?[]:[H.then((x)=>u("session",V8(x)))],B.then((x)=>u("console_state",V8(x))),G.client.command.list({workspace:$}).then((x)=>u("command",V8(x.data??[]))),G.client.lsp.status({workspace:$}).then((x)=>u("lsp",V8(x.data??[]))),G.client.mcp.status({workspace:$}).then((x)=>u("mcp",V8(x.data??{}))),G.client.experimental.resource.list({workspace:$}).then((x)=>u("mcp_resource",V8(x.data??{}))),G.client.formatter.status({workspace:$}).then((x)=>u("formatter",V8(x.data??[]))),G.client.session.status({workspace:$}).then((x)=>{u("session_status",V8(x.data??{}))}),G.client.provider.auth({workspace:$}).then((x)=>u("provider_auth",V8(x.data??{}))),G.client.vcs.get({workspace:$}).then((x)=>u("vcs",V8(x.data))),F.workspace.sync()]).then(()=>{u("status","complete")})}).catch(async(x)=>{if(_c0.error("tui bootstrap failed",{error:x instanceof Error?x.message:String(x),name:x instanceof Error?x.name:void 0,stack:x instanceof Error?x.stack:void 0}),Y)await U(x);else throw x})}fu(()=>{O()});let W={data:A,set:u,get status(){return A.status},get ready(){if(process.env.CODEPLANE_FAST_BOOT)return!0;return A.status!=="loading"},get path(){return F.instance.path()},session:{get(X){let Y=eW.search(A.session,X,($)=>$.id);if(Y.found)return A.session[Y.index];return},query(){return j()},async refresh(){let X=await K();u("session",V8(X))},status(X){let Y=W.session.get(X);if(!Y)return"idle";if(Y.time.compacting)return"compacting";let V=(A.message[X]??[]).at(-1);if(!V)return"idle";if(V.role==="user")return"working";return V.time.completed?"idle":"working"},async sync(X){if(Q.has(X))return;let[Y,$,V,H]=await Promise.all([G.client.session.get({sessionID:X},{throwOnError:!0}),G.client.session.messages({sessionID:X,limit:100}),G.client.session.todo({sessionID:X}),G.client.session.diff({sessionID:X})]);u(T8((Z)=>{let N=eW.search(Z.session,X,(B)=>B.id);if(N.found)Z.session[N.index]=Y.data;if(!N.found)Z.session.splice(N.index,0,Y.data);Z.todo[X]=V.data??[],Z.message[X]=$.data.map((B)=>B.info);for(let B of $.data)Z.part[B.info.id]=B.parts;Z.session_diff[X]=H.data??[]})),Q.add(X)}},bootstrap:O};return W}}))});var e3A=T((BI1,wrA)=>{((A,u)=>{if(typeof define==="function"&&define.amd)define([],u);else if(typeof wrA==="object"&&wrA.exports)wrA.exports=u();else A.fuzzysort=u()})(BI1,(A)=>{var u=(b,p)=>{if(!b||!p)return a;var KA=W(b);if(!f(p))p=O(p);var d=KA.bitflags;if((d&p._bitflags)!==d)return a;return Y(KA,p)},q=(b,p,KA)=>{if(!b)return KA?.all?X(p,KA):o;var d=W(b),GA=d.bitflags,OA=d.containsSpace,v=U(KA?.threshold||0),c=KA?.limit||r,uA=0,gA=0,wA=p.length;function h(ZA){if(uA<c)t.add(ZA),++uA;else if(++gA,ZA._score>t.peek()._score)t.replaceTop(ZA)}if(KA?.key){var e=KA.key;for(var qA=0;qA<wA;++qA){var AA=p[qA],FA=S(AA,e);if(!FA)continue;if(!f(FA))FA=O(FA);if((GA&FA._bitflags)!==GA)continue;var WA=Y(d,FA);if(WA===a)continue;if(WA._score<v)continue;WA.obj=AA,h(WA)}}else if(KA?.keys){var NA=KA.keys,PA=NA.length;A:for(var qA=0;qA<wA;++qA){var AA=p[qA];{var DA=0;for(var lA=0;lA<PA;++lA){var e=NA[lA],FA=S(AA,e);if(!FA){C[lA]=n;continue}if(!f(FA))FA=O(FA);C[lA]=FA,DA|=FA._bitflags}if((GA&DA)!==GA)continue}if(OA)for(let eA=0;eA<d.spaceSearches.length;eA++)P[eA]=l;for(var lA=0;lA<PA;++lA){if(FA=C[lA],FA===n){y[lA]=n;continue}if(y[lA]=Y(d,FA,!1,OA),y[lA]===a){y[lA]=n;continue}if(OA)for(let Y0=0;Y0<d.spaceSearches.length;Y0++){if(D[Y0]>-1000){if(P[Y0]>l){var j0=(P[Y0]+D[Y0])/4;if(j0>P[Y0])P[Y0]=j0}}if(D[Y0]>P[Y0])P[Y0]=D[Y0]}}if(OA){for(let eA=0;eA<d.spaceSearches.length;eA++)if(P[eA]===l)continue A}else{var $0=!1;for(let eA=0;eA<PA;eA++)if(y[eA]._score!==l){$0=!0;break}if(!$0)continue}var T0=new g(PA);for(let eA=0;eA<PA;eA++)T0[eA]=y[eA];if(OA){var k0=0;for(let eA=0;eA<d.spaceSearches.length;eA++)k0+=P[eA]}else{var k0=l;for(let Y0=0;Y0<PA;Y0++){var WA=T0[Y0];if(WA._score>-1000){if(k0>l){var j0=(k0+WA._score)/4;if(j0>k0)k0=j0}}if(WA._score>k0)k0=WA._score}}if(T0.obj=AA,T0._score=k0,KA?.scoreFn){if(k0=KA.scoreFn(T0),!k0)continue;k0=U(k0),T0._score=k0}if(k0<v)continue;h(T0)}}else for(var qA=0;qA<wA;++qA){var FA=p[qA];if(!FA)continue;if(!f(FA))FA=O(FA);if((GA&FA._bitflags)!==GA)continue;var WA=Y(d,FA);if(WA===a)continue;if(WA._score<v)continue;h(WA)}if(uA===0)return o;var XA=Array(uA);for(var qA=uA-1;qA>=0;--qA)XA[qA]=t.poll();return XA.total=uA+gA,XA},F=(b,p="<b>",KA="</b>")=>{var d=typeof p==="function"?p:void 0,GA=b.target,OA=GA.length,v=b.indexes,c="",uA=0,gA=0,wA=!1,h=[];for(var e=0;e<OA;++e){var qA=GA[e];if(v[gA]===e){if(++gA,!wA)if(wA=!0,d)h.push(c),c="";else c+=p;if(gA===v.length){if(d)c+=qA,h.push(d(c,uA++)),c="",h.push(GA.substr(e+1));else c+=qA+KA+GA.substr(e+1);break}}else if(wA)if(wA=!1,d)h.push(d(c,uA++)),c="";else c+=KA;c+=qA}return d?h:c},G=(b)=>{if(typeof b==="number")b=""+b;else if(typeof b!=="string")b="";var p=H(b);return j(b,{_targetLower:p._lower,_targetLowerCodes:p.lowerCodes,_bitflags:p.bitflags})},w=()=>{B.clear(),z.clear()};class Q{get["indexes"](){return this._indexes.slice(0,this._indexes.len).sort((b,p)=>b-p)}set["indexes"](b){return this._indexes=b}["highlight"](b,p){return F(this,b,p)}get["score"](){return K(this._score)}set["score"](b){this._score=U(b)}}class g extends Array{get["score"](){return K(this._score)}set["score"](b){this._score=U(b)}}var j=(b,p)=>{let KA=new Q;return KA.target=b,KA.obj=p.obj??a,KA._score=p._score??l,KA._indexes=p._indexes??[],KA._targetLower=p._targetLower??"",KA._targetLowerCodes=p._targetLowerCodes??a,KA._nextBeginningIndexes=p._nextBeginningIndexes??a,KA._bitflags=p._bitflags??0,KA},K=(b)=>{if(b===l)return 0;if(b>1)return b;return Math.E**(((-b+1)**0.04307-1)*-2)},U=(b)=>{if(b===0)return l;if(b>1)return b;return 1-Math.pow(Math.log(b)/-2+1,23.218017181332716)},_=(b)=>{if(typeof b==="number")b=""+b;else if(typeof b!=="string")b="";b=b.trim();var p=H(b),KA=[];if(p.containsSpace){var d=b.split(/\s+/);d=[...new Set(d)];for(var GA=0;GA<d.length;GA++){if(d[GA]==="")continue;var OA=H(d[GA]);KA.push({lowerCodes:OA.lowerCodes,_lower:d[GA].toLowerCase(),containsSpace:!1})}}return{lowerCodes:p.lowerCodes,_lower:p._lower,containsSpace:p.containsSpace,bitflags:p.bitflags,spaceSearches:KA}},O=(b)=>{if(b.length>999)return G(b);var p=B.get(b);if(p!==void 0)return p;return p=G(b),B.set(b,p),p},W=(b)=>{if(b.length>999)return _(b);var p=z.get(b);if(p!==void 0)return p;return p=_(b),z.set(b,p),p},X=(b,p)=>{var KA=[];KA.total=b.length;var d=p?.limit||r;if(p?.key)for(var GA=0;GA<b.length;GA++){var OA=b[GA],v=S(OA,p.key);if(v==a)continue;if(!f(v))v=O(v);var c=j(v.target,{_score:v._score,obj:OA});if(KA.push(c),KA.length>=d)return KA}else if(p?.keys)for(var GA=0;GA<b.length;GA++){var OA=b[GA],uA=new g(p.keys.length);for(var gA=p.keys.length-1;gA>=0;--gA){var v=S(OA,p.keys[gA]);if(!v){uA[gA]=n;continue}if(!f(v))v=O(v);v._score=l,v._indexes.len=0,uA[gA]=v}if(uA.obj=OA,uA._score=l,KA.push(uA),KA.length>=d)return KA}else for(var GA=0;GA<b.length;GA++){var v=b[GA];if(v==a)continue;if(!f(v))v=O(v);if(v._score=l,v._indexes.len=0,KA.push(v),KA.length>=d)return KA}return KA},Y=(b,p,KA=!1,d=!1)=>{if(KA===!1&&b.containsSpace)return $(b,p,d);var{_lower:GA,lowerCodes:OA}=b,v=OA[0],c=p._targetLowerCodes,uA=OA.length,gA=c.length,qA=0,wA=0,h=0;for(;;){var e=v===c[wA];if(e){if(M[h++]=wA,++qA,qA===uA)break;v=OA[qA]}if(++wA,wA>=gA)return a}var qA=0,AA=!1,FA=0,WA=p._nextBeginningIndexes;if(WA===a)WA=p._nextBeginningIndexes=N(p.target);wA=M[0]===0?0:WA[M[0]-1];var NA=0;if(wA!==gA)for(;;)if(wA>=gA){if(qA<=0)break;if(++NA,NA>200)break;--qA;var PA=L[--FA];wA=WA[PA]}else{var e=OA[qA]===c[wA];if(e){if(L[FA++]=wA,++qA,qA===uA){AA=!0;break}++wA}else wA=WA[wA]}var DA=uA<=1?-1:p._targetLower.indexOf(GA,M[0]),lA=!!~DA,j0=!lA?!1:DA===0||p._nextBeginningIndexes[DA-1]===DA;if(lA&&!j0)for(var $0=0;$0<WA.length;$0=WA[$0]){if($0<=DA)continue;for(var T0=0;T0<uA;T0++)if(OA[T0]!==p._targetLowerCodes[$0+T0])break;if(T0===uA){DA=$0,j0=!0;break}}var k0=(eA)=>{var Y0=0,w0=0;for(var Q0=1;Q0<uA;++Q0)if(eA[Q0]-eA[Q0-1]!==1)Y0-=eA[Q0],++w0;var MA=eA[uA-1]-eA[0]-(uA-1);if(Y0-=(12+MA)*w0,eA[0]!==0)Y0-=eA[0]*eA[0]*0.2;if(!AA)Y0*=1000;else{var EA=1;for(var Q0=WA[0];Q0<gA;Q0=WA[Q0])++EA;if(EA>24)Y0*=(EA-24)*10}if(Y0-=(gA-uA)/2,lA)Y0/=1+uA*uA*1;if(j0)Y0/=1+uA*uA*1;return Y0-=(gA-uA)/2,Y0};if(!AA){if(lA)for(var $0=0;$0<uA;++$0)M[$0]=DA+$0;var XA=M,ZA=k0(XA)}else if(j0){for(var $0=0;$0<uA;++$0)M[$0]=DA+$0;var XA=M,ZA=k0(M)}else var XA=L,ZA=k0(L);p._score=ZA;for(var $0=0;$0<uA;++$0)p._indexes[$0]=XA[$0];p._indexes.len=uA;let vA=new Q;return vA.target=p.target,vA._score=p._score,vA._indexes=p._indexes,vA},$=(b,p,KA)=>{var d=new Set,GA=0,OA=a,v=0,c=b.spaceSearches,uA=c.length,gA=0,wA=()=>{for(let j0=gA-1;j0>=0;j0--)p._nextBeginningIndexes[x[j0*2+0]]=x[j0*2+1]},h=!1;for(var lA=0;lA<uA;++lA){D[lA]=l;var e=c[lA];if(OA=Y(e,p),KA){if(OA===a)continue;h=!0}else if(OA===a)return wA(),a;var qA=lA===uA-1;if(!qA){var AA=OA._indexes,FA=!0;for(let $0=0;$0<AA.len-1;$0++)if(AA[$0+1]-AA[$0]!==1){FA=!1;break}if(FA){var WA=AA[AA.len-1]+1,NA=p._nextBeginningIndexes[WA-1];for(let $0=WA-1;$0>=0;$0--){if(NA!==p._nextBeginningIndexes[$0])break;p._nextBeginningIndexes[$0]=WA,x[gA*2+0]=$0,x[gA*2+1]=NA,gA++}}}if(GA+=OA._score/uA,D[lA]=OA._score/uA,OA._indexes[0]<v)GA-=(v-OA._indexes[0])*2;v=OA._indexes[0];for(var PA=0;PA<OA._indexes.len;++PA)d.add(OA._indexes[PA])}if(KA&&!h)return a;wA();var DA=Y(b,p,!0);if(DA!==a&&DA._score>GA){if(KA)for(var lA=0;lA<uA;++lA)D[lA]=DA._score/uA;return DA}if(KA)OA=p;OA._score=GA;var lA=0;for(let j0 of d)OA._indexes[lA++]=j0;return OA._indexes.len=lA,OA},V=(b)=>b.replace(/\p{Script=Latin}+/gu,(p)=>p.normalize("NFD")).replace(/[\u0300-\u036f]/g,""),H=(b)=>{b=V(b);var p=b.length,KA=b.toLowerCase(),d=[],GA=0,OA=!1;for(var v=0;v<p;++v){var c=d[v]=KA.charCodeAt(v);if(c===32){OA=!0;continue}var uA=c>=97&&c<=122?c-97:c>=48&&c<=57?26:c<=127?30:31;GA|=1<<uA}return{lowerCodes:d,bitflags:GA,containsSpace:OA,_lower:KA}},Z=(b)=>{var p=b.length,KA=[],d=0,GA=!1,OA=!1;for(var v=0;v<p;++v){var c=b.charCodeAt(v),uA=c>=65&&c<=90,gA=uA||c>=97&&c<=122||c>=48&&c<=57,wA=uA&&!GA||!OA||!gA;if(GA=uA,OA=gA,wA)KA[d++]=v}return KA},N=(b)=>{b=V(b);var p=b.length,KA=Z(b),d=[],GA=KA[0],OA=0;for(var v=0;v<p;++v)if(GA>v)d[v]=GA;else GA=KA[++OA],d[v]=GA===void 0?p:GA;return d},B=new Map,z=new Map,M=[],L=[],x=[],P=[],D=[],C=[],y=[],S=(b,p)=>{var KA=b[p];if(KA!==void 0)return KA;if(typeof p==="function")return p(b);var d=p;if(!Array.isArray(p))d=p.split(".");var GA=d.length,OA=-1;while(b&&++OA<GA)b=b[d[OA]];return b},f=(b)=>{return typeof b==="object"&&typeof b._bitflags==="number"},r=1/0,l=-r,o=[];o.total=0;var a=null,n=G(""),s=(b)=>{var p=[],KA=0,d={},GA=(OA)=>{for(var v=0,c=p[v],uA=1;uA<KA;){var gA=uA+1;v=uA,gA<KA&&p[gA]._score<p[uA]._score&&(v=gA),p[v-1>>1]=p[v],uA=1+(v<<1)}for(var wA=v-1>>1;v>0&&c._score<p[wA]._score;wA=(v=wA)-1>>1)p[v]=p[wA];p[v]=c};return d.add=(OA)=>{var v=KA;p[KA++]=OA;for(var c=v-1>>1;v>0&&OA._score<p[c]._score;c=(v=c)-1>>1)p[v]=p[c];p[v]=OA},d.poll=(OA)=>{if(KA!==0){var v=p[0];return p[0]=p[--KA],GA(),v}},d.peek=(OA)=>{if(KA!==0)return p[0]},d.replaceTop=(OA)=>{p[0]=OA,GA()},d},t=s();return{single:u,go:q,prepare:G,cleanup:w}})});var c8;var ul=k(()=>{mM0();c8={match:a71,fromParsedKey:r71,toString:o71,parse:s71}});var r7,MI1;var pY=k(async()=>{K6();ul();pw();mF();await Z0([TA(),gU(),qC()]);({use:r7,provider:MI1}=_8({name:"Keybind",init:()=>{let A=oJ(),u=hA(()=>{return lF(A.keybinds??{},XY((K)=>c8.parse(K)))}),[q,F]=u4({leader:!1}),G=vq(),w,Q;function g(K){if(K){if(F("leader",!0),w=G.currentFocusedRenderable,w?.blur(),Q)clearTimeout(Q);Q=setTimeout(()=>{if(!q.leader)return;if(g(!1),!w||w.isDestroyed)return;w.focus()},2000);return}if(!K){if(w&&!G.currentFocusedRenderable)w.focus();F("leader",!1)}}q4(async(K)=>{if(!q.leader&&j.match("leader",K)){g(!0);return}if(q.leader&&K.name)setImmediate(()=>{if(w&&G.currentFocusedRenderable===w)w.focus();g(!1)})});let j={get all(){return u()},get leader(){return q.leader},parse(K){if(K.name==="\x1F")return c8.fromParsedKey({...K,name:"_",ctrl:!0},q.leader);return c8.fromParsedKey(K,q.leader)},match(K,U){let _=u()[K]??c8.parse(K);if(!_.length)return!1;let O=j.parse(U);for(let W of _)if(c8.match(W,O))return!0;return!1},print(K){let U=u()[K]?.at(0)??c8.parse(K).at(0);if(!U)return"";let _=c8.toString(U),O=u().leader?.[0];if(!O)return _;return _.replace("<leader>",c8.toString(O))}};return j}}))});var s4;var aY=k(()=>{s4={titlecase:u91,time:OyA,datetime:vM0,todayTimeOrDateTime:q91,number:F91,duration:G91,truncate:w91,truncateMiddle:Q91,pluralize:g91}});class ed0{speed;constructor(A){this.speed=A}tick(A){return this.speed}reset(){}}function RB(A){if(A?.scroll_acceleration?.enabled)return new dd;if(A?.scroll_speed!==void 0)return new ed0(A.scroll_speed);return new ed0(3)}var ar=k(async()=>{await Bq()});function P3(A){let u=U5(),{theme:q}=r2(),F=oJ(),G=hA(()=>RB(F)),[w,Q]=u4({selected:0,filter:"",input:"keyboard"});H4(eH(()=>A.current,(L)=>{if(L){let x=_().findIndex((P)=>qE(P.value,L));if(x>=0)Q("selected",x)}}));let g,j=hA(()=>{if(A.skipFilter)return A.options.filter((D)=>D.disabled!==!0);let L=w.filter.toLowerCase(),x=lF(A.options,Lk((D)=>D.disabled!==!0));if(!L)return x;return LI1.go(L,x,{keys:["title","category"],scoreFn:(D)=>D[0].score*2+D[1].score}).map((D)=>D.obj)});H4(()=>{j(),Q("input","keyboard")});let K=hA(()=>A.flat&&w.filter.length>0),U=hA(()=>{if(K())return[["",j()]];return lF(j(),hM0((x)=>x.category??""),Op())}),_=hA(()=>{return lF(U(),LJA(([L,x])=>x))}),O=hA(()=>{let L=U().reduce((x,[P],D)=>{if(!P)return x;return x+(D>0?2:1)},0);return _().length+L}),W=m7(),X=hA(()=>Math.min(O(),Math.floor(W().height/2)-6)),Y=hA(()=>_()[w.selected]);H4(eH([()=>w.filter,()=>A.current],([L,x])=>{setTimeout(()=>{if(L.length>0)V(0,!0);else if(x){let P=_().findIndex((D)=>qE(D.value,x));if(P>=0)V(P,!0)}},0)}));function $(L){if(_().length===0)return;let x=w.selected+L;if(x<0)x=_().length-1;if(x>=_().length)x=0;V(x,!0)}function V(L,x=!1){Q("selected",L);let P=Y();if(P)A.onMove?.(P);if(!Z)return;let D=Z.getChildren().find((y)=>{return y.id===JSON.stringify(Y()?.value)});if(!D)return;let C=D.y-Z.y;if(x){let y=Math.floor(Z.height/2);Z.scrollBy(C-y)}else{if(C>=Z.height)Z.scrollBy(C-Z.height+1);if(C<0){if(Z.scrollBy(C),qE(_()[0].value,Y()?.value))Z.scrollTo(0)}}}let H=r7();q4((L)=>{if(Q("input","keyboard"),L.name==="up"||L.ctrl&&L.name==="p")$(-1);if(L.name==="down"||L.ctrl&&L.name==="n")$(1);if(L.name==="pageup")$(-10);if(L.name==="pagedown")$(10);if(L.name==="home")V(0);if(L.name==="end")V(_().length-1);if(L.name==="return"){let x=Y();if(x){if(L.preventDefault(),L.stopPropagation(),x.onSelect)x.onSelect(u);A.onSelect?.(x)}}for(let x of A.keybind??[]){if(x.disabled||!x.keybind)continue;if(c8.match(x.keybind,H.parse(L))){let P=Y();if(P)L.preventDefault(),x.onTrigger(P)}}});let Z,N={get filter(){return w.filter},get filtered(){return j()}};A.ref?.(N);let B=hA(()=>A.keybind?.filter((L)=>!L.disabled&&L.keybind)??[]),z=hA(()=>B().filter((L)=>L.side!=="right")),M=hA(()=>B().filter((L)=>L.side==="right"));return(()=>{var L=QA("box"),x=QA("box"),P=QA("box"),D=QA("text"),C=QA("text"),y=QA("box"),S=QA("input");return UA(L,x),I(L,"gap",1),I(L,"paddingBottom",1),UA(x,P),UA(x,y),I(x,"paddingLeft",4),I(x,"paddingRight",4),UA(P,D),UA(P,C),I(P,"flexDirection","row"),I(P,"justifyContent","space-between"),BA(D,()=>A.title),UA(C,aA("esc")),I(C,"onMouseUp",()=>u.clear()),UA(y,S),I(y,"paddingTop",1),CQ((f)=>{g=f,g.traits={status:"FILTER"},setTimeout(()=>{if(!g)return;if(g.isDestroyed)return;g.focus()},1)},S),I(S,"onInput",(f)=>{X7(()=>{Q("filter",f),A.onFilter?.(f)})}),BA(L,JA(R0,{get when(){return U().length>0},get fallback(){return(()=>{var f=QA("box"),r=QA("text");return UA(f,r),I(f,"paddingLeft",4),I(f,"paddingRight",4),I(f,"paddingTop",1),UA(r,aA("No results found")),yA((l)=>I(r,"fg",q.textMuted,l)),f})()},get children(){var f=QA("scrollbox");return CQ((r)=>Z=r,f),I(f,"paddingLeft",1),I(f,"paddingRight",1),I(f,"scrollbarOptions",{visible:!1}),BA(f,JA(W5,{get each(){return U()},children:([r,l],o)=>[JA(R0,{when:r,get children(){var a=QA("box");return I(a,"paddingLeft",3),BA(a,JA(R0,{get when(){return l[0]?.categoryView},get fallback(){return(()=>{var n=QA("text");return BA(n,r),yA((s)=>{var t=q.accent,b=E6.BOLD;return t!==s.e&&(s.e=I(n,"fg",t,s.e)),b!==s.t&&(s.t=I(n,"attributes",b,s.t)),s},{e:void 0,t:void 0}),n})()},get children(){return l[0]?.categoryView}})),yA((n)=>I(a,"paddingTop",o()>0?1:0,n)),a}}),JA(W5,{each:l,children:(a)=>{let n=hA(()=>qE(a.value,Y()?.value)),s=hA(()=>qE(a.value,A.current));return(()=>{var t=QA("box");return I(t,"flexDirection","row"),I(t,"position","relative"),I(t,"onMouseMove",()=>{Q("input","mouse")}),I(t,"onMouseUp",()=>{a.onSelect?.(u),A.onSelect?.(a)}),I(t,"onMouseOver",()=>{if(w.input!=="mouse")return;let b=_().findIndex((p)=>qE(p.value,a.value));if(b===-1)return;V(b)}),I(t,"onMouseDown",()=>{let b=_().findIndex((p)=>qE(p.value,a.value));if(b===-1)return;V(b)}),I(t,"paddingRight",3),I(t,"gap",1),BA(t,JA(R0,{get when(){return v2(()=>!s())()&&a.margin},get children(){var b=QA("box");return I(b,"position","absolute"),I(b,"left",1),I(b,"flexShrink",0),BA(b,()=>a.margin),b}}),null),BA(t,JA(CT3,{get title(){return a.title},get footer(){return v2(()=>!!K())()?a.category??a.footer:a.footer},get description(){return v2(()=>a.description!==r)()?a.description:void 0},get active(){return n()},get current(){return s()},get gutter(){return a.gutter}}),null),yA((b)=>{var p=JSON.stringify(a.value),KA=n()?a.bg??q.primary:C2.fromInts(0,0,0,0),d=s()||a.gutter?1:3;return p!==b.e&&(b.e=I(t,"id",p,b.e)),KA!==b.t&&(b.t=I(t,"backgroundColor",KA,b.t)),d!==b.a&&(b.a=I(t,"paddingLeft",d,b.a)),b},{e:void 0,t:void 0,a:void 0}),t})()}})]})),yA((r)=>{var l=G(),o=X();return l!==r.e&&(r.e=I(f,"scrollAcceleration",l,r.e)),o!==r.t&&(r.t=I(f,"maxHeight",o,r.t)),r},{e:void 0,t:void 0}),f}}),null),BA(L,JA(R0,{get when(){return B().length},get fallback(){return(()=>{var f=QA("box");return I(f,"flexShrink",0),f})()},get children(){var f=QA("box"),r=QA("box"),l=QA("box");return UA(f,r),UA(f,l),I(f,"paddingRight",2),I(f,"paddingLeft",4),I(f,"flexDirection","row"),I(f,"justifyContent","space-between"),I(f,"flexShrink",0),I(f,"paddingTop",1),I(r,"flexDirection","row"),I(r,"gap",2),BA(r,JA(W5,{get each(){return z()},children:(o)=>(()=>{var a=QA("text"),n=QA("span"),s=QA("b"),t=aA(" "),b=QA("span");return UA(a,n),UA(a,b),UA(n,s),UA(n,t),BA(s,()=>o.title),BA(b,()=>c8.toString(o.keybind)),yA((p)=>{var KA={fg:q.text},d={fg:q.textMuted};return KA!==p.e&&(p.e=I(n,"style",KA,p.e)),d!==p.t&&(p.t=I(b,"style",d,p.t)),p},{e:void 0,t:void 0}),a})()})),I(l,"flexDirection","row"),I(l,"gap",2),BA(l,JA(W5,{get each(){return M()},children:(o)=>(()=>{var a=QA("text"),n=QA("span"),s=QA("b"),t=aA(" "),b=QA("span");return UA(a,n),UA(a,b),UA(n,s),UA(n,t),BA(s,()=>o.title),BA(b,()=>c8.toString(o.keybind)),yA((p)=>{var KA={fg:q.text},d={fg:q.textMuted};return KA!==p.e&&(p.e=I(n,"style",KA,p.e)),d!==p.t&&(p.t=I(b,"style",d,p.t)),p},{e:void 0,t:void 0}),a})()})),f}}),null),yA((f)=>{var r=q.text,l=E6.BOLD,o=q.textMuted,a=q.backgroundPanel,n=q.primary,s=q.textMuted,t=A.placeholder??"Search",b=q.textMuted;return r!==f.e&&(f.e=I(D,"fg",r,f.e)),l!==f.t&&(f.t=I(D,"attributes",l,f.t)),o!==f.a&&(f.a=I(C,"fg",o,f.a)),a!==f.o&&(f.o=I(S,"focusedBackgroundColor",a,f.o)),n!==f.i&&(f.i=I(S,"cursorColor",n,f.i)),s!==f.n&&(f.n=I(S,"focusedTextColor",s,f.n)),t!==f.s&&(f.s=I(S,"placeholder",t,f.s)),b!==f.h&&(f.h=I(S,"placeholderColor",b,f.h)),f},{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0,n:void 0,s:void 0,h:void 0}),L})()}function CT3(A){let{theme:u}=r2(),q=zB(u);return[JA(R0,{get when(){return A.current},get children(){var F=QA("text");return UA(F,aA("\u25CF")),I(F,"flexShrink",0),I(F,"marginRight",0),yA((G)=>I(F,"fg",A.active?q:A.current?u.primary:u.text,G)),F}}),JA(R0,{get when(){return v2(()=>!A.current)()&&A.gutter},get children(){var F=QA("box");return I(F,"flexShrink",0),I(F,"marginRight",0),BA(F,()=>A.gutter?.()),F}}),(()=>{var F=QA("text");return I(F,"flexGrow",1),I(F,"overflow","hidden"),I(F,"wrapMode","none"),I(F,"paddingLeft",3),BA(F,()=>s4.truncate(A.title,61),null),BA(F,JA(R0,{get when(){return A.description},get children(){var G=QA("span"),w=aA(" ");return UA(G,w),BA(G,()=>A.description,null),yA((Q)=>I(G,"style",{fg:A.active?q:u.textMuted},Q)),G}}),null),yA((G)=>{var w=A.active?q:A.current?u.primary:u.text,Q=A.active?E6.BOLD:void 0;return w!==G.e&&(G.e=I(F,"fg",w,G.e)),Q!==G.t&&(G.t=I(F,"attributes",Q,G.t)),G},{e:void 0,t:void 0}),F})(),JA(R0,{get when(){return A.footer},get children(){var F=QA("box"),G=QA("text");return UA(F,G),I(F,"flexShrink",0),BA(G,()=>A.footer),yA((w)=>I(G,"fg",A.active?q:u.textMuted,w)),F}})]}var LI1;var ij=k(async()=>{pw();K6();mF();pw();ul();aY();await Z0([TA(),TA(),TA(),TA(),TA(),TA(),TA(),TA(),TA(),Bq(),Sq(),TA(),w7(),pY(),ar(),qC()]);LI1=A2(e3A(),1)});var An0;var EI1=k(()=>{An0={dots:{interval:80,frames:["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"]},dots2:{interval:80,frames:["\u28FE","\u28FD","\u28FB","\u28BF","\u287F","\u28DF","\u28EF","\u28F7"]},dots3:{interval:80,frames:["\u280B","\u2819","\u281A","\u281E","\u2816","\u2826","\u2834","\u2832","\u2833","\u2813"]},dots4:{interval:80,frames:["\u2804","\u2806","\u2807","\u280B","\u2819","\u2838","\u2830","\u2820","\u2830","\u2838","\u2819","\u280B","\u2807","\u2806"]},dots5:{interval:80,frames:["\u280B","\u2819","\u281A","\u2812","\u2802","\u2802","\u2812","\u2832","\u2834","\u2826","\u2816","\u2812","\u2810","\u2810","\u2812","\u2813","\u280B"]},dots6:{interval:80,frames:["\u2801","\u2809","\u2819","\u281A","\u2812","\u2802","\u2802","\u2812","\u2832","\u2834","\u2824","\u2804","\u2804","\u2824","\u2834","\u2832","\u2812","\u2802","\u2802","\u2812","\u281A","\u2819","\u2809","\u2801"]},dots7:{interval:80,frames:["\u2808","\u2809","\u280B","\u2813","\u2812","\u2810","\u2810","\u2812","\u2816","\u2826","\u2824","\u2820","\u2820","\u2824","\u2826","\u2816","\u2812","\u2810","\u2810","\u2812","\u2813","\u280B","\u2809","\u2808"]},dots8:{interval:80,frames:["\u2801","\u2801","\u2809","\u2819","\u281A","\u2812","\u2802","\u2802","\u2812","\u2832","\u2834","\u2824","\u2804","\u2804","\u2824","\u2820","\u2820","\u2824","\u2826","\u2816","\u2812","\u2810","\u2810","\u2812","\u2813","\u280B","\u2809","\u2808","\u2808"]},dots9:{interval:80,frames:["\u28B9","\u28BA","\u28BC","\u28F8","\u28C7","\u2867","\u2857","\u284F"]},dots10:{interval:80,frames:["\u2884","\u2882","\u2881","\u2841","\u2848","\u2850","\u2860"]},dots11:{interval:100,frames:["\u2801","\u2802","\u2804","\u2840","\u2880","\u2820","\u2810","\u2808"]},dots12:{interval:80,frames:["\u2880\u2800","\u2840\u2800","\u2804\u2800","\u2882\u2800","\u2842\u2800","\u2805\u2800","\u2883\u2800","\u2843\u2800","\u280D\u2800","\u288B\u2800","\u284B\u2800","\u280D\u2801","\u288B\u2801","\u284B\u2801","\u280D\u2809","\u280B\u2809","\u280B\u2809","\u2809\u2819","\u2809\u2819","\u2809\u2829","\u2808\u2899","\u2808\u2859","\u2888\u2829","\u2840\u2899","\u2804\u2859","\u2882\u2829","\u2842\u2898","\u2805\u2858","\u2883\u2828","\u2843\u2890","\u280D\u2850","\u288B\u2820","\u284B\u2880","\u280D\u2841","\u288B\u2801","\u284B\u2801","\u280D\u2809","\u280B\u2809","\u280B\u2809","\u2809\u2819","\u2809\u2819","\u2809\u2829","\u2808\u2899","\u2808\u2859","\u2808\u2829","\u2800\u2899","\u2800\u2859","\u2800\u2829","\u2800\u2898","\u2800\u2858","\u2800\u2828","\u2800\u2890","\u2800\u2850","\u2800\u2820","\u2800\u2880","\u2800\u2840"]},dots13:{interval:80,frames:["\u28FC","\u28F9","\u28BB","\u283F","\u285F","\u28CF","\u28E7","\u28F6"]},dots14:{interval:80,frames:["\u2809\u2809","\u2808\u2819","\u2800\u2839","\u2800\u28B8","\u2800\u28F0","\u2880\u28E0","\u28C0\u28C0","\u28C4\u2840","\u28C6\u2800","\u2847\u2800","\u280F\u2800","\u280B\u2801"]},dots8Bit:{interval:80,frames:["\u2800","\u2801","\u2802","\u2803","\u2804","\u2805","\u2806","\u2807","\u2840","\u2841","\u2842","\u2843","\u2844","\u2845","\u2846","\u2847","\u2808","\u2809","\u280A","\u280B","\u280C","\u280D","\u280E","\u280F","\u2848","\u2849","\u284A","\u284B","\u284C","\u284D","\u284E","\u284F","\u2810","\u2811","\u2812","\u2813","\u2814","\u2815","\u2816","\u2817","\u2850","\u2851","\u2852","\u2853","\u2854","\u2855","\u2856","\u2857","\u2818","\u2819","\u281A","\u281B","\u281C","\u281D","\u281E","\u281F","\u2858","\u2859","\u285A","\u285B","\u285C","\u285D","\u285E","\u285F","\u2820","\u2821","\u2822","\u2823","\u2824","\u2825","\u2826","\u2827","\u2860","\u2861","\u2862","\u2863","\u2864","\u2865","\u2866","\u2867","\u2828","\u2829","\u282A","\u282B","\u282C","\u282D","\u282E","\u282F","\u2868","\u2869","\u286A","\u286B","\u286C","\u286D","\u286E","\u286F","\u2830","\u2831","\u2832","\u2833","\u2834","\u2835","\u2836","\u2837","\u2870","\u2871","\u2872","\u2873","\u2874","\u2875","\u2876","\u2877","\u2838","\u2839","\u283A","\u283B","\u283C","\u283D","\u283E","\u283F","\u2878","\u2879","\u287A","\u287B","\u287C","\u287D","\u287E","\u287F","\u2880","\u2881","\u2882","\u2883","\u2884","\u2885","\u2886","\u2887","\u28C0","\u28C1","\u28C2","\u28C3","\u28C4","\u28C5","\u28C6","\u28C7","\u2888","\u2889","\u288A","\u288B","\u288C","\u288D","\u288E","\u288F","\u28C8","\u28C9","\u28CA","\u28CB","\u28CC","\u28CD","\u28CE","\u28CF","\u2890","\u2891","\u2892","\u2893","\u2894","\u2895","\u2896","\u2897","\u28D0","\u28D1","\u28D2","\u28D3","\u28D4","\u28D5","\u28D6","\u28D7","\u2898","\u2899","\u289A","\u289B","\u289C","\u289D","\u289E","\u289F","\u28D8","\u28D9","\u28DA","\u28DB","\u28DC","\u28DD","\u28DE","\u28DF","\u28A0","\u28A1","\u28A2","\u28A3","\u28A4","\u28A5","\u28A6","\u28A7","\u28E0","\u28E1","\u28E2","\u28E3","\u28E4","\u28E5","\u28E6","\u28E7","\u28A8","\u28A9","\u28AA","\u28AB","\u28AC","\u28AD","\u28AE","\u28AF","\u28E8","\u28E9","\u28EA","\u28EB","\u28EC","\u28ED","\u28EE","\u28EF","\u28B0","\u28B1","\u28B2","\u28B3","\u28B4","\u28B5","\u28B6","\u28B7","\u28F0","\u28F1","\u28F2","\u28F3","\u28F4","\u28F5","\u28F6","\u28F7","\u28B8","\u28B9","\u28BA","\u28BB","\u28BC","\u28BD","\u28BE","\u28BF","\u28F8","\u28F9","\u28FA","\u28FB","\u28FC","\u28FD","\u28FE","\u28FF"]},dotsCircle:{interval:80,frames:["\u288E ","\u280E\u2801","\u280A\u2811","\u2808\u2831"," \u2871","\u2880\u2870","\u2884\u2860","\u2886\u2840"]},sand:{interval:80,frames:["\u2801","\u2802","\u2804","\u2840","\u2848","\u2850","\u2860","\u28C0","\u28C1","\u28C2","\u28C4","\u28CC","\u28D4","\u28E4","\u28E5","\u28E6","\u28EE","\u28F6","\u28F7","\u28FF","\u287F","\u283F","\u289F","\u281F","\u285B","\u281B","\u282B","\u288B","\u280B","\u280D","\u2849","\u2809","\u2811","\u2821","\u2881"]},line:{interval:130,frames:["-","\\","|","/"]},line2:{interval:100,frames:["\u2802","-","\u2013","\u2014","\u2013","-"]},rollingLine:{interval:80,frames:["/ "," - "," \\ "," |"," |"," \\ "," - ","/ "]},pipe:{interval:100,frames:["\u2524","\u2518","\u2534","\u2514","\u251C","\u250C","\u252C","\u2510"]},simpleDots:{interval:400,frames:[". ",".. ","..."," "]},simpleDotsScrolling:{interval:200,frames:[". ",".. ","..."," .."," ."," "]},star:{interval:70,frames:["\u2736","\u2738","\u2739","\u273A","\u2739","\u2737"]},star2:{interval:80,frames:["+","x","*"]},flip:{interval:70,frames:["_","_","_","-","`","`","'","\xB4","-","_","_","_"]},hamburger:{interval:100,frames:["\u2631","\u2632","\u2634"]},growVertical:{interval:120,frames:["\u2581","\u2583","\u2584","\u2585","\u2586","\u2587","\u2586","\u2585","\u2584","\u2583"]},growHorizontal:{interval:120,frames:["\u258F","\u258E","\u258D","\u258C","\u258B","\u258A","\u2589","\u258A","\u258B","\u258C","\u258D","\u258E"]},balloon:{interval:140,frames:[" ",".","o","O","@","*"," "]},balloon2:{interval:120,frames:[".","o","O","\xB0","O","o","."]},noise:{interval:100,frames:["\u2593","\u2592","\u2591"]},bounce:{interval:120,frames:["\u2801","\u2802","\u2804","\u2802"]},boxBounce:{interval:120,frames:["\u2596","\u2598","\u259D","\u2597"]},boxBounce2:{interval:100,frames:["\u258C","\u2580","\u2590","\u2584"]},triangle:{interval:50,frames:["\u25E2","\u25E3","\u25E4","\u25E5"]},binary:{interval:80,frames:["010010","001100","100101","111010","111101","010111","101011","111000","110011","110101"]},arc:{interval:100,frames:["\u25DC","\u25E0","\u25DD","\u25DE","\u25E1","\u25DF"]},circle:{interval:120,frames:["\u25E1","\u2299","\u25E0"]},squareCorners:{interval:180,frames:["\u25F0","\u25F3","\u25F2","\u25F1"]},circleQuarters:{interval:120,frames:["\u25F4","\u25F7","\u25F6","\u25F5"]},circleHalves:{interval:50,frames:["\u25D0","\u25D3","\u25D1","\u25D2"]},squish:{interval:100,frames:["\u256B","\u256A"]},toggle:{interval:250,frames:["\u22B6","\u22B7"]},toggle2:{interval:80,frames:["\u25AB","\u25AA"]},toggle3:{interval:120,frames:["\u25A1","\u25A0"]},toggle4:{interval:100,frames:["\u25A0","\u25A1","\u25AA","\u25AB"]},toggle5:{interval:100,frames:["\u25AE","\u25AF"]},toggle6:{interval:300,frames:["\u101D","\u1040"]},toggle7:{interval:80,frames:["\u29BE","\u29BF"]},toggle8:{interval:100,frames:["\u25CD","\u25CC"]},toggle9:{interval:100,frames:["\u25C9","\u25CE"]},toggle10:{interval:100,frames:["\u3282","\u3280","\u3281"]},toggle11:{interval:50,frames:["\u29C7","\u29C6"]},toggle12:{interval:120,frames:["\u2617","\u2616"]},toggle13:{interval:80,frames:["=","*","-"]},arrow:{interval:100,frames:["\u2190","\u2196","\u2191","\u2197","\u2192","\u2198","\u2193","\u2199"]},arrow2:{interval:80,frames:["\u2B06\uFE0F ","\u2197\uFE0F ","\u27A1\uFE0F ","\u2198\uFE0F ","\u2B07\uFE0F ","\u2199\uFE0F ","\u2B05\uFE0F ","\u2196\uFE0F "]},arrow3:{interval:120,frames:["\u25B9\u25B9\u25B9\u25B9\u25B9","\u25B8\u25B9\u25B9\u25B9\u25B9","\u25B9\u25B8\u25B9\u25B9\u25B9","\u25B9\u25B9\u25B8\u25B9\u25B9","\u25B9\u25B9\u25B9\u25B8\u25B9","\u25B9\u25B9\u25B9\u25B9\u25B8"]},bouncingBar:{interval:80,frames:["[ ]","[= ]","[== ]","[=== ]","[====]","[ ===]","[ ==]","[ =]","[ ]","[ =]","[ ==]","[ ===]","[====]","[=== ]","[== ]","[= ]"]},bouncingBall:{interval:80,frames:["( \u25CF )","( \u25CF )","( \u25CF )","( \u25CF )","( \u25CF)","( \u25CF )","( \u25CF )","( \u25CF )","( \u25CF )","(\u25CF )"]},smiley:{interval:200,frames:["\uD83D\uDE04 ","\uD83D\uDE1D "]},monkey:{interval:300,frames:["\uD83D\uDE48 ","\uD83D\uDE48 ","\uD83D\uDE49 ","\uD83D\uDE4A "]},hearts:{interval:100,frames:["\uD83D\uDC9B ","\uD83D\uDC99 ","\uD83D\uDC9C ","\uD83D\uDC9A ","\uD83D\uDC97 "]},clock:{interval:100,frames:["\uD83D\uDD5B ","\uD83D\uDD50 ","\uD83D\uDD51 ","\uD83D\uDD52 ","\uD83D\uDD53 ","\uD83D\uDD54 ","\uD83D\uDD55 ","\uD83D\uDD56 ","\uD83D\uDD57 ","\uD83D\uDD58 ","\uD83D\uDD59 ","\uD83D\uDD5A "]},earth:{interval:180,frames:["\uD83C\uDF0D ","\uD83C\uDF0E ","\uD83C\uDF0F "]},material:{interval:17,frames:["\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581","\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588","\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588","\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588","\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581"]},moon:{interval:80,frames:["\uD83C\uDF11 ","\uD83C\uDF12 ","\uD83C\uDF13 ","\uD83C\uDF14 ","\uD83C\uDF15 ","\uD83C\uDF16 ","\uD83C\uDF17 ","\uD83C\uDF18 "]},runner:{interval:140,frames:["\uD83D\uDEB6 ","\uD83C\uDFC3 "]},pong:{interval:80,frames:["\u2590\u2802 \u258C","\u2590\u2808 \u258C","\u2590 \u2802 \u258C","\u2590 \u2820 \u258C","\u2590 \u2840 \u258C","\u2590 \u2820 \u258C","\u2590 \u2802 \u258C","\u2590 \u2808 \u258C","\u2590 \u2802 \u258C","\u2590 \u2820 \u258C","\u2590 \u2840 \u258C","\u2590 \u2820 \u258C","\u2590 \u2802 \u258C","\u2590 \u2808 \u258C","\u2590 \u2802\u258C","\u2590 \u2820\u258C","\u2590 \u2840\u258C","\u2590 \u2820 \u258C","\u2590 \u2802 \u258C","\u2590 \u2808 \u258C","\u2590 \u2802 \u258C","\u2590 \u2820 \u258C","\u2590 \u2840 \u258C","\u2590 \u2820 \u258C","\u2590 \u2802 \u258C","\u2590 \u2808 \u258C","\u2590 \u2802 \u258C","\u2590 \u2820 \u258C","\u2590 \u2840 \u258C","\u2590\u2820 \u258C"]},shark:{interval:120,frames:["\u2590|\\____________\u258C","\u2590_|\\___________\u258C","\u2590__|\\__________\u258C","\u2590___|\\_________\u258C","\u2590____|\\________\u258C","\u2590_____|\\_______\u258C","\u2590______|\\______\u258C","\u2590_______|\\_____\u258C","\u2590________|\\____\u258C","\u2590_________|\\___\u258C","\u2590__________|\\__\u258C","\u2590___________|\\_\u258C","\u2590____________|\\\u258C","\u2590____________/|\u258C","\u2590___________/|_\u258C","\u2590__________/|__\u258C","\u2590_________/|___\u258C","\u2590________/|____\u258C","\u2590_______/|_____\u258C","\u2590______/|______\u258C","\u2590_____/|_______\u258C","\u2590____/|________\u258C","\u2590___/|_________\u258C","\u2590__/|__________\u258C","\u2590_/|___________\u258C","\u2590/|____________\u258C"]},dqpb:{interval:100,frames:["d","q","p","b"]},weather:{interval:100,frames:["\u2600\uFE0F ","\u2600\uFE0F ","\u2600\uFE0F ","\uD83C\uDF24 ","\u26C5\uFE0F ","\uD83C\uDF25 ","\u2601\uFE0F ","\uD83C\uDF27 ","\uD83C\uDF28 ","\uD83C\uDF27 ","\uD83C\uDF28 ","\uD83C\uDF27 ","\uD83C\uDF28 ","\u26C8 ","\uD83C\uDF28 ","\uD83C\uDF27 ","\uD83C\uDF28 ","\u2601\uFE0F ","\uD83C\uDF25 ","\u26C5\uFE0F ","\uD83C\uDF24 ","\u2600\uFE0F ","\u2600\uFE0F "]},christmas:{interval:400,frames:["\uD83C\uDF32","\uD83C\uDF84"]},grenade:{interval:80,frames:["\u060C ","\u2032 "," \xB4 "," \u203E "," \u2E0C"," \u2E0A"," |"," \u204E"," \u2055"," \u0DF4 "," \u2053"," "," "," "]},point:{interval:125,frames:["\u2219\u2219\u2219","\u25CF\u2219\u2219","\u2219\u25CF\u2219","\u2219\u2219\u25CF","\u2219\u2219\u2219"]},layer:{interval:150,frames:["-","=","\u2261"]},betaWave:{interval:80,frames:["\u03C1\u03B2\u03B2\u03B2\u03B2\u03B2\u03B2","\u03B2\u03C1\u03B2\u03B2\u03B2\u03B2\u03B2","\u03B2\u03B2\u03C1\u03B2\u03B2\u03B2\u03B2","\u03B2\u03B2\u03B2\u03C1\u03B2\u03B2\u03B2","\u03B2\u03B2\u03B2\u03B2\u03C1\u03B2\u03B2","\u03B2\u03B2\u03B2\u03B2\u03B2\u03C1\u03B2","\u03B2\u03B2\u03B2\u03B2\u03B2\u03B2\u03C1"]},fingerDance:{interval:160,frames:["\uD83E\uDD18 ","\uD83E\uDD1F ","\uD83D\uDD96 ","\u270B ","\uD83E\uDD1A ","\uD83D\uDC46 "]},fistBump:{interval:80,frames:["\uD83E\uDD1C\u3000\u3000\u3000\u3000\uD83E\uDD1B ","\uD83E\uDD1C\u3000\u3000\u3000\u3000\uD83E\uDD1B ","\uD83E\uDD1C\u3000\u3000\u3000\u3000\uD83E\uDD1B ","\u3000\uD83E\uDD1C\u3000\u3000\uD83E\uDD1B\u3000 ","\u3000\u3000\uD83E\uDD1C\uD83E\uDD1B\u3000\u3000 ","\u3000\uD83E\uDD1C\u2728\uD83E\uDD1B\u3000\u3000 ","\uD83E\uDD1C\u3000\u2728\u3000\uD83E\uDD1B\u3000 "]},soccerHeader:{interval:80,frames:[" \uD83E\uDDD1\u26BD\uFE0F \uD83E\uDDD1 ","\uD83E\uDDD1 \u26BD\uFE0F \uD83E\uDDD1 ","\uD83E\uDDD1 \u26BD\uFE0F \uD83E\uDDD1 ","\uD83E\uDDD1 \u26BD\uFE0F \uD83E\uDDD1 ","\uD83E\uDDD1 \u26BD\uFE0F \uD83E\uDDD1 ","\uD83E\uDDD1 \u26BD\uFE0F \uD83E\uDDD1 ","\uD83E\uDDD1 \u26BD\uFE0F\uD83E\uDDD1 ","\uD83E\uDDD1 \u26BD\uFE0F \uD83E\uDDD1 ","\uD83E\uDDD1 \u26BD\uFE0F \uD83E\uDDD1 ","\uD83E\uDDD1 \u26BD\uFE0F \uD83E\uDDD1 ","\uD83E\uDDD1 \u26BD\uFE0F \uD83E\uDDD1 ","\uD83E\uDDD1 \u26BD\uFE0F \uD83E\uDDD1 "]},mindblown:{interval:160,frames:["\uD83D\uDE10 ","\uD83D\uDE10 ","\uD83D\uDE2E ","\uD83D\uDE2E ","\uD83D\uDE26 ","\uD83D\uDE26 ","\uD83D\uDE27 ","\uD83D\uDE27 ","\uD83E\uDD2F ","\uD83D\uDCA5 ","\u2728 ","\u3000 ","\u3000 ","\u3000 "]},speaker:{interval:160,frames:["\uD83D\uDD08 ","\uD83D\uDD09 ","\uD83D\uDD0A ","\uD83D\uDD09 "]},orangePulse:{interval:100,frames:["\uD83D\uDD38 ","\uD83D\uDD36 ","\uD83D\uDFE0 ","\uD83D\uDFE0 ","\uD83D\uDD36 "]},bluePulse:{interval:100,frames:["\uD83D\uDD39 ","\uD83D\uDD37 ","\uD83D\uDD35 ","\uD83D\uDD35 ","\uD83D\uDD37 "]},orangeBluePulse:{interval:100,frames:["\uD83D\uDD38 ","\uD83D\uDD36 ","\uD83D\uDFE0 ","\uD83D\uDFE0 ","\uD83D\uDD36 ","\uD83D\uDD39 ","\uD83D\uDD37 ","\uD83D\uDD35 ","\uD83D\uDD35 ","\uD83D\uDD37 "]},timeTravel:{interval:100,frames:["\uD83D\uDD5B ","\uD83D\uDD5A ","\uD83D\uDD59 ","\uD83D\uDD58 ","\uD83D\uDD57 ","\uD83D\uDD56 ","\uD83D\uDD55 ","\uD83D\uDD54 ","\uD83D\uDD53 ","\uD83D\uDD52 ","\uD83D\uDD51 ","\uD83D\uDD50 "]},aesthetic:{interval:80,frames:["\u25B0\u25B1\u25B1\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B1\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B0\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B0\u25B0\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B0\u25B0\u25B0","\u25B0\u25B1\u25B1\u25B1\u25B1\u25B1\u25B1"]},dwarfFortress:{interval:80,frames:[" \u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2593\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2593\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2592\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2592\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2591\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2591\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A \u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A \u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A \u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\xA3\xA3\xA3 "," \u263A \u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\xA3\xA3\xA3 "," \u263A \u2588\xA3\xA3\xA3 "," \u263A\u2588\xA3\xA3\xA3 "," \u263A\u2588\xA3\xA3\xA3 "," \u263A\u2593\xA3\xA3\xA3 "," \u263A\u2593\xA3\xA3\xA3 "," \u263A\u2592\xA3\xA3\xA3 "," \u263A\u2592\xA3\xA3\xA3 "," \u263A\u2591\xA3\xA3\xA3 "," \u263A\u2591\xA3\xA3\xA3 "," \u263A \xA3\xA3\xA3 "," \u263A\xA3\xA3\xA3 "," \u263A\xA3\xA3\xA3 "," \u263A\u2593\xA3\xA3 "," \u263A\u2593\xA3\xA3 "," \u263A\u2592\xA3\xA3 "," \u263A\u2592\xA3\xA3 "," \u263A\u2591\xA3\xA3 "," \u263A\u2591\xA3\xA3 "," \u263A \xA3\xA3 "," \u263A\xA3\xA3 "," \u263A\xA3\xA3 "," \u263A\u2593\xA3 "," \u263A\u2593\xA3 "," \u263A\u2592\xA3 "," \u263A\u2592\xA3 "," \u263A\u2591\xA3 "," \u263A\u2591\xA3 "," \u263A \xA3 "," \u263A\xA3 "," \u263A\xA3 "," \u263A\u2593 "," \u263A\u2593 "," \u263A\u2592 "," \u263A\u2592 "," \u263A\u2591 "," \u263A\u2591 "," \u263A "," \u263A &"," \u263A \u263C&"," \u263A \u263C &"," \u263A\u263C &"," \u263A\u263C & "," \u203C & "," \u263A & "," \u203C & "," \u263A & "," \u203C & "," \u263A & ","\u203C & "," & "," & "," & \u2591 "," & \u2592 "," & \u2593 "," & \xA3 "," & \u2591\xA3 "," & \u2592\xA3 "," & \u2593\xA3 "," & \xA3\xA3 "," & \u2591\xA3\xA3 "," & \u2592\xA3\xA3 ","& \u2593\xA3\xA3 ","& \xA3\xA3\xA3 "," \u2591\xA3\xA3\xA3 "," \u2592\xA3\xA3\xA3 "," \u2593\xA3\xA3\xA3 "," \u2588\xA3\xA3\xA3 "," \u2591\u2588\xA3\xA3\xA3 "," \u2592\u2588\xA3\xA3\xA3 "," \u2593\u2588\xA3\xA3\xA3 "," \u2588\u2588\xA3\xA3\xA3 "," \u2591\u2588\u2588\xA3\xA3\xA3 "," \u2592\u2588\u2588\xA3\xA3\xA3 "," \u2593\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\xA3\xA3\xA3 "," \u2591\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2592\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2593\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2591\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2592\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2593\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2591\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2592\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2593\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "]},fish:{interval:80,frames:["~~~~~~~~~~~~~~~~~~~~","> ~~~~~~~~~~~~~~~~~~","\xBA> ~~~~~~~~~~~~~~~~~","(\xBA> ~~~~~~~~~~~~~~~~","((\xBA> ~~~~~~~~~~~~~~~","<((\xBA> ~~~~~~~~~~~~~~","><((\xBA> ~~~~~~~~~~~~~"," ><((\xBA> ~~~~~~~~~~~~","~ ><((\xBA> ~~~~~~~~~~~","~~ <>((\xBA> ~~~~~~~~~~","~~~ ><((\xBA> ~~~~~~~~~","~~~~ <>((\xBA> ~~~~~~~~","~~~~~ ><((\xBA> ~~~~~~~","~~~~~~ <>((\xBA> ~~~~~~","~~~~~~~ ><((\xBA> ~~~~~","~~~~~~~~ <>((\xBA> ~~~~","~~~~~~~~~ ><((\xBA> ~~~","~~~~~~~~~~ <>((\xBA> ~~","~~~~~~~~~~~ ><((\xBA> ~","~~~~~~~~~~~~ <>((\xBA> ","~~~~~~~~~~~~~ ><((\xBA>","~~~~~~~~~~~~~~ <>((\xBA","~~~~~~~~~~~~~~~ ><((","~~~~~~~~~~~~~~~~ <>(","~~~~~~~~~~~~~~~~~ ><","~~~~~~~~~~~~~~~~~~ <","~~~~~~~~~~~~~~~~~~~~"]}}});var rr,Pk9;var zI1=k(()=>{EI1();rr=An0,Pk9=Object.keys(An0)});var xI1;var RI1=k(async()=>{zI1();await Bq();xI1=class extends yq{_name;_frames;_interval;_autoplay;_backgroundColor;_color;_currentFrameIndex=0;_encodedFrames={};_lib=kQ();_intervalId=null;_defaultOptions={name:"dots",frames:rr.dots.frames,interval:rr.dots.interval,autoplay:!0,backgroundColor:"transparent",color:"white"};constructor(A,u){super(A,u),this._name=u.name,this._frames=this._name?rr[this._name].frames:u.frames??this._defaultOptions.frames,this._interval=this._name?rr[this._name].interval:u.interval??this._defaultOptions.interval,this._autoplay=u.autoplay??this._defaultOptions.autoplay,this._backgroundColor=u.backgroundColor??this._defaultOptions.backgroundColor,this._color=u.color??this._defaultOptions.color,this.width=Math.max(...this._frames.map((q)=>q.length)),this.height=1,this._encodeFrames(),this._autoplay&&this.start()}_encodeFrames(){for(let A of this._frames){let u=this._lib.encodeUnicode(A,this.ctx.widthMethod);u&&(this._encodedFrames[A]=u)}}_freeFrames(){for(let A in this._encodedFrames)this._encodedFrames[A]&&this._lib.freeUnicode(this._encodedFrames[A]);this._encodedFrames={}}get interval(){return this._interval}set interval(A){this.stop(),this._interval=A,this.start()}get name(){return this._name}set name(A){this._freeFrames(),this._name=A,this._frames=this._name?rr[this._name].frames:this._defaultOptions.frames,this._interval=this._name?rr[this._name].interval:this._defaultOptions.interval,this.width=Math.max(...this._frames.map((u)=>u.length)),this._encodeFrames(),this.requestRender()}get frames(){return this._frames}set frames(A){this._freeFrames(),this._frames=A.length===0?this._defaultOptions.frames:A,this._encodeFrames(),this.width=Math.max(...this._frames.map((u)=>u.length)),this.requestRender()}get color(){return this._color}set color(A){this._color=A,this.requestRender()}get backgroundColor(){return this._backgroundColor}set backgroundColor(A){this._backgroundColor=A,this.requestRender()}start(){this._intervalId||=setInterval(()=>{this._currentFrameIndex=(this._currentFrameIndex+1)%this._frames.length,this.requestRender()},this._interval)}stop(){this._intervalId&&=(clearInterval(this._intervalId),null)}renderSelf(A){if(!this.visible)return;let u=this._frames[this._currentFrameIndex];if(!u)return;let q=this._encodedFrames[u];if(!q)return;let F=this.x;for(let G=0;G<q.data.length;G++){let w=typeof this._color=="function"?this._color(this._currentFrameIndex,G,this._frames.length,q.data.length):this._color;A.drawChar(q.data[G].char,F,this.y,v0(w),v0(this._backgroundColor)),F+=q.data[G].width}}destroySelf(){this.stop(),this._freeFrames(),super.destroySelf()}}});var un0=k(async()=>{await Z0([RI1(),TA()]);fCA({spinner:xI1})});function DB(A){let{theme:u}=r2(),q=EB(),F=()=>A.color??u.textMuted;return JA(R0,{get when(){return q.get("animations_enabled",!0)},get fallback(){return(()=>{var G=QA("text"),w=aA("\u22EF ");return UA(G,w),BA(G,()=>A.children,null),yA((Q)=>I(G,"fg",F(),Q)),G})()},get children(){var G=QA("box"),w=QA("spinner");return UA(G,w),I(G,"flexDirection","row"),I(G,"gap",1),I(w,"frames",hT3),I(w,"interval",80),BA(G,JA(R0,{get when(){return A.children},get children(){var Q=QA("text");return BA(Q,()=>A.children),yA((g)=>I(Q,"fg",F(),g)),Q}}),null),yA((Q)=>I(w,"color",F(),Q)),G}})}var hT3;var AqA=k(async()=>{K6();await Z0([TA(),TA(),TA(),TA(),TA(),TA(),TA(),Sq(),nr(),un0()]);hT3=["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"]});function rY(A){let u=U5(),{theme:q}=r2(),F;return q4((G)=>{if(A.busy){if(G.name==="escape")return;G.preventDefault(),G.stopPropagation();return}if(G.name==="return")G.preventDefault(),G.stopPropagation(),A.onConfirm?.(F.plainText)}),fu(()=>{u.setSize("medium"),setTimeout(()=>{if(!F||F.isDestroyed)return;if(A.busy)return;F.focus()},1),F.gotoLineEnd()}),H4(()=>{if(!F||F.isDestroyed)return;let G=A.busy?{suspend:!0,status:"BUSY"}:{};if(F.traits=G,A.busy){F.blur();return}F.focus()}),(()=>{var G=QA("box"),w=QA("box"),Q=QA("text"),g=QA("text"),j=QA("box"),K=QA("textarea"),U=QA("box");return UA(G,w),UA(G,j),UA(G,U),I(G,"paddingLeft",2),I(G,"paddingRight",2),I(G,"gap",1),UA(w,Q),UA(w,g),I(w,"flexDirection","row"),I(w,"justifyContent","space-between"),BA(Q,()=>A.title),UA(g,aA("esc")),I(g,"onMouseUp",()=>u.clear()),UA(j,K),I(j,"gap",1),BA(j,()=>A.description,K),CQ((_)=>{F=_},K),I(K,"onSubmit",()=>{if(A.busy)return;A.onConfirm?.(F.plainText)}),I(K,"height",3),BA(j,JA(R0,{get when(){return A.busy},get children(){return JA(DB,{get color(){return q.textMuted},get children(){return A.busyText??"Working..."}})}}),null),I(U,"paddingBottom",1),I(U,"gap",1),I(U,"flexDirection","row"),BA(U,JA(R0,{get when(){return!A.busy},get fallback(){return(()=>{var _=QA("text");return UA(_,aA("processing...")),yA((O)=>I(_,"fg",q.textMuted,O)),_})()},get children(){var _=QA("text"),O=aA("enter "),W=QA("span");return UA(_,O),UA(_,W),UA(W,aA("submit")),yA((X)=>{var Y=q.text,$={fg:q.textMuted};return Y!==X.e&&(X.e=I(_,"fg",Y,X.e)),$!==X.t&&(X.t=I(W,"style",$,X.t)),X},{e:void 0,t:void 0}),_}})),yA((_)=>{var O=E6.BOLD,W=q.text,X=q.textMuted,Y=A.busy?[]:[{name:"return",action:"submit"}],$=A.value,V=A.placeholder??"Enter text",H=q.textMuted,Z=A.busy?q.textMuted:q.text,N=A.busy?q.textMuted:q.text,B=A.busy?q.backgroundElement:q.text;return O!==_.e&&(_.e=I(Q,"attributes",O,_.e)),W!==_.t&&(_.t=I(Q,"fg",W,_.t)),X!==_.a&&(_.a=I(g,"fg",X,_.a)),Y!==_.o&&(_.o=I(K,"keyBindings",Y,_.o)),$!==_.i&&(_.i=I(K,"initialValue",$,_.i)),V!==_.n&&(_.n=I(K,"placeholder",V,_.n)),H!==_.s&&(_.s=I(K,"placeholderColor",H,_.s)),Z!==_.h&&(_.h=I(K,"textColor",Z,_.h)),N!==_.r&&(_.r=I(K,"focusedTextColor",N,_.r)),B!==_.d&&(_.d=I(K,"cursorColor",B,_.d)),_},{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0,n:void 0,s:void 0,h:void 0,r:void 0,d:void 0}),G})()}var nVA=k(async()=>{K6();await Z0([TA(),TA(),TA(),TA(),TA(),TA(),TA(),TA(),TA(),TA(),Bq(),Sq(),w7(),TA(),AqA()]);rY.show=(A,u,q)=>{return new Promise((F)=>{A.replace(()=>JA(rY,wY({title:u},q,{onConfirm:(G)=>F(G),onCancel:()=>F(null)})),()=>F(null))})}});function oY(A,u,q){let F=(G)=>Object.defineProperty(A,u,{value:G,enumerable:!0,writable:!0});return Object.defineProperty(A,u,{configurable:!0,enumerable:!0,get(){let G=q();return F(G),G},set(G){F(G)}}),A}import{promisify as bT3}from"util";import mT3 from"process";import{execFile as yT3}from"child_process";async function qn0(){if(mT3.platform!=="darwin")throw Error("macOS only");let{stdout:A}=await vT3("defaults",["read","com.apple.LaunchServices/com.apple.launchservices.secure","LSHandlers"]),q=/LSHandlerRoleAll = "(?!-)(?<id>[^"]+?)";\s+?LSHandlerURLScheme = (?:http|https);/.exec(A)?.groups.id??"com.apple.Safari";if(q==="com.apple.safari")return"com.apple.Safari";return q}var vT3;var DI1=k(()=>{vT3=bT3(yT3)});import lT3 from"process";import{promisify as tT3}from"util";import{execFile as iT3,execFileSync as NS9}from"child_process";async function PI1(A,{humanReadableOutput:u=!0,signal:q}={}){if(lT3.platform!=="darwin")throw Error("macOS only");let F=u?[]:["-ss"],G={};if(q)G.signal=q;let{stdout:w}=await cT3("osascript",["-e",A,F],G);return w.trim()}var cT3;var TI1=k(()=>{cT3=tT3(iT3)});async function Fn0(A){return PI1(`tell application "Finder" to set app_path to application file id "${A}" as string
|
|
742
|
-
tell application "System Events" to get value of property list item "CFBundleName" of property list file (app_path & ":Contents:Info.plist")`)}var II1=k(()=>{TI1()});import{promisify as dT3}from"util";import{execFile as nT3}from"child_process";async function Gn0(A=pT3){let{stdout:u}=await A("reg",["QUERY"," HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\Shell\\Associations\\UrlAssociations\\http\\UserChoice","/v","ProgId"]),q=/ProgId\s*REG_SZ\s*(?<id>\S+)/.exec(u);if(!q)throw new kI1(`Cannot find Windows browser in stdout: ${JSON.stringify(u)}`);let{id:F}=q.groups,G=F.lastIndexOf("."),w=F.lastIndexOf("-"),Q=G===-1?void 0:F.slice(0,G),g=w===-1?void 0:F.slice(0,w);return QrA[F]??QrA[Q]??QrA[g]??{name:F,id:F}}var pT3,QrA,xS9,kI1;var SI1=k(()=>{pT3=dT3(nT3),QrA={MSEdgeHTM:{name:"Edge",id:"com.microsoft.edge"},MSEdgeBHTML:{name:"Edge Beta",id:"com.microsoft.edge.beta"},MSEdgeDHTML:{name:"Edge Dev",id:"com.microsoft.edge.dev"},AppXq0fevzme2pys62n3e0fbqa7peapykr8v:{name:"Edge",id:"com.microsoft.edge.old"},ChromeHTML:{name:"Chrome",id:"com.google.chrome"},ChromeBHTML:{name:"Chrome Beta",id:"com.google.chrome.beta"},ChromeDHTML:{name:"Chrome Dev",id:"com.google.chrome.dev"},ChromiumHTM:{name:"Chromium",id:"org.chromium.Chromium"},BraveHTML:{name:"Brave",id:"com.brave.Browser"},BraveBHTML:{name:"Brave Beta",id:"com.brave.Browser.beta"},BraveDHTML:{name:"Brave Dev",id:"com.brave.Browser.dev"},BraveSSHTM:{name:"Brave Nightly",id:"com.brave.Browser.nightly"},FirefoxURL:{name:"Firefox",id:"org.mozilla.firefox"},OperaStable:{name:"Opera",id:"com.operasoftware.Opera"},VivaldiHTM:{name:"Vivaldi",id:"com.vivaldi.Vivaldi"},"IE.HTTP":{name:"Internet Explorer",id:"com.microsoft.ie"}},xS9=new Map(Object.entries(QrA));kI1=class kI1 extends Error{}});import{promisify as aT3}from"util";import wn0 from"process";import{execFile as rT3}from"child_process";async function pVA(){if(wn0.platform==="darwin"){let A=await qn0();return{name:await Fn0(A),id:A}}if(wn0.platform==="linux"){let{stdout:A}=await oT3("xdg-mime",["query","default","x-scheme-handler/http"]),u=A.trim();return{name:sT3(u.replace(/.desktop$/,"").replace("-"," ")),id:u}}if(wn0.platform==="win32")return Gn0();throw Error("Only macOS, Linux, and Windows are supported")}var oT3,sT3=(A)=>A.toLowerCase().replaceAll(/(?:^|\s|-)\S/g,(u)=>u.toUpperCase());var Qn0=k(()=>{DI1();II1();SI1();oT3=aT3(rT3)});import aVA from"process";import{Buffer as mI1}from"buffer";import yI1 from"path";import{fileURLToPath as eT3}from"url";import AI3 from"util";import vI1 from"child_process";import gn0,{constants as lI1}from"fs/promises";async function FI3(){let A=await tI1(),u='(Get-ItemProperty -Path "HKCU:\\Software\\Microsoft\\Windows\\Shell\\Associations\\UrlAssociations\\http\\UserChoice").ProgId',q=mI1.from('(Get-ItemProperty -Path "HKCU:\\Software\\Microsoft\\Windows\\Shell\\Associations\\UrlAssociations\\http\\UserChoice").ProgId',"utf16le").toString("base64"),{stdout:F}=await uI3(A,["-NoProfile","-NonInteractive","-ExecutionPolicy","Bypass","-EncodedCommand",q],{encoding:"utf8"}),G=F.trim(),w={ChromeHTML:"com.google.chrome",MSEdgeHTM:"com.microsoft.edge",FirefoxURL:"org.mozilla.firefox"};return w[G]?{id:w[G]}:{}}function bI1(A){if(typeof A==="string"||Array.isArray(A))return A;let{[fI1]:u}=A;if(!u)throw Error(`${fI1} is not supported`);return u}function Kn0({[uqA]:A},{wsl:u}){if(u&&pJ)return bI1(u);if(!A)throw Error(`${uqA} is not supported`);return bI1(A)}var uI3,jn0,CI1,uqA,fI1,qI3,tI1=async()=>{return`${await qI3()}c/Windows/System32/WindowsPowerShell/v1.0/powershell.exe`},hI1=async(A,u)=>{let q;for(let F of A)try{return await u(F)}catch(G){q=G}throw q},grA=async(A)=>{if(A={wait:!1,background:!1,newInstance:!1,allowNonzeroExitCode:!1,...A},Array.isArray(A.app))return hI1(A.app,(g)=>grA({...A,app:g}));let{name:u,arguments:q=[]}=A.app??{};if(q=[...q],Array.isArray(u))return hI1(u,(g)=>grA({...A,app:{name:g,arguments:q}}));if(u==="browser"||u==="browserPrivate"){let g={"com.google.chrome":"chrome","google-chrome.desktop":"chrome","org.mozilla.firefox":"firefox","firefox.desktop":"firefox","com.microsoft.msedge":"edge","com.microsoft.edge":"edge","com.microsoft.edgemac":"edge","microsoft-edge.desktop":"edge"},j={chrome:"--incognito",firefox:"--private-window",edge:"--inPrivate"},K=pJ?await FI3():await pVA();if(K.id in g){let U=g[K.id];if(u==="browserPrivate")q.push(j[U]);return grA({...A,app:{name:qqA[U],arguments:q}})}throw Error(`${K.name} is not supported as a default browser`)}let F,G=[],w={};if(uqA==="darwin"){if(F="open",A.wait)G.push("--wait-apps");if(A.background)G.push("--background");if(A.newInstance)G.push("--new");if(u)G.push("-a",u)}else if(uqA==="win32"||pJ&&!eS()&&!u){if(F=pJ?await tI1():`${aVA.env.SYSTEMROOT||aVA.env.windir||"C:\\Windows"}\\System32\\WindowsPowerShell\\v1.0\\powershell`,G.push("-NoProfile","-NonInteractive","-ExecutionPolicy","Bypass","-EncodedCommand"),!pJ)w.windowsVerbatimArguments=!0;let g=["Start"];if(A.wait)g.push("-Wait");if(u){if(g.push(`"\`"${u}\`""`),A.target)q.push(A.target)}else if(A.target)g.push(`"${A.target}"`);if(q.length>0)q=q.map((j)=>`"\`"${j}\`""`),g.push("-ArgumentList",q.join(","));A.target=mI1.from(g.join(" "),"utf16le").toString("base64")}else{if(u)F=u;else{let g=!jn0||jn0==="/",j=!1;try{await gn0.access(CI1,lI1.X_OK),j=!0}catch{}F=aVA.versions.electron??(uqA==="android"||g||!j)?"xdg-open":CI1}if(q.length>0)G.push(...q);if(!A.wait)w.stdio="ignore",w.detached=!0}if(uqA==="darwin"&&q.length>0)G.push("--args",...q);if(A.target)G.push(A.target);let Q=vI1.spawn(F,G,w);if(A.wait)return new Promise((g,j)=>{Q.once("error",j),Q.once("close",(K)=>{if(!A.allowNonzeroExitCode&&K>0){j(Error(`Exited with code ${K}`));return}g(Q)})});return Q.unref(),Q},GI3=(A,u)=>{if(typeof A!=="string")throw TypeError("Expected a `target`");return grA({...u,target:A})},qqA,FqA;var jrA=k(()=>{LVA();Qn0();uaA();uI3=AI3.promisify(vI1.execFile),jn0=yI1.dirname(eT3(import.meta.url)),CI1=yI1.join(jn0,"xdg-open"),{platform:uqA,arch:fI1}=aVA,qI3=(()=>{let u;return async function(){if(u)return u;let q="/etc/wsl.conf",F=!1;try{await gn0.access(q,lI1.F_OK),F=!0}catch{}if(!F)return"/mnt/";let G=await gn0.readFile(q,{encoding:"utf8"}),w=/(?<!#.*)root\s*=\s*(?<mountPoint>.*)/g.exec(G);if(!w)return"/mnt/";return u=w.groups.mountPoint.trim(),u=u.endsWith("/")?u:`${u}/`,u}})();qqA={};oY(qqA,"chrome",()=>Kn0({darwin:"google chrome",win32:"chrome",linux:["google-chrome","google-chrome-stable","chromium"]},{wsl:{ia32:"/mnt/c/Program Files (x86)/Google/Chrome/Application/chrome.exe",x64:["/mnt/c/Program Files/Google/Chrome/Application/chrome.exe","/mnt/c/Program Files (x86)/Google/Chrome/Application/chrome.exe"]}}));oY(qqA,"firefox",()=>Kn0({darwin:"firefox",win32:"C:\\Program Files\\Mozilla Firefox\\firefox.exe",linux:"firefox"},{wsl:"/mnt/c/Program Files/Mozilla Firefox/firefox.exe"}));oY(qqA,"edge",()=>Kn0({darwin:"microsoft edge",win32:"msedge",linux:["microsoft-edge","microsoft-edge-dev"]},{wsl:"/mnt/c/Program Files (x86)/Microsoft/Edge/Application/msedge.exe"}));oY(qqA,"browser",()=>"browser");oY(qqA,"browserPrivate",()=>"browserPrivate");FqA=GI3});function Un0(A){let u=A.children??A.href;return(()=>{var q=QA("text");return I(q,"onMouseUp",()=>{FqA(A.href).catch(()=>{})}),BA(q,u),yA((F)=>I(q,"fg",A.fg,F)),q})()}var iI1=k(async()=>{jrA();await Z0([TA(),TA(),TA(),TA()])});function D7(A){return A()}import wI3 from"path";function cI1(A){let[u,...q]=A.split("/");return{providerID:u,modelID:q.join("/")}}var jg,dI1;var FP=k(async()=>{mF();K6();pw();nJ();await Z0([gU(),gg(),Sq(),R3(),Qz(),s3A(),JQ(),Bq()]);({use:jg,provider:dI1}=_8({name:"Local",init:()=>{let A=$4(),u=T4(),q=cg();function F(K){return!!A.data.provider.find((_)=>_.id===K.providerID)?.models[K.modelID]}function G(...K){for(let U of K){let _=U();if(!_)continue;if(F(_))return _}}let w=D7(()=>{let K=hA(()=>A.data.agent.filter((Y)=>Y.mode!=="subagent"&&!Y.hidden)),U=hA(()=>A.data.agent.filter((Y)=>!Y.hidden)),[_,O]=u4({current:void 0}),{theme:W}=r2(),X=hA(()=>[W.secondary,W.accent,W.success,W.warning,W.primary,W.error,W.info]);return{list(){return K()},current(){return K().find((Y)=>Y.name===_.current)??K().at(0)},set(Y){if(!K().some(($)=>$.name===Y))return q.show({variant:"warning",message:`Agent not found: ${Y}`,duration:3000});O("current",Y)},move(Y){X7(()=>{let $=this.current();if(!$)return;let V=K().findIndex((Z)=>Z.name===$.name)+Y;if(V<0)V=K().length-1;if(V>=K().length)V=0;let H=K()[V];O("current",H.name)})},color(Y){let $=U().findIndex((H)=>H.name===Y);if($===-1)return X()[0];let V=U()[$];if(V?.color){let H=V.color;if(H.startsWith("#"))return C2.fromHex(H);return W[H]}return X()[$%X().length]}}}),Q=D7(()=>{let[K,U]=u4({ready:!1,model:{},recent:[],favorite:[],variant:{}}),_=wI3.join(j2.Path.state,"model.json"),O={pending:!1};function W(){if(!K.ready){O.pending=!0;return}O.pending=!1,Bu.writeJson(_,{recent:K.recent,favorite:K.favorite,variant:K.variant})}Bu.readJson(_).then((V)=>{if(Array.isArray(V.recent))U("recent",V.recent);if(Array.isArray(V.favorite))U("favorite",V.favorite);if(typeof V.variant==="object"&&V.variant!==null)U("variant",V.variant)}).catch(()=>{}).finally(()=>{if(U("ready",!0),O.pending)W()});let X=qP(),Y=hA(()=>{if(X.model){let{providerID:B,modelID:z}=cI1(X.model);if(F({providerID:B,modelID:z}))return{providerID:B,modelID:z}}if(A.data.config.model){let{providerID:B,modelID:z}=cI1(A.data.config.model);if(F({providerID:B,modelID:z}))return{providerID:B,modelID:z}}for(let B of K.recent)if(F(B))return B;let V=A.data.provider[0];if(!V)return;let H=A.data.provider_default[V.id],Z=Object.values(V.models)[0],N=H??Z?.id;if(!N)return;return{providerID:V.id,modelID:N}}),$=hA(()=>{let V=w.current();return G(()=>V&&K.model[V.name],()=>V&&V.model,Y)??void 0});return{current:$,get ready(){return K.ready},recent(){return K.recent},favorite(){return K.favorite},parsed:hA(()=>{let V=$();if(!V)return{provider:"Connect a provider",model:"No provider selected",reasoning:!1};let H=A.data.provider.find((N)=>N.id===V.providerID),Z=H?.models[V.modelID];return{provider:H?.name??V.providerID,model:Z?.name??V.modelID,reasoning:Z?.capabilities?.reasoning??!1}}),cycle(V){let H=$();if(!H)return;let Z=K.recent,N=Z.findIndex((L)=>L.providerID===H.providerID&&L.modelID===H.modelID);if(N===-1)return;let B=N+V;if(B<0)B=Z.length-1;if(B>=Z.length)B=0;let z=Z[B];if(!z)return;let M=w.current();if(!M)return;U("model",M.name,{...z})},cycleFavorite(V){let H=K.favorite.filter((L)=>F(L));if(!H.length){q.show({variant:"info",message:"Add a favorite model to use this shortcut",duration:3000});return}let Z=$(),N=-1;if(Z)N=H.findIndex((L)=>L.providerID===Z.providerID&&L.modelID===Z.modelID);if(N===-1)N=V===1?0:H.length-1;else{if(N+=V,N<0)N=H.length-1;if(N>=H.length)N=0}let B=H[N];if(!B)return;let z=w.current();if(!z)return;U("model",z.name,{...B});let M=KyA([B,...K.recent],(L)=>`${L.providerID}/${L.modelID}`);if(M.length>10)M.pop();U("recent",M.map((L)=>({providerID:L.providerID,modelID:L.modelID}))),W()},set(V,H){X7(()=>{if(!F(V)){q.show({message:`Model ${V.providerID}/${V.modelID} is not valid`,variant:"warning",duration:3000});return}let Z=w.current();if(!Z)return;if(U("model",Z.name,V),H?.recent){let N=KyA([V,...K.recent],(B)=>`${B.providerID}/${B.modelID}`);if(N.length>10)N.pop();U("recent",N.map((B)=>({providerID:B.providerID,modelID:B.modelID}))),W()}})},toggleFavorite(V){X7(()=>{if(!F(V)){q.show({message:`Model ${V.providerID}/${V.modelID} is not valid`,variant:"warning",duration:3000});return}let Z=K.favorite.some((N)=>N.providerID===V.providerID&&N.modelID===V.modelID)?K.favorite.filter((N)=>N.providerID!==V.providerID||N.modelID!==V.modelID):[V,...K.favorite];U("favorite",Z.map((N)=>({providerID:N.providerID,modelID:N.modelID}))),W()})},variant:{selected(){let V=$();if(!V)return;let H=`${V.providerID}/${V.modelID}`;return K.variant[H]},current(){let V=this.selected();if(!V)return;if(!this.list().includes(V))return;return V},list(){let V=$();if(!V)return[];let Z=A.data.provider.find((N)=>N.id===V.providerID)?.models[V.modelID];if(!Z?.variants)return[];return Object.keys(Z.variants)},set(V){let H=$();if(!H)return;let Z=`${H.providerID}/${H.modelID}`;U("variant",Z,V??"default"),W()},cycle(){let V=this.list();if(V.length===0)return;let H=this.current();if(!H){this.set(V[0]);return}let Z=V.indexOf(H);if(Z===-1||Z===V.length-1){this.set(void 0);return}this.set(V[Z+1])}}}}),g={isEnabled(K){return A.data.mcp[K]?.status==="connected"},async toggle(K){if(A.data.mcp[K]?.status==="connected")await u.client.mcp.disconnect({name:K});else await u.client.mcp.connect({name:K})}};return H4(()=>{let K=w.current();if(!K)return;if(K.model)if(F(K.model))Q.set({providerID:K.model.providerID,modelID:K.model.modelID});else q.show({variant:"warning",message:`Agent ${K.name}'s configured model ${K.model.providerID}/${K.model.modelID} is not valid`,duration:3000})}),{model:Q,agent:w,mcp:g}}}))});function KrA(){let A=jg(),u=U5(),q=hA(()=>{return[{value:"default",title:"Default",onSelect:()=>{u.clear(),A.model.variant.set(void 0)}},...A.model.variant.list().map((F)=>({value:F,title:F,onSelect:()=>{u.clear(),A.model.variant.set(F)}}))]});return JA(P3,{get options(){return q()},title:"Select variant",get current(){return A.model.variant.selected()},flat:!0})}var _n0=k(async()=>{K6();await Z0([TA(),FP(),ij(),w7()])});function GqA(){let A=$4();return hA(()=>A.data.provider.some((u)=>u.id!=="opencode"||Object.values(u.models).some((q)=>q.cost?.input!==0)))}var UrA=k(async()=>{K6();await gg()});function wqA(A){let u=jg(),q=$4(),F=U5(),G=r7(),[w,Q]=g2(""),g=GqA(),j=Wn0(),K=hA(()=>g()&&!A.providerID),U=hA(()=>{let X=w().trim(),Y=K()&&X.length===0,$=g()?u.model.favorite():[],V=u.model.recent();function H(M,L){if(!Y)return[];return M.flatMap((x)=>{let P=q.data.provider.find((C)=>C.id===x.providerID);if(!P)return[];let D=P.models[x.modelID];if(!D)return[];return[{key:x,value:{providerID:P.id,modelID:D.id},title:D.name??x.modelID,description:P.name,category:L,disabled:P.id==="opencode"&&D.id.includes("-nano"),footer:D.cost?.input===0&&P.id==="opencode"?"Free":void 0,onSelect:()=>{W(P.id,D.id)}}]})}let Z=H($,"Favorites"),N=H(V.filter((M)=>!$.some((L)=>L.providerID===M.providerID&&L.modelID===M.modelID)),"Recent"),B=lF(q.data.provider,zW((M)=>M.id!=="opencode",(M)=>M.name),LJA((M)=>lF(M.models,Op(),Lk(([L,x])=>x.status!=="deprecated"),Lk(([L,x])=>A.providerID?x.providerID===A.providerID:!0),Ky(([L,x])=>({value:{providerID:M.id,modelID:L},title:x.name??L,description:$.some((P)=>P.providerID===M.id&&P.modelID===L)?"(Favorite)":void 0,category:g()?M.name:void 0,disabled:M.id==="opencode"&&L.includes("-nano"),footer:x.cost?.input===0&&M.id==="opencode"?"Free":void 0,onSelect(){W(M.id,L)}})),Lk((L)=>{if(!Y)return!0;if($.some((x)=>x.providerID===L.value.providerID&&x.modelID===L.value.modelID))return!1;if(V.some((x)=>x.providerID===L.value.providerID&&x.modelID===L.value.modelID))return!1;return!0}),zW((L)=>L.footer!=="Free",(L)=>L.title)))),z=!g()?lF(j(),Ky((M)=>({...M,category:"Popular providers"})),IM0(6)):[];if(X)return[...Jn0.go(X,B,{keys:["title","category"]}).map((M)=>M.obj),...Jn0.go(X,z,{keys:["title"]}).map((M)=>M.obj)];return[...Z,...N,...B,...z]}),_=hA(()=>A.providerID?q.data.provider.find((X)=>X.id===A.providerID):null),O=hA(()=>{let X=_();if(!X)return"Select model";return X.name});function W(X,Y){u.model.set({providerID:X,modelID:Y},{recent:!0});let $=u.model.variant.list(),V=u.model.variant.selected();if(V==="default"||V&&$.includes(V)){F.clear();return}if($.length>0){F.replace(()=>JA(KrA,{}));return}F.clear()}return JA(P3,{get options(){return U()},get keybind(){return[{keybind:G.all.model_provider_list?.[0],title:g()?"Connect provider":"View all providers",onTrigger(){F.replace(()=>JA(or,{}))}},{keybind:G.all.model_favorite_toggle?.[0],title:"Favorite",disabled:!g(),onTrigger:(X)=>{u.model.toggleFavorite(X.value)}}]},onFilter:Q,flat:!0,skipFilter:!0,get title(){return O()},get current(){return u.model.current()}})}var Jn0;var On0=k(async()=>{K6();pw();await Z0([TA(),FP(),gg(),ij(),w7(),_rA(),_n0(),pY(),UrA()]);Jn0=A2(e3A(),1)});var QI3=(A,u)=>Array.isArray(A)?A.includes(u):A.has(u),nI1=(A,u)=>QI3(A,u);function Wn0(){let A=$4(),u=U5(),q=T4(),F=cg(),{theme:G}=r2(),w=GqA();return hA(()=>{return lF(A.data.provider_next.all,Lk((g)=>g.id!=="opencode"),zW((g)=>pI1[g.id]??99),Ky((g)=>{let j=nI1(A.data.console_state.consoleManagedProviders,g.id),K=A.data.provider_next.connected.includes(g.id);return{title:g.name,value:g.id,description:{anthropic:"(API key)",openai:"(ChatGPT Plus/Pro or API key)"}[g.id],footer:j?A.data.console_state.activeOrgName:void 0,category:g.id in pI1?"Popular":"Other",gutter:K&&w()?()=>(()=>{var U=QA("text");return UA(U,aA("\u2713")),yA((_)=>I(U,"fg",G.success,_)),U})():void 0,async onSelect(){if(j)return;let U=A.data.provider_auth[g.id]??[{type:"api",label:"API key"}],_=0;if(U.length>1)_=await new Promise((W)=>{u.replace(()=>JA(P3,{title:"Select auth method",get options(){return U.map((X,Y)=>({title:X.label,value:Y}))},onSelect:(X)=>W(X.value)}),()=>W(null))});if(_==null)return;let O=U[_];if(O.type==="oauth"){let W;if(O.prompts?.length){let Y=await aI1({dialog:u,prompts:O.prompts});if(!Y)return;W=Y}let X=await q.client.provider.oauth.authorize({providerID:g.id,method:_,inputs:W});if(X.error){F.show({variant:"error",message:JSON.stringify(X.error)}),u.clear();return}if(X.data?.method==="code")u.replace(()=>JA(jI3,{get providerID(){return g.id},get title(){return O.label},index:_,get authorization(){return X.data}}));if(X.data?.method==="auto")u.replace(()=>JA(gI3,{get providerID(){return g.id},get title(){return O.label},index:_,get authorization(){return X.data}}))}if(O.type==="api"){let W;if(O.prompts?.length){let X=await aI1({dialog:u,prompts:O.prompts});if(!X)return;W=X}return u.replace(()=>JA(KI3,{get providerID(){return g.id},get title(){return O.label},metadata:W}))}}}}))})}function or(){let A=Wn0();return JA(P3,{title:"Connect a provider",get options(){return A()}})}function gI3(A){let{theme:u}=r2(),q=T4(),F=U5(),G=$4(),w=cg();return q4((Q)=>{if(Q.name==="c"&&!Q.ctrl&&!Q.meta){let g=A.authorization.instructions.match(/[A-Z0-9]{4}-[A-Z0-9]{4,5}/)?.[0]??A.authorization.url;rW(g).then(()=>w.show({message:"Copied to clipboard",variant:"info"})).catch(w.error)}}),fu(async()=>{if((await q.client.provider.oauth.callback({providerID:A.providerID,method:A.index})).error){F.clear();return}await q.client.instance.dispose(),await G.bootstrap(),F.replace(()=>JA(wqA,{get providerID(){return A.providerID}}))}),(()=>{var Q=QA("box"),g=QA("box"),j=QA("text"),K=QA("text"),U=QA("box"),_=QA("text"),O=QA("text"),W=QA("text"),X=aA("c "),Y=QA("span");return UA(Q,g),UA(Q,U),UA(Q,O),UA(Q,W),I(Q,"paddingLeft",2),I(Q,"paddingRight",2),I(Q,"gap",1),I(Q,"paddingBottom",1),UA(g,j),UA(g,K),I(g,"flexDirection","row"),I(g,"justifyContent","space-between"),BA(j,()=>A.title),UA(K,aA("esc")),I(K,"onMouseUp",()=>F.clear()),UA(U,_),I(U,"gap",1),BA(U,JA(Un0,{get href(){return A.authorization.url},get fg(){return u.primary}}),_),BA(_,()=>A.authorization.instructions),UA(O,aA("Waiting for authorization...")),UA(W,X),UA(W,Y),UA(Y,aA("copy")),yA(($)=>{var V=E6.BOLD,H=u.text,Z=u.textMuted,N=u.textMuted,B=u.textMuted,z=u.text,M={fg:u.textMuted};return V!==$.e&&($.e=I(j,"attributes",V,$.e)),H!==$.t&&($.t=I(j,"fg",H,$.t)),Z!==$.a&&($.a=I(K,"fg",Z,$.a)),N!==$.o&&($.o=I(_,"fg",N,$.o)),B!==$.i&&($.i=I(O,"fg",B,$.i)),z!==$.n&&($.n=I(W,"fg",z,$.n)),M!==$.s&&($.s=I(Y,"style",M,$.s)),$},{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0,n:void 0,s:void 0}),Q})()}function jI3(A){let{theme:u}=r2(),q=T4(),F=$4(),G=U5(),[w,Q]=g2(!1);return JA(rY,{get title(){return A.title},placeholder:"Authorization code",onConfirm:async(g)=>{let{error:j}=await q.client.provider.oauth.callback({providerID:A.providerID,method:A.index,code:g});if(!j){await q.client.instance.dispose(),await F.bootstrap(),G.replace(()=>JA(wqA,{get providerID(){return A.providerID}}));return}Q(!0)},description:()=>(()=>{var g=QA("box"),j=QA("text");return UA(g,j),I(g,"gap",1),BA(j,()=>A.authorization.instructions),BA(g,JA(Un0,{get href(){return A.authorization.url},get fg(){return u.primary}}),null),BA(g,JA(R0,{get when(){return w()},get children(){var K=QA("text");return UA(K,aA("Invalid code")),yA((U)=>I(K,"fg",u.error,U)),K}}),null),yA((K)=>I(j,"fg",u.textMuted,K)),g})()})}function KI3(A){let u=U5(),q=T4(),F=$4();return JA(rY,{get title(){return A.title},placeholder:"API key",onConfirm:async(G)=>{if(!G)return;await q.client.auth.set({providerID:A.providerID,auth:{type:"api",key:G,...A.metadata?{metadata:A.metadata}:{}}}),await q.client.instance.dispose(),await F.bootstrap(),u.replace(()=>JA(wqA,{get providerID(){return A.providerID}}))}})}async function aI1(A){let u={};for(let q of A.prompts){if(q.when){let G=u[q.when.key];if(G===void 0)continue;if(!(q.when.op==="eq"?G===q.when.value:G!==q.when.value))continue}if(q.type==="select"){let G=await new Promise((w)=>{A.dialog.replace(()=>JA(P3,{get title(){return q.message},get options(){return q.options.map((Q)=>({title:Q.label,value:Q.value,description:Q.hint}))},onSelect:(Q)=>w(Q.value)}),()=>w(null))});if(G===null)return null;u[q.key]=G;continue}let F=await new Promise((G)=>{A.dialog.replace(()=>JA(rY,{get title(){return q.message},get placeholder(){return q.placeholder},onConfirm:(w)=>G(w)}),()=>G(null))});if(F===null)return null;u[q.key]=F}return u}var pI1;var _rA=k(async()=>{K6();pw();AC();await Z0([TA(),TA(),TA(),TA(),TA(),TA(),TA(),gg(),ij(),w7(),JQ(),nVA(),iI1(),Sq(),Bq(),On0(),TA(),Qz(),UrA()]);pI1={openai:1,"github-copilot":2,anthropic:3,google:4}});var jz="27.4.52",rI1="-desktop";function sJ(A){return A.trim().replace(/^v/,"")}function oVA(A){return sJ(A).endsWith(UI3)}function QC(A){let u=sJ(A);return rVA.default.valid(u)??rVA.default.coerce(u)?.version}function Xn0(A,u){let q=QC(A),F=QC(u);if(q&&F)return rVA.default.eq(q,F);return sJ(A)===sJ(u)}function JrA(A,u){if(Xn0(A,u))return!1;let q=QC(A),F=QC(u);if(q&&F)return rVA.default.gt(F,q);return sJ(A)!==sJ(u)}var rVA,I4,sY,QqA,UI3;var cj=k(()=>{rVA=A2(Nw(),1),I4=typeof CODEPLANE_VERSION==="string"?CODEPLANE_VERSION:"local",sY=typeof CODEPLANE_CHANNEL==="string"?CODEPLANE_CHANNEL:"local",QqA=sY==="local",UI3=rI1});function oI1(A){let u=m7(),q=vq(),F=async()=>{await A.onBeforeExit?.(),q.setTerminalTitle(""),q.destroy(),HaA(),await A.onExit()};q4((U)=>{if(U.ctrl&&U.name==="c")F()});let[G,w]=g2(!1),Q=new URL("https://github.com/anomalyco/codeplane/issues/new?template=bug-report.yml"),g=A.mode==="light",j={bg:g?"#ffffff":"#0a0a0a",text:g?"#1a1a1a":"#eeeeee",muted:g?"#8a8a8a":"#808080",primary:g?"#3b7dd8":"#fab283"};if(A.error.message)Q.searchParams.set("title",`opentui: fatal: ${A.error.message}`);if(A.error.stack)Q.searchParams.set("description","```\n"+A.error.stack.substring(0,6000-Q.toString().length)+"...\n```");Q.searchParams.set("opencode-version",I4);let K=()=>{rW(Q.toString()).then(()=>{w(!0)})};return(()=>{var U=QA("box"),_=QA("box"),O=QA("text"),W=QA("box"),X=QA("text"),Y=QA("box"),$=QA("text"),V=QA("box"),H=QA("text"),Z=QA("box"),N=QA("text"),B=QA("scrollbox"),z=QA("text"),M=QA("text");return UA(U,_),UA(U,Y),UA(U,B),UA(U,M),I(U,"flexDirection","column"),I(U,"gap",1),UA(_,O),UA(_,W),I(_,"flexDirection","row"),I(_,"gap",1),I(_,"alignItems","center"),UA(O,aA("Please report an issue.")),UA(W,X),I(W,"onMouseUp",K),I(W,"padding",1),UA(X,aA("Copy issue URL (exception info pre-filled)")),BA(_,(()=>{var L=v2(()=>!!G());return()=>L()&&(()=>{var x=QA("text");return UA(x,aA("Successfully copied")),yA((P)=>I(x,"fg",j.muted,P)),x})()})(),null),UA(Y,$),UA(Y,V),UA(Y,Z),I(Y,"flexDirection","row"),I(Y,"gap",2),I(Y,"alignItems","center"),UA($,aA("A fatal error occurred!")),UA(V,H),I(V,"padding",1),UA(H,aA("Reset TUI")),UA(Z,N),I(Z,"onMouseUp",F),I(Z,"padding",1),UA(N,aA("Exit")),UA(B,z),BA(z,()=>A.error.stack),BA(M,()=>A.error.message),yA((L)=>{var x=j.bg,P=E6.BOLD,D=j.text,C=j.primary,y=E6.BOLD,S=j.bg,f=j.text,r=A.reset,l=j.primary,o=j.bg,a=j.primary,n=j.bg,s=Math.floor(u().height*0.7),t=RB(),b=j.muted,p=j.text;return x!==L.e&&(L.e=I(U,"backgroundColor",x,L.e)),P!==L.t&&(L.t=I(O,"attributes",P,L.t)),D!==L.a&&(L.a=I(O,"fg",D,L.a)),C!==L.o&&(L.o=I(W,"backgroundColor",C,L.o)),y!==L.i&&(L.i=I(X,"attributes",y,L.i)),S!==L.n&&(L.n=I(X,"fg",S,L.n)),f!==L.s&&(L.s=I($,"fg",f,L.s)),r!==L.h&&(L.h=I(V,"onMouseUp",r,L.h)),l!==L.r&&(L.r=I(V,"backgroundColor",l,L.r)),o!==L.d&&(L.d=I(H,"fg",o,L.d)),a!==L.l&&(L.l=I(Z,"backgroundColor",a,L.l)),n!==L.u&&(L.u=I(N,"fg",n,L.u)),s!==L.c&&(L.c=I(B,"height",s,L.c)),t!==L.w&&(L.w=I(B,"scrollAcceleration",t,L.w)),b!==L.m&&(L.m=I(z,"fg",b,L.m)),p!==L.f&&(L.f=I(M,"fg",p,L.f)),L},{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0,n:void 0,s:void 0,h:void 0,r:void 0,d:void 0,l:void 0,u:void 0,c:void 0,w:void 0,m:void 0,f:void 0}),U})()}var sI1=k(async()=>{AC();K6();cj();NaA();await Z0([TA(),TA(),TA(),TA(),TA(),TA(),TA(),Bq(),TA(),ar()])});function eI1(A){let{theme:u}=r2();return(()=>{var q=QA("box"),F=QA("text"),G=aA("Unknown plugin route: "),w=QA("box"),Q=QA("text");return UA(q,F),UA(q,w),I(q,"width","100%"),I(q,"height","100%"),I(q,"alignItems","center"),I(q,"justifyContent","center"),I(q,"flexDirection","column"),I(q,"gap",1),UA(F,G),BA(F,()=>A.id,null),UA(w,Q),I(w,"paddingLeft",1),I(w,"paddingRight",1),UA(Q,aA("go home")),yA((g)=>{var j=u.warning,K=A.onHome,U=u.backgroundElement,_=u.text;return j!==g.e&&(g.e=I(F,"fg",j,g.e)),K!==g.t&&(g.t=I(w,"onMouseUp",K,g.t)),U!==g.a&&(g.a=I(w,"backgroundColor",U,g.a)),_!==g.o&&(g.o=I(Q,"fg",_,g.o)),g},{e:void 0,t:void 0,a:void 0,o:void 0}),q})()}var Ak1=k(async()=>{await Z0([TA(),TA(),TA(),TA(),TA(),TA(),Sq()])});import{Database as Yn0}from"bun:sqlite";import uk1 from"os";import sr from"path";async function Fk1(A,u=process.cwd()){let q=XI3(A,u);if(q.type!=="row")return q;let F=q.row;if(!F.buffer_path)return{type:"empty"};let G=YI3(A,F);if(G.type!=="selections")return G;let w=G.selections.flatMap((K)=>{if(K.selection_start==null||K.selection_end==null)return[];return[{start:Math.min(K.selection_start,K.selection_end),end:Math.max(K.selection_start,K.selection_end)}]}).sort((K,U)=>K.start-U.start||K.end-U.end);if(w.length===0)return{type:"unavailable"};let Q=$I3(A,F),g=Q.type==="contents"&&Q.contents!=null?Q.contents:await Bun.file(F.buffer_path).text().catch(()=>{return});if(g==null)return{type:"unavailable"};let j=w.map((K)=>{let U=qk1(g,K.start),_=qk1(g,K.end);return{text:g.slice(U,_),selection:BI3(g,U,_)}});return{type:"selection",selection:{filePath:F.buffer_path,source:"zed",ranges:j}}}function XI3(A,u){let q;try{q=new Yn0(A,{readonly:!0});let F=q.query(`select
|
|
742
|
+
tell application "System Events" to get value of property list item "CFBundleName" of property list file (app_path & ":Contents:Info.plist")`)}var II1=k(()=>{TI1()});import{promisify as dT3}from"util";import{execFile as nT3}from"child_process";async function Gn0(A=pT3){let{stdout:u}=await A("reg",["QUERY"," HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\Shell\\Associations\\UrlAssociations\\http\\UserChoice","/v","ProgId"]),q=/ProgId\s*REG_SZ\s*(?<id>\S+)/.exec(u);if(!q)throw new kI1(`Cannot find Windows browser in stdout: ${JSON.stringify(u)}`);let{id:F}=q.groups,G=F.lastIndexOf("."),w=F.lastIndexOf("-"),Q=G===-1?void 0:F.slice(0,G),g=w===-1?void 0:F.slice(0,w);return QrA[F]??QrA[Q]??QrA[g]??{name:F,id:F}}var pT3,QrA,xS9,kI1;var SI1=k(()=>{pT3=dT3(nT3),QrA={MSEdgeHTM:{name:"Edge",id:"com.microsoft.edge"},MSEdgeBHTML:{name:"Edge Beta",id:"com.microsoft.edge.beta"},MSEdgeDHTML:{name:"Edge Dev",id:"com.microsoft.edge.dev"},AppXq0fevzme2pys62n3e0fbqa7peapykr8v:{name:"Edge",id:"com.microsoft.edge.old"},ChromeHTML:{name:"Chrome",id:"com.google.chrome"},ChromeBHTML:{name:"Chrome Beta",id:"com.google.chrome.beta"},ChromeDHTML:{name:"Chrome Dev",id:"com.google.chrome.dev"},ChromiumHTM:{name:"Chromium",id:"org.chromium.Chromium"},BraveHTML:{name:"Brave",id:"com.brave.Browser"},BraveBHTML:{name:"Brave Beta",id:"com.brave.Browser.beta"},BraveDHTML:{name:"Brave Dev",id:"com.brave.Browser.dev"},BraveSSHTM:{name:"Brave Nightly",id:"com.brave.Browser.nightly"},FirefoxURL:{name:"Firefox",id:"org.mozilla.firefox"},OperaStable:{name:"Opera",id:"com.operasoftware.Opera"},VivaldiHTM:{name:"Vivaldi",id:"com.vivaldi.Vivaldi"},"IE.HTTP":{name:"Internet Explorer",id:"com.microsoft.ie"}},xS9=new Map(Object.entries(QrA));kI1=class kI1 extends Error{}});import{promisify as aT3}from"util";import wn0 from"process";import{execFile as rT3}from"child_process";async function pVA(){if(wn0.platform==="darwin"){let A=await qn0();return{name:await Fn0(A),id:A}}if(wn0.platform==="linux"){let{stdout:A}=await oT3("xdg-mime",["query","default","x-scheme-handler/http"]),u=A.trim();return{name:sT3(u.replace(/.desktop$/,"").replace("-"," ")),id:u}}if(wn0.platform==="win32")return Gn0();throw Error("Only macOS, Linux, and Windows are supported")}var oT3,sT3=(A)=>A.toLowerCase().replaceAll(/(?:^|\s|-)\S/g,(u)=>u.toUpperCase());var Qn0=k(()=>{DI1();II1();SI1();oT3=aT3(rT3)});import aVA from"process";import{Buffer as mI1}from"buffer";import yI1 from"path";import{fileURLToPath as eT3}from"url";import AI3 from"util";import vI1 from"child_process";import gn0,{constants as lI1}from"fs/promises";async function FI3(){let A=await tI1(),u='(Get-ItemProperty -Path "HKCU:\\Software\\Microsoft\\Windows\\Shell\\Associations\\UrlAssociations\\http\\UserChoice").ProgId',q=mI1.from('(Get-ItemProperty -Path "HKCU:\\Software\\Microsoft\\Windows\\Shell\\Associations\\UrlAssociations\\http\\UserChoice").ProgId',"utf16le").toString("base64"),{stdout:F}=await uI3(A,["-NoProfile","-NonInteractive","-ExecutionPolicy","Bypass","-EncodedCommand",q],{encoding:"utf8"}),G=F.trim(),w={ChromeHTML:"com.google.chrome",MSEdgeHTM:"com.microsoft.edge",FirefoxURL:"org.mozilla.firefox"};return w[G]?{id:w[G]}:{}}function bI1(A){if(typeof A==="string"||Array.isArray(A))return A;let{[fI1]:u}=A;if(!u)throw Error(`${fI1} is not supported`);return u}function Kn0({[uqA]:A},{wsl:u}){if(u&&pJ)return bI1(u);if(!A)throw Error(`${uqA} is not supported`);return bI1(A)}var uI3,jn0,CI1,uqA,fI1,qI3,tI1=async()=>{return`${await qI3()}c/Windows/System32/WindowsPowerShell/v1.0/powershell.exe`},hI1=async(A,u)=>{let q;for(let F of A)try{return await u(F)}catch(G){q=G}throw q},grA=async(A)=>{if(A={wait:!1,background:!1,newInstance:!1,allowNonzeroExitCode:!1,...A},Array.isArray(A.app))return hI1(A.app,(g)=>grA({...A,app:g}));let{name:u,arguments:q=[]}=A.app??{};if(q=[...q],Array.isArray(u))return hI1(u,(g)=>grA({...A,app:{name:g,arguments:q}}));if(u==="browser"||u==="browserPrivate"){let g={"com.google.chrome":"chrome","google-chrome.desktop":"chrome","org.mozilla.firefox":"firefox","firefox.desktop":"firefox","com.microsoft.msedge":"edge","com.microsoft.edge":"edge","com.microsoft.edgemac":"edge","microsoft-edge.desktop":"edge"},j={chrome:"--incognito",firefox:"--private-window",edge:"--inPrivate"},K=pJ?await FI3():await pVA();if(K.id in g){let U=g[K.id];if(u==="browserPrivate")q.push(j[U]);return grA({...A,app:{name:qqA[U],arguments:q}})}throw Error(`${K.name} is not supported as a default browser`)}let F,G=[],w={};if(uqA==="darwin"){if(F="open",A.wait)G.push("--wait-apps");if(A.background)G.push("--background");if(A.newInstance)G.push("--new");if(u)G.push("-a",u)}else if(uqA==="win32"||pJ&&!eS()&&!u){if(F=pJ?await tI1():`${aVA.env.SYSTEMROOT||aVA.env.windir||"C:\\Windows"}\\System32\\WindowsPowerShell\\v1.0\\powershell`,G.push("-NoProfile","-NonInteractive","-ExecutionPolicy","Bypass","-EncodedCommand"),!pJ)w.windowsVerbatimArguments=!0;let g=["Start"];if(A.wait)g.push("-Wait");if(u){if(g.push(`"\`"${u}\`""`),A.target)q.push(A.target)}else if(A.target)g.push(`"${A.target}"`);if(q.length>0)q=q.map((j)=>`"\`"${j}\`""`),g.push("-ArgumentList",q.join(","));A.target=mI1.from(g.join(" "),"utf16le").toString("base64")}else{if(u)F=u;else{let g=!jn0||jn0==="/",j=!1;try{await gn0.access(CI1,lI1.X_OK),j=!0}catch{}F=aVA.versions.electron??(uqA==="android"||g||!j)?"xdg-open":CI1}if(q.length>0)G.push(...q);if(!A.wait)w.stdio="ignore",w.detached=!0}if(uqA==="darwin"&&q.length>0)G.push("--args",...q);if(A.target)G.push(A.target);let Q=vI1.spawn(F,G,w);if(A.wait)return new Promise((g,j)=>{Q.once("error",j),Q.once("close",(K)=>{if(!A.allowNonzeroExitCode&&K>0){j(Error(`Exited with code ${K}`));return}g(Q)})});return Q.unref(),Q},GI3=(A,u)=>{if(typeof A!=="string")throw TypeError("Expected a `target`");return grA({...u,target:A})},qqA,FqA;var jrA=k(()=>{LVA();Qn0();uaA();uI3=AI3.promisify(vI1.execFile),jn0=yI1.dirname(eT3(import.meta.url)),CI1=yI1.join(jn0,"xdg-open"),{platform:uqA,arch:fI1}=aVA,qI3=(()=>{let u;return async function(){if(u)return u;let q="/etc/wsl.conf",F=!1;try{await gn0.access(q,lI1.F_OK),F=!0}catch{}if(!F)return"/mnt/";let G=await gn0.readFile(q,{encoding:"utf8"}),w=/(?<!#.*)root\s*=\s*(?<mountPoint>.*)/g.exec(G);if(!w)return"/mnt/";return u=w.groups.mountPoint.trim(),u=u.endsWith("/")?u:`${u}/`,u}})();qqA={};oY(qqA,"chrome",()=>Kn0({darwin:"google chrome",win32:"chrome",linux:["google-chrome","google-chrome-stable","chromium"]},{wsl:{ia32:"/mnt/c/Program Files (x86)/Google/Chrome/Application/chrome.exe",x64:["/mnt/c/Program Files/Google/Chrome/Application/chrome.exe","/mnt/c/Program Files (x86)/Google/Chrome/Application/chrome.exe"]}}));oY(qqA,"firefox",()=>Kn0({darwin:"firefox",win32:"C:\\Program Files\\Mozilla Firefox\\firefox.exe",linux:"firefox"},{wsl:"/mnt/c/Program Files/Mozilla Firefox/firefox.exe"}));oY(qqA,"edge",()=>Kn0({darwin:"microsoft edge",win32:"msedge",linux:["microsoft-edge","microsoft-edge-dev"]},{wsl:"/mnt/c/Program Files (x86)/Microsoft/Edge/Application/msedge.exe"}));oY(qqA,"browser",()=>"browser");oY(qqA,"browserPrivate",()=>"browserPrivate");FqA=GI3});function Un0(A){let u=A.children??A.href;return(()=>{var q=QA("text");return I(q,"onMouseUp",()=>{FqA(A.href).catch(()=>{})}),BA(q,u),yA((F)=>I(q,"fg",A.fg,F)),q})()}var iI1=k(async()=>{jrA();await Z0([TA(),TA(),TA(),TA()])});function D7(A){return A()}import wI3 from"path";function cI1(A){let[u,...q]=A.split("/");return{providerID:u,modelID:q.join("/")}}var jg,dI1;var FP=k(async()=>{mF();K6();pw();nJ();await Z0([gU(),gg(),Sq(),R3(),Qz(),s3A(),JQ(),Bq()]);({use:jg,provider:dI1}=_8({name:"Local",init:()=>{let A=$4(),u=T4(),q=cg();function F(K){return!!A.data.provider.find((_)=>_.id===K.providerID)?.models[K.modelID]}function G(...K){for(let U of K){let _=U();if(!_)continue;if(F(_))return _}}let w=D7(()=>{let K=hA(()=>A.data.agent.filter((Y)=>Y.mode!=="subagent"&&!Y.hidden)),U=hA(()=>A.data.agent.filter((Y)=>!Y.hidden)),[_,O]=u4({current:void 0}),{theme:W}=r2(),X=hA(()=>[W.secondary,W.accent,W.success,W.warning,W.primary,W.error,W.info]);return{list(){return K()},current(){return K().find((Y)=>Y.name===_.current)??K().at(0)},set(Y){if(!K().some(($)=>$.name===Y))return q.show({variant:"warning",message:`Agent not found: ${Y}`,duration:3000});O("current",Y)},move(Y){X7(()=>{let $=this.current();if(!$)return;let V=K().findIndex((Z)=>Z.name===$.name)+Y;if(V<0)V=K().length-1;if(V>=K().length)V=0;let H=K()[V];O("current",H.name)})},color(Y){let $=U().findIndex((H)=>H.name===Y);if($===-1)return X()[0];let V=U()[$];if(V?.color){let H=V.color;if(H.startsWith("#"))return C2.fromHex(H);return W[H]}return X()[$%X().length]}}}),Q=D7(()=>{let[K,U]=u4({ready:!1,model:{},recent:[],favorite:[],variant:{}}),_=wI3.join(j2.Path.state,"model.json"),O={pending:!1};function W(){if(!K.ready){O.pending=!0;return}O.pending=!1,Bu.writeJson(_,{recent:K.recent,favorite:K.favorite,variant:K.variant})}Bu.readJson(_).then((V)=>{if(Array.isArray(V.recent))U("recent",V.recent);if(Array.isArray(V.favorite))U("favorite",V.favorite);if(typeof V.variant==="object"&&V.variant!==null)U("variant",V.variant)}).catch(()=>{}).finally(()=>{if(U("ready",!0),O.pending)W()});let X=qP(),Y=hA(()=>{if(X.model){let{providerID:B,modelID:z}=cI1(X.model);if(F({providerID:B,modelID:z}))return{providerID:B,modelID:z}}if(A.data.config.model){let{providerID:B,modelID:z}=cI1(A.data.config.model);if(F({providerID:B,modelID:z}))return{providerID:B,modelID:z}}for(let B of K.recent)if(F(B))return B;let V=A.data.provider[0];if(!V)return;let H=A.data.provider_default[V.id],Z=Object.values(V.models)[0],N=H??Z?.id;if(!N)return;return{providerID:V.id,modelID:N}}),$=hA(()=>{let V=w.current();return G(()=>V&&K.model[V.name],()=>V&&V.model,Y)??void 0});return{current:$,get ready(){return K.ready},recent(){return K.recent},favorite(){return K.favorite},parsed:hA(()=>{let V=$();if(!V)return{provider:"Connect a provider",model:"No provider selected",reasoning:!1};let H=A.data.provider.find((N)=>N.id===V.providerID),Z=H?.models[V.modelID];return{provider:H?.name??V.providerID,model:Z?.name??V.modelID,reasoning:Z?.capabilities?.reasoning??!1}}),cycle(V){let H=$();if(!H)return;let Z=K.recent,N=Z.findIndex((L)=>L.providerID===H.providerID&&L.modelID===H.modelID);if(N===-1)return;let B=N+V;if(B<0)B=Z.length-1;if(B>=Z.length)B=0;let z=Z[B];if(!z)return;let M=w.current();if(!M)return;U("model",M.name,{...z})},cycleFavorite(V){let H=K.favorite.filter((L)=>F(L));if(!H.length){q.show({variant:"info",message:"Add a favorite model to use this shortcut",duration:3000});return}let Z=$(),N=-1;if(Z)N=H.findIndex((L)=>L.providerID===Z.providerID&&L.modelID===Z.modelID);if(N===-1)N=V===1?0:H.length-1;else{if(N+=V,N<0)N=H.length-1;if(N>=H.length)N=0}let B=H[N];if(!B)return;let z=w.current();if(!z)return;U("model",z.name,{...B});let M=KyA([B,...K.recent],(L)=>`${L.providerID}/${L.modelID}`);if(M.length>10)M.pop();U("recent",M.map((L)=>({providerID:L.providerID,modelID:L.modelID}))),W()},set(V,H){X7(()=>{if(!F(V)){q.show({message:`Model ${V.providerID}/${V.modelID} is not valid`,variant:"warning",duration:3000});return}let Z=w.current();if(!Z)return;if(U("model",Z.name,V),H?.recent){let N=KyA([V,...K.recent],(B)=>`${B.providerID}/${B.modelID}`);if(N.length>10)N.pop();U("recent",N.map((B)=>({providerID:B.providerID,modelID:B.modelID}))),W()}})},toggleFavorite(V){X7(()=>{if(!F(V)){q.show({message:`Model ${V.providerID}/${V.modelID} is not valid`,variant:"warning",duration:3000});return}let Z=K.favorite.some((N)=>N.providerID===V.providerID&&N.modelID===V.modelID)?K.favorite.filter((N)=>N.providerID!==V.providerID||N.modelID!==V.modelID):[V,...K.favorite];U("favorite",Z.map((N)=>({providerID:N.providerID,modelID:N.modelID}))),W()})},variant:{selected(){let V=$();if(!V)return;let H=`${V.providerID}/${V.modelID}`;return K.variant[H]},current(){let V=this.selected();if(!V)return;if(!this.list().includes(V))return;return V},list(){let V=$();if(!V)return[];let Z=A.data.provider.find((N)=>N.id===V.providerID)?.models[V.modelID];if(!Z?.variants)return[];return Object.keys(Z.variants)},set(V){let H=$();if(!H)return;let Z=`${H.providerID}/${H.modelID}`;U("variant",Z,V??"default"),W()},cycle(){let V=this.list();if(V.length===0)return;let H=this.current();if(!H){this.set(V[0]);return}let Z=V.indexOf(H);if(Z===-1||Z===V.length-1){this.set(void 0);return}this.set(V[Z+1])}}}}),g={isEnabled(K){return A.data.mcp[K]?.status==="connected"},async toggle(K){if(A.data.mcp[K]?.status==="connected")await u.client.mcp.disconnect({name:K});else await u.client.mcp.connect({name:K})}};return H4(()=>{let K=w.current();if(!K)return;if(K.model)if(F(K.model))Q.set({providerID:K.model.providerID,modelID:K.model.modelID});else q.show({variant:"warning",message:`Agent ${K.name}'s configured model ${K.model.providerID}/${K.model.modelID} is not valid`,duration:3000})}),{model:Q,agent:w,mcp:g}}}))});function KrA(){let A=jg(),u=U5(),q=hA(()=>{return[{value:"default",title:"Default",onSelect:()=>{u.clear(),A.model.variant.set(void 0)}},...A.model.variant.list().map((F)=>({value:F,title:F,onSelect:()=>{u.clear(),A.model.variant.set(F)}}))]});return JA(P3,{get options(){return q()},title:"Select variant",get current(){return A.model.variant.selected()},flat:!0})}var _n0=k(async()=>{K6();await Z0([TA(),FP(),ij(),w7()])});function GqA(){let A=$4();return hA(()=>A.data.provider.some((u)=>u.id!=="opencode"||Object.values(u.models).some((q)=>q.cost?.input!==0)))}var UrA=k(async()=>{K6();await gg()});function wqA(A){let u=jg(),q=$4(),F=U5(),G=r7(),[w,Q]=g2(""),g=GqA(),j=Wn0(),K=hA(()=>g()&&!A.providerID),U=hA(()=>{let X=w().trim(),Y=K()&&X.length===0,$=g()?u.model.favorite():[],V=u.model.recent();function H(M,L){if(!Y)return[];return M.flatMap((x)=>{let P=q.data.provider.find((C)=>C.id===x.providerID);if(!P)return[];let D=P.models[x.modelID];if(!D)return[];return[{key:x,value:{providerID:P.id,modelID:D.id},title:D.name??x.modelID,description:P.name,category:L,disabled:P.id==="opencode"&&D.id.includes("-nano"),footer:D.cost?.input===0&&P.id==="opencode"?"Free":void 0,onSelect:()=>{W(P.id,D.id)}}]})}let Z=H($,"Favorites"),N=H(V.filter((M)=>!$.some((L)=>L.providerID===M.providerID&&L.modelID===M.modelID)),"Recent"),B=lF(q.data.provider,zW((M)=>M.id!=="opencode",(M)=>M.name),LJA((M)=>lF(M.models,Op(),Lk(([L,x])=>x.status!=="deprecated"),Lk(([L,x])=>A.providerID?x.providerID===A.providerID:!0),Ky(([L,x])=>({value:{providerID:M.id,modelID:L},title:x.name??L,description:$.some((P)=>P.providerID===M.id&&P.modelID===L)?"(Favorite)":void 0,category:g()?M.name:void 0,disabled:M.id==="opencode"&&L.includes("-nano"),footer:x.cost?.input===0&&M.id==="opencode"?"Free":void 0,onSelect(){W(M.id,L)}})),Lk((L)=>{if(!Y)return!0;if($.some((x)=>x.providerID===L.value.providerID&&x.modelID===L.value.modelID))return!1;if(V.some((x)=>x.providerID===L.value.providerID&&x.modelID===L.value.modelID))return!1;return!0}),zW((L)=>L.footer!=="Free",(L)=>L.title)))),z=!g()?lF(j(),Ky((M)=>({...M,category:"Popular providers"})),IM0(6)):[];if(X)return[...Jn0.go(X,B,{keys:["title","category"]}).map((M)=>M.obj),...Jn0.go(X,z,{keys:["title"]}).map((M)=>M.obj)];return[...Z,...N,...B,...z]}),_=hA(()=>A.providerID?q.data.provider.find((X)=>X.id===A.providerID):null),O=hA(()=>{let X=_();if(!X)return"Select model";return X.name});function W(X,Y){u.model.set({providerID:X,modelID:Y},{recent:!0});let $=u.model.variant.list(),V=u.model.variant.selected();if(V==="default"||V&&$.includes(V)){F.clear();return}if($.length>0){F.replace(()=>JA(KrA,{}));return}F.clear()}return JA(P3,{get options(){return U()},get keybind(){return[{keybind:G.all.model_provider_list?.[0],title:g()?"Connect provider":"View all providers",onTrigger(){F.replace(()=>JA(or,{}))}},{keybind:G.all.model_favorite_toggle?.[0],title:"Favorite",disabled:!g(),onTrigger:(X)=>{u.model.toggleFavorite(X.value)}}]},onFilter:Q,flat:!0,skipFilter:!0,get title(){return O()},get current(){return u.model.current()}})}var Jn0;var On0=k(async()=>{K6();pw();await Z0([TA(),FP(),gg(),ij(),w7(),_rA(),_n0(),pY(),UrA()]);Jn0=A2(e3A(),1)});var QI3=(A,u)=>Array.isArray(A)?A.includes(u):A.has(u),nI1=(A,u)=>QI3(A,u);function Wn0(){let A=$4(),u=U5(),q=T4(),F=cg(),{theme:G}=r2(),w=GqA();return hA(()=>{return lF(A.data.provider_next.all,Lk((g)=>g.id!=="opencode"),zW((g)=>pI1[g.id]??99),Ky((g)=>{let j=nI1(A.data.console_state.consoleManagedProviders,g.id),K=A.data.provider_next.connected.includes(g.id);return{title:g.name,value:g.id,description:{anthropic:"(API key)",openai:"(ChatGPT Plus/Pro or API key)"}[g.id],footer:j?A.data.console_state.activeOrgName:void 0,category:g.id in pI1?"Popular":"Other",gutter:K&&w()?()=>(()=>{var U=QA("text");return UA(U,aA("\u2713")),yA((_)=>I(U,"fg",G.success,_)),U})():void 0,async onSelect(){if(j)return;let U=A.data.provider_auth[g.id]??[{type:"api",label:"API key"}],_=0;if(U.length>1)_=await new Promise((W)=>{u.replace(()=>JA(P3,{title:"Select auth method",get options(){return U.map((X,Y)=>({title:X.label,value:Y}))},onSelect:(X)=>W(X.value)}),()=>W(null))});if(_==null)return;let O=U[_];if(O.type==="oauth"){let W;if(O.prompts?.length){let Y=await aI1({dialog:u,prompts:O.prompts});if(!Y)return;W=Y}let X=await q.client.provider.oauth.authorize({providerID:g.id,method:_,inputs:W});if(X.error){F.show({variant:"error",message:JSON.stringify(X.error)}),u.clear();return}if(X.data?.method==="code")u.replace(()=>JA(jI3,{get providerID(){return g.id},get title(){return O.label},index:_,get authorization(){return X.data}}));if(X.data?.method==="auto")u.replace(()=>JA(gI3,{get providerID(){return g.id},get title(){return O.label},index:_,get authorization(){return X.data}}))}if(O.type==="api"){let W;if(O.prompts?.length){let X=await aI1({dialog:u,prompts:O.prompts});if(!X)return;W=X}return u.replace(()=>JA(KI3,{get providerID(){return g.id},get title(){return O.label},metadata:W}))}}}}))})}function or(){let A=Wn0();return JA(P3,{title:"Connect a provider",get options(){return A()}})}function gI3(A){let{theme:u}=r2(),q=T4(),F=U5(),G=$4(),w=cg();return q4((Q)=>{if(Q.name==="c"&&!Q.ctrl&&!Q.meta){let g=A.authorization.instructions.match(/[A-Z0-9]{4}-[A-Z0-9]{4,5}/)?.[0]??A.authorization.url;rW(g).then(()=>w.show({message:"Copied to clipboard",variant:"info"})).catch(w.error)}}),fu(async()=>{if((await q.client.provider.oauth.callback({providerID:A.providerID,method:A.index})).error){F.clear();return}await q.client.instance.dispose(),await G.bootstrap(),F.replace(()=>JA(wqA,{get providerID(){return A.providerID}}))}),(()=>{var Q=QA("box"),g=QA("box"),j=QA("text"),K=QA("text"),U=QA("box"),_=QA("text"),O=QA("text"),W=QA("text"),X=aA("c "),Y=QA("span");return UA(Q,g),UA(Q,U),UA(Q,O),UA(Q,W),I(Q,"paddingLeft",2),I(Q,"paddingRight",2),I(Q,"gap",1),I(Q,"paddingBottom",1),UA(g,j),UA(g,K),I(g,"flexDirection","row"),I(g,"justifyContent","space-between"),BA(j,()=>A.title),UA(K,aA("esc")),I(K,"onMouseUp",()=>F.clear()),UA(U,_),I(U,"gap",1),BA(U,JA(Un0,{get href(){return A.authorization.url},get fg(){return u.primary}}),_),BA(_,()=>A.authorization.instructions),UA(O,aA("Waiting for authorization...")),UA(W,X),UA(W,Y),UA(Y,aA("copy")),yA(($)=>{var V=E6.BOLD,H=u.text,Z=u.textMuted,N=u.textMuted,B=u.textMuted,z=u.text,M={fg:u.textMuted};return V!==$.e&&($.e=I(j,"attributes",V,$.e)),H!==$.t&&($.t=I(j,"fg",H,$.t)),Z!==$.a&&($.a=I(K,"fg",Z,$.a)),N!==$.o&&($.o=I(_,"fg",N,$.o)),B!==$.i&&($.i=I(O,"fg",B,$.i)),z!==$.n&&($.n=I(W,"fg",z,$.n)),M!==$.s&&($.s=I(Y,"style",M,$.s)),$},{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0,n:void 0,s:void 0}),Q})()}function jI3(A){let{theme:u}=r2(),q=T4(),F=$4(),G=U5(),[w,Q]=g2(!1);return JA(rY,{get title(){return A.title},placeholder:"Authorization code",onConfirm:async(g)=>{let{error:j}=await q.client.provider.oauth.callback({providerID:A.providerID,method:A.index,code:g});if(!j){await q.client.instance.dispose(),await F.bootstrap(),G.replace(()=>JA(wqA,{get providerID(){return A.providerID}}));return}Q(!0)},description:()=>(()=>{var g=QA("box"),j=QA("text");return UA(g,j),I(g,"gap",1),BA(j,()=>A.authorization.instructions),BA(g,JA(Un0,{get href(){return A.authorization.url},get fg(){return u.primary}}),null),BA(g,JA(R0,{get when(){return w()},get children(){var K=QA("text");return UA(K,aA("Invalid code")),yA((U)=>I(K,"fg",u.error,U)),K}}),null),yA((K)=>I(j,"fg",u.textMuted,K)),g})()})}function KI3(A){let u=U5(),q=T4(),F=$4();return JA(rY,{get title(){return A.title},placeholder:"API key",onConfirm:async(G)=>{if(!G)return;await q.client.auth.set({providerID:A.providerID,auth:{type:"api",key:G,...A.metadata?{metadata:A.metadata}:{}}}),await q.client.instance.dispose(),await F.bootstrap(),u.replace(()=>JA(wqA,{get providerID(){return A.providerID}}))}})}async function aI1(A){let u={};for(let q of A.prompts){if(q.when){let G=u[q.when.key];if(G===void 0)continue;if(!(q.when.op==="eq"?G===q.when.value:G!==q.when.value))continue}if(q.type==="select"){let G=await new Promise((w)=>{A.dialog.replace(()=>JA(P3,{get title(){return q.message},get options(){return q.options.map((Q)=>({title:Q.label,value:Q.value,description:Q.hint}))},onSelect:(Q)=>w(Q.value)}),()=>w(null))});if(G===null)return null;u[q.key]=G;continue}let F=await new Promise((G)=>{A.dialog.replace(()=>JA(rY,{get title(){return q.message},get placeholder(){return q.placeholder},onConfirm:(w)=>G(w)}),()=>G(null))});if(F===null)return null;u[q.key]=F}return u}var pI1;var _rA=k(async()=>{K6();pw();AC();await Z0([TA(),TA(),TA(),TA(),TA(),TA(),TA(),gg(),ij(),w7(),JQ(),nVA(),iI1(),Sq(),Bq(),On0(),TA(),Qz(),UrA()]);pI1={openai:1,"github-copilot":2,anthropic:3,google:4}});var jz="27.4.53",rI1="-desktop";function sJ(A){return A.trim().replace(/^v/,"")}function oVA(A){return sJ(A).endsWith(UI3)}function QC(A){let u=sJ(A);return rVA.default.valid(u)??rVA.default.coerce(u)?.version}function Xn0(A,u){let q=QC(A),F=QC(u);if(q&&F)return rVA.default.eq(q,F);return sJ(A)===sJ(u)}function JrA(A,u){if(Xn0(A,u))return!1;let q=QC(A),F=QC(u);if(q&&F)return rVA.default.gt(F,q);return sJ(A)!==sJ(u)}var rVA,I4,sY,QqA,UI3;var cj=k(()=>{rVA=A2(Nw(),1),I4=typeof CODEPLANE_VERSION==="string"?CODEPLANE_VERSION:"local",sY=typeof CODEPLANE_CHANNEL==="string"?CODEPLANE_CHANNEL:"local",QqA=sY==="local",UI3=rI1});function oI1(A){let u=m7(),q=vq(),F=async()=>{await A.onBeforeExit?.(),q.setTerminalTitle(""),q.destroy(),HaA(),await A.onExit()};q4((U)=>{if(U.ctrl&&U.name==="c")F()});let[G,w]=g2(!1),Q=new URL("https://github.com/anomalyco/codeplane/issues/new?template=bug-report.yml"),g=A.mode==="light",j={bg:g?"#ffffff":"#0a0a0a",text:g?"#1a1a1a":"#eeeeee",muted:g?"#8a8a8a":"#808080",primary:g?"#3b7dd8":"#fab283"};if(A.error.message)Q.searchParams.set("title",`opentui: fatal: ${A.error.message}`);if(A.error.stack)Q.searchParams.set("description","```\n"+A.error.stack.substring(0,6000-Q.toString().length)+"...\n```");Q.searchParams.set("opencode-version",I4);let K=()=>{rW(Q.toString()).then(()=>{w(!0)})};return(()=>{var U=QA("box"),_=QA("box"),O=QA("text"),W=QA("box"),X=QA("text"),Y=QA("box"),$=QA("text"),V=QA("box"),H=QA("text"),Z=QA("box"),N=QA("text"),B=QA("scrollbox"),z=QA("text"),M=QA("text");return UA(U,_),UA(U,Y),UA(U,B),UA(U,M),I(U,"flexDirection","column"),I(U,"gap",1),UA(_,O),UA(_,W),I(_,"flexDirection","row"),I(_,"gap",1),I(_,"alignItems","center"),UA(O,aA("Please report an issue.")),UA(W,X),I(W,"onMouseUp",K),I(W,"padding",1),UA(X,aA("Copy issue URL (exception info pre-filled)")),BA(_,(()=>{var L=v2(()=>!!G());return()=>L()&&(()=>{var x=QA("text");return UA(x,aA("Successfully copied")),yA((P)=>I(x,"fg",j.muted,P)),x})()})(),null),UA(Y,$),UA(Y,V),UA(Y,Z),I(Y,"flexDirection","row"),I(Y,"gap",2),I(Y,"alignItems","center"),UA($,aA("A fatal error occurred!")),UA(V,H),I(V,"padding",1),UA(H,aA("Reset TUI")),UA(Z,N),I(Z,"onMouseUp",F),I(Z,"padding",1),UA(N,aA("Exit")),UA(B,z),BA(z,()=>A.error.stack),BA(M,()=>A.error.message),yA((L)=>{var x=j.bg,P=E6.BOLD,D=j.text,C=j.primary,y=E6.BOLD,S=j.bg,f=j.text,r=A.reset,l=j.primary,o=j.bg,a=j.primary,n=j.bg,s=Math.floor(u().height*0.7),t=RB(),b=j.muted,p=j.text;return x!==L.e&&(L.e=I(U,"backgroundColor",x,L.e)),P!==L.t&&(L.t=I(O,"attributes",P,L.t)),D!==L.a&&(L.a=I(O,"fg",D,L.a)),C!==L.o&&(L.o=I(W,"backgroundColor",C,L.o)),y!==L.i&&(L.i=I(X,"attributes",y,L.i)),S!==L.n&&(L.n=I(X,"fg",S,L.n)),f!==L.s&&(L.s=I($,"fg",f,L.s)),r!==L.h&&(L.h=I(V,"onMouseUp",r,L.h)),l!==L.r&&(L.r=I(V,"backgroundColor",l,L.r)),o!==L.d&&(L.d=I(H,"fg",o,L.d)),a!==L.l&&(L.l=I(Z,"backgroundColor",a,L.l)),n!==L.u&&(L.u=I(N,"fg",n,L.u)),s!==L.c&&(L.c=I(B,"height",s,L.c)),t!==L.w&&(L.w=I(B,"scrollAcceleration",t,L.w)),b!==L.m&&(L.m=I(z,"fg",b,L.m)),p!==L.f&&(L.f=I(M,"fg",p,L.f)),L},{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0,n:void 0,s:void 0,h:void 0,r:void 0,d:void 0,l:void 0,u:void 0,c:void 0,w:void 0,m:void 0,f:void 0}),U})()}var sI1=k(async()=>{AC();K6();cj();NaA();await Z0([TA(),TA(),TA(),TA(),TA(),TA(),TA(),Bq(),TA(),ar()])});function eI1(A){let{theme:u}=r2();return(()=>{var q=QA("box"),F=QA("text"),G=aA("Unknown plugin route: "),w=QA("box"),Q=QA("text");return UA(q,F),UA(q,w),I(q,"width","100%"),I(q,"height","100%"),I(q,"alignItems","center"),I(q,"justifyContent","center"),I(q,"flexDirection","column"),I(q,"gap",1),UA(F,G),BA(F,()=>A.id,null),UA(w,Q),I(w,"paddingLeft",1),I(w,"paddingRight",1),UA(Q,aA("go home")),yA((g)=>{var j=u.warning,K=A.onHome,U=u.backgroundElement,_=u.text;return j!==g.e&&(g.e=I(F,"fg",j,g.e)),K!==g.t&&(g.t=I(w,"onMouseUp",K,g.t)),U!==g.a&&(g.a=I(w,"backgroundColor",U,g.a)),_!==g.o&&(g.o=I(Q,"fg",_,g.o)),g},{e:void 0,t:void 0,a:void 0,o:void 0}),q})()}var Ak1=k(async()=>{await Z0([TA(),TA(),TA(),TA(),TA(),TA(),Sq()])});import{Database as Yn0}from"bun:sqlite";import uk1 from"os";import sr from"path";async function Fk1(A,u=process.cwd()){let q=XI3(A,u);if(q.type!=="row")return q;let F=q.row;if(!F.buffer_path)return{type:"empty"};let G=YI3(A,F);if(G.type!=="selections")return G;let w=G.selections.flatMap((K)=>{if(K.selection_start==null||K.selection_end==null)return[];return[{start:Math.min(K.selection_start,K.selection_end),end:Math.max(K.selection_start,K.selection_end)}]}).sort((K,U)=>K.start-U.start||K.end-U.end);if(w.length===0)return{type:"unavailable"};let Q=$I3(A,F),g=Q.type==="contents"&&Q.contents!=null?Q.contents:await Bun.file(F.buffer_path).text().catch(()=>{return});if(g==null)return{type:"unavailable"};let j=w.map((K)=>{let U=qk1(g,K.start),_=qk1(g,K.end);return{text:g.slice(U,_),selection:BI3(g,U,_)}});return{type:"selection",selection:{filePath:F.buffer_path,source:"zed",ranges:j}}}function XI3(A,u){let q;try{q=new Yn0(A,{readonly:!0});let F=q.query(`select
|
|
743
743
|
i.kind as item_kind,
|
|
744
744
|
e.item_id as editor_id,
|
|
745
745
|
i.workspace_id as workspace_id,
|
|
@@ -5274,9 +5274,9 @@ Tried to update to v${p}. The server's /global/upgrade returned this. Re-run aft
|
|
|
5274
5274
|
`)G=!1,u+=g;continue}if(w){if(g==="*"&&j==="/"){w=!1,Q++;continue}if(g===`
|
|
5275
5275
|
`)u+=g;continue}if(q){if(u+=g,F){F=!1;continue}if(g==="\\"){F=!0;continue}if(g==='"')q=!1;continue}if(g==='"'){q=!0,u+=g;continue}if(g==="/"&&j==="/"){G=!0,Q++;continue}if(g==="/"&&j==="*"){w=!0,Q++;continue}u+=g}return u}function Ba7(A){try{return JSON.parse(A)}catch{}try{return JSON.parse(Na7(A).replace(/,\s*([}\]])/g,"$1"))}catch{}}async function Ma7(){for(let A of Ha7){let u=iH.join(TV.paths().config,A),q=await fU.readFile(u,"utf8").catch(()=>"");if(!q.trim())continue;try{let F=Ba7(q);if(!F||typeof F!=="object"||!("npm"in F))continue;let G=F.npm;if(!G||typeof G!=="object")continue;return{registry:iT2(typeof G.registry==="string"?G.registry:void 0),token:typeof G.token==="string"?G.token.trim()||void 0:void 0,alwaysAuth:G.always_auth===!0}}catch{}}}async function M0u(){let A=await Ma7();if(A)return A;return{registry:iT2(process.env.CODEPLANE_NPM_REGISTRY?.trim()||process.env.npm_config_registry?.trim()),token:void 0,alwaysAuth:void 0}}function L0u(){if(process.arch==="arm64")return"arm64";return"x64"}function cT2(){if(process.platform==="darwin")return"darwin";if(process.platform==="win32")return"windows";return"linux"}function Ea7(){if(cT2()!=="linux")return!1;try{if($A("fs").existsSync("/etc/alpine-release"))return!0}catch{}try{let A=yT2("ldd",["--version"],{encoding:"utf8",timeout:1500});return`${A.stdout||""}${A.stderr||""}`.toLowerCase().includes("musl")}catch{return!1}}function za7(){if(L0u()!=="x64")return!0;let A=cT2();if(A==="darwin")try{let u=yT2("sysctl",["-n","hw.optional.avx2_0"],{encoding:"utf8",timeout:1500});return u.status===0&&(u.stdout||"").trim()==="1"}catch{return!1}if(A==="linux")try{let u=$A("fs").readFileSync("/proc/cpuinfo","utf8");return/(?:^|\s)avx2(?:\s|$)/i.test(u)}catch{return!1}if(A==="windows")for(let q of["powershell.exe","pwsh.exe","pwsh","powershell"])try{let F=yT2(q,["-NoProfile","-NonInteractive","-Command",'(Add-Type -MemberDefinition "[DllImport(""kernel32.dll"")] public static extern bool IsProcessorFeaturePresent(int ProcessorFeature);" -Name Kernel32 -Namespace Win32 -PassThru)::IsProcessorFeaturePresent(40)'],{encoding:"utf8",timeout:3000,windowsHide:!0});if(F.status!==0)continue;let G=(F.stdout||"").trim().toLowerCase();if(G==="true"||G==="1")return!0;if(G==="false"||G==="0")return!1}catch{continue}return!1}function xa7(A){return["codeplane",A.os,A.arch,A.baseline?"baseline":void 0,A.musl?"musl":void 0].filter(Boolean).join("-")}function kjA(){let A=cT2(),u=L0u(),q=Ea7(),F=u==="x64"&&!za7(),G=xa7({os:A,arch:u,musl:q,baseline:F});return{packageName:G,archiveName:`${G}.tgz`,archiveExt:".tgz",binaryName:A==="windows"?"codeplane.exe":"codeplane",os:A,arch:u}}function E0u(){return iH.join(TV.paths().bin,kjA().binaryName)}function z0u(A,u){return[iH.join(A,"bin",u),iH.join(A,u)]}async function A_0(A,u){for(let q of z0u(A,u))if(await dT2(q))return q}async function u_0(){let A=E0u(),u=await dT2(A),q=Md(await fU.readFile(N0u(),"utf8").catch(()=>""));return{cliInstalled:u,cliPath:A,cliVersion:q||void 0}}async function x0u(A){let u=Md(A.version);tT2(u,"installManagedCodeplaneCli");let q=kjA(),F=E0u(),G=iH.join(TV.paths().local_server_binaries,u),w=(A.binaryPath&&await dT2(A.binaryPath)?A.binaryPath:void 0)??await A_0(G,q.binaryName);if(!w)throw Error(`Codeplane ${u} binary not found in ${G}. Tried ${z0u(G,q.binaryName).join(" and ")}.`);let Q=await u_0();if(Q.cliInstalled&&Q.cliVersion===u)return{cliInstalled:!0,cliPath:F,version:u};let g=`${F}.tmp-${Date.now()}-${Math.random().toString(36).slice(2)}`;if(await fU.mkdir(iH.dirname(F),{recursive:!0}),await fU.copyFile(w,g),q.os!=="windows")await fU.chmod(g,493).catch(()=>{return});return await fU.rm(F,{force:!0}).catch(()=>{return}),await fU.rename(g,F),await fU.writeFile(N0u(),`${u}
|
|
5276
5276
|
`),{cliInstalled:!0,cliPath:F,version:u}}async function RkA(A=jz){let u=await fU.readFile(vT2(),"utf8").catch(()=>""),q=Md(u);return q&&lT2.test(q)?q:A}async function R0u(A){let u=Md(A);return tT2(u,"writePreferredLocalVersion"),await fU.mkdir(iH.dirname(vT2()),{recursive:!0}),await fU.writeFile(vT2(),`${u}
|
|
5277
|
-
`),u}async function D0u(A){let u=A.registry?{registry:iT2(A.registry)}:await M0u(),q=Md(A.version||"latest");if(q!=="latest"&&!lT2.test(q))throw Error(`Invalid version "${q}" requested for ${A.name}`);let F=new URL(`${La7(A.name)}/${q}`,u.registry),G=await B0u(F,{headers:{accept:"application/json",...u.token&&(u.alwaysAuth||F.origin===new URL(u.registry).origin)?{authorization:`Bearer ${u.token}`}:{}},description:`npm manifest ${A.name}@${q}`});if(!G.ok)throw Error(`npm registry lookup failed for ${A.name}@${q} with HTTP ${G.status}`);let w=await G.json();if(typeof w.version!=="string"||typeof w.dist?.tarball!=="string")throw Error(`npm registry payload for ${A.name}@${q} is missing version or tarball`);return{version:Md(w.version),tarball:w.dist.tarball,integrity:typeof w.dist.integrity==="string"?w.dist.integrity:void 0,shasum:typeof w.dist.shasum==="string"?w.dist.shasum:void 0}}function Ra7(A,u,q){let F=u.split(/\s+/).filter(Boolean),G;for(let w of F){let[Q,g]=w.split("-",2);if(!Q||!g)continue;try{let j=Z0u(Q).update(A).digest("base64");if(j===g)return;G=Error(`${Q} integrity mismatch for ${q}: expected ${g}, got ${j}`)}catch(j){G=j instanceof Error?j:Error(String(j))}}throw G??Error(`No supported algorithm in integrity field for ${q}: ${u}`)}function Da7(A,u,q){let F=Z0u("sha1").update(A).digest("hex");if(F!==u)throw Error(`sha1 shasum mismatch for ${q}: expected ${u}, got ${F}`)}async function q_0(A="latest"){return(await D0u({name:"codeplane-ai",version:A})).version}function Pa7(A,u){return new Promise((q,F)=>{let G=Xa7("tar",["-xzf",A,"-C",u,"--strip-components","1"],{stdio:"ignore",windowsHide:!0});G.on("error",F),G.on("exit",(w,Q)=>{if(w===0){q();return}F(Error(`tar exited with code ${w??Q??"unknown"} while extracting ${A}`))})})}async function P0u(A){let u=kjA(),q=Md(A.version);tT2(q,"installCodeplaneLocalPackage");let F=await M0u();A.progress?.({version:q,phase:"detect",message:`Detected ${u.os}/${u.arch}. Resolving ${u.packageName}@${q} from npm\u2026`,percent:4,binaryVersion:q});let G=await D0u({name:u.packageName,version:q,registry:F.registry});if(Md(G.version)!==q)throw Error(`npm resolved ${u.packageName}@${G.version} instead of ${q}`);let w=`${A.directory}.tmp-${Date.now()}`,Q=iH.join(w,"package"),g=iH.join(w,u.archiveName);await fU.rm(w,{recursive:!0,force:!0}),await fU.mkdir(Q,{recursive:!0}),A.progress?.({version:q,phase:"download",message:`Downloading ${u.packageName}@${q} from npm\u2026`,percent:8,binaryVersion:q});let j=new URL(G.tarball),K=await B0u(j,{redirect:"follow",headers:F.token&&(F.alwaysAuth||j.origin===new URL(F.registry).origin)?{authorization:`Bearer ${F.token}`}:void 0,description:`npm tarball ${u.packageName}@${q}`,signal:A.signal,timeoutMs:H0u});if(!K.ok)throw Error(`npm tarball download failed for ${u.packageName}@${q} with HTTP ${K.status}`);if(!K.body)throw Error(`npm tarball download for ${u.packageName}@${q} returned an empty body`);let U=Number(K.headers.get("content-length")??"0"),_=0,O=[],W=$a7.fromWeb(K.body),X=new Va7({transform(H,Z,N){_+=H.length,O.push(H),A.progress?.({version:q,phase:"download",message:`Downloading ${u.packageName}@${q}\u2026`,percent:U>0?Math.min(82,8+Math.round(_/U*72)):40,binaryVersion:q,transferred:_,total:U||void 0}),N(null,H)}});await Za7(W,X,Ya7(g));let Y=Buffer.concat(O);if(G.integrity)Ra7(Y,G.integrity,`${u.packageName}@${q}`);else if(G.shasum)Da7(Y,G.shasum,`${u.packageName}@${q}`);A.progress?.({version:q,phase:"extract",message:`Extracting ${u.packageName}@${q}\u2026`,percent:86,binaryVersion:q}),await Pa7(g,Q);let $=await A_0(Q,u.binaryName);if(!$)throw Error(`Extracted ${u.packageName}@${q} but binary ${u.binaryName} was not found in the package payload`);if(u.os!=="windows")await fU.chmod($,493).catch(()=>{return});await fU.rm(A.directory,{recursive:!0,force:!0}),await fU.rename(Q,A.directory),await fU.rm(w,{recursive:!0,force:!0});let V=iH.join(A.directory,iH.relative(Q,$));return A.progress?.({version:q,phase:"ready",message:`${u.packageName}@${q} is ready locally.`,percent:100,binaryVersion:q}),{binaryPath:V,packageName:u.packageName,target:u,version:q}}var Ha7,lT2,H0u,Md=(A)=>(A??"").toString().trim().replace(/^[vV]+/,""),vT2=()=>iH.join(TV.paths().local_server,"default-version"),N0u=()=>iH.join(TV.paths().bin,".codeplane-version"),La7=(A)=>{if(!A.startsWith("@"))return A;return A.replace("/","%2f")},dT2=(A)=>fU.access(A).then(()=>!0).catch(()=>!1);var DkA=k(()=>{uJA();Ha7=["codeplane.jsonc","codeplane.json","config.json"],lT2=/^\d+\.\d+\.\d+(?:-[\w.+-]+)?$/,H0u=Number(process.env.CODEPLANE_NPM_FETCH_TIMEOUT_MS)||120000});import Ta7 from"path";function T0u(A){let[u,q]=g2("Local Codeplane"),[F,G]=g2(""),[w,Q]=g2(void 0),[g,j]=g2(void 0),[K,U]=g2("label"),[_,O]=g2(void 0),[W,X]=g2(void 0),[Y,$]=g2(!1),V=hA(()=>!!_()||Y());fu(async()=>{try{let[z,M]=await Promise.all([A.service.localTarget(),q_0().catch(()=>{return})]);Q(z);let L=M??z.defaultVersion??"";if(G(L),L){let x=await A.service.localStatus(L);j(x)}}catch(z){X(z instanceof Error?z.message:String(z))}});let H=async()=>{if(!F())return;try{j(await A.service.localStatus(F()))}catch{j(void 0)}},Z=async()=>{if(V())return;X(void 0),O({phase:"detect",message:"preparing",percent:0,version:F()||"latest"});try{await A.service.installLocal(F()||void 0,(z)=>O(z)),O(void 0),await H()}catch(z){X(z instanceof Error?z.message:String(z)),O(void 0)}},N=async()=>{if(V())return;if(!u().trim()){X("Label is required"),U("label");return}$(!0);try{let z=(u().toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"")||"local").slice(0,32),M=z,L=1;while(A.takenIds.has(M))L+=1,M=`${z}-${L}`;let x={id:M,url:mT2(M),label:u().trim(),local:{binaryVersion:F()||""}};await A.service.save(x),A.onDone({instance:x})}catch(z){X(z instanceof Error?z.message:String(z))}finally{$(!1)}};q4((z)=>{if(V()){if(z.ctrl&&z.name==="c")A.onDone({cancel:!0});return}if(z.ctrl&&z.name==="c")return A.onDone({cancel:!0});if(z.name==="escape")return A.onDone({cancel:!0});if(z.name==="tab"){U((M)=>M==="label"?"version":"label");return}if(z.name==="up"){U((M)=>M==="version"?"label":"label");return}if(z.name==="down"){U((M)=>M==="label"?"version":"version");return}if(z.ctrl&&z.name==="s")return void N();if(z.ctrl&&z.name==="i")return void Z();if(z.name==="return"&&K()==="version")return void N();if(z.name==="return"&&K()==="label"){U("version");return}if(K()==="label"){if(z.name==="backspace"){q(u().slice(0,-1));return}if(z.ctrl&&z.name==="u"){q("");return}if(z.sequence&&!z.ctrl&&!z.meta&&z.sequence.length===1&&z.sequence.charCodeAt(0)>=32)q(u()+z.sequence)}else if(K()==="version"){if(z.name==="backspace"){G(F().slice(0,-1)),H();return}if(z.ctrl&&z.name==="u"){G(""),H();return}if(z.sequence&&!z.ctrl&&!z.meta&&z.sequence.length===1&&z.sequence.charCodeAt(0)>=32)G(F()+z.sequence),H()}});let B=hA(()=>{let z=g();if(!F())return"(uses saved preferred version)";if(!z)return"checking\u2026";if(z.installed)return`\u2713 installed at ${z.binaryPath?Ta7.basename(z.binaryPath):"known path"}`;return"not installed \u2014 Ctrl+I to install now or Ctrl+S to save & install on first use"});return(()=>{var z=QA("box"),M=QA("box"),L=QA("box"),x=QA("box");return UA(z,M),UA(z,L),UA(z,x),I(z,"flexDirection","column"),I(z,"flexGrow",1),BA(z,JA(U1A,{instance:"setup",cwd:"new local instance",status:"form",get statusColor(){return Q6.info}}),M),BA(z,JA(_1A,{children:"NEW LOCAL INSTANCE"}),M),I(M,"marginTop",1),BA(M,JA(Bd,{label:"Label",get value(){return u()},get focused(){return K()==="label"},placeholder:"Local Codeplane",hint:"shown in the picker",validate:()=>({ok:!!u().trim(),message:u().trim()?void 0:"required"})})),I(L,"marginTop",1),BA(L,JA(Bd,{label:"Binary version",get value(){return F()},get focused(){return K()==="version"},get placeholder(){return w()?.defaultVersion??"latest"},get hint(){return B()}})),BA(z,JA(R0,{get when(){return w()},get children(){var P=QA("box"),D=QA("text"),C=aA("target: "),y=aA("/"),S=aA(" \xB7 binary "),f=aA(" \xB7 ");return UA(P,D),I(P,"marginTop",1),I(P,"paddingX",2),UA(D,C),UA(D,y),UA(D,S),UA(D,f),BA(D,()=>w().os,y),BA(D,()=>w().arch,S),BA(D,()=>w().binaryName,f),BA(D,()=>w().archiveName,null),yA((r)=>I(D,"fg",Q6.fgDim,r)),P}}),x),BA(z,JA(R0,{get when(){return _()},get children(){var P=QA("box"),D=QA("box"),C=QA("text"),y=QA("text"),S=QA("box");return UA(P,D),UA(P,S),I(P,"marginTop",1),I(P,"flexDirection","column"),UA(D,C),UA(D,y),I(D,"paddingX",2),UA(C,aA("installing\u2026 ")),BA(y,()=>_().phase),BA(D,JA(R0,{get when(){return _().binaryVersion},get children(){var f=QA("text"),r=aA(" v");return UA(f,r),BA(f,()=>_().binaryVersion,null),yA((l)=>I(f,"fg",Q6.fgDim,l)),f}}),null),I(S,"marginTop",0),BA(S,JA($0u,{get percent(){return _().percent??0},get message(){return _().message}})),yA((f)=>{var r=Q6.accent,l=Q6.fgMuted;return r!==f.e&&(f.e=I(C,"fg",r,f.e)),l!==f.t&&(f.t=I(y,"fg",l,f.t)),f},{e:void 0,t:void 0}),P}}),x),BA(z,JA(R0,{get when(){return v2(()=>!!(!_()&&g()&&!g().installed))()&&F()},get children(){var P=QA("box");return I(P,"marginTop",1),BA(P,JA(J1A,{variant:"warn",children:"Binary not yet installed. Press Ctrl+I to install now, or Ctrl+S to save (it will install on first use)."})),P}}),x),BA(z,JA(R0,{get when(){return v2(()=>!_())()&&g()?.installed},get children(){var P=QA("box");return I(P,"marginTop",1),BA(P,JA(J1A,{variant:"success",children:"Binary installed and ready."})),P}}),x),BA(z,JA(R0,{get when(){return W()},get children(){var P=QA("box");return I(P,"marginTop",1),BA(P,JA(J1A,{variant:"error",get children(){return W()}})),P}}),x),I(x,"flexGrow",1),BA(z,JA(K1A,{hints:[{keys:"ctrl+s",label:"save"},{keys:"ctrl+i",label:"install now"},{keys:"tab",label:"next field"},{keys:"esc",label:"cancel"},{keys:"ctrl+c",label:"quit"}]}),null),yA((P)=>I(z,"backgroundColor",Q6.bg,P)),z})()}var I0u=k(async()=>{K6();DkA();await Z0([TA(),TA(),TA(),TA(),TA(),TA(),TA(),TA(),TA(),eU0()])});function k0u(A,u){return(A.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"")||u).slice(0,32)}function Ia7(A,u){return`Basic ${Buffer.from(`${A}:${u}`,"utf8").toString("base64")}`}function S0u(A){let[u,q]=g2(""),[F,G]=g2(""),[w,Q]=g2(""),[g,j]=g2(""),[K,U]=g2("label"),[_,O]=g2(void 0),[W,X]=g2(!1),[Y,$]=g2({status:"idle"}),V=hA(()=>W()||Y().status==="checking"),H=(D)=>D==="label"?u():D==="url"?F():D==="username"?w():g(),Z=(D)=>D==="label"?q:D==="url"?G:D==="username"?Q:j,N=()=>{let D=w().trim(),C=g();if(!D&&!C)return;return{Authorization:Ia7(D,C)}},B=()=>{let D=u().trim();if(!D){O("Label is required"),U("label");return}let C=F().trim();if(!C){O("URL is required"),U("url");return}if(!/^https?:\/\//i.test(C)){O("URL must start with http:// or https://"),U("url");return}let y=k0u(D,"remote"),S=y,f=1;while(A.takenIds.has(S))f+=1,S=`${y}-${f}`;return{id:S,url:C,label:D,headers:N()}},z=async()=>{if(V())return;O(void 0);let D=B();if(!D)return;$({status:"checking"});try{let C=await A.service.probe(D);if(!C.ok){$({status:"error",message:C.status?`HTTP ${C.status}`:C.error||"Unreachable"});return}$({status:"ok",version:C.version??void 0})}catch(C){$({status:"error",message:C instanceof Error?C.message:String(C)})}},M=async()=>{if(V())return;O(void 0);let D=B();if(!D)return;X(!0);try{await A.service.save(D),A.onDone({instance:D})}catch(C){O(C instanceof Error?C.message:String(C))}finally{X(!1)}},L=(D)=>{let y=(F_0.indexOf(K())+D+F_0.length)%F_0.length;U(F_0[y])};q4((D)=>{if(V()){if(D.ctrl&&D.name==="c")A.onDone({cancel:!0});return}if(D.ctrl&&D.name==="c")return A.onDone({cancel:!0});if(D.name==="escape")return A.onDone({cancel:!0});if(D.name==="tab")return L(1);if(D.name==="up")return L(-1);if(D.name==="down")return L(1);if(D.ctrl&&D.name==="s")return void M();if(D.ctrl&&D.name==="p")return void z();if(D.name==="return"){if(K()==="password")return void M();L(1);return}let C=K(),y=H,S=Z(C);if(D.name==="backspace"){if(S(y(C).slice(0,-1)),Y().status!=="idle")$({status:"idle"});return}if(D.ctrl&&D.name==="u"){if(S(""),Y().status!=="idle")$({status:"idle"});return}if(D.sequence&&!D.ctrl&&!D.meta&&D.sequence.length===1&&D.sequence.charCodeAt(0)>=32){if(S(y(C)+D.sequence),Y().status!=="idle")$({status:"idle"})}});let x=hA(()=>{let D=g();if(K()!=="password")return D?"\u2022".repeat(D.length):"";if(D.length===0)return"";return"\u2022".repeat(Math.max(0,D.length-1))+D.slice(-1)}),P=hA(()=>{let D=Y();if(D.status==="checking")return{variant:"info",text:"Probing /global/version\u2026"};if(D.status==="ok")return{variant:"success",text:D.version?`Server reachable. Reports v${D.version}.`:"Server reachable but did not return a version (auth proxy?). Check the URL or use `codeplane instance sign-in <id>` after saving."};if(D.status==="error")return{variant:"error",text:`Probe failed: ${D.message}`};return});return(()=>{var D=QA("box"),C=QA("box"),y=QA("box"),S=QA("box"),f=QA("box"),r=QA("box"),l=QA("box"),o=QA("text"),a=aA("Cloudflare Access / SSO? Save first, then run `codeplane instance sign-in "),n=aA("` from a shell to capture the cookie automatically.");return UA(D,C),UA(D,y),UA(D,S),UA(D,f),UA(D,r),UA(D,l),I(D,"flexDirection","column"),I(D,"flexGrow",1),BA(D,JA(U1A,{instance:"setup",cwd:"new remote instance",status:"form",get statusColor(){return Q6.info}}),C),BA(D,JA(_1A,{children:"NEW REMOTE INSTANCE"}),C),I(C,"marginTop",1),BA(C,JA(Bd,{label:"Label",get value(){return u()},get focused(){return K()==="label"},placeholder:"My Codeplane Server",hint:"shown in the picker",validate:()=>({ok:!!u().trim(),message:u().trim()?void 0:"required"})})),I(y,"marginTop",1),BA(y,JA(Bd,{label:"URL",get value(){return F()},get focused(){return K()==="url"},placeholder:"https://codeplane.example.com",hint:"https:// or http://",validate:()=>{let s=F().trim();if(!s)return{ok:!1,message:"required"};if(!/^https?:\/\//i.test(s))return{ok:!1,message:"must start with http:// or https://"};return{ok:!0}}})),I(S,"marginTop",1),BA(S,JA(Bd,{label:"Basic Auth username",get value(){return w()},get focused(){return K()==="username"},placeholder:"(optional)",hint:"leave empty if the server doesn't use Basic Auth"})),I(f,"marginTop",1),BA(f,JA(Bd,{label:"Basic Auth password",get value(){return x()},get focused(){return K()==="password"},placeholder:"(optional)",get hint(){return g()?"masked \u2014 Ctrl+U to clear":"leave empty if the server doesn't use Basic Auth"}})),BA(D,JA(R0,{get when(){return P()},get children(){var s=QA("box");return I(s,"marginTop",1),BA(s,JA(J1A,{get variant(){return P().variant},get children(){return P().text}})),s}}),r),BA(D,JA(R0,{get when(){return _()},get children(){var s=QA("box");return I(s,"marginTop",1),BA(s,JA(J1A,{variant:"error",get children(){return _()}})),s}}),r),I(r,"flexGrow",1),UA(l,o),I(l,"marginTop",1),I(l,"paddingX",2),UA(o,a),UA(o,n),BA(o,(()=>{var s=v2(()=>!!u().trim());return()=>s()?k0u(u().trim(),"remote"):"<id>"})(),n),BA(D,JA(K1A,{hints:[{keys:"ctrl+s",label:"save"},{keys:"ctrl+p",label:"probe"},{keys:"tab/\u2191\u2193",label:"navigate"},{keys:"esc",label:"cancel"},{keys:"ctrl+c",label:"quit"}]}),null),yA((s)=>{var t=Q6.bg,b=Q6.fgDim;return t!==s.e&&(s.e=I(D,"backgroundColor",t,s.e)),b!==s.t&&(s.t=I(o,"fg",b,s.t)),s},{e:void 0,t:void 0}),D})()}var F_0;var C0u=k(async()=>{K6();await Z0([TA(),TA(),TA(),TA(),TA(),TA(),TA(),TA(),TA(),eU0()]);F_0=["label","url","username","password"]});var b0u={};fA(b0u,{runBootWizard:()=>ha7});import nT2 from"path";import ka7 from"fs/promises";import{homedir as f0u}from"os";function h0u(A){let u=f0u();return A.startsWith(u)?"~"+A.slice(u.length):A}function Sa7(A){return q4((u)=>{if(A.busy){if(u.ctrl&&u.name==="c")A.onQuit();return}if(u.name==="up"||u.name==="k")A.onMove(-1);else if(u.name==="down"||u.name==="j")A.onMove(1);else if(u.name==="return")A.onPick(A.selected);else if(u.name==="n"||u.name==="l")A.onCreateLocal();else if(u.name==="r")A.onCreateRemote();else if(u.name==="d"||u.name==="delete")A.onDelete(A.selected);else if(u.name==="u")A.onUpdate(A.selected);else if(u.name==="q"||u.ctrl&&u.name==="c")A.onQuit()}),(()=>{var u=QA("box"),q=QA("box"),F=QA("box");return UA(u,q),UA(u,F),I(u,"flexDirection","column"),I(u,"flexGrow",1),BA(u,JA(U1A,{instance:"setup",get cwd(){return h0u(process.cwd())},status:"ready"}),q),BA(u,JA(_1A,{children:"SELECT A SERVER"}),q),BA(u,JA(R0,{get when(){return A.instances.length===0},get children(){var G=QA("box"),w=QA("text"),Q=QA("text"),g=QA("text"),j=QA("text"),K=QA("text");return UA(G,w),UA(G,Q),UA(G,g),UA(G,j),UA(G,K),I(G,"marginTop",1),I(G,"paddingX",2),I(G,"flexDirection","row"),UA(w,aA("No saved instances. Press ")),UA(Q,aA("n")),UA(g,aA(" for a local one or ")),UA(j,aA("r")),UA(K,aA(" for a remote one.")),yA((U)=>{var _=Q6.fgMuted,O=Q6.accent,W=Q6.fgMuted,X=Q6.accent,Y=Q6.fgMuted;return _!==U.e&&(U.e=I(w,"fg",_,U.e)),O!==U.t&&(U.t=I(Q,"fg",O,U.t)),W!==U.a&&(U.a=I(g,"fg",W,U.a)),X!==U.o&&(U.o=I(j,"fg",X,U.o)),Y!==U.i&&(U.i=I(K,"fg",Y,U.i)),U},{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0}),G}}),q),I(q,"flexDirection","column"),I(q,"marginTop",1),I(q,"paddingX",2),BA(q,JA(W5,{get each(){return A.instances},children:(G,w)=>{let Q=hA(()=>w()===A.selected),g=G.url.startsWith("local://")||!!G.local;return(()=>{var j=QA("box"),K=QA("box"),U=QA("text"),_=QA("text"),O=QA("text"),W=QA("text");return UA(j,K),I(j,"flexDirection","column"),UA(K,U),UA(K,_),UA(K,O),UA(K,W),I(K,"flexDirection","row"),BA(U,()=>Q()?"\u258D":" "),BA(_,` ${g?"local ":"remote"} `),BA(O,()=>G.label??G.id),BA(W,()=>` ${G.url}`),BA(j,JA(R0,{get when(){return Q()},get children(){var X=QA("box"),Y=QA("text");return UA(X,Y),I(X,"flexDirection","row"),I(X,"paddingLeft",4),BA(Y,()=>g?`binary ${G.local?.binaryVersion||"auto"} \xB7 starts on demand`:"tls verify enabled \xB7 no custom headers"),yA(($)=>I(Y,"fg",Q6.fgDim,$)),X}}),null),yA((X)=>{var Y=Q()?Q6.accent:Q6.divider,$=g?Q6.success:Q6.info,V=Q()?Q6.accent:Q6.fgMuted,H=Q()?E6.BOLD:0,Z=Q6.fgDim;return Y!==X.e&&(X.e=I(U,"fg",Y,X.e)),$!==X.t&&(X.t=I(_,"fg",$,X.t)),V!==X.a&&(X.a=I(O,"fg",V,X.a)),H!==X.o&&(X.o=I(O,"attributes",H,X.o)),Z!==X.i&&(X.i=I(W,"fg",Z,X.i)),X},{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0}),j})()}})),BA(u,JA(R0,{get when(){return A.notice},get children(){var G=QA("box"),w=QA("text"),Q=QA("text");return UA(G,w),UA(G,Q),I(G,"marginTop",1),I(G,"paddingX",2),I(G,"flexDirection","row"),BA(w,(()=>{var g=v2(()=>A.notice.variant==="success");return()=>g()?"\u2713 ":v2(()=>A.notice.variant==="error")()?"\u2717 ":A.notice.variant==="warn"?"! ":"i "})()),BA(Q,()=>A.notice.message),yA((g)=>{var j=A.notice.variant==="success"?Q6.success:A.notice.variant==="error"?Q6.warn:A.notice.variant==="warn"?Q6.warn:Q6.info,K=Q6.fg;return j!==g.e&&(g.e=I(w,"fg",j,g.e)),K!==g.t&&(g.t=I(Q,"fg",K,g.t)),g},{e:void 0,t:void 0}),G}}),F),BA(u,JA(R0,{get when(){return A.busy},get children(){var G=QA("box"),w=QA("text"),Q=QA("text");return UA(G,w),UA(G,Q),I(G,"marginTop",1),I(G,"paddingX",2),I(G,"flexDirection","row"),UA(w,aA("\u27F3 ")),BA(Q,()=>A.busy.message),BA(G,JA(R0,{get when(){return typeof A.busy.percent==="number"},get children(){var g=QA("text");return BA(g,()=>` ${Math.round(A.busy.percent??0)}%`),yA((j)=>I(g,"fg",Q6.fgDim,j)),g}}),null),yA((g)=>{var j=Q6.accent,K=Q6.fg;return j!==g.e&&(g.e=I(w,"fg",j,g.e)),K!==g.t&&(g.t=I(Q,"fg",K,g.t)),g},{e:void 0,t:void 0}),G}}),F),I(F,"flexGrow",1),BA(u,JA(K1A,{hints:[{keys:"\u21B5",label:"open"},{keys:"u",label:"update"},{keys:"n",label:"new local"},{keys:"r",label:"new remote"},{keys:"d",label:"delete"},{keys:"\u2191\u2193",label:"navigate"},{keys:"q",label:"quit"}]}),null),yA((G)=>I(u,"backgroundColor",Q6.bg,G)),u})()}async function Ca7(A){try{let q=(await ka7.readdir(A,{withFileTypes:!0})).filter((F)=>!F.name.startsWith(".")||F.name===".codeplane").map((F)=>({name:F.name,isDir:F.isDirectory()||F.isSymbolicLink()}));return q.sort((F,G)=>{if(F.isDir!==G.isDir)return F.isDir?-1:1;return F.name.localeCompare(G.name)}),q}catch{return[]}}function fa7(A){let[u,q]=g2(nT2.resolve(A.initialDirectory)),[F,G]=g2([]),[w,Q]=g2(0),[g,j]=g2(""),[K,U]=g2(0),[_]=g2(void 0),O=14,W=async(N)=>{let B=await Ca7(N);X7(()=>{q(N),G(B),Q(0),U(0)})};W(u());let X=hA(()=>{let N=g().toLowerCase(),B=F();if(!N)return B;return B.filter((z)=>z.name.toLowerCase().includes(N))}),Y=hA(()=>X().slice(K(),K()+14)),$=(N)=>{let B=X();if(B.length===0)return;let z=w()+N;if(z<0)z=0;if(z>B.length-1)z=B.length-1;if(Q(z),z<K())U(z);else if(z>=K()+14)U(z-14+1)},V=async()=>{let B=X()[w()];if(!B||!B.isDir)return;let z=nT2.join(u(),B.name);j(""),await W(z)},H=async()=>{let N=nT2.dirname(u());if(N===u())return;j(""),await W(N)},Z=async()=>{j(""),await W(f0u())};return q4((N)=>{if(N.name==="escape"){if(g())j("");else A.onBack();return}if(N.ctrl&&N.name==="c")return A.onQuit();if(N.name==="up")return $(-1);if(N.name==="down")return $(1);if(N.name==="pageup")return $(-14);if(N.name==="pagedown")return $(14);if(N.name==="home"&&!N.ctrl){Q(0),U(0);return}if(N.name==="end"){let B=X().length-1;Q(Math.max(0,B)),U(Math.max(0,B-14+1));return}if(N.name==="right")return void V();if(N.name==="left")return void H();if(N.name==="return"){let z=X()[w()];if(g()&&z?.isDir)return void V();A.onConfirm(u());return}if(N.ctrl&&N.name==="h")return void Z();if(N.ctrl&&(N.name==="u"||N.name==="w")){j("");return}if(N.name==="backspace"){if(g())j(g().slice(0,-1));else H();return}if(N.sequence&&!N.ctrl&&!N.meta&&N.sequence.length===1){let B=N.sequence;if(B.charCodeAt(0)>=32)j(g()+B),Q(0),U(0)}}),(()=>{var N=QA("box"),B=QA("box"),z=QA("text"),M=QA("text"),L=QA("text"),x=QA("box"),P=QA("text"),D=QA("text"),C=QA("text"),y=aA(" "),S=QA("text"),f=QA("box"),r=QA("text"),l=QA("box"),o=QA("box");return UA(N,B),UA(N,x),UA(N,f),UA(N,l),UA(N,o),I(N,"flexDirection","column"),I(N,"flexGrow",1),BA(N,JA(U1A,{get instance(){return A.instance.label??A.instance.id},get cwd(){return h0u(u())},status:"connected"}),B),BA(N,JA(_1A,{children:"WHERE TO WORK"}),B),UA(B,z),UA(B,M),UA(B,L),I(B,"marginTop",1),I(B,"paddingX",2),UA(z,aA("Pick a working directory for ")),BA(M,()=>A.instance.label??A.instance.id),UA(L,aA(".")),UA(x,P),UA(x,D),UA(x,C),UA(x,S),I(x,"marginTop",1),I(x,"flexDirection","row"),I(x,"paddingX",2),UA(P,aA("search ")),UA(D,aA("\u203A")),UA(C,y),BA(C,()=>g()||" ",null),UA(S,aA("\u258E")),UA(f,r),I(f,"marginTop",1),I(f,"flexDirection","row"),I(f,"paddingX",2),UA(r,aA("\u2191\u2193 select \xB7 \u2192 enter dir \xB7 \u2190 up \xB7 \u21B5 open here")),I(l,"flexDirection","column"),I(l,"marginTop",1),I(l,"paddingX",2),BA(l,JA(R0,{get when(){return X().length===0},get children(){var a=QA("text");return BA(a,(()=>{var n=v2(()=>!!g());return()=>n()?`No matches for "${g()}".`:"Empty directory."})()),yA((n)=>I(a,"fg",Q6.fgMuted,n)),a}}),null),BA(l,JA(W5,{get each(){return Y()},children:(a,n)=>{let s=hA(()=>K()+n()),t=hA(()=>s()===w());return(()=>{var b=QA("box"),p=QA("text"),KA=QA("text"),d=QA("text");return UA(b,p),UA(b,KA),UA(b,d),I(b,"flexDirection","row"),BA(p,()=>t()?"\u258D":" "),BA(KA,()=>` ${a.isDir?"\uD83D\uDCC1":"\uD83D\uDCC4"} `),BA(d,()=>a.name),BA(b,JA(R0,{get when(){return a.isDir},get children(){var GA=QA("text");return UA(GA,aA("/")),yA((OA)=>I(GA,"fg",Q6.fgDim,OA)),GA}}),null),yA((GA)=>{var OA=t()?Q6.accent:Q6.divider,v=a.isDir?Q6.accent:Q6.fgDim,c=t()?Q6.accent:a.isDir?Q6.fg:Q6.fgMuted,uA=t()?E6.BOLD:0;return OA!==GA.e&&(GA.e=I(p,"fg",OA,GA.e)),v!==GA.t&&(GA.t=I(KA,"fg",v,GA.t)),c!==GA.a&&(GA.a=I(d,"fg",c,GA.a)),uA!==GA.o&&(GA.o=I(d,"attributes",uA,GA.o)),GA},{e:void 0,t:void 0,a:void 0,o:void 0}),b})()}}),null),BA(l,JA(R0,{get when(){return X().length>14},get children(){var a=QA("box"),n=QA("text"),s=aA("showing "),t=aA("\u2013"),b=aA(" of ");return UA(a,n),I(a,"marginTop",1),UA(n,s),UA(n,t),UA(n,b),BA(n,()=>K()+1,t),BA(n,()=>Math.min(K()+14,X().length),b),BA(n,()=>X().length,null),yA((p)=>I(n,"fg",Q6.fgDim,p)),a}}),null),BA(N,JA(R0,{get when(){return _()},get children(){var a=QA("box"),n=QA("text");return UA(a,n),I(a,"marginTop",1),I(a,"paddingX",2),BA(n,_),yA((s)=>I(n,"fg",Q6.warn,s)),a}}),o),I(o,"flexGrow",1),BA(N,JA(K1A,{get hints(){return[{keys:"\u21B5",label:g()?"drill in / open here":"open here"},{keys:"\u2192",label:"enter dir"},{keys:"\u2190/\u232B",label:"up"},{keys:"ctrl+h",label:"home"},{keys:"esc",label:g()?"clear":"back"},{keys:"ctrl+c",label:"quit"}]}}),null),yA((a)=>{var n=Q6.bg,s=Q6.fg,t=Q6.accent,b=E6.BOLD,p=Q6.fg,KA=Q6.fgMuted,d=Q6.divider,GA=Q6.accent,OA=Q6.fg,v=Q6.fgDim;return n!==a.e&&(a.e=I(N,"backgroundColor",n,a.e)),s!==a.t&&(a.t=I(z,"fg",s,a.t)),t!==a.a&&(a.a=I(M,"fg",t,a.a)),b!==a.o&&(a.o=I(M,"attributes",b,a.o)),p!==a.i&&(a.i=I(L,"fg",p,a.i)),KA!==a.n&&(a.n=I(P,"fg",KA,a.n)),d!==a.s&&(a.s=I(D,"fg",d,a.s)),GA!==a.h&&(a.h=I(C,"fg",GA,a.h)),OA!==a.r&&(a.r=I(S,"fg",OA,a.r)),v!==a.d&&(a.d=I(r,"fg",v,a.d)),a},{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0,n:void 0,s:void 0,h:void 0,r:void 0,d:void 0}),N})()}async function ha7(A){let u=await BR({targetFps:30}),q=!1,F,G=new Promise((H)=>{F=H}),w=async(H)=>{if(q)return;q=!0;try{u.destroy()}catch{}await new Promise((Z)=>setTimeout(Z,30)),F(H)},[Q,g]=g2(A.instances.slice()),[j,K]=g2("instance"),[U,_]=g2(0),[O]=g2(A.defaultDirectory??process.cwd()),[W,X]=g2(void 0),[Y,$]=g2(void 0),V=(H)=>{let Z=[...Q(),H];g(Z),_(Z.length-1),K("instance")};return await mKA(()=>JA(R0,{get when(){return j()==="instance"},get fallback(){return JA(R0,{get when(){return j()==="create-local"},get fallback(){return JA(R0,{get when(){return j()==="create-remote"},get fallback(){return JA(fa7,{get instance(){return Q()[U()]},get initialDirectory(){return O()},onConfirm:(H)=>void w({instance:Q()[U()],directory:H}),onBack:()=>K("instance"),onQuit:()=>void w(null)})},get children(){return JA(S0u,{get service(){return A.service},get takenIds(){return new Set(Q().map((H)=>H.id))},onDone:(H)=>{if("cancel"in H){K("instance");return}V(H.instance)}})}})},get children(){return JA(T0u,{get service(){return A.service},get takenIds(){return new Set(Q().map((H)=>H.id))},onDone:(H)=>{if("cancel"in H){K("instance");return}V(H.instance)}})}})},get children(){return JA(Sa7,{get instances(){return Q()},get selected(){return U()},get busy(){return W()},get notice(){return Y()},onMove:(H)=>{let Z=Q().length;if(Z===0)return;let N=((U()+H)%Z+Z)%Z;_(N),$(void 0)},onPick:()=>{if(Q()[U()])K("directory")},onCreateLocal:()=>K("create-local"),onCreateRemote:()=>K("create-remote"),onDelete:async(H)=>{let Z=Q()[H];if(!Z)return;try{await A.service.remove(Z.id);let N=Q().filter((B,z)=>z!==H);g(N),_(Math.min(H,N.length-1))}catch{}},onUpdate:async(H)=>{let Z=Q()[H];if(!Z)return;$(void 0),X({message:"Starting update\u2026"});try{let N=await A.service.updateInstance(Z,(z)=>{X({message:z.message,percent:z.phase==="downloading"?z.percent:void 0})}),B=await A.service.list();switch(g(B),N.kind){case"updated-local":$({variant:"success",message:`${N.label??Z.id}: v${N.from||"?"} \u2192 v${N.to}.`});break;case"already-latest":$({variant:"info",message:`${N.label??Z.id} is already on v${N.version}.`});break;case"remote-current":$({variant:"info",message:`${N.label??Z.id} server is on v${N.version??"?"}.`});break;case"remote-update-available":$({variant:"warn",message:`${N.label??Z.id} server v${N.current??"?"} \u2192 v${N.latest} available. Open the instance to apply.`});break;case"remote-unreachable":$({variant:"error",message:`${N.label??Z.id}: ${N.message}`});break;case"error":$({variant:"error",message:`${N.label??Z.id}: ${N.message}`});break}}catch(N){$({variant:"error",message:N instanceof Error?N.message:String(N)})}finally{X(void 0)}},onQuit:()=>void w(null)})}}),u),s5(()=>{try{u.destroy()}catch{}}),G}var m0u=k(async()=>{K6();await Z0([TA(),TA(),TA(),TA(),TA(),TA(),TA(),TA(),TA(),Bq(),eU0(),I0u(),C0u()])});import pT2 from"fs/promises";import ba7 from"path";async function Ld(A){return pT2.readFile(A,"utf8").then((u)=>JSON.parse(u)).then((u)=>({instances:Array.isArray(u.instances)?u.instances:[],lastInstanceID:u.lastInstanceID})).catch(()=>({instances:[]}))}async function PkA(A,u){await pT2.mkdir(ba7.dirname(A),{recursive:!0}),await pT2.writeFile(A,`${JSON.stringify(u,null,2)}
|
|
5277
|
+
`),u}async function D0u(A){let u=A.registry?{registry:iT2(A.registry)}:await M0u(),q=Md(A.version||"latest");if(q!=="latest"&&!lT2.test(q))throw Error(`Invalid version "${q}" requested for ${A.name}`);let F=new URL(`${La7(A.name)}/${q}`,u.registry),G=await B0u(F,{headers:{accept:"application/json",...u.token&&(u.alwaysAuth||F.origin===new URL(u.registry).origin)?{authorization:`Bearer ${u.token}`}:{}},description:`npm manifest ${A.name}@${q}`});if(!G.ok)throw Error(`npm registry lookup failed for ${A.name}@${q} with HTTP ${G.status}`);let w=await G.json();if(typeof w.version!=="string"||typeof w.dist?.tarball!=="string")throw Error(`npm registry payload for ${A.name}@${q} is missing version or tarball`);return{version:Md(w.version),tarball:w.dist.tarball,integrity:typeof w.dist.integrity==="string"?w.dist.integrity:void 0,shasum:typeof w.dist.shasum==="string"?w.dist.shasum:void 0}}function Ra7(A,u,q){let F=u.split(/\s+/).filter(Boolean),G;for(let w of F){let[Q,g]=w.split("-",2);if(!Q||!g)continue;try{let j=Z0u(Q).update(A).digest("base64");if(j===g)return;G=Error(`${Q} integrity mismatch for ${q}: expected ${g}, got ${j}`)}catch(j){G=j instanceof Error?j:Error(String(j))}}throw G??Error(`No supported algorithm in integrity field for ${q}: ${u}`)}function Da7(A,u,q){let F=Z0u("sha1").update(A).digest("hex");if(F!==u)throw Error(`sha1 shasum mismatch for ${q}: expected ${u}, got ${F}`)}async function q_0(A="latest"){return(await D0u({name:"codeplane-ai",version:A})).version}function Pa7(A,u){return new Promise((q,F)=>{let G=Xa7("tar",["-xzf",A,"-C",u,"--strip-components","1"],{stdio:"ignore",windowsHide:!0});G.on("error",F),G.on("exit",(w,Q)=>{if(w===0){q();return}F(Error(`tar exited with code ${w??Q??"unknown"} while extracting ${A}`))})})}async function P0u(A){let u=kjA(),q=Md(A.version);tT2(q,"installCodeplaneLocalPackage");let F=await M0u();A.progress?.({version:q,phase:"detect",message:`Detected ${u.os}/${u.arch}. Resolving ${u.packageName}@${q} from npm\u2026`,percent:4,binaryVersion:q});let G=await D0u({name:u.packageName,version:q,registry:F.registry});if(Md(G.version)!==q)throw Error(`npm resolved ${u.packageName}@${G.version} instead of ${q}`);let w=`${A.directory}.tmp-${Date.now()}`,Q=iH.join(w,"package"),g=iH.join(w,u.archiveName);await fU.rm(w,{recursive:!0,force:!0}),await fU.mkdir(Q,{recursive:!0}),A.progress?.({version:q,phase:"download",message:`Downloading ${u.packageName}@${q} from npm\u2026`,percent:8,binaryVersion:q});let j=new URL(G.tarball),K=await B0u(j,{redirect:"follow",headers:F.token&&(F.alwaysAuth||j.origin===new URL(F.registry).origin)?{authorization:`Bearer ${F.token}`}:void 0,description:`npm tarball ${u.packageName}@${q}`,signal:A.signal,timeoutMs:H0u});if(!K.ok)throw Error(`npm tarball download failed for ${u.packageName}@${q} with HTTP ${K.status}`);if(!K.body)throw Error(`npm tarball download for ${u.packageName}@${q} returned an empty body`);let U=Number(K.headers.get("content-length")??"0"),_=0,O=[],W=$a7.fromWeb(K.body),X=new Va7({transform(H,Z,N){_+=H.length,O.push(H),A.progress?.({version:q,phase:"download",message:`Downloading ${u.packageName}@${q}\u2026`,percent:U>0?Math.min(82,8+Math.round(_/U*72)):40,binaryVersion:q,transferred:_,total:U||void 0}),N(null,H)}});await Za7(W,X,Ya7(g));let Y=Buffer.concat(O);if(G.integrity)Ra7(Y,G.integrity,`${u.packageName}@${q}`);else if(G.shasum)Da7(Y,G.shasum,`${u.packageName}@${q}`);A.progress?.({version:q,phase:"extract",message:`Extracting ${u.packageName}@${q}\u2026`,percent:86,binaryVersion:q}),await Pa7(g,Q);let $=await A_0(Q,u.binaryName);if(!$)throw Error(`Extracted ${u.packageName}@${q} but binary ${u.binaryName} was not found in the package payload`);if(u.os!=="windows")await fU.chmod($,493).catch(()=>{return});await fU.rm(A.directory,{recursive:!0,force:!0}),await fU.rename(Q,A.directory),await fU.rm(w,{recursive:!0,force:!0});let V=iH.join(A.directory,iH.relative(Q,$));return A.progress?.({version:q,phase:"ready",message:`${u.packageName}@${q} is ready locally.`,percent:100,binaryVersion:q}),{binaryPath:V,packageName:u.packageName,target:u,version:q}}var Ha7,lT2,H0u,Md=(A)=>(A??"").toString().trim().replace(/^[vV]+/,""),vT2=()=>iH.join(TV.paths().local_server,"default-version"),N0u=()=>iH.join(TV.paths().bin,".codeplane-version"),La7=(A)=>{if(!A.startsWith("@"))return A;return A.replace("/","%2f")},dT2=(A)=>fU.access(A).then(()=>!0).catch(()=>!1);var DkA=k(()=>{uJA();Ha7=["codeplane.jsonc","codeplane.json","config.json"],lT2=/^\d+\.\d+\.\d+(?:-[\w.+-]+)?$/,H0u=Number(process.env.CODEPLANE_NPM_FETCH_TIMEOUT_MS)||120000});import Ta7 from"path";function T0u(A){let[u,q]=g2("Local Codeplane"),[F,G]=g2(""),[w,Q]=g2(void 0),[g,j]=g2(void 0),[K,U]=g2("label"),[_,O]=g2(void 0),[W,X]=g2(void 0),[Y,$]=g2(!1),V=hA(()=>!!_()||Y());fu(async()=>{try{let[z,M]=await Promise.all([A.service.localTarget(),q_0().catch(()=>{return})]);Q(z);let L=M??z.defaultVersion??"";if(G(L),L){let x=await A.service.localStatus(L);j(x)}}catch(z){X(z instanceof Error?z.message:String(z))}});let H=async()=>{if(!F())return;try{j(await A.service.localStatus(F()))}catch{j(void 0)}},Z=async()=>{if(V())return;X(void 0),O({phase:"detect",message:"preparing",percent:0,version:F()||"latest"});try{await A.service.installLocal(F()||void 0,(z)=>O(z)),O(void 0),await H()}catch(z){X(z instanceof Error?z.message:String(z)),O(void 0)}},N=async()=>{if(V())return;if(!u().trim()){X("Label is required"),U("label");return}$(!0);try{let z=(u().toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"")||"local").slice(0,32),M=z,L=1;while(A.takenIds.has(M))L+=1,M=`${z}-${L}`;let x={id:M,url:mT2(M),label:u().trim(),local:{binaryVersion:F()||""}};await A.service.save(x),A.onDone({instance:x})}catch(z){X(z instanceof Error?z.message:String(z))}finally{$(!1)}};q4((z)=>{if(V()){if(z.ctrl&&z.name==="c")A.onDone({cancel:!0});return}if(z.ctrl&&z.name==="c")return A.onDone({cancel:!0});if(z.name==="escape")return A.onDone({cancel:!0});if(z.name==="tab"){U((M)=>M==="label"?"version":"label");return}if(z.name==="up"){U((M)=>M==="version"?"label":"label");return}if(z.name==="down"){U((M)=>M==="label"?"version":"version");return}if(z.ctrl&&z.name==="s")return void N();if(z.ctrl&&z.name==="i")return void Z();if(z.name==="return"&&K()==="version")return void N();if(z.name==="return"&&K()==="label"){U("version");return}if(K()==="label"){if(z.name==="backspace"){q(u().slice(0,-1));return}if(z.ctrl&&z.name==="u"){q("");return}if(z.sequence&&!z.ctrl&&!z.meta&&z.sequence.length===1&&z.sequence.charCodeAt(0)>=32)q(u()+z.sequence)}else if(K()==="version"){if(z.name==="backspace"){G(F().slice(0,-1)),H();return}if(z.ctrl&&z.name==="u"){G(""),H();return}if(z.sequence&&!z.ctrl&&!z.meta&&z.sequence.length===1&&z.sequence.charCodeAt(0)>=32)G(F()+z.sequence),H()}});let B=hA(()=>{let z=g();if(!F())return"(uses saved preferred version)";if(!z)return"checking\u2026";if(z.installed)return`\u2713 installed at ${z.binaryPath?Ta7.basename(z.binaryPath):"known path"}`;return"not installed \u2014 Ctrl+I to install now or Ctrl+S to save & install on first use"});return(()=>{var z=QA("box"),M=QA("box"),L=QA("box"),x=QA("box");return UA(z,M),UA(z,L),UA(z,x),I(z,"flexDirection","column"),I(z,"flexGrow",1),BA(z,JA(U1A,{instance:"setup",cwd:"new local instance",status:"form",get statusColor(){return Q6.info}}),M),BA(z,JA(_1A,{children:"NEW LOCAL INSTANCE"}),M),I(M,"marginTop",1),BA(M,JA(Bd,{label:"Label",get value(){return u()},get focused(){return K()==="label"},placeholder:"Local Codeplane",hint:"shown in the picker",validate:()=>({ok:!!u().trim(),message:u().trim()?void 0:"required"})})),I(L,"marginTop",1),BA(L,JA(Bd,{label:"Binary version",get value(){return F()},get focused(){return K()==="version"},get placeholder(){return w()?.defaultVersion??"latest"},get hint(){return B()}})),BA(z,JA(R0,{get when(){return w()},get children(){var P=QA("box"),D=QA("text"),C=aA("target: "),y=aA("/"),S=aA(" \xB7 binary "),f=aA(" \xB7 ");return UA(P,D),I(P,"marginTop",1),I(P,"paddingX",2),UA(D,C),UA(D,y),UA(D,S),UA(D,f),BA(D,()=>w().os,y),BA(D,()=>w().arch,S),BA(D,()=>w().binaryName,f),BA(D,()=>w().archiveName,null),yA((r)=>I(D,"fg",Q6.fgDim,r)),P}}),x),BA(z,JA(R0,{get when(){return _()},get children(){var P=QA("box"),D=QA("box"),C=QA("text"),y=QA("text"),S=QA("box");return UA(P,D),UA(P,S),I(P,"marginTop",1),I(P,"flexDirection","column"),UA(D,C),UA(D,y),I(D,"paddingX",2),UA(C,aA("installing\u2026 ")),BA(y,()=>_().phase),BA(D,JA(R0,{get when(){return _().binaryVersion},get children(){var f=QA("text"),r=aA(" v");return UA(f,r),BA(f,()=>_().binaryVersion,null),yA((l)=>I(f,"fg",Q6.fgDim,l)),f}}),null),I(S,"marginTop",0),BA(S,JA($0u,{get percent(){return _().percent??0},get message(){return _().message}})),yA((f)=>{var r=Q6.accent,l=Q6.fgMuted;return r!==f.e&&(f.e=I(C,"fg",r,f.e)),l!==f.t&&(f.t=I(y,"fg",l,f.t)),f},{e:void 0,t:void 0}),P}}),x),BA(z,JA(R0,{get when(){return v2(()=>!!(!_()&&g()&&!g().installed))()&&F()},get children(){var P=QA("box");return I(P,"marginTop",1),BA(P,JA(J1A,{variant:"warn",children:"Binary not yet installed. Press Ctrl+I to install now, or Ctrl+S to save (it will install on first use)."})),P}}),x),BA(z,JA(R0,{get when(){return v2(()=>!_())()&&g()?.installed},get children(){var P=QA("box");return I(P,"marginTop",1),BA(P,JA(J1A,{variant:"success",children:"Binary installed and ready."})),P}}),x),BA(z,JA(R0,{get when(){return W()},get children(){var P=QA("box");return I(P,"marginTop",1),BA(P,JA(J1A,{variant:"error",get children(){return W()}})),P}}),x),I(x,"flexGrow",1),BA(z,JA(K1A,{hints:[{keys:"ctrl+s",label:"save"},{keys:"ctrl+i",label:"install now"},{keys:"tab",label:"next field"},{keys:"esc",label:"cancel"},{keys:"ctrl+c",label:"quit"}]}),null),yA((P)=>I(z,"backgroundColor",Q6.bg,P)),z})()}var I0u=k(async()=>{K6();DkA();await Z0([TA(),TA(),TA(),TA(),TA(),TA(),TA(),TA(),TA(),eU0()])});function k0u(A,u){return(A.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"")||u).slice(0,32)}function Ia7(A,u){return`Basic ${Buffer.from(`${A}:${u}`,"utf8").toString("base64")}`}function S0u(A){let[u,q]=g2(""),[F,G]=g2(""),[w,Q]=g2(""),[g,j]=g2(""),[K,U]=g2("label"),[_,O]=g2(void 0),[W,X]=g2(!1),[Y,$]=g2({status:"idle"}),V=hA(()=>W()||Y().status==="checking"),H=(D)=>D==="label"?u():D==="url"?F():D==="username"?w():g(),Z=(D)=>D==="label"?q:D==="url"?G:D==="username"?Q:j,N=()=>{let D=w().trim(),C=g();if(!D&&!C)return;return{Authorization:Ia7(D,C)}},B=()=>{let D=u().trim();if(!D){O("Label is required"),U("label");return}let C=F().trim();if(!C){O("URL is required"),U("url");return}if(!/^https?:\/\//i.test(C)){O("URL must start with http:// or https://"),U("url");return}let y=k0u(D,"remote"),S=y,f=1;while(A.takenIds.has(S))f+=1,S=`${y}-${f}`;return{id:S,url:C,label:D,headers:N()}},z=async()=>{if(V())return;O(void 0);let D=B();if(!D)return;$({status:"checking"});try{let C=await A.service.probe(D);if(!C.ok){$({status:"error",message:C.status?`HTTP ${C.status}`:C.error||"Unreachable"});return}$({status:"ok",version:C.version??void 0})}catch(C){$({status:"error",message:C instanceof Error?C.message:String(C)})}},M=async()=>{if(V())return;O(void 0);let D=B();if(!D)return;X(!0);try{await A.service.save(D),A.onDone({instance:D})}catch(C){O(C instanceof Error?C.message:String(C))}finally{X(!1)}},L=(D)=>{let y=(F_0.indexOf(K())+D+F_0.length)%F_0.length;U(F_0[y])};q4((D)=>{if(V()){if(D.ctrl&&D.name==="c")A.onDone({cancel:!0});return}if(D.ctrl&&D.name==="c")return A.onDone({cancel:!0});if(D.name==="escape")return A.onDone({cancel:!0});if(D.name==="tab")return L(1);if(D.name==="up")return L(-1);if(D.name==="down")return L(1);if(D.ctrl&&D.name==="s")return void M();if(D.ctrl&&D.name==="p")return void z();if(D.name==="return"){if(K()==="password")return void M();L(1);return}let C=K(),y=H,S=Z(C);if(D.name==="backspace"){if(S(y(C).slice(0,-1)),Y().status!=="idle")$({status:"idle"});return}if(D.ctrl&&D.name==="u"){if(S(""),Y().status!=="idle")$({status:"idle"});return}if(D.sequence&&!D.ctrl&&!D.meta&&D.sequence.length===1&&D.sequence.charCodeAt(0)>=32){if(S(y(C)+D.sequence),Y().status!=="idle")$({status:"idle"})}});let x=hA(()=>{let D=g();if(K()!=="password")return D?"\u2022".repeat(D.length):"";if(D.length===0)return"";return"\u2022".repeat(Math.max(0,D.length-1))+D.slice(-1)}),P=hA(()=>{let D=Y();if(D.status==="checking")return{variant:"info",text:"Probing /global/version\u2026"};if(D.status==="ok")return{variant:"success",text:D.version?`Server reachable. Reports v${D.version}.`:"Server reachable but did not return a version (auth proxy?). Check the URL or use `codeplane instance sign-in <id>` after saving."};if(D.status==="error")return{variant:"error",text:`Probe failed: ${D.message}`};return});return(()=>{var D=QA("box"),C=QA("box"),y=QA("box"),S=QA("box"),f=QA("box"),r=QA("box"),l=QA("box"),o=QA("text"),a=aA("Cloudflare Access / SSO? Save first, then run `codeplane instance sign-in "),n=aA("` from a shell to capture the cookie automatically.");return UA(D,C),UA(D,y),UA(D,S),UA(D,f),UA(D,r),UA(D,l),I(D,"flexDirection","column"),I(D,"flexGrow",1),BA(D,JA(U1A,{instance:"setup",cwd:"new remote instance",status:"form",get statusColor(){return Q6.info}}),C),BA(D,JA(_1A,{children:"NEW REMOTE INSTANCE"}),C),I(C,"marginTop",1),BA(C,JA(Bd,{label:"Label",get value(){return u()},get focused(){return K()==="label"},placeholder:"My Codeplane Server",hint:"shown in the picker",validate:()=>({ok:!!u().trim(),message:u().trim()?void 0:"required"})})),I(y,"marginTop",1),BA(y,JA(Bd,{label:"URL",get value(){return F()},get focused(){return K()==="url"},placeholder:"https://codeplane.example.com",hint:"https:// or http://",validate:()=>{let s=F().trim();if(!s)return{ok:!1,message:"required"};if(!/^https?:\/\//i.test(s))return{ok:!1,message:"must start with http:// or https://"};return{ok:!0}}})),I(S,"marginTop",1),BA(S,JA(Bd,{label:"Basic Auth username",get value(){return w()},get focused(){return K()==="username"},placeholder:"(optional)",hint:"leave empty if the server doesn't use Basic Auth"})),I(f,"marginTop",1),BA(f,JA(Bd,{label:"Basic Auth password",get value(){return x()},get focused(){return K()==="password"},placeholder:"(optional)",get hint(){return g()?"masked \u2014 Ctrl+U to clear":"leave empty if the server doesn't use Basic Auth"}})),BA(D,JA(R0,{get when(){return P()},get children(){var s=QA("box");return I(s,"marginTop",1),BA(s,JA(J1A,{get variant(){return P().variant},get children(){return P().text}})),s}}),r),BA(D,JA(R0,{get when(){return _()},get children(){var s=QA("box");return I(s,"marginTop",1),BA(s,JA(J1A,{variant:"error",get children(){return _()}})),s}}),r),I(r,"flexGrow",1),UA(l,o),I(l,"marginTop",1),I(l,"paddingX",2),UA(o,a),UA(o,n),BA(o,(()=>{var s=v2(()=>!!u().trim());return()=>s()?k0u(u().trim(),"remote"):"<id>"})(),n),BA(D,JA(K1A,{hints:[{keys:"ctrl+s",label:"save"},{keys:"ctrl+p",label:"probe"},{keys:"tab/\u2191\u2193",label:"navigate"},{keys:"esc",label:"cancel"},{keys:"ctrl+c",label:"quit"}]}),null),yA((s)=>{var t=Q6.bg,b=Q6.fgDim;return t!==s.e&&(s.e=I(D,"backgroundColor",t,s.e)),b!==s.t&&(s.t=I(o,"fg",b,s.t)),s},{e:void 0,t:void 0}),D})()}var F_0;var C0u=k(async()=>{K6();await Z0([TA(),TA(),TA(),TA(),TA(),TA(),TA(),TA(),TA(),eU0()]);F_0=["label","url","username","password"]});var b0u={};fA(b0u,{runBootWizard:()=>ha7});import nT2 from"path";import ka7 from"fs/promises";import{homedir as f0u}from"os";function h0u(A){let u=f0u();return A.startsWith(u)?"~"+A.slice(u.length):A}function Sa7(A){return q4((u)=>{if(A.busy){if(u.ctrl&&u.name==="c")A.onQuit();return}if(u.name==="up"||u.name==="k")A.onMove(-1);else if(u.name==="down"||u.name==="j")A.onMove(1);else if(u.name==="return")A.onPick(A.selected);else if(u.name==="n"||u.name==="l")A.onCreateLocal();else if(u.name==="r")A.onCreateRemote();else if(u.name==="d"||u.name==="delete")A.onDelete(A.selected);else if(u.name==="u")A.onUpdate(A.selected);else if(u.name==="q"||u.ctrl&&u.name==="c")A.onQuit()}),(()=>{var u=QA("box"),q=QA("box"),F=QA("box");return UA(u,q),UA(u,F),I(u,"flexDirection","column"),I(u,"flexGrow",1),BA(u,JA(U1A,{instance:"setup",get cwd(){return h0u(process.cwd())},status:"ready"}),q),BA(u,JA(_1A,{children:"SELECT A SERVER"}),q),BA(u,JA(R0,{get when(){return A.instances.length===0},get children(){var G=QA("box"),w=QA("text"),Q=QA("text"),g=QA("text"),j=QA("text"),K=QA("text");return UA(G,w),UA(G,Q),UA(G,g),UA(G,j),UA(G,K),I(G,"marginTop",1),I(G,"paddingX",2),I(G,"flexDirection","row"),UA(w,aA("No saved instances. Press ")),UA(Q,aA("n")),UA(g,aA(" for a local one or ")),UA(j,aA("r")),UA(K,aA(" for a remote one.")),yA((U)=>{var _=Q6.fgMuted,O=Q6.accent,W=Q6.fgMuted,X=Q6.accent,Y=Q6.fgMuted;return _!==U.e&&(U.e=I(w,"fg",_,U.e)),O!==U.t&&(U.t=I(Q,"fg",O,U.t)),W!==U.a&&(U.a=I(g,"fg",W,U.a)),X!==U.o&&(U.o=I(j,"fg",X,U.o)),Y!==U.i&&(U.i=I(K,"fg",Y,U.i)),U},{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0}),G}}),q),I(q,"flexDirection","column"),I(q,"marginTop",1),I(q,"paddingX",2),BA(q,JA(W5,{get each(){return A.instances},children:(G,w)=>{let Q=hA(()=>w()===A.selected),g=G.url.startsWith("local://")||!!G.local;return(()=>{var j=QA("box"),K=QA("box"),U=QA("text"),_=QA("text"),O=QA("text"),W=QA("text");return UA(j,K),I(j,"flexDirection","column"),UA(K,U),UA(K,_),UA(K,O),UA(K,W),I(K,"flexDirection","row"),BA(U,()=>Q()?"\u258D":" "),BA(_,` ${g?"local ":"remote"} `),BA(O,()=>G.label??G.id),BA(W,()=>` ${G.url}`),BA(j,JA(R0,{get when(){return Q()},get children(){var X=QA("box"),Y=QA("text");return UA(X,Y),I(X,"flexDirection","row"),I(X,"paddingLeft",4),BA(Y,()=>g?`binary ${G.local?.binaryVersion||"auto"} \xB7 pick a directory next`:`runs on ${new URL(G.url).host} \xB7 uses server cwd`),yA(($)=>I(Y,"fg",Q6.fgDim,$)),X}}),null),yA((X)=>{var Y=Q()?Q6.accent:Q6.divider,$=g?Q6.success:Q6.info,V=Q()?Q6.accent:Q6.fgMuted,H=Q()?E6.BOLD:0,Z=Q6.fgDim;return Y!==X.e&&(X.e=I(U,"fg",Y,X.e)),$!==X.t&&(X.t=I(_,"fg",$,X.t)),V!==X.a&&(X.a=I(O,"fg",V,X.a)),H!==X.o&&(X.o=I(O,"attributes",H,X.o)),Z!==X.i&&(X.i=I(W,"fg",Z,X.i)),X},{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0}),j})()}})),BA(u,JA(R0,{get when(){return A.notice},get children(){var G=QA("box"),w=QA("text"),Q=QA("text");return UA(G,w),UA(G,Q),I(G,"marginTop",1),I(G,"paddingX",2),I(G,"flexDirection","row"),BA(w,(()=>{var g=v2(()=>A.notice.variant==="success");return()=>g()?"\u2713 ":v2(()=>A.notice.variant==="error")()?"\u2717 ":A.notice.variant==="warn"?"! ":"i "})()),BA(Q,()=>A.notice.message),yA((g)=>{var j=A.notice.variant==="success"?Q6.success:A.notice.variant==="error"?Q6.warn:A.notice.variant==="warn"?Q6.warn:Q6.info,K=Q6.fg;return j!==g.e&&(g.e=I(w,"fg",j,g.e)),K!==g.t&&(g.t=I(Q,"fg",K,g.t)),g},{e:void 0,t:void 0}),G}}),F),BA(u,JA(R0,{get when(){return A.busy},get children(){var G=QA("box"),w=QA("text"),Q=QA("text");return UA(G,w),UA(G,Q),I(G,"marginTop",1),I(G,"paddingX",2),I(G,"flexDirection","row"),UA(w,aA("\u27F3 ")),BA(Q,()=>A.busy.message),BA(G,JA(R0,{get when(){return typeof A.busy.percent==="number"},get children(){var g=QA("text");return BA(g,()=>` ${Math.round(A.busy.percent??0)}%`),yA((j)=>I(g,"fg",Q6.fgDim,j)),g}}),null),yA((g)=>{var j=Q6.accent,K=Q6.fg;return j!==g.e&&(g.e=I(w,"fg",j,g.e)),K!==g.t&&(g.t=I(Q,"fg",K,g.t)),g},{e:void 0,t:void 0}),G}}),F),I(F,"flexGrow",1),BA(u,JA(K1A,{hints:[{keys:"\u21B5",label:"open"},{keys:"u",label:"update"},{keys:"n",label:"new local"},{keys:"r",label:"new remote"},{keys:"d",label:"delete"},{keys:"\u2191\u2193",label:"navigate"},{keys:"q",label:"quit"}]}),null),yA((G)=>I(u,"backgroundColor",Q6.bg,G)),u})()}async function Ca7(A){try{let q=(await ka7.readdir(A,{withFileTypes:!0})).filter((F)=>!F.name.startsWith(".")||F.name===".codeplane").map((F)=>({name:F.name,isDir:F.isDirectory()||F.isSymbolicLink()}));return q.sort((F,G)=>{if(F.isDir!==G.isDir)return F.isDir?-1:1;return F.name.localeCompare(G.name)}),q}catch{return[]}}function fa7(A){let[u,q]=g2(nT2.resolve(A.initialDirectory)),[F,G]=g2([]),[w,Q]=g2(0),[g,j]=g2(""),[K,U]=g2(0),[_]=g2(void 0),O=14,W=async(N)=>{let B=await Ca7(N);X7(()=>{q(N),G(B),Q(0),U(0)})};W(u());let X=hA(()=>{let N=g().toLowerCase(),B=F();if(!N)return B;return B.filter((z)=>z.name.toLowerCase().includes(N))}),Y=hA(()=>X().slice(K(),K()+14)),$=(N)=>{let B=X();if(B.length===0)return;let z=w()+N;if(z<0)z=0;if(z>B.length-1)z=B.length-1;if(Q(z),z<K())U(z);else if(z>=K()+14)U(z-14+1)},V=async()=>{let B=X()[w()];if(!B||!B.isDir)return;let z=nT2.join(u(),B.name);j(""),await W(z)},H=async()=>{let N=nT2.dirname(u());if(N===u())return;j(""),await W(N)},Z=async()=>{j(""),await W(f0u())};return q4((N)=>{if(N.name==="escape"){if(g())j("");else A.onBack();return}if(N.ctrl&&N.name==="c")return A.onQuit();if(N.name==="up")return $(-1);if(N.name==="down")return $(1);if(N.name==="pageup")return $(-14);if(N.name==="pagedown")return $(14);if(N.name==="home"&&!N.ctrl){Q(0),U(0);return}if(N.name==="end"){let B=X().length-1;Q(Math.max(0,B)),U(Math.max(0,B-14+1));return}if(N.name==="right")return void V();if(N.name==="left")return void H();if(N.name==="return"){let z=X()[w()];if(g()&&z?.isDir)return void V();A.onConfirm(u());return}if(N.ctrl&&N.name==="h")return void Z();if(N.ctrl&&(N.name==="u"||N.name==="w")){j("");return}if(N.name==="backspace"){if(g())j(g().slice(0,-1));else H();return}if(N.sequence&&!N.ctrl&&!N.meta&&N.sequence.length===1){let B=N.sequence;if(B.charCodeAt(0)>=32)j(g()+B),Q(0),U(0)}}),(()=>{var N=QA("box"),B=QA("box"),z=QA("text"),M=QA("text"),L=QA("text"),x=QA("box"),P=QA("text"),D=QA("text"),C=QA("text"),y=aA(" "),S=QA("text"),f=QA("box"),r=QA("text"),l=QA("box"),o=QA("box");return UA(N,B),UA(N,x),UA(N,f),UA(N,l),UA(N,o),I(N,"flexDirection","column"),I(N,"flexGrow",1),BA(N,JA(U1A,{get instance(){return A.instance.label??A.instance.id},get cwd(){return h0u(u())},status:"connected"}),B),BA(N,JA(_1A,{children:"WHERE TO WORK"}),B),UA(B,z),UA(B,M),UA(B,L),I(B,"marginTop",1),I(B,"paddingX",2),UA(z,aA("Pick a working directory for ")),BA(M,()=>A.instance.label??A.instance.id),UA(L,aA(".")),UA(x,P),UA(x,D),UA(x,C),UA(x,S),I(x,"marginTop",1),I(x,"flexDirection","row"),I(x,"paddingX",2),UA(P,aA("search ")),UA(D,aA("\u203A")),UA(C,y),BA(C,()=>g()||" ",null),UA(S,aA("\u258E")),UA(f,r),I(f,"marginTop",1),I(f,"flexDirection","row"),I(f,"paddingX",2),UA(r,aA("\u2191\u2193 select \xB7 \u2192 enter dir \xB7 \u2190 up \xB7 \u21B5 open here")),I(l,"flexDirection","column"),I(l,"marginTop",1),I(l,"paddingX",2),BA(l,JA(R0,{get when(){return X().length===0},get children(){var a=QA("text");return BA(a,(()=>{var n=v2(()=>!!g());return()=>n()?`No matches for "${g()}".`:"Empty directory."})()),yA((n)=>I(a,"fg",Q6.fgMuted,n)),a}}),null),BA(l,JA(W5,{get each(){return Y()},children:(a,n)=>{let s=hA(()=>K()+n()),t=hA(()=>s()===w());return(()=>{var b=QA("box"),p=QA("text"),KA=QA("text"),d=QA("text");return UA(b,p),UA(b,KA),UA(b,d),I(b,"flexDirection","row"),BA(p,()=>t()?"\u258D":" "),BA(KA,()=>` ${a.isDir?"\uD83D\uDCC1":"\uD83D\uDCC4"} `),BA(d,()=>a.name),BA(b,JA(R0,{get when(){return a.isDir},get children(){var GA=QA("text");return UA(GA,aA("/")),yA((OA)=>I(GA,"fg",Q6.fgDim,OA)),GA}}),null),yA((GA)=>{var OA=t()?Q6.accent:Q6.divider,v=a.isDir?Q6.accent:Q6.fgDim,c=t()?Q6.accent:a.isDir?Q6.fg:Q6.fgMuted,uA=t()?E6.BOLD:0;return OA!==GA.e&&(GA.e=I(p,"fg",OA,GA.e)),v!==GA.t&&(GA.t=I(KA,"fg",v,GA.t)),c!==GA.a&&(GA.a=I(d,"fg",c,GA.a)),uA!==GA.o&&(GA.o=I(d,"attributes",uA,GA.o)),GA},{e:void 0,t:void 0,a:void 0,o:void 0}),b})()}}),null),BA(l,JA(R0,{get when(){return X().length>14},get children(){var a=QA("box"),n=QA("text"),s=aA("showing "),t=aA("\u2013"),b=aA(" of ");return UA(a,n),I(a,"marginTop",1),UA(n,s),UA(n,t),UA(n,b),BA(n,()=>K()+1,t),BA(n,()=>Math.min(K()+14,X().length),b),BA(n,()=>X().length,null),yA((p)=>I(n,"fg",Q6.fgDim,p)),a}}),null),BA(N,JA(R0,{get when(){return _()},get children(){var a=QA("box"),n=QA("text");return UA(a,n),I(a,"marginTop",1),I(a,"paddingX",2),BA(n,_),yA((s)=>I(n,"fg",Q6.warn,s)),a}}),o),I(o,"flexGrow",1),BA(N,JA(K1A,{get hints(){return[{keys:"\u21B5",label:g()?"drill in / open here":"open here"},{keys:"\u2192",label:"enter dir"},{keys:"\u2190/\u232B",label:"up"},{keys:"ctrl+h",label:"home"},{keys:"esc",label:g()?"clear":"back"},{keys:"ctrl+c",label:"quit"}]}}),null),yA((a)=>{var n=Q6.bg,s=Q6.fg,t=Q6.accent,b=E6.BOLD,p=Q6.fg,KA=Q6.fgMuted,d=Q6.divider,GA=Q6.accent,OA=Q6.fg,v=Q6.fgDim;return n!==a.e&&(a.e=I(N,"backgroundColor",n,a.e)),s!==a.t&&(a.t=I(z,"fg",s,a.t)),t!==a.a&&(a.a=I(M,"fg",t,a.a)),b!==a.o&&(a.o=I(M,"attributes",b,a.o)),p!==a.i&&(a.i=I(L,"fg",p,a.i)),KA!==a.n&&(a.n=I(P,"fg",KA,a.n)),d!==a.s&&(a.s=I(D,"fg",d,a.s)),GA!==a.h&&(a.h=I(C,"fg",GA,a.h)),OA!==a.r&&(a.r=I(S,"fg",OA,a.r)),v!==a.d&&(a.d=I(r,"fg",v,a.d)),a},{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0,n:void 0,s:void 0,h:void 0,r:void 0,d:void 0}),N})()}async function ha7(A){let u=await BR({targetFps:30}),q=!1,F,G=new Promise((H)=>{F=H}),w=async(H)=>{if(q)return;q=!0;try{u.destroy()}catch{}await new Promise((Z)=>setTimeout(Z,30)),F(H)},[Q,g]=g2(A.instances.slice()),[j,K]=g2("instance"),[U,_]=g2(0),[O]=g2(A.defaultDirectory??process.cwd()),[W,X]=g2(void 0),[Y,$]=g2(void 0),V=(H)=>{let Z=[...Q(),H];g(Z),_(Z.length-1),K("instance")};return await mKA(()=>JA(R0,{get when(){return j()==="instance"},get fallback(){return JA(R0,{get when(){return j()==="create-local"},get fallback(){return JA(R0,{get when(){return j()==="create-remote"},get fallback(){return JA(fa7,{get instance(){return Q()[U()]},get initialDirectory(){return O()},onConfirm:(H)=>void w({instance:Q()[U()],directory:H}),onBack:()=>K("instance"),onQuit:()=>void w(null)})},get children(){return JA(S0u,{get service(){return A.service},get takenIds(){return new Set(Q().map((H)=>H.id))},onDone:(H)=>{if("cancel"in H){K("instance");return}V(H.instance)}})}})},get children(){return JA(T0u,{get service(){return A.service},get takenIds(){return new Set(Q().map((H)=>H.id))},onDone:(H)=>{if("cancel"in H){K("instance");return}V(H.instance)}})}})},get children(){return JA(Sa7,{get instances(){return Q()},get selected(){return U()},get busy(){return W()},get notice(){return Y()},onMove:(H)=>{let Z=Q().length;if(Z===0)return;let N=((U()+H)%Z+Z)%Z;_(N),$(void 0)},onPick:()=>{let H=Q()[U()];if(!H)return;if(H.url.startsWith("local://")||!!H.local)K("directory");else w({instance:H})},onCreateLocal:()=>K("create-local"),onCreateRemote:()=>K("create-remote"),onDelete:async(H)=>{let Z=Q()[H];if(!Z)return;try{await A.service.remove(Z.id);let N=Q().filter((B,z)=>z!==H);g(N),_(Math.min(H,N.length-1))}catch{}},onUpdate:async(H)=>{let Z=Q()[H];if(!Z)return;$(void 0),X({message:"Starting update\u2026"});try{let N=await A.service.updateInstance(Z,(z)=>{X({message:z.message,percent:z.phase==="downloading"?z.percent:void 0})}),B=await A.service.list();switch(g(B),N.kind){case"updated-local":$({variant:"success",message:`${N.label??Z.id}: v${N.from||"?"} \u2192 v${N.to}.`});break;case"already-latest":$({variant:"info",message:`${N.label??Z.id} is already on v${N.version}.`});break;case"remote-current":$({variant:"info",message:`${N.label??Z.id} server is on v${N.version??"?"}.`});break;case"remote-update-available":$({variant:"warn",message:`${N.label??Z.id} server v${N.current??"?"} \u2192 v${N.latest} available. Open the instance to apply.`});break;case"remote-unreachable":$({variant:"error",message:`${N.label??Z.id}: ${N.message}`});break;case"error":$({variant:"error",message:`${N.label??Z.id}: ${N.message}`});break}}catch(N){$({variant:"error",message:N instanceof Error?N.message:String(N)})}finally{X(void 0)}},onQuit:()=>void w(null)})}}),u),s5(()=>{try{u.destroy()}catch{}}),G}var m0u=k(async()=>{K6();await Z0([TA(),TA(),TA(),TA(),TA(),TA(),TA(),TA(),TA(),Bq(),eU0(),I0u(),C0u()])});import pT2 from"fs/promises";import ba7 from"path";async function Ld(A){return pT2.readFile(A,"utf8").then((u)=>JSON.parse(u)).then((u)=>({instances:Array.isArray(u.instances)?u.instances:[],lastInstanceID:u.lastInstanceID})).catch(()=>({instances:[]}))}async function PkA(A,u){await pT2.mkdir(ba7.dirname(A),{recursive:!0}),await pT2.writeFile(A,`${JSON.stringify(u,null,2)}
|
|
5278
5278
|
`)}function y0u(A){let u=()=>Ld(A),q=()=>Ld(A).then((K)=>K.instances),F=()=>Ld(A).then((K)=>K.lastInstanceID);async function G(K){let U={instances:Array.isArray(K.instances)?K.instances:[],lastInstanceID:K.lastInstanceID};return await PkA(A,U),U}async function w(K){let U=await Ld(A),_=U.instances.findIndex((W)=>W.id===K.id),O=_===-1?[...U.instances,K]:U.instances.map((W,X)=>X===_?K:W);return await PkA(A,{instances:O,lastInstanceID:K.id}),O}async function Q(K){let U=await Ld(A),_=U.instances.filter((O)=>O.id!==K);return await PkA(A,{instances:_,lastInstanceID:U.lastInstanceID===K?_[0]?.id:U.lastInstanceID}),_}async function g(K){let U=await Ld(A);return await PkA(A,{instances:U.instances,lastInstanceID:K}),K}async function j(K){let U=await Ld(A);if(U.instances.length>0||U.lastInstanceID)return U;if(K===A)return U;let _=await Ld(K);if(_.instances.length===0&&!_.lastInstanceID)return U;return await PkA(A,_),_}return{file:A,getLast:F,getState:u,list:q,migrate:j,remove:Q,replace:G,save:w,setLast:g}}var v0u=()=>{};var l0u={};fA(l0u,{wsUrlForInstance:()=>ma7,normalizeInstanceUrl:()=>O1A,headersForInstance:()=>G_0,createInstanceClient:()=>SjA});function O1A(A){let u=A.trim();if(!u)return;return(/^[a-z]+:\/\//i.test(u)?u:`http://${u}`).replace(/\/+$/,"")}function G_0(A){return{...A.headers??{}}}function SjA(A){let u=O1A(A.instance.url);if(!u)throw Error(`Invalid instance URL: ${A.instance.url}`);return ev({baseUrl:u,directory:A.directory,headers:G_0(A.instance),signal:A.signal,throwOnError:A.throwOnError??!0})}function ma7(A,u){let q=O1A(A.url);if(!q)throw Error(`Invalid instance URL: ${A.url}`);let F=new URL(u.replace(/^\/+/,""),`${q}/`);return F.protocol=F.protocol==="https:"?"wss:":"ws:",F.toString()}var aT2=k(()=>{raA()});import{spawn as t0u}from"child_process";import nb from"fs/promises";import i0u from"os";import hU from"path";function oT2(A){for(let u of ya7){let q=u.exec(A);if(!q)continue;let F=Number.parseInt(q[1]??"",10);if(Number.isFinite(F)&&F>0)return F}}function la7(){let A=new Map;return async function(q,F){let w=(A.get(q)??Promise.resolve()).catch(()=>{return}).then(F);A.set(q,w.catch(()=>{return}));try{return await w}finally{let Q=A.get(q);if(Q===w||Q===w.catch(()=>{return}))A.delete(q)}}}function sT2(A){let u=(M,L)=>A.log?.(M,L),q=kjA(),F=new Map,G=la7(),w=(M)=>hU.join(A.binariesDir,M),Q=(M)=>hU.join(w(M),"bin",q.binaryName),g=(M)=>A_0(w(M),q.binaryName),j=(M)=>hU.join(A.dataDir,M),K=(M)=>hU.join(j(M),"config");async function U(M){return!!await g(M)}async function _(M){let L=await u_0(),x=await g(M);return{archive:q.archiveName,binaryPath:x??Q(M),binaryVersion:M,installed:!!x,cliInstalled:L.cliInstalled,cliPath:L.cliPath}}async function O(M,L){let x=await u_0();if(x.cliInstalled&&x.cliVersion===M)return x;return x0u({version:M,binaryPath:L})}async function W(M,L){return G(`download:${M}`,async()=>{u("local.download.start",{archive:q.archiveName,version:M});let x=Date.now(),P=w(M),D=await g(M);if(D)return u("local.download.cached",{binary:D,version:M}),await O(M,D),L?.({version:M,phase:"ready",message:`Codeplane ${M} is already installed locally.`,percent:100,binaryVersion:M}),_(M);await P0u({version:M,directory:P,progress:(y)=>L?.(y)});let C=await g(M);if(!C)throw Error(`Codeplane ${M} download finished but binary was not found in ${P}`);return await O(M,C),u("local.download.success",{binary:C,durationMs:Date.now()-x,packageName:q.packageName,version:M}),_(M)})}async function X(M,L){return G(`start:${M.id}`,async()=>{let x=F.get(M.id);if(x)return{id:M.id,binaryVersion:x.binaryVersion,port:x.port,url:x.url};let P=await g(M.binaryVersion);if(!P){u("local.start.auto-download",{version:M.binaryVersion});try{await W(M.binaryVersion,(l)=>L?.(l))}catch(l){throw Error(`Codeplane ${M.binaryVersion} could not be installed: ${l instanceof Error?l.message:String(l)}`,{cause:l})}if(P=await g(M.binaryVersion),!P)throw Error(`Codeplane ${M.binaryVersion} download finished but binary was not found`)}if(q.os!=="windows")await nb.chmod(P,493).catch(()=>{return});await O(M.binaryVersion,P);let D=j(M.id),C=K(M.id);await Promise.all([nb.mkdir(hU.join(D,"data"),{recursive:!0}),nb.mkdir(C,{recursive:!0}),nb.mkdir(hU.join(D,"cache"),{recursive:!0}),nb.mkdir(hU.join(D,"state"),{recursive:!0}),nb.mkdir(hU.join(D,"bin"),{recursive:!0}),nb.mkdir(hU.join(D,"log"),{recursive:!0})]);let y={...process.env,CODEPLANE_HOME_DIR:C,CODEPLANE_DATA_DIR:hU.join(D,"data"),CODEPLANE_CACHE_DIR:hU.join(D,"cache"),CODEPLANE_STATE_DIR:hU.join(D,"state"),CODEPLANE_BIN_DIR:hU.join(D,"bin"),CODEPLANE_LOG_DIR:hU.join(D,"log"),XDG_DATA_HOME:hU.join(D,"data"),XDG_CONFIG_HOME:hU.join(D,"config"),XDG_CACHE_HOME:hU.join(D,"cache"),XDG_STATE_HOME:hU.join(D,"state"),HOME:process.env.HOME??i0u.homedir()};if(A.desktopManaged===!1)delete y.CODEPLANE_DESKTOP_MANAGED;else if(A.desktopManaged)y.CODEPLANE_DESKTOP_MANAGED="1";y.CODEPLANE_MANAGED_BY=A.desktopManaged?"desktop":"tui";let S=process.env.HOME?.trim()||process.env.USERPROFILE?.trim()||i0u.homedir();u("local.start",{binary:P,cwd:S,data:D,id:M.id});let f=t0u(P,["serve","--hostname","127.0.0.1","--port","0"],{cwd:S,env:y,stdio:["ignore","pipe","pipe"],windowsHide:!0}),r=()=>new Promise((l)=>{if(f.exitCode!==null||f.killed){F.delete(M.id),l();return}let o=()=>{F.delete(M.id),l()};f.once("exit",o);try{if(process.platform==="win32"){t0u("taskkill",["/pid",String(f.pid),"/t","/f"],{stdio:"ignore"}).on("exit",()=>{return});return}f.kill("SIGTERM"),setTimeout(()=>{if(f.exitCode===null&&!f.killed)f.kill("SIGKILL")},va7).unref()}catch(a){u("local.stop.error",{error:a,id:M.id}),o()}});return L?.({version:M.binaryVersion,phase:"start",message:`Starting local Codeplane ${M.binaryVersion}\u2026`,percent:96,binaryVersion:M.binaryVersion}),new Promise((l,o)=>{let a=!1,n=[],s=[],t=(p)=>{if(a)return;a=!0,clearTimeout(b),r().finally(()=>o(Error(p)))},b=setTimeout(()=>{if(a)return;let p=s.join("").trim()||n.join("").trim();u("local.start.timeout",{id:M.id,stderr:s.join(""),stdout:n.join("")}),t(p?`Local Codeplane server did not start within ${rT2/1000}s: ${p}`:`Local Codeplane server did not start within ${rT2/1000}s`)},rT2);b.unref(),f.stdout?.on("data",(p)=>{let KA=p.toString("utf8");if(n.push(KA),u("local.stdout",{id:M.id,line:KA.trim()}),a)return;let d=oT2(KA)??oT2(n.join(""));if(d===void 0)return;a=!0,clearTimeout(b);let GA=`http://127.0.0.1:${d}`,OA={binaryVersion:M.binaryVersion,child:f,port:d,startedAt:Date.now(),stop:r,url:GA};F.set(M.id,OA),u("local.start.ready",{id:M.id,port:d,url:GA}),L?.({version:M.binaryVersion,phase:"ready",message:`Local Codeplane ${M.binaryVersion} is listening on ${GA}.`,percent:100,binaryVersion:M.binaryVersion}),l({id:M.id,binaryVersion:M.binaryVersion,port:d,url:GA})}),f.stderr?.on("data",(p)=>{let KA=p.toString("utf8");s.push(KA),u("local.stderr",{id:M.id,line:KA.trim()})}),f.on("error",(p)=>{if(a)return;a=!0,clearTimeout(b),u("local.start.error",{error:p,id:M.id}),o(p)}),f.on("exit",(p,KA)=>{if(F.delete(M.id),a){u("local.exit",{code:p,id:M.id,signal:KA});return}let d=s.join("").trim(),GA=n.join("").trim(),OA=d||GA;u("local.start.exit",{code:p,id:M.id,signal:KA,stderr:d}),t(OA?`Local Codeplane (${P}) exited with code ${p??KA??"unknown"}: ${OA}`:`Local Codeplane (${P}) exited with code ${p??KA??"unknown"}`)})})})}async function Y(M){let L=F.get(M);if(!L)return;u("local.stop",{id:M}),await L.stop()}async function $(){u("local.stopAll",{count:F.size}),await Promise.all([...F.values()].map((M)=>M.stop()))}function V(M){return F.has(M)}function H(M){let L=F.get(M);if(!L)return;return{id:M,binaryVersion:L.binaryVersion,port:L.port,url:L.url}}function Z(){return[...F.entries()].map(([M,L])=>({id:M,binaryVersion:L.binaryVersion,port:L.port,url:L.url}))}async function N(M,L){return await Y(M.id),X(M,L)}async function B(M){u("local.uninstall",{version:M}),await nb.rm(w(M),{force:!0,recursive:!0})}async function z(M){u("local.remove-data",{id:M}),await nb.rm(j(M),{force:!0,recursive:!0})}return{download:W,getRunning:H,isInstalled:U,isRunning:V,listRunning:Z,removeData:z,resolveTarget:async()=>q,restart:N,start:X,status:_,stop:Y,stopAll:$,target:q,uninstall:B}}var ya7,rT2=30000,va7;var c0u=k(()=>{DkA();ya7=[/listening on https?:\/\/[^:\s]+:(\d+)/i,/listening at https?:\/\/[^:\s]+:(\d+)/i,/server (?:started|ready) (?:on|at) https?:\/\/[^:\s]+:(\d+)/i],va7=Number(process.env.CODEPLANE_LOCAL_SHUTDOWN_GRACE_MS)||4000});var d0u=k(()=>{c0u();DkA()});var n0u={};fA(n0u,{createInstanceService:()=>ca7,TUIAuthRequiredError:()=>uI2});import eT2 from"fs/promises";import AI2 from"path";function ia7(A,u){let q=u.phase==="detect"||u.phase==="download"?"download":u.phase==="extract"?"finalize":u.phase==="start"?"probe":u.phase==="ready"?"done":"download";return{instanceID:A,phase:q,message:u.message,percent:u.percent,version:u.binaryVersion,completed:u.transferred,total:u.total}}function ca7(){let A=TV.paths(),u=y0u(A.instances),q=sT2({binariesDir:A.local_server_binaries,configDir:A.root,dataDir:A.local_server,desktopManaged:!1}),F=!1;async function G(){if(F)return;F=!0,await u.migrate(AI2.join(TV.legacyPaths().state,"tui-instances.json")),await w()}async function w(){try{let V=AI2.join(A.globalRoot,"instances"),H=await eT2.readdir(V,{withFileTypes:!0}).catch(()=>[]),Z=[],N=[];for(let L of H){if(!L.isDirectory())continue;let x=AI2.join(V,L.name,"instances.json"),P=await eT2.readFile(x,"utf8").catch(()=>{return});if(P===void 0)continue;try{let D=JSON.parse(P);if(Array.isArray(D.instances)){for(let C of D.instances)N.push(C);Z.push(x)}}catch{}}if(N.length===0)return;let B=await u.list(),z=new Set(B.map((L)=>L.id)),M=0;for(let L of N){if(z.has(L.id))continue;await u.save({...L,url:O1A(L.url)??L.url}),z.add(L.id),M+=1}for(let L of Z)await eT2.unlink(L).catch(()=>{return});if(M>0)process.stderr.write(`[codeplane] Migrated ${M} stranded instance(s) into the shared registry.
|
|
5279
|
-
`)}catch{}}async function Q(){return await G(),u.list()}async function g(V){return await G(),u.save({...V,url:O1A(V.url)??V.url})}async function j(V){return await G(),await q.stop(V).catch(()=>{return}),u.remove(V)}async function K(V){let H=typeof V==="string"?{id:`probe:${Date.now()}`,url:V}:V,Z=O1A(H.url);if(!Z)return{ok:!1,error:`Invalid instance URL: ${H.url}`};let N=new Headers(G_0(H));if(Z.includes("@")){let B=new URL(Z);if(B.username||B.password)N.set("Authorization",`Basic ${ta7(`${B.username}:${B.password}`)}`),B.username="",B.password=""}return fetch(new URL("/global/version",`${Z}/`),{headers:N,redirect:"follow"}).then(async(B)=>{let z=B.headers.get("content-type")?.includes("json")?await B.json().catch(()=>({})):{};if(!B.ok)return{ok:!1,status:B.status,error:`HTTP ${B.status}`};return{ok:!0,status:B.status,version:typeof z.current==="string"?z.current:void 0,latest:typeof z.latest==="string"?z.latest:void 0}}).catch((B)=>({ok:!1,error:B instanceof Error?B.message:String(B)}))}async function U(V,H){if(!V.local)return V;let Z=V.local.binaryVersion||await RkA(),N=(z)=>H?.(ia7(V.id,{...z,version:Z})),B=await q.start({id:V.id,binaryVersion:Z},N);return{...V,url:B.url,local:{binaryVersion:Z}}}async function _(V,H){await G(),H?.({instanceID:V.id,phase:"probe",message:"Resolving instance\u2026",percent:8});let Z=await U(V,H);if(H?.({instanceID:V.id,phase:"probe",message:"Checking server version\u2026",percent:20}),!Z.local){let L=await K(Z),x=()=>new uI2({authUrl:Z.url,instanceUrl:Z.url});if(!L.ok){let P=L.status;if(P===401||P===403)throw x();throw Error(L.error||`Could not reach ${Z.url}`)}if(!L.version)throw x();H?.({instanceID:V.id,phase:"finalize",message:`Opening Codeplane ${L.version}\u2026`,percent:60,version:L.version})}let N=SjA({instance:Z,throwOnError:!0}),B=(await N.global.version()).data?.current;if(!B)throw Error(`No version returned from ${Z.url}`);H?.({instanceID:V.id,phase:"finalize",message:`Opening Codeplane ${B}\u2026`,percent:88,version:B});let z=(await N.path.get()).data;if(!z)throw Error("No path info returned by server");let M=SjA({instance:Z,directory:z.directory,throwOnError:!0});return await u.setLast(V.id),H?.({instanceID:V.id,phase:"done",message:`Connected to Codeplane ${B}.`,percent:100,version:B}),{client:M,instance:V,live:Z,path:z,version:B}}async function O(V,H){let Z=await U(V),N=SjA({instance:Z,throwOnError:!0}),z=(await N.path.get({directory:H})).data;if(!z)throw Error(`Server did not resolve directory: ${H}`);let L=(await N.global.version()).data?.current??"";return{client:SjA({instance:Z,directory:z.directory,throwOnError:!0}),instance:V,live:Z,path:z,version:L}}async function W(){return{...await q.resolveTarget(),defaultVersion:await RkA()}}async function X(V){return q.status(V||await RkA())}async function Y(V,H){let Z=V||await RkA(),N=await q.download(Z,(B)=>H?.({version:Z,phase:B.phase,message:B.message,percent:B.percent,binaryVersion:B.binaryVersion,transferred:B.transferred,total:B.total}));return await R0u(Z),N}async function $(V,H,Z){let N=V.label??V.id;if(V.local){H?.({phase:"checking",message:"Checking npm for newer Codeplane\u2026"});let L=Z?.replace(/^v/,""),x=L??await q_0().catch(()=>{return});if(!x)return{kind:"error",message:"Could not reach the npm registry. Check your network and try again.",label:N};let P=V.local.binaryVersion||"";if(P&&!L){let C=W1A.default.coerce(P)?.version,y=W1A.default.coerce(x)?.version;if(C&&y&&!W1A.default.gt(y,C))return{kind:"already-latest",version:P,label:N}}H?.({phase:"downloading",message:`Downloading Codeplane v${x}\u2026`});try{await Y(x,(C)=>H?.({phase:"downloading",message:C.message??`Downloading v${x}\u2026`,percent:C.percent}))}catch(C){return{kind:"error",message:`Download failed: ${C instanceof Error?C.message:String(C)}`,label:N}}let D=await X(x);if(!D.installed)return{kind:"error",message:`Install of v${x} reported success but binary is missing on disk (expected at ${D.binaryPath||"unknown path"}). Saved binaryVersion was NOT updated. Re-try, or run \`codeplane upgrade ${x}\` from a shell.`,label:N};return H?.({phase:"saving",message:"Saving updated instance\u2026"}),await g({...V,local:{binaryVersion:x}}),H?.({phase:"done",message:`Updated ${N} to v${x}`}),{kind:"updated-local",from:P,to:x,label:N}}H?.({phase:"checking",message:"Probing remote server\u2026"});let B=await K(V);if(!B.ok)return{kind:"remote-unreachable",message:B.error||"Server is unreachable. Check the URL and credentials.",label:N};let z=B.version??void 0,M=B.latest??void 0;if(z&&M){let L=W1A.default.coerce(z)?.version,x=W1A.default.coerce(M)?.version;if(L&&x&&W1A.default.gt(x,L))return{kind:"remote-update-available",current:z,latest:M,label:N}}return{kind:"remote-current",version:z,label:N}}return{installLocal:Y,list:Q,localStatus:X,localTarget:W,open:_,reopen:O,probe:K,remove:j,save:g,setLast:u.setLast,updateInstance:$,stopAll:()=>q.stopAll(),store:u}}var W1A,uI2,ta7=(A)=>Buffer.from(A).toString("base64");var p0u=k(()=>{uJA();v0u();DkA();aT2();d0u();W1A=A2(Nw(),1);uI2=class uI2 extends Error{authUrl;instanceUrl;constructor(A){super(`Interactive sign-in is required for ${A.instanceUrl}`);this.name="TUIAuthRequiredError",this.authUrl=A.authUrl,this.instanceUrl=A.instanceUrl}}});await Bq();var{plugin:lT4}=globalThis.Bun;await Z0([ZCA(),G6A()]);import{existsSync as luu,readFileSync as WC2,realpathSync as tuu}from"fs";import{basename as uO0,dirname as xKA,isAbsolute as gC2,join as iuu}from"path";import{fileURLToPath as jC2}from"url";var XC2="@opentui/core",YC2="@opentui/core/testing",NCA="opentui:runtime-module:",cuu=64,KC2={nodeModulesRuntimeSpecifiers:!0,nodeModulesBareSpecifiers:!1},duu=[XC2,YC2],nuu=new Set(duu),FO0=(A)=>{return nuu.has(A)},puu=async()=>{return await AO0().then(() => QC2)},$C2=(A)=>{return A.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")},auu=(A)=>{return new RegExp(`^${$C2(A)}$`)},ruu=(A)=>{let u=[...new Set(A.map($m))];return new RegExp(`^(?:${u.map($C2).join("|")})(?:[?#].*)?$`)},RKA=(A)=>{return`${NCA}${encodeURIComponent(A)}`},ouu=async(A)=>{if(typeof A==="function")return await A();return A},$m=(A)=>{let u=A.indexOf("?"),q=A.indexOf("#"),F=[u,q].filter((G)=>G>=0).sort((G,w)=>G-w)[0];return F===void 0?A:A.slice(0,F)},UC2=new Map,zKA=(A)=>{let u=$m(A),q=UC2.get(u);if(q!==void 0)return q;let F=u;try{F=tuu(u)}catch{F=u}return UC2.set(u,F),F},qO0=(A)=>{return/(?:^|[/\\])node_modules(?:[/\\])/.test(A)},suu=(A,u)=>{let q=xKA(A);while(!0){let F=iuu(q,"package.json");if(luu(F)){let w=u.get(F);if(w)return w;let Q="commonjs";try{if(JSON.parse(WC2(F,"utf8")).type==="module")Q="module"}catch{Q="commonjs"}return u.set(F,Q),Q}let G=xKA(q);if(G===q)return"commonjs";q=G}},_C2=(A,u)=>{let q=zKA(A);if(!qO0(q))return!1;if(q.endsWith(".mjs")||q.endsWith(".mts")||q.endsWith(".ts")||q.endsWith(".tsx")||q.endsWith(".jsx"))return!0;if(q.endsWith(".cjs")||q.endsWith(".cts")||!q.endsWith(".js"))return!1;return suu(q,u)==="module"},euu=(A)=>{let u=xKA(A);while(!0){let q=xKA(u);if(q===u)return null;if(uO0(q)==="node_modules")return u;if(uO0(xKA(q))==="node_modules"&&uO0(q).startsWith("@"))return u;u=q}},A4u=(A)=>{return{nodeModulesRuntimeSpecifiers:A?.nodeModulesRuntimeSpecifiers??KC2.nodeModulesRuntimeSpecifiers,nodeModulesBareSpecifiers:A?.nodeModulesBareSpecifiers??KC2.nodeModulesBareSpecifiers}},JC2=(A)=>{let u=$m(A);if(u.endsWith(".tsx"))return"tsx";if(u.endsWith(".jsx"))return"jsx";if(u.endsWith(".ts")||u.endsWith(".mts")||u.endsWith(".cts"))return"ts";if(u.endsWith(".js")||u.endsWith(".mjs")||u.endsWith(".cjs"))return"js";return null},VC2=[/(from\s+["'])([^"']+)(["'])/g,/(import\s+["'])([^"']+)(["'])/g,/(import\s*\(\s*["'])([^"']+)(["']\s*\))/g,/(require\s*\(\s*["'])([^"']+)(["']\s*\))/g],u4u=(A)=>{if(A.startsWith(".")||A.startsWith("/")||A.startsWith("\\"))return!1;if(A.startsWith("node:")||A.startsWith("bun:")||A.startsWith("http:")||A.startsWith("https:")||A.startsWith("file:")||A.startsWith("data:"))return!1;if(A.startsWith(NCA))return!1;return!0},q4u=(A,u)=>{let q=A.indexOf(u);if(q>=0)A.splice(q,1);if(A.push(u),A.length>cuu)A.shift()},ZC2=(A,u)=>{let q=A;for(let F of VC2)q=q.replace(F,(G,w,Q,g)=>{let j=u(Q);if(!j||j===Q)return G;return`${w}${j}${g}`});return q},F4u=(A)=>{let u=new Set;for(let q of VC2)A.replace(q,(F,G,w)=>{return u.add(w),F});return[...u]},HC2=(A,u)=>{try{let q=import.meta.resolve(A,u);if(q===A||q.startsWith("node:")||q.startsWith("bun:"))return null;return q}catch{return null}},OC2=(A,u)=>{if(A.startsWith("node:")||A.startsWith("bun:")||A.startsWith("http:")||A.startsWith("https:")||A.startsWith("data:")||A.startsWith(NCA))return null;if(A.startsWith("file:"))return $m(jC2(A));if(gC2(A))return $m(A);let q=HC2(A,u);if(!q)return null;if(q.startsWith("file:"))return $m(jC2(q));if(gC2(q))return $m(q);return null},G4u=(A,u)=>{if(u.length===0)return A;return ZC2(A,(F)=>{if(!u4u(F))return null;for(let G=u.length-1;G>=0;G-=1){let w=u[G],Q=HC2(F,w);if(Q)return Q}return null})},w4u=(A,u)=>{return ZC2(A,(q)=>{return u.get(q)??null})};function GO0(A={}){let u=new Map;u.set(XC2,A.core??GJ0),u.set(YC2,puu);let q=A4u(A.rewrite);for(let[G,w]of Object.entries(A.additional??{}))u.set(G,w);let F=new Map;for(let G of u.keys())F.set(G,RKA(G));return{name:"bun-plugin-opentui-runtime-modules",setup:(G)=>{let w=[],Q=new Set,g=new Set,j=new Map,K=new Map,U=new Map,_=(X)=>{let Y=$m(X),$=zKA(Y);if(Q.has($))return;Q.add($),G.onLoad({filter:ruu([Y,$])},async(V)=>{let H=zKA(V.path);if(H!==$)return;let Z=qO0(H),N=!Z||q.nodeModulesRuntimeSpecifiers,B=!Z||q.nodeModulesBareSpecifiers,z=JC2(V.path);if(!z)throw Error(`Unable to determine runtime loader for path: ${V.path}`);let M=await Bun.file(H).text(),L=N?w4u(M,F):M;if(L!==M&&B)q4u(w,H);return{contents:B?G4u(L,w):L,loader:z}})},O=(X)=>{let Y=zKA(X),$=K.get(Y);if($)return $;let V=WC2(Y,"utf8"),H=F4u(V),Z={importSpecifiers:H,needsRuntimeSpecifierRewrite:H.some((N)=>F.has(N))};return K.set(Y,Z),Z},W=(X,Y=new Set)=>{let $=zKA(X);if(!_C2($,j))return[];let V=U.get($);if(V)return V;if(Y.has($))return[];Y.add($);let H=new Set,Z=O($);if(Z.needsRuntimeSpecifierRewrite)H.add($);for(let B of Z.importSpecifiers){let z=OC2(B,$);if(!z||!_C2(z,j))continue;for(let M of W(z,Y))H.add(M)}Y.delete($);let N=[...H];return U.set($,N),N};for(let[X,Y]of u.entries()){let $=F.get(X);if(!$)continue;G.module($,async()=>({exports:await ouu(Y),loader:"object"})),G.onResolve({filter:auu(X)},()=>({path:$}))}G.onResolve({filter:/.*/},(X)=>{if(F.has(X.path)||X.path.startsWith(NCA))return;let Y=OC2(X.path,X.importer);if(!Y||!JC2(Y))return;if(!qO0(Y)){_(Y);return}if(!q.nodeModulesRuntimeSpecifiers&&!q.nodeModulesBareSpecifiers)return;for(let H of W(Y))_(H);let V=euu(Y);if(q.nodeModulesBareSpecifiers&&V&&g.has(V)){_(Y);return}if(!q.nodeModulesRuntimeSpecifiers||!O(Y).needsRuntimeSpecifierRewrite)return;if(q.nodeModulesBareSpecifiers&&V)g.add(V);_(Y);return})}}}await Z0([ZCA(),G6A()]);K6();mF();await TA();var S31=A2(Pg(),1),C31=A2(aZ0(),1),f31=A2(r51(),1),h31=A2(I31(),1);var{plugin:mT4}=globalThis.Bun;var k31=Symbol.for("opentui.solid.transform"),b31=()=>{let A=globalThis;return A[k31]??={installed:!1},A[k31]},yT4=()=>{return b31().runtime??{}},LB0=(A)=>{let u=A.indexOf("?"),q=A.indexOf("#"),F=[u,q].filter((G)=>G>=0).sort((G,w)=>G-w)[0];return F===void 0?A:A.slice(0,F)},vT4=(A)=>{return A.moduleName!==void 0||A.resolvePath!==void 0};function m31(A={}){let u=b31();if(vT4(A))u.runtime={moduleName:A.moduleName,resolvePath:A.resolvePath};if(u.installed)return!1;return mT4(y31()),u.installed=!0,!0}function y31(A={}){return{name:"bun-plugin-solid",setup:(u)=>{u.onLoad({filter:/[/\\]node_modules[/\\]solid-js[/\\]dist[/\\]server\.js(?:[?#].*)?$/},async(q)=>{let F=LB0(q.path).replace("server.js","solid.js");return{contents:await Bun.file(F).text(),loader:"js"}}),u.onLoad({filter:/[/\\]node_modules[/\\]solid-js[/\\]store[/\\]dist[/\\]server\.js(?:[?#].*)?$/},async(q)=>{let F=LB0(q.path).replace("server.js","store.js");return{contents:await Bun.file(F).text(),loader:"js"}}),u.onLoad({filter:/\.(js|ts)x(?:[?#].*)?$/},async(q)=>{let F=LB0(q.path),w=await Bun.file(F).text(),Q=yT4(),g=A.moduleName??Q.moduleName??"@opentui/solid",j=A.resolvePath??Q.resolvePath;return{contents:(await S31.transformAsync(w,{filename:F,configFile:!1,babelrc:!1,plugins:j?[[f31.default,{resolvePath(_){return j(_)??_}}]]:[],presets:[[h31.default,{moduleName:g,generate:"universal"}],[C31.default]]}))?.code??"",loader:"js"}})}}}var nG9=y31();var v31=Symbol.for("opentui.solid.runtime-plugin-support"),tT4={"@opentui/solid":iO0,"solid-js":NO0,"solid-js/store":EO0};function l31(A){return`${A?.nodeModulesRuntimeSpecifiers??!0}:${A?.nodeModulesBareSpecifiers??!1}`}function iT4(A){return{...tT4,...A?.additional??{}}}function cT4(A,u,q){for(let F of Object.keys(u))if(!A.specifiers.has(F))throw Error(`OpenTUI Solid runtime plugin support is already installed without ${F}. Call ensureRuntimePluginSupport({ additional }) from @opentui/solid/runtime-plugin-support/configure before importing @opentui/solid/runtime-plugin-support.`);if(q?.core&&q.core!==A.core)throw Error("OpenTUI Solid runtime plugin support is already installed with a different core runtime module.");if(q?.rewrite&&l31(q.rewrite)!==A.rewriteKey)throw Error("OpenTUI Solid runtime plugin support is already installed with different rewrite options.")}function t31(A={}){let u=globalThis,q=iT4(A),F=A.core??sJ0,G=l31(A.rewrite),w=u[v31];if(w)return cT4(w,q,A),!1;return m31({moduleName:RKA("@opentui/solid"),resolvePath(Q){if(!FO0(Q)&&!q[Q])return null;return RKA(Q)}}),lT4(GO0({core:F,additional:q,rewrite:A.rewrite})),u[v31]={specifiers:new Set(Object.keys(q)),core:F,rewriteKey:G},!0}t31();await Wp();await Jc0({print:process.argv.includes("--print-logs"),level:process.env.CODEPLANE_LOG_LEVEL??"INFO"});var{tui:da7}=await Y0u().then(() => X0u),{TuiConfig:na7}=await p10().then(() => Ae),{runBootWizard:pa7}=await m0u().then(() => b0u),{createInstanceService:aa7}=await Promise.resolve().then(() => (p0u(),n0u)),{headersForInstance:ra7,normalizeInstanceUrl:oa7}=await Promise.resolve().then(() => (aT2(),l0u)),{localInstanceUrl:sa7}=await Promise.resolve().then(() => V0u);function ea7(A){let u={};for(let q=0;q<A.length;q++){let F=A[q],G=A[q+1];if(F==="--instance")u.instance=G;if(F==="--route")u.route=G;if(F==="--dir"||F==="--directory")u.directory=G;if(F==="--session"||F==="-s")u.sessionID=G;if(F==="--continue"||F==="-c")u.continueSession=!0;if(F==="--fork")u.fork=!0}return u}function Ar7(){return{id:"default",url:sa7("default"),label:"Default local",local:{binaryVersion:""}}}async function ur7(A){let u=Ar7();return await A.save(u),u}async function qr7(A,u){if(u.instance){let w=(await A.list()).find((Q)=>Q.id===u.instance);if(!w)throw Error(`Saved instance not found: ${u.instance}`);return{instance:w,directory:u.directory}}let q=await A.list();if(q.length===0)await ur7(A),q=await A.list();let F=await pa7({service:A,instances:q,defaultDirectory:u.directory??process.cwd()});if(!F)return null;return{instance:F.instance,directory:F.directory}}async function Fr7(A,u){let q=await qr7(A,u);if(!q)return null;let F=await A.open(q.instance),G=oa7(F.live.url);if(!G)throw Error(`Resolved instance has invalid URL: ${F.live.url}`);return{url:G,headers:ra7(F.live)??{},directory:q.directory}}async function Gr7(){let A=aa7(),u=!1,q=async()=>{if(u)return;u=!0,await A.stopAll().catch(()=>{return})};for(let F of["SIGTERM","SIGHUP","SIGINT"])process.once(F,()=>{q().finally(()=>process.exit(0))});try{let F=ea7(process.argv.slice(2)),G=await Fr7(A,F);if(!G)await q(),process.exit(0);let w=await na7.get(),Q={continue:F.continueSession,sessionID:F.sessionID,fork:F.fork};await da7({url:G.url,config:w,args:Q,directory:G.directory,headers:G.headers})}finally{await q()}}function wr7(A){let u=A instanceof Error?A.message:String(A),q=u||"Unknown error",F=u.toLowerCase();if(F.includes("401")||F.includes("unauthorized"))return{kind:"auth-required",detail:q};if(F.includes("403")||F.includes("forbidden"))return{kind:"auth-required",detail:q};if(F.includes("fetch failed")||F.includes("econnrefused")||F.includes("ehostunreach")||F.includes("enotfound")||F.includes("etimedout")||F.includes("connection refused")||F.includes("network is unreachable")||F.includes("getaddrinfo")||F.includes("connect timeout"))return{kind:"unreachable",detail:q};return{kind:"unknown",detail:q}}Gr7().catch((A)=>{let u=wr7(A);if(u.kind==="unreachable")console.error(`
|
|
5279
|
+
`)}catch{}}async function Q(){return await G(),u.list()}async function g(V){return await G(),u.save({...V,url:O1A(V.url)??V.url})}async function j(V){return await G(),await q.stop(V).catch(()=>{return}),u.remove(V)}async function K(V){let H=typeof V==="string"?{id:`probe:${Date.now()}`,url:V}:V,Z=O1A(H.url);if(!Z)return{ok:!1,error:`Invalid instance URL: ${H.url}`};let N=new Headers(G_0(H));if(Z.includes("@")){let B=new URL(Z);if(B.username||B.password)N.set("Authorization",`Basic ${ta7(`${B.username}:${B.password}`)}`),B.username="",B.password=""}return fetch(new URL("/global/version",`${Z}/`),{headers:N,redirect:"follow"}).then(async(B)=>{let z=B.headers.get("content-type")?.includes("json")?await B.json().catch(()=>({})):{};if(!B.ok)return{ok:!1,status:B.status,error:`HTTP ${B.status}`};return{ok:!0,status:B.status,version:typeof z.current==="string"?z.current:void 0,latest:typeof z.latest==="string"?z.latest:void 0}}).catch((B)=>({ok:!1,error:B instanceof Error?B.message:String(B)}))}async function U(V,H){if(!V.local)return V;let Z=V.local.binaryVersion||await RkA(),N=(z)=>H?.(ia7(V.id,{...z,version:Z})),B=await q.start({id:V.id,binaryVersion:Z},N);return{...V,url:B.url,local:{binaryVersion:Z}}}async function _(V,H){await G(),H?.({instanceID:V.id,phase:"probe",message:"Resolving instance\u2026",percent:8});let Z=await U(V,H);if(H?.({instanceID:V.id,phase:"probe",message:"Checking server version\u2026",percent:20}),!Z.local){let L=await K(Z),x=()=>new uI2({authUrl:Z.url,instanceUrl:Z.url});if(!L.ok){let P=L.status;if(P===401||P===403)throw x();throw Error(L.error||`Could not reach ${Z.url}`)}if(!L.version)throw x();H?.({instanceID:V.id,phase:"finalize",message:`Opening Codeplane ${L.version}\u2026`,percent:60,version:L.version})}let N=SjA({instance:Z,throwOnError:!0}),B=(await N.global.version()).data?.current;if(!B)throw Error(`No version returned from ${Z.url}`);H?.({instanceID:V.id,phase:"finalize",message:`Opening Codeplane ${B}\u2026`,percent:88,version:B});let z=(await N.path.get()).data;if(!z)throw Error("No path info returned by server");let M=SjA({instance:Z,directory:z.directory,throwOnError:!0});return await u.setLast(V.id),H?.({instanceID:V.id,phase:"done",message:`Connected to Codeplane ${B}.`,percent:100,version:B}),{client:M,instance:V,live:Z,path:z,version:B}}async function O(V,H){let Z=await U(V),N=SjA({instance:Z,throwOnError:!0}),z=(await N.path.get({directory:H})).data;if(!z)throw Error(`Server did not resolve directory: ${H}`);let L=(await N.global.version()).data?.current??"";return{client:SjA({instance:Z,directory:z.directory,throwOnError:!0}),instance:V,live:Z,path:z,version:L}}async function W(){return{...await q.resolveTarget(),defaultVersion:await RkA()}}async function X(V){return q.status(V||await RkA())}async function Y(V,H){let Z=V||await RkA(),N=await q.download(Z,(B)=>H?.({version:Z,phase:B.phase,message:B.message,percent:B.percent,binaryVersion:B.binaryVersion,transferred:B.transferred,total:B.total}));return await R0u(Z),N}async function $(V,H,Z){let N=V.label??V.id;if(V.local){H?.({phase:"checking",message:"Checking npm for newer Codeplane\u2026"});let L=Z?.replace(/^v/,""),x=L??await q_0().catch(()=>{return});if(!x)return{kind:"error",message:"Could not reach the npm registry. Check your network and try again.",label:N};let P=V.local.binaryVersion||"";if(P&&!L){let C=W1A.default.coerce(P)?.version,y=W1A.default.coerce(x)?.version;if(C&&y&&!W1A.default.gt(y,C))return{kind:"already-latest",version:P,label:N}}H?.({phase:"downloading",message:`Downloading Codeplane v${x}\u2026`});try{await Y(x,(C)=>H?.({phase:"downloading",message:C.message??`Downloading v${x}\u2026`,percent:C.percent}))}catch(C){return{kind:"error",message:`Download failed: ${C instanceof Error?C.message:String(C)}`,label:N}}let D=await X(x);if(!D.installed)return{kind:"error",message:`Install of v${x} reported success but binary is missing on disk (expected at ${D.binaryPath||"unknown path"}). Saved binaryVersion was NOT updated. Re-try, or run \`codeplane upgrade ${x}\` from a shell.`,label:N};return H?.({phase:"saving",message:"Saving updated instance\u2026"}),await g({...V,local:{binaryVersion:x}}),H?.({phase:"done",message:`Updated ${N} to v${x}`}),{kind:"updated-local",from:P,to:x,label:N}}H?.({phase:"checking",message:"Probing remote server\u2026"});let B=await K(V);if(!B.ok)return{kind:"remote-unreachable",message:B.error||"Server is unreachable. Check the URL and credentials.",label:N};let z=B.version??void 0,M=B.latest??void 0;if(z&&M){let L=W1A.default.coerce(z)?.version,x=W1A.default.coerce(M)?.version;if(L&&x&&W1A.default.gt(x,L))return{kind:"remote-update-available",current:z,latest:M,label:N}}return{kind:"remote-current",version:z,label:N}}return{installLocal:Y,list:Q,localStatus:X,localTarget:W,open:_,reopen:O,probe:K,remove:j,save:g,setLast:u.setLast,updateInstance:$,stopAll:()=>q.stopAll(),store:u}}var W1A,uI2,ta7=(A)=>Buffer.from(A).toString("base64");var p0u=k(()=>{uJA();v0u();DkA();aT2();d0u();W1A=A2(Nw(),1);uI2=class uI2 extends Error{authUrl;instanceUrl;constructor(A){super(`Interactive sign-in is required for ${A.instanceUrl}`);this.name="TUIAuthRequiredError",this.authUrl=A.authUrl,this.instanceUrl=A.instanceUrl}}});await Bq();var{plugin:lT4}=globalThis.Bun;await Z0([ZCA(),G6A()]);import{existsSync as luu,readFileSync as WC2,realpathSync as tuu}from"fs";import{basename as uO0,dirname as xKA,isAbsolute as gC2,join as iuu}from"path";import{fileURLToPath as jC2}from"url";var XC2="@opentui/core",YC2="@opentui/core/testing",NCA="opentui:runtime-module:",cuu=64,KC2={nodeModulesRuntimeSpecifiers:!0,nodeModulesBareSpecifiers:!1},duu=[XC2,YC2],nuu=new Set(duu),FO0=(A)=>{return nuu.has(A)},puu=async()=>{return await AO0().then(() => QC2)},$C2=(A)=>{return A.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")},auu=(A)=>{return new RegExp(`^${$C2(A)}$`)},ruu=(A)=>{let u=[...new Set(A.map($m))];return new RegExp(`^(?:${u.map($C2).join("|")})(?:[?#].*)?$`)},RKA=(A)=>{return`${NCA}${encodeURIComponent(A)}`},ouu=async(A)=>{if(typeof A==="function")return await A();return A},$m=(A)=>{let u=A.indexOf("?"),q=A.indexOf("#"),F=[u,q].filter((G)=>G>=0).sort((G,w)=>G-w)[0];return F===void 0?A:A.slice(0,F)},UC2=new Map,zKA=(A)=>{let u=$m(A),q=UC2.get(u);if(q!==void 0)return q;let F=u;try{F=tuu(u)}catch{F=u}return UC2.set(u,F),F},qO0=(A)=>{return/(?:^|[/\\])node_modules(?:[/\\])/.test(A)},suu=(A,u)=>{let q=xKA(A);while(!0){let F=iuu(q,"package.json");if(luu(F)){let w=u.get(F);if(w)return w;let Q="commonjs";try{if(JSON.parse(WC2(F,"utf8")).type==="module")Q="module"}catch{Q="commonjs"}return u.set(F,Q),Q}let G=xKA(q);if(G===q)return"commonjs";q=G}},_C2=(A,u)=>{let q=zKA(A);if(!qO0(q))return!1;if(q.endsWith(".mjs")||q.endsWith(".mts")||q.endsWith(".ts")||q.endsWith(".tsx")||q.endsWith(".jsx"))return!0;if(q.endsWith(".cjs")||q.endsWith(".cts")||!q.endsWith(".js"))return!1;return suu(q,u)==="module"},euu=(A)=>{let u=xKA(A);while(!0){let q=xKA(u);if(q===u)return null;if(uO0(q)==="node_modules")return u;if(uO0(xKA(q))==="node_modules"&&uO0(q).startsWith("@"))return u;u=q}},A4u=(A)=>{return{nodeModulesRuntimeSpecifiers:A?.nodeModulesRuntimeSpecifiers??KC2.nodeModulesRuntimeSpecifiers,nodeModulesBareSpecifiers:A?.nodeModulesBareSpecifiers??KC2.nodeModulesBareSpecifiers}},JC2=(A)=>{let u=$m(A);if(u.endsWith(".tsx"))return"tsx";if(u.endsWith(".jsx"))return"jsx";if(u.endsWith(".ts")||u.endsWith(".mts")||u.endsWith(".cts"))return"ts";if(u.endsWith(".js")||u.endsWith(".mjs")||u.endsWith(".cjs"))return"js";return null},VC2=[/(from\s+["'])([^"']+)(["'])/g,/(import\s+["'])([^"']+)(["'])/g,/(import\s*\(\s*["'])([^"']+)(["']\s*\))/g,/(require\s*\(\s*["'])([^"']+)(["']\s*\))/g],u4u=(A)=>{if(A.startsWith(".")||A.startsWith("/")||A.startsWith("\\"))return!1;if(A.startsWith("node:")||A.startsWith("bun:")||A.startsWith("http:")||A.startsWith("https:")||A.startsWith("file:")||A.startsWith("data:"))return!1;if(A.startsWith(NCA))return!1;return!0},q4u=(A,u)=>{let q=A.indexOf(u);if(q>=0)A.splice(q,1);if(A.push(u),A.length>cuu)A.shift()},ZC2=(A,u)=>{let q=A;for(let F of VC2)q=q.replace(F,(G,w,Q,g)=>{let j=u(Q);if(!j||j===Q)return G;return`${w}${j}${g}`});return q},F4u=(A)=>{let u=new Set;for(let q of VC2)A.replace(q,(F,G,w)=>{return u.add(w),F});return[...u]},HC2=(A,u)=>{try{let q=import.meta.resolve(A,u);if(q===A||q.startsWith("node:")||q.startsWith("bun:"))return null;return q}catch{return null}},OC2=(A,u)=>{if(A.startsWith("node:")||A.startsWith("bun:")||A.startsWith("http:")||A.startsWith("https:")||A.startsWith("data:")||A.startsWith(NCA))return null;if(A.startsWith("file:"))return $m(jC2(A));if(gC2(A))return $m(A);let q=HC2(A,u);if(!q)return null;if(q.startsWith("file:"))return $m(jC2(q));if(gC2(q))return $m(q);return null},G4u=(A,u)=>{if(u.length===0)return A;return ZC2(A,(F)=>{if(!u4u(F))return null;for(let G=u.length-1;G>=0;G-=1){let w=u[G],Q=HC2(F,w);if(Q)return Q}return null})},w4u=(A,u)=>{return ZC2(A,(q)=>{return u.get(q)??null})};function GO0(A={}){let u=new Map;u.set(XC2,A.core??GJ0),u.set(YC2,puu);let q=A4u(A.rewrite);for(let[G,w]of Object.entries(A.additional??{}))u.set(G,w);let F=new Map;for(let G of u.keys())F.set(G,RKA(G));return{name:"bun-plugin-opentui-runtime-modules",setup:(G)=>{let w=[],Q=new Set,g=new Set,j=new Map,K=new Map,U=new Map,_=(X)=>{let Y=$m(X),$=zKA(Y);if(Q.has($))return;Q.add($),G.onLoad({filter:ruu([Y,$])},async(V)=>{let H=zKA(V.path);if(H!==$)return;let Z=qO0(H),N=!Z||q.nodeModulesRuntimeSpecifiers,B=!Z||q.nodeModulesBareSpecifiers,z=JC2(V.path);if(!z)throw Error(`Unable to determine runtime loader for path: ${V.path}`);let M=await Bun.file(H).text(),L=N?w4u(M,F):M;if(L!==M&&B)q4u(w,H);return{contents:B?G4u(L,w):L,loader:z}})},O=(X)=>{let Y=zKA(X),$=K.get(Y);if($)return $;let V=WC2(Y,"utf8"),H=F4u(V),Z={importSpecifiers:H,needsRuntimeSpecifierRewrite:H.some((N)=>F.has(N))};return K.set(Y,Z),Z},W=(X,Y=new Set)=>{let $=zKA(X);if(!_C2($,j))return[];let V=U.get($);if(V)return V;if(Y.has($))return[];Y.add($);let H=new Set,Z=O($);if(Z.needsRuntimeSpecifierRewrite)H.add($);for(let B of Z.importSpecifiers){let z=OC2(B,$);if(!z||!_C2(z,j))continue;for(let M of W(z,Y))H.add(M)}Y.delete($);let N=[...H];return U.set($,N),N};for(let[X,Y]of u.entries()){let $=F.get(X);if(!$)continue;G.module($,async()=>({exports:await ouu(Y),loader:"object"})),G.onResolve({filter:auu(X)},()=>({path:$}))}G.onResolve({filter:/.*/},(X)=>{if(F.has(X.path)||X.path.startsWith(NCA))return;let Y=OC2(X.path,X.importer);if(!Y||!JC2(Y))return;if(!qO0(Y)){_(Y);return}if(!q.nodeModulesRuntimeSpecifiers&&!q.nodeModulesBareSpecifiers)return;for(let H of W(Y))_(H);let V=euu(Y);if(q.nodeModulesBareSpecifiers&&V&&g.has(V)){_(Y);return}if(!q.nodeModulesRuntimeSpecifiers||!O(Y).needsRuntimeSpecifierRewrite)return;if(q.nodeModulesBareSpecifiers&&V)g.add(V);_(Y);return})}}}await Z0([ZCA(),G6A()]);K6();mF();await TA();var S31=A2(Pg(),1),C31=A2(aZ0(),1),f31=A2(r51(),1),h31=A2(I31(),1);var{plugin:mT4}=globalThis.Bun;var k31=Symbol.for("opentui.solid.transform"),b31=()=>{let A=globalThis;return A[k31]??={installed:!1},A[k31]},yT4=()=>{return b31().runtime??{}},LB0=(A)=>{let u=A.indexOf("?"),q=A.indexOf("#"),F=[u,q].filter((G)=>G>=0).sort((G,w)=>G-w)[0];return F===void 0?A:A.slice(0,F)},vT4=(A)=>{return A.moduleName!==void 0||A.resolvePath!==void 0};function m31(A={}){let u=b31();if(vT4(A))u.runtime={moduleName:A.moduleName,resolvePath:A.resolvePath};if(u.installed)return!1;return mT4(y31()),u.installed=!0,!0}function y31(A={}){return{name:"bun-plugin-solid",setup:(u)=>{u.onLoad({filter:/[/\\]node_modules[/\\]solid-js[/\\]dist[/\\]server\.js(?:[?#].*)?$/},async(q)=>{let F=LB0(q.path).replace("server.js","solid.js");return{contents:await Bun.file(F).text(),loader:"js"}}),u.onLoad({filter:/[/\\]node_modules[/\\]solid-js[/\\]store[/\\]dist[/\\]server\.js(?:[?#].*)?$/},async(q)=>{let F=LB0(q.path).replace("server.js","store.js");return{contents:await Bun.file(F).text(),loader:"js"}}),u.onLoad({filter:/\.(js|ts)x(?:[?#].*)?$/},async(q)=>{let F=LB0(q.path),w=await Bun.file(F).text(),Q=yT4(),g=A.moduleName??Q.moduleName??"@opentui/solid",j=A.resolvePath??Q.resolvePath;return{contents:(await S31.transformAsync(w,{filename:F,configFile:!1,babelrc:!1,plugins:j?[[f31.default,{resolvePath(_){return j(_)??_}}]]:[],presets:[[h31.default,{moduleName:g,generate:"universal"}],[C31.default]]}))?.code??"",loader:"js"}})}}}var nG9=y31();var v31=Symbol.for("opentui.solid.runtime-plugin-support"),tT4={"@opentui/solid":iO0,"solid-js":NO0,"solid-js/store":EO0};function l31(A){return`${A?.nodeModulesRuntimeSpecifiers??!0}:${A?.nodeModulesBareSpecifiers??!1}`}function iT4(A){return{...tT4,...A?.additional??{}}}function cT4(A,u,q){for(let F of Object.keys(u))if(!A.specifiers.has(F))throw Error(`OpenTUI Solid runtime plugin support is already installed without ${F}. Call ensureRuntimePluginSupport({ additional }) from @opentui/solid/runtime-plugin-support/configure before importing @opentui/solid/runtime-plugin-support.`);if(q?.core&&q.core!==A.core)throw Error("OpenTUI Solid runtime plugin support is already installed with a different core runtime module.");if(q?.rewrite&&l31(q.rewrite)!==A.rewriteKey)throw Error("OpenTUI Solid runtime plugin support is already installed with different rewrite options.")}function t31(A={}){let u=globalThis,q=iT4(A),F=A.core??sJ0,G=l31(A.rewrite),w=u[v31];if(w)return cT4(w,q,A),!1;return m31({moduleName:RKA("@opentui/solid"),resolvePath(Q){if(!FO0(Q)&&!q[Q])return null;return RKA(Q)}}),lT4(GO0({core:F,additional:q,rewrite:A.rewrite})),u[v31]={specifiers:new Set(Object.keys(q)),core:F,rewriteKey:G},!0}t31();await Wp();await Jc0({print:process.argv.includes("--print-logs"),level:process.env.CODEPLANE_LOG_LEVEL??"INFO"});var{tui:da7}=await Y0u().then(() => X0u),{TuiConfig:na7}=await p10().then(() => Ae),{runBootWizard:pa7}=await m0u().then(() => b0u),{createInstanceService:aa7}=await Promise.resolve().then(() => (p0u(),n0u)),{headersForInstance:ra7,normalizeInstanceUrl:oa7}=await Promise.resolve().then(() => (aT2(),l0u)),{localInstanceUrl:sa7}=await Promise.resolve().then(() => V0u);function ea7(A){let u={};for(let q=0;q<A.length;q++){let F=A[q],G=A[q+1];if(F==="--instance")u.instance=G;if(F==="--route")u.route=G;if(F==="--dir"||F==="--directory")u.directory=G;if(F==="--session"||F==="-s")u.sessionID=G;if(F==="--continue"||F==="-c")u.continueSession=!0;if(F==="--fork")u.fork=!0}return u}function Ar7(){return{id:"default",url:sa7("default"),label:"Default local",local:{binaryVersion:""}}}async function ur7(A){let u=Ar7();return await A.save(u),u}async function qr7(A,u){if(u.instance){let w=(await A.list()).find((Q)=>Q.id===u.instance);if(!w)throw Error(`Saved instance not found: ${u.instance}`);return{instance:w,directory:u.directory}}let q=await A.list();if(q.length===0)await ur7(A),q=await A.list();let F=await pa7({service:A,instances:q,defaultDirectory:u.directory??process.cwd()});if(!F)return null;return{instance:F.instance,directory:F.directory}}async function Fr7(A,u){let q=await qr7(A,u);if(!q)return null;let F=await A.open(q.instance),G=oa7(F.live.url);if(!G)throw Error(`Resolved instance has invalid URL: ${F.live.url}`);let w=q.directory??F.path.directory??void 0;return{url:G,headers:ra7(F.live)??{},directory:w}}async function Gr7(){let A=aa7(),u=!1,q=async()=>{if(u)return;u=!0,await A.stopAll().catch(()=>{return})};for(let F of["SIGTERM","SIGHUP","SIGINT"])process.once(F,()=>{q().finally(()=>process.exit(0))});try{let F=ea7(process.argv.slice(2)),G=await Fr7(A,F);if(!G)await q(),process.exit(0);let w=await na7.get(),Q={continue:F.continueSession,sessionID:F.sessionID,fork:F.fork};await da7({url:G.url,config:w,args:Q,directory:G.directory,headers:G.headers})}finally{await q()}}function wr7(A){let u=A instanceof Error?A.message:String(A),q=u||"Unknown error",F=u.toLowerCase();if(F.includes("401")||F.includes("unauthorized"))return{kind:"auth-required",detail:q};if(F.includes("403")||F.includes("forbidden"))return{kind:"auth-required",detail:q};if(F.includes("fetch failed")||F.includes("econnrefused")||F.includes("ehostunreach")||F.includes("enotfound")||F.includes("etimedout")||F.includes("connection refused")||F.includes("network is unreachable")||F.includes("getaddrinfo")||F.includes("connect timeout"))return{kind:"unreachable",detail:q};return{kind:"unknown",detail:q}}Gr7().catch((A)=>{let u=wr7(A);if(u.kind==="unreachable")console.error(`
|
|
5280
5280
|
Instance unreachable: ${u.detail}
|
|
5281
5281
|
|
|
5282
5282
|
Re-run \`codeplane tui\` to pick a different instance from the boot wizard,
|