@capgo/cli 4.21.7 → 4.21.9
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/README.md +5 -4
- package/dist/index.js +2 -2
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -147,10 +147,10 @@ Options:
|
|
|
147
147
|
* `--channel <channel>` Channel to link to.
|
|
148
148
|
* `--external <url>` Link to external URL instead of uploading to Capgo Cloud.
|
|
149
149
|
* `--iv-session-key <key>` Set the IV and session key for bundle URL external.
|
|
150
|
-
* `--s3-
|
|
150
|
+
* `--s3-endpoint <s3Endpoint>` URL of S3 endpoint. Do not work with Partial upload, or external option.
|
|
151
|
+
* `--s3-region <region>` Region for your S3 bucket.
|
|
151
152
|
* `--s3-apikey <apikey>` API key for your S3 endpoint.
|
|
152
153
|
* `--s3-apisecret <apisecret>` API secret for your S3 endpoint.
|
|
153
|
-
* `--s3-endpoint <s3Endpoint>` URL of S3 endpoint.
|
|
154
154
|
* `--s3-bucket-name <bucketName>` Name for your AWS S3 bucket.
|
|
155
155
|
* `--s3-port <port>` Port for your S3 endpoint.
|
|
156
156
|
* `--no-s3-ssl` Disable SSL for S3 upload.
|
|
@@ -162,14 +162,15 @@ Options:
|
|
|
162
162
|
* `--no-key` Ignore signing key and send clear update.
|
|
163
163
|
* `--no-code-check` Ignore checking if notifyAppReady() is called in source code and index present in root folder.
|
|
164
164
|
* `--display-iv-session` Show in the console the IV and session key used to encrypt the update.
|
|
165
|
-
* `--tus` Upload the bundle using TUS protocol.
|
|
166
165
|
* `--bundle <bundle>` Bundle version number of the bundle to upload.
|
|
167
166
|
* `--min-update-version <minUpdateVersion>` Minimal version required to update to this version. Used only if the disable auto update is set to metadata in channel.
|
|
168
167
|
* `--auto-min-update-version` Set the min update version based on native packages.
|
|
169
168
|
* `--ignore-metadata-check` Ignores the metadata (node_modules) check when uploading.
|
|
170
169
|
* `--ignore-checksum-check` Ignores the checksum check when uploading.
|
|
171
170
|
* `--timeout <timeout>` Timeout for the upload process in seconds.
|
|
172
|
-
* `--
|
|
171
|
+
* `--partial` Does not upload partial files to Capgo cloud.
|
|
172
|
+
* `--tus` Upload the bundle using tus protocol.
|
|
173
|
+
* `--multipart` Uses multipart protocol to upload data to S3, Deprecated, use TUS instead.
|
|
173
174
|
* `--encrypted-checksum <encryptedChecksum>` An encrypted checksum (signature). Used only when uploading an external bundle.
|
|
174
175
|
|
|
175
176
|
> ⭐️ External option helps to unlock 2 cases: corporate with privacy concern, don't send the code to a third part and app bigger than 200 MB. With this setting, Capgo store only the link to the zip and sends the link to all apps.
|
package/dist/index.js
CHANGED
|
@@ -289,7 +289,7 @@ GFS4: `),console.error(e)});Ot[qr]||(V0e=global[qr]||[],z0e(Ot,V0e),Ot.close=fun
|
|
|
289
289
|
`;function Z0e(e,t){var r=[],i="";typeof t=="string"?t={section:t,whitespace:!1}:(t=t||{},t.whitespace=t.whitespace===!0);var n=t.whitespace?" = ":"=";return Object.keys(e).forEach(function(a,s,o){var u=e[a];u&&Array.isArray(u)?u.forEach(function(l){i+=w1(a+"[]")+n+w1(l)+`
|
|
290
290
|
`}):u&&typeof u=="object"?r.push(a):i+=w1(a)+n+w1(u)+cN}),t.section&&i.length&&(i="["+w1(t.section)+"]"+cN+i),r.forEach(function(a,s,o){var u=Q0e(a).join("\\."),l=(t.section?t.section+".":"")+u,c=Z0e(e[a],{section:l,whitespace:t.whitespace});i.length&&c.length&&(i+=cN),i+=c}),i}function Q0e(e){return e.replace(/\1/g,"LITERAL\\1LITERAL").replace(/\\\./g,"").split(/\./).map(function(t){return t.replace(/\1/g,"\\.").replace(/\2LITERAL\\1LITERAL\2/g,"")})}function Ent(e){var t={},r=t,i=null,n=/^\[([^\]]*)\]$|^([^=]+)(=(.*))?$/i,a=e.split(/[\r\n]+/g);return a.forEach(function(s,o,u){if(!(!s||s.match(/^\s*[;#]/))){var l=s.match(n);if(l){if(l[1]!==void 0){if(i=L9(l[1]),i==="__proto__"){r={};return}r=t[i]=t[i]||{};return}var c=L9(l[2]);if(c!=="__proto__"){var p=l[3]?L9(l[4]):!0;switch(p){case"true":case"false":case"null":p=JSON.parse(p)}if(c.length>2&&c.slice(-2)==="[]"){if(c=c.substring(0,c.length-2),c==="__proto__")return;r[c]?Array.isArray(r[c])||(r[c]=[r[c]]):r[c]=[]}Array.isArray(r[c])?r[c].push(p):r[c]=p}}}}),Object.keys(t).filter(function(s,o,u){if(!t[s]||typeof t[s]!="object"||Array.isArray(t[s]))return!1;var l=Q0e(s),c=t,p=l.pop(),d=p.replace(/\\\./g,".");return l.forEach(function(f,h,m){f!=="__proto__"&&((!c[f]||typeof c[f]!="object")&&(c[f]={}),c=c[f])}),c===t&&d===p?!1:(c[d]=t[s],!0)}).forEach(function(s,o,u){delete t[s]}),t}function eme(e){return e.charAt(0)==='"'&&e.slice(-1)==='"'||e.charAt(0)==="'"&&e.slice(-1)==="'"}function w1(e){return typeof e!="string"||e.match(/[=\r\n]/)||e.match(/^\[/)||e.length>1&&eme(e)||e!==e.trim()?JSON.stringify(e):e.replace(/;/g,"\\;").replace(/#/g,"\\#")}function L9(e,t){if(e=(e||"").trim(),eme(e)){e.charAt(0)==="'"&&(e=e.substr(1,e.length-2));try{e=JSON.parse(e)}catch{}}else{for(var r=!1,i="",n=0,a=e.length;n<a;n++){var s=e.charAt(n);if(r)"\\;#".indexOf(s)!==-1?i+=s:i+="\\"+s,r=!1;else{if(";#".indexOf(s)!==-1)break;s==="\\"?r=!0:i+=s}}return r&&(i+="\\"),i.trim()}return e}});var ame=g((Po,nme)=>{var rme=J0e(),eg=require("path"),B9=require("fs"),pN=tme(),dN=require("events").EventEmitter,xnt=require("url"),Cnt=require("http"),Po=nme.exports=function(){for(var e=[].slice.call(arguments),t=new Qr;e.length;){var r=e.shift();r&&t.push(typeof r=="string"?Ant(r):r)}return t},q8t=Po.find=function(){var e=eg.join.apply(null,[].slice.call(arguments));function t(r,i){var n=eg.join(r,i);try{return B9.statSync(n),n}catch{if(eg.dirname(r)!==r)return t(eg.dirname(r),i)}}return t(__dirname,e)},Snt=Po.parse=function(e,t,r){if(e=""+e,r)if(r==="json")if(this.emit)try{return JSON.parse(e)}catch(i){this.emit("error",i)}else return JSON.parse(e);else return pN.parse(e);else try{return JSON.parse(e)}catch{return pN.parse(e)}},Ant=Po.json=function(){var e=[].slice.call(arguments).filter(function(i){return i!=null}),t=eg.join.apply(null,e),r;try{r=B9.readFileSync(t,"utf-8")}catch{return}return Snt(r,t,"json")},$8t=Po.env=function(e,t){t=t||process.env;var r={},i=e.length;for(var n in t)n.indexOf(e)===0&&(r[n.substring(i)]=t[n]);return r};Po.ConfigChain=Qr;function Qr(){dN.apply(this),rme.apply(this,arguments),this._awaiting=0,this._saving=0,this.sources={}}var ime={constructor:{value:Qr}};Object.keys(dN.prototype).forEach(function(e){ime[e]=Object.getOwnPropertyDescriptor(dN.prototype,e)});Qr.prototype=Object.create(rme.prototype,ime);Qr.prototype.del=function(e,t){if(t){var r=this.sources[t];if(r=r&&r.data,!r)return this.emit("error",new Error("not found "+t));delete r[e]}else for(var i=0,n=this.list.length;i<n;i++)delete this.list[i][e];return this};Qr.prototype.set=function(e,t,r){var i;if(r){if(i=this.sources[r],i=i&&i.data,!i)return this.emit("error",new Error("not found "+r))}else if(i=this.list[0],!i)return this.emit("error",new Error("cannot set, no confs!"));return i[e]=t,this};Qr.prototype.get=function(e,t){return t?(t=this.sources[t],t&&(t=t.data),t&&Object.hasOwnProperty.call(t,e)?t[e]:void 0):this.list[0][e]};Qr.prototype.save=function(e,a,r){typeof a=="function"&&(r=a,a=null);var i=this.sources[e];if(!i||!(i.path||i.source)||!i.data)return this.emit("error",new Error("bad save target: "+e));if(i.source){var n=i.prefix||"";return Object.keys(i.data).forEach(function(o){i.source[n+o]=i.data[o]}),this}var a=a||i.type,s=i.data;return i.type==="json"?s=JSON.stringify(s):s=pN.stringify(s),this._saving++,B9.writeFile(i.path,s,"utf8",function(o){if(this._saving--,o)return r?r(o):this.emit("error",o);this._saving===0&&(r&&r(),this.emit("save"))}.bind(this)),this};Qr.prototype.addFile=function(e,t,r){r=r||e;var i={__source__:r};return this.sources[r]={path:e,type:t},this.push(i),this._await(),B9.readFile(e,"utf8",function(n,a){n&&this.emit("error",n),this.addString(a,e,t,i)}.bind(this)),this};Qr.prototype.addEnv=function(e,t,r){r=r||"env";var i=Po.env(e,t);return this.sources[r]={data:i,source:t,prefix:e},this.add(i,r)};Qr.prototype.addUrl=function(e,t,r){this._await();var i=xnt.format(e);r=r||i;var n={__source__:r};return this.sources[r]={href:i,type:t},this.push(n),Cnt.request(e,function(a){var s=[],o=a.headers["content-type"];t||(t=o.indexOf("json")!==-1?"json":o.indexOf("ini")!==-1?"ini":i.match(/\.json$/)?"json":i.match(/\.ini$/)?"ini":null,n.type=t),a.on("data",s.push.bind(s)).on("end",function(){this.addString(Buffer.concat(s),i,t,n)}.bind(this)).on("error",this.emit.bind(this,"error"))}.bind(this)).on("error",this.emit.bind(this,"error")).end(),this};Qr.prototype.addString=function(e,t,r,i){return e=this.parse(e,t,r),this.add(e,i),this};Qr.prototype.add=function(e,t){if(t&&typeof t=="object"){var r=this.list.indexOf(t);if(r===-1)return this.emit("error",new Error("bad marker"));this.splice(r,1,e),t=t.__source__,this.sources[t]=this.sources[t]||{},this.sources[t].data=e,this._resolve()}else typeof t=="string"&&(this.sources[t]=this.sources[t]||{},this.sources[t].data=e),this._await(),this.push(e),process.nextTick(this._resolve.bind(this));return this};Qr.prototype.parse=Po.parse;Qr.prototype._await=function(){this._awaiting++};Qr.prototype._resolve=function(){this._awaiting--,this._awaiting===0&&this.emit("load",this)}});var ome=g((M8t,sme)=>{sme.exports=function(e){let t=e.indexOf(":");if(t===-1)return fN(e);let r=e.substr(0,t),i=e.substr(t+1);return`${fN(r)}:${fN(i)}`};function fN(e){if(e=e.toLowerCase(),e==="_authtoken")return"_authToken";let t=e[0];for(let r=1;r<e.length;r++)t+=e[r]==="_"?"-":e[r];return t}});var ume=g(j9=>{"use strict";Object.defineProperty(j9,"__esModule",{value:!0});j9.envReplace=void 0;var Ont=/(?<!\\)(\\*)\$\{([^${}]+)\}/g;function Tnt(e,t){return e.replace(Ont,Fnt.bind(null,t))}j9.envReplace=Tnt;function Fnt(e,t,r,i){if(r.length%2)return t.slice((r.length+1)/2);let n=Nnt(e,i);if(n===void 0)throw new Error(`Failed to replace env in config: ${t}`);return`${r.slice(r.length/2)}${n}`}var knt=/([^:-]+)(:?)-(.+)/;function Nnt(e,t){let r=t.match(knt);if(!r)return e[t];let[,i,n,a]=r;return Object.prototype.hasOwnProperty.call(e,i)?!e[i]&&n?a:e[i]:a}});var lme=g(q9=>{"use strict";Object.defineProperty(q9,"__esModule",{value:!0});q9.envReplace=void 0;var Rnt=ume();Object.defineProperty(q9,"envReplace",{enumerable:!0,get:function(){return Rnt.envReplace}})});var pme=g($9=>{"use strict";var Pnt=require("fs"),ep=require("path"),{envReplace:cme}=lme(),Int=(e,t,r)=>{if(typeof t!="string")return t;let i=[].concat(e[r]),n=i.indexOf(ep)!==-1,a=i.indexOf(Boolean)!==-1,s=i.indexOf(String)!==-1,o=i.indexOf(Number)!==-1;if(t=`${t}`.trim(),/^".*"$/.test(t))try{t=JSON.parse(t)}catch{throw new Error(`Failed parsing JSON config key ${r}: ${t}`)}if(a&&!s&&t==="")return!0;switch(t){case"true":return!0;case"false":return!1;case"null":return null;case"undefined":return}return t=cme(t,process.env),n&&((process.platform==="win32"?/^~(\/|\\)/:/^~\//).test(t)&&process.env.HOME&&(t=ep.resolve(process.env.HOME,t.substr(2))),t=ep.resolve(t)),o&&!isNaN(t)&&(t=Number(t)),t},Lnt=e=>{e=ep.resolve(e);let t=!1;for(;ep.basename(e)==="node_modules";)e=ep.dirname(e),t=!0;if(t)return e;let r=(i,n)=>{let a=/^[a-zA-Z]:(\\|\/)?$/;if(i==="/"||process.platform==="win32"&&a.test(i))return n;try{let s=Pnt.readdirSync(i);if(s.includes("node_modules")||s.includes("package.json")||s.includes("package.json5")||s.includes("package.yaml")||s.includes("pnpm-workspace.yaml"))return i;let o=ep.dirname(i);return o===i?n:r(o,n)}catch(s){if(i===n){if(s.code==="ENOENT")return n;throw s}return n}};return r(e,e)};$9.envReplace=cme;$9.findPrefix=Lnt;$9.parseField=Int});var hme=g(fme=>{"use strict";var tp=require("path"),Bnt=require("stream").Stream,M9=require("url"),jnt=()=>{},qnt=()=>[],dme=()=>{};fme.types={access:[null,"restricted","public"],"allow-same-version":Boolean,"always-auth":Boolean,also:[null,"dev","development"],audit:Boolean,"auth-type":["legacy","sso","saml","oauth"],"bin-links":Boolean,browser:[null,String],ca:[null,String,Array],cafile:tp,cache:tp,"cache-lock-stale":Number,"cache-lock-retries":Number,"cache-lock-wait":Number,"cache-max":Number,"cache-min":Number,cert:[null,String],cidr:[null,String,Array],color:["always",Boolean],depth:Number,description:Boolean,dev:Boolean,"dry-run":Boolean,editor:String,"engine-strict":Boolean,force:Boolean,"fetch-retries":Number,"fetch-retry-factor":Number,"fetch-retry-mintimeout":Number,"fetch-retry-maxtimeout":Number,git:String,"git-tag-version":Boolean,"commit-hooks":Boolean,global:Boolean,globalconfig:tp,"global-style":Boolean,group:[Number,String],"https-proxy":[null,M9],"user-agent":String,"ham-it-up":Boolean,heading:String,"if-present":Boolean,"ignore-prepublish":Boolean,"ignore-scripts":Boolean,"init-module":tp,"init-author-name":String,"init-author-email":String,"init-author-url":["",M9],"init-license":String,"init-version":dme,json:Boolean,key:[null,String],"legacy-bundling":Boolean,link:Boolean,"local-address":qnt(),loglevel:["silent","error","warn","notice","http","timing","info","verbose","silly"],logstream:Bnt,"logs-max":Number,long:Boolean,maxsockets:Number,message:String,"metrics-registry":[null,String],"node-options":[null,String],"node-version":[null,dme],"no-proxy":[null,String,Array],offline:Boolean,"onload-script":[null,String],only:[null,"dev","development","prod","production"],optional:Boolean,"package-lock":Boolean,otp:[null,String],"package-lock-only":Boolean,parseable:Boolean,"prefer-offline":Boolean,"prefer-online":Boolean,prefix:tp,production:Boolean,progress:Boolean,proxy:[null,!1,M9],provenance:Boolean,"read-only":Boolean,"rebuild-bundle":Boolean,registry:[null,M9],rollback:Boolean,save:Boolean,"save-bundle":Boolean,"save-dev":Boolean,"save-exact":Boolean,"save-optional":Boolean,"save-prefix":String,"save-prod":Boolean,scope:String,"script-shell":[null,String],"scripts-prepend-node-path":[!1,!0,"auto","warn-only"],searchopts:String,searchexclude:[null,String],searchlimit:Number,searchstaleness:Number,"send-metrics":Boolean,shell:String,shrinkwrap:Boolean,"sign-git-tag":Boolean,"sso-poll-frequency":Number,"sso-type":[null,"oauth","saml"],"strict-ssl":Boolean,tag:String,timing:Boolean,tmp:tp,unicode:Boolean,"unsafe-perm":Boolean,usage:Boolean,user:[Number,String],userconfig:tp,umask:jnt,version:Boolean,"tag-version-prefix":String,versions:Boolean,viewer:String,_exit:Boolean}});var vme=g((G8t,yme)=>{"use strict";var{readCAFileSync:$nt}=K0e(),mme=require("fs"),hN=require("path"),{ConfigChain:Mnt}=ame(),Unt=ome(),gme=pme(),mN=class extends Mnt{constructor(t,r){super(t),this.root=t,this._parseField=gme.parseField.bind(null,r||hme())}add(t,r){try{for(let i of Object.keys(t))t[i]=this._parseField(t[i],i)}catch(i){throw i}return super.add(t,r)}addFile(t,r){r=r||t;let i={__source__:r};this.sources[r]={path:t,type:"ini"},this.push(i),this._await();try{let n=mme.readFileSync(t,"utf8");this.addString(n,t,"ini",i)}catch(n){if(n.code==="ENOENT")this.add({},i);else return`Issue while reading "${t}". ${n.message}`}}addEnv(t){t=t||process.env;let r={};return Object.keys(t).filter(i=>/^npm_config_/i.test(i)).forEach(i=>{t[i]&&(r[Unt(i.substr(11))]=t[i])}),super.addEnv("",r,"env")}loadPrefix(){let t=this.list[0];Object.defineProperty(this,"prefix",{enumerable:!0,set:i=>{let n=this.get("global");this[n?"globalPrefix":"localPrefix"]=i},get:()=>this.get("global")?this.globalPrefix:this.localPrefix}),Object.defineProperty(this,"globalPrefix",{enumerable:!0,set:i=>{this.set("prefix",i)},get:()=>hN.resolve(this.get("prefix"))});let r;if(Object.defineProperty(this,"localPrefix",{enumerable:!0,set:i=>{r=i},get:()=>r}),Object.prototype.hasOwnProperty.call(t,"prefix"))r=hN.resolve(t.prefix);else try{r=gme.findPrefix(process.cwd())}catch(i){throw i}return r}loadCAFile(t){if(!t)return;let r=$nt(t);r&&this.set("ca",r)}loadUser(){let t=this.root;if(this.get("global"))return;if(process.env.SUDO_UID){t.user=Number(process.env.SUDO_UID);return}let r=hN.resolve(this.get("prefix"));try{let i=mme.statSync(r);t.user=i.uid}catch(i){if(i.code==="ENOENT")return;throw i}}};yme.exports=mN});var xme=g(Eme=>{"use strict";var bme=require("os"),Io=require("path"),Dme=bme.tmpdir(),Vnt=process.getuid?process.getuid():process.pid,Hnt=()=>!0,_me=process.platform==="win32",wme={editor:()=>process.env.EDITOR||process.env.VISUAL||(_me?"notepad.exe":"vi"),shell:()=>_me?process.env.COMSPEC||"cmd.exe":process.env.SHELL||"/bin/bash"},znt={fromString:()=>process.umask()},b1=bme.homedir();b1?process.env.HOME=b1:b1=Io.resolve(Dme,"npm-"+Vnt);var Gnt=process.platform==="win32"?"npm-cache":".npm",Wnt=process.platform==="win32"&&process.env.APPDATA||b1,Knt=Io.resolve(Wnt,Gnt),U9,rp;Object.defineProperty(Eme,"defaults",{get:function(){return U9||(process.env.PREFIX?rp=process.env.PREFIX:process.platform==="win32"?rp=Io.dirname(process.execPath):(rp=Io.dirname(Io.dirname(process.execPath)),process.env.DESTDIR&&(rp=Io.join(process.env.DESTDIR,rp))),U9={access:null,"allow-same-version":!1,"always-auth":!1,also:null,audit:!0,"auth-type":"legacy","bin-links":!0,browser:null,ca:null,cafile:null,cache:Knt,"cache-lock-stale":6e4,"cache-lock-retries":10,"cache-lock-wait":1e4,"cache-max":1/0,"cache-min":10,cert:null,cidr:null,color:process.env.NO_COLOR==null,depth:1/0,description:!0,dev:!1,"dry-run":!1,editor:wme.editor(),"engine-strict":!1,force:!1,"fetch-retries":2,"fetch-retry-factor":10,"fetch-retry-mintimeout":1e4,"fetch-retry-maxtimeout":6e4,git:"git","git-tag-version":!0,"commit-hooks":!0,global:!1,globalconfig:Io.resolve(rp,"etc","npmrc"),"global-style":!1,group:process.platform==="win32"?0:process.env.SUDO_GID||process.getgid&&process.getgid(),"ham-it-up":!1,heading:"npm","if-present":!1,"ignore-prepublish":!1,"ignore-scripts":!1,"init-module":Io.resolve(b1,".npm-init.js"),"init-author-name":"","init-author-email":"","init-author-url":"","init-version":"1.0.0","init-license":"ISC",json:!1,key:null,"legacy-bundling":!1,link:!1,"local-address":void 0,loglevel:"notice",logstream:process.stderr,"logs-max":10,long:!1,maxsockets:50,message:"%s","metrics-registry":null,"node-options":null,offline:!1,"onload-script":!1,only:null,optional:!0,otp:null,"package-lock":!0,"package-lock-only":!1,parseable:!1,"prefer-offline":!1,"prefer-online":!1,prefix:rp,production:process.env.NODE_ENV==="production",progress:!process.env.TRAVIS&&!process.env.CI,provenance:!1,proxy:null,"https-proxy":null,"no-proxy":null,"user-agent":"npm/{npm-version} node/{node-version} {platform} {arch}","read-only":!1,"rebuild-bundle":!0,registry:"https://registry.npmjs.org/",rollback:!0,save:!0,"save-bundle":!1,"save-dev":!1,"save-exact":!1,"save-optional":!1,"save-prefix":"^","save-prod":!1,scope:"","script-shell":null,"scripts-prepend-node-path":"warn-only",searchopts:"",searchexclude:null,searchlimit:20,searchstaleness:15*60,"send-metrics":!1,shell:wme.shell(),shrinkwrap:!0,"sign-git-tag":!1,"sso-poll-frequency":500,"sso-type":"oauth","strict-ssl":!0,tag:"latest","tag-version-prefix":"v",timing:!1,tmp:Dme,unicode:Hnt(),"unsafe-perm":process.platform==="win32"||process.platform==="cygwin"||!(process.getuid&&process.setuid&&process.getgid&&process.setgid)||process.getuid()!==0,usage:!1,user:process.platform==="win32"?0:"nobody",userconfig:Io.resolve(b1,".npmrc"),umask:process.umask?process.umask():znt.fromString("022"),version:!1,versions:!1,viewer:process.platform==="win32"?"browser":"man",_exit:!0},U9)}})});var Sme=g((K8t,gN)=>{"use strict";var ip=require("path"),Ynt=vme(),Cme=xme();gN.exports=(e,t,r)=>{let i=new Ynt(Object.assign({},Cme.defaults,r),t);i.add(Object.assign({},e),"cli");let n=[],a=!1;if(require.resolve.paths){let l=require.resolve.paths("npm"),c;try{c=require.resolve("npm",{paths:l.slice(-1)})}catch{a=!0}c&&n.push(i.addFile(ip.resolve(ip.dirname(c),"..","npmrc"),"builtin"))}i.addEnv(),i.loadPrefix();let s=ip.resolve(i.localPrefix,".npmrc"),o=i.get("userconfig");if(!i.get("global")&&s!==o?n.push(i.addFile(s,"project")):i.add({},"project"),i.get("workspace-prefix")&&i.get("workspace-prefix")!==s){let l=ip.resolve(i.get("workspace-prefix"),".npmrc");n.push(i.addFile(l,"workspace"))}if(n.push(i.addFile(i.get("userconfig"),"user")),i.get("prefix")){let l=ip.resolve(i.get("prefix"),"etc");i.root.globalconfig=ip.resolve(l,"npmrc"),i.root.globalignorefile=ip.resolve(l,"npmignore")}n.push(i.addFile(i.get("globalconfig"),"global")),i.loadUser();let u=i.get("cafile");return u&&i.loadCAFile(u),{config:i,warnings:n.filter(Boolean),failedToLoadBuiltInConfig:a}};Object.defineProperty(gN.exports,"defaults",{get(){return Cme.defaults},enumerable:!0})});var Pme=g((Y8t,Rme)=>{var yN=require("url"),Ame=Sme(),Ome=":_authToken",Tme=":_auth",Fme=":username",kme=":_password";Rme.exports=function(){let t,r;arguments.length>=2?(t=arguments[0],r=Object.assign({},arguments[1])):typeof arguments[0]=="string"?t=arguments[0]:r=Object.assign({},arguments[0]),r=r||{};let i=r.npmrc;return r.npmrc=(r.npmrc?{config:{get:n=>i[n]}}:Ame()).config,t=t||r.npmrc.get("registry")||Ame.defaults.registry,Nme(t,r)||Xnt(r.npmrc)};function Nme(e,t){let r=yN.parse(e,!1,!0),i;for(;i!=="/"&&r.pathname!==i;){i=r.pathname||"/";let n="//"+r.host+i.replace(/\/$/,""),a=Znt(n,t.npmrc);if(a)return a;if(!t.recursive)return/\/$/.test(e)?void 0:Nme(yN.resolve(e,"."),t);r.pathname=yN.resolve(Jnt(i),"..")||"/"}}function Xnt(e){return e.get("_auth")?{token:V9(e.get("_auth")),type:"Basic"}:void 0}function Jnt(e){return e[e.length-1]==="/"?e:e+"/"}function Znt(e,t){let r=Qnt(t.get(e+Ome)||t.get(e+"/"+Ome));if(r)return r;let i=t.get(e+Fme)||t.get(e+"/"+Fme),n=t.get(e+kme)||t.get(e+"/"+kme),a=eat(i,n);if(a)return a;let s=tat(t.get(e+Tme)||t.get(e+"/"+Tme));if(s)return s}function V9(e){return e.replace(/^\$\{?([^}]*)\}?$/,function(t,r){return process.env[r]})}function Qnt(e){return e?{token:V9(e),type:"Bearer"}:void 0}function eat(e,t){if(!e||!t)return;let r=Buffer.from(V9(t),"base64").toString("utf8");return{token:Buffer.from(e+":"+r,"utf8").toString("base64"),type:"Basic",password:r,username:e}}function tat(e){return e?{token:V9(e),type:"Basic"}:void 0}});var tg=g((X8t,Ime)=>{var rat="2.0.0",iat=Number.MAX_SAFE_INTEGER||9007199254740991,nat=16,aat=250,sat=["major","premajor","minor","preminor","patch","prepatch","prerelease"];Ime.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:nat,MAX_SAFE_BUILD_LENGTH:aat,MAX_SAFE_INTEGER:iat,RELEASE_TYPES:sat,SEMVER_SPEC_VERSION:rat,FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var rg=g((J8t,Lme)=>{var oat=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...e)=>console.error("SEMVER",...e):()=>{};Lme.exports=oat});var D1=g((Lo,Bme)=>{var{MAX_SAFE_COMPONENT_LENGTH:vN,MAX_SAFE_BUILD_LENGTH:uat,MAX_LENGTH:lat}=tg(),cat=rg();Lo=Bme.exports={};var pat=Lo.re=[],dat=Lo.safeRe=[],ee=Lo.src=[],te=Lo.t={},fat=0,_N="[a-zA-Z0-9-]",hat=[["\\s",1],["\\d",lat],[_N,uat]],mat=e=>{for(let[t,r]of hat)e=e.split(`${t}*`).join(`${t}{0,${r}}`).split(`${t}+`).join(`${t}{1,${r}}`);return e},we=(e,t,r)=>{let i=mat(t),n=fat++;cat(e,n,t),te[e]=n,ee[n]=t,pat[n]=new RegExp(t,r?"g":void 0),dat[n]=new RegExp(i,r?"g":void 0)};we("NUMERICIDENTIFIER","0|[1-9]\\d*");we("NUMERICIDENTIFIERLOOSE","\\d+");we("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${_N}*`);we("MAINVERSION",`(${ee[te.NUMERICIDENTIFIER]})\\.(${ee[te.NUMERICIDENTIFIER]})\\.(${ee[te.NUMERICIDENTIFIER]})`);we("MAINVERSIONLOOSE",`(${ee[te.NUMERICIDENTIFIERLOOSE]})\\.(${ee[te.NUMERICIDENTIFIERLOOSE]})\\.(${ee[te.NUMERICIDENTIFIERLOOSE]})`);we("PRERELEASEIDENTIFIER",`(?:${ee[te.NUMERICIDENTIFIER]}|${ee[te.NONNUMERICIDENTIFIER]})`);we("PRERELEASEIDENTIFIERLOOSE",`(?:${ee[te.NUMERICIDENTIFIERLOOSE]}|${ee[te.NONNUMERICIDENTIFIER]})`);we("PRERELEASE",`(?:-(${ee[te.PRERELEASEIDENTIFIER]}(?:\\.${ee[te.PRERELEASEIDENTIFIER]})*))`);we("PRERELEASELOOSE",`(?:-?(${ee[te.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${ee[te.PRERELEASEIDENTIFIERLOOSE]})*))`);we("BUILDIDENTIFIER",`${_N}+`);we("BUILD",`(?:\\+(${ee[te.BUILDIDENTIFIER]}(?:\\.${ee[te.BUILDIDENTIFIER]})*))`);we("FULLPLAIN",`v?${ee[te.MAINVERSION]}${ee[te.PRERELEASE]}?${ee[te.BUILD]}?`);we("FULL",`^${ee[te.FULLPLAIN]}$`);we("LOOSEPLAIN",`[v=\\s]*${ee[te.MAINVERSIONLOOSE]}${ee[te.PRERELEASELOOSE]}?${ee[te.BUILD]}?`);we("LOOSE",`^${ee[te.LOOSEPLAIN]}$`);we("GTLT","((?:<|>)?=?)");we("XRANGEIDENTIFIERLOOSE",`${ee[te.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);we("XRANGEIDENTIFIER",`${ee[te.NUMERICIDENTIFIER]}|x|X|\\*`);we("XRANGEPLAIN",`[v=\\s]*(${ee[te.XRANGEIDENTIFIER]})(?:\\.(${ee[te.XRANGEIDENTIFIER]})(?:\\.(${ee[te.XRANGEIDENTIFIER]})(?:${ee[te.PRERELEASE]})?${ee[te.BUILD]}?)?)?`);we("XRANGEPLAINLOOSE",`[v=\\s]*(${ee[te.XRANGEIDENTIFIERLOOSE]})(?:\\.(${ee[te.XRANGEIDENTIFIERLOOSE]})(?:\\.(${ee[te.XRANGEIDENTIFIERLOOSE]})(?:${ee[te.PRERELEASELOOSE]})?${ee[te.BUILD]}?)?)?`);we("XRANGE",`^${ee[te.GTLT]}\\s*${ee[te.XRANGEPLAIN]}$`);we("XRANGELOOSE",`^${ee[te.GTLT]}\\s*${ee[te.XRANGEPLAINLOOSE]}$`);we("COERCE",`(^|[^\\d])(\\d{1,${vN}})(?:\\.(\\d{1,${vN}}))?(?:\\.(\\d{1,${vN}}))?(?:$|[^\\d])`);we("COERCERTL",ee[te.COERCE],!0);we("LONETILDE","(?:~>?)");we("TILDETRIM",`(\\s*)${ee[te.LONETILDE]}\\s+`,!0);Lo.tildeTrimReplace="$1~";we("TILDE",`^${ee[te.LONETILDE]}${ee[te.XRANGEPLAIN]}$`);we("TILDELOOSE",`^${ee[te.LONETILDE]}${ee[te.XRANGEPLAINLOOSE]}$`);we("LONECARET","(?:\\^)");we("CARETTRIM",`(\\s*)${ee[te.LONECARET]}\\s+`,!0);Lo.caretTrimReplace="$1^";we("CARET",`^${ee[te.LONECARET]}${ee[te.XRANGEPLAIN]}$`);we("CARETLOOSE",`^${ee[te.LONECARET]}${ee[te.XRANGEPLAINLOOSE]}$`);we("COMPARATORLOOSE",`^${ee[te.GTLT]}\\s*(${ee[te.LOOSEPLAIN]})$|^$`);we("COMPARATOR",`^${ee[te.GTLT]}\\s*(${ee[te.FULLPLAIN]})$|^$`);we("COMPARATORTRIM",`(\\s*)${ee[te.GTLT]}\\s*(${ee[te.LOOSEPLAIN]}|${ee[te.XRANGEPLAIN]})`,!0);Lo.comparatorTrimReplace="$1$2$3";we("HYPHENRANGE",`^\\s*(${ee[te.XRANGEPLAIN]})\\s+-\\s+(${ee[te.XRANGEPLAIN]})\\s*$`);we("HYPHENRANGELOOSE",`^\\s*(${ee[te.XRANGEPLAINLOOSE]})\\s+-\\s+(${ee[te.XRANGEPLAINLOOSE]})\\s*$`);we("STAR","(<|>)?=?\\s*\\*");we("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");we("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var H9=g((Z8t,jme)=>{var gat=Object.freeze({loose:!0}),yat=Object.freeze({}),vat=e=>e?typeof e!="object"?gat:e:yat;jme.exports=vat});var wN=g((Q8t,Mme)=>{var qme=/^[0-9]+$/,$me=(e,t)=>{let r=qme.test(e),i=qme.test(t);return r&&i&&(e=+e,t=+t),e===t?0:r&&!i?-1:i&&!r?1:e<t?-1:1},_at=(e,t)=>$me(t,e);Mme.exports={compareIdentifiers:$me,rcompareIdentifiers:_at}});var ei=g((evt,zme)=>{var z9=rg(),{MAX_LENGTH:Ume,MAX_SAFE_INTEGER:G9}=tg(),{safeRe:Vme,t:Hme}=D1(),wat=H9(),{compareIdentifiers:E1}=wN(),bN=class e{constructor(t,r){if(r=wat(r),t instanceof e){if(t.loose===!!r.loose&&t.includePrerelease===!!r.includePrerelease)return t;t=t.version}else if(typeof t!="string")throw new TypeError(`Invalid version. Must be a string. Got type "${typeof t}".`);if(t.length>Ume)throw new TypeError(`version is longer than ${Ume} characters`);z9("SemVer",t,r),this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease;let i=t.trim().match(r.loose?Vme[Hme.LOOSE]:Vme[Hme.FULL]);if(!i)throw new TypeError(`Invalid Version: ${t}`);if(this.raw=t,this.major=+i[1],this.minor=+i[2],this.patch=+i[3],this.major>G9||this.major<0)throw new TypeError("Invalid major version");if(this.minor>G9||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>G9||this.patch<0)throw new TypeError("Invalid patch version");i[4]?this.prerelease=i[4].split(".").map(n=>{if(/^[0-9]+$/.test(n)){let a=+n;if(a>=0&&a<G9)return a}return n}):this.prerelease=[],this.build=i[5]?i[5].split("."):[],this.format()}format(){return this.version=`${this.major}.${this.minor}.${this.patch}`,this.prerelease.length&&(this.version+=`-${this.prerelease.join(".")}`),this.version}toString(){return this.version}compare(t){if(z9("SemVer.compare",this.version,this.options,t),!(t instanceof e)){if(typeof t=="string"&&t===this.version)return 0;t=new e(t,this.options)}return t.version===this.version?0:this.compareMain(t)||this.comparePre(t)}compareMain(t){return t instanceof e||(t=new e(t,this.options)),E1(this.major,t.major)||E1(this.minor,t.minor)||E1(this.patch,t.patch)}comparePre(t){if(t instanceof e||(t=new e(t,this.options)),this.prerelease.length&&!t.prerelease.length)return-1;if(!this.prerelease.length&&t.prerelease.length)return 1;if(!this.prerelease.length&&!t.prerelease.length)return 0;let r=0;do{let i=this.prerelease[r],n=t.prerelease[r];if(z9("prerelease compare",r,i,n),i===void 0&&n===void 0)return 0;if(n===void 0)return 1;if(i===void 0)return-1;if(i===n)continue;return E1(i,n)}while(++r)}compareBuild(t){t instanceof e||(t=new e(t,this.options));let r=0;do{let i=this.build[r],n=t.build[r];if(z9("prerelease compare",r,i,n),i===void 0&&n===void 0)return 0;if(n===void 0)return 1;if(i===void 0)return-1;if(i===n)continue;return E1(i,n)}while(++r)}inc(t,r,i){switch(t){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",r,i);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",r,i);break;case"prepatch":this.prerelease.length=0,this.inc("patch",r,i),this.inc("pre",r,i);break;case"prerelease":this.prerelease.length===0&&this.inc("patch",r,i),this.inc("pre",r,i);break;case"major":(this.minor!==0||this.patch!==0||this.prerelease.length===0)&&this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":(this.patch!==0||this.prerelease.length===0)&&this.minor++,this.patch=0,this.prerelease=[];break;case"patch":this.prerelease.length===0&&this.patch++,this.prerelease=[];break;case"pre":{let n=Number(i)?1:0;if(!r&&i===!1)throw new Error("invalid increment argument: identifier is empty");if(this.prerelease.length===0)this.prerelease=[n];else{let a=this.prerelease.length;for(;--a>=0;)typeof this.prerelease[a]=="number"&&(this.prerelease[a]++,a=-2);if(a===-1){if(r===this.prerelease.join(".")&&i===!1)throw new Error("invalid increment argument: identifier already exists");this.prerelease.push(n)}}if(r){let a=[r,n];i===!1&&(a=[r]),E1(this.prerelease[0],r)===0?isNaN(this.prerelease[1])&&(this.prerelease=a):this.prerelease=a}break}default:throw new Error(`invalid increment argument: ${t}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(".")}`),this}};zme.exports=bN});var np=g((tvt,Wme)=>{var Gme=ei(),bat=(e,t,r=!1)=>{if(e instanceof Gme)return e;try{return new Gme(e,t)}catch(i){if(!r)return null;throw i}};Wme.exports=bat});var Yme=g((rvt,Kme)=>{var Dat=np(),Eat=(e,t)=>{let r=Dat(e,t);return r?r.version:null};Kme.exports=Eat});var Jme=g((ivt,Xme)=>{var xat=np(),Cat=(e,t)=>{let r=xat(e.trim().replace(/^[=v]+/,""),t);return r?r.version:null};Xme.exports=Cat});var e2e=g((nvt,Qme)=>{var Zme=ei(),Sat=(e,t,r,i,n)=>{typeof r=="string"&&(n=i,i=r,r=void 0);try{return new Zme(e instanceof Zme?e.version:e,r).inc(t,i,n).version}catch{return null}};Qme.exports=Sat});var i2e=g((avt,r2e)=>{var t2e=np(),Aat=(e,t)=>{let r=t2e(e,null,!0),i=t2e(t,null,!0),n=r.compare(i);if(n===0)return null;let a=n>0,s=a?r:i,o=a?i:r,u=!!s.prerelease.length;if(!!o.prerelease.length&&!u)return!o.patch&&!o.minor?"major":s.patch?"patch":s.minor?"minor":"major";let c=u?"pre":"";return r.major!==i.major?c+"major":r.minor!==i.minor?c+"minor":r.patch!==i.patch?c+"patch":"prerelease"};r2e.exports=Aat});var a2e=g((svt,n2e)=>{var Oat=ei(),Tat=(e,t)=>new Oat(e,t).major;n2e.exports=Tat});var o2e=g((ovt,s2e)=>{var Fat=ei(),kat=(e,t)=>new Fat(e,t).minor;s2e.exports=kat});var l2e=g((uvt,u2e)=>{var Nat=ei(),Rat=(e,t)=>new Nat(e,t).patch;u2e.exports=Rat});var p2e=g((lvt,c2e)=>{var Pat=np(),Iat=(e,t)=>{let r=Pat(e,t);return r&&r.prerelease.length?r.prerelease:null};c2e.exports=Iat});var Hn=g((cvt,f2e)=>{var d2e=ei(),Lat=(e,t,r)=>new d2e(e,r).compare(new d2e(t,r));f2e.exports=Lat});var m2e=g((pvt,h2e)=>{var Bat=Hn(),jat=(e,t,r)=>Bat(t,e,r);h2e.exports=jat});var y2e=g((dvt,g2e)=>{var qat=Hn(),$at=(e,t)=>qat(e,t,!0);g2e.exports=$at});var W9=g((fvt,_2e)=>{var v2e=ei(),Mat=(e,t,r)=>{let i=new v2e(e,r),n=new v2e(t,r);return i.compare(n)||i.compareBuild(n)};_2e.exports=Mat});var b2e=g((hvt,w2e)=>{var Uat=W9(),Vat=(e,t)=>e.sort((r,i)=>Uat(r,i,t));w2e.exports=Vat});var E2e=g((mvt,D2e)=>{var Hat=W9(),zat=(e,t)=>e.sort((r,i)=>Hat(i,r,t));D2e.exports=zat});var ig=g((gvt,x2e)=>{var Gat=Hn(),Wat=(e,t,r)=>Gat(e,t,r)>0;x2e.exports=Wat});var K9=g((yvt,C2e)=>{var Kat=Hn(),Yat=(e,t,r)=>Kat(e,t,r)<0;C2e.exports=Yat});var DN=g((vvt,S2e)=>{var Xat=Hn(),Jat=(e,t,r)=>Xat(e,t,r)===0;S2e.exports=Jat});var EN=g((_vt,A2e)=>{var Zat=Hn(),Qat=(e,t,r)=>Zat(e,t,r)!==0;A2e.exports=Qat});var Y9=g((wvt,O2e)=>{var est=Hn(),tst=(e,t,r)=>est(e,t,r)>=0;O2e.exports=tst});var X9=g((bvt,T2e)=>{var rst=Hn(),ist=(e,t,r)=>rst(e,t,r)<=0;T2e.exports=ist});var xN=g((Dvt,F2e)=>{var nst=DN(),ast=EN(),sst=ig(),ost=Y9(),ust=K9(),lst=X9(),cst=(e,t,r,i)=>{switch(t){case"===":return typeof e=="object"&&(e=e.version),typeof r=="object"&&(r=r.version),e===r;case"!==":return typeof e=="object"&&(e=e.version),typeof r=="object"&&(r=r.version),e!==r;case"":case"=":case"==":return nst(e,r,i);case"!=":return ast(e,r,i);case">":return sst(e,r,i);case">=":return ost(e,r,i);case"<":return ust(e,r,i);case"<=":return lst(e,r,i);default:throw new TypeError(`Invalid operator: ${t}`)}};F2e.exports=cst});var N2e=g((Evt,k2e)=>{var pst=ei(),dst=np(),{safeRe:J9,t:Z9}=D1(),fst=(e,t)=>{if(e instanceof pst)return e;if(typeof e=="number"&&(e=String(e)),typeof e!="string")return null;t=t||{};let r=null;if(!t.rtl)r=e.match(J9[Z9.COERCE]);else{let i;for(;(i=J9[Z9.COERCERTL].exec(e))&&(!r||r.index+r[0].length!==e.length);)(!r||i.index+i[0].length!==r.index+r[0].length)&&(r=i),J9[Z9.COERCERTL].lastIndex=i.index+i[1].length+i[2].length;J9[Z9.COERCERTL].lastIndex=-1}return r===null?null:dst(`${r[2]}.${r[3]||"0"}.${r[4]||"0"}`,t)};k2e.exports=fst});var P2e=g((xvt,R2e)=>{"use strict";R2e.exports=function(e){e.prototype[Symbol.iterator]=function*(){for(let t=this.head;t;t=t.next)yield t.value}}});var L2e=g((Cvt,I2e)=>{"use strict";I2e.exports=je;je.Node=ap;je.create=je;function je(e){var t=this;if(t instanceof je||(t=new je),t.tail=null,t.head=null,t.length=0,e&&typeof e.forEach=="function")e.forEach(function(n){t.push(n)});else if(arguments.length>0)for(var r=0,i=arguments.length;r<i;r++)t.push(arguments[r]);return t}je.prototype.removeNode=function(e){if(e.list!==this)throw new Error("removing node which does not belong to this list");var t=e.next,r=e.prev;return t&&(t.prev=r),r&&(r.next=t),e===this.head&&(this.head=t),e===this.tail&&(this.tail=r),e.list.length--,e.next=null,e.prev=null,e.list=null,t};je.prototype.unshiftNode=function(e){if(e!==this.head){e.list&&e.list.removeNode(e);var t=this.head;e.list=this,e.next=t,t&&(t.prev=e),this.head=e,this.tail||(this.tail=e),this.length++}};je.prototype.pushNode=function(e){if(e!==this.tail){e.list&&e.list.removeNode(e);var t=this.tail;e.list=this,e.prev=t,t&&(t.next=e),this.tail=e,this.head||(this.head=e),this.length++}};je.prototype.push=function(){for(var e=0,t=arguments.length;e<t;e++)mst(this,arguments[e]);return this.length};je.prototype.unshift=function(){for(var e=0,t=arguments.length;e<t;e++)gst(this,arguments[e]);return this.length};je.prototype.pop=function(){if(this.tail){var e=this.tail.value;return this.tail=this.tail.prev,this.tail?this.tail.next=null:this.head=null,this.length--,e}};je.prototype.shift=function(){if(this.head){var e=this.head.value;return this.head=this.head.next,this.head?this.head.prev=null:this.tail=null,this.length--,e}};je.prototype.forEach=function(e,t){t=t||this;for(var r=this.head,i=0;r!==null;i++)e.call(t,r.value,i,this),r=r.next};je.prototype.forEachReverse=function(e,t){t=t||this;for(var r=this.tail,i=this.length-1;r!==null;i--)e.call(t,r.value,i,this),r=r.prev};je.prototype.get=function(e){for(var t=0,r=this.head;r!==null&&t<e;t++)r=r.next;if(t===e&&r!==null)return r.value};je.prototype.getReverse=function(e){for(var t=0,r=this.tail;r!==null&&t<e;t++)r=r.prev;if(t===e&&r!==null)return r.value};je.prototype.map=function(e,t){t=t||this;for(var r=new je,i=this.head;i!==null;)r.push(e.call(t,i.value,this)),i=i.next;return r};je.prototype.mapReverse=function(e,t){t=t||this;for(var r=new je,i=this.tail;i!==null;)r.push(e.call(t,i.value,this)),i=i.prev;return r};je.prototype.reduce=function(e,t){var r,i=this.head;if(arguments.length>1)r=t;else if(this.head)i=this.head.next,r=this.head.value;else throw new TypeError("Reduce of empty list with no initial value");for(var n=0;i!==null;n++)r=e(r,i.value,n),i=i.next;return r};je.prototype.reduceReverse=function(e,t){var r,i=this.tail;if(arguments.length>1)r=t;else if(this.tail)i=this.tail.prev,r=this.tail.value;else throw new TypeError("Reduce of empty list with no initial value");for(var n=this.length-1;i!==null;n--)r=e(r,i.value,n),i=i.prev;return r};je.prototype.toArray=function(){for(var e=new Array(this.length),t=0,r=this.head;r!==null;t++)e[t]=r.value,r=r.next;return e};je.prototype.toArrayReverse=function(){for(var e=new Array(this.length),t=0,r=this.tail;r!==null;t++)e[t]=r.value,r=r.prev;return e};je.prototype.slice=function(e,t){t=t||this.length,t<0&&(t+=this.length),e=e||0,e<0&&(e+=this.length);var r=new je;if(t<e||t<0)return r;e<0&&(e=0),t>this.length&&(t=this.length);for(var i=0,n=this.head;n!==null&&i<e;i++)n=n.next;for(;n!==null&&i<t;i++,n=n.next)r.push(n.value);return r};je.prototype.sliceReverse=function(e,t){t=t||this.length,t<0&&(t+=this.length),e=e||0,e<0&&(e+=this.length);var r=new je;if(t<e||t<0)return r;e<0&&(e=0),t>this.length&&(t=this.length);for(var i=this.length,n=this.tail;n!==null&&i>t;i--)n=n.prev;for(;n!==null&&i>e;i--,n=n.prev)r.push(n.value);return r};je.prototype.splice=function(e,t,...r){e>this.length&&(e=this.length-1),e<0&&(e=this.length+e);for(var i=0,n=this.head;n!==null&&i<e;i++)n=n.next;for(var a=[],i=0;n&&i<t;i++)a.push(n.value),n=this.removeNode(n);n===null&&(n=this.tail),n!==this.head&&n!==this.tail&&(n=n.prev);for(var i=0;i<r.length;i++)n=hst(this,n,r[i]);return a};je.prototype.reverse=function(){for(var e=this.head,t=this.tail,r=e;r!==null;r=r.prev){var i=r.prev;r.prev=r.next,r.next=i}return this.head=t,this.tail=e,this};function hst(e,t,r){var i=t===e.head?new ap(r,null,t,e):new ap(r,t,t.next,e);return i.next===null&&(e.tail=i),i.prev===null&&(e.head=i),e.length++,i}function mst(e,t){e.tail=new ap(t,e.tail,null,e),e.head||(e.head=e.tail),e.length++}function gst(e,t){e.head=new ap(t,null,e.head,e),e.tail||(e.tail=e.head),e.length++}function ap(e,t,r,i){if(!(this instanceof ap))return new ap(e,t,r,i);this.list=i,this.value=e,t?(t.next=this,this.prev=t):this.prev=null,r?(r.prev=this,this.next=r):this.next=null}try{P2e()(je)}catch{}});var M2e=g((Svt,$2e)=>{"use strict";var yst=L2e(),sp=Symbol("max"),jo=Symbol("length"),x1=Symbol("lengthCalculator"),ag=Symbol("allowStale"),op=Symbol("maxAge"),Bo=Symbol("dispose"),B2e=Symbol("noDisposeOnSet"),Cr=Symbol("lruList"),va=Symbol("cache"),q2e=Symbol("updateAgeOnGet"),CN=()=>1,AN=class{constructor(t){if(typeof t=="number"&&(t={max:t}),t||(t={}),t.max&&(typeof t.max!="number"||t.max<0))throw new TypeError("max must be a non-negative number");let r=this[sp]=t.max||1/0,i=t.length||CN;if(this[x1]=typeof i!="function"?CN:i,this[ag]=t.stale||!1,t.maxAge&&typeof t.maxAge!="number")throw new TypeError("maxAge must be a number");this[op]=t.maxAge||0,this[Bo]=t.dispose,this[B2e]=t.noDisposeOnSet||!1,this[q2e]=t.updateAgeOnGet||!1,this.reset()}set max(t){if(typeof t!="number"||t<0)throw new TypeError("max must be a non-negative number");this[sp]=t||1/0,ng(this)}get max(){return this[sp]}set allowStale(t){this[ag]=!!t}get allowStale(){return this[ag]}set maxAge(t){if(typeof t!="number")throw new TypeError("maxAge must be a non-negative number");this[op]=t,ng(this)}get maxAge(){return this[op]}set lengthCalculator(t){typeof t!="function"&&(t=CN),t!==this[x1]&&(this[x1]=t,this[jo]=0,this[Cr].forEach(r=>{r.length=this[x1](r.value,r.key),this[jo]+=r.length})),ng(this)}get lengthCalculator(){return this[x1]}get length(){return this[jo]}get itemCount(){return this[Cr].length}rforEach(t,r){r=r||this;for(let i=this[Cr].tail;i!==null;){let n=i.prev;j2e(this,t,i,r),i=n}}forEach(t,r){r=r||this;for(let i=this[Cr].head;i!==null;){let n=i.next;j2e(this,t,i,r),i=n}}keys(){return this[Cr].toArray().map(t=>t.key)}values(){return this[Cr].toArray().map(t=>t.value)}reset(){this[Bo]&&this[Cr]&&this[Cr].length&&this[Cr].forEach(t=>this[Bo](t.key,t.value)),this[va]=new Map,this[Cr]=new yst,this[jo]=0}dump(){return this[Cr].map(t=>Q9(this,t)?!1:{k:t.key,v:t.value,e:t.now+(t.maxAge||0)}).toArray().filter(t=>t)}dumpLru(){return this[Cr]}set(t,r,i){if(i=i||this[op],i&&typeof i!="number")throw new TypeError("maxAge must be a number");let n=i?Date.now():0,a=this[x1](r,t);if(this[va].has(t)){if(a>this[sp])return C1(this,this[va].get(t)),!1;let u=this[va].get(t).value;return this[Bo]&&(this[B2e]||this[Bo](t,u.value)),u.now=n,u.maxAge=i,u.value=r,this[jo]+=a-u.length,u.length=a,this.get(t),ng(this),!0}let s=new ON(t,r,a,n,i);return s.length>this[sp]?(this[Bo]&&this[Bo](t,r),!1):(this[jo]+=s.length,this[Cr].unshift(s),this[va].set(t,this[Cr].head),ng(this),!0)}has(t){if(!this[va].has(t))return!1;let r=this[va].get(t).value;return!Q9(this,r)}get(t){return SN(this,t,!0)}peek(t){return SN(this,t,!1)}pop(){let t=this[Cr].tail;return t?(C1(this,t),t.value):null}del(t){C1(this,this[va].get(t))}load(t){this.reset();let r=Date.now();for(let i=t.length-1;i>=0;i--){let n=t[i],a=n.e||0;if(a===0)this.set(n.k,n.v);else{let s=a-r;s>0&&this.set(n.k,n.v,s)}}}prune(){this[va].forEach((t,r)=>SN(this,r,!1))}},SN=(e,t,r)=>{let i=e[va].get(t);if(i){let n=i.value;if(Q9(e,n)){if(C1(e,i),!e[ag])return}else r&&(e[q2e]&&(i.value.now=Date.now()),e[Cr].unshiftNode(i));return n.value}},Q9=(e,t)=>{if(!t||!t.maxAge&&!e[op])return!1;let r=Date.now()-t.now;return t.maxAge?r>t.maxAge:e[op]&&r>e[op]},ng=e=>{if(e[jo]>e[sp])for(let t=e[Cr].tail;e[jo]>e[sp]&&t!==null;){let r=t.prev;C1(e,t),t=r}},C1=(e,t)=>{if(t){let r=t.value;e[Bo]&&e[Bo](r.key,r.value),e[jo]-=r.length,e[va].delete(r.key),e[Cr].removeNode(t)}},ON=class{constructor(t,r,i,n,a){this.key=t,this.value=r,this.length=i,this.now=n,this.maxAge=a||0}},j2e=(e,t,r,i)=>{let n=r.value;Q9(e,n)&&(C1(e,r),e[ag]||(n=void 0)),n&&t.call(i,n.value,n.key,e)};$2e.exports=AN});var zn=g((Avt,z2e)=>{var TN=class e{constructor(t,r){if(r=_st(r),t instanceof e)return t.loose===!!r.loose&&t.includePrerelease===!!r.includePrerelease?t:new e(t.raw,r);if(t instanceof FN)return this.raw=t.value,this.set=[[t]],this.format(),this;if(this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease,this.raw=t.trim().split(/\s+/).join(" "),this.set=this.raw.split("||").map(i=>this.parseRange(i.trim())).filter(i=>i.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let i=this.set[0];if(this.set=this.set.filter(n=>!V2e(n[0])),this.set.length===0)this.set=[i];else if(this.set.length>1){for(let n of this.set)if(n.length===1&&Sst(n[0])){this.set=[n];break}}}this.format()}format(){return this.range=this.set.map(t=>t.join(" ").trim()).join("||").trim(),this.range}toString(){return this.range}parseRange(t){let i=((this.options.includePrerelease&&xst)|(this.options.loose&&Cst))+":"+t,n=U2e.get(i);if(n)return n;let a=this.options.loose,s=a?Ui[yi.HYPHENRANGELOOSE]:Ui[yi.HYPHENRANGE];t=t.replace(s,Lst(this.options.includePrerelease)),pt("hyphen replace",t),t=t.replace(Ui[yi.COMPARATORTRIM],bst),pt("comparator trim",t),t=t.replace(Ui[yi.TILDETRIM],Dst),pt("tilde trim",t),t=t.replace(Ui[yi.CARETTRIM],Est),pt("caret trim",t);let o=t.split(" ").map(p=>Ast(p,this.options)).join(" ").split(/\s+/).map(p=>Ist(p,this.options));a&&(o=o.filter(p=>(pt("loose invalid filter",p,this.options),!!p.match(Ui[yi.COMPARATORLOOSE])))),pt("range list",o);let u=new Map,l=o.map(p=>new FN(p,this.options));for(let p of l){if(V2e(p))return[p];u.set(p.value,p)}u.size>1&&u.has("")&&u.delete("");let c=[...u.values()];return U2e.set(i,c),c}intersects(t,r){if(!(t instanceof e))throw new TypeError("a Range is required");return this.set.some(i=>H2e(i,r)&&t.set.some(n=>H2e(n,r)&&i.every(a=>n.every(s=>a.intersects(s,r)))))}test(t){if(!t)return!1;if(typeof t=="string")try{t=new wst(t,this.options)}catch{return!1}for(let r=0;r<this.set.length;r++)if(Bst(this.set[r],t,this.options))return!0;return!1}};z2e.exports=TN;var vst=M2e(),U2e=new vst({max:1e3}),_st=H9(),FN=sg(),pt=rg(),wst=ei(),{safeRe:Ui,t:yi,comparatorTrimReplace:bst,tildeTrimReplace:Dst,caretTrimReplace:Est}=D1(),{FLAG_INCLUDE_PRERELEASE:xst,FLAG_LOOSE:Cst}=tg(),V2e=e=>e.value==="<0.0.0-0",Sst=e=>e.value==="",H2e=(e,t)=>{let r=!0,i=e.slice(),n=i.pop();for(;r&&i.length;)r=i.every(a=>n.intersects(a,t)),n=i.pop();return r},Ast=(e,t)=>(pt("comp",e,t),e=Fst(e,t),pt("caret",e),e=Ost(e,t),pt("tildes",e),e=Nst(e,t),pt("xrange",e),e=Pst(e,t),pt("stars",e),e),vi=e=>!e||e.toLowerCase()==="x"||e==="*",Ost=(e,t)=>e.trim().split(/\s+/).map(r=>Tst(r,t)).join(" "),Tst=(e,t)=>{let r=t.loose?Ui[yi.TILDELOOSE]:Ui[yi.TILDE];return e.replace(r,(i,n,a,s,o)=>{pt("tilde",e,i,n,a,s,o);let u;return vi(n)?u="":vi(a)?u=`>=${n}.0.0 <${+n+1}.0.0-0`:vi(s)?u=`>=${n}.${a}.0 <${n}.${+a+1}.0-0`:o?(pt("replaceTilde pr",o),u=`>=${n}.${a}.${s}-${o} <${n}.${+a+1}.0-0`):u=`>=${n}.${a}.${s} <${n}.${+a+1}.0-0`,pt("tilde return",u),u})},Fst=(e,t)=>e.trim().split(/\s+/).map(r=>kst(r,t)).join(" "),kst=(e,t)=>{pt("caret",e,t);let r=t.loose?Ui[yi.CARETLOOSE]:Ui[yi.CARET],i=t.includePrerelease?"-0":"";return e.replace(r,(n,a,s,o,u)=>{pt("caret",e,n,a,s,o,u);let l;return vi(a)?l="":vi(s)?l=`>=${a}.0.0${i} <${+a+1}.0.0-0`:vi(o)?a==="0"?l=`>=${a}.${s}.0${i} <${a}.${+s+1}.0-0`:l=`>=${a}.${s}.0${i} <${+a+1}.0.0-0`:u?(pt("replaceCaret pr",u),a==="0"?s==="0"?l=`>=${a}.${s}.${o}-${u} <${a}.${s}.${+o+1}-0`:l=`>=${a}.${s}.${o}-${u} <${a}.${+s+1}.0-0`:l=`>=${a}.${s}.${o}-${u} <${+a+1}.0.0-0`):(pt("no pr"),a==="0"?s==="0"?l=`>=${a}.${s}.${o}${i} <${a}.${s}.${+o+1}-0`:l=`>=${a}.${s}.${o}${i} <${a}.${+s+1}.0-0`:l=`>=${a}.${s}.${o} <${+a+1}.0.0-0`),pt("caret return",l),l})},Nst=(e,t)=>(pt("replaceXRanges",e,t),e.split(/\s+/).map(r=>Rst(r,t)).join(" ")),Rst=(e,t)=>{e=e.trim();let r=t.loose?Ui[yi.XRANGELOOSE]:Ui[yi.XRANGE];return e.replace(r,(i,n,a,s,o,u)=>{pt("xRange",e,i,n,a,s,o,u);let l=vi(a),c=l||vi(s),p=c||vi(o),d=p;return n==="="&&d&&(n=""),u=t.includePrerelease?"-0":"",l?n===">"||n==="<"?i="<0.0.0-0":i="*":n&&d?(c&&(s=0),o=0,n===">"?(n=">=",c?(a=+a+1,s=0,o=0):(s=+s+1,o=0)):n==="<="&&(n="<",c?a=+a+1:s=+s+1),n==="<"&&(u="-0"),i=`${n+a}.${s}.${o}${u}`):c?i=`>=${a}.0.0${u} <${+a+1}.0.0-0`:p&&(i=`>=${a}.${s}.0${u} <${a}.${+s+1}.0-0`),pt("xRange return",i),i})},Pst=(e,t)=>(pt("replaceStars",e,t),e.trim().replace(Ui[yi.STAR],"")),Ist=(e,t)=>(pt("replaceGTE0",e,t),e.trim().replace(Ui[t.includePrerelease?yi.GTE0PRE:yi.GTE0],"")),Lst=e=>(t,r,i,n,a,s,o,u,l,c,p,d,f)=>(vi(i)?r="":vi(n)?r=`>=${i}.0.0${e?"-0":""}`:vi(a)?r=`>=${i}.${n}.0${e?"-0":""}`:s?r=`>=${r}`:r=`>=${r}${e?"-0":""}`,vi(l)?u="":vi(c)?u=`<${+l+1}.0.0-0`:vi(p)?u=`<${l}.${+c+1}.0-0`:d?u=`<=${l}.${c}.${p}-${d}`:e?u=`<${l}.${c}.${+p+1}-0`:u=`<=${u}`,`${r} ${u}`.trim()),Bst=(e,t,r)=>{for(let i=0;i<e.length;i++)if(!e[i].test(t))return!1;if(t.prerelease.length&&!r.includePrerelease){for(let i=0;i<e.length;i++)if(pt(e[i].semver),e[i].semver!==FN.ANY&&e[i].semver.prerelease.length>0){let n=e[i].semver;if(n.major===t.major&&n.minor===t.minor&&n.patch===t.patch)return!0}return!1}return!0}});var sg=g((Ovt,J2e)=>{var og=Symbol("SemVer ANY"),RN=class e{static get ANY(){return og}constructor(t,r){if(r=G2e(r),t instanceof e){if(t.loose===!!r.loose)return t;t=t.value}t=t.trim().split(/\s+/).join(" "),NN("comparator",t,r),this.options=r,this.loose=!!r.loose,this.parse(t),this.semver===og?this.value="":this.value=this.operator+this.semver.version,NN("comp",this)}parse(t){let r=this.options.loose?W2e[K2e.COMPARATORLOOSE]:W2e[K2e.COMPARATOR],i=t.match(r);if(!i)throw new TypeError(`Invalid comparator: ${t}`);this.operator=i[1]!==void 0?i[1]:"",this.operator==="="&&(this.operator=""),i[2]?this.semver=new Y2e(i[2],this.options.loose):this.semver=og}toString(){return this.value}test(t){if(NN("Comparator.test",t,this.options.loose),this.semver===og||t===og)return!0;if(typeof t=="string")try{t=new Y2e(t,this.options)}catch{return!1}return kN(t,this.operator,this.semver,this.options)}intersects(t,r){if(!(t instanceof e))throw new TypeError("a Comparator is required");return this.operator===""?this.value===""?!0:new X2e(t.value,r).test(this.value):t.operator===""?t.value===""?!0:new X2e(this.value,r).test(t.semver):(r=G2e(r),r.includePrerelease&&(this.value==="<0.0.0-0"||t.value==="<0.0.0-0")||!r.includePrerelease&&(this.value.startsWith("<0.0.0")||t.value.startsWith("<0.0.0"))?!1:!!(this.operator.startsWith(">")&&t.operator.startsWith(">")||this.operator.startsWith("<")&&t.operator.startsWith("<")||this.semver.version===t.semver.version&&this.operator.includes("=")&&t.operator.includes("=")||kN(this.semver,"<",t.semver,r)&&this.operator.startsWith(">")&&t.operator.startsWith("<")||kN(this.semver,">",t.semver,r)&&this.operator.startsWith("<")&&t.operator.startsWith(">")))}};J2e.exports=RN;var G2e=H9(),{safeRe:W2e,t:K2e}=D1(),kN=xN(),NN=rg(),Y2e=ei(),X2e=zn()});var ug=g((Tvt,Z2e)=>{var jst=zn(),qst=(e,t,r)=>{try{t=new jst(t,r)}catch{return!1}return t.test(e)};Z2e.exports=qst});var ege=g((Fvt,Q2e)=>{var $st=zn(),Mst=(e,t)=>new $st(e,t).set.map(r=>r.map(i=>i.value).join(" ").trim().split(" "));Q2e.exports=Mst});var rge=g((kvt,tge)=>{var Ust=ei(),Vst=zn(),Hst=(e,t,r)=>{let i=null,n=null,a=null;try{a=new Vst(t,r)}catch{return null}return e.forEach(s=>{a.test(s)&&(!i||n.compare(s)===-1)&&(i=s,n=new Ust(i,r))}),i};tge.exports=Hst});var nge=g((Nvt,ige)=>{var zst=ei(),Gst=zn(),Wst=(e,t,r)=>{let i=null,n=null,a=null;try{a=new Gst(t,r)}catch{return null}return e.forEach(s=>{a.test(s)&&(!i||n.compare(s)===1)&&(i=s,n=new zst(i,r))}),i};ige.exports=Wst});var oge=g((Rvt,sge)=>{var PN=ei(),Kst=zn(),age=ig(),Yst=(e,t)=>{e=new Kst(e,t);let r=new PN("0.0.0");if(e.test(r)||(r=new PN("0.0.0-0"),e.test(r)))return r;r=null;for(let i=0;i<e.set.length;++i){let n=e.set[i],a=null;n.forEach(s=>{let o=new PN(s.semver.version);switch(s.operator){case">":o.prerelease.length===0?o.patch++:o.prerelease.push(0),o.raw=o.format();case"":case">=":(!a||age(o,a))&&(a=o);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${s.operator}`)}}),a&&(!r||age(r,a))&&(r=a)}return r&&e.test(r)?r:null};sge.exports=Yst});var lge=g((Pvt,uge)=>{var Xst=zn(),Jst=(e,t)=>{try{return new Xst(e,t).range||"*"}catch{return null}};uge.exports=Jst});var e5=g((Ivt,fge)=>{var Zst=ei(),dge=sg(),{ANY:Qst}=dge,eot=zn(),tot=ug(),cge=ig(),pge=K9(),rot=X9(),iot=Y9(),not=(e,t,r,i)=>{e=new Zst(e,i),t=new eot(t,i);let n,a,s,o,u;switch(r){case">":n=cge,a=rot,s=pge,o=">",u=">=";break;case"<":n=pge,a=iot,s=cge,o="<",u="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(tot(e,t,i))return!1;for(let l=0;l<t.set.length;++l){let c=t.set[l],p=null,d=null;if(c.forEach(f=>{f.semver===Qst&&(f=new dge(">=0.0.0")),p=p||f,d=d||f,n(f.semver,p.semver,i)?p=f:s(f.semver,d.semver,i)&&(d=f)}),p.operator===o||p.operator===u||(!d.operator||d.operator===o)&&a(e,d.semver))return!1;if(d.operator===u&&s(e,d.semver))return!1}return!0};fge.exports=not});var mge=g((Lvt,hge)=>{var aot=e5(),sot=(e,t,r)=>aot(e,t,">",r);hge.exports=sot});var yge=g((Bvt,gge)=>{var oot=e5(),uot=(e,t,r)=>oot(e,t,"<",r);gge.exports=uot});var wge=g((jvt,_ge)=>{var vge=zn(),lot=(e,t,r)=>(e=new vge(e,r),t=new vge(t,r),e.intersects(t,r));_ge.exports=lot});var Dge=g((qvt,bge)=>{var cot=ug(),pot=Hn();bge.exports=(e,t,r)=>{let i=[],n=null,a=null,s=e.sort((c,p)=>pot(c,p,r));for(let c of s)cot(c,t,r)?(a=c,n||(n=c)):(a&&i.push([n,a]),a=null,n=null);n&&i.push([n,null]);let o=[];for(let[c,p]of i)c===p?o.push(c):!p&&c===s[0]?o.push("*"):p?c===s[0]?o.push(`<=${p}`):o.push(`${c} - ${p}`):o.push(`>=${c}`);let u=o.join(" || "),l=typeof t.raw=="string"?t.raw:String(t);return u.length<l.length?u:t}});var Oge=g(($vt,Age)=>{var Ege=zn(),LN=sg(),{ANY:IN}=LN,lg=ug(),BN=Hn(),dot=(e,t,r={})=>{if(e===t)return!0;e=new Ege(e,r),t=new Ege(t,r);let i=!1;e:for(let n of e.set){for(let a of t.set){let s=hot(n,a,r);if(i=i||s!==null,s)continue e}if(i)return!1}return!0},fot=[new LN(">=0.0.0-0")],xge=[new LN(">=0.0.0")],hot=(e,t,r)=>{if(e===t)return!0;if(e.length===1&&e[0].semver===IN){if(t.length===1&&t[0].semver===IN)return!0;r.includePrerelease?e=fot:e=xge}if(t.length===1&&t[0].semver===IN){if(r.includePrerelease)return!0;t=xge}let i=new Set,n,a;for(let f of e)f.operator===">"||f.operator===">="?n=Cge(n,f,r):f.operator==="<"||f.operator==="<="?a=Sge(a,f,r):i.add(f.semver);if(i.size>1)return null;let s;if(n&&a){if(s=BN(n.semver,a.semver,r),s>0)return null;if(s===0&&(n.operator!==">="||a.operator!=="<="))return null}for(let f of i){if(n&&!lg(f,String(n),r)||a&&!lg(f,String(a),r))return null;for(let h of t)if(!lg(f,String(h),r))return!1;return!0}let o,u,l,c,p=a&&!r.includePrerelease&&a.semver.prerelease.length?a.semver:!1,d=n&&!r.includePrerelease&&n.semver.prerelease.length?n.semver:!1;p&&p.prerelease.length===1&&a.operator==="<"&&p.prerelease[0]===0&&(p=!1);for(let f of t){if(c=c||f.operator===">"||f.operator===">=",l=l||f.operator==="<"||f.operator==="<=",n){if(d&&f.semver.prerelease&&f.semver.prerelease.length&&f.semver.major===d.major&&f.semver.minor===d.minor&&f.semver.patch===d.patch&&(d=!1),f.operator===">"||f.operator===">="){if(o=Cge(n,f,r),o===f&&o!==n)return!1}else if(n.operator===">="&&!lg(n.semver,String(f),r))return!1}if(a){if(p&&f.semver.prerelease&&f.semver.prerelease.length&&f.semver.major===p.major&&f.semver.minor===p.minor&&f.semver.patch===p.patch&&(p=!1),f.operator==="<"||f.operator==="<="){if(u=Sge(a,f,r),u===f&&u!==a)return!1}else if(a.operator==="<="&&!lg(a.semver,String(f),r))return!1}if(!f.operator&&(a||n)&&s!==0)return!1}return!(n&&l&&!a&&s!==0||a&&c&&!n&&s!==0||d||p)},Cge=(e,t,r)=>{if(!e)return t;let i=BN(e.semver,t.semver,r);return i>0?e:i<0||t.operator===">"&&e.operator===">="?t:e},Sge=(e,t,r)=>{if(!e)return t;let i=BN(e.semver,t.semver,r);return i<0?e:i>0||t.operator==="<"&&e.operator==="<="?t:e};Age.exports=dot});var Nge=g((Mvt,kge)=>{var jN=D1(),Tge=tg(),mot=ei(),Fge=wN(),got=np(),yot=Yme(),vot=Jme(),_ot=e2e(),wot=i2e(),bot=a2e(),Dot=o2e(),Eot=l2e(),xot=p2e(),Cot=Hn(),Sot=m2e(),Aot=y2e(),Oot=W9(),Tot=b2e(),Fot=E2e(),kot=ig(),Not=K9(),Rot=DN(),Pot=EN(),Iot=Y9(),Lot=X9(),Bot=xN(),jot=N2e(),qot=sg(),$ot=zn(),Mot=ug(),Uot=ege(),Vot=rge(),Hot=nge(),zot=oge(),Got=lge(),Wot=e5(),Kot=mge(),Yot=yge(),Xot=wge(),Jot=Dge(),Zot=Oge();kge.exports={parse:got,valid:yot,clean:vot,inc:_ot,diff:wot,major:bot,minor:Dot,patch:Eot,prerelease:xot,compare:Cot,rcompare:Sot,compareLoose:Aot,compareBuild:Oot,sort:Tot,rsort:Fot,gt:kot,lt:Not,eq:Rot,neq:Pot,gte:Iot,lte:Lot,cmp:Bot,coerce:jot,Comparator:qot,Range:$ot,satisfies:Mot,toComparators:Uot,maxSatisfying:Vot,minSatisfying:Hot,minVersion:zot,validRange:Got,outside:Wot,gtr:Kot,ltr:Yot,intersects:Xot,simplifyRange:Jot,subset:Zot,SemVer:mot,re:jN.re,src:jN.src,tokens:jN.t,SEMVER_SPEC_VERSION:Tge.SEMVER_SPEC_VERSION,RELEASE_TYPES:Tge.RELEASE_TYPES,compareIdentifiers:Fge.compareIdentifiers,rcompareIdentifiers:Fge.rcompareIdentifiers}});var qN=g((Uvt,Lge)=>{var Qot=require("url"),{getIt:eut}=zhe(),{debug:tut,retry:Rge,promise:rut,httpErrors:iut,jsonResponse:nut}=c0e(),aut=I0e(),sut=Pme(),out=Nge(),uut=e=>/(application\/json|\+json)/.test(e||"");function lut(e,t,r){let i=e.response||{statusCode:500,headers:{}};return Rge.shouldRetry(e,t,r)||i&&i.statusCode>=500||i.statusCode<300&&!uut(i.headers["content-type"])}function cut(e,t){if(t.registryUrl)return t.registryUrl;let r=e.split("/")[0];return aut(r)}var Pge=eut([nut({force:!0}),iut(),tut({namespace:"get-latest-version"}),rut(),Rge({shouldRetry:lut})]);async function Ige(e,t){let r=typeof t=="string"?{range:t,auth:!0}:Object.assign({range:"latest",auth:!0},t),i=cut(e,r),n=Qot.resolve(i,encodeURIComponent(e).replace(/^%40/,"@")),a=r.auth&&sut(i,{recursive:!0}),s=r.request||Pge,o={accept:"application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"};a&&(o.authorization=`${a.type} ${a.token}`);let u;try{u=await s({url:n,headers:o})}catch(h){throw h.response&&h.response.statusCode===404?new Error(`Package \`${e}\` doesn't exist`):h}let l=u.body,c=r.range,p=l["dist-tags"].latest;if(l["dist-tags"][c])return r.includeLatest?{latest:p,inRange:l["dist-tags"][c]}:l["dist-tags"][c];if(l.versions[c])return r.includeLatest?{latest:p,inRange:c}:c;let d=Object.keys(l.versions),f=out.maxSatisfying(d,c);return f?r.includeLatest?{latest:p,inRange:f}:f:r.includeLatest?{latest:p,inRange:void 0}:void 0}Ige.request=Pge;Lge.exports=Ige});var r6e=g((Qvt,qo)=>{var er=require("fs"),zN=require("os"),cn=require("path"),Mge=require("crypto"),bs={fs:er.constants,os:zN.constants},Uge="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",Hge=/XXXXXX/,fut=3,zge=(bs.O_CREAT||bs.fs.O_CREAT)|(bs.O_EXCL||bs.fs.O_EXCL)|(bs.O_RDWR||bs.fs.O_RDWR),hut=zN.platform()==="win32",mut=bs.EBADF||bs.os.errno.EBADF,gut=bs.ENOENT||bs.os.errno.ENOENT,Gge=448,Wge=384,yut="exit",S1=[],Kge=er.rmdirSync.bind(er),Yge=!1;function vut(e,t){return er.rm(e,{recursive:!0},t)}function Xge(e){return er.rmSync(e,{recursive:!0})}function GN(e,t){let r=A1(e,t),i=r[0],n=r[1];try{Qge(i)}catch(s){return n(s)}let a=i.tries;(function s(){try{let o=Zge(i);er.stat(o,function(u){if(!u)return a-- >0?s():n(new Error("Could not get a unique tmp filename, max tries reached "+o));n(null,o)})}catch(o){n(o)}})()}function WN(e){let t=A1(e),r=t[0];Qge(r);let i=r.tries;do{let n=Zge(r);try{er.statSync(n)}catch{return n}}while(i-- >0);throw new Error("Could not get a unique tmp filename, max tries reached")}function _ut(e,t){let r=A1(e,t),i=r[0],n=r[1];GN(i,function(s,o){if(s)return n(s);er.open(o,zge,i.mode||Wge,function(l,c){if(l)return n(l);if(i.discardDescriptor)return er.close(c,function(d){return n(d,o,void 0,UN(o,-1,i,!1))});{let p=i.discardDescriptor||i.detachDescriptor;n(null,o,c,UN(o,p?-1:c,i,!1))}})})}function wut(e){let t=A1(e),r=t[0],i=r.discardDescriptor||r.detachDescriptor,n=WN(r);var a=er.openSync(n,zge,r.mode||Wge);return r.discardDescriptor&&(er.closeSync(a),a=void 0),{name:n,fd:a,removeCallback:UN(n,i?-1:a,r,!0)}}function but(e,t){let r=A1(e,t),i=r[0],n=r[1];GN(i,function(s,o){if(s)return n(s);er.mkdir(o,i.mode||Gge,function(l){if(l)return n(l);n(null,o,Jge(o,i,!1))})})}function Dut(e){let t=A1(e),r=t[0],i=WN(r);return er.mkdirSync(i,r.mode||Gge),{name:i,removeCallback:Jge(i,r,!0)}}function Eut(e,t){let r=function(i){if(i&&!HN(i))return t(i);t()};0<=e[0]?er.close(e[0],function(){er.unlink(e[1],r)}):er.unlink(e[1],r)}function xut(e){let t=null;try{0<=e[0]&&er.closeSync(e[0])}catch(r){if(!Aut(r)&&!HN(r))throw r}finally{try{er.unlinkSync(e[1])}catch(r){HN(r)||(t=r)}}if(t!==null)throw t}function UN(e,t,r,i){let n=r5(xut,[t,e],i),a=r5(Eut,[t,e],i,n);return r.keep||S1.unshift(n),i?n:a}function Jge(e,t,r){let i=t.unsafeCleanup?vut:er.rmdir.bind(er),n=t.unsafeCleanup?Xge:Kge,a=r5(n,e,r),s=r5(i,e,r,a);return t.keep||S1.unshift(a),r?a:s}function r5(e,t,r,i){let n=!1;return function a(s){if(!n){let o=i||a,u=S1.indexOf(o);return u>=0&&S1.splice(u,1),n=!0,r||e===Kge||e===Xge?e(t):e(t,s||function(){})}}}function Cut(){if(Yge)for(;S1.length;)try{S1[0]()}catch{}}function Vge(e){let t=[],r=null;try{r=Mge.randomBytes(e)}catch{r=Mge.pseudoRandomBytes(e)}for(var i=0;i<e;i++)t.push(Uge[r[i]%Uge.length]);return t.join("")}function Sut(e){return e===null||Vi(e)||!e.trim()}function Vi(e){return typeof e>"u"}function A1(e,t){if(typeof e=="function")return[{},e];if(Vi(e))return[{},t];let r={};for(let i of Object.getOwnPropertyNames(e))r[i]=e[i];return[r,t]}function Zge(e){let t=e.tmpdir;if(!Vi(e.name))return cn.join(t,e.dir,e.name);if(!Vi(e.template))return cn.join(t,e.dir,e.template).replace(Hge,Vge(6));let r=[e.prefix?e.prefix:"tmp","-",process.pid,"-",Vge(12),e.postfix?"-"+e.postfix:""].join("");return cn.join(t,e.dir,r)}function Qge(e){e.tmpdir=t6e(e);let t=e.tmpdir;if(Vi(e.name)||MN(e.name,"name",t),Vi(e.dir)||MN(e.dir,"dir",t),!Vi(e.template)&&(MN(e.template,"template",t),!e.template.match(Hge)))throw new Error(`Invalid template, found "${e.template}".`);if(!Vi(e.tries)&&isNaN(e.tries)||e.tries<0)throw new Error(`Invalid tries, found "${e.tries}".`);e.tries=Vi(e.name)?e.tries||fut:1,e.keep=!!e.keep,e.detachDescriptor=!!e.detachDescriptor,e.discardDescriptor=!!e.discardDescriptor,e.unsafeCleanup=!!e.unsafeCleanup,e.dir=Vi(e.dir)?"":cn.relative(t,VN(e.dir,t)),e.template=Vi(e.template)?void 0:cn.relative(t,VN(e.template,t)),e.template=Sut(e.template)?void 0:cn.relative(e.dir,e.template),e.name=Vi(e.name)?void 0:e.name,e.prefix=Vi(e.prefix)?"":e.prefix,e.postfix=Vi(e.postfix)?"":e.postfix}function VN(e,t){return e.startsWith(t)?cn.resolve(e):cn.resolve(cn.join(t,e))}function MN(e,t,r){if(t==="name"){if(cn.isAbsolute(e))throw new Error(`${t} option must not contain an absolute path, found "${e}".`);let i=cn.basename(e);if(i===".."||i==="."||i!==e)throw new Error(`${t} option must not contain a path, found "${e}".`)}else{if(cn.isAbsolute(e)&&!e.startsWith(r))throw new Error(`${t} option must be relative to "${r}", found "${e}".`);let i=VN(e,r);if(!i.startsWith(r))throw new Error(`${t} option must be relative to "${r}", found "${i}".`)}}function Aut(e){return e6e(e,-mut,"EBADF")}function HN(e){return e6e(e,-gut,"ENOENT")}function e6e(e,t,r){return hut?e.code===r:e.code===r&&e.errno===t}function Out(){Yge=!0}function t6e(e){return cn.resolve(e&&e.tmpdir||zN.tmpdir())}process.addListener(yut,Cut);Object.defineProperty(qo.exports,"tmpdir",{enumerable:!0,configurable:!1,get:function(){return t6e()}});qo.exports.dir=but;qo.exports.dirSync=Dut;qo.exports.file=_ut;qo.exports.fileSync=wut;qo.exports.tmpName=GN;qo.exports.tmpNameSync=WN;qo.exports.setGracefulCleanup=Out});var ZN=g(O1=>{"use strict";Object.defineProperty(O1,"__esModule",{value:!0});O1.DEFAULT_COLOR_MAP=void 0;O1.DEFAULT_COLOR_MAP={red:"\x1B[31m",green:"\x1B[32m",yellow:"\x1B[33m",blue:"\x1B[34m",magenta:"\x1B[35m",cyan:"\x1B[36m",white:"\x1B[37m",white_bold:"\x1B[01m",reset:"\x1B[0m"};var JN=class{constructor(t=O1.DEFAULT_COLOR_MAP){this.text="",this.colorMap=t}addCharsWithColor(t,r){let i=this.colorMap[t];this.text+=i!==void 0?`${i}${r}${this.colorMap.reset}`:r}renderConsole(){return this.text}};O1.default=JN});var hg=g(tr=>{"use strict";Object.defineProperty(tr,"__esModule",{value:!0});tr.DEFAULT_HEADER_ALIGNMENT=tr.DEFAULT_ROW_ALIGNMENT=tr.DEFAULT_HEADER_FONT_COLOR=tr.DEFAULT_ROW_FONT_COLOR=tr.COLORS=tr.ALIGNMENTS=tr.DEFAULT_TABLE_STYLE=tr.DEFAULT_ROW_SEPARATOR=tr.DEFAULT_COLUMN_LEN=void 0;tr.DEFAULT_COLUMN_LEN=20;tr.DEFAULT_ROW_SEPARATOR=!1;tr.DEFAULT_TABLE_STYLE={headerTop:{left:"\u250C",mid:"\u252C",right:"\u2510",other:"\u2500"},headerBottom:{left:"\u251C",mid:"\u253C",right:"\u2524",other:"\u2500"},tableBottom:{left:"\u2514",mid:"\u2534",right:"\u2518",other:"\u2500"},vertical:"\u2502",rowSeparator:{left:"\u251C",mid:"\u253C",right:"\u2524",other:"\u2500"}};tr.ALIGNMENTS=["right","left","center"];tr.COLORS=["red","green","yellow","white","blue","magenta","cyan","white_bold","reset"];tr.DEFAULT_ROW_FONT_COLOR="white";tr.DEFAULT_HEADER_FONT_COLOR="white_bold";tr.DEFAULT_ROW_ALIGNMENT="right";tr.DEFAULT_HEADER_ALIGNMENT="center"});var QN=g(Mo=>{"use strict";Object.defineProperty(Mo,"__esModule",{value:!0});Mo.rawColumnToInternalColumn=Mo.objIfExists=void 0;var Iut=hg(),Lut=(e,t)=>t?{[e]:t}:{};Mo.objIfExists=Lut;var But=e=>{var t;return Object.assign(Object.assign(Object.assign(Object.assign({name:e.name,title:(t=e.title)!==null&&t!==void 0?t:e.name},(0,Mo.objIfExists)("color",e.color)),(0,Mo.objIfExists)("maxLen",e.maxLen)),(0,Mo.objIfExists)("minLen",e.minLen)),{alignment:e.alignment||Iut.DEFAULT_ROW_ALIGNMENT})};Mo.rawColumnToInternalColumn=But});var d6e=g(eR=>{"use strict";Object.defineProperty(eR,"__esModule",{value:!0});var jut=[{first:768,last:879},{first:1155,last:1158},{first:1160,last:1161},{first:1425,last:1469},{first:1471,last:1471},{first:1473,last:1474},{first:1476,last:1477},{first:1479,last:1479},{first:1536,last:1539},{first:1552,last:1557},{first:1611,last:1630},{first:1648,last:1648},{first:1750,last:1764},{first:1767,last:1768},{first:1770,last:1773},{first:1807,last:1807},{first:1809,last:1809},{first:1840,last:1866},{first:1958,last:1968},{first:2027,last:2035},{first:2305,last:2306},{first:2364,last:2364},{first:2369,last:2376},{first:2381,last:2381},{first:2385,last:2388},{first:2402,last:2403},{first:2433,last:2433},{first:2492,last:2492},{first:2497,last:2500},{first:2509,last:2509},{first:2530,last:2531},{first:2561,last:2562},{first:2620,last:2620},{first:2625,last:2626},{first:2631,last:2632},{first:2635,last:2637},{first:2672,last:2673},{first:2689,last:2690},{first:2748,last:2748},{first:2753,last:2757},{first:2759,last:2760},{first:2765,last:2765},{first:2786,last:2787},{first:2817,last:2817},{first:2876,last:2876},{first:2879,last:2879},{first:2881,last:2883},{first:2893,last:2893},{first:2902,last:2902},{first:2946,last:2946},{first:3008,last:3008},{first:3021,last:3021},{first:3134,last:3136},{first:3142,last:3144},{first:3146,last:3149},{first:3157,last:3158},{first:3260,last:3260},{first:3263,last:3263},{first:3270,last:3270},{first:3276,last:3277},{first:3298,last:3299},{first:3393,last:3395},{first:3405,last:3405},{first:3530,last:3530},{first:3538,last:3540},{first:3542,last:3542},{first:3633,last:3633},{first:3636,last:3642},{first:3655,last:3662},{first:3761,last:3761},{first:3764,last:3769},{first:3771,last:3772},{first:3784,last:3789},{first:3864,last:3865},{first:3893,last:3893},{first:3895,last:3895},{first:3897,last:3897},{first:3953,last:3966},{first:3968,last:3972},{first:3974,last:3975},{first:3984,last:3991},{first:3993,last:4028},{first:4038,last:4038},{first:4141,last:4144},{first:4146,last:4146},{first:4150,last:4151},{first:4153,last:4153},{first:4184,last:4185},{first:4448,last:4607},{first:4959,last:4959},{first:5906,last:5908},{first:5938,last:5940},{first:5970,last:5971},{first:6002,last:6003},{first:6068,last:6069},{first:6071,last:6077},{first:6086,last:6086},{first:6089,last:6099},{first:6109,last:6109},{first:6155,last:6157},{first:6313,last:6313},{first:6432,last:6434},{first:6439,last:6440},{first:6450,last:6450},{first:6457,last:6459},{first:6679,last:6680},{first:6912,last:6915},{first:6964,last:6964},{first:6966,last:6970},{first:6972,last:6972},{first:6978,last:6978},{first:7019,last:7027},{first:7616,last:7626},{first:7678,last:7679},{first:8203,last:8207},{first:8234,last:8238},{first:8288,last:8291},{first:8298,last:8303},{first:8400,last:8431},{first:12330,last:12335},{first:12441,last:12442},{first:43014,last:43014},{first:43019,last:43019},{first:43045,last:43046},{first:64286,last:64286},{first:65024,last:65039},{first:65056,last:65059},{first:65279,last:65279},{first:65529,last:65531},{first:68097,last:68099},{first:68101,last:68102},{first:68108,last:68111},{first:68152,last:68154},{first:68159,last:68159},{first:119143,last:119145},{first:119155,last:119170},{first:119173,last:119179},{first:119210,last:119213},{first:119362,last:119364},{first:917505,last:917505},{first:917536,last:917631},{first:917760,last:917999}];eR.default=jut});var f6e=g(tR=>{"use strict";Object.defineProperty(tR,"__esModule",{value:!0});var qut=(e,t,r)=>{let i=0,n,a=r;if(e<t[0].first||e>t[a].last)return 0;for(;a>=i;)if(n=Math.floor((i+a)/2),e>t[n].last)i=n+1;else if(e<t[n].first)a=n-1;else return 1;return 0};tR.default=qut});var rR=g(mg=>{"use strict";var m6e=mg&&mg.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(mg,"__esModule",{value:!0});var h6e=m6e(d6e()),$ut=m6e(f6e()),Mut=e=>e===0?0:e<32||e>=127&&e<160?-1:$ut.default(e,h6e.default,h6e.default.length-1)?0:1+ +(e>=4352&&(e<=4447||e===9001||e===9002||e>=11904&&e<=42191&&e!==12351||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65135||e>=65280&&e<=65376||e>=65504&&e<=65510||e>=131072&&e<=196605||e>=196608&&e<=262141));mg.default=Mut});var g6e=g(gg=>{"use strict";var Uut=gg&&gg.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(gg,"__esModule",{value:!0});var Vut=Uut(rR()),Hut=e=>{let t=0;for(let r=0;r<e.length;r++){let i=e.charCodeAt(r),n=Vut.default(i);if(n<0)return-1;t+=n}return t};gg.default=Hut});var v6e=g(il=>{"use strict";var y6e=il&&il.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(il,"__esModule",{value:!0});il.wcswidth=il.wcwidth=void 0;var zut=y6e(g6e());il.wcswidth=zut.default;var Gut=y6e(rR());il.wcwidth=Gut.default});var iR=g(up=>{"use strict";Object.defineProperty(up,"__esModule",{value:!0});up.findWidthInConsole=up.stripAnsi=void 0;var Wut=v6e(),Kut=/\x1b\[\d{1,3}(;\d{1,3})*m/g,Yut=e=>e.replace(Kut,"");up.stripAnsi=Yut;var Xut=(e,t)=>{let r=0;return e=(0,up.stripAnsi)(e),t&&Object.entries(t).forEach(([i,n])=>{let a=new RegExp(i,"g");r+=(e.match(a)||[]).length*n,e=e.replace(i,"")}),r+=(0,Wut.wcswidth)(e),r};up.findWidthInConsole=Xut});var aR=g(Ds=>{"use strict";Object.defineProperty(Ds,"__esModule",{value:!0});Ds.biggestWordInSentence=Ds.textWithPadding=Ds.splitTextIntoTextsOfMinLen=void 0;var nR=iR(),Jut=(e,t,r)=>{let i=[];return e.split(/[\n\r]/).forEach(a=>{let s=a.split(" "),o=[],u=0;s.forEach(l=>{let c=(0,nR.findWidthInConsole)(l,r);u+c<=t?(u+=c+1,o.push(l)):(o.length>0&&i.push(o.join(" ")),o=[l],u=c+1)}),i.push(o.join(" "))}),i};Ds.splitTextIntoTextsOfMinLen=Jut;var Zut=(e,t,r,i)=>{let n=(0,nR.findWidthInConsole)(e,i),a=Math.floor((r-n)/2),s=r-a-n;if(r<n){let o=(0,Ds.splitTextIntoTextsOfMinLen)(e,r);return o.length===1?e:o.map(u=>(0,Ds.textWithPadding)(u,t,r,i)).join(`
|
|
291
291
|
`)}switch(t){case"left":return e.concat(" ".repeat(r-n));case"center":return" ".repeat(a).concat(e).concat(" ".repeat(s));case"right":default:return" ".repeat(r-n).concat(e)}};Ds.textWithPadding=Zut;var Qut=(e,t)=>e.split(" ").reduce((r,i)=>Math.max(r,(0,nR.findWidthInConsole)(i,t)),0);Ds.biggestWordInSentence=Qut});var yg=g(rt=>{"use strict";Object.defineProperty(rt,"__esModule",{value:!0});rt.getWidthLimitedColumnsArray=rt.createHeaderAsRow=rt.renderTableHorizontalBorders=rt.findLenOfColumn=rt.createRow=rt.createColumFromComputedColumn=rt.createColumFromOnlyName=rt.createTableHorizontalBorders=rt.convertRawRowOptionsToStandard=rt.cellText=void 0;var sR=QN(),_6e=iR(),oR=aR(),s5=hg(),T1=(e,t)=>Math.max(e,t),elt=e=>e==null?"":`${e}`;rt.cellText=elt;var tlt=e=>{if(e)return{color:e.color,separator:e.separator||s5.DEFAULT_ROW_SEPARATOR}};rt.convertRawRowOptionsToStandard=tlt;var rlt=({left:e,mid:t,right:r,other:i},n)=>{let a=e;return n.forEach(s=>{a+=i.repeat(s+2),a+=t}),a=a.slice(0,-t.length),a+=r,a};rt.createTableHorizontalBorders=rlt;var ilt=e=>({name:e,title:e});rt.createColumFromOnlyName=ilt;var nlt=e=>{var t;return Object.assign(Object.assign(Object.assign(Object.assign({name:e.name,title:(t=e.title)!==null&&t!==void 0?t:e.name},(0,sR.objIfExists)("color",e.color)),(0,sR.objIfExists)("maxLen",e.maxLen)),(0,sR.objIfExists)("minLen",e.minLen)),{alignment:e.alignment||s5.DEFAULT_ROW_ALIGNMENT})};rt.createColumFromComputedColumn=nlt;var alt=(e,t,r)=>({color:e,separator:r,text:t});rt.createRow=alt;var slt=(e,t,r)=>{let i=e.name,n=e.title,a=T1(0,e?.minLen||0);return e.maxLen?(a=T1(a,T1(e.maxLen,(0,oR.biggestWordInSentence)(n,r))),a=t.reduce((s,o)=>T1(s,(0,oR.biggestWordInSentence)((0,rt.cellText)(o.text[i]),r)),a),a):(a=T1(a,(0,_6e.findWidthInConsole)(n,r)),t.forEach(s=>{a=T1(a,(0,_6e.findWidthInConsole)((0,rt.cellText)(s.text[i]),r))}),a)};rt.findLenOfColumn=slt;var olt=(e,t)=>(0,rt.createTableHorizontalBorders)(e,t);rt.renderTableHorizontalBorders=olt;var ult=(e,t)=>{let r=s5.DEFAULT_HEADER_FONT_COLOR,i=e(r,{},!1);return t.forEach(n=>{i.text[n.name]=n.title}),i};rt.createHeaderAsRow=ult;var llt=(e,t,r)=>{let i={};return e.forEach(n=>{i[n.name]=(0,oR.splitTextIntoTextsOfMinLen)((0,rt.cellText)(t.text[n.name]),n.length||s5.DEFAULT_COLUMN_LEN,r)}),i};rt.getWidthLimitedColumnsArray=llt});var w6e=g(F1=>{"use strict";Object.defineProperty(F1,"__esModule",{value:!0});F1.preProcessRows=F1.preProcessColumns=void 0;var clt=yg(),plt=e=>{e.computedColumns.length&&e.computedColumns.forEach(t=>{e.addColumn(t),e.rows.forEach(r=>{r.text[t.name]=t.function(r.text)})})},dlt=e=>{e.enabledColumns.length&&(e.columns=e.columns.filter(t=>e.enabledColumns.includes(t.name)))},flt=e=>{e.disabledColumns.length&&(e.columns=e.columns.filter(t=>!e.disabledColumns.includes(t.name)))},hlt=e=>{e.columns.forEach(t=>{t.length=(0,clt.findLenOfColumn)(t,e.rows,e.charLength)})},mlt=e=>{plt(e),flt(e),dlt(e),hlt(e)};F1.preProcessColumns=mlt;var glt=e=>{let t=e.rows.filter(r=>e.filterFunction(r.text)).sort((r,i)=>e.sortFunction(r.text,i.text));e.rows=t};F1.preProcessRows=glt});var uR=g(Wn=>{"use strict";var D6e=Wn&&Wn.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Wn,"__esModule",{value:!0});Wn.printSimpleTable=Wn.renderSimpleTable=Wn.renderTable=void 0;var E6e=D6e(ZN()),x6e=aR(),_a=hg(),nl=yg(),ylt=D6e(lR()),b6e=w6e(),vlt=(e,t,r,i,n,a,s,o)=>{let u=new E6e.default(s);return u.addCharsWithColor("",e.vertical),t.forEach(l=>{let p=r<i[l.name].length?(0,nl.cellText)(i[l.name][r]):"";u.addCharsWithColor(_a.DEFAULT_ROW_FONT_COLOR," "),u.addCharsWithColor(n&&_a.DEFAULT_HEADER_FONT_COLOR||l.color||a.color,(0,x6e.textWithPadding)(p,l.alignment||_a.DEFAULT_ROW_ALIGNMENT,l.length||_a.DEFAULT_COLUMN_LEN,o)),u.addCharsWithColor("",` ${e.vertical}`)}),u.renderConsole()},C6e=(e,t,r,i,n,a)=>{let s=(0,nl.getWidthLimitedColumnsArray)(t,r,a),o=Object.values(s).reduce((l,c)=>Math.max(l,c.length),0),u=[];for(let l=0;l<o;l+=1){let c=vlt(e,t,l,s,n,r,i,a);u.push(c)}return u},_lt=(e,t)=>{let r=[];return r=r.concat(C6e(e.tableStyle,e.columns,t,e.colorMap,void 0,e.charLength)),r},wlt=e=>{let t=[];if(e.title===void 0)return t;let r=()=>{let a=(s,o)=>s+o+2+1;return e.columns.map(s=>s.length||_a.DEFAULT_COLUMN_LEN).reduce(a,1)},i=(0,x6e.textWithPadding)(e.title,_a.DEFAULT_HEADER_ALIGNMENT,r()),n=new E6e.default(e.colorMap);return n.addCharsWithColor(_a.DEFAULT_HEADER_FONT_COLOR,i),t.push(n.renderConsole()),t},blt=e=>{let t=[];t.push((0,nl.renderTableHorizontalBorders)(e.tableStyle.headerTop,e.columns.map(i=>i.length||_a.DEFAULT_COLUMN_LEN)));let r=(0,nl.createHeaderAsRow)(nl.createRow,e.columns);return t=t.concat(C6e(e.tableStyle,e.columns,r,e.colorMap,!0)),t.push((0,nl.renderTableHorizontalBorders)(e.tableStyle.headerBottom,e.columns.map(i=>i.length||_a.DEFAULT_COLUMN_LEN))),t},Dlt=e=>{let t=[];return t.push((0,nl.renderTableHorizontalBorders)(e.tableStyle.tableBottom,e.columns.map(r=>r.length||_a.DEFAULT_COLUMN_LEN))),t},Elt=(e,t)=>{let r=[],i=e.rows.length-1;return e.rows.indexOf(t)!==i&&t.separator&&r.push((0,nl.renderTableHorizontalBorders)(e.tableStyle.rowSeparator,e.columns.map(a=>a.length||_a.DEFAULT_COLUMN_LEN))),r},xlt=e=>{(0,b6e.preProcessColumns)(e),(0,b6e.preProcessRows)(e);let t=[];return wlt(e).forEach(r=>t.push(r)),blt(e).forEach(r=>t.push(r)),e.rows.forEach(r=>{_lt(e,r).forEach(i=>t.push(i)),Elt(e,r).forEach(i=>t.push(i))}),Dlt(e).forEach(r=>t.push(r)),t.join(`
|
|
292
|
-
`)};Wn.renderTable=xlt;var Clt=e=>{let t=new ylt.default;return t.addRows(e),(0,Wn.renderTable)(t)};Wn.renderSimpleTable=Clt;var Slt=e=>{console.log((0,Wn.renderSimpleTable)(e))};Wn.printSimpleTable=Slt});var lR=g(pR=>{"use strict";Object.defineProperty(pR,"__esModule",{value:!0});var Alt=ZN(),o5=hg(),u5=yg(),Olt=QN(),Tlt=uR(),Flt=()=>0,klt=()=>!0,cR=class{initSimple(t){this.columns=t.map(r=>({name:r,title:r,alignment:o5.DEFAULT_ROW_ALIGNMENT}))}initDetailed(t){var r;this.title=t?.title||this.title,this.tableStyle=t?.style||this.tableStyle,this.sortFunction=t?.sort||this.sortFunction,this.filterFunction=t?.filter||this.filterFunction,this.enabledColumns=t?.enabledColumns||this.enabledColumns,this.disabledColumns=t?.disabledColumns||this.disabledColumns,this.computedColumns=t?.computedColumns||this.computedColumns,this.columns=((r=t?.columns)===null||r===void 0?void 0:r.map(Olt.rawColumnToInternalColumn))||this.columns,this.rowSeparator=t?.rowSeparator||this.rowSeparator,this.charLength=t?.charLength||this.charLength,t?.shouldDisableColors?this.colorMap={}:t?.colorMap&&(this.colorMap=Object.assign(Object.assign({},this.colorMap),t.colorMap)),t.rows!==void 0&&this.addRows(t.rows)}constructor(t){this.rows=[],this.columns=[],this.title=void 0,this.tableStyle=o5.DEFAULT_TABLE_STYLE,this.filterFunction=klt,this.sortFunction=Flt,this.enabledColumns=[],this.disabledColumns=[],this.computedColumns=[],this.rowSeparator=o5.DEFAULT_ROW_SEPARATOR,this.colorMap=Alt.DEFAULT_COLOR_MAP,this.charLength={},t instanceof Array?this.initSimple(t):typeof t=="object"&&this.initDetailed(t)}createColumnFromRow(t){let r=this.columns.map(i=>i.name);Object.keys(t).forEach(i=>{r.includes(i)||this.columns.push((0,u5.createColumFromOnlyName)(i))})}addColumn(t){typeof t=="string"?this.columns.push((0,u5.createColumFromOnlyName)(t)):this.columns.push((0,u5.createColumFromComputedColumn)(t))}addColumns(t){t.forEach(r=>{this.addColumn(r)})}addRow(t,r){this.createColumnFromRow(t),this.rows.push((0,u5.createRow)(r?.color||o5.DEFAULT_ROW_FONT_COLOR,t,r?.separator!==void 0?r?.separator:this.rowSeparator))}addRows(t,r){t.forEach(i=>{this.addRow(i,r)})}renderTable(){return(0,Tlt.renderTable)(this)}};pR.default=cR});var A6e=g(vg=>{"use strict";var Nlt=vg&&vg.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(vg,"__esModule",{value:!0});var Rlt=Nlt(lR()),S6e=yg(),dR=class{constructor(t){this.table=new Rlt.default(t)}addColumn(t){return this.table.addColumn(t),this}addColumns(t){return this.table.addColumns(t),this}addRow(t,r){return this.table.addRow(t,(0,S6e.convertRawRowOptionsToStandard)(r)),this}addRows(t,r){return this.table.addRows(t,(0,S6e.convertRawRowOptionsToStandard)(r)),this}printTable(){let t=this.table.renderTable();console.log(t)}render(){return this.table.renderTable()}};vg.default=dR});var _g=g(Es=>{"use strict";var Plt=Es&&Es.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Es,"__esModule",{value:!0});Es.renderTable=Es.printTable=Es.Table=void 0;var Ilt=Plt(A6e());Es.Table=Ilt.default;var O6e=uR();Object.defineProperty(Es,"printTable",{enumerable:!0,get:function(){return O6e.printSimpleTable}});Object.defineProperty(Es,"renderTable",{enumerable:!0,get:function(){return O6e.renderSimpleTable}})});var X4e=g((E7t,Y4e)=>{Y4e.exports=o9()});var WR=he(GR(),1),{program:$,createCommand:Lct,createArgument:Bct,createOption:jct,CommanderError:qct,InvalidArgumentError:$ct,InvalidOptionArgumentError:Mct,Command:Uct,Argument:Vct,Option:Hct,Help:zct}=WR.default;var ba={name:"@capgo/cli",version:"4.21.7",description:"A CLI to upload to capgo servers",author:"github.com/riderx",license:"Apache 2.0",homepage:"https://github.com/Cap-go/CLIl#readme",repository:{type:"git",url:"git+https://github.com/Cap-go/CLI.git"},bugs:{url:"https://github.com/Cap-go/CLI/issues"},keywords:["appflow alternative","ionic","capacitor","auto update","live update","capgo","cli","upload","capgo-cli"],main:"dist/index.js",bin:{capgo:"dist/index.js"},engines:{npm:">=8.0.0",node:">=20.0.0"},scripts:{build:"node build.mjs",dev:"NODE_ENV=development ncc build","no-debug":"node dist/index.js",test:"npx --yes ts-node -T src/index.ts","dev-build":"SUPA_DB=development ncc build",pack:"pkg",types:"npx --yes supabase gen types typescript --project-id=xvwzpoazmxkqosrdewyv > src/types/supabase.types.ts",test_rls:"ts-node ./test/test_headers_rls.ts",lint:'eslint "src/**/*.ts" --fix',"check-posix-paths":"node test/check-posix-paths.js"},devDependencies:{"@antfu/eslint-config":"^2.27.3","@bradenmacdonald/s3-lite-client":"npm:@jsr/bradenmacdonald__s3-lite-client","@capacitor/cli":"^6.1.2","@capgo/find-package-manager":"^0.0.17","@clack/prompts":"^0.7.0","@manypkg/find-root":"^2.2.3","@supabase/supabase-js":"^2.45.2","@tomasklaen/checksum":"^1.1.0","@types/adm-zip":"0.5.5","@types/mime":"^4.0.0","@types/node":"^22.5.0","@types/node-dir":"^0.0.37","@types/npmcli__ci-detect":"^2.0.3","@types/prettyjson":"^0.0.33","@types/prompt-sync":"^4.2.3","@types/semver":"^7.5.8","@types/tmp":"^0.2.6","@typescript-eslint/eslint-plugin":"^8.3.0","@typescript-eslint/parser":"^8.3.0","@vercel/ncc":"^0.38.1","adm-zip":"0.5.14","ci-info":"^4.0.0",commander:"12.1.0","console-table-printer":"^2.12.1",esbuild:"^0.23.1",eslint:"9.12.0","get-latest-version":"^5.1.0","git-format-staged":"3.1.1",husky:"^9.1.5","is-wsl":"^3.1.0",jszip:"^3.10.1",ky:"^1.7.1",logsnag:"1.0.0",mime:"^4.0.4","node-dir":"^0.1.17",open:"^10.1.0",pkg:"5.8.1",prettyjson:"^1.2.5",semver:"^7.6.3",tmp:"^0.2.3","ts-loader":"^9.5.1","ts-node":"^10.9.2","tsconfig-paths":"4.2.0","tus-js-client":"^4.2.3",typescript:"5.6.2"}};var p1=require("node:process");var ri=he(it(),1),mp=require("node:process"),Go=he(require("node:readline"),1),J5=he(require("node:readline"),1),aP=require("node:tty"),Rg=he(JR(),1);function B3e({onlyFirst:e=!1}={}){let t=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))"].join("|");return new RegExp(t,e?void 0:"g")}function sP(e){if(typeof e!="string")throw new TypeError(`Expected a \`string\`, got \`${typeof e}\``);return e.replace(B3e(),"")}var Z5={},j3e={get exports(){return Z5},set exports(e){Z5=e}};(function(e){var t={};e.exports=t,t.eastAsianWidth=function(i){var n=i.charCodeAt(0),a=i.length==2?i.charCodeAt(1):0,s=n;return 55296<=n&&n<=56319&&56320<=a&&a<=57343&&(n&=1023,a&=1023,s=n<<10|a,s+=65536),s==12288||65281<=s&&s<=65376||65504<=s&&s<=65510?"F":s==8361||65377<=s&&s<=65470||65474<=s&&s<=65479||65482<=s&&s<=65487||65490<=s&&s<=65495||65498<=s&&s<=65500||65512<=s&&s<=65518?"H":4352<=s&&s<=4447||4515<=s&&s<=4519||4602<=s&&s<=4607||9001<=s&&s<=9002||11904<=s&&s<=11929||11931<=s&&s<=12019||12032<=s&&s<=12245||12272<=s&&s<=12283||12289<=s&&s<=12350||12353<=s&&s<=12438||12441<=s&&s<=12543||12549<=s&&s<=12589||12593<=s&&s<=12686||12688<=s&&s<=12730||12736<=s&&s<=12771||12784<=s&&s<=12830||12832<=s&&s<=12871||12880<=s&&s<=13054||13056<=s&&s<=19903||19968<=s&&s<=42124||42128<=s&&s<=42182||43360<=s&&s<=43388||44032<=s&&s<=55203||55216<=s&&s<=55238||55243<=s&&s<=55291||63744<=s&&s<=64255||65040<=s&&s<=65049||65072<=s&&s<=65106||65108<=s&&s<=65126||65128<=s&&s<=65131||110592<=s&&s<=110593||127488<=s&&s<=127490||127504<=s&&s<=127546||127552<=s&&s<=127560||127568<=s&&s<=127569||131072<=s&&s<=194367||177984<=s&&s<=196605||196608<=s&&s<=262141?"W":32<=s&&s<=126||162<=s&&s<=163||165<=s&&s<=166||s==172||s==175||10214<=s&&s<=10221||10629<=s&&s<=10630?"Na":s==161||s==164||167<=s&&s<=168||s==170||173<=s&&s<=174||176<=s&&s<=180||182<=s&&s<=186||188<=s&&s<=191||s==198||s==208||215<=s&&s<=216||222<=s&&s<=225||s==230||232<=s&&s<=234||236<=s&&s<=237||s==240||242<=s&&s<=243||247<=s&&s<=250||s==252||s==254||s==257||s==273||s==275||s==283||294<=s&&s<=295||s==299||305<=s&&s<=307||s==312||319<=s&&s<=322||s==324||328<=s&&s<=331||s==333||338<=s&&s<=339||358<=s&&s<=359||s==363||s==462||s==464||s==466||s==468||s==470||s==472||s==474||s==476||s==593||s==609||s==708||s==711||713<=s&&s<=715||s==717||s==720||728<=s&&s<=731||s==733||s==735||768<=s&&s<=879||913<=s&&s<=929||931<=s&&s<=937||945<=s&&s<=961||963<=s&&s<=969||s==1025||1040<=s&&s<=1103||s==1105||s==8208||8211<=s&&s<=8214||8216<=s&&s<=8217||8220<=s&&s<=8221||8224<=s&&s<=8226||8228<=s&&s<=8231||s==8240||8242<=s&&s<=8243||s==8245||s==8251||s==8254||s==8308||s==8319||8321<=s&&s<=8324||s==8364||s==8451||s==8453||s==8457||s==8467||s==8470||8481<=s&&s<=8482||s==8486||s==8491||8531<=s&&s<=8532||8539<=s&&s<=8542||8544<=s&&s<=8555||8560<=s&&s<=8569||s==8585||8592<=s&&s<=8601||8632<=s&&s<=8633||s==8658||s==8660||s==8679||s==8704||8706<=s&&s<=8707||8711<=s&&s<=8712||s==8715||s==8719||s==8721||s==8725||s==8730||8733<=s&&s<=8736||s==8739||s==8741||8743<=s&&s<=8748||s==8750||8756<=s&&s<=8759||8764<=s&&s<=8765||s==8776||s==8780||s==8786||8800<=s&&s<=8801||8804<=s&&s<=8807||8810<=s&&s<=8811||8814<=s&&s<=8815||8834<=s&&s<=8835||8838<=s&&s<=8839||s==8853||s==8857||s==8869||s==8895||s==8978||9312<=s&&s<=9449||9451<=s&&s<=9547||9552<=s&&s<=9587||9600<=s&&s<=9615||9618<=s&&s<=9621||9632<=s&&s<=9633||9635<=s&&s<=9641||9650<=s&&s<=9651||9654<=s&&s<=9655||9660<=s&&s<=9661||9664<=s&&s<=9665||9670<=s&&s<=9672||s==9675||9678<=s&&s<=9681||9698<=s&&s<=9701||s==9711||9733<=s&&s<=9734||s==9737||9742<=s&&s<=9743||9748<=s&&s<=9749||s==9756||s==9758||s==9792||s==9794||9824<=s&&s<=9825||9827<=s&&s<=9829||9831<=s&&s<=9834||9836<=s&&s<=9837||s==9839||9886<=s&&s<=9887||9918<=s&&s<=9919||9924<=s&&s<=9933||9935<=s&&s<=9953||s==9955||9960<=s&&s<=9983||s==10045||s==10071||10102<=s&&s<=10111||11093<=s&&s<=11097||12872<=s&&s<=12879||57344<=s&&s<=63743||65024<=s&&s<=65039||s==65533||127232<=s&&s<=127242||127248<=s&&s<=127277||127280<=s&&s<=127337||127344<=s&&s<=127386||917760<=s&&s<=917999||983040<=s&&s<=1048573||1048576<=s&&s<=1114109?"A":"N"},t.characterLength=function(i){var n=this.eastAsianWidth(i);return n=="F"||n=="W"||n=="A"?2:1};function r(i){return i.match(/[\uD800-\uDBFF][\uDC00-\uDFFF]|[^\uD800-\uDFFF]/g)||[]}t.length=function(i){for(var n=r(i),a=0,s=0;s<n.length;s++)a=a+this.characterLength(n[s]);return a},t.slice=function(i,n,a){textLen=t.length(i),n=n||0,a=a||1,n<0&&(n=textLen+n),a<0&&(a=textLen+a);for(var s="",o=0,u=r(i),l=0;l<u.length;l++){var c=u[l],p=t.length(c);if(o>=n-(p==2?1:0))if(o+p<=a)s+=c;else break;o+=p}return s}})(j3e);var q3e=Z5,$3e=function(){return/\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67)\uDB40\uDC7F|(?:\uD83E\uDDD1\uD83C\uDFFF\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFC-\uDFFF])|\uD83D\uDC68(?:\uD83C\uDFFB(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|[\u2695\u2696\u2708]\uFE0F|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))?|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFE])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])\uFE0F|\u200D(?:(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D[\uDC66\uDC67])|\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC)?|(?:\uD83D\uDC69(?:\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69]))|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC69(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83E\uDDD1(?:\u200D(?:\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDE36\u200D\uD83C\uDF2B|\uD83C\uDFF3\uFE0F\u200D\u26A7|\uD83D\uDC3B\u200D\u2744|(?:(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\uD83C\uDFF4\u200D\u2620|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])\u200D[\u2640\u2642]|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u2600-\u2604\u260E\u2611\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26B0\u26B1\u26C8\u26CF\u26D1\u26D3\u26E9\u26F0\u26F1\u26F4\u26F7\u26F8\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u3030\u303D\u3297\u3299]|\uD83C[\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]|\uD83D[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3])\uFE0F|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDE35\u200D\uD83D\uDCAB|\uD83D\uDE2E\u200D\uD83D\uDCA8|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83E\uDDD1(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83D\uDC69(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF6\uD83C\uDDE6|\uD83C\uDDF4\uD83C\uDDF2|\uD83D\uDC08\u200D\u2B1B|\u2764\uFE0F\u200D(?:\uD83D\uDD25|\uD83E\uDE79)|\uD83D\uDC41\uFE0F|\uD83C\uDFF3\uFE0F|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|[#\*0-9]\uFE0F\u20E3|\u2764\uFE0F|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|\uD83C\uDFF4|(?:[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270C\u270D]|\uD83D[\uDD74\uDD90])(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC08\uDC15\uDC3B\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE2E\uDE35\uDE36\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5]|\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD]|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF]|[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0D\uDD0E\uDD10-\uDD17\uDD1D\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78\uDD7A-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCB\uDDD0\uDDE0-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6]|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26A7\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDED5-\uDED7\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])\uFE0F|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDC8F\uDC91\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDD77\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g};function $1(e,t={}){if(typeof e!="string"||e.length===0||(t={ambiguousIsNarrow:!0,...t},e=sP(e),e.length===0))return 0;e=e.replace($3e()," ");let r=t.ambiguousIsNarrow?1:2,i=0;for(let n of e){let a=n.codePointAt(0);if(!(a<=31||a>=127&&a<=159||a>=768&&a<=879))switch(q3e.eastAsianWidth(n)){case"F":case"W":i+=2;break;case"A":i+=r;break;default:i+=1}}return i}var Y5=10,ZR=(e=0)=>t=>`\x1B[${t+e}m`,QR=(e=0)=>t=>`\x1B[${38+e};5;${t}m`,eP=(e=0)=>(t,r,i)=>`\x1B[${38+e};2;${t};${r};${i}m`,ft={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}};Object.keys(ft.modifier);var M3e=Object.keys(ft.color),U3e=Object.keys(ft.bgColor);[...M3e,...U3e];function V3e(){let e=new Map;for(let[t,r]of Object.entries(ft)){for(let[i,n]of Object.entries(r))ft[i]={open:`\x1B[${n[0]}m`,close:`\x1B[${n[1]}m`},r[i]=ft[i],e.set(n[0],n[1]);Object.defineProperty(ft,t,{value:r,enumerable:!1})}return Object.defineProperty(ft,"codes",{value:e,enumerable:!1}),ft.color.close="\x1B[39m",ft.bgColor.close="\x1B[49m",ft.color.ansi=ZR(),ft.color.ansi256=QR(),ft.color.ansi16m=eP(),ft.bgColor.ansi=ZR(Y5),ft.bgColor.ansi256=QR(Y5),ft.bgColor.ansi16m=eP(Y5),Object.defineProperties(ft,{rgbToAnsi256:{value:(t,r,i)=>t===r&&r===i?t<8?16:t>248?231:Math.round((t-8)/247*24)+232:16+36*Math.round(t/255*5)+6*Math.round(r/255*5)+Math.round(i/255*5),enumerable:!1},hexToRgb:{value:t=>{let r=/[a-f\d]{6}|[a-f\d]{3}/i.exec(t.toString(16));if(!r)return[0,0,0];let[i]=r;i.length===3&&(i=[...i].map(a=>a+a).join(""));let n=Number.parseInt(i,16);return[n>>16&255,n>>8&255,n&255]},enumerable:!1},hexToAnsi256:{value:t=>ft.rgbToAnsi256(...ft.hexToRgb(t)),enumerable:!1},ansi256ToAnsi:{value:t=>{if(t<8)return 30+t;if(t<16)return 90+(t-8);let r,i,n;if(t>=232)r=((t-232)*10+8)/255,i=r,n=r;else{t-=16;let o=t%36;r=Math.floor(t/36)/5,i=Math.floor(o/6)/5,n=o%6/5}let a=Math.max(r,i,n)*2;if(a===0)return 30;let s=30+(Math.round(n)<<2|Math.round(i)<<1|Math.round(r));return a===2&&(s+=60),s},enumerable:!1},rgbToAnsi:{value:(t,r,i)=>ft.ansi256ToAnsi(ft.rgbToAnsi256(t,r,i)),enumerable:!1},hexToAnsi:{value:t=>ft.ansi256ToAnsi(ft.hexToAnsi256(t)),enumerable:!1}}),ft}var H3e=V3e(),Bg=new Set(["\x1B","\x9B"]),z3e=39,Q5="\x07",oP="[",G3e="]",uP="m",e_=`${G3e}8;;`,tP=e=>`${Bg.values().next().value}${oP}${e}${uP}`,rP=e=>`${Bg.values().next().value}${e_}${e}${Q5}`,W3e=e=>e.split(" ").map(t=>$1(t)),X5=(e,t,r)=>{let i=[...t],n=!1,a=!1,s=$1(sP(e[e.length-1]));for(let[o,u]of i.entries()){let l=$1(u);if(s+l<=r?e[e.length-1]+=u:(e.push(u),s=0),Bg.has(u)&&(n=!0,a=i.slice(o+1).join("").startsWith(e_)),n){a?u===Q5&&(n=!1,a=!1):u===uP&&(n=!1);continue}s+=l,s===r&&o<i.length-1&&(e.push(""),s=0)}!s&&e[e.length-1].length>0&&e.length>1&&(e[e.length-2]+=e.pop())},K3e=e=>{let t=e.split(" "),r=t.length;for(;r>0&&!($1(t[r-1])>0);)r--;return r===t.length?e:t.slice(0,r).join(" ")+t.slice(r).join("")},Y3e=(e,t,r={})=>{if(r.trim!==!1&&e.trim()==="")return"";let i="",n,a,s=W3e(e),o=[""];for(let[l,c]of e.split(" ").entries()){r.trim!==!1&&(o[o.length-1]=o[o.length-1].trimStart());let p=$1(o[o.length-1]);if(l!==0&&(p>=t&&(r.wordWrap===!1||r.trim===!1)&&(o.push(""),p=0),(p>0||r.trim===!1)&&(o[o.length-1]+=" ",p++)),r.hard&&s[l]>t){let d=t-p,f=1+Math.floor((s[l]-d-1)/t);Math.floor((s[l]-1)/t)<f&&o.push(""),X5(o,c,t);continue}if(p+s[l]>t&&p>0&&s[l]>0){if(r.wordWrap===!1&&p<t){X5(o,c,t);continue}o.push("")}if(p+s[l]>t&&r.wordWrap===!1){X5(o,c,t);continue}o[o.length-1]+=c}r.trim!==!1&&(o=o.map(l=>K3e(l)));let u=[...o.join(`
|
|
292
|
+
`)};Wn.renderTable=xlt;var Clt=e=>{let t=new ylt.default;return t.addRows(e),(0,Wn.renderTable)(t)};Wn.renderSimpleTable=Clt;var Slt=e=>{console.log((0,Wn.renderSimpleTable)(e))};Wn.printSimpleTable=Slt});var lR=g(pR=>{"use strict";Object.defineProperty(pR,"__esModule",{value:!0});var Alt=ZN(),o5=hg(),u5=yg(),Olt=QN(),Tlt=uR(),Flt=()=>0,klt=()=>!0,cR=class{initSimple(t){this.columns=t.map(r=>({name:r,title:r,alignment:o5.DEFAULT_ROW_ALIGNMENT}))}initDetailed(t){var r;this.title=t?.title||this.title,this.tableStyle=t?.style||this.tableStyle,this.sortFunction=t?.sort||this.sortFunction,this.filterFunction=t?.filter||this.filterFunction,this.enabledColumns=t?.enabledColumns||this.enabledColumns,this.disabledColumns=t?.disabledColumns||this.disabledColumns,this.computedColumns=t?.computedColumns||this.computedColumns,this.columns=((r=t?.columns)===null||r===void 0?void 0:r.map(Olt.rawColumnToInternalColumn))||this.columns,this.rowSeparator=t?.rowSeparator||this.rowSeparator,this.charLength=t?.charLength||this.charLength,t?.shouldDisableColors?this.colorMap={}:t?.colorMap&&(this.colorMap=Object.assign(Object.assign({},this.colorMap),t.colorMap)),t.rows!==void 0&&this.addRows(t.rows)}constructor(t){this.rows=[],this.columns=[],this.title=void 0,this.tableStyle=o5.DEFAULT_TABLE_STYLE,this.filterFunction=klt,this.sortFunction=Flt,this.enabledColumns=[],this.disabledColumns=[],this.computedColumns=[],this.rowSeparator=o5.DEFAULT_ROW_SEPARATOR,this.colorMap=Alt.DEFAULT_COLOR_MAP,this.charLength={},t instanceof Array?this.initSimple(t):typeof t=="object"&&this.initDetailed(t)}createColumnFromRow(t){let r=this.columns.map(i=>i.name);Object.keys(t).forEach(i=>{r.includes(i)||this.columns.push((0,u5.createColumFromOnlyName)(i))})}addColumn(t){typeof t=="string"?this.columns.push((0,u5.createColumFromOnlyName)(t)):this.columns.push((0,u5.createColumFromComputedColumn)(t))}addColumns(t){t.forEach(r=>{this.addColumn(r)})}addRow(t,r){this.createColumnFromRow(t),this.rows.push((0,u5.createRow)(r?.color||o5.DEFAULT_ROW_FONT_COLOR,t,r?.separator!==void 0?r?.separator:this.rowSeparator))}addRows(t,r){t.forEach(i=>{this.addRow(i,r)})}renderTable(){return(0,Tlt.renderTable)(this)}};pR.default=cR});var A6e=g(vg=>{"use strict";var Nlt=vg&&vg.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(vg,"__esModule",{value:!0});var Rlt=Nlt(lR()),S6e=yg(),dR=class{constructor(t){this.table=new Rlt.default(t)}addColumn(t){return this.table.addColumn(t),this}addColumns(t){return this.table.addColumns(t),this}addRow(t,r){return this.table.addRow(t,(0,S6e.convertRawRowOptionsToStandard)(r)),this}addRows(t,r){return this.table.addRows(t,(0,S6e.convertRawRowOptionsToStandard)(r)),this}printTable(){let t=this.table.renderTable();console.log(t)}render(){return this.table.renderTable()}};vg.default=dR});var _g=g(Es=>{"use strict";var Plt=Es&&Es.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Es,"__esModule",{value:!0});Es.renderTable=Es.printTable=Es.Table=void 0;var Ilt=Plt(A6e());Es.Table=Ilt.default;var O6e=uR();Object.defineProperty(Es,"printTable",{enumerable:!0,get:function(){return O6e.printSimpleTable}});Object.defineProperty(Es,"renderTable",{enumerable:!0,get:function(){return O6e.renderSimpleTable}})});var X4e=g((E7t,Y4e)=>{Y4e.exports=o9()});var WR=he(GR(),1),{program:$,createCommand:Lct,createArgument:Bct,createOption:jct,CommanderError:qct,InvalidArgumentError:$ct,InvalidOptionArgumentError:Mct,Command:Uct,Argument:Vct,Option:Hct,Help:zct}=WR.default;var ba={name:"@capgo/cli",version:"4.21.9",description:"A CLI to upload to capgo servers",author:"github.com/riderx",license:"Apache 2.0",homepage:"https://github.com/Cap-go/CLIl#readme",repository:{type:"git",url:"git+https://github.com/Cap-go/CLI.git"},bugs:{url:"https://github.com/Cap-go/CLI/issues"},keywords:["appflow alternative","ionic","capacitor","auto update","live update","capgo","cli","upload","capgo-cli"],main:"dist/index.js",bin:{capgo:"dist/index.js"},engines:{npm:">=8.0.0",node:">=20.0.0"},scripts:{build:"node build.mjs",dev:"NODE_ENV=development ncc build","no-debug":"node dist/index.js",test:"npx --yes ts-node -T src/index.ts","dev-build":"SUPA_DB=development ncc build",pack:"pkg",types:"npx --yes supabase gen types typescript --project-id=xvwzpoazmxkqosrdewyv > src/types/supabase.types.ts",test_rls:"ts-node ./test/test_headers_rls.ts",lint:'eslint "src/**/*.ts" --fix',"check-posix-paths":"node test/check-posix-paths.js"},devDependencies:{"@antfu/eslint-config":"^2.27.3","@bradenmacdonald/s3-lite-client":"npm:@jsr/bradenmacdonald__s3-lite-client","@capacitor/cli":"^6.1.2","@capgo/find-package-manager":"^0.0.17","@clack/prompts":"^0.7.0","@manypkg/find-root":"^2.2.3","@supabase/supabase-js":"^2.45.2","@tomasklaen/checksum":"^1.1.0","@types/adm-zip":"0.5.5","@types/mime":"^4.0.0","@types/node":"^22.5.0","@types/node-dir":"^0.0.37","@types/npmcli__ci-detect":"^2.0.3","@types/prettyjson":"^0.0.33","@types/prompt-sync":"^4.2.3","@types/semver":"^7.5.8","@types/tmp":"^0.2.6","@typescript-eslint/eslint-plugin":"^8.3.0","@typescript-eslint/parser":"^8.3.0","@vercel/ncc":"^0.38.1","adm-zip":"0.5.14","ci-info":"^4.0.0",commander:"12.1.0","console-table-printer":"^2.12.1",esbuild:"^0.23.1",eslint:"9.12.0","get-latest-version":"^5.1.0","git-format-staged":"3.1.1",husky:"^9.1.5","is-wsl":"^3.1.0",jszip:"^3.10.1",ky:"^1.7.1",logsnag:"1.0.0",mime:"^4.0.4","node-dir":"^0.1.17",open:"^10.1.0",pkg:"5.8.1",prettyjson:"^1.2.5",semver:"^7.6.3",tmp:"^0.2.3","ts-loader":"^9.5.1","ts-node":"^10.9.2","tsconfig-paths":"4.2.0","tus-js-client":"^4.2.3",typescript:"5.6.3"}};var p1=require("node:process");var ri=he(it(),1),mp=require("node:process"),Go=he(require("node:readline"),1),J5=he(require("node:readline"),1),aP=require("node:tty"),Rg=he(JR(),1);function B3e({onlyFirst:e=!1}={}){let t=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))"].join("|");return new RegExp(t,e?void 0:"g")}function sP(e){if(typeof e!="string")throw new TypeError(`Expected a \`string\`, got \`${typeof e}\``);return e.replace(B3e(),"")}var Z5={},j3e={get exports(){return Z5},set exports(e){Z5=e}};(function(e){var t={};e.exports=t,t.eastAsianWidth=function(i){var n=i.charCodeAt(0),a=i.length==2?i.charCodeAt(1):0,s=n;return 55296<=n&&n<=56319&&56320<=a&&a<=57343&&(n&=1023,a&=1023,s=n<<10|a,s+=65536),s==12288||65281<=s&&s<=65376||65504<=s&&s<=65510?"F":s==8361||65377<=s&&s<=65470||65474<=s&&s<=65479||65482<=s&&s<=65487||65490<=s&&s<=65495||65498<=s&&s<=65500||65512<=s&&s<=65518?"H":4352<=s&&s<=4447||4515<=s&&s<=4519||4602<=s&&s<=4607||9001<=s&&s<=9002||11904<=s&&s<=11929||11931<=s&&s<=12019||12032<=s&&s<=12245||12272<=s&&s<=12283||12289<=s&&s<=12350||12353<=s&&s<=12438||12441<=s&&s<=12543||12549<=s&&s<=12589||12593<=s&&s<=12686||12688<=s&&s<=12730||12736<=s&&s<=12771||12784<=s&&s<=12830||12832<=s&&s<=12871||12880<=s&&s<=13054||13056<=s&&s<=19903||19968<=s&&s<=42124||42128<=s&&s<=42182||43360<=s&&s<=43388||44032<=s&&s<=55203||55216<=s&&s<=55238||55243<=s&&s<=55291||63744<=s&&s<=64255||65040<=s&&s<=65049||65072<=s&&s<=65106||65108<=s&&s<=65126||65128<=s&&s<=65131||110592<=s&&s<=110593||127488<=s&&s<=127490||127504<=s&&s<=127546||127552<=s&&s<=127560||127568<=s&&s<=127569||131072<=s&&s<=194367||177984<=s&&s<=196605||196608<=s&&s<=262141?"W":32<=s&&s<=126||162<=s&&s<=163||165<=s&&s<=166||s==172||s==175||10214<=s&&s<=10221||10629<=s&&s<=10630?"Na":s==161||s==164||167<=s&&s<=168||s==170||173<=s&&s<=174||176<=s&&s<=180||182<=s&&s<=186||188<=s&&s<=191||s==198||s==208||215<=s&&s<=216||222<=s&&s<=225||s==230||232<=s&&s<=234||236<=s&&s<=237||s==240||242<=s&&s<=243||247<=s&&s<=250||s==252||s==254||s==257||s==273||s==275||s==283||294<=s&&s<=295||s==299||305<=s&&s<=307||s==312||319<=s&&s<=322||s==324||328<=s&&s<=331||s==333||338<=s&&s<=339||358<=s&&s<=359||s==363||s==462||s==464||s==466||s==468||s==470||s==472||s==474||s==476||s==593||s==609||s==708||s==711||713<=s&&s<=715||s==717||s==720||728<=s&&s<=731||s==733||s==735||768<=s&&s<=879||913<=s&&s<=929||931<=s&&s<=937||945<=s&&s<=961||963<=s&&s<=969||s==1025||1040<=s&&s<=1103||s==1105||s==8208||8211<=s&&s<=8214||8216<=s&&s<=8217||8220<=s&&s<=8221||8224<=s&&s<=8226||8228<=s&&s<=8231||s==8240||8242<=s&&s<=8243||s==8245||s==8251||s==8254||s==8308||s==8319||8321<=s&&s<=8324||s==8364||s==8451||s==8453||s==8457||s==8467||s==8470||8481<=s&&s<=8482||s==8486||s==8491||8531<=s&&s<=8532||8539<=s&&s<=8542||8544<=s&&s<=8555||8560<=s&&s<=8569||s==8585||8592<=s&&s<=8601||8632<=s&&s<=8633||s==8658||s==8660||s==8679||s==8704||8706<=s&&s<=8707||8711<=s&&s<=8712||s==8715||s==8719||s==8721||s==8725||s==8730||8733<=s&&s<=8736||s==8739||s==8741||8743<=s&&s<=8748||s==8750||8756<=s&&s<=8759||8764<=s&&s<=8765||s==8776||s==8780||s==8786||8800<=s&&s<=8801||8804<=s&&s<=8807||8810<=s&&s<=8811||8814<=s&&s<=8815||8834<=s&&s<=8835||8838<=s&&s<=8839||s==8853||s==8857||s==8869||s==8895||s==8978||9312<=s&&s<=9449||9451<=s&&s<=9547||9552<=s&&s<=9587||9600<=s&&s<=9615||9618<=s&&s<=9621||9632<=s&&s<=9633||9635<=s&&s<=9641||9650<=s&&s<=9651||9654<=s&&s<=9655||9660<=s&&s<=9661||9664<=s&&s<=9665||9670<=s&&s<=9672||s==9675||9678<=s&&s<=9681||9698<=s&&s<=9701||s==9711||9733<=s&&s<=9734||s==9737||9742<=s&&s<=9743||9748<=s&&s<=9749||s==9756||s==9758||s==9792||s==9794||9824<=s&&s<=9825||9827<=s&&s<=9829||9831<=s&&s<=9834||9836<=s&&s<=9837||s==9839||9886<=s&&s<=9887||9918<=s&&s<=9919||9924<=s&&s<=9933||9935<=s&&s<=9953||s==9955||9960<=s&&s<=9983||s==10045||s==10071||10102<=s&&s<=10111||11093<=s&&s<=11097||12872<=s&&s<=12879||57344<=s&&s<=63743||65024<=s&&s<=65039||s==65533||127232<=s&&s<=127242||127248<=s&&s<=127277||127280<=s&&s<=127337||127344<=s&&s<=127386||917760<=s&&s<=917999||983040<=s&&s<=1048573||1048576<=s&&s<=1114109?"A":"N"},t.characterLength=function(i){var n=this.eastAsianWidth(i);return n=="F"||n=="W"||n=="A"?2:1};function r(i){return i.match(/[\uD800-\uDBFF][\uDC00-\uDFFF]|[^\uD800-\uDFFF]/g)||[]}t.length=function(i){for(var n=r(i),a=0,s=0;s<n.length;s++)a=a+this.characterLength(n[s]);return a},t.slice=function(i,n,a){textLen=t.length(i),n=n||0,a=a||1,n<0&&(n=textLen+n),a<0&&(a=textLen+a);for(var s="",o=0,u=r(i),l=0;l<u.length;l++){var c=u[l],p=t.length(c);if(o>=n-(p==2?1:0))if(o+p<=a)s+=c;else break;o+=p}return s}})(j3e);var q3e=Z5,$3e=function(){return/\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67)\uDB40\uDC7F|(?:\uD83E\uDDD1\uD83C\uDFFF\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFC-\uDFFF])|\uD83D\uDC68(?:\uD83C\uDFFB(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|[\u2695\u2696\u2708]\uFE0F|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))?|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFE])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])\uFE0F|\u200D(?:(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D[\uDC66\uDC67])|\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC)?|(?:\uD83D\uDC69(?:\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69]))|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC69(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83E\uDDD1(?:\u200D(?:\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDE36\u200D\uD83C\uDF2B|\uD83C\uDFF3\uFE0F\u200D\u26A7|\uD83D\uDC3B\u200D\u2744|(?:(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\uD83C\uDFF4\u200D\u2620|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])\u200D[\u2640\u2642]|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u2600-\u2604\u260E\u2611\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26B0\u26B1\u26C8\u26CF\u26D1\u26D3\u26E9\u26F0\u26F1\u26F4\u26F7\u26F8\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u3030\u303D\u3297\u3299]|\uD83C[\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]|\uD83D[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3])\uFE0F|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDE35\u200D\uD83D\uDCAB|\uD83D\uDE2E\u200D\uD83D\uDCA8|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83E\uDDD1(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83D\uDC69(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF6\uD83C\uDDE6|\uD83C\uDDF4\uD83C\uDDF2|\uD83D\uDC08\u200D\u2B1B|\u2764\uFE0F\u200D(?:\uD83D\uDD25|\uD83E\uDE79)|\uD83D\uDC41\uFE0F|\uD83C\uDFF3\uFE0F|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|[#\*0-9]\uFE0F\u20E3|\u2764\uFE0F|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|\uD83C\uDFF4|(?:[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270C\u270D]|\uD83D[\uDD74\uDD90])(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC08\uDC15\uDC3B\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE2E\uDE35\uDE36\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5]|\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD]|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF]|[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0D\uDD0E\uDD10-\uDD17\uDD1D\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78\uDD7A-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCB\uDDD0\uDDE0-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6]|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26A7\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDED5-\uDED7\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])\uFE0F|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDC8F\uDC91\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDD77\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g};function $1(e,t={}){if(typeof e!="string"||e.length===0||(t={ambiguousIsNarrow:!0,...t},e=sP(e),e.length===0))return 0;e=e.replace($3e()," ");let r=t.ambiguousIsNarrow?1:2,i=0;for(let n of e){let a=n.codePointAt(0);if(!(a<=31||a>=127&&a<=159||a>=768&&a<=879))switch(q3e.eastAsianWidth(n)){case"F":case"W":i+=2;break;case"A":i+=r;break;default:i+=1}}return i}var Y5=10,ZR=(e=0)=>t=>`\x1B[${t+e}m`,QR=(e=0)=>t=>`\x1B[${38+e};5;${t}m`,eP=(e=0)=>(t,r,i)=>`\x1B[${38+e};2;${t};${r};${i}m`,ft={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}};Object.keys(ft.modifier);var M3e=Object.keys(ft.color),U3e=Object.keys(ft.bgColor);[...M3e,...U3e];function V3e(){let e=new Map;for(let[t,r]of Object.entries(ft)){for(let[i,n]of Object.entries(r))ft[i]={open:`\x1B[${n[0]}m`,close:`\x1B[${n[1]}m`},r[i]=ft[i],e.set(n[0],n[1]);Object.defineProperty(ft,t,{value:r,enumerable:!1})}return Object.defineProperty(ft,"codes",{value:e,enumerable:!1}),ft.color.close="\x1B[39m",ft.bgColor.close="\x1B[49m",ft.color.ansi=ZR(),ft.color.ansi256=QR(),ft.color.ansi16m=eP(),ft.bgColor.ansi=ZR(Y5),ft.bgColor.ansi256=QR(Y5),ft.bgColor.ansi16m=eP(Y5),Object.defineProperties(ft,{rgbToAnsi256:{value:(t,r,i)=>t===r&&r===i?t<8?16:t>248?231:Math.round((t-8)/247*24)+232:16+36*Math.round(t/255*5)+6*Math.round(r/255*5)+Math.round(i/255*5),enumerable:!1},hexToRgb:{value:t=>{let r=/[a-f\d]{6}|[a-f\d]{3}/i.exec(t.toString(16));if(!r)return[0,0,0];let[i]=r;i.length===3&&(i=[...i].map(a=>a+a).join(""));let n=Number.parseInt(i,16);return[n>>16&255,n>>8&255,n&255]},enumerable:!1},hexToAnsi256:{value:t=>ft.rgbToAnsi256(...ft.hexToRgb(t)),enumerable:!1},ansi256ToAnsi:{value:t=>{if(t<8)return 30+t;if(t<16)return 90+(t-8);let r,i,n;if(t>=232)r=((t-232)*10+8)/255,i=r,n=r;else{t-=16;let o=t%36;r=Math.floor(t/36)/5,i=Math.floor(o/6)/5,n=o%6/5}let a=Math.max(r,i,n)*2;if(a===0)return 30;let s=30+(Math.round(n)<<2|Math.round(i)<<1|Math.round(r));return a===2&&(s+=60),s},enumerable:!1},rgbToAnsi:{value:(t,r,i)=>ft.ansi256ToAnsi(ft.rgbToAnsi256(t,r,i)),enumerable:!1},hexToAnsi:{value:t=>ft.ansi256ToAnsi(ft.hexToAnsi256(t)),enumerable:!1}}),ft}var H3e=V3e(),Bg=new Set(["\x1B","\x9B"]),z3e=39,Q5="\x07",oP="[",G3e="]",uP="m",e_=`${G3e}8;;`,tP=e=>`${Bg.values().next().value}${oP}${e}${uP}`,rP=e=>`${Bg.values().next().value}${e_}${e}${Q5}`,W3e=e=>e.split(" ").map(t=>$1(t)),X5=(e,t,r)=>{let i=[...t],n=!1,a=!1,s=$1(sP(e[e.length-1]));for(let[o,u]of i.entries()){let l=$1(u);if(s+l<=r?e[e.length-1]+=u:(e.push(u),s=0),Bg.has(u)&&(n=!0,a=i.slice(o+1).join("").startsWith(e_)),n){a?u===Q5&&(n=!1,a=!1):u===uP&&(n=!1);continue}s+=l,s===r&&o<i.length-1&&(e.push(""),s=0)}!s&&e[e.length-1].length>0&&e.length>1&&(e[e.length-2]+=e.pop())},K3e=e=>{let t=e.split(" "),r=t.length;for(;r>0&&!($1(t[r-1])>0);)r--;return r===t.length?e:t.slice(0,r).join(" ")+t.slice(r).join("")},Y3e=(e,t,r={})=>{if(r.trim!==!1&&e.trim()==="")return"";let i="",n,a,s=W3e(e),o=[""];for(let[l,c]of e.split(" ").entries()){r.trim!==!1&&(o[o.length-1]=o[o.length-1].trimStart());let p=$1(o[o.length-1]);if(l!==0&&(p>=t&&(r.wordWrap===!1||r.trim===!1)&&(o.push(""),p=0),(p>0||r.trim===!1)&&(o[o.length-1]+=" ",p++)),r.hard&&s[l]>t){let d=t-p,f=1+Math.floor((s[l]-d-1)/t);Math.floor((s[l]-1)/t)<f&&o.push(""),X5(o,c,t);continue}if(p+s[l]>t&&p>0&&s[l]>0){if(r.wordWrap===!1&&p<t){X5(o,c,t);continue}o.push("")}if(p+s[l]>t&&r.wordWrap===!1){X5(o,c,t);continue}o[o.length-1]+=c}r.trim!==!1&&(o=o.map(l=>K3e(l)));let u=[...o.join(`
|
|
293
293
|
`)];for(let[l,c]of u.entries()){if(i+=c,Bg.has(c)){let{groups:d}=new RegExp(`(?:\\${oP}(?<code>\\d+)m|\\${e_}(?<uri>.*)${Q5})`).exec(u.slice(l).join(""))||{groups:{}};if(d.code!==void 0){let f=Number.parseFloat(d.code);n=f===z3e?void 0:f}else d.uri!==void 0&&(a=d.uri.length===0?void 0:d.uri)}let p=H3e.codes.get(Number(n));u[l+1]===`
|
|
294
294
|
`?(a&&(i+=rP("")),n&&p&&(i+=tP(p))):c===`
|
|
295
295
|
`&&(n&&p&&(i+=tP(n)),a&&(i+=rP(a)))}return i};function iP(e,t,r){return String(e).normalize().replace(/\r\n/g,`
|
|
@@ -416,7 +416,7 @@ ${b5};
|
|
|
416
416
|
${g4e};
|
|
417
417
|
|
|
418
418
|
${b5};
|
|
419
|
-
`)}async function dct(e,t,r,i){let n=gi(),a=await nt({message:`Automatic configure end-to-end encryption in ${i} updates?`});if(await Ss(a,e,t),a){let s=Ue();s.start(`Running: ${n.runner} @capgo/cli@latest key create`),await KN({force:!0},!1)?s.stop("key created \u{1F511}"):(s.stop("Error"),O.warn("Cannot create key \u274C"),ae("Bye \u{1F44B}"),(0,pn.exit)(1)),$o("onboarding-v2",e,t,"Use encryption v2")}await wa(e,t,6)}async function fct(e,t,r,i){let n=gi(),a=await nt({message:`Automatic build ${i} with "${n.pm} run build" ?`});if(await Ss(a,e,t),a){let s=Ue(),o=await Ok(),u=await M1e(o);s.start(`Running: ${n.pm} run ${u} && ${n.runner} cap sync`),(await mi()).scripts[u]||(s.stop("Error"),O.warn(`Cannot find ${u} script in package.json, please add it and run \`capgo init\` again`),ae("Bye \u{1F44B}"),(0,pn.exit)()),(0,Ag.execSync)(`${n.pm} run ${u} && ${n.runner} cap sync`,y4e),s.stop("Build & Sync Done \u2705")}else O.info(`Build yourself with command: ${n.pm} run build && ${n.runner} cap sync`);await wa(e,t,7)}async function hct(e,t,r,i){let n=gi(),a=await nt({message:`Automatic upload ${i} bundle to Capgo?`});if(await Ss(a,e,t),a){let s=Ue();s.start(`Running: ${n.runner} @capgo/cli@latest bundle upload`),await w5(i,{channel:Sg,apikey:r},!1)?s.stop("Upload Done \u2705"):(s.stop("Error"),O.warn("Upload failed \u274C"),ae("Bye \u{1F44B}"),(0,pn.exit)())}else O.info(`Upload yourself with command: ${n.runner} @capgo/cli@latest bundle upload`);await wa(e,t,8)}async function mct(e,t){let r=gi(),i=await nt({message:"Run in device now ?"});if(await Ss(i,e,t),i){let n=await vp({message:"Pick a platform to run your app",options:[{value:"ios",label:"IOS"},{value:"android",label:"Android"}]});Di(n)&&(ae("Bye \u{1F44B}"),(0,pn.exit)());let a=n,s=Ue();s.start(`Running: ${r.runner} cap run ${a}`),await(0,Ag.spawnSync)(r.runner,["cap","run",a],{stdio:"inherit"}),s.stop("Started Done \u2705")}else O.info(`If you change your mind, run it for yourself with: ${r.runner} cap run <ios|android>`);await wa(e,t,9)}async function gct(e,t,r,i){let n=await nt({message:"Automatic check if update working in device ?"});if(await Ss(n,e,t),n)O.info(`Wait logs sent to Capgo from ${i} device, Please open your app \u{1F4AA}`),await XN("onboarding-v2",r,i,t,e);else{let a=Hc(i);O.info(`Check logs in https://web.capgo.app/app/p/${a}/logs to see if update works.`)}await wa(e,t,10)}async function _4e(e,t,r){let i=gi();re("Capgo onboarding \u{1F6EB}"),await Ie();let n=At(),a=await pe();t=t||a?.config?.appId,r.apikey=e||Fe();let s=Ue();(!u4e()||e)&&(s.start(`Running: ${i.runner} @capgo/cli@latest login ***`),await CR(r.apikey,r,!1),s.stop("Login Done \u2705"));let o=await Se(r.apikey);await Ae(o,r.apikey,["upload","all","read","write"]);let u=await l1(o,["admin","super_admin"]),l=u.gid,c=await nct(l,n)??0;try{c<1&&await wa(l,n,1),c<2&&(await sct(u,n,t,r),ol(2)),c<3&&(await oct(l,n,r.apikey,t),ol(3)),c<4&&(await cct(l,n,r.apikey,t),ol(4)),c<5&&(await pct(l,n,r.apikey,t),ol(5)),c<6&&(await dct(l,n,r.apikey,t),ol(6)),c<7&&(await fct(l,n,r.apikey,t),ol(7)),c<8&&(await hct(l,n,r.apikey,t),ol(8)),c<9&&(await mct(l,n),ol(9)),await gct(l,n,r.apikey,t),await wa(l,n,0),act()}catch(p){console.error(p),O.error("Error during onboarding, please try again later"),(0,pn.exit)(1)}O.info("Welcome onboard \u2708\uFE0F!"),O.info("Your Capgo update system is setup"),O.info(`Next time use \`${i.runner} @capgo/cli@latest bundle upload\` to only upload your bundle`),O.info(`If you have any issue try to use the debug command \`${i.runner} @capgo/cli@latest app debug\``),ae("Bye \u{1F44B}"),(0,pn.exit)()}var C4e=require("node:process");var D4e=require("node:process");var E4e=he(_g());var w4e=require("node:process");async function b4e(e,t,r){let{data:i,error:n}=await e.from("devices_override").select().eq("app_id",t).eq("version",r.id);if(n&&(O.error(`Cannot check Device override ${t}@${r.name}`),$.error("")),i&&i.length>0)if(re(`\u274C Version ${t}@${r.name} is used in ${i.length} device override`),await nt({message:"unlink it?"}))for(let a of i){let s=Ue();s.start(`Unlinking device ${a.device_id}`);let{error:o}=await e.from("devices_override").delete().eq("device_id",a.device_id);o&&(s.stop(`Cannot unlink device ${a.device_id} ${le(o)}`),(0,w4e.exit)(1)),s.stop(`\u2705 Device ${a.device_id} unlinked`)}else O.error("Unlink it first"),$.error("")}async function yct(e,t,r){let{error:i}=await e.from("app_versions").update({deleted:!0}).eq("app_id",t).eq("deleted",!1).eq("name",r);i&&(O.error(`App Version ${t}@${r} not found in database`),$.error(""))}async function C5(e,t,r){let i=await vct(e,t,r);await k6e(e,t,i),await b4e(e,t,i),await yct(e,t,r)}function S5(e){e.length||(O.error("No bundle found"),(0,D4e.exit)(1));let t=new E4e.Table({title:"Bundles",charLength:{"\u274C":2,"\u2705":2}});e.reverse().forEach(r=>{t.addRow({Version:r.name,Created:c1(r.created_at),...r.keep!=null?{Keep:r.keep}:{}})}),O.success(t.render())}async function A5(e,t){let{data:r,error:i}=await e.from("app_versions").select().eq("app_id",t).eq("deleted",!1).order("created_at",{ascending:!1});return i&&(O.error(`App ${t} not found in database`),$.error("")),r}async function x4e(e,t){let{data:r,error:i}=await e.from("channels").select("version").eq("app_id",t);return i&&(O.error(`App ${t} not found in database`),$.error("")),r.map(n=>n.version)}async function vct(e,t,r){let{data:i,error:n}=await e.from("app_versions").select().eq("app_id",t).eq("name",r).eq("deleted",!1).single();return(!i||n)&&(O.error(`App Version ${t}@${r} doesn't exist`),$.error("")),i}async function S4e(e,t){re("List bundles"),await Ie(),t.apikey=t.apikey||Fe();let r=await pe();e=e||r?.config?.appId,t.apikey||(O.error("Missing API key, you need to provide a API key to upload your bundle"),$.error("")),e||(O.error("Missing argument, you need to provide a appid, or be in a capacitor project"),$.error(""));let i=await Se(t.apikey);await Ae(i,t.apikey,["write","all","read","upload"]),O.info(`Querying available versions of: ${e} in Capgo`),await tt(i,t.apikey,e,1);let n=await A5(i,e);O.info(`Active versions in Capgo: ${n?.length}`),S5(n),ae("Done \u2705"),(0,C4e.exit)()}var As=require("node:fs"),A4e=require("node:process");async function O4e(e,t,r){re("Decrypt zip file"),await Ie(),(0,As.existsSync)(e)||(O.error(`Zip not found at the path ${e}`),$.error(""));let i=await pe();!r.key&&!(0,As.existsSync)($i)&&!i.config.plugins?.CapacitorUpdater?.privateKey&&(O.error(`Private Key not found at the path ${$i} or in ${i.path}`),$.error(""));let n=r.key||$i,a=i.config.plugins?.CapacitorUpdater?.privateKey;!(0,As.existsSync)(n)&&!a?(O.error(`Cannot find public key ${n} or as keyData option or in ${i.path}`),$.error("")):(0,As.existsSync)(n)&&(a=(0,As.readFileSync)(n).toString());let s=(0,As.readFileSync)(e),o=s6e(s,t,r.keyData??a??"");(0,As.writeFileSync)(`${e}_decrypted.zip`,o),ae(`Decrypted zip file at ${e}_decrypted.zip`),(0,A4e.exit)()}var Os=require("node:fs"),T4e=require("node:process");var F4e=he(J1());async function k4e(e,t,r){re("Decrypt zip file"),await Ie(),(0,Os.existsSync)(e)||(O.error(`Zip not found at the path ${e}`),$.error(""));let i=await pe();!r.key&&!(0,Os.existsSync)(No)&&!i.config.plugins?.CapacitorUpdater?.privateKey&&(O.error(`Private Key not found at the path ${No} or in ${i.path}`),$.error(""));let n=r.key||No,a=i.config.plugins?.CapacitorUpdater?.publicKey;!(0,Os.existsSync)(n)&&!a?(O.error(`Cannot find public key ${n} or as keyData option or in ${i.path}`),$.error("")):(0,Os.existsSync)(n)&&(a=(0,Os.readFileSync)(n).toString());let s=(0,Os.readFileSync)(e),o=Y6e(s,t,r.keyData??a??"");if((0,Os.writeFileSync)(`${e}_decrypted.zip`,o),O.info(`Decrypted zip file at ${e}_decrypted.zip`),r.checksum){let u=await(0,F4e.checksum)(o,"sha256"),l=X6e(r.checksum,r.keyData??a??"");u!==l?(O.error(`Checksum does not match ${u} !== ${l}`),$.error("")):O.info("Checksum matches")}ae("\u2705 done"),(0,T4e.exit)()}var ul=require("node:fs"),N4e=require("node:process");async function R4e(e,t){re("Encryption"),await Ie(),(0,ul.existsSync)(e)||(O.error(`Error: Zip not found at the path ${e}`),$.error(""));let r=t.key||un,i=t.keyData||"";(0,ul.existsSync)(r)&&(i=(0,ul.readFileSync)(r).toString());let n=(0,ul.readFileSync)(e),a=n5(n,i);O.success(`ivSessionKey: ${a.ivSessionKey}`),(0,ul.writeFileSync)(`${e}_encrypted.zip`,a.encryptedData),O.success(`Encrypted zip saved at ${e}_encrypted.zip`),ae("Done \u2705"),(0,N4e.exit)()}var zo=require("node:fs"),P4e=require("node:process");async function I4e(e,t,r){let{json:i}=r;i||(re("Encryption"),await Ie());let n=await pe(),a=!!n.config.plugins?.CapacitorUpdater?.privateKey,s=!!n.config.plugins?.CapacitorUpdater?.publicKey;a&&!i&&O.warning("There is still a privateKey in the config"),(0,zo.existsSync)(e)||(i?console.error(le({error:"zip_not_found"})):O.error(`Error: Zip not found at the path ${e}`),$.error("")),s||(i?console.error(le({error:"missing_public_key"})):O.warning("Warning: Missing Public Key in config"),$.error(""));let o=r.key||on,u=r.keyData||"";!(0,zo.existsSync)(o)&&!u?(i?console.error(le({error:"missing_key"})):(O.warning(`Cannot find a private key at ${o} or as a keyData option`),O.error("Error: Missing key")),$.error("")):(0,zo.existsSync)(o)&&(u=(0,zo.readFileSync)(o).toString()),u&&!u.startsWith("-----BEGIN RSA PRIVATE KEY-----")&&(i?console.error(le({error:"invalid_private_key"})):O.error("the private key provided is not a valid RSA Private key"),$.error(""));let l=(0,zo.readFileSync)(e),c=_5(l,u),p=v5(t,u),d=`${e}_encrypted.zip`;i?console.log(JSON.stringify({checksum:p,filename:d,ivSessionKey:c.ivSessionKey},null,2)):(O.success(`Encoded Checksum: ${p}`),O.success(`ivSessionKey: ${c.ivSessionKey}`)),(0,zo.writeFileSync)(d,c.encryptedData),i||(O.success(`Encrypted zip saved at ${d}`),ae("Done \u2705")),(0,P4e.exit)()}var L1=require("node:process"),O5=require("node:os"),L4e=he(qN());async function _ct(e){let t={},r=[];for(let i in e)Object.prototype.hasOwnProperty.call(e,i)&&r.push((0,L4e.default)(i));return await Promise.all(r).then(i=>{let n=Object.keys(e);for(let a=0;a<i.length;a+=1){let s=i[a];s&&(t[n[a]]=s)}}),t}async function wct(){let{dependencies:e}=await mi(),t={"@capgo/cli":ba.version};for(let r in e)if(Object.prototype.hasOwnProperty.call(e,r)&&r.startsWith("@capgo/")&&r.startsWith("@capawesome/")&&r.startsWith("capacitor")){let i=e[r].replace("^","").replace("~","");t[r]=i}return t}async function B4e(){O.warn(" \u{1F48A} Capgo Doctor \u{1F48A}");let e=await pe(),t=await mi(),r=e?.config?.plugins?.CapacitorUpdater?.version||t?.version,i=e?.config?.appName||"";O.info(` App Name: ${i}`);let n=e?.config?.appId||"";O.info(` App ID: ${n}`),O.info(` App Version: ${r}`);let a=e?.config?.webDir||"";O.info(` Web Dir: ${a}`),O.info(` OS: ${(0,O5.platform)()} ${(0,O5.version)()}`),O.info(` Node: ${L1.version}`),O.info(" Installed Dependencies:");let s=await wct();Object.keys(s).length===0&&(O.warning("\x1B[31m%s\x1B[0m \u{1F6A8} No dependencies found"),(0,L1.exit)(1));for(let l in s)if(Object.prototype.hasOwnProperty.call(s,l)){let c=s[l];O.info(` ${l}: ${c}`)}let o=Ue();o.start("Running: Loading latest dependencies");let u=await _ct(s);o.stop("Latest Dependencies:");for(let l in u)if(Object.prototype.hasOwnProperty.call(u,l)){let c=u[l];O.info(` ${l}: ${c}`)}JSON.stringify(s)!==JSON.stringify(u)&&(O.warn("\x1B[31m\u{1F6A8} Some dependencies are not up to date\x1B[0m"),(0,L1.exit)(1)),O.success("\x1B[32m\u2705 All dependencies are up to date\x1B[0m"),(0,L1.exit)()}var Ts=require("node:fs");async function bct(e,t=!0){t&&re("Save keys \u{1F511}");let r=await pe(),i=e.key||$i,n=e.keyData||"";if(!(0,Ts.existsSync)(i)&&!n)if(t)O.error(`Cannot find public key ${i} or as keyData option or in ${r.path}`),$.error("");else return!1;else(0,Ts.existsSync)(i)&&(n=(0,Ts.readFileSync)(i).toString());return r?.config&&(r.config.plugins||(r.config.plugins={extConfig:{},CapacitorUpdater:{}}),r.config.plugins.CapacitorUpdater||(r.config.plugins.CapacitorUpdater={}),r.config.plugins.CapacitorUpdater.privateKey=n,await vs(r)),O&&(O.success(`private key saved into ${r.path} file in local directory`),O.success("your app will decode the zip archive with this key")),!0}async function j4e(e){re("Save keys \u{1F511}"),await Ie(),await bct(e)}async function Dct(e,t=!0){t&&re("Create keys \u{1F511}");let{publicKey:r,privateKey:i}=a5();if((0,Ts.existsSync)(un)&&!e.force)if(O.error("Public Key already exists, use --force to overwrite"),t)$.error("");else return!1;if((0,Ts.writeFileSync)(un,r),(0,Ts.existsSync)($i)&&!e.force)if(O.error("Private Key already exists, use --force to overwrite"),t)$.error("");else return!1;(0,Ts.writeFileSync)($i,i);let n=i.replace(/\\n/g,"\\n"),a=await _9({privateKey:n});return t&&(O.success("Your RSA key has been generated"),O.success(`Public key saved in ${un}`),O.success("This key will be use to encrypt your bundle before sending it to Capgo"),O.success("Keep it safe"),O.success("Than make it unreadable by Capgo and unmodifiable by anyone"),O.success(`Private key saved in ${a.path}`),O.success("Your app will be the only one having it"),O.success("Only your users can decrypt your update"),O.success("Only you can send them an update"),ae("Done \u2705")),!0}async function q4e(e){await Ie(),await Dct(e)}var $4e=require("node:process");async function M4e(e,t,r){re("Delete bundle"),r.apikey=r.apikey||Fe();let i=await pe();t=t||i?.config?.appId,r.apikey||(O.error("Missing API key, you need to provide a API key to upload your bundle"),$.error("")),t||(O.error("Missing argument, you need to provide a appId, or be in a capacitor project"),$.error(""));let n=await Se(r.apikey);await Ae(n,r.apikey,["write","all"]),await tt(n,r.apikey,t,3),r.apikey||(O.error("Missing API key, you need to provide an API key to delete your app"),$.error("")),e||(O.error("Missing argument, you need to provide a bundleId, or be in a capacitor project"),$.error("")),t||(O.error("Missing argument, you need to provide a appId, or be in a capacitor project"),$.error("")),O.info(`Deleting bundle ${t}@${e} from Capgo`),O.info("Keep in mind that you will not be able to reuse this bundle version, it's gone forever"),await C5(n,t,e),O.success(`Bundle ${t}@${e} deleted in Capgo`),ae("Done"),(0,$4e.exit)()}var V4e=require("node:process");var U4e=["major","minor","metadata","patch","none"];async function H4e(e,t,r){re("Set channel"),r.apikey=r.apikey||Fe();let i=await pe();t=t||i?.config?.appId;let n=At();r.apikey||(O.error("Missing API key, you need to provide a API key to upload your bundle"),$.error("")),t||(O.error("Missing argument, you need to provide a appId, or be in a capacitor project"),$.error(""));let a=await Se(r.apikey),s=await Ae(a,r.apikey,["write","all"]);await tt(a,r.apikey,t,4);let o=await Vn(a,t),{bundle:u,state:l,downgrade:c,latest:p,upgrade:d,ios:f,android:h,selfAssign:m,disableAutoUpdate:v,dev:y,emulator:E}=r;e||(O.error("Missing argument, you need to provide a channel"),$.error("")),p&&u&&(O.error("Cannot set latest and bundle at the same time"),$.error("")),u==null&&l==null&&p==null&&c==null&&d==null&&f==null&&h==null&&m==null&&y==null&&E==null&&v==null&&(O.error("Missing argument, you need to provide a option to set"),$.error(""));try{await u1(a,o,r.apikey,t);let b={created_by:s,app_id:t,name:e,owner_org:o,version:void 0},_=await mi(),w=p?i?.config?.plugins?.CapacitorUpdater?.version||_?.version:u;if(w!=null){let{data:S,error:A}=await a.from("app_versions").select().eq("app_id",t).eq("name",w).eq("user_id",s).eq("deleted",!1).single();(A||!S)&&(O.error(`Cannot find version ${w}`),$.error("")),O.info(`Set ${t} channel: ${e} to @${w}`),b.version=S.id}if(l!=null&&((l==="public"||l==="private")&&O.info(`Set ${t} channel: ${e} to public or private is deprecated, use default or normal instead`),O.info(`Set ${t} channel: ${e} to ${l==="public"||l==="default"?"default":"normal"}`),b.public=l==="public"||l==="default"),c!=null&&(O.info(`Set ${t} channel: ${e} to ${c?"allow":"disallow"} downgrade`),b.disable_auto_update_under_native=!c),f!=null&&(O.info(`Set ${t} channel: ${e} to ${f?"allow":"disallow"} ios update`),b.ios=!!f),h!=null&&(O.info(`Set ${t} channel: ${e} to ${h?"allow":"disallow"} android update`),b.android=!!h),m!=null&&(O.info(`Set ${t} channel: ${e} to ${m?"allow":"disallow"} self assign to this channel`),b.allow_device_self_set=!!m),v!=null){let S=v.toLocaleLowerCase();U4e.includes(S)||(O.error(`Channel strategy ${S} is not known. The possible values are: ${U4e.join(", ")}.`),$.error("")),S==="metadata"&&(S="version_number"),b.disable_auto_update=S,O.info(`Set ${t} channel: ${e} to ${S} disable update strategy to this channel`)}try{let{error:S}=await b9(a,b);S&&(O.error('Cannot set channel the upload key is not allowed to do that, use the "all" for this.'),$.error(""))}catch{O.error('Cannot set channel the upload key is not allowed to do that, use the "all" for this.'),$.error("")}await n.track({channel:"channel",event:"Set channel",icon:"\u2705",user_id:o,tags:{"app-id":t},notify:!1}).catch()}catch(b){O.error(`Unknow error ${le(b)}`),$.error("")}ae("Done \u2705"),(0,V4e.exit)()}var z4e=require("node:process");async function G4e(e,t,r){let{quiet:i}=r;i||re("List current bundle"),r.apikey=r.apikey||Fe(i);let n=await pe();t=t||n?.config?.appId,r.apikey||(O.error("Missing API key, you need to provide a API key to upload your bundle"),$.error("")),t||(O.error("Missing argument, you need to provide a appId, or be in a capacitor project"),$.error(""));let a=await Se(r.apikey),s=await Ae(a,r.apikey,["write","all","read"]);await tt(a,r.apikey,t,1),e||(O.error("Please provide a channel to get the bundle from."),$.error(""));let{data:o,error:u}=await a.from("channels").select("version ( name )").eq("name",e).eq("app_id",t).limit(1);(u||o.length===0)&&(O.error(`Error retrieving channel ${e} for app ${t}. Perhaps the channel does not exists?`),$.error(""));let{version:l}=o[0];l||(O.error(`Error retrieving channel ${e} for app ${t}. Perhaps the channel does not exists?`),$.error("")),i?O.info(l.name):O.info(`Current bundle for channel ${e} is ${l.name}`),(0,z4e.exit)()}var TR=require("node:process");var W4e=he(_g());function Ect(e){e.length||(O.error("No apps found"),(0,TR.exit)(1));let t=new W4e.Table({title:"Apps",charLength:{"\u274C":2,"\u2705":2}});e.reverse().forEach(r=>{t.addRow({Name:r.name,id:r.app_id,Created:c1(r.created_at)})}),O.success(t.render())}async function xct(e){let{data:t,error:r}=await e.from("apps").select().order("created_at",{ascending:!1});return r&&(O.error("Apps not found"),$.error("")),t}async function K4e(e){re("List apps in Capgo"),await Ie(),e.apikey=e.apikey||Fe();let t=await Se(e.apikey);await Ae(t,e.apikey,["write","all","read","upload"]),O.info("Getting active bundle in Capgo");let r=await xct(t);O.info(`Active app in Capgo: ${r?.length}`),Ect(r),ae("Done \u2705"),(0,TR.exit)()}var FR=require("node:process");var T5=he(X4e());async function Cct(e,t,r){for await(let i of e)O.warn(`Removing ${i.name} created on ${c1(i.created_at)}`),await C5(t,r,i.name)}function Sct(e,t,r){let i=[];return e?.forEach(n=>{T5.default.gte(n.name,t)&&T5.default.lt(n.name,`${r}`)&&i.push(n)}),i}async function J4e(e,t){re("Cleanup versions in Capgo"),await Ie(),t.apikey=t.apikey||Fe();let{bundle:r,keep:i=4}=t,n=t.force||!1,a=await pe();e=e||a?.config?.appId,t.apikey||(O.error("Missing API key, you need to provide an API key to delete your app"),$.error("")),e||(O.error("Missing argument, you need to provide a appid, or be in a capacitor project"),$.error(""));let s=await Se(t.apikey);await Ae(s,t.apikey,["write","all"]),await tt(s,t.apikey,e,3),O.info("Querying all available versions in Capgo");let o=await A5(s,e),u=await x4e(s,e);if(O.info(`Total active versions in Capgo: ${o?.length}`),o?.length===0){O.error("No versions found, aborting cleanup");return}if(r){let p=`${T5.default.inc(r,"major")}`;O.info(`Querying available versions in Capgo between ${r} and ${p}`),o=Sct(o,r,p),O.info(`Active versions in Capgo between ${r} and ${p}: ${o?.length}`)}let l=[],c=0;if(o.forEach(p=>{let d=u.find(f=>f===p.id);c<i||d?(d?p.keep="\u2705 (Linked to channel)":p.keep="\u2705",c+=1):(p.keep="\u274C",l.push(p))}),l.length===0){O.warn("Nothing to be removed, aborting removal...");return}if(S5(o),!n){let p=await nt({message:"Do you want to continue removing the versions specified?"});(Di(p)||!p)&&(O.warn("Not confirmed, aborting removal..."),(0,FR.exit)())}O.success("You have confirmed removal, removing versions now"),await Cct(l,s,e),ae("Done \u2705"),(0,FR.exit)()}var Z4e=require("node:process");async function Q4e(e,t,r){re("Delete channel"),r.apikey=r.apikey||Fe();let i=await pe();t=t||i?.config?.appId;let n=At();r.apikey||(O.error("Missing API key, you need to provide a API key to upload your bundle"),$.error("")),t||(O.error("Missing argument, you need to provide a appId, or be in a capacitor project"),$.error(""));let a=await Se(r.apikey),s=await Ae(a,r.apikey,["write","all"]);await tt(a,r.apikey,t,4),O.info(`Deleting channel ${t}#${e} from Capgo`);try{let o=await R6e(a,e,t,s);o.error&&(O.error(`Cannot delete Channel \u{1F640} ${le(o.error)}`),$.error(""));let u=await Vn(a,t);O.success("Channel deleted"),await n.track({channel:"channel",event:"Delete channel",icon:"\u2705",user_id:u,tags:{"user-id":s,"app-id":t,channel:e},notify:!1}).catch()}catch{O.error("Cannot delete Channel \u{1F640}")}ae("Done \u2705"),(0,Z4e.exit)()}var e3e=require("node:process");async function t3e(e,t){re("List channels"),t.apikey=t.apikey||Fe();let r=await pe();e=e||r?.config?.appId;let i=At();t.apikey||O.error("Missing API key, you need to provide a API key to upload your bundle"),e||(O.error("Missing argument, you need to provide a appId, or be in a capacitor project"),$.error(""));let n=await Se(t.apikey),a=await Ae(n,t.apikey,["write","all","read","upload"]);await tt(n,t.apikey,e,1),O.info("Querying available channels in Capgo");let s=await I6e(n,e);O.info(`Active channels in Capgo: ${s?.length}`),P6e(s),await i.track({channel:"channel",event:"List channel",icon:"\u2705",user_id:a,tags:{"app-id":e},notify:!1}).catch(),ae("Done \u2705"),(0,e3e.exit)()}var r3e=require("node:crypto"),B1=require("node:fs"),i3e=require("node:process");async function n3e(e,t){re("Set app"),t.apikey=t.apikey||Fe();let r=await pe();e=e||r?.config?.appId,t.apikey||(O.error("Missing API key, you need to provide a API key to upload your bundle"),$.error("")),e||(O.error("Missing argument, you need to provide a appId, or be in a capacitor project"),$.error(""));let i=await Se(t.apikey),a=(await l1(i,["admin","super_admin"])).gid,s=await Ae(i,t.apikey,["write","all"]);await tt(i,t.apikey,e,4);let{name:o,icon:u,retention:l}=t;l&&Number.isNaN(Number(l))?(O.error("retention value must be a number"),$.error("")):l&&l<0&&(O.error("retention value cannot be less than 0"),$.error(""));let c,p,d=`icon_${(0,r3e.randomUUID)()}`,f="https://xvwzpoazmxkqosrdewyv.supabase.co/storage/v1/object/public/images/capgo.png";if(u&&(0,B1.existsSync)(u)?(c=(0,B1.readFileSync)(u),p=R1.getType(u)||"image/png",O.warn(`Found app icon ${u}`)):(0,B1.existsSync)(Gn)?(c=(0,B1.readFileSync)(Gn),p=R1.getType(Gn)||"image/png",O.warn(`Found app icon ${Gn}`)):O.warn(`Cannot find app icon in any of the following locations: ${u}, ${Gn}`),c&&p){let{error:m}=await i.storage.from(`images/org/${a}/${e}`).upload(d,c,{contentType:p});m&&(O.error(`Could not set app ${le(m)}`),$.error(""));let{data:v}=await i.storage.from(`images/org/${a}/${e}`).getPublicUrl(d);f=v?.publicUrl||f}let{error:h}=await i.from("apps").update({icon_url:f,name:o,retention:l?l*24*60*60:void 0}).eq("app_id",e).eq("user_id",s);h&&(O.error(`Could not set app ${le(h)}`),$.error("")),ae("Done \u2705"),(0,i3e.exit)()}var a3e=require("node:process");async function s3e(e,t){re("Deleting"),t.apikey=t.apikey||Fe();let r=await pe();e=e||r?.config?.appId;let i=At();t.apikey||(O.error("Missing API key, you need to provide a API key to upload your bundle"),$.error("")),e||(O.error("Missing argument, you need to provide a appId, or be in a capacitor project"),$.error(""));let n=await Se(t.apikey),a=await Ae(n,t.apikey,["write","all"]);await tt(n,t.apikey,e,5);let{data:s,error:o}=await n.from("apps").select("owner_org ( created_by, id )").eq("app_id",e).single(),u=s;if(!o&&(u?.owner_org.created_by??"")!==a){O.warn("Deleting the app is not recomended for users that are not the organization owner"),O.warn("You are invited as a super_admin but your are not the owner"),O.warn("It's strongly recomended that you do not continue!");let f=await vp({message:"Do you want to continue?",options:[{label:"Yes",value:"yes"},{label:"No",value:"no"}]});(Di(f)||f==="no")&&(O.error("Canceled deleting the app, exiting"),$.error(""))}else o&&O.warn(`Cannot get the app owner ${le(o)}`);let{error:l}=await n.storage.from("images").remove([`org/${u?.owner_org.id}/${e}/icon`]);l&&(console.error(l,`images/org/${u?.owner_org.id}/${e}`),O.error("Could not delete app logo"));let{error:c}=await n.storage.from(`apps/${e}/${a}`).remove(["versions"]);c&&O.error("Could not delete app version");let{error:p}=await n.from("apps").delete().eq("app_id",e);p&&(O.error("Could not delete app"),$.error(""));let d=await Vn(n,e);await i.track({channel:"app",event:"App Deleted",icon:"\u{1F5D1}\uFE0F",user_id:d,tags:{"app-id":e},notify:!1}).catch(),O.success("App deleted in Capgo"),ae("Done \u2705"),(0,a3e.exit)()}var o3e=he(_g());async function u3e(e,t){re("Check compatibility"),t.apikey=t.apikey||Fe();let r=await pe();e=e||r?.config?.appId;let{channel:i}=t;i||(O.error("Missing argument, you need to provide a channel"),$.error("")),t.apikey||(O.error("Missing API key, you need to provide a API key to upload your bundle"),$.error("")),e||(O.error("Missing argument, you need to provide a appId, or be in a capacitor project"),$.error(""));let n=await Se(t.apikey);await Ae(n,t.apikey,["write","all","read","upload"]),await tt(n,t.apikey,e,1);let{finalCompatibility:a}=await D9(n,e,i),s=new o3e.Table({title:"Compatibility",charLength:{"\u274C":2,"\u2705":2}}),o=t.text?"Yes":"\u2705",u=t.text?"No":"\u274C";a.forEach(l=>{let{name:c,localVersion:p,remoteVersion:d}=l;s.addRow({Package:c,"Local version":p??"None","Remote version":d??"None",Compatible:d===p?o:u})}),O.success(s.render())}$.name(ba.name).description("Manage packages and bundle versions in Capgo Cloud").version(ba.version);$.command("login [apikey]").alias("l").description("Save apikey to your machine or folder").action(l4e).option("--local","Only save in local folder");$.command("doctor").description("Get info about your Capgo app install").action(B4e);$.command("init [apikey] [appId]").description("Init a new app").action(_4e).option("-n, --name <name>","app name").option("-i, --icon <icon>","app icon path");var j1=$.command("app").description("Manage app");j1.command("add [appId]").alias("a").description("Add a new app in Capgo Cloud").action(m4e).option("-n, --name <name>","app name").option("-i, --icon <icon>","app icon path").option("-a, --apikey <apikey>","apikey to link to your account");j1.command("delete [appId]").description("Delete an app in Capgo Cloud").action(s3e).option("-a, --apikey <apikey>","apikey to link to your account");j1.command("list").alias("l").description("list apps in Capgo Cloud").action(K4e).option("-a, --apikey <apikey>","apikey to link to your account");j1.command("debug [appId]").description("Listen for live updates event in Capgo Cloud to debug your app").option("-a, --apikey <apikey>","apikey to link to your account").option("-d, --device <device>","the specific device to debug").action(p6e);j1.command("setting [path]").description("Modifies capacitor config programmatically").option("--bool <bool>","A value for the setting to modify as a boolean").option("--string <string>","A value for the setting to modify as a string").action(K1e);j1.command("set [appId]").alias("s").description("Set an app in Capgo Cloud").action(n3e).option("-n, --name <name>","app name").option("-i, --icon <icon>","app icon path").option("-a, --apikey <apikey>","apikey to link to your account").option("-r, --retention <retention>","retention period of app bundle in days");var Fs=$.command("bundle").description("Manage bundle");Fs.command("upload [appId]").alias("u").description("Upload a new bundle in Capgo Cloud").action(s4e).option("-a, --apikey <apikey>","apikey to link to your account").option("-p, --path <path>","path of the folder to upload").option("-c, --channel <channel>","channel to link to").option("-e, --external <url>","link to external url intead of upload to Capgo Cloud").option("--iv-session-key <key>","Set the iv and session key for bundle url external").option("--s3-region <region>","Region for your S3 bucket").option("--s3-apikey <apikey>","Apikey for your S3 endpoint").option("--s3-apisecret <apisecret>","Api secret for your S3 endpoint").option("--s3-endoint <s3Endpoint>","Url of S3 endpoint").option("--s3-bucket-name <bucketName>","Name for your AWS S3 bucket").option("--s3-port <port>","Port for your S3 endpoint").option("--no-s3-ssl","Disable SSL for S3 upload").option("--key <key>","custom path for public signing key").option("--key-data <keyData>","public signing key").option("--key-v2 <key>","custom path for private signing key").option("--key-data-v2 <keyData>","private signing key").option("--bundle-url","prints bundle url into stdout").option("--no-key","ignore signing key and send clear update").option("--no-code-check","Ignore checking if notifyAppReady() is called in soure code and index present in root folder").option("--display-iv-session","Show in the console the iv and session key used to encrypt the update").option("--tus","Upload the bundle using tus").option("-b, --bundle <bundle>","bundle version number of the bundle to upload").option("--min-update-version <minUpdateVersion>","Minimal version required to update to this version. Used only if the disable auto update is set to metadata in channel").option("--auto-min-update-version","Set the min update version based on native packages").option("--ignore-metadata-check","Ignores the metadata (node_modules) check when uploading").option("--ignore-checksum-check","Ignores the checksum check when uploading").option("--timeout <timeout>","Timeout for the upload process in seconds").option("--multipart","Uses multipart protocol to upload data to S3").option("--partial","Upload partial files to S3").option("--encrypted-checksum <encryptedChecksum>","An encrypted checksum (signature). Used only when uploading an external bundle.");Fs.command("compatibility [appId]").action(u3e).option("-a, --apikey <apikey>","apikey to link to your account").option("-c, --channel <channel>","channel to check the compatibility with").option("--text","output text instead of emojis");Fs.command("delete [bundleId] [appId]").alias("d").description("Delete a bundle in Capgo Cloud").action(M4e).option("-a, --apikey <apikey>","apikey to link to your account");Fs.command("list [appId]").alias("l").description("List bundle in Capgo Cloud").action(S4e).option("-a, --apikey <apikey>","apikey to link to your account");Fs.command("cleanup [appId]").alias("c").action(J4e).description("Cleanup bundle in Capgo Cloud").option("-b, --bundle <bundle>","bundle version number of the app to delete").option("-a, --apikey <apikey>","apikey to link to your account").option("-k, --keep <keep>","number of version to keep").option("-f, --force","force removal");Fs.command("decrypt [zipPath] [sessionKey]").description("Decrypt a signed zip bundle").action(O4e).option("--key <key>","custom path for private signing key").option("--key-data <keyData>","private signing key");Fs.command("encrypt [zipPath]").description("Encrypt a zip bundle").action(R4e).option("--key <key>","custom path for private signing key").option("--key-data <keyData>","private signing key");Fs.command("encryptV2 [zipPath] [checksum]").description("Encrypt a zip bundle using the new encryption method").action(I4e).option("--key <key>","custom path for private signing key").option("--key-data <keyData>","private signing key").option("-j, --json","output in JSON");Fs.command("decryptV2 [zipPath] [checksum]").description("Decrypt a zip bundle using the new encryption method").action(k4e).option("--key <key>","custom path for private signing key").option("--key-data <keyData>","private signing key").option("--checksum <checksum>","checksum of the bundle, to verify the integrity of the bundle");Fs.command("zip [appId]").description("Zip a bundle").action($ge).option("-p, --path <path>","path of the folder to upload").option("-b, --bundle <bundle>","bundle version number to name the zip file").option("-n, --name <name>","name of the zip file").option("-j, --json","output in JSON").option("--no-code-check","Ignore checking if notifyAppReady() is called in soure code and index present in root folder").option("--key-v2","use encryption v2");var Og=$.command("channel").description("Manage channel");Og.command("add [channelId] [appId]").alias("a").description("Create channel").action(B6e).option("-d, --default","set the channel as default").option("-a, --apikey <apikey>","apikey to link to your account");Og.command("delete [channelId] [appId]").alias("d").description("Delete channel").action(Q4e).option("-a, --apikey <apikey>","apikey to link to your account");Og.command("list [appId]").alias("l").description("List channel").action(t3e).option("-a, --apikey <apikey>","apikey to link to your account");Og.command("currentBundle [channel] [appId]").description("Get current bundle for specific channel in Capgo Cloud").action(G4e).option("-c, --channel <channel>","channel to get the current bundle from").option("-a, --apikey <apikey>","apikey to link to your account").option("--quiet","only print the bundle version");Og.command("set [channelId] [appId]").alias("s").description("Set channel").action(H4e).option("-a, --apikey <apikey>","apikey to link to your account").option("-b, --bundle <bundle>","bundle version number of the file to set").option("-s, --state <state>","set the state of the channel, default or normal").option("--latest","get the latest version key in the package.json to set it to the channel").option("--downgrade","Allow to downgrade to version under native one").option("--no-downgrade","Disable downgrade to version under native one").option("--upgrade","Allow to upgrade to version above native one").option("--no-upgrade","Disable upgrade to version above native one").option("--ios","Allow sending update to ios devices").option("--no-ios","Disable sending update to ios devices").option("--android","Allow sending update to android devices").option("--no-android","Disable sending update to android devices").option("--self-assign","Allow to device to self assign to this channel").option("--no-self-assign","Disable devices to self assign to this channel").option("--disable-auto-update <disableAutoUpdate>","Disable auto update strategy for this channel.The possible options are: major, minor, metadata, patch, none").option("--dev","Allow sending update to development devices").option("--no-dev","Disable sending update to development devices").option("--emulator","Allow sending update to emulator devices").option("--no-emulator","Disable sending update to emulator devices");var l3e=$.command("key_old").description("Manage old encryption key");l3e.command("save").description("Save base64 encryption key in capacitor config, usefull for CI").action(j4e).option("-f, --force","force generate a new one").option("--key","key path to save in capacitor config").option("--key-data","key data to save in capacitor config");l3e.command("create").description("Create a new encryption key").action(q4e).option("-f, --force","force generate a new one");var kR=$.command("key").description("Manage encryption key");kR.command("save").description("Save base64 encryption key in capacitor config, usefull for CI").action(o6e).option("-f, --force","force generate a new one").option("--key","key path to save in capacitor config").option("--key-data","key data to save in capacitor config");kR.command("create").description("Create a new encryption key").action(u6e).option("-f, --force","force generate a new one");kR.command("delete_old").description("Delete the old encryption key").action(l6e);$.command("upload [appId]").alias("u").description("(Deprecated) Upload a new bundle to Capgo Cloud").action(o4e).option("-a, --apikey <apikey>","apikey to link to your account").option("-p, --path <path>","path of the folder to upload").option("-c, --channel <channel>","channel to link to").option("-e, --external <url>","link to external url intead of upload to Capgo Cloud").option("--old-encryption","use old encryption").option("--key <key>","custom path for public signing key").option("--key-data <keyData>","public signing key").option("--bundle-url","prints bundle url into stdout").option("--no-key","ignore signing key and send clear update").option("--display-iv-session","Show in the console the iv and session key used to encrypt the update").option("-b, --bundle <bundle>","bundle version number of the file to upload").option("--min-update-version <minUpdateVersion>","Minimal version required to update to this version. Used only if the disable auto update is set to metadata in channel");var Act=$.command("account").description("Manage account");Act.command("id").description("Get your account ID").action(Y1e).option("-a, --apikey <apikey>","apikey to link to your account");$.parseAsync();
|
|
419
|
+
`)}async function dct(e,t,r,i){let n=gi(),a=await nt({message:`Automatic configure end-to-end encryption in ${i} updates?`});if(await Ss(a,e,t),a){let s=Ue();s.start(`Running: ${n.runner} @capgo/cli@latest key create`),await KN({force:!0},!1)?s.stop("key created \u{1F511}"):(s.stop("Error"),O.warn("Cannot create key \u274C"),ae("Bye \u{1F44B}"),(0,pn.exit)(1)),$o("onboarding-v2",e,t,"Use encryption v2")}await wa(e,t,6)}async function fct(e,t,r,i){let n=gi(),a=await nt({message:`Automatic build ${i} with "${n.pm} run build" ?`});if(await Ss(a,e,t),a){let s=Ue(),o=await Ok(),u=await M1e(o);s.start(`Running: ${n.pm} run ${u} && ${n.runner} cap sync`),(await mi()).scripts[u]||(s.stop("Error"),O.warn(`Cannot find ${u} script in package.json, please add it and run \`capgo init\` again`),ae("Bye \u{1F44B}"),(0,pn.exit)()),(0,Ag.execSync)(`${n.pm} run ${u} && ${n.runner} cap sync`,y4e),s.stop("Build & Sync Done \u2705")}else O.info(`Build yourself with command: ${n.pm} run build && ${n.runner} cap sync`);await wa(e,t,7)}async function hct(e,t,r,i){let n=gi(),a=await nt({message:`Automatic upload ${i} bundle to Capgo?`});if(await Ss(a,e,t),a){let s=Ue();s.start(`Running: ${n.runner} @capgo/cli@latest bundle upload`),await w5(i,{channel:Sg,apikey:r},!1)?s.stop("Upload Done \u2705"):(s.stop("Error"),O.warn("Upload failed \u274C"),ae("Bye \u{1F44B}"),(0,pn.exit)())}else O.info(`Upload yourself with command: ${n.runner} @capgo/cli@latest bundle upload`);await wa(e,t,8)}async function mct(e,t){let r=gi(),i=await nt({message:"Run in device now ?"});if(await Ss(i,e,t),i){let n=await vp({message:"Pick a platform to run your app",options:[{value:"ios",label:"IOS"},{value:"android",label:"Android"}]});Di(n)&&(ae("Bye \u{1F44B}"),(0,pn.exit)());let a=n,s=Ue();s.start(`Running: ${r.runner} cap run ${a}`),await(0,Ag.spawnSync)(r.runner,["cap","run",a],{stdio:"inherit"}),s.stop("Started Done \u2705")}else O.info(`If you change your mind, run it for yourself with: ${r.runner} cap run <ios|android>`);await wa(e,t,9)}async function gct(e,t,r,i){let n=await nt({message:"Automatic check if update working in device ?"});if(await Ss(n,e,t),n)O.info(`Wait logs sent to Capgo from ${i} device, Please open your app \u{1F4AA}`),await XN("onboarding-v2",r,i,t,e);else{let a=Hc(i);O.info(`Check logs in https://web.capgo.app/app/p/${a}/logs to see if update works.`)}await wa(e,t,10)}async function _4e(e,t,r){let i=gi();re("Capgo onboarding \u{1F6EB}"),await Ie();let n=At(),a=await pe();t=t||a?.config?.appId,r.apikey=e||Fe();let s=Ue();(!u4e()||e)&&(s.start(`Running: ${i.runner} @capgo/cli@latest login ***`),await CR(r.apikey,r,!1),s.stop("Login Done \u2705"));let o=await Se(r.apikey);await Ae(o,r.apikey,["upload","all","read","write"]);let u=await l1(o,["admin","super_admin"]),l=u.gid,c=await nct(l,n)??0;try{c<1&&await wa(l,n,1),c<2&&(await sct(u,n,t,r),ol(2)),c<3&&(await oct(l,n,r.apikey,t),ol(3)),c<4&&(await cct(l,n,r.apikey,t),ol(4)),c<5&&(await pct(l,n,r.apikey,t),ol(5)),c<6&&(await dct(l,n,r.apikey,t),ol(6)),c<7&&(await fct(l,n,r.apikey,t),ol(7)),c<8&&(await hct(l,n,r.apikey,t),ol(8)),c<9&&(await mct(l,n),ol(9)),await gct(l,n,r.apikey,t),await wa(l,n,0),act()}catch(p){console.error(p),O.error("Error during onboarding, please try again later"),(0,pn.exit)(1)}O.info("Welcome onboard \u2708\uFE0F!"),O.info("Your Capgo update system is setup"),O.info(`Next time use \`${i.runner} @capgo/cli@latest bundle upload\` to only upload your bundle`),O.info(`If you have any issue try to use the debug command \`${i.runner} @capgo/cli@latest app debug\``),ae("Bye \u{1F44B}"),(0,pn.exit)()}var C4e=require("node:process");var D4e=require("node:process");var E4e=he(_g());var w4e=require("node:process");async function b4e(e,t,r){let{data:i,error:n}=await e.from("devices_override").select().eq("app_id",t).eq("version",r.id);if(n&&(O.error(`Cannot check Device override ${t}@${r.name}`),$.error("")),i&&i.length>0)if(re(`\u274C Version ${t}@${r.name} is used in ${i.length} device override`),await nt({message:"unlink it?"}))for(let a of i){let s=Ue();s.start(`Unlinking device ${a.device_id}`);let{error:o}=await e.from("devices_override").delete().eq("device_id",a.device_id);o&&(s.stop(`Cannot unlink device ${a.device_id} ${le(o)}`),(0,w4e.exit)(1)),s.stop(`\u2705 Device ${a.device_id} unlinked`)}else O.error("Unlink it first"),$.error("")}async function yct(e,t,r){let{error:i}=await e.from("app_versions").update({deleted:!0}).eq("app_id",t).eq("deleted",!1).eq("name",r);i&&(O.error(`App Version ${t}@${r} not found in database`),$.error(""))}async function C5(e,t,r){let i=await vct(e,t,r);await k6e(e,t,i),await b4e(e,t,i),await yct(e,t,r)}function S5(e){e.length||(O.error("No bundle found"),(0,D4e.exit)(1));let t=new E4e.Table({title:"Bundles",charLength:{"\u274C":2,"\u2705":2}});e.reverse().forEach(r=>{t.addRow({Version:r.name,Created:c1(r.created_at),...r.keep!=null?{Keep:r.keep}:{}})}),O.success(t.render())}async function A5(e,t){let{data:r,error:i}=await e.from("app_versions").select().eq("app_id",t).eq("deleted",!1).order("created_at",{ascending:!1});return i&&(O.error(`App ${t} not found in database`),$.error("")),r}async function x4e(e,t){let{data:r,error:i}=await e.from("channels").select("version").eq("app_id",t);return i&&(O.error(`App ${t} not found in database`),$.error("")),r.map(n=>n.version)}async function vct(e,t,r){let{data:i,error:n}=await e.from("app_versions").select().eq("app_id",t).eq("name",r).eq("deleted",!1).single();return(!i||n)&&(O.error(`App Version ${t}@${r} doesn't exist`),$.error("")),i}async function S4e(e,t){re("List bundles"),await Ie(),t.apikey=t.apikey||Fe();let r=await pe();e=e||r?.config?.appId,t.apikey||(O.error("Missing API key, you need to provide a API key to upload your bundle"),$.error("")),e||(O.error("Missing argument, you need to provide a appid, or be in a capacitor project"),$.error(""));let i=await Se(t.apikey);await Ae(i,t.apikey,["write","all","read","upload"]),O.info(`Querying available versions of: ${e} in Capgo`),await tt(i,t.apikey,e,1);let n=await A5(i,e);O.info(`Active versions in Capgo: ${n?.length}`),S5(n),ae("Done \u2705"),(0,C4e.exit)()}var As=require("node:fs"),A4e=require("node:process");async function O4e(e,t,r){re("Decrypt zip file"),await Ie(),(0,As.existsSync)(e)||(O.error(`Zip not found at the path ${e}`),$.error(""));let i=await pe();!r.key&&!(0,As.existsSync)($i)&&!i.config.plugins?.CapacitorUpdater?.privateKey&&(O.error(`Private Key not found at the path ${$i} or in ${i.path}`),$.error(""));let n=r.key||$i,a=i.config.plugins?.CapacitorUpdater?.privateKey;!(0,As.existsSync)(n)&&!a?(O.error(`Cannot find public key ${n} or as keyData option or in ${i.path}`),$.error("")):(0,As.existsSync)(n)&&(a=(0,As.readFileSync)(n).toString());let s=(0,As.readFileSync)(e),o=s6e(s,t,r.keyData??a??"");(0,As.writeFileSync)(`${e}_decrypted.zip`,o),ae(`Decrypted zip file at ${e}_decrypted.zip`),(0,A4e.exit)()}var Os=require("node:fs"),T4e=require("node:process");var F4e=he(J1());async function k4e(e,t,r){re("Decrypt zip file"),await Ie(),(0,Os.existsSync)(e)||(O.error(`Zip not found at the path ${e}`),$.error(""));let i=await pe();!r.key&&!(0,Os.existsSync)(No)&&!i.config.plugins?.CapacitorUpdater?.privateKey&&(O.error(`Private Key not found at the path ${No} or in ${i.path}`),$.error(""));let n=r.key||No,a=i.config.plugins?.CapacitorUpdater?.publicKey;!(0,Os.existsSync)(n)&&!a?(O.error(`Cannot find public key ${n} or as keyData option or in ${i.path}`),$.error("")):(0,Os.existsSync)(n)&&(a=(0,Os.readFileSync)(n).toString());let s=(0,Os.readFileSync)(e),o=Y6e(s,t,r.keyData??a??"");if((0,Os.writeFileSync)(`${e}_decrypted.zip`,o),O.info(`Decrypted zip file at ${e}_decrypted.zip`),r.checksum){let u=await(0,F4e.checksum)(o,"sha256"),l=X6e(r.checksum,r.keyData??a??"");u!==l?(O.error(`Checksum does not match ${u} !== ${l}`),$.error("")):O.info("Checksum matches")}ae("\u2705 done"),(0,T4e.exit)()}var ul=require("node:fs"),N4e=require("node:process");async function R4e(e,t){re("Encryption"),await Ie(),(0,ul.existsSync)(e)||(O.error(`Error: Zip not found at the path ${e}`),$.error(""));let r=t.key||un,i=t.keyData||"";(0,ul.existsSync)(r)&&(i=(0,ul.readFileSync)(r).toString());let n=(0,ul.readFileSync)(e),a=n5(n,i);O.success(`ivSessionKey: ${a.ivSessionKey}`),(0,ul.writeFileSync)(`${e}_encrypted.zip`,a.encryptedData),O.success(`Encrypted zip saved at ${e}_encrypted.zip`),ae("Done \u2705"),(0,N4e.exit)()}var zo=require("node:fs"),P4e=require("node:process");async function I4e(e,t,r){let{json:i}=r;i||(re("Encryption"),await Ie());let n=await pe(),a=!!n.config.plugins?.CapacitorUpdater?.privateKey,s=!!n.config.plugins?.CapacitorUpdater?.publicKey;a&&!i&&O.warning("There is still a privateKey in the config"),(0,zo.existsSync)(e)||(i?console.error(le({error:"zip_not_found"})):O.error(`Error: Zip not found at the path ${e}`),$.error("")),s||(i?console.error(le({error:"missing_public_key"})):O.warning("Warning: Missing Public Key in config"),$.error(""));let o=r.key||on,u=r.keyData||"";!(0,zo.existsSync)(o)&&!u?(i?console.error(le({error:"missing_key"})):(O.warning(`Cannot find a private key at ${o} or as a keyData option`),O.error("Error: Missing key")),$.error("")):(0,zo.existsSync)(o)&&(u=(0,zo.readFileSync)(o).toString()),u&&!u.startsWith("-----BEGIN RSA PRIVATE KEY-----")&&(i?console.error(le({error:"invalid_private_key"})):O.error("the private key provided is not a valid RSA Private key"),$.error(""));let l=(0,zo.readFileSync)(e),c=_5(l,u),p=v5(t,u),d=`${e}_encrypted.zip`;i?console.log(JSON.stringify({checksum:p,filename:d,ivSessionKey:c.ivSessionKey},null,2)):(O.success(`Encoded Checksum: ${p}`),O.success(`ivSessionKey: ${c.ivSessionKey}`)),(0,zo.writeFileSync)(d,c.encryptedData),i||(O.success(`Encrypted zip saved at ${d}`),ae("Done \u2705")),(0,P4e.exit)()}var L1=require("node:process"),O5=require("node:os"),L4e=he(qN());async function _ct(e){let t={},r=[];for(let i in e)Object.prototype.hasOwnProperty.call(e,i)&&r.push((0,L4e.default)(i));return await Promise.all(r).then(i=>{let n=Object.keys(e);for(let a=0;a<i.length;a+=1){let s=i[a];s&&(t[n[a]]=s)}}),t}async function wct(){let{dependencies:e}=await mi(),t={"@capgo/cli":ba.version};for(let r in e)if(Object.prototype.hasOwnProperty.call(e,r)&&r.startsWith("@capgo/")&&r.startsWith("@capawesome/")&&r.startsWith("capacitor")){let i=e[r].replace("^","").replace("~","");t[r]=i}return t}async function B4e(){O.warn(" \u{1F48A} Capgo Doctor \u{1F48A}");let e=await pe(),t=await mi(),r=e?.config?.plugins?.CapacitorUpdater?.version||t?.version,i=e?.config?.appName||"";O.info(` App Name: ${i}`);let n=e?.config?.appId||"";O.info(` App ID: ${n}`),O.info(` App Version: ${r}`);let a=e?.config?.webDir||"";O.info(` Web Dir: ${a}`),O.info(` OS: ${(0,O5.platform)()} ${(0,O5.version)()}`),O.info(` Node: ${L1.version}`),O.info(" Installed Dependencies:");let s=await wct();Object.keys(s).length===0&&(O.warning("\x1B[31m%s\x1B[0m \u{1F6A8} No dependencies found"),(0,L1.exit)(1));for(let l in s)if(Object.prototype.hasOwnProperty.call(s,l)){let c=s[l];O.info(` ${l}: ${c}`)}let o=Ue();o.start("Running: Loading latest dependencies");let u=await _ct(s);o.stop("Latest Dependencies:");for(let l in u)if(Object.prototype.hasOwnProperty.call(u,l)){let c=u[l];O.info(` ${l}: ${c}`)}JSON.stringify(s)!==JSON.stringify(u)&&(O.warn("\x1B[31m\u{1F6A8} Some dependencies are not up to date\x1B[0m"),(0,L1.exit)(1)),O.success("\x1B[32m\u2705 All dependencies are up to date\x1B[0m"),(0,L1.exit)()}var Ts=require("node:fs");async function bct(e,t=!0){t&&re("Save keys \u{1F511}");let r=await pe(),i=e.key||$i,n=e.keyData||"";if(!(0,Ts.existsSync)(i)&&!n)if(t)O.error(`Cannot find public key ${i} or as keyData option or in ${r.path}`),$.error("");else return!1;else(0,Ts.existsSync)(i)&&(n=(0,Ts.readFileSync)(i).toString());return r?.config&&(r.config.plugins||(r.config.plugins={extConfig:{},CapacitorUpdater:{}}),r.config.plugins.CapacitorUpdater||(r.config.plugins.CapacitorUpdater={}),r.config.plugins.CapacitorUpdater.privateKey=n,await vs(r)),O&&(O.success(`private key saved into ${r.path} file in local directory`),O.success("your app will decode the zip archive with this key")),!0}async function j4e(e){re("Save keys \u{1F511}"),await Ie(),await bct(e)}async function Dct(e,t=!0){t&&re("Create keys \u{1F511}");let{publicKey:r,privateKey:i}=a5();if((0,Ts.existsSync)(un)&&!e.force)if(O.error("Public Key already exists, use --force to overwrite"),t)$.error("");else return!1;if((0,Ts.writeFileSync)(un,r),(0,Ts.existsSync)($i)&&!e.force)if(O.error("Private Key already exists, use --force to overwrite"),t)$.error("");else return!1;(0,Ts.writeFileSync)($i,i);let n=i.replace(/\\n/g,"\\n"),a=await _9({privateKey:n});return t&&(O.success("Your RSA key has been generated"),O.success(`Public key saved in ${un}`),O.success("This key will be use to encrypt your bundle before sending it to Capgo"),O.success("Keep it safe"),O.success("Than make it unreadable by Capgo and unmodifiable by anyone"),O.success(`Private key saved in ${a.path}`),O.success("Your app will be the only one having it"),O.success("Only your users can decrypt your update"),O.success("Only you can send them an update"),ae("Done \u2705")),!0}async function q4e(e){await Ie(),await Dct(e)}var $4e=require("node:process");async function M4e(e,t,r){re("Delete bundle"),r.apikey=r.apikey||Fe();let i=await pe();t=t||i?.config?.appId,r.apikey||(O.error("Missing API key, you need to provide a API key to upload your bundle"),$.error("")),t||(O.error("Missing argument, you need to provide a appId, or be in a capacitor project"),$.error(""));let n=await Se(r.apikey);await Ae(n,r.apikey,["write","all"]),await tt(n,r.apikey,t,3),r.apikey||(O.error("Missing API key, you need to provide an API key to delete your app"),$.error("")),e||(O.error("Missing argument, you need to provide a bundleId, or be in a capacitor project"),$.error("")),t||(O.error("Missing argument, you need to provide a appId, or be in a capacitor project"),$.error("")),O.info(`Deleting bundle ${t}@${e} from Capgo`),O.info("Keep in mind that you will not be able to reuse this bundle version, it's gone forever"),await C5(n,t,e),O.success(`Bundle ${t}@${e} deleted in Capgo`),ae("Done"),(0,$4e.exit)()}var V4e=require("node:process");var U4e=["major","minor","metadata","patch","none"];async function H4e(e,t,r){re("Set channel"),r.apikey=r.apikey||Fe();let i=await pe();t=t||i?.config?.appId;let n=At();r.apikey||(O.error("Missing API key, you need to provide a API key to upload your bundle"),$.error("")),t||(O.error("Missing argument, you need to provide a appId, or be in a capacitor project"),$.error(""));let a=await Se(r.apikey),s=await Ae(a,r.apikey,["write","all"]);await tt(a,r.apikey,t,4);let o=await Vn(a,t),{bundle:u,state:l,downgrade:c,latest:p,upgrade:d,ios:f,android:h,selfAssign:m,disableAutoUpdate:v,dev:y,emulator:E}=r;e||(O.error("Missing argument, you need to provide a channel"),$.error("")),p&&u&&(O.error("Cannot set latest and bundle at the same time"),$.error("")),u==null&&l==null&&p==null&&c==null&&d==null&&f==null&&h==null&&m==null&&y==null&&E==null&&v==null&&(O.error("Missing argument, you need to provide a option to set"),$.error(""));try{await u1(a,o,r.apikey,t);let b={created_by:s,app_id:t,name:e,owner_org:o,version:void 0},_=await mi(),w=p?i?.config?.plugins?.CapacitorUpdater?.version||_?.version:u;if(w!=null){let{data:S,error:A}=await a.from("app_versions").select().eq("app_id",t).eq("name",w).eq("user_id",s).eq("deleted",!1).single();(A||!S)&&(O.error(`Cannot find version ${w}`),$.error("")),O.info(`Set ${t} channel: ${e} to @${w}`),b.version=S.id}if(l!=null&&((l==="public"||l==="private")&&O.info(`Set ${t} channel: ${e} to public or private is deprecated, use default or normal instead`),O.info(`Set ${t} channel: ${e} to ${l==="public"||l==="default"?"default":"normal"}`),b.public=l==="public"||l==="default"),c!=null&&(O.info(`Set ${t} channel: ${e} to ${c?"allow":"disallow"} downgrade`),b.disable_auto_update_under_native=!c),f!=null&&(O.info(`Set ${t} channel: ${e} to ${f?"allow":"disallow"} ios update`),b.ios=!!f),h!=null&&(O.info(`Set ${t} channel: ${e} to ${h?"allow":"disallow"} android update`),b.android=!!h),m!=null&&(O.info(`Set ${t} channel: ${e} to ${m?"allow":"disallow"} self assign to this channel`),b.allow_device_self_set=!!m),v!=null){let S=v.toLocaleLowerCase();U4e.includes(S)||(O.error(`Channel strategy ${S} is not known. The possible values are: ${U4e.join(", ")}.`),$.error("")),S==="metadata"&&(S="version_number"),b.disable_auto_update=S,O.info(`Set ${t} channel: ${e} to ${S} disable update strategy to this channel`)}try{let{error:S}=await b9(a,b);S&&(O.error('Cannot set channel the upload key is not allowed to do that, use the "all" for this.'),$.error(""))}catch{O.error('Cannot set channel the upload key is not allowed to do that, use the "all" for this.'),$.error("")}await n.track({channel:"channel",event:"Set channel",icon:"\u2705",user_id:o,tags:{"app-id":t},notify:!1}).catch()}catch(b){O.error(`Unknow error ${le(b)}`),$.error("")}ae("Done \u2705"),(0,V4e.exit)()}var z4e=require("node:process");async function G4e(e,t,r){let{quiet:i}=r;i||re("List current bundle"),r.apikey=r.apikey||Fe(i);let n=await pe();t=t||n?.config?.appId,r.apikey||(O.error("Missing API key, you need to provide a API key to upload your bundle"),$.error("")),t||(O.error("Missing argument, you need to provide a appId, or be in a capacitor project"),$.error(""));let a=await Se(r.apikey),s=await Ae(a,r.apikey,["write","all","read"]);await tt(a,r.apikey,t,1),e||(O.error("Please provide a channel to get the bundle from."),$.error(""));let{data:o,error:u}=await a.from("channels").select("version ( name )").eq("name",e).eq("app_id",t).limit(1);(u||o.length===0)&&(O.error(`Error retrieving channel ${e} for app ${t}. Perhaps the channel does not exists?`),$.error(""));let{version:l}=o[0];l||(O.error(`Error retrieving channel ${e} for app ${t}. Perhaps the channel does not exists?`),$.error("")),i?O.info(l.name):O.info(`Current bundle for channel ${e} is ${l.name}`),(0,z4e.exit)()}var TR=require("node:process");var W4e=he(_g());function Ect(e){e.length||(O.error("No apps found"),(0,TR.exit)(1));let t=new W4e.Table({title:"Apps",charLength:{"\u274C":2,"\u2705":2}});e.reverse().forEach(r=>{t.addRow({Name:r.name,id:r.app_id,Created:c1(r.created_at)})}),O.success(t.render())}async function xct(e){let{data:t,error:r}=await e.from("apps").select().order("created_at",{ascending:!1});return r&&(O.error("Apps not found"),$.error("")),t}async function K4e(e){re("List apps in Capgo"),await Ie(),e.apikey=e.apikey||Fe();let t=await Se(e.apikey);await Ae(t,e.apikey,["write","all","read","upload"]),O.info("Getting active bundle in Capgo");let r=await xct(t);O.info(`Active app in Capgo: ${r?.length}`),Ect(r),ae("Done \u2705"),(0,TR.exit)()}var FR=require("node:process");var T5=he(X4e());async function Cct(e,t,r){for await(let i of e)O.warn(`Removing ${i.name} created on ${c1(i.created_at)}`),await C5(t,r,i.name)}function Sct(e,t,r){let i=[];return e?.forEach(n=>{T5.default.gte(n.name,t)&&T5.default.lt(n.name,`${r}`)&&i.push(n)}),i}async function J4e(e,t){re("Cleanup versions in Capgo"),await Ie(),t.apikey=t.apikey||Fe();let{bundle:r,keep:i=4}=t,n=t.force||!1,a=await pe();e=e||a?.config?.appId,t.apikey||(O.error("Missing API key, you need to provide an API key to delete your app"),$.error("")),e||(O.error("Missing argument, you need to provide a appid, or be in a capacitor project"),$.error(""));let s=await Se(t.apikey);await Ae(s,t.apikey,["write","all"]),await tt(s,t.apikey,e,3),O.info("Querying all available versions in Capgo");let o=await A5(s,e),u=await x4e(s,e);if(O.info(`Total active versions in Capgo: ${o?.length}`),o?.length===0){O.error("No versions found, aborting cleanup");return}if(r){let p=`${T5.default.inc(r,"major")}`;O.info(`Querying available versions in Capgo between ${r} and ${p}`),o=Sct(o,r,p),O.info(`Active versions in Capgo between ${r} and ${p}: ${o?.length}`)}let l=[],c=0;if(o.forEach(p=>{let d=u.find(f=>f===p.id);c<i||d?(d?p.keep="\u2705 (Linked to channel)":p.keep="\u2705",c+=1):(p.keep="\u274C",l.push(p))}),l.length===0){O.warn("Nothing to be removed, aborting removal...");return}if(S5(o),!n){let p=await nt({message:"Do you want to continue removing the versions specified?"});(Di(p)||!p)&&(O.warn("Not confirmed, aborting removal..."),(0,FR.exit)())}O.success("You have confirmed removal, removing versions now"),await Cct(l,s,e),ae("Done \u2705"),(0,FR.exit)()}var Z4e=require("node:process");async function Q4e(e,t,r){re("Delete channel"),r.apikey=r.apikey||Fe();let i=await pe();t=t||i?.config?.appId;let n=At();r.apikey||(O.error("Missing API key, you need to provide a API key to upload your bundle"),$.error("")),t||(O.error("Missing argument, you need to provide a appId, or be in a capacitor project"),$.error(""));let a=await Se(r.apikey),s=await Ae(a,r.apikey,["write","all"]);await tt(a,r.apikey,t,4),O.info(`Deleting channel ${t}#${e} from Capgo`);try{let o=await R6e(a,e,t,s);o.error&&(O.error(`Cannot delete Channel \u{1F640} ${le(o.error)}`),$.error(""));let u=await Vn(a,t);O.success("Channel deleted"),await n.track({channel:"channel",event:"Delete channel",icon:"\u2705",user_id:u,tags:{"user-id":s,"app-id":t,channel:e},notify:!1}).catch()}catch{O.error("Cannot delete Channel \u{1F640}")}ae("Done \u2705"),(0,Z4e.exit)()}var e3e=require("node:process");async function t3e(e,t){re("List channels"),t.apikey=t.apikey||Fe();let r=await pe();e=e||r?.config?.appId;let i=At();t.apikey||O.error("Missing API key, you need to provide a API key to upload your bundle"),e||(O.error("Missing argument, you need to provide a appId, or be in a capacitor project"),$.error(""));let n=await Se(t.apikey),a=await Ae(n,t.apikey,["write","all","read","upload"]);await tt(n,t.apikey,e,1),O.info("Querying available channels in Capgo");let s=await I6e(n,e);O.info(`Active channels in Capgo: ${s?.length}`),P6e(s),await i.track({channel:"channel",event:"List channel",icon:"\u2705",user_id:a,tags:{"app-id":e},notify:!1}).catch(),ae("Done \u2705"),(0,e3e.exit)()}var r3e=require("node:crypto"),B1=require("node:fs"),i3e=require("node:process");async function n3e(e,t){re("Set app"),t.apikey=t.apikey||Fe();let r=await pe();e=e||r?.config?.appId,t.apikey||(O.error("Missing API key, you need to provide a API key to upload your bundle"),$.error("")),e||(O.error("Missing argument, you need to provide a appId, or be in a capacitor project"),$.error(""));let i=await Se(t.apikey),a=(await l1(i,["admin","super_admin"])).gid,s=await Ae(i,t.apikey,["write","all"]);await tt(i,t.apikey,e,4);let{name:o,icon:u,retention:l}=t;l&&Number.isNaN(Number(l))?(O.error("retention value must be a number"),$.error("")):l&&l<0&&(O.error("retention value cannot be less than 0"),$.error(""));let c,p,d=`icon_${(0,r3e.randomUUID)()}`,f="https://xvwzpoazmxkqosrdewyv.supabase.co/storage/v1/object/public/images/capgo.png";if(u&&(0,B1.existsSync)(u)?(c=(0,B1.readFileSync)(u),p=R1.getType(u)||"image/png",O.warn(`Found app icon ${u}`)):(0,B1.existsSync)(Gn)?(c=(0,B1.readFileSync)(Gn),p=R1.getType(Gn)||"image/png",O.warn(`Found app icon ${Gn}`)):O.warn(`Cannot find app icon in any of the following locations: ${u}, ${Gn}`),c&&p){let{error:m}=await i.storage.from(`images/org/${a}/${e}`).upload(d,c,{contentType:p});m&&(O.error(`Could not set app ${le(m)}`),$.error(""));let{data:v}=await i.storage.from(`images/org/${a}/${e}`).getPublicUrl(d);f=v?.publicUrl||f}let{error:h}=await i.from("apps").update({icon_url:f,name:o,retention:l?l*24*60*60:void 0}).eq("app_id",e).eq("user_id",s);h&&(O.error(`Could not set app ${le(h)}`),$.error("")),ae("Done \u2705"),(0,i3e.exit)()}var a3e=require("node:process");async function s3e(e,t){re("Deleting"),t.apikey=t.apikey||Fe();let r=await pe();e=e||r?.config?.appId;let i=At();t.apikey||(O.error("Missing API key, you need to provide a API key to upload your bundle"),$.error("")),e||(O.error("Missing argument, you need to provide a appId, or be in a capacitor project"),$.error(""));let n=await Se(t.apikey),a=await Ae(n,t.apikey,["write","all"]);await tt(n,t.apikey,e,5);let{data:s,error:o}=await n.from("apps").select("owner_org ( created_by, id )").eq("app_id",e).single(),u=s;if(!o&&(u?.owner_org.created_by??"")!==a){O.warn("Deleting the app is not recomended for users that are not the organization owner"),O.warn("You are invited as a super_admin but your are not the owner"),O.warn("It's strongly recomended that you do not continue!");let f=await vp({message:"Do you want to continue?",options:[{label:"Yes",value:"yes"},{label:"No",value:"no"}]});(Di(f)||f==="no")&&(O.error("Canceled deleting the app, exiting"),$.error(""))}else o&&O.warn(`Cannot get the app owner ${le(o)}`);let{error:l}=await n.storage.from("images").remove([`org/${u?.owner_org.id}/${e}/icon`]);l&&(console.error(l,`images/org/${u?.owner_org.id}/${e}`),O.error("Could not delete app logo"));let{error:c}=await n.storage.from(`apps/${e}/${a}`).remove(["versions"]);c&&O.error("Could not delete app version");let{error:p}=await n.from("apps").delete().eq("app_id",e);p&&(O.error("Could not delete app"),$.error(""));let d=await Vn(n,e);await i.track({channel:"app",event:"App Deleted",icon:"\u{1F5D1}\uFE0F",user_id:d,tags:{"app-id":e},notify:!1}).catch(),O.success("App deleted in Capgo"),ae("Done \u2705"),(0,a3e.exit)()}var o3e=he(_g());async function u3e(e,t){re("Check compatibility"),t.apikey=t.apikey||Fe();let r=await pe();e=e||r?.config?.appId;let{channel:i}=t;i||(O.error("Missing argument, you need to provide a channel"),$.error("")),t.apikey||(O.error("Missing API key, you need to provide a API key to upload your bundle"),$.error("")),e||(O.error("Missing argument, you need to provide a appId, or be in a capacitor project"),$.error(""));let n=await Se(t.apikey);await Ae(n,t.apikey,["write","all","read","upload"]),await tt(n,t.apikey,e,1);let{finalCompatibility:a}=await D9(n,e,i),s=new o3e.Table({title:"Compatibility",charLength:{"\u274C":2,"\u2705":2}}),o=t.text?"Yes":"\u2705",u=t.text?"No":"\u274C";a.forEach(l=>{let{name:c,localVersion:p,remoteVersion:d}=l;s.addRow({Package:c,"Local version":p??"None","Remote version":d??"None",Compatible:d===p?o:u})}),O.success(s.render())}$.name(ba.name).description("Manage packages and bundle versions in Capgo Cloud").version(ba.version);$.command("login [apikey]").alias("l").description("Save apikey to your machine or folder").action(l4e).option("--local","Only save in local folder");$.command("doctor").description("Get info about your Capgo app install").action(B4e);$.command("init [apikey] [appId]").description("Init a new app").action(_4e).option("-n, --name <name>","app name").option("-i, --icon <icon>","app icon path");var j1=$.command("app").description("Manage app");j1.command("add [appId]").alias("a").description("Add a new app in Capgo Cloud").action(m4e).option("-n, --name <name>","app name").option("-i, --icon <icon>","app icon path").option("-a, --apikey <apikey>","apikey to link to your account");j1.command("delete [appId]").description("Delete an app in Capgo Cloud").action(s3e).option("-a, --apikey <apikey>","apikey to link to your account");j1.command("list").alias("l").description("list apps in Capgo Cloud").action(K4e).option("-a, --apikey <apikey>","apikey to link to your account");j1.command("debug [appId]").description("Listen for live updates event in Capgo Cloud to debug your app").option("-a, --apikey <apikey>","apikey to link to your account").option("-d, --device <device>","the specific device to debug").action(p6e);j1.command("setting [path]").description("Modifies capacitor config programmatically").option("--bool <bool>","A value for the setting to modify as a boolean").option("--string <string>","A value for the setting to modify as a string").action(K1e);j1.command("set [appId]").alias("s").description("Set an app in Capgo Cloud").action(n3e).option("-n, --name <name>","app name").option("-i, --icon <icon>","app icon path").option("-a, --apikey <apikey>","apikey to link to your account").option("-r, --retention <retention>","retention period of app bundle in days");var Fs=$.command("bundle").description("Manage bundle");Fs.command("upload [appId]").alias("u").description("Upload a new bundle in Capgo Cloud").action(s4e).option("-a, --apikey <apikey>","apikey to link to your account").option("-p, --path <path>","path of the folder to upload").option("-c, --channel <channel>","channel to link to").option("-e, --external <url>","link to external url intead of upload to Capgo Cloud").option("--iv-session-key <key>","Set the iv and session key for bundle url external").option("--s3-region <region>","Region for your S3 bucket").option("--s3-apikey <apikey>","Apikey for your S3 endpoint").option("--s3-apisecret <apisecret>","Api secret for your S3 endpoint").option("--s3-endoint <s3Endpoint>","Url of S3 endpoint").option("--s3-bucket-name <bucketName>","Name for your AWS S3 bucket").option("--s3-port <port>","Port for your S3 endpoint").option("--no-s3-ssl","Disable SSL for S3 upload").option("--key <key>","custom path for public signing key").option("--key-data <keyData>","public signing key").option("--key-v2 <key>","custom path for private signing key").option("--key-data-v2 <keyData>","private signing key").option("--bundle-url","prints bundle url into stdout").option("--no-key","ignore signing key and send clear update").option("--no-code-check","Ignore checking if notifyAppReady() is called in soure code and index present in root folder").option("--display-iv-session","Show in the console the iv and session key used to encrypt the update").option("-b, --bundle <bundle>","bundle version number of the bundle to upload").option("--min-update-version <minUpdateVersion>","Minimal version required to update to this version. Used only if the disable auto update is set to metadata in channel").option("--auto-min-update-version","Set the min update version based on native packages").option("--ignore-metadata-check","Ignores the metadata (node_modules) check when uploading").option("--ignore-checksum-check","Ignores the checksum check when uploading").option("--timeout <timeout>","Timeout for the upload process in seconds").option("--multipart","Uses multipart protocol to upload data to S3, Deprecated, use tus instead").option("--tus","Upload the bundle using TUS to Capgo cloud").option("--partial","Upload partial files to Capgo cloud").option("--encrypted-checksum <encryptedChecksum>","An encrypted checksum (signature). Used only when uploading an external bundle.");Fs.command("compatibility [appId]").action(u3e).option("-a, --apikey <apikey>","apikey to link to your account").option("-c, --channel <channel>","channel to check the compatibility with").option("--text","output text instead of emojis");Fs.command("delete [bundleId] [appId]").alias("d").description("Delete a bundle in Capgo Cloud").action(M4e).option("-a, --apikey <apikey>","apikey to link to your account");Fs.command("list [appId]").alias("l").description("List bundle in Capgo Cloud").action(S4e).option("-a, --apikey <apikey>","apikey to link to your account");Fs.command("cleanup [appId]").alias("c").action(J4e).description("Cleanup bundle in Capgo Cloud").option("-b, --bundle <bundle>","bundle version number of the app to delete").option("-a, --apikey <apikey>","apikey to link to your account").option("-k, --keep <keep>","number of version to keep").option("-f, --force","force removal");Fs.command("decrypt [zipPath] [sessionKey]").description("Decrypt a signed zip bundle").action(O4e).option("--key <key>","custom path for private signing key").option("--key-data <keyData>","private signing key");Fs.command("encrypt [zipPath]").description("Encrypt a zip bundle").action(R4e).option("--key <key>","custom path for private signing key").option("--key-data <keyData>","private signing key");Fs.command("encryptV2 [zipPath] [checksum]").description("Encrypt a zip bundle using the new encryption method").action(I4e).option("--key <key>","custom path for private signing key").option("--key-data <keyData>","private signing key").option("-j, --json","output in JSON");Fs.command("decryptV2 [zipPath] [checksum]").description("Decrypt a zip bundle using the new encryption method").action(k4e).option("--key <key>","custom path for private signing key").option("--key-data <keyData>","private signing key").option("--checksum <checksum>","checksum of the bundle, to verify the integrity of the bundle");Fs.command("zip [appId]").description("Zip a bundle").action($ge).option("-p, --path <path>","path of the folder to upload").option("-b, --bundle <bundle>","bundle version number to name the zip file").option("-n, --name <name>","name of the zip file").option("-j, --json","output in JSON").option("--no-code-check","Ignore checking if notifyAppReady() is called in soure code and index present in root folder").option("--key-v2","use encryption v2");var Og=$.command("channel").description("Manage channel");Og.command("add [channelId] [appId]").alias("a").description("Create channel").action(B6e).option("-d, --default","set the channel as default").option("-a, --apikey <apikey>","apikey to link to your account");Og.command("delete [channelId] [appId]").alias("d").description("Delete channel").action(Q4e).option("-a, --apikey <apikey>","apikey to link to your account");Og.command("list [appId]").alias("l").description("List channel").action(t3e).option("-a, --apikey <apikey>","apikey to link to your account");Og.command("currentBundle [channel] [appId]").description("Get current bundle for specific channel in Capgo Cloud").action(G4e).option("-c, --channel <channel>","channel to get the current bundle from").option("-a, --apikey <apikey>","apikey to link to your account").option("--quiet","only print the bundle version");Og.command("set [channelId] [appId]").alias("s").description("Set channel").action(H4e).option("-a, --apikey <apikey>","apikey to link to your account").option("-b, --bundle <bundle>","bundle version number of the file to set").option("-s, --state <state>","set the state of the channel, default or normal").option("--latest","get the latest version key in the package.json to set it to the channel").option("--downgrade","Allow to downgrade to version under native one").option("--no-downgrade","Disable downgrade to version under native one").option("--upgrade","Allow to upgrade to version above native one").option("--no-upgrade","Disable upgrade to version above native one").option("--ios","Allow sending update to ios devices").option("--no-ios","Disable sending update to ios devices").option("--android","Allow sending update to android devices").option("--no-android","Disable sending update to android devices").option("--self-assign","Allow to device to self assign to this channel").option("--no-self-assign","Disable devices to self assign to this channel").option("--disable-auto-update <disableAutoUpdate>","Disable auto update strategy for this channel.The possible options are: major, minor, metadata, patch, none").option("--dev","Allow sending update to development devices").option("--no-dev","Disable sending update to development devices").option("--emulator","Allow sending update to emulator devices").option("--no-emulator","Disable sending update to emulator devices");var l3e=$.command("key_old").description("Manage old encryption key");l3e.command("save").description("Save base64 encryption key in capacitor config, usefull for CI").action(j4e).option("-f, --force","force generate a new one").option("--key","key path to save in capacitor config").option("--key-data","key data to save in capacitor config");l3e.command("create").description("Create a new encryption key").action(q4e).option("-f, --force","force generate a new one");var kR=$.command("key").description("Manage encryption key");kR.command("save").description("Save base64 encryption key in capacitor config, usefull for CI").action(o6e).option("-f, --force","force generate a new one").option("--key","key path to save in capacitor config").option("--key-data","key data to save in capacitor config");kR.command("create").description("Create a new encryption key").action(u6e).option("-f, --force","force generate a new one");kR.command("delete_old").description("Delete the old encryption key").action(l6e);$.command("upload [appId]").alias("u").description("(Deprecated) Upload a new bundle to Capgo Cloud").action(o4e).option("-a, --apikey <apikey>","apikey to link to your account").option("-p, --path <path>","path of the folder to upload").option("-c, --channel <channel>","channel to link to").option("-e, --external <url>","link to external url intead of upload to Capgo Cloud").option("--old-encryption","use old encryption").option("--key <key>","custom path for public signing key").option("--key-data <keyData>","public signing key").option("--bundle-url","prints bundle url into stdout").option("--no-key","ignore signing key and send clear update").option("--display-iv-session","Show in the console the iv and session key used to encrypt the update").option("-b, --bundle <bundle>","bundle version number of the file to upload").option("--min-update-version <minUpdateVersion>","Minimal version required to update to this version. Used only if the disable auto update is set to metadata in channel");var Act=$.command("account").description("Manage account");Act.command("id").description("Get your account ID").action(Y1e).option("-a, --apikey <apikey>","apikey to link to your account");$.parseAsync();
|
|
420
420
|
/*! Bundled license information:
|
|
421
421
|
|
|
422
422
|
safe-buffer/index.js:
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@capgo/cli",
|
|
3
|
-
"version": "4.21.
|
|
3
|
+
"version": "4.21.9",
|
|
4
4
|
"description": "A CLI to upload to capgo servers",
|
|
5
5
|
"author": "github.com/riderx",
|
|
6
6
|
"license": "Apache 2.0",
|
|
@@ -88,6 +88,6 @@
|
|
|
88
88
|
"ts-node": "^10.9.2",
|
|
89
89
|
"tsconfig-paths": "4.2.0",
|
|
90
90
|
"tus-js-client": "^4.2.3",
|
|
91
|
-
"typescript": "5.6.
|
|
91
|
+
"typescript": "5.6.3"
|
|
92
92
|
}
|
|
93
93
|
}
|