import{$H as R,$m as L,an as D,bn as O,dI as b,en as _,fn as S,gI as w,mI as M,oI as P,tI as m,uI as h,yI as c}from"./cli-0.5.3-jbzr8k4s.mjs";import{A_ as E,C$ as B,E$ as A,H$ as C,H6 as T,R$ as j,s_ as x,z6 as N}from"./cli-0.5.3-t65dek0m.mjs";import{Xda as U,Yda as F}from"./cli-0.5.3-6j2jk6dt.mjs";import{Nfa as G,Qfa as v}from"./cli-0.5.3-n3cxyxpg.mjs";import{Xma as y}from"./cli-0.5.3-0df3r78b.mjs";import{join as I}from"path";async function qq(){let q=C(),z=[],W=L();for(let[K,Q]of Object.entries(W))if(K.includes("@")&&Q)z.push(K);if(q.enabledPlugins)for(let[K,Q]of Object.entries(q.enabledPlugins)){if(!K.includes("@"))continue;let J=z.indexOf(K);if(Q){if(J===-1)z.push(K)}else if(J!==-1)z.splice(J,1)}return z}function zq(){let q=new Map,z=L();for(let[K,Q]of Object.entries(z)){if(!K.includes("@"))continue;if(Q===!0)q.set(K,"flag");else if(Q===!1)q.delete(K)}let W=[{scope:"managed",source:"policySettings"},{scope:"user",source:"userSettings"},{scope:"project",source:"projectSettings"},{scope:"local",source:"localSettings"},{scope:"flag",source:"flagSettings"}];for(let{scope:K,source:Q}of W){let J=B(Q);if(!J?.enabledPlugins)continue;for(let[V,Y]of Object.entries(J.enabledPlugins)){if(!V.includes("@"))continue;if(V in z&&z[V]!==Y)G(`Plugin ${V} from --add-dir (${z[V]}) overridden by ${Q} (${Y})`);if(Y===!0)q.set(V,K);else if(Y===!1)q.delete(V)}}return G(`Found ${q.size} enabled plugins with scopes: ${Array.from(q.entries()).map(([K,Q])=>`${K}(${Q})`).join(", ")}`),q}function Jq(q){return q!=="flag"}function Kq(q){return O[q]}async function p(){M().catch((W)=>{N(W)});let q=w(),z=Object.keys(q.plugins);return G(`Found ${z.length} installed plugins`),z}async function Qq(q){try{let z=await p(),W=q.filter((J)=>!z.includes(J));return(await Promise.all(W.map(async(J)=>{try{let V=await R(J);return{pluginId:J,found:V!==null&&V!==void 0}}catch(V){return G(`Failed to check plugin ${J} in marketplace: ${V}`),{pluginId:J,found:!1}}}))).filter(({found:J})=>J).map(({pluginId:J})=>J)}catch(z){return N(z),[]}}async function Vq(q,z,W="user"){let K=W!=="user"?U():void 0,Q=_(W),J=B(Q),V={...J?.enabledPlugins},Y=[],k=[];for(let H=0;H<q.length;H++){let X=q[H];if(!X)continue;if(z)z(X,H+1,q.length);try{let Z=await R(X);if(!Z){k.push({name:X,error:"Plugin not found in any marketplace"});continue}let{entry:$,marketplaceInstallLocation:f}=Z;if(!x($.source))await m(X,$,W,K);else h({pluginId:X,installPath:I(f,$.source),version:$.version},W,K);V[X]=!0,Y.push(X)}catch(Z){let $=Z instanceof Error?Z.message:String(Z);k.push({name:X,error:$}),N(Z)}}return A(Q,{...J,enabledPlugins:V}),{installed:Y,failed:k}}var a=y(()=>{F();v();T();j();D();P();b();S();c();E()});
export{qq as Mc,zq as Nc,Jq as Oc,Kq as Pc,p as Qc,Qq as Rc,Vq as Sc,a as Tc};
