@appzung/cli
Version:
AppZung CLI
7 lines (4 loc) • 4.08 kB
JavaScript
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="a383bc08-6260-59ac-9542-d00d6b98c72d")}catch(e){}}();
import{d as m,m as C,o as R,p as x,u as S,v as c,w as I}from"./chunk-XJDCHVMB.js";import{confirm as A,intro as j,isCancel as d,outro as h,select as U,spinner as V,text as k}from"@clack/prompts";import{Command as T,Flags as g}from"@oclif/core";import l from"picocolors";var y=(o=>(o.Android="android",o.Ios="ios",o.Macos="macos",o.Other="other",o.Tvos="tvos",o.Windows="windows",o))(y||{});var z=(p=>(p.Capacitor="CAPACITOR",p.Cordova="CORDOVA",p.Electron="ELECTRON",p.Native="NATIVE",p.Other="OTHER",p.ReactNative="REACT_NATIVE",p.Unity="UNITY",p.Xamarin="XAMARIN",p))(z||{}),v=(t=>(t.Alpha="Alpha",t.Beta="Beta",t.Canary="Canary",t.Demo="Demo",t.Development="Development",t.Local="Local",t.Preview="Preview",t.Production="Production",t.Qa="QA",t.Sandbox="Sandbox",t.Staging="Staging",t))(v||{});var b=i=>{switch(i.toUpperCase()){case"REACT_NATIVE":return"React Native";case"IOS":return"iOS";case"MACOS":return"macOS";case"TVOS":return"tvOS";case"QA":return"QA";default:return i.charAt(0).toUpperCase()+i.slice(1).toLowerCase()}};var M=x`mutation CreateApplication($input: CreateApplicationInput!) { createApplication(input: $input) { application { id slug } } }`;function f(i,e,r,a){let n=r.indexOf(i),s=r.indexOf(e);if(n!==-1&&s!==-1)return n-s;if(n!==-1)return-1;if(s!==-1)return 1;if(a){if(i===a)return 1;if(e===a)return-1}return i.localeCompare(e)}function _(i,e){return f(i,e,["android","ios"],"other")}var O=class i extends T{static hiddenAliases=["application:create","app:create"];static description="Create a new application";static flags={org:g.string({description:"Organization slug",required:!1,char:"o",helpGroup:c.REQUIRED_NON_INTERACTIVE}),project:g.string({description:"Project slug",required:!1,char:"p",helpGroup:c.REQUIRED_NON_INTERACTIVE}),name:g.string({description:"Application name",required:!1,char:"n",helpGroup:c.REQUIRED_NON_INTERACTIVE}),platform:g.string({description:"Application platform",required:!1,options:Object.values(y),helpGroup:c.REQUIRED_NON_INTERACTIVE}),yes:g.boolean({description:"Skip confirmation prompt",default:!1,char:"y"})};async getName(e){let{name:r}=e;if(r)return r;let a=await k({message:"Application name",placeholder:"Examples: ShoppingApp-Production-iOS, ShoppingApp-Production-Android",validate(n){if(!n)return"Application name is required";if(!(n.length>=3))return"Application name must be at least 3 characters"}});if(d(a))throw new m;return a}async getPlatform(e){let r=e.platform;if(r)return r;let a=await U({message:"Select platform",options:Object.values(y).sort(_).map(n=>({value:n,label:b(n)}))});if(d(a))throw new m;return a}async run(){j(l.bold("\u{1F680} Create application"));try{let{flags:e}=await this.parse(i),{organizationSlug:r,projectSlug:a}=await S({org:e.org,project:e.project}),n=await this.getName(e),s=await this.getPlatform(e);if(!e.yes&&I){let u=await A({message:`Create application ${l.bold(n)} (${l.yellow(b(s))}) in project ${l.dim(a)}?`});if(d(u)||!u)throw new m}let o=V();o.start("Creating application");let{data:E}=await R.mutate(M,{input:{fields:{name:n,platform:s},project:{bySlug:{organizationSlug:r,projectSlug:a}}}}),p=E.createApplication.application.slug;if(o.stop(`Application created with slug ${l.dim(p)}`),I){let u=await A({message:"Would you like to create a release channel for this application?"});if(!d(u)&&u){let{CreateReleaseChannelCommand:P}=await import("./create-PEOBCI5M.js"),t=new P(["--org",r,"--project",a,"--app",p],this.config);h(`Running command ${l.bold(`appzung release-channels create ${t.argv.join(" ")}`)}`),await t.run();return}}h("Application created successfully! \u{1F389}")}catch(e){C(e)}}};export{y as a,z as b,v as c,b as d,f as e,_ as f,O as g};
//# sourceMappingURL=chunk-7ROTHFJE.js.map
//# debugId=a383bc08-6260-59ac-9542-d00d6b98c72d