import{a as b}from"./chunk-6ZRHK4ON.js";import{a as k}from"./chunk-7XQDZF73.js";import{Fa as N,ga as x}from"./chunk-UZ7U322K.js";import{b as C,c as R}from"./chunk-Q6LCSRIW.js";import{C as y}from"./chunk-E24W34C4.js";import{d as v}from"./chunk-ELIH6GCC.js";import{Fb as w,Hb as E,Lb as L,Mb as m,Vb as T,ca as h}from"./chunk-EYDNSYYE.js";import{u as A}from"./chunk-A4SBXDZB.js";import{j as u}from"./chunk-773TIA5M.js";import{g as l}from"./chunk-VKWPEFWQ.js";l();l();var M=12;async function S(p,t,o){let n=await p.appVersions(t);if(!n.app)throw new v(`Invalid API Key: ${t.apiKey}`);let a=n.app.appVersions.nodes.map(e=>{let r=e.message??"";return{...e,status:e.status==="active"&&!o?A.green(`\u2605 ${e.status}`):e.status,createdBy:e.createdBy?.displayName??"",createdAt:h(new Date(e.createdAt)),message:r}});if(!o){let e=(process.stdout.columns??75)-M,r=e;a.forEach(s=>{let f=s.message.length+(s.versionTag?.length??0)+T(s.status).length+s.createdAt.length+s.createdBy.length;if(f>e){let I=f-s.message.length,g=Math.max(e-I,10);g<r&&(r=g)}}),a.forEach(s=>{s.message.length>r&&(s.message=`${s.message.slice(0,r-3)}...`)})}return{appVersions:a,totalResults:n.app.appVersions.pageInfo.totalResults,app:n.app}}async function c(p){let{remoteApp:t,developerPlatformClient:o,organization:n}=p,{appVersions:a,totalResults:e}=await S(o,t,p.json);if(p.json)return L(JSON.stringify(a,null,2));if(x({org:n.businessName,appName:t.title,configFile:u(p.app.configPath)}),a.length===0){m("No app versions found for this app");return}y({rows:a,columns:{versionTag:{header:"VERSION"},status:{header:"STATUS"},message:{header:"MESSAGE"},createdAt:{header:"DATE CREATED"},createdBy:{header:"CREATED BY"}}});let r=w.link(o.webUiName,[await o.appDeepLink(t),"versions"].join("/"));m(E`\nView all ${String(e)} app versions in the ${r}`)}var d,i=class extends b{async run(){let{flags:t}=await this.parse(d),{app:o,remoteApp:n,developerPlatformClient:a,organization:e}=await N({directory:t.path,clientId:t["client-id"],forceRelink:t.reset,userProvidedConfigName:t.config});return await c({app:o,remoteApp:n,organization:e,developerPlatformClient:a,json:t.json}),{app:o}}};d=i;i.summary="List deployed versions of your app.";i.descriptionWithMarkdown="Lists the deployed app versions. An app version is a snapshot of your app extensions.";i.description=d.descriptionWithoutMarkdown();i.flags={...C,...k,...R};var J=i;export{J as a};
