@capgo/cli 7.56.3 → 7.57.0
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/dist/index.js +22 -22
- package/dist/package.json +1 -1
- package/dist/src/api/channels.d.ts +6 -0
- package/dist/src/api/channels.d.ts.map +1 -1
- package/dist/src/api/versions.d.ts +2 -0
- package/dist/src/api/versions.d.ts.map +1 -1
- package/dist/src/bundle/list.d.ts +1 -0
- package/dist/src/bundle/list.d.ts.map +1 -1
- package/dist/src/bundle/upload.d.ts.map +1 -1
- package/dist/src/channel/add.d.ts.map +1 -1
- package/dist/src/sdk.js +60 -60
- package/dist/src/types/supabase.types.d.ts +3 -0
- package/dist/src/types/supabase.types.d.ts.map +1 -1
- package/dist/src/utils.d.ts +3 -0
- package/dist/src/utils.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -24,10 +24,10 @@ Expecting one of '${n.join("', '")}'`);return this._lifeCycleHooks[e]?this._life
|
|
|
24
24
|
`),this.outputHelp({error:!0}));let n=r||{},o=n.exitCode||1,i=n.code||"commander.error";this._exit(o,i,e)}_parseOptionsEnv(){this.options.forEach(e=>{if(e.envVar&&e.envVar in Ae.env){let r=e.attributeName();(this.getOptionValue(r)===void 0||["default","config","env"].includes(this.getOptionValueSource(r)))&&(e.required||e.optional?this.emit(`optionEnv:${e.name()}`,Ae.env[e.envVar]):this.emit(`optionEnv:${e.name()}`))}})}_parseOptionsImplied(){let e=new A2(this.options),r=n=>this.getOptionValue(n)!==void 0&&!["default","implied"].includes(this.getOptionValueSource(n));this.options.filter(n=>n.implied!==void 0&&r(n.attributeName())&&e.valueFromOption(this.getOptionValue(n.attributeName()),n)).forEach(n=>{Object.keys(n.implied).filter(o=>!r(o)).forEach(o=>{this.setOptionValueWithSource(o,n.implied[o],"implied")})})}missingArgument(e){let r=`error: missing required argument '${e}'`;this.error(r,{code:"commander.missingArgument"})}optionMissingArgument(e){let r=`error: option '${e.flags}' argument missing`;this.error(r,{code:"commander.optionMissingArgument"})}missingMandatoryOptionValue(e){let r=`error: required option '${e.flags}' not specified`;this.error(r,{code:"commander.missingMandatoryOptionValue"})}_conflictingOption(e,r){let n=a=>{let s=a.attributeName(),u=this.getOptionValue(s),c=this.options.find(d=>d.negate&&s===d.attributeName()),f=this.options.find(d=>!d.negate&&s===d.attributeName());return c&&(c.presetArg===void 0&&u===!1||c.presetArg!==void 0&&u===c.presetArg)?c:f||a},o=a=>{let s=n(a),u=s.attributeName();return this.getOptionValueSource(u)==="env"?`environment variable '${s.envVar}'`:`option '${s.flags}'`},i=`error: ${o(e)} cannot be used with ${o(r)}`;this.error(i,{code:"commander.conflictingOption"})}unknownOption(e){if(this._allowUnknownOption)return;let r="";if(e.startsWith("--")&&this._showSuggestionAfterError){let o=[],i=this;do{let a=i.createHelp().visibleOptions(i).filter(s=>s.long).map(s=>s.long);o=o.concat(a),i=i.parent}while(i&&!i._enablePositionalOptions);r=qy(e,o)}let n=`error: unknown option '${e}'${r}`;this.error(n,{code:"commander.unknownOption"})}_excessArguments(e){if(this._allowExcessArguments)return;let r=this.registeredArguments.length,n=r===1?"":"s",i=`error: too many arguments${this.parent?` for '${this.name()}'`:""}. Expected ${r} argument${n} but got ${e.length}.`;this.error(i,{code:"commander.excessArguments"})}unknownCommand(){let e=this.args[0],r="";if(this._showSuggestionAfterError){let o=[];this.createHelp().visibleCommands(this).forEach(i=>{o.push(i.name()),i.alias()&&o.push(i.alias())}),r=qy(e,o)}let n=`error: unknown command '${e}'${r}`;this.error(n,{code:"commander.unknownCommand"})}version(e,r,n){if(e===void 0)return this._version;this._version=e,r=r||"-V, --version",n=n||"output the version number";let o=this.createOption(r,n);return this._versionOptionName=o.attributeName(),this._registerOption(o),this.on("option:"+o.name(),()=>{this._outputConfiguration.writeOut(`${e}
|
|
25
25
|
`),this._exit(0,"commander.version",e)}),this}description(e,r){return e===void 0&&r===void 0?this._description:(this._description=e,r&&(this._argsDescription=r),this)}summary(e){return e===void 0?this._summary:(this._summary=e,this)}alias(e){if(e===void 0)return this._aliases[0];let r=this;if(this.commands.length!==0&&this.commands[this.commands.length-1]._executableHandler&&(r=this.commands[this.commands.length-1]),e===r._name)throw new Error("Command alias can't be the same as its name");let n=this.parent?._findCommand(e);if(n){let o=[n.name()].concat(n.aliases()).join("|");throw new Error(`cannot add alias '${e}' to command '${this.name()}' as already have command '${o}'`)}return r._aliases.push(e),this}aliases(e){return e===void 0?this._aliases:(e.forEach(r=>this.alias(r)),this)}usage(e){if(e===void 0){if(this._usage)return this._usage;let r=this.registeredArguments.map(n=>_2(n));return[].concat(this.options.length||this._helpOption!==null?"[options]":[],this.commands.length?"[command]":[],this.registeredArguments.length?r:[]).join(" ")}return this._usage=e,this}name(e){return e===void 0?this._name:(this._name=e,this)}helpGroup(e){return e===void 0?this._helpGroupHeading??"":(this._helpGroupHeading=e,this)}commandsGroup(e){return e===void 0?this._defaultCommandGroup??"":(this._defaultCommandGroup=e,this)}optionsGroup(e){return e===void 0?this._defaultOptionGroup??"":(this._defaultOptionGroup=e,this)}_initOptionGroup(e){this._defaultOptionGroup&&!e.helpGroupHeading&&e.helpGroup(this._defaultOptionGroup)}_initCommandGroup(e){this._defaultCommandGroup&&!e.helpGroup()&&e.helpGroup(this._defaultCommandGroup)}nameFromFilename(e){return this._name=en.basename(e,en.extname(e)),this}executableDir(e){return e===void 0?this._executableDir:(this._executableDir=e,this)}helpInformation(e){let r=this.createHelp(),n=this._getOutputContext(e);r.prepareContext({error:n.error,helpWidth:n.helpWidth,outputHasColors:n.hasColors});let o=r.formatHelp(this,r);return n.hasColors?o:this._outputConfiguration.stripColor(o)}_getOutputContext(e){e=e||{};let r=!!e.error,n,o,i;return r?(n=s=>this._outputConfiguration.writeErr(s),o=this._outputConfiguration.getErrHasColors(),i=this._outputConfiguration.getErrHelpWidth()):(n=s=>this._outputConfiguration.writeOut(s),o=this._outputConfiguration.getOutHasColors(),i=this._outputConfiguration.getOutHelpWidth()),{error:r,write:s=>(o||(s=this._outputConfiguration.stripColor(s)),n(s)),hasColors:o,helpWidth:i}}outputHelp(e){let r;typeof e=="function"&&(r=e,e=void 0);let n=this._getOutputContext(e),o={error:n.error,write:n.write,command:this};this._getCommandAndAncestors().reverse().forEach(a=>a.emit("beforeAllHelp",o)),this.emit("beforeHelp",o);let i=this.helpInformation({error:n.error});if(r&&(i=r(i),typeof i!="string"&&!Buffer.isBuffer(i)))throw new Error("outputHelp callback must return a string or a Buffer");n.write(i),this._getHelpOption()?.long&&this.emit(this._getHelpOption().long),this.emit("afterHelp",o),this._getCommandAndAncestors().forEach(a=>a.emit("afterAllHelp",o))}helpOption(e,r){return typeof e=="boolean"?(e?(this._helpOption===null&&(this._helpOption=void 0),this._defaultOptionGroup&&this._initOptionGroup(this._getHelpOption())):this._helpOption=null,this):(this._helpOption=this.createOption(e??"-h, --help",r??"display help for command"),(e||r)&&this._initOptionGroup(this._helpOption),this)}_getHelpOption(){return this._helpOption===void 0&&this.helpOption(void 0,void 0),this._helpOption}addHelpOption(e){return this._helpOption=e,this._initOptionGroup(e),this}help(e){this.outputHelp(e);let r=Number(Ae.exitCode??0);r===0&&e&&typeof e!="function"&&e.error&&(r=1),this._exit(r,"commander.help","(outputHelp)")}addHelpText(e,r){let n=["beforeAll","before","after","afterAll"];if(!n.includes(e))throw new Error(`Unexpected value for position to addHelpText.
|
|
26
26
|
Expecting one of '${n.join("', '")}'`);let o=`${e}Help`;return this.on(o,i=>{let a;typeof r=="function"?a=r({error:i.error,command:i.command}):a=r,a&&i.write(`${a}
|
|
27
|
-
`)}),this}_outputHelpIfRequested(e){let r=this._getHelpOption();r&&e.find(o=>r.is(o))&&(this.outputHelp(),this._exit(0,"commander.helpDisplayed","(outputHelp)"))}};function Hy(t){return t.map(e=>{if(!e.startsWith("--inspect"))return e;let r,n="127.0.0.1",o="9229",i;return(i=e.match(/^(--inspect(-brk)?)$/))!==null?r=i[1]:(i=e.match(/^(--inspect(-brk|-port)?)=([^:]+)$/))!==null?(r=i[1],/^\d+$/.test(i[3])?o=i[3]:n=i[3]):(i=e.match(/^(--inspect(-brk|-port)?)=([^:]+):(\d+)$/))!==null&&(r=i[1],n=i[3],o=i[4]),r&&o!=="0"?`${r}=${n}:${parseInt(o)+1}`:e})}function Jf(){if(Ae.env.NO_COLOR||Ae.env.FORCE_COLOR==="0"||Ae.env.FORCE_COLOR==="false")return!1;if(Ae.env.FORCE_COLOR||Ae.env.CLICOLOR_FORCE!==void 0)return!0}Xf.Command=Yf;Xf.useColor=Jf});var Wy=x(lr=>{var{Argument:zy}=iu(),{Command:Zf}=Vy(),{CommanderError:O2,InvalidArgumentError:Ky}=Ea(),{Help:F2}=qf(),{Option:Gy}=Kf();lr.program=new Zf;lr.createCommand=t=>new Zf(t);lr.createOption=(t,e)=>new Gy(t,e);lr.createArgument=(t,e)=>new zy(t,e);lr.Command=Zf;lr.Option=Gy;lr.Argument=zy;lr.Help=F2;lr.CommanderError=O2;lr.InvalidArgumentError=Ky;lr.InvalidOptionArgumentError=Ky});var ed=x((Nq,Jy)=>{"use strict";var Qf={to(t,e){return e?`\x1B[${e+1};${t+1}H`:`\x1B[${t+1}G`},move(t,e){let r="";return t<0?r+=`\x1B[${-t}D`:t>0&&(r+=`\x1B[${t}C`),e<0?r+=`\x1B[${-e}A`:e>0&&(r+=`\x1B[${e}B`),r},up:(t=1)=>`\x1B[${t}A`,down:(t=1)=>`\x1B[${t}B`,forward:(t=1)=>`\x1B[${t}C`,backward:(t=1)=>`\x1B[${t}D`,nextLine:(t=1)=>"\x1B[E".repeat(t),prevLine:(t=1)=>"\x1B[F".repeat(t),left:"\x1B[G",hide:"\x1B[?25l",show:"\x1B[?25h",save:"\x1B7",restore:"\x1B8"},P2={up:(t=1)=>"\x1B[S".repeat(t),down:(t=1)=>"\x1B[T".repeat(t)},$2={screen:"\x1B[2J",up:(t=1)=>"\x1B[1J".repeat(t),down:(t=1)=>"\x1B[J".repeat(t),line:"\x1B[2K",lineEnd:"\x1B[K",lineStart:"\x1B[1K",lines(t){let e="";for(let r=0;r<t;r++)e+=this.line+(r<t-1?Qf.up():"");return t&&(e+=Qf.left),e}};Jy.exports={cursor:Qf,scroll:P2,erase:$2,beep:"\x07"}});var rd=x((Lq,td)=>{var uu=process||{},Xy=uu.argv||[],su=uu.env||{},I2=!(su.NO_COLOR||Xy.includes("--no-color"))&&(!!su.FORCE_COLOR||Xy.includes("--color")||uu.platform==="win32"||(uu.stdout||{}).isTTY&&su.TERM!=="dumb"||!!su.CI),T2=(t,e,r=t)=>n=>{let o=""+n,i=o.indexOf(e,t.length);return~i?t+R2(o,e,r,i)+e:t+o+e},R2=(t,e,r,n)=>{let o="",i=0;do o+=t.substring(i,n)+r,i=n+e.length,n=t.indexOf(e,i);while(~n);return o+t.substring(i)},Zy=(t=I2)=>{let e=t?T2:()=>String;return{isColorSupported:t,reset:e("\x1B[0m","\x1B[0m"),bold:e("\x1B[1m","\x1B[22m","\x1B[22m\x1B[1m"),dim:e("\x1B[2m","\x1B[22m","\x1B[22m\x1B[2m"),italic:e("\x1B[3m","\x1B[23m"),underline:e("\x1B[4m","\x1B[24m"),inverse:e("\x1B[7m","\x1B[27m"),hidden:e("\x1B[8m","\x1B[28m"),strikethrough:e("\x1B[9m","\x1B[29m"),black:e("\x1B[30m","\x1B[39m"),red:e("\x1B[31m","\x1B[39m"),green:e("\x1B[32m","\x1B[39m"),yellow:e("\x1B[33m","\x1B[39m"),blue:e("\x1B[34m","\x1B[39m"),magenta:e("\x1B[35m","\x1B[39m"),cyan:e("\x1B[36m","\x1B[39m"),white:e("\x1B[37m","\x1B[39m"),gray:e("\x1B[90m","\x1B[39m"),bgBlack:e("\x1B[40m","\x1B[49m"),bgRed:e("\x1B[41m","\x1B[49m"),bgGreen:e("\x1B[42m","\x1B[49m"),bgYellow:e("\x1B[43m","\x1B[49m"),bgBlue:e("\x1B[44m","\x1B[49m"),bgMagenta:e("\x1B[45m","\x1B[49m"),bgCyan:e("\x1B[46m","\x1B[49m"),bgWhite:e("\x1B[47m","\x1B[49m"),blackBright:e("\x1B[90m","\x1B[39m"),redBright:e("\x1B[91m","\x1B[39m"),greenBright:e("\x1B[92m","\x1B[39m"),yellowBright:e("\x1B[93m","\x1B[39m"),blueBright:e("\x1B[94m","\x1B[39m"),magentaBright:e("\x1B[95m","\x1B[39m"),cyanBright:e("\x1B[96m","\x1B[39m"),whiteBright:e("\x1B[97m","\x1B[39m"),bgBlackBright:e("\x1B[100m","\x1B[49m"),bgRedBright:e("\x1B[101m","\x1B[49m"),bgGreenBright:e("\x1B[102m","\x1B[49m"),bgYellowBright:e("\x1B[103m","\x1B[49m"),bgBlueBright:e("\x1B[104m","\x1B[49m"),bgMagentaBright:e("\x1B[105m","\x1B[49m"),bgCyanBright:e("\x1B[106m","\x1B[49m"),bgWhiteBright:e("\x1B[107m","\x1B[49m")}};td.exports=Zy();td.exports.createColors=Zy});var yu=x(qt=>{"use strict";Object.defineProperty(qt,"__esModule",{value:!0});qt.isNXMonorepo=qt.isMonorepo=qt.findPackageRelativePathInMonorepo=qt.findPackagePath=qt.findNXMonorepoRoot=qt.findMonorepoRoot=void 0;var xa=require("node:fs"),_n=require("node:path");function gu(t){let e=(0,_n.join)(t,"package.json"),r=(0,_n.join)(t,"pnpm-workspace.yaml");if((0,xa.existsSync)(r)||(0,xa.existsSync)(e)&&JSON.parse((0,xa.readFileSync)(e,"utf-8")).workspaces)return t;let n=(0,_n.dirname)(t);if(n===t)throw new Error("Monorepo root not found");return gu(n)}qt.findMonorepoRoot=gu;function md(t){let e=(0,_n.join)(t,"nx.json");if((0,xa.existsSync)(e))return t;let r=(0,_n.dirname)(t);if(r===t)throw new Error("Monorepo root not found");return md(r)}qt.findNXMonorepoRoot=md;function gd(t,e,r){let n=(0,_n.join)(e,"node_modules",t);if((0,xa.existsSync)(n))return n;if(e===r)return null;let o=(0,_n.dirname)(e);return gd(t,o,r)}qt.findPackagePath=gd;function pk(t,e){let r=gu(e),n=gd(t,e,r);return n?(0,_n.relative)(e,n):null}qt.findPackageRelativePathInMonorepo=pk;function hk(t){try{return gu(t),!0}catch{return!1}}qt.isMonorepo=hk;function mk(t){try{return md(t),!0}catch{return!1}}qt.isNXMonorepo=mk});var be={};Qr(be,{__addDisposableResource:()=>t0,__assign:()=>_u,__asyncDelegator:()=>GD,__asyncGenerator:()=>KD,__asyncValues:()=>WD,__await:()=>Jo,__awaiter:()=>UD,__classPrivateFieldGet:()=>ZD,__classPrivateFieldIn:()=>e0,__classPrivateFieldSet:()=>QD,__createBinding:()=>xu,__decorate:()=>ID,__disposeResources:()=>r0,__esDecorate:()=>RD,__exportStar:()=>qD,__extends:()=>PD,__generator:()=>MD,__importDefault:()=>XD,__importStar:()=>JD,__makeTemplateObject:()=>YD,__metadata:()=>jD,__param:()=>TD,__propKey:()=>ND,__read:()=>Sd,__rest:()=>$D,__rewriteRelativeImportExtension:()=>n0,__runInitializers:()=>BD,__setFunctionName:()=>LD,__spread:()=>HD,__spreadArray:()=>zD,__spreadArrays:()=>VD,__values:()=>Su,default:()=>jk});function PD(t,e){if(typeof e!="function"&&e!==null)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");Ed(t,e);function r(){this.constructor=t}t.prototype=e===null?Object.create(e):(r.prototype=e.prototype,new r)}function $D(t,e){var r={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&e.indexOf(n)<0&&(r[n]=t[n]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var o=0,n=Object.getOwnPropertySymbols(t);o<n.length;o++)e.indexOf(n[o])<0&&Object.prototype.propertyIsEnumerable.call(t,n[o])&&(r[n[o]]=t[n[o]]);return r}function ID(t,e,r,n){var o=arguments.length,i=o<3?e:n===null?n=Object.getOwnPropertyDescriptor(e,r):n,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")i=Reflect.decorate(t,e,r,n);else for(var s=t.length-1;s>=0;s--)(a=t[s])&&(i=(o<3?a(i):o>3?a(e,r,i):a(e,r))||i);return o>3&&i&&Object.defineProperty(e,r,i),i}function TD(t,e){return function(r,n){e(r,n,t)}}function RD(t,e,r,n,o,i){function a(v){if(v!==void 0&&typeof v!="function")throw new TypeError("Function expected");return v}for(var s=n.kind,u=s==="getter"?"get":s==="setter"?"set":"value",c=!e&&t?n.static?t:t.prototype:null,f=e||(c?Object.getOwnPropertyDescriptor(c,n.name):{}),d,p=!1,h=r.length-1;h>=0;h--){var m={};for(var y in n)m[y]=y==="access"?{}:n[y];for(var y in n.access)m.access[y]=n.access[y];m.addInitializer=function(v){if(p)throw new TypeError("Cannot add initializers after decoration has completed");i.push(a(v||null))};var b=(0,r[h])(s==="accessor"?{get:f.get,set:f.set}:f[u],m);if(s==="accessor"){if(b===void 0)continue;if(b===null||typeof b!="object")throw new TypeError("Object expected");(d=a(b.get))&&(f.get=d),(d=a(b.set))&&(f.set=d),(d=a(b.init))&&o.unshift(d)}else(d=a(b))&&(s==="field"?o.unshift(d):f[u]=d)}c&&Object.defineProperty(c,n.name,f),p=!0}function BD(t,e,r){for(var n=arguments.length>2,o=0;o<e.length;o++)r=n?e[o].call(t,r):e[o].call(t);return n?r:void 0}function ND(t){return typeof t=="symbol"?t:"".concat(t)}function LD(t,e,r){return typeof e=="symbol"&&(e=e.description?"[".concat(e.description,"]"):""),Object.defineProperty(t,"name",{configurable:!0,value:r?"".concat(r," ",e):e})}function jD(t,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(t,e)}function UD(t,e,r,n){function o(i){return i instanceof r?i:new r(function(a){a(i)})}return new(r||(r=Promise))(function(i,a){function s(f){try{c(n.next(f))}catch(d){a(d)}}function u(f){try{c(n.throw(f))}catch(d){a(d)}}function c(f){f.done?i(f.value):o(f.value).then(s,u)}c((n=n.apply(t,e||[])).next())})}function MD(t,e){var r={label:0,sent:function(){if(i[0]&1)throw i[1];return i[1]},trys:[],ops:[]},n,o,i,a=Object.create((typeof Iterator=="function"?Iterator:Object).prototype);return a.next=s(0),a.throw=s(1),a.return=s(2),typeof Symbol=="function"&&(a[Symbol.iterator]=function(){return this}),a;function s(c){return function(f){return u([c,f])}}function u(c){if(n)throw new TypeError("Generator is already executing.");for(;a&&(a=0,c[0]&&(r=0)),r;)try{if(n=1,o&&(i=c[0]&2?o.return:c[0]?o.throw||((i=o.return)&&i.call(o),0):o.next)&&!(i=i.call(o,c[1])).done)return i;switch(o=0,i&&(c=[c[0]&2,i.value]),c[0]){case 0:case 1:i=c;break;case 4:return r.label++,{value:c[1],done:!1};case 5:r.label++,o=c[1],c=[0];continue;case 7:c=r.ops.pop(),r.trys.pop();continue;default:if(i=r.trys,!(i=i.length>0&&i[i.length-1])&&(c[0]===6||c[0]===2)){r=0;continue}if(c[0]===3&&(!i||c[1]>i[0]&&c[1]<i[3])){r.label=c[1];break}if(c[0]===6&&r.label<i[1]){r.label=i[1],i=c;break}if(i&&r.label<i[2]){r.label=i[2],r.ops.push(c);break}i[2]&&r.ops.pop(),r.trys.pop();continue}c=e.call(t,r)}catch(f){c=[6,f],o=0}finally{n=i=0}if(c[0]&5)throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}}function qD(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&xu(e,t,r)}function Su(t){var e=typeof Symbol=="function"&&Symbol.iterator,r=e&&t[e],n=0;if(r)return r.call(t);if(t&&typeof t.length=="number")return{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function Sd(t,e){var r=typeof Symbol=="function"&&t[Symbol.iterator];if(!r)return t;var n=r.call(t),o,i=[],a;try{for(;(e===void 0||e-- >0)&&!(o=n.next()).done;)i.push(o.value)}catch(s){a={error:s}}finally{try{o&&!o.done&&(r=n.return)&&r.call(n)}finally{if(a)throw a.error}}return i}function HD(){for(var t=[],e=0;e<arguments.length;e++)t=t.concat(Sd(arguments[e]));return t}function VD(){for(var t=0,e=0,r=arguments.length;e<r;e++)t+=arguments[e].length;for(var n=Array(t),o=0,e=0;e<r;e++)for(var i=arguments[e],a=0,s=i.length;a<s;a++,o++)n[o]=i[a];return n}function zD(t,e,r){if(r||arguments.length===2)for(var n=0,o=e.length,i;n<o;n++)(i||!(n in e))&&(i||(i=Array.prototype.slice.call(e,0,n)),i[n]=e[n]);return t.concat(i||Array.prototype.slice.call(e))}function Jo(t){return this instanceof Jo?(this.v=t,this):new Jo(t)}function KD(t,e,r){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var n=r.apply(t,e||[]),o,i=[];return o=Object.create((typeof AsyncIterator=="function"?AsyncIterator:Object).prototype),s("next"),s("throw"),s("return",a),o[Symbol.asyncIterator]=function(){return this},o;function a(h){return function(m){return Promise.resolve(m).then(h,d)}}function s(h,m){n[h]&&(o[h]=function(y){return new Promise(function(b,v){i.push([h,y,b,v])>1||u(h,y)})},m&&(o[h]=m(o[h])))}function u(h,m){try{c(n[h](m))}catch(y){p(i[0][3],y)}}function c(h){h.value instanceof Jo?Promise.resolve(h.value.v).then(f,d):p(i[0][2],h)}function f(h){u("next",h)}function d(h){u("throw",h)}function p(h,m){h(m),i.shift(),i.length&&u(i[0][0],i[0][1])}}function GD(t){var e,r;return e={},n("next"),n("throw",function(o){throw o}),n("return"),e[Symbol.iterator]=function(){return this},e;function n(o,i){e[o]=t[o]?function(a){return(r=!r)?{value:Jo(t[o](a)),done:!1}:i?i(a):a}:i}}function WD(t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e=t[Symbol.asyncIterator],r;return e?e.call(t):(t=typeof Su=="function"?Su(t):t[Symbol.iterator](),r={},n("next"),n("throw"),n("return"),r[Symbol.asyncIterator]=function(){return this},r);function n(i){r[i]=t[i]&&function(a){return new Promise(function(s,u){a=t[i](a),o(s,u,a.done,a.value)})}}function o(i,a,s,u){Promise.resolve(u).then(function(c){i({value:c,done:s})},a)}}function YD(t,e){return Object.defineProperty?Object.defineProperty(t,"raw",{value:e}):t.raw=e,t}function JD(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r=_d(t),n=0;n<r.length;n++)r[n]!=="default"&&xu(e,t,r[n]);return Nk(e,t),e}function XD(t){return t&&t.__esModule?t:{default:t}}function ZD(t,e,r,n){if(r==="a"&&!n)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?t!==e||!n:!e.has(t))throw new TypeError("Cannot read private member from an object whose class did not declare it");return r==="m"?n:r==="a"?n.call(t):n?n.value:e.get(t)}function QD(t,e,r,n,o){if(n==="m")throw new TypeError("Private method is not writable");if(n==="a"&&!o)throw new TypeError("Private accessor was defined without a setter");if(typeof e=="function"?t!==e||!o:!e.has(t))throw new TypeError("Cannot write private member to an object whose class did not declare it");return n==="a"?o.call(t,r):o?o.value=r:e.set(t,r),r}function e0(t,e){if(e===null||typeof e!="object"&&typeof e!="function")throw new TypeError("Cannot use 'in' operator on non-object");return typeof t=="function"?e===t:t.has(e)}function t0(t,e,r){if(e!=null){if(typeof e!="object"&&typeof e!="function")throw new TypeError("Object expected.");var n,o;if(r){if(!Symbol.asyncDispose)throw new TypeError("Symbol.asyncDispose is not defined.");n=e[Symbol.asyncDispose]}if(n===void 0){if(!Symbol.dispose)throw new TypeError("Symbol.dispose is not defined.");n=e[Symbol.dispose],r&&(o=n)}if(typeof n!="function")throw new TypeError("Object not disposable.");o&&(n=function(){try{o.call(this)}catch(i){return Promise.reject(i)}}),t.stack.push({value:e,dispose:n,async:r})}else r&&t.stack.push({async:!0});return e}function r0(t){function e(i){t.error=t.hasError?new Lk(i,t.error,"An error was suppressed during disposal."):i,t.hasError=!0}var r,n=0;function o(){for(;r=t.stack.pop();)try{if(!r.async&&n===1)return n=0,t.stack.push(r),Promise.resolve().then(o);if(r.dispose){var i=r.dispose.call(r.value);if(r.async)return n|=2,Promise.resolve(i).then(o,function(a){return e(a),o()})}else n|=1}catch(a){e(a)}if(n===1)return t.hasError?Promise.reject(t.error):Promise.resolve();if(t.hasError)throw t.error}return o()}function n0(t,e){return typeof t=="string"&&/^\.\.?\//.test(t)?t.replace(/\.(tsx)$|((?:\.d)?)((?:\.[^./]+?)?)\.([cm]?)ts$/i,function(r,n,o,i,a){return n?e?".jsx":".js":o&&(!i||!a)?r:o+i+"."+a.toLowerCase()+"js"}):t}var Ed,_u,xu,Nk,_d,Lk,jk,we=Qe(()=>{Ed=function(t,e){return Ed=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,n){r.__proto__=n}||function(r,n){for(var o in n)Object.prototype.hasOwnProperty.call(n,o)&&(r[o]=n[o])},Ed(t,e)};_u=function(){return _u=Object.assign||function(e){for(var r,n=1,o=arguments.length;n<o;n++){r=arguments[n];for(var i in r)Object.prototype.hasOwnProperty.call(r,i)&&(e[i]=r[i])}return e},_u.apply(this,arguments)};xu=Object.create?(function(t,e,r,n){n===void 0&&(n=r);var o=Object.getOwnPropertyDescriptor(e,r);(!o||("get"in o?!e.__esModule:o.writable||o.configurable))&&(o={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,o)}):(function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]});Nk=Object.create?(function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}):function(t,e){t.default=e},_d=function(t){return _d=Object.getOwnPropertyNames||function(e){var r=[];for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(r[r.length]=n);return r},_d(t)};Lk=typeof SuppressedError=="function"?SuppressedError:function(t,e,r){var n=new Error(r);return n.name="SuppressedError",n.error=t,n.suppressed=e,n};jk={__extends:PD,__assign:_u,__rest:$D,__decorate:ID,__param:TD,__esDecorate:RD,__runInitializers:BD,__propKey:ND,__setFunctionName:LD,__metadata:jD,__awaiter:UD,__generator:MD,__createBinding:xu,__exportStar:qD,__values:Su,__read:Sd,__spread:HD,__spreadArrays:VD,__spreadArray:zD,__await:Jo,__asyncGenerator:KD,__asyncDelegator:GD,__asyncValues:WD,__makeTemplateObject:YD,__importStar:JD,__importDefault:XD,__classPrivateFieldGet:ZD,__classPrivateFieldSet:QD,__classPrivateFieldIn:e0,__addDisposableResource:t0,__disposeResources:r0,__rewriteRelativeImportExtension:n0}});var o0=x(Au=>{"use strict";Object.defineProperty(Au,"__esModule",{value:!0});Au.resolveFetch=void 0;var Uk=t=>t?(...e)=>t(...e):(...e)=>fetch(...e);Au.resolveFetch=Uk});var Fd=x(dr=>{"use strict";Object.defineProperty(dr,"__esModule",{value:!0});dr.FunctionRegion=dr.FunctionsHttpError=dr.FunctionsRelayError=dr.FunctionsFetchError=dr.FunctionsError=void 0;var Xo=class extends Error{constructor(e,r="FunctionsError",n){super(e),this.name=r,this.context=n}};dr.FunctionsError=Xo;var xd=class extends Xo{constructor(e){super("Failed to send a request to the Edge Function","FunctionsFetchError",e)}};dr.FunctionsFetchError=xd;var Ad=class extends Xo{constructor(e){super("Relay Error invoking the Edge Function","FunctionsRelayError",e)}};dr.FunctionsRelayError=Ad;var Od=class extends Xo{constructor(e){super("Edge Function returned a non-2xx status code","FunctionsHttpError",e)}};dr.FunctionsHttpError=Od;var i0;(function(t){t.Any="any",t.ApNortheast1="ap-northeast-1",t.ApNortheast2="ap-northeast-2",t.ApSouth1="ap-south-1",t.ApSoutheast1="ap-southeast-1",t.ApSoutheast2="ap-southeast-2",t.CaCentral1="ca-central-1",t.EuCentral1="eu-central-1",t.EuWest1="eu-west-1",t.EuWest2="eu-west-2",t.EuWest3="eu-west-3",t.SaEast1="sa-east-1",t.UsEast1="us-east-1",t.UsWest1="us-west-1",t.UsWest2="us-west-2"})(i0||(dr.FunctionRegion=i0={}))});var a0=x(Ou=>{"use strict";Object.defineProperty(Ou,"__esModule",{value:!0});Ou.FunctionsClient=void 0;var Mk=(we(),ie(be)),qk=o0(),Zo=Fd(),kd=class{constructor(e,{headers:r={},customFetch:n,region:o=Zo.FunctionRegion.Any}={}){this.url=e,this.headers=r,this.region=o,this.fetch=(0,qk.resolveFetch)(n)}setAuth(e){this.headers.Authorization=`Bearer ${e}`}invoke(e){return Mk.__awaiter(this,arguments,void 0,function*(r,n={}){var o;let i,a;try{let{headers:s,method:u,body:c,signal:f,timeout:d}=n,p={},{region:h}=n;h||(h=this.region);let m=new URL(`${this.url}/${r}`);h&&h!=="any"&&(p["x-region"]=h,m.searchParams.set("forceFunctionRegion",h));let y;c&&(s&&!Object.prototype.hasOwnProperty.call(s,"Content-Type")||!s)?typeof Blob<"u"&&c instanceof Blob||c instanceof ArrayBuffer?(p["Content-Type"]="application/octet-stream",y=c):typeof c=="string"?(p["Content-Type"]="text/plain",y=c):typeof FormData<"u"&&c instanceof FormData?y=c:(p["Content-Type"]="application/json",y=JSON.stringify(c)):y=c;let b=f;d&&(a=new AbortController,i=setTimeout(()=>a.abort(),d),f?(b=a.signal,f.addEventListener("abort",()=>a.abort())):b=a.signal);let v=yield this.fetch(m.toString(),{method:u||"POST",headers:Object.assign(Object.assign(Object.assign({},p),this.headers),s),body:y,signal:b}).catch(S=>{throw new Zo.FunctionsFetchError(S)}),E=v.headers.get("x-relay-error");if(E&&E==="true")throw new Zo.FunctionsRelayError(v);if(!v.ok)throw new Zo.FunctionsHttpError(v);let g=((o=v.headers.get("Content-Type"))!==null&&o!==void 0?o:"text/plain").split(";")[0].trim(),_;return g==="application/json"?_=yield v.json():g==="application/octet-stream"||g==="application/pdf"?_=yield v.blob():g==="text/event-stream"?_=v:g==="multipart/form-data"?_=yield v.formData():_=yield v.text(),{data:_,error:null,response:v}}catch(s){return{data:null,error:s,response:s instanceof Zo.FunctionsHttpError||s instanceof Zo.FunctionsRelayError?s.context:void 0}}finally{i&&clearTimeout(i)}})}};Ou.FunctionsClient=kd});var Pd=x(Vt=>{"use strict";Object.defineProperty(Vt,"__esModule",{value:!0});Vt.FunctionRegion=Vt.FunctionsRelayError=Vt.FunctionsHttpError=Vt.FunctionsFetchError=Vt.FunctionsError=Vt.FunctionsClient=void 0;var Hk=a0();Object.defineProperty(Vt,"FunctionsClient",{enumerable:!0,get:function(){return Hk.FunctionsClient}});var ka=Fd();Object.defineProperty(Vt,"FunctionsError",{enumerable:!0,get:function(){return ka.FunctionsError}});Object.defineProperty(Vt,"FunctionsFetchError",{enumerable:!0,get:function(){return ka.FunctionsFetchError}});Object.defineProperty(Vt,"FunctionsHttpError",{enumerable:!0,get:function(){return ka.FunctionsHttpError}});Object.defineProperty(Vt,"FunctionsRelayError",{enumerable:!0,get:function(){return ka.FunctionsRelayError}});Object.defineProperty(Vt,"FunctionRegion",{enumerable:!0,get:function(){return ka.FunctionRegion}})});var Td=x(Id=>{"use strict";Object.defineProperty(Id,"__esModule",{value:!0});var $d=class extends Error{constructor(e){super(e.message),this.name="PostgrestError",this.details=e.details,this.hint=e.hint,this.code=e.code}};Id.default=$d});var Nd=x(Bd=>{"use strict";Object.defineProperty(Bd,"__esModule",{value:!0});var Vk=(we(),ie(be)),zk=Vk.__importDefault(Td()),Rd=class{constructor(e){var r,n;this.shouldThrowOnError=!1,this.method=e.method,this.url=e.url,this.headers=new Headers(e.headers),this.schema=e.schema,this.body=e.body,this.shouldThrowOnError=(r=e.shouldThrowOnError)!==null&&r!==void 0?r:!1,this.signal=e.signal,this.isMaybeSingle=(n=e.isMaybeSingle)!==null&&n!==void 0?n:!1,e.fetch?this.fetch=e.fetch:this.fetch=fetch}throwOnError(){return this.shouldThrowOnError=!0,this}setHeader(e,r){return this.headers=new Headers(this.headers),this.headers.set(e,r),this}then(e,r){this.schema===void 0||(["GET","HEAD"].includes(this.method)?this.headers.set("Accept-Profile",this.schema):this.headers.set("Content-Profile",this.schema)),this.method!=="GET"&&this.method!=="HEAD"&&this.headers.set("Content-Type","application/json");let n=this.fetch,o=n(this.url.toString(),{method:this.method,headers:this.headers,body:JSON.stringify(this.body),signal:this.signal}).then(async i=>{var a,s,u,c;let f=null,d=null,p=null,h=i.status,m=i.statusText;if(i.ok){if(this.method!=="HEAD"){let E=await i.text();E===""||(this.headers.get("Accept")==="text/csv"||this.headers.get("Accept")&&(!((a=this.headers.get("Accept"))===null||a===void 0)&&a.includes("application/vnd.pgrst.plan+text"))?d=E:d=JSON.parse(E))}let b=(s=this.headers.get("Prefer"))===null||s===void 0?void 0:s.match(/count=(exact|planned|estimated)/),v=(u=i.headers.get("content-range"))===null||u===void 0?void 0:u.split("/");b&&v&&v.length>1&&(p=parseInt(v[1])),this.isMaybeSingle&&this.method==="GET"&&Array.isArray(d)&&(d.length>1?(f={code:"PGRST116",details:`Results contain ${d.length} rows, application/vnd.pgrst.object+json requires 1 row`,hint:null,message:"JSON object requested, multiple (or no) rows returned"},d=null,p=null,h=406,m="Not Acceptable"):d.length===1?d=d[0]:d=null)}else{let b=await i.text();try{f=JSON.parse(b),Array.isArray(f)&&i.status===404&&(d=[],f=null,h=200,m="OK")}catch{i.status===404&&b===""?(h=204,m="No Content"):f={message:b}}if(f&&this.isMaybeSingle&&(!((c=f?.details)===null||c===void 0)&&c.includes("0 rows"))&&(f=null,h=200,m="OK"),f&&this.shouldThrowOnError)throw new zk.default(f)}return{error:f,data:d,count:p,status:h,statusText:m}});return this.shouldThrowOnError||(o=o.catch(i=>{var a,s,u,c,f,d;let p="",h=i?.cause;if(h){let m=(a=h?.message)!==null&&a!==void 0?a:"",y=(s=h?.code)!==null&&s!==void 0?s:"";p=`${(u=i?.name)!==null&&u!==void 0?u:"FetchError"}: ${i?.message}`,p+=`
|
|
27
|
+
`)}),this}_outputHelpIfRequested(e){let r=this._getHelpOption();r&&e.find(o=>r.is(o))&&(this.outputHelp(),this._exit(0,"commander.helpDisplayed","(outputHelp)"))}};function Hy(t){return t.map(e=>{if(!e.startsWith("--inspect"))return e;let r,n="127.0.0.1",o="9229",i;return(i=e.match(/^(--inspect(-brk)?)$/))!==null?r=i[1]:(i=e.match(/^(--inspect(-brk|-port)?)=([^:]+)$/))!==null?(r=i[1],/^\d+$/.test(i[3])?o=i[3]:n=i[3]):(i=e.match(/^(--inspect(-brk|-port)?)=([^:]+):(\d+)$/))!==null&&(r=i[1],n=i[3],o=i[4]),r&&o!=="0"?`${r}=${n}:${parseInt(o)+1}`:e})}function Jf(){if(Ae.env.NO_COLOR||Ae.env.FORCE_COLOR==="0"||Ae.env.FORCE_COLOR==="false")return!1;if(Ae.env.FORCE_COLOR||Ae.env.CLICOLOR_FORCE!==void 0)return!0}Xf.Command=Yf;Xf.useColor=Jf});var Wy=x(lr=>{var{Argument:zy}=iu(),{Command:Zf}=Vy(),{CommanderError:O2,InvalidArgumentError:Ky}=Ea(),{Help:F2}=qf(),{Option:Gy}=Kf();lr.program=new Zf;lr.createCommand=t=>new Zf(t);lr.createOption=(t,e)=>new Gy(t,e);lr.createArgument=(t,e)=>new zy(t,e);lr.Command=Zf;lr.Option=Gy;lr.Argument=zy;lr.Help=F2;lr.CommanderError=O2;lr.InvalidArgumentError=Ky;lr.InvalidOptionArgumentError=Ky});var ed=x((Nq,Jy)=>{"use strict";var Qf={to(t,e){return e?`\x1B[${e+1};${t+1}H`:`\x1B[${t+1}G`},move(t,e){let r="";return t<0?r+=`\x1B[${-t}D`:t>0&&(r+=`\x1B[${t}C`),e<0?r+=`\x1B[${-e}A`:e>0&&(r+=`\x1B[${e}B`),r},up:(t=1)=>`\x1B[${t}A`,down:(t=1)=>`\x1B[${t}B`,forward:(t=1)=>`\x1B[${t}C`,backward:(t=1)=>`\x1B[${t}D`,nextLine:(t=1)=>"\x1B[E".repeat(t),prevLine:(t=1)=>"\x1B[F".repeat(t),left:"\x1B[G",hide:"\x1B[?25l",show:"\x1B[?25h",save:"\x1B7",restore:"\x1B8"},P2={up:(t=1)=>"\x1B[S".repeat(t),down:(t=1)=>"\x1B[T".repeat(t)},$2={screen:"\x1B[2J",up:(t=1)=>"\x1B[1J".repeat(t),down:(t=1)=>"\x1B[J".repeat(t),line:"\x1B[2K",lineEnd:"\x1B[K",lineStart:"\x1B[1K",lines(t){let e="";for(let r=0;r<t;r++)e+=this.line+(r<t-1?Qf.up():"");return t&&(e+=Qf.left),e}};Jy.exports={cursor:Qf,scroll:P2,erase:$2,beep:"\x07"}});var rd=x((Lq,td)=>{var uu=process||{},Xy=uu.argv||[],su=uu.env||{},I2=!(su.NO_COLOR||Xy.includes("--no-color"))&&(!!su.FORCE_COLOR||Xy.includes("--color")||uu.platform==="win32"||(uu.stdout||{}).isTTY&&su.TERM!=="dumb"||!!su.CI),T2=(t,e,r=t)=>n=>{let o=""+n,i=o.indexOf(e,t.length);return~i?t+R2(o,e,r,i)+e:t+o+e},R2=(t,e,r,n)=>{let o="",i=0;do o+=t.substring(i,n)+r,i=n+e.length,n=t.indexOf(e,i);while(~n);return o+t.substring(i)},Zy=(t=I2)=>{let e=t?T2:()=>String;return{isColorSupported:t,reset:e("\x1B[0m","\x1B[0m"),bold:e("\x1B[1m","\x1B[22m","\x1B[22m\x1B[1m"),dim:e("\x1B[2m","\x1B[22m","\x1B[22m\x1B[2m"),italic:e("\x1B[3m","\x1B[23m"),underline:e("\x1B[4m","\x1B[24m"),inverse:e("\x1B[7m","\x1B[27m"),hidden:e("\x1B[8m","\x1B[28m"),strikethrough:e("\x1B[9m","\x1B[29m"),black:e("\x1B[30m","\x1B[39m"),red:e("\x1B[31m","\x1B[39m"),green:e("\x1B[32m","\x1B[39m"),yellow:e("\x1B[33m","\x1B[39m"),blue:e("\x1B[34m","\x1B[39m"),magenta:e("\x1B[35m","\x1B[39m"),cyan:e("\x1B[36m","\x1B[39m"),white:e("\x1B[37m","\x1B[39m"),gray:e("\x1B[90m","\x1B[39m"),bgBlack:e("\x1B[40m","\x1B[49m"),bgRed:e("\x1B[41m","\x1B[49m"),bgGreen:e("\x1B[42m","\x1B[49m"),bgYellow:e("\x1B[43m","\x1B[49m"),bgBlue:e("\x1B[44m","\x1B[49m"),bgMagenta:e("\x1B[45m","\x1B[49m"),bgCyan:e("\x1B[46m","\x1B[49m"),bgWhite:e("\x1B[47m","\x1B[49m"),blackBright:e("\x1B[90m","\x1B[39m"),redBright:e("\x1B[91m","\x1B[39m"),greenBright:e("\x1B[92m","\x1B[39m"),yellowBright:e("\x1B[93m","\x1B[39m"),blueBright:e("\x1B[94m","\x1B[39m"),magentaBright:e("\x1B[95m","\x1B[39m"),cyanBright:e("\x1B[96m","\x1B[39m"),whiteBright:e("\x1B[97m","\x1B[39m"),bgBlackBright:e("\x1B[100m","\x1B[49m"),bgRedBright:e("\x1B[101m","\x1B[49m"),bgGreenBright:e("\x1B[102m","\x1B[49m"),bgYellowBright:e("\x1B[103m","\x1B[49m"),bgBlueBright:e("\x1B[104m","\x1B[49m"),bgMagentaBright:e("\x1B[105m","\x1B[49m"),bgCyanBright:e("\x1B[106m","\x1B[49m"),bgWhiteBright:e("\x1B[107m","\x1B[49m")}};td.exports=Zy();td.exports.createColors=Zy});var yu=x(qt=>{"use strict";Object.defineProperty(qt,"__esModule",{value:!0});qt.isNXMonorepo=qt.isMonorepo=qt.findPackageRelativePathInMonorepo=qt.findPackagePath=qt.findNXMonorepoRoot=qt.findMonorepoRoot=void 0;var xa=require("node:fs"),_n=require("node:path");function gu(t){let e=(0,_n.join)(t,"package.json"),r=(0,_n.join)(t,"pnpm-workspace.yaml");if((0,xa.existsSync)(r)||(0,xa.existsSync)(e)&&JSON.parse((0,xa.readFileSync)(e,"utf-8")).workspaces)return t;let n=(0,_n.dirname)(t);if(n===t)throw new Error("Monorepo root not found");return gu(n)}qt.findMonorepoRoot=gu;function md(t){let e=(0,_n.join)(t,"nx.json");if((0,xa.existsSync)(e))return t;let r=(0,_n.dirname)(t);if(r===t)throw new Error("Monorepo root not found");return md(r)}qt.findNXMonorepoRoot=md;function gd(t,e,r){let n=(0,_n.join)(e,"node_modules",t);if((0,xa.existsSync)(n))return n;if(e===r)return null;let o=(0,_n.dirname)(e);return gd(t,o,r)}qt.findPackagePath=gd;function pk(t,e){let r=gu(e),n=gd(t,e,r);return n?(0,_n.relative)(e,n):null}qt.findPackageRelativePathInMonorepo=pk;function hk(t){try{return gu(t),!0}catch{return!1}}qt.isMonorepo=hk;function mk(t){try{return md(t),!0}catch{return!1}}qt.isNXMonorepo=mk});var be={};Qr(be,{__addDisposableResource:()=>t0,__assign:()=>_u,__asyncDelegator:()=>GD,__asyncGenerator:()=>KD,__asyncValues:()=>WD,__await:()=>Jo,__awaiter:()=>UD,__classPrivateFieldGet:()=>ZD,__classPrivateFieldIn:()=>e0,__classPrivateFieldSet:()=>QD,__createBinding:()=>xu,__decorate:()=>ID,__disposeResources:()=>r0,__esDecorate:()=>RD,__exportStar:()=>qD,__extends:()=>PD,__generator:()=>MD,__importDefault:()=>XD,__importStar:()=>JD,__makeTemplateObject:()=>YD,__metadata:()=>jD,__param:()=>TD,__propKey:()=>ND,__read:()=>Sd,__rest:()=>$D,__rewriteRelativeImportExtension:()=>n0,__runInitializers:()=>BD,__setFunctionName:()=>LD,__spread:()=>HD,__spreadArray:()=>zD,__spreadArrays:()=>VD,__values:()=>Su,default:()=>jk});function PD(t,e){if(typeof e!="function"&&e!==null)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");Ed(t,e);function r(){this.constructor=t}t.prototype=e===null?Object.create(e):(r.prototype=e.prototype,new r)}function $D(t,e){var r={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&e.indexOf(n)<0&&(r[n]=t[n]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var o=0,n=Object.getOwnPropertySymbols(t);o<n.length;o++)e.indexOf(n[o])<0&&Object.prototype.propertyIsEnumerable.call(t,n[o])&&(r[n[o]]=t[n[o]]);return r}function ID(t,e,r,n){var o=arguments.length,i=o<3?e:n===null?n=Object.getOwnPropertyDescriptor(e,r):n,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")i=Reflect.decorate(t,e,r,n);else for(var s=t.length-1;s>=0;s--)(a=t[s])&&(i=(o<3?a(i):o>3?a(e,r,i):a(e,r))||i);return o>3&&i&&Object.defineProperty(e,r,i),i}function TD(t,e){return function(r,n){e(r,n,t)}}function RD(t,e,r,n,o,i){function a(v){if(v!==void 0&&typeof v!="function")throw new TypeError("Function expected");return v}for(var s=n.kind,u=s==="getter"?"get":s==="setter"?"set":"value",c=!e&&t?n.static?t:t.prototype:null,f=e||(c?Object.getOwnPropertyDescriptor(c,n.name):{}),d,p=!1,h=r.length-1;h>=0;h--){var m={};for(var y in n)m[y]=y==="access"?{}:n[y];for(var y in n.access)m.access[y]=n.access[y];m.addInitializer=function(v){if(p)throw new TypeError("Cannot add initializers after decoration has completed");i.push(a(v||null))};var b=(0,r[h])(s==="accessor"?{get:f.get,set:f.set}:f[u],m);if(s==="accessor"){if(b===void 0)continue;if(b===null||typeof b!="object")throw new TypeError("Object expected");(d=a(b.get))&&(f.get=d),(d=a(b.set))&&(f.set=d),(d=a(b.init))&&o.unshift(d)}else(d=a(b))&&(s==="field"?o.unshift(d):f[u]=d)}c&&Object.defineProperty(c,n.name,f),p=!0}function BD(t,e,r){for(var n=arguments.length>2,o=0;o<e.length;o++)r=n?e[o].call(t,r):e[o].call(t);return n?r:void 0}function ND(t){return typeof t=="symbol"?t:"".concat(t)}function LD(t,e,r){return typeof e=="symbol"&&(e=e.description?"[".concat(e.description,"]"):""),Object.defineProperty(t,"name",{configurable:!0,value:r?"".concat(r," ",e):e})}function jD(t,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(t,e)}function UD(t,e,r,n){function o(i){return i instanceof r?i:new r(function(a){a(i)})}return new(r||(r=Promise))(function(i,a){function s(f){try{c(n.next(f))}catch(d){a(d)}}function u(f){try{c(n.throw(f))}catch(d){a(d)}}function c(f){f.done?i(f.value):o(f.value).then(s,u)}c((n=n.apply(t,e||[])).next())})}function MD(t,e){var r={label:0,sent:function(){if(i[0]&1)throw i[1];return i[1]},trys:[],ops:[]},n,o,i,a=Object.create((typeof Iterator=="function"?Iterator:Object).prototype);return a.next=s(0),a.throw=s(1),a.return=s(2),typeof Symbol=="function"&&(a[Symbol.iterator]=function(){return this}),a;function s(c){return function(f){return u([c,f])}}function u(c){if(n)throw new TypeError("Generator is already executing.");for(;a&&(a=0,c[0]&&(r=0)),r;)try{if(n=1,o&&(i=c[0]&2?o.return:c[0]?o.throw||((i=o.return)&&i.call(o),0):o.next)&&!(i=i.call(o,c[1])).done)return i;switch(o=0,i&&(c=[c[0]&2,i.value]),c[0]){case 0:case 1:i=c;break;case 4:return r.label++,{value:c[1],done:!1};case 5:r.label++,o=c[1],c=[0];continue;case 7:c=r.ops.pop(),r.trys.pop();continue;default:if(i=r.trys,!(i=i.length>0&&i[i.length-1])&&(c[0]===6||c[0]===2)){r=0;continue}if(c[0]===3&&(!i||c[1]>i[0]&&c[1]<i[3])){r.label=c[1];break}if(c[0]===6&&r.label<i[1]){r.label=i[1],i=c;break}if(i&&r.label<i[2]){r.label=i[2],r.ops.push(c);break}i[2]&&r.ops.pop(),r.trys.pop();continue}c=e.call(t,r)}catch(f){c=[6,f],o=0}finally{n=i=0}if(c[0]&5)throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}}function qD(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&xu(e,t,r)}function Su(t){var e=typeof Symbol=="function"&&Symbol.iterator,r=e&&t[e],n=0;if(r)return r.call(t);if(t&&typeof t.length=="number")return{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function Sd(t,e){var r=typeof Symbol=="function"&&t[Symbol.iterator];if(!r)return t;var n=r.call(t),o,i=[],a;try{for(;(e===void 0||e-- >0)&&!(o=n.next()).done;)i.push(o.value)}catch(s){a={error:s}}finally{try{o&&!o.done&&(r=n.return)&&r.call(n)}finally{if(a)throw a.error}}return i}function HD(){for(var t=[],e=0;e<arguments.length;e++)t=t.concat(Sd(arguments[e]));return t}function VD(){for(var t=0,e=0,r=arguments.length;e<r;e++)t+=arguments[e].length;for(var n=Array(t),o=0,e=0;e<r;e++)for(var i=arguments[e],a=0,s=i.length;a<s;a++,o++)n[o]=i[a];return n}function zD(t,e,r){if(r||arguments.length===2)for(var n=0,o=e.length,i;n<o;n++)(i||!(n in e))&&(i||(i=Array.prototype.slice.call(e,0,n)),i[n]=e[n]);return t.concat(i||Array.prototype.slice.call(e))}function Jo(t){return this instanceof Jo?(this.v=t,this):new Jo(t)}function KD(t,e,r){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var n=r.apply(t,e||[]),o,i=[];return o=Object.create((typeof AsyncIterator=="function"?AsyncIterator:Object).prototype),s("next"),s("throw"),s("return",a),o[Symbol.asyncIterator]=function(){return this},o;function a(h){return function(m){return Promise.resolve(m).then(h,d)}}function s(h,m){n[h]&&(o[h]=function(y){return new Promise(function(b,v){i.push([h,y,b,v])>1||u(h,y)})},m&&(o[h]=m(o[h])))}function u(h,m){try{c(n[h](m))}catch(y){p(i[0][3],y)}}function c(h){h.value instanceof Jo?Promise.resolve(h.value.v).then(f,d):p(i[0][2],h)}function f(h){u("next",h)}function d(h){u("throw",h)}function p(h,m){h(m),i.shift(),i.length&&u(i[0][0],i[0][1])}}function GD(t){var e,r;return e={},n("next"),n("throw",function(o){throw o}),n("return"),e[Symbol.iterator]=function(){return this},e;function n(o,i){e[o]=t[o]?function(a){return(r=!r)?{value:Jo(t[o](a)),done:!1}:i?i(a):a}:i}}function WD(t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e=t[Symbol.asyncIterator],r;return e?e.call(t):(t=typeof Su=="function"?Su(t):t[Symbol.iterator](),r={},n("next"),n("throw"),n("return"),r[Symbol.asyncIterator]=function(){return this},r);function n(i){r[i]=t[i]&&function(a){return new Promise(function(s,u){a=t[i](a),o(s,u,a.done,a.value)})}}function o(i,a,s,u){Promise.resolve(u).then(function(c){i({value:c,done:s})},a)}}function YD(t,e){return Object.defineProperty?Object.defineProperty(t,"raw",{value:e}):t.raw=e,t}function JD(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r=_d(t),n=0;n<r.length;n++)r[n]!=="default"&&xu(e,t,r[n]);return Nk(e,t),e}function XD(t){return t&&t.__esModule?t:{default:t}}function ZD(t,e,r,n){if(r==="a"&&!n)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?t!==e||!n:!e.has(t))throw new TypeError("Cannot read private member from an object whose class did not declare it");return r==="m"?n:r==="a"?n.call(t):n?n.value:e.get(t)}function QD(t,e,r,n,o){if(n==="m")throw new TypeError("Private method is not writable");if(n==="a"&&!o)throw new TypeError("Private accessor was defined without a setter");if(typeof e=="function"?t!==e||!o:!e.has(t))throw new TypeError("Cannot write private member to an object whose class did not declare it");return n==="a"?o.call(t,r):o?o.value=r:e.set(t,r),r}function e0(t,e){if(e===null||typeof e!="object"&&typeof e!="function")throw new TypeError("Cannot use 'in' operator on non-object");return typeof t=="function"?e===t:t.has(e)}function t0(t,e,r){if(e!=null){if(typeof e!="object"&&typeof e!="function")throw new TypeError("Object expected.");var n,o;if(r){if(!Symbol.asyncDispose)throw new TypeError("Symbol.asyncDispose is not defined.");n=e[Symbol.asyncDispose]}if(n===void 0){if(!Symbol.dispose)throw new TypeError("Symbol.dispose is not defined.");n=e[Symbol.dispose],r&&(o=n)}if(typeof n!="function")throw new TypeError("Object not disposable.");o&&(n=function(){try{o.call(this)}catch(i){return Promise.reject(i)}}),t.stack.push({value:e,dispose:n,async:r})}else r&&t.stack.push({async:!0});return e}function r0(t){function e(i){t.error=t.hasError?new Lk(i,t.error,"An error was suppressed during disposal."):i,t.hasError=!0}var r,n=0;function o(){for(;r=t.stack.pop();)try{if(!r.async&&n===1)return n=0,t.stack.push(r),Promise.resolve().then(o);if(r.dispose){var i=r.dispose.call(r.value);if(r.async)return n|=2,Promise.resolve(i).then(o,function(a){return e(a),o()})}else n|=1}catch(a){e(a)}if(n===1)return t.hasError?Promise.reject(t.error):Promise.resolve();if(t.hasError)throw t.error}return o()}function n0(t,e){return typeof t=="string"&&/^\.\.?\//.test(t)?t.replace(/\.(tsx)$|((?:\.d)?)((?:\.[^./]+?)?)\.([cm]?)ts$/i,function(r,n,o,i,a){return n?e?".jsx":".js":o&&(!i||!a)?r:o+i+"."+a.toLowerCase()+"js"}):t}var Ed,_u,xu,Nk,_d,Lk,jk,we=Qe(()=>{Ed=function(t,e){return Ed=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,n){r.__proto__=n}||function(r,n){for(var o in n)Object.prototype.hasOwnProperty.call(n,o)&&(r[o]=n[o])},Ed(t,e)};_u=function(){return _u=Object.assign||function(e){for(var r,n=1,o=arguments.length;n<o;n++){r=arguments[n];for(var i in r)Object.prototype.hasOwnProperty.call(r,i)&&(e[i]=r[i])}return e},_u.apply(this,arguments)};xu=Object.create?(function(t,e,r,n){n===void 0&&(n=r);var o=Object.getOwnPropertyDescriptor(e,r);(!o||("get"in o?!e.__esModule:o.writable||o.configurable))&&(o={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,o)}):(function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]});Nk=Object.create?(function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}):function(t,e){t.default=e},_d=function(t){return _d=Object.getOwnPropertyNames||function(e){var r=[];for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(r[r.length]=n);return r},_d(t)};Lk=typeof SuppressedError=="function"?SuppressedError:function(t,e,r){var n=new Error(r);return n.name="SuppressedError",n.error=t,n.suppressed=e,n};jk={__extends:PD,__assign:_u,__rest:$D,__decorate:ID,__param:TD,__esDecorate:RD,__runInitializers:BD,__propKey:ND,__setFunctionName:LD,__metadata:jD,__awaiter:UD,__generator:MD,__createBinding:xu,__exportStar:qD,__values:Su,__read:Sd,__spread:HD,__spreadArrays:VD,__spreadArray:zD,__await:Jo,__asyncGenerator:KD,__asyncDelegator:GD,__asyncValues:WD,__makeTemplateObject:YD,__importStar:JD,__importDefault:XD,__classPrivateFieldGet:ZD,__classPrivateFieldSet:QD,__classPrivateFieldIn:e0,__addDisposableResource:t0,__disposeResources:r0,__rewriteRelativeImportExtension:n0}});var o0=x(Au=>{"use strict";Object.defineProperty(Au,"__esModule",{value:!0});Au.resolveFetch=void 0;var Uk=t=>t?(...e)=>t(...e):(...e)=>fetch(...e);Au.resolveFetch=Uk});var Fd=x(pr=>{"use strict";Object.defineProperty(pr,"__esModule",{value:!0});pr.FunctionRegion=pr.FunctionsHttpError=pr.FunctionsRelayError=pr.FunctionsFetchError=pr.FunctionsError=void 0;var Xo=class extends Error{constructor(e,r="FunctionsError",n){super(e),this.name=r,this.context=n}};pr.FunctionsError=Xo;var xd=class extends Xo{constructor(e){super("Failed to send a request to the Edge Function","FunctionsFetchError",e)}};pr.FunctionsFetchError=xd;var Ad=class extends Xo{constructor(e){super("Relay Error invoking the Edge Function","FunctionsRelayError",e)}};pr.FunctionsRelayError=Ad;var Od=class extends Xo{constructor(e){super("Edge Function returned a non-2xx status code","FunctionsHttpError",e)}};pr.FunctionsHttpError=Od;var i0;(function(t){t.Any="any",t.ApNortheast1="ap-northeast-1",t.ApNortheast2="ap-northeast-2",t.ApSouth1="ap-south-1",t.ApSoutheast1="ap-southeast-1",t.ApSoutheast2="ap-southeast-2",t.CaCentral1="ca-central-1",t.EuCentral1="eu-central-1",t.EuWest1="eu-west-1",t.EuWest2="eu-west-2",t.EuWest3="eu-west-3",t.SaEast1="sa-east-1",t.UsEast1="us-east-1",t.UsWest1="us-west-1",t.UsWest2="us-west-2"})(i0||(pr.FunctionRegion=i0={}))});var a0=x(Ou=>{"use strict";Object.defineProperty(Ou,"__esModule",{value:!0});Ou.FunctionsClient=void 0;var Mk=(we(),ie(be)),qk=o0(),Zo=Fd(),kd=class{constructor(e,{headers:r={},customFetch:n,region:o=Zo.FunctionRegion.Any}={}){this.url=e,this.headers=r,this.region=o,this.fetch=(0,qk.resolveFetch)(n)}setAuth(e){this.headers.Authorization=`Bearer ${e}`}invoke(e){return Mk.__awaiter(this,arguments,void 0,function*(r,n={}){var o;let i,a;try{let{headers:s,method:u,body:c,signal:f,timeout:d}=n,p={},{region:h}=n;h||(h=this.region);let m=new URL(`${this.url}/${r}`);h&&h!=="any"&&(p["x-region"]=h,m.searchParams.set("forceFunctionRegion",h));let y;c&&(s&&!Object.prototype.hasOwnProperty.call(s,"Content-Type")||!s)?typeof Blob<"u"&&c instanceof Blob||c instanceof ArrayBuffer?(p["Content-Type"]="application/octet-stream",y=c):typeof c=="string"?(p["Content-Type"]="text/plain",y=c):typeof FormData<"u"&&c instanceof FormData?y=c:(p["Content-Type"]="application/json",y=JSON.stringify(c)):y=c;let b=f;d&&(a=new AbortController,i=setTimeout(()=>a.abort(),d),f?(b=a.signal,f.addEventListener("abort",()=>a.abort())):b=a.signal);let v=yield this.fetch(m.toString(),{method:u||"POST",headers:Object.assign(Object.assign(Object.assign({},p),this.headers),s),body:y,signal:b}).catch(S=>{throw new Zo.FunctionsFetchError(S)}),E=v.headers.get("x-relay-error");if(E&&E==="true")throw new Zo.FunctionsRelayError(v);if(!v.ok)throw new Zo.FunctionsHttpError(v);let g=((o=v.headers.get("Content-Type"))!==null&&o!==void 0?o:"text/plain").split(";")[0].trim(),_;return g==="application/json"?_=yield v.json():g==="application/octet-stream"||g==="application/pdf"?_=yield v.blob():g==="text/event-stream"?_=v:g==="multipart/form-data"?_=yield v.formData():_=yield v.text(),{data:_,error:null,response:v}}catch(s){return{data:null,error:s,response:s instanceof Zo.FunctionsHttpError||s instanceof Zo.FunctionsRelayError?s.context:void 0}}finally{i&&clearTimeout(i)}})}};Ou.FunctionsClient=kd});var Pd=x(Vt=>{"use strict";Object.defineProperty(Vt,"__esModule",{value:!0});Vt.FunctionRegion=Vt.FunctionsRelayError=Vt.FunctionsHttpError=Vt.FunctionsFetchError=Vt.FunctionsError=Vt.FunctionsClient=void 0;var Hk=a0();Object.defineProperty(Vt,"FunctionsClient",{enumerable:!0,get:function(){return Hk.FunctionsClient}});var ka=Fd();Object.defineProperty(Vt,"FunctionsError",{enumerable:!0,get:function(){return ka.FunctionsError}});Object.defineProperty(Vt,"FunctionsFetchError",{enumerable:!0,get:function(){return ka.FunctionsFetchError}});Object.defineProperty(Vt,"FunctionsHttpError",{enumerable:!0,get:function(){return ka.FunctionsHttpError}});Object.defineProperty(Vt,"FunctionsRelayError",{enumerable:!0,get:function(){return ka.FunctionsRelayError}});Object.defineProperty(Vt,"FunctionRegion",{enumerable:!0,get:function(){return ka.FunctionRegion}})});var Td=x(Id=>{"use strict";Object.defineProperty(Id,"__esModule",{value:!0});var $d=class extends Error{constructor(e){super(e.message),this.name="PostgrestError",this.details=e.details,this.hint=e.hint,this.code=e.code}};Id.default=$d});var Nd=x(Bd=>{"use strict";Object.defineProperty(Bd,"__esModule",{value:!0});var Vk=(we(),ie(be)),zk=Vk.__importDefault(Td()),Rd=class{constructor(e){var r,n;this.shouldThrowOnError=!1,this.method=e.method,this.url=e.url,this.headers=new Headers(e.headers),this.schema=e.schema,this.body=e.body,this.shouldThrowOnError=(r=e.shouldThrowOnError)!==null&&r!==void 0?r:!1,this.signal=e.signal,this.isMaybeSingle=(n=e.isMaybeSingle)!==null&&n!==void 0?n:!1,e.fetch?this.fetch=e.fetch:this.fetch=fetch}throwOnError(){return this.shouldThrowOnError=!0,this}setHeader(e,r){return this.headers=new Headers(this.headers),this.headers.set(e,r),this}then(e,r){this.schema===void 0||(["GET","HEAD"].includes(this.method)?this.headers.set("Accept-Profile",this.schema):this.headers.set("Content-Profile",this.schema)),this.method!=="GET"&&this.method!=="HEAD"&&this.headers.set("Content-Type","application/json");let n=this.fetch,o=n(this.url.toString(),{method:this.method,headers:this.headers,body:JSON.stringify(this.body),signal:this.signal}).then(async i=>{var a,s,u,c;let f=null,d=null,p=null,h=i.status,m=i.statusText;if(i.ok){if(this.method!=="HEAD"){let E=await i.text();E===""||(this.headers.get("Accept")==="text/csv"||this.headers.get("Accept")&&(!((a=this.headers.get("Accept"))===null||a===void 0)&&a.includes("application/vnd.pgrst.plan+text"))?d=E:d=JSON.parse(E))}let b=(s=this.headers.get("Prefer"))===null||s===void 0?void 0:s.match(/count=(exact|planned|estimated)/),v=(u=i.headers.get("content-range"))===null||u===void 0?void 0:u.split("/");b&&v&&v.length>1&&(p=parseInt(v[1])),this.isMaybeSingle&&this.method==="GET"&&Array.isArray(d)&&(d.length>1?(f={code:"PGRST116",details:`Results contain ${d.length} rows, application/vnd.pgrst.object+json requires 1 row`,hint:null,message:"JSON object requested, multiple (or no) rows returned"},d=null,p=null,h=406,m="Not Acceptable"):d.length===1?d=d[0]:d=null)}else{let b=await i.text();try{f=JSON.parse(b),Array.isArray(f)&&i.status===404&&(d=[],f=null,h=200,m="OK")}catch{i.status===404&&b===""?(h=204,m="No Content"):f={message:b}}if(f&&this.isMaybeSingle&&(!((c=f?.details)===null||c===void 0)&&c.includes("0 rows"))&&(f=null,h=200,m="OK"),f&&this.shouldThrowOnError)throw new zk.default(f)}return{error:f,data:d,count:p,status:h,statusText:m}});return this.shouldThrowOnError||(o=o.catch(i=>{var a,s,u,c,f,d;let p="",h=i?.cause;if(h){let m=(a=h?.message)!==null&&a!==void 0?a:"",y=(s=h?.code)!==null&&s!==void 0?s:"";p=`${(u=i?.name)!==null&&u!==void 0?u:"FetchError"}: ${i?.message}`,p+=`
|
|
28
28
|
|
|
29
29
|
Caused by: ${(c=h?.name)!==null&&c!==void 0?c:"Error"}: ${m}`,y&&(p+=` (${y})`),h?.stack&&(p+=`
|
|
30
|
-
${h.stack}`)}else p=(f=i?.stack)!==null&&f!==void 0?f:"";return{error:{message:`${(d=i?.name)!==null&&d!==void 0?d:"FetchError"}: ${i?.message}`,details:p,hint:"",code:""},data:null,count:null,status:0,statusText:""}})),o.then(e,r)}returns(){return this}overrideTypes(){return this}};Bd.default=Rd});var Ud=x(jd=>{"use strict";Object.defineProperty(jd,"__esModule",{value:!0});var Kk=(we(),ie(be)),Gk=Kk.__importDefault(Nd()),Ld=class extends Gk.default{select(e){let r=!1,n=(e??"*").split("").map(o=>/\s/.test(o)&&!r?"":(o==='"'&&(r=!r),o)).join("");return this.url.searchParams.set("select",n),this.headers.append("Prefer","return=representation"),this}order(e,{ascending:r=!0,nullsFirst:n,foreignTable:o,referencedTable:i=o}={}){let a=i?`${i}.order`:"order",s=this.url.searchParams.get(a);return this.url.searchParams.set(a,`${s?`${s},`:""}${e}.${r?"asc":"desc"}${n===void 0?"":n?".nullsfirst":".nullslast"}`),this}limit(e,{foreignTable:r,referencedTable:n=r}={}){let o=typeof n>"u"?"limit":`${n}.limit`;return this.url.searchParams.set(o,`${e}`),this}range(e,r,{foreignTable:n,referencedTable:o=n}={}){let i=typeof o>"u"?"offset":`${o}.offset`,a=typeof o>"u"?"limit":`${o}.limit`;return this.url.searchParams.set(i,`${e}`),this.url.searchParams.set(a,`${r-e+1}`),this}abortSignal(e){return this.signal=e,this}single(){return this.headers.set("Accept","application/vnd.pgrst.object+json"),this}maybeSingle(){return this.method==="GET"?this.headers.set("Accept","application/json"):this.headers.set("Accept","application/vnd.pgrst.object+json"),this.isMaybeSingle=!0,this}csv(){return this.headers.set("Accept","text/csv"),this}geojson(){return this.headers.set("Accept","application/geo+json"),this}explain({analyze:e=!1,verbose:r=!1,settings:n=!1,buffers:o=!1,wal:i=!1,format:a="text"}={}){var s;let u=[e?"analyze":null,r?"verbose":null,n?"settings":null,o?"buffers":null,i?"wal":null].filter(Boolean).join("|"),c=(s=this.headers.get("Accept"))!==null&&s!==void 0?s:"application/json";return this.headers.set("Accept",`application/vnd.pgrst.plan+${a}; for="${c}"; options=${u};`),a==="json"?this:this}rollback(){return this.headers.append("Prefer","tx=rollback"),this}returns(){return this}maxAffected(e){return this.headers.append("Prefer","handling=strict"),this.headers.append("Prefer",`max-affected=${e}`),this}};jd.default=Ld});var Fu=x(qd=>{"use strict";Object.defineProperty(qd,"__esModule",{value:!0});var Wk=(we(),ie(be)),Yk=Wk.__importDefault(Ud()),Jk=new RegExp("[,()]"),Md=class extends Yk.default{eq(e,r){return this.url.searchParams.append(e,`eq.${r}`),this}neq(e,r){return this.url.searchParams.append(e,`neq.${r}`),this}gt(e,r){return this.url.searchParams.append(e,`gt.${r}`),this}gte(e,r){return this.url.searchParams.append(e,`gte.${r}`),this}lt(e,r){return this.url.searchParams.append(e,`lt.${r}`),this}lte(e,r){return this.url.searchParams.append(e,`lte.${r}`),this}like(e,r){return this.url.searchParams.append(e,`like.${r}`),this}likeAllOf(e,r){return this.url.searchParams.append(e,`like(all).{${r.join(",")}}`),this}likeAnyOf(e,r){return this.url.searchParams.append(e,`like(any).{${r.join(",")}}`),this}ilike(e,r){return this.url.searchParams.append(e,`ilike.${r}`),this}ilikeAllOf(e,r){return this.url.searchParams.append(e,`ilike(all).{${r.join(",")}}`),this}ilikeAnyOf(e,r){return this.url.searchParams.append(e,`ilike(any).{${r.join(",")}}`),this}regexMatch(e,r){return this.url.searchParams.append(e,`match.${r}`),this}regexIMatch(e,r){return this.url.searchParams.append(e,`imatch.${r}`),this}is(e,r){return this.url.searchParams.append(e,`is.${r}`),this}isDistinct(e,r){return this.url.searchParams.append(e,`isdistinct.${r}`),this}in(e,r){let n=Array.from(new Set(r)).map(o=>typeof o=="string"&&Jk.test(o)?`"${o}"`:`${o}`).join(",");return this.url.searchParams.append(e,`in.(${n})`),this}contains(e,r){return typeof r=="string"?this.url.searchParams.append(e,`cs.${r}`):Array.isArray(r)?this.url.searchParams.append(e,`cs.{${r.join(",")}}`):this.url.searchParams.append(e,`cs.${JSON.stringify(r)}`),this}containedBy(e,r){return typeof r=="string"?this.url.searchParams.append(e,`cd.${r}`):Array.isArray(r)?this.url.searchParams.append(e,`cd.{${r.join(",")}}`):this.url.searchParams.append(e,`cd.${JSON.stringify(r)}`),this}rangeGt(e,r){return this.url.searchParams.append(e,`sr.${r}`),this}rangeGte(e,r){return this.url.searchParams.append(e,`nxl.${r}`),this}rangeLt(e,r){return this.url.searchParams.append(e,`sl.${r}`),this}rangeLte(e,r){return this.url.searchParams.append(e,`nxr.${r}`),this}rangeAdjacent(e,r){return this.url.searchParams.append(e,`adj.${r}`),this}overlaps(e,r){return typeof r=="string"?this.url.searchParams.append(e,`ov.${r}`):this.url.searchParams.append(e,`ov.{${r.join(",")}}`),this}textSearch(e,r,{config:n,type:o}={}){let i="";o==="plain"?i="pl":o==="phrase"?i="ph":o==="websearch"&&(i="w");let a=n===void 0?"":`(${n})`;return this.url.searchParams.append(e,`${i}fts${a}.${r}`),this}match(e){return Object.entries(e).forEach(([r,n])=>{this.url.searchParams.append(r,`eq.${n}`)}),this}not(e,r,n){return this.url.searchParams.append(e,`not.${r}.${n}`),this}or(e,{foreignTable:r,referencedTable:n=r}={}){let o=n?`${n}.or`:"or";return this.url.searchParams.append(o,`(${e})`),this}filter(e,r,n){return this.url.searchParams.append(e,`${r}.${n}`),this}};qd.default=Md});var zd=x(Vd=>{"use strict";Object.defineProperty(Vd,"__esModule",{value:!0});var Xk=(we(),ie(be)),Pa=Xk.__importDefault(Fu()),Hd=class{constructor(e,{headers:r={},schema:n,fetch:o}){this.url=e,this.headers=new Headers(r),this.schema=n,this.fetch=o}select(e,r){let{head:n=!1,count:o}=r??{},i=n?"HEAD":"GET",a=!1,s=(e??"*").split("").map(u=>/\s/.test(u)&&!a?"":(u==='"'&&(a=!a),u)).join("");return this.url.searchParams.set("select",s),o&&this.headers.append("Prefer",`count=${o}`),new Pa.default({method:i,url:this.url,headers:this.headers,schema:this.schema,fetch:this.fetch})}insert(e,{count:r,defaultToNull:n=!0}={}){var o;let i="POST";if(r&&this.headers.append("Prefer",`count=${r}`),n||this.headers.append("Prefer","missing=default"),Array.isArray(e)){let a=e.reduce((s,u)=>s.concat(Object.keys(u)),[]);if(a.length>0){let s=[...new Set(a)].map(u=>`"${u}"`);this.url.searchParams.set("columns",s.join(","))}}return new Pa.default({method:i,url:this.url,headers:this.headers,schema:this.schema,body:e,fetch:(o=this.fetch)!==null&&o!==void 0?o:fetch})}upsert(e,{onConflict:r,ignoreDuplicates:n=!1,count:o,defaultToNull:i=!0}={}){var a;let s="POST";if(this.headers.append("Prefer",`resolution=${n?"ignore":"merge"}-duplicates`),r!==void 0&&this.url.searchParams.set("on_conflict",r),o&&this.headers.append("Prefer",`count=${o}`),i||this.headers.append("Prefer","missing=default"),Array.isArray(e)){let u=e.reduce((c,f)=>c.concat(Object.keys(f)),[]);if(u.length>0){let c=[...new Set(u)].map(f=>`"${f}"`);this.url.searchParams.set("columns",c.join(","))}}return new Pa.default({method:s,url:this.url,headers:this.headers,schema:this.schema,body:e,fetch:(a=this.fetch)!==null&&a!==void 0?a:fetch})}update(e,{count:r}={}){var n;let o="PATCH";return r&&this.headers.append("Prefer",`count=${r}`),new Pa.default({method:o,url:this.url,headers:this.headers,schema:this.schema,body:e,fetch:(n=this.fetch)!==null&&n!==void 0?n:fetch})}delete({count:e}={}){var r;let n="DELETE";return e&&this.headers.append("Prefer",`count=${e}`),new Pa.default({method:n,url:this.url,headers:this.headers,schema:this.schema,fetch:(r=this.fetch)!==null&&r!==void 0?r:fetch})}};Vd.default=Hd});var u0=x(Gd=>{"use strict";Object.defineProperty(Gd,"__esModule",{value:!0});var s0=(we(),ie(be)),Zk=s0.__importDefault(zd()),Qk=s0.__importDefault(Fu()),Kd=class t{constructor(e,{headers:r={},schema:n,fetch:o}={}){this.url=e,this.headers=new Headers(r),this.schemaName=n,this.fetch=o}from(e){if(!e||typeof e!="string"||e.trim()==="")throw new Error("Invalid relation name: relation must be a non-empty string.");let r=new URL(`${this.url}/${e}`);return new Zk.default(r,{headers:new Headers(this.headers),schema:this.schemaName,fetch:this.fetch})}schema(e){return new t(this.url,{headers:this.headers,schema:e,fetch:this.fetch})}rpc(e,r={},{head:n=!1,get:o=!1,count:i}={}){var a;let s,u=new URL(`${this.url}/rpc/${e}`),c;n||o?(s=n?"HEAD":"GET",Object.entries(r).filter(([d,p])=>p!==void 0).map(([d,p])=>[d,Array.isArray(p)?`{${p.join(",")}}`:`${p}`]).forEach(([d,p])=>{u.searchParams.append(d,p)})):(s="POST",c=r);let f=new Headers(this.headers);return i&&f.set("Prefer",`count=${i}`),new Qk.default({method:s,url:u,headers:f,schema:this.schemaName,body:c,fetch:(a=this.fetch)!==null&&a!==void 0?a:fetch})}};Gd.default=Kd});var Wd=x($t=>{"use strict";Object.defineProperty($t,"__esModule",{value:!0});$t.PostgrestError=$t.PostgrestBuilder=$t.PostgrestTransformBuilder=$t.PostgrestFilterBuilder=$t.PostgrestQueryBuilder=$t.PostgrestClient=void 0;var Qo=(we(),ie(be)),c0=Qo.__importDefault(u0());$t.PostgrestClient=c0.default;var l0=Qo.__importDefault(zd());$t.PostgrestQueryBuilder=l0.default;var f0=Qo.__importDefault(Fu());$t.PostgrestFilterBuilder=f0.default;var d0=Qo.__importDefault(Ud());$t.PostgrestTransformBuilder=d0.default;var p0=Qo.__importDefault(Nd());$t.PostgrestBuilder=p0.default;var h0=Qo.__importDefault(Td());$t.PostgrestError=h0.default;$t.default={PostgrestClient:c0.default,PostgrestQueryBuilder:l0.default,PostgrestFilterBuilder:f0.default,PostgrestTransformBuilder:d0.default,PostgrestBuilder:p0.default,PostgrestError:h0.default}});var Jd={};Qr(Jd,{RealtimeClient:()=>Yd});var Yd,Xd=Qe(()=>{Yd=class{constructor(){}connect(){}disconnect(){}}});var An=x(rn=>{"use strict";Object.defineProperty(rn,"__esModule",{value:!0});rn.StorageUnknownError=rn.StorageApiError=rn.StorageError=void 0;rn.isStorageError=eP;var $a=class extends Error{constructor(e){super(e),this.__isStorageError=!0,this.name="StorageError"}};rn.StorageError=$a;function eP(t){return typeof t=="object"&&t!==null&&"__isStorageError"in t}var Zd=class extends $a{constructor(e,r,n){super(e),this.name="StorageApiError",this.status=r,this.statusCode=n}toJSON(){return{name:this.name,message:this.message,status:this.status,statusCode:this.statusCode}}};rn.StorageApiError=Zd;var Qd=class extends $a{constructor(e,r){super(e),this.name="StorageUnknownError",this.originalError=r}};rn.StorageUnknownError=Qd});var Ia=x(pr=>{"use strict";Object.defineProperty(pr,"__esModule",{value:!0});pr.isPlainObject=pr.recursiveToCamel=pr.resolveResponse=pr.resolveFetch=void 0;var tP=t=>t?(...e)=>t(...e):(...e)=>fetch(...e);pr.resolveFetch=tP;var rP=()=>Response;pr.resolveResponse=rP;var nP=t=>{if(Array.isArray(t))return t.map(r=>(0,pr.recursiveToCamel)(r));if(typeof t=="function"||t!==Object(t))return t;let e={};return Object.entries(t).forEach(([r,n])=>{let o=r.replace(/([-_][a-z])/gi,i=>i.toUpperCase().replace(/[-_]/g,""));e[o]=(0,pr.recursiveToCamel)(n)}),e};pr.recursiveToCamel=nP;var oP=t=>{if(typeof t!="object"||t===null)return!1;let e=Object.getPrototypeOf(t);return(e===null||e===Object.prototype||Object.getPrototypeOf(e)===null)&&!(Symbol.toStringTag in t)&&!(Symbol.iterator in t)};pr.isPlainObject=oP});var ku=x(Xn=>{"use strict";Object.defineProperty(Xn,"__esModule",{value:!0});Xn.get=sP;Xn.post=uP;Xn.put=cP;Xn.head=lP;Xn.remove=fP;var Jn=(we(),ie(be)),ep=An(),m0=Ia(),tp=t=>{var e;return t.msg||t.message||t.error_description||(typeof t.error=="string"?t.error:(e=t.error)===null||e===void 0?void 0:e.message)||JSON.stringify(t)},iP=(t,e,r)=>Jn.__awaiter(void 0,void 0,void 0,function*(){let n=yield(0,m0.resolveResponse)();t instanceof n&&!r?.noResolveJson?t.json().then(o=>{let i=t.status||500,a=o?.statusCode||i+"";e(new ep.StorageApiError(tp(o),i,a))}).catch(o=>{e(new ep.StorageUnknownError(tp(o),o))}):e(new ep.StorageUnknownError(tp(t),t))}),aP=(t,e,r,n)=>{let o={method:t,headers:e?.headers||{}};return t==="GET"||!n?o:((0,m0.isPlainObject)(n)?(o.headers=Object.assign({"Content-Type":"application/json"},e?.headers),o.body=JSON.stringify(n)):o.body=n,e?.duplex&&(o.duplex=e.duplex),Object.assign(Object.assign({},o),r))};function Ta(t,e,r,n,o,i){return Jn.__awaiter(this,void 0,void 0,function*(){return new Promise((a,s)=>{t(r,aP(e,n,o,i)).then(u=>{if(!u.ok)throw u;return n?.noResolveJson?u:u.json()}).then(u=>a(u)).catch(u=>iP(u,s,n))})})}function sP(t,e,r,n){return Jn.__awaiter(this,void 0,void 0,function*(){return Ta(t,"GET",e,r,n)})}function uP(t,e,r,n,o){return Jn.__awaiter(this,void 0,void 0,function*(){return Ta(t,"POST",e,n,o,r)})}function cP(t,e,r,n,o){return Jn.__awaiter(this,void 0,void 0,function*(){return Ta(t,"PUT",e,n,o,r)})}function lP(t,e,r,n){return Jn.__awaiter(this,void 0,void 0,function*(){return Ta(t,"HEAD",e,Object.assign(Object.assign({},r),{noResolveJson:!0}),n)})}function fP(t,e,r,n,o){return Jn.__awaiter(this,void 0,void 0,function*(){return Ta(t,"DELETE",e,n,o,r)})}});var g0=x(np=>{"use strict";Object.defineProperty(np,"__esModule",{value:!0});var dP=(we(),ie(be)),pP=An(),rp=class{constructor(e,r){this.downloadFn=e,this.shouldThrowOnError=r}then(e,r){return this.execute().then(e,r)}execute(){return dP.__awaiter(this,void 0,void 0,function*(){try{return{data:(yield this.downloadFn()).body,error:null}}catch(e){if(this.shouldThrowOnError)throw e;if((0,pP.isStorageError)(e))return{data:null,error:e};throw e}})}};np.default=rp});var b0=x(ip=>{"use strict";var y0;Object.defineProperty(ip,"__esModule",{value:!0});var D0=(we(),ie(be)),hP=An(),mP=D0.__importDefault(g0()),op=class{constructor(e,r){this.downloadFn=e,this.shouldThrowOnError=r,this[y0]="BlobDownloadBuilder",this.promise=null}asStream(){return new mP.default(this.downloadFn,this.shouldThrowOnError)}then(e,r){return this.getPromise().then(e,r)}catch(e){return this.getPromise().catch(e)}finally(e){return this.getPromise().finally(e)}getPromise(){return this.promise||(this.promise=this.execute()),this.promise}execute(){return D0.__awaiter(this,void 0,void 0,function*(){try{return{data:yield(yield this.downloadFn()).blob(),error:null}}catch(e){if(this.shouldThrowOnError)throw e;if((0,hP.isStorageError)(e))return{data:null,error:e};throw e}})}};y0=Symbol.toStringTag;ip.default=op});var C0=x(sp=>{"use strict";Object.defineProperty(sp,"__esModule",{value:!0});var It=(we(),ie(be)),zt=An(),Kt=ku(),w0=Ia(),gP=It.__importDefault(b0()),yP={limit:100,offset:0,sortBy:{column:"name",order:"asc"}},v0={cacheControl:"3600",contentType:"text/plain;charset=UTF-8",upsert:!1},ap=class{constructor(e,r={},n,o){this.shouldThrowOnError=!1,this.url=e,this.headers=r,this.bucketId=n,this.fetch=(0,w0.resolveFetch)(o)}throwOnError(){return this.shouldThrowOnError=!0,this}uploadOrUpdate(e,r,n,o){return It.__awaiter(this,void 0,void 0,function*(){try{let i,a=Object.assign(Object.assign({},v0),o),s=Object.assign(Object.assign({},this.headers),e==="POST"&&{"x-upsert":String(a.upsert)}),u=a.metadata;typeof Blob<"u"&&n instanceof Blob?(i=new FormData,i.append("cacheControl",a.cacheControl),u&&i.append("metadata",this.encodeMetadata(u)),i.append("",n)):typeof FormData<"u"&&n instanceof FormData?(i=n,i.has("cacheControl")||i.append("cacheControl",a.cacheControl),u&&!i.has("metadata")&&i.append("metadata",this.encodeMetadata(u))):(i=n,s["cache-control"]=`max-age=${a.cacheControl}`,s["content-type"]=a.contentType,u&&(s["x-metadata"]=this.toBase64(this.encodeMetadata(u))),(typeof ReadableStream<"u"&&i instanceof ReadableStream||i&&typeof i=="object"&&"pipe"in i&&typeof i.pipe=="function")&&!a.duplex&&(a.duplex="half")),o?.headers&&(s=Object.assign(Object.assign({},s),o.headers));let c=this._removeEmptyFolders(r),f=this._getFinalPath(c),d=yield(e=="PUT"?Kt.put:Kt.post)(this.fetch,`${this.url}/object/${f}`,i,Object.assign({headers:s},a?.duplex?{duplex:a.duplex}:{}));return{data:{path:c,id:d.Id,fullPath:d.Key},error:null}}catch(i){if(this.shouldThrowOnError)throw i;if((0,zt.isStorageError)(i))return{data:null,error:i};throw i}})}upload(e,r,n){return It.__awaiter(this,void 0,void 0,function*(){return this.uploadOrUpdate("POST",e,r,n)})}uploadToSignedUrl(e,r,n,o){return It.__awaiter(this,void 0,void 0,function*(){let i=this._removeEmptyFolders(e),a=this._getFinalPath(i),s=new URL(this.url+`/object/upload/sign/${a}`);s.searchParams.set("token",r);try{let u,c=Object.assign({upsert:v0.upsert},o),f=Object.assign(Object.assign({},this.headers),{"x-upsert":String(c.upsert)});typeof Blob<"u"&&n instanceof Blob?(u=new FormData,u.append("cacheControl",c.cacheControl),u.append("",n)):typeof FormData<"u"&&n instanceof FormData?(u=n,u.append("cacheControl",c.cacheControl)):(u=n,f["cache-control"]=`max-age=${c.cacheControl}`,f["content-type"]=c.contentType);let d=yield(0,Kt.put)(this.fetch,s.toString(),u,{headers:f});return{data:{path:i,fullPath:d.Key},error:null}}catch(u){if(this.shouldThrowOnError)throw u;if((0,zt.isStorageError)(u))return{data:null,error:u};throw u}})}createSignedUploadUrl(e,r){return It.__awaiter(this,void 0,void 0,function*(){try{let n=this._getFinalPath(e),o=Object.assign({},this.headers);r?.upsert&&(o["x-upsert"]="true");let i=yield(0,Kt.post)(this.fetch,`${this.url}/object/upload/sign/${n}`,{},{headers:o}),a=new URL(this.url+i.url),s=a.searchParams.get("token");if(!s)throw new zt.StorageError("No token returned by API");return{data:{signedUrl:a.toString(),path:e,token:s},error:null}}catch(n){if(this.shouldThrowOnError)throw n;if((0,zt.isStorageError)(n))return{data:null,error:n};throw n}})}update(e,r,n){return It.__awaiter(this,void 0,void 0,function*(){return this.uploadOrUpdate("PUT",e,r,n)})}move(e,r,n){return It.__awaiter(this,void 0,void 0,function*(){try{return{data:yield(0,Kt.post)(this.fetch,`${this.url}/object/move`,{bucketId:this.bucketId,sourceKey:e,destinationKey:r,destinationBucket:n?.destinationBucket},{headers:this.headers}),error:null}}catch(o){if(this.shouldThrowOnError)throw o;if((0,zt.isStorageError)(o))return{data:null,error:o};throw o}})}copy(e,r,n){return It.__awaiter(this,void 0,void 0,function*(){try{return{data:{path:(yield(0,Kt.post)(this.fetch,`${this.url}/object/copy`,{bucketId:this.bucketId,sourceKey:e,destinationKey:r,destinationBucket:n?.destinationBucket},{headers:this.headers})).Key},error:null}}catch(o){if(this.shouldThrowOnError)throw o;if((0,zt.isStorageError)(o))return{data:null,error:o};throw o}})}createSignedUrl(e,r,n){return It.__awaiter(this,void 0,void 0,function*(){try{let o=this._getFinalPath(e),i=yield(0,Kt.post)(this.fetch,`${this.url}/object/sign/${o}`,Object.assign({expiresIn:r},n?.transform?{transform:n.transform}:{}),{headers:this.headers}),a=n?.download?`&download=${n.download===!0?"":n.download}`:"";return i={signedUrl:encodeURI(`${this.url}${i.signedURL}${a}`)},{data:i,error:null}}catch(o){if(this.shouldThrowOnError)throw o;if((0,zt.isStorageError)(o))return{data:null,error:o};throw o}})}createSignedUrls(e,r,n){return It.__awaiter(this,void 0,void 0,function*(){try{let o=yield(0,Kt.post)(this.fetch,`${this.url}/object/sign/${this.bucketId}`,{expiresIn:r,paths:e},{headers:this.headers}),i=n?.download?`&download=${n.download===!0?"":n.download}`:"";return{data:o.map(a=>Object.assign(Object.assign({},a),{signedUrl:a.signedURL?encodeURI(`${this.url}${a.signedURL}${i}`):null})),error:null}}catch(o){if(this.shouldThrowOnError)throw o;if((0,zt.isStorageError)(o))return{data:null,error:o};throw o}})}download(e,r){let o=typeof r?.transform<"u"?"render/image/authenticated":"object",i=this.transformOptsToQueryString(r?.transform||{}),a=i?`?${i}`:"",s=this._getFinalPath(e),u=()=>(0,Kt.get)(this.fetch,`${this.url}/${o}/${s}${a}`,{headers:this.headers,noResolveJson:!0});return new gP.default(u,this.shouldThrowOnError)}info(e){return It.__awaiter(this,void 0,void 0,function*(){let r=this._getFinalPath(e);try{let n=yield(0,Kt.get)(this.fetch,`${this.url}/object/info/${r}`,{headers:this.headers});return{data:(0,w0.recursiveToCamel)(n),error:null}}catch(n){if(this.shouldThrowOnError)throw n;if((0,zt.isStorageError)(n))return{data:null,error:n};throw n}})}exists(e){return It.__awaiter(this,void 0,void 0,function*(){let r=this._getFinalPath(e);try{return yield(0,Kt.head)(this.fetch,`${this.url}/object/${r}`,{headers:this.headers}),{data:!0,error:null}}catch(n){if(this.shouldThrowOnError)throw n;if((0,zt.isStorageError)(n)&&n instanceof zt.StorageUnknownError){let o=n.originalError;if([400,404].includes(o?.status))return{data:!1,error:n}}throw n}})}getPublicUrl(e,r){let n=this._getFinalPath(e),o=[],i=r?.download?`download=${r.download===!0?"":r.download}`:"";i!==""&&o.push(i);let s=typeof r?.transform<"u"?"render/image":"object",u=this.transformOptsToQueryString(r?.transform||{});u!==""&&o.push(u);let c=o.join("&");return c!==""&&(c=`?${c}`),{data:{publicUrl:encodeURI(`${this.url}/${s}/public/${n}${c}`)}}}remove(e){return It.__awaiter(this,void 0,void 0,function*(){try{return{data:yield(0,Kt.remove)(this.fetch,`${this.url}/object/${this.bucketId}`,{prefixes:e},{headers:this.headers}),error:null}}catch(r){if(this.shouldThrowOnError)throw r;if((0,zt.isStorageError)(r))return{data:null,error:r};throw r}})}list(e,r,n){return It.__awaiter(this,void 0,void 0,function*(){try{let o=Object.assign(Object.assign(Object.assign({},yP),r),{prefix:e||""});return{data:yield(0,Kt.post)(this.fetch,`${this.url}/object/list/${this.bucketId}`,o,{headers:this.headers},n),error:null}}catch(o){if(this.shouldThrowOnError)throw o;if((0,zt.isStorageError)(o))return{data:null,error:o};throw o}})}listV2(e,r){return It.__awaiter(this,void 0,void 0,function*(){try{let n=Object.assign({},e);return{data:yield(0,Kt.post)(this.fetch,`${this.url}/object/list-v2/${this.bucketId}`,n,{headers:this.headers},r),error:null}}catch(n){if(this.shouldThrowOnError)throw n;if((0,zt.isStorageError)(n))return{data:null,error:n};throw n}})}encodeMetadata(e){return JSON.stringify(e)}toBase64(e){return typeof Buffer<"u"?Buffer.from(e).toString("base64"):btoa(e)}_getFinalPath(e){return`${this.bucketId}/${e.replace(/^\/+/,"")}`}_removeEmptyFolders(e){return e.replace(/^\/|\/$/g,"").replace(/\/+/g,"/")}transformOptsToQueryString(e){let r=[];return e.width&&r.push(`width=${e.width}`),e.height&&r.push(`height=${e.height}`),e.resize&&r.push(`resize=${e.resize}`),e.format&&r.push(`format=${e.format}`),e.quality&&r.push(`quality=${e.quality}`),r.join("&")}};sp.default=ap});var up=x(Pu=>{"use strict";Object.defineProperty(Pu,"__esModule",{value:!0});Pu.version=void 0;Pu.version="2.84.0"});var cp=x($u=>{"use strict";Object.defineProperty($u,"__esModule",{value:!0});$u.DEFAULT_HEADERS=void 0;var DP=up();$u.DEFAULT_HEADERS={"X-Client-Info":`storage-js/${DP.version}`}});var E0=x(fp=>{"use strict";Object.defineProperty(fp,"__esModule",{value:!0});var ei=(we(),ie(be)),bP=cp(),ti=An(),ri=ku(),wP=Ia(),lp=class{constructor(e,r={},n,o){this.shouldThrowOnError=!1;let i=new URL(e);o?.useNewHostname&&/supabase\.(co|in|red)$/.test(i.hostname)&&!i.hostname.includes("storage.supabase.")&&(i.hostname=i.hostname.replace("supabase.","storage.supabase.")),this.url=i.href.replace(/\/$/,""),this.headers=Object.assign(Object.assign({},bP.DEFAULT_HEADERS),r),this.fetch=(0,wP.resolveFetch)(n)}throwOnError(){return this.shouldThrowOnError=!0,this}listBuckets(e){return ei.__awaiter(this,void 0,void 0,function*(){try{let r=this.listBucketOptionsToQueryString(e);return{data:yield(0,ri.get)(this.fetch,`${this.url}/bucket${r}`,{headers:this.headers}),error:null}}catch(r){if(this.shouldThrowOnError)throw r;if((0,ti.isStorageError)(r))return{data:null,error:r};throw r}})}getBucket(e){return ei.__awaiter(this,void 0,void 0,function*(){try{return{data:yield(0,ri.get)(this.fetch,`${this.url}/bucket/${e}`,{headers:this.headers}),error:null}}catch(r){if(this.shouldThrowOnError)throw r;if((0,ti.isStorageError)(r))return{data:null,error:r};throw r}})}createBucket(e){return ei.__awaiter(this,arguments,void 0,function*(r,n={public:!1}){try{return{data:yield(0,ri.post)(this.fetch,`${this.url}/bucket`,{id:r,name:r,type:n.type,public:n.public,file_size_limit:n.fileSizeLimit,allowed_mime_types:n.allowedMimeTypes},{headers:this.headers}),error:null}}catch(o){if(this.shouldThrowOnError)throw o;if((0,ti.isStorageError)(o))return{data:null,error:o};throw o}})}updateBucket(e,r){return ei.__awaiter(this,void 0,void 0,function*(){try{return{data:yield(0,ri.put)(this.fetch,`${this.url}/bucket/${e}`,{id:e,name:e,public:r.public,file_size_limit:r.fileSizeLimit,allowed_mime_types:r.allowedMimeTypes},{headers:this.headers}),error:null}}catch(n){if(this.shouldThrowOnError)throw n;if((0,ti.isStorageError)(n))return{data:null,error:n};throw n}})}emptyBucket(e){return ei.__awaiter(this,void 0,void 0,function*(){try{return{data:yield(0,ri.post)(this.fetch,`${this.url}/bucket/${e}/empty`,{},{headers:this.headers}),error:null}}catch(r){if(this.shouldThrowOnError)throw r;if((0,ti.isStorageError)(r))return{data:null,error:r};throw r}})}deleteBucket(e){return ei.__awaiter(this,void 0,void 0,function*(){try{return{data:yield(0,ri.remove)(this.fetch,`${this.url}/bucket/${e}`,{},{headers:this.headers}),error:null}}catch(r){if(this.shouldThrowOnError)throw r;if((0,ti.isStorageError)(r))return{data:null,error:r};throw r}})}listBucketOptionsToQueryString(e){let r={};return e&&("limit"in e&&(r.limit=String(e.limit)),"offset"in e&&(r.offset=String(e.offset)),e.search&&(r.search=e.search),e.sortColumn&&(r.sortColumn=e.sortColumn),e.sortOrder&&(r.sortOrder=e.sortOrder)),Object.keys(r).length>0?"?"+new URLSearchParams(r).toString():""}};fp.default=lp});var yp=x(gp=>{"use strict";Object.defineProperty(gp,"__esModule",{value:!0});var dp=(we(),ie(be)),vP=cp(),pp=An(),hp=ku(),CP=Ia(),mp=class{constructor(e,r={},n){this.shouldThrowOnError=!1,this.url=e.replace(/\/$/,""),this.headers=Object.assign(Object.assign({},vP.DEFAULT_HEADERS),r),this.fetch=(0,CP.resolveFetch)(n)}throwOnError(){return this.shouldThrowOnError=!0,this}createBucket(e){return dp.__awaiter(this,void 0,void 0,function*(){try{return{data:yield(0,hp.post)(this.fetch,`${this.url}/bucket`,{name:e},{headers:this.headers}),error:null}}catch(r){if(this.shouldThrowOnError)throw r;if((0,pp.isStorageError)(r))return{data:null,error:r};throw r}})}listBuckets(e){return dp.__awaiter(this,void 0,void 0,function*(){try{let r=new URLSearchParams;e?.limit!==void 0&&r.set("limit",e.limit.toString()),e?.offset!==void 0&&r.set("offset",e.offset.toString()),e?.sortColumn&&r.set("sortColumn",e.sortColumn),e?.sortOrder&&r.set("sortOrder",e.sortOrder),e?.search&&r.set("search",e.search);let n=r.toString(),o=n?`${this.url}/bucket?${n}`:`${this.url}/bucket`;return{data:yield(0,hp.get)(this.fetch,o,{headers:this.headers}),error:null}}catch(r){if(this.shouldThrowOnError)throw r;if((0,pp.isStorageError)(r))return{data:null,error:r};throw r}})}deleteBucket(e){return dp.__awaiter(this,void 0,void 0,function*(){try{return{data:yield(0,hp.remove)(this.fetch,`${this.url}/bucket/${e}`,{},{headers:this.headers}),error:null}}catch(r){if(this.shouldThrowOnError)throw r;if((0,pp.isStorageError)(r))return{data:null,error:r};throw r}})}};gp.default=mp});var Tu=x(Iu=>{"use strict";Object.defineProperty(Iu,"__esModule",{value:!0});Iu.DEFAULT_HEADERS=void 0;var EP=up();Iu.DEFAULT_HEADERS={"X-Client-Info":`storage-js/${EP.version}`,"Content-Type":"application/json"}});var ni=x(Or=>{"use strict";Object.defineProperty(Or,"__esModule",{value:!0});Or.StorageVectorsErrorCode=Or.StorageVectorsUnknownError=Or.StorageVectorsApiError=Or.StorageVectorsError=void 0;Or.isStorageVectorsError=_P;var Ra=class extends Error{constructor(e){super(e),this.__isStorageVectorsError=!0,this.name="StorageVectorsError"}};Or.StorageVectorsError=Ra;function _P(t){return typeof t=="object"&&t!==null&&"__isStorageVectorsError"in t}var Dp=class extends Ra{constructor(e,r,n){super(e),this.name="StorageVectorsApiError",this.status=r,this.statusCode=n}toJSON(){return{name:this.name,message:this.message,status:this.status,statusCode:this.statusCode}}};Or.StorageVectorsApiError=Dp;var bp=class extends Ra{constructor(e,r){super(e),this.name="StorageVectorsUnknownError",this.originalError=r}};Or.StorageVectorsUnknownError=bp;var _0;(function(t){t.InternalError="InternalError",t.S3VectorConflictException="S3VectorConflictException",t.S3VectorNotFoundException="S3VectorNotFoundException",t.S3VectorBucketNotEmpty="S3VectorBucketNotEmpty",t.S3VectorMaxBucketsExceeded="S3VectorMaxBucketsExceeded",t.S3VectorMaxIndexesExceeded="S3VectorMaxIndexesExceeded"})(_0||(Or.StorageVectorsErrorCode=_0={}))});var oi=x(hr=>{"use strict";Object.defineProperty(hr,"__esModule",{value:!0});hr.validateVectorDimension=hr.normalizeToFloat32=hr.isPlainObject=hr.resolveResponse=hr.resolveFetch=void 0;var SP=t=>t?(...e)=>t(...e):(...e)=>fetch(...e);hr.resolveFetch=SP;var xP=()=>Response;hr.resolveResponse=xP;var AP=t=>{if(typeof t!="object"||t===null)return!1;let e=Object.getPrototypeOf(t);return(e===null||e===Object.prototype||Object.getPrototypeOf(e)===null)&&!(Symbol.toStringTag in t)&&!(Symbol.iterator in t)};hr.isPlainObject=AP;var OP=t=>Array.from(new Float32Array(t));hr.normalizeToFloat32=OP;var FP=(t,e)=>{if(e!==void 0&&t.float32.length!==e)throw new Error(`Vector dimension mismatch: expected ${e}, got ${t.float32.length}`)};hr.validateVectorDimension=FP});var Nu=x(ai=>{"use strict";Object.defineProperty(ai,"__esModule",{value:!0});ai.get=IP;ai.post=TP;ai.put=RP;ai.remove=BP;var ii=(we(),ie(be)),Ru=ni(),kP=oi(),S0=t=>t.msg||t.message||t.error_description||t.error||JSON.stringify(t),PP=(t,e,r)=>ii.__awaiter(void 0,void 0,void 0,function*(){if(t&&typeof t=="object"&&"status"in t&&"ok"in t&&typeof t.status=="number"&&!r?.noResolveJson){let o=t.status||500,i=t;if(typeof i.json=="function")i.json().then(a=>{let s=a?.statusCode||a?.code||o+"";e(new Ru.StorageVectorsApiError(S0(a),o,s))}).catch(()=>{let a=o+"",s=i.statusText||`HTTP ${o} error`;e(new Ru.StorageVectorsApiError(s,o,a))});else{let a=o+"",s=i.statusText||`HTTP ${o} error`;e(new Ru.StorageVectorsApiError(s,o,a))}}else e(new Ru.StorageVectorsUnknownError(S0(t),t))}),$P=(t,e,r,n)=>{let o={method:t,headers:e?.headers||{}};return t==="GET"||!n?o:((0,kP.isPlainObject)(n)?(o.headers=Object.assign({"Content-Type":"application/json"},e?.headers),o.body=JSON.stringify(n)):o.body=n,Object.assign(Object.assign({},o),r))};function Bu(t,e,r,n,o,i){return ii.__awaiter(this,void 0,void 0,function*(){return new Promise((a,s)=>{t(r,$P(e,n,o,i)).then(u=>{if(!u.ok)throw u;if(n?.noResolveJson)return u;let c=u.headers.get("content-type");return!c||!c.includes("application/json")?{}:u.json()}).then(u=>a(u)).catch(u=>PP(u,s,n))})})}function IP(t,e,r,n){return ii.__awaiter(this,void 0,void 0,function*(){return Bu(t,"GET",e,r,n)})}function TP(t,e,r,n,o){return ii.__awaiter(this,void 0,void 0,function*(){return Bu(t,"POST",e,n,o,r)})}function RP(t,e,r,n,o){return ii.__awaiter(this,void 0,void 0,function*(){return Bu(t,"PUT",e,n,o,r)})}function BP(t,e,r,n,o){return ii.__awaiter(this,void 0,void 0,function*(){return Bu(t,"DELETE",e,n,o,r)})}});var Cp=x(vp=>{"use strict";Object.defineProperty(vp,"__esModule",{value:!0});var Lu=(we(),ie(be)),NP=Tu(),ju=ni(),Uu=Nu(),LP=oi(),wp=class{constructor(e,r={},n){this.shouldThrowOnError=!1,this.url=e.replace(/\/$/,""),this.headers=Object.assign(Object.assign({},NP.DEFAULT_HEADERS),r),this.fetch=(0,LP.resolveFetch)(n)}throwOnError(){return this.shouldThrowOnError=!0,this}createIndex(e){return Lu.__awaiter(this,void 0,void 0,function*(){try{return{data:(yield(0,Uu.post)(this.fetch,`${this.url}/CreateIndex`,e,{headers:this.headers}))||{},error:null}}catch(r){if(this.shouldThrowOnError)throw r;if((0,ju.isStorageVectorsError)(r))return{data:null,error:r};throw r}})}getIndex(e,r){return Lu.__awaiter(this,void 0,void 0,function*(){try{return{data:yield(0,Uu.post)(this.fetch,`${this.url}/GetIndex`,{vectorBucketName:e,indexName:r},{headers:this.headers}),error:null}}catch(n){if(this.shouldThrowOnError)throw n;if((0,ju.isStorageVectorsError)(n))return{data:null,error:n};throw n}})}listIndexes(e){return Lu.__awaiter(this,void 0,void 0,function*(){try{return{data:yield(0,Uu.post)(this.fetch,`${this.url}/ListIndexes`,e,{headers:this.headers}),error:null}}catch(r){if(this.shouldThrowOnError)throw r;if((0,ju.isStorageVectorsError)(r))return{data:null,error:r};throw r}})}deleteIndex(e,r){return Lu.__awaiter(this,void 0,void 0,function*(){try{return{data:(yield(0,Uu.post)(this.fetch,`${this.url}/DeleteIndex`,{vectorBucketName:e,indexName:r},{headers:this.headers}))||{},error:null}}catch(n){if(this.shouldThrowOnError)throw n;if((0,ju.isStorageVectorsError)(n))return{data:null,error:n};throw n}})}};vp.default=wp});var Sp=x(_p=>{"use strict";Object.defineProperty(_p,"__esModule",{value:!0});var Ba=(we(),ie(be)),jP=Tu(),Na=ni(),La=Nu(),UP=oi(),Ep=class{constructor(e,r={},n){this.shouldThrowOnError=!1,this.url=e.replace(/\/$/,""),this.headers=Object.assign(Object.assign({},jP.DEFAULT_HEADERS),r),this.fetch=(0,UP.resolveFetch)(n)}throwOnError(){return this.shouldThrowOnError=!0,this}putVectors(e){return Ba.__awaiter(this,void 0,void 0,function*(){try{if(e.vectors.length<1||e.vectors.length>500)throw new Error("Vector batch size must be between 1 and 500 items");return{data:(yield(0,La.post)(this.fetch,`${this.url}/PutVectors`,e,{headers:this.headers}))||{},error:null}}catch(r){if(this.shouldThrowOnError)throw r;if((0,Na.isStorageVectorsError)(r))return{data:null,error:r};throw r}})}getVectors(e){return Ba.__awaiter(this,void 0,void 0,function*(){try{return{data:yield(0,La.post)(this.fetch,`${this.url}/GetVectors`,e,{headers:this.headers}),error:null}}catch(r){if(this.shouldThrowOnError)throw r;if((0,Na.isStorageVectorsError)(r))return{data:null,error:r};throw r}})}listVectors(e){return Ba.__awaiter(this,void 0,void 0,function*(){try{if(e.segmentCount!==void 0){if(e.segmentCount<1||e.segmentCount>16)throw new Error("segmentCount must be between 1 and 16");if(e.segmentIndex!==void 0&&(e.segmentIndex<0||e.segmentIndex>=e.segmentCount))throw new Error(`segmentIndex must be between 0 and ${e.segmentCount-1}`)}return{data:yield(0,La.post)(this.fetch,`${this.url}/ListVectors`,e,{headers:this.headers}),error:null}}catch(r){if(this.shouldThrowOnError)throw r;if((0,Na.isStorageVectorsError)(r))return{data:null,error:r};throw r}})}queryVectors(e){return Ba.__awaiter(this,void 0,void 0,function*(){try{return{data:yield(0,La.post)(this.fetch,`${this.url}/QueryVectors`,e,{headers:this.headers}),error:null}}catch(r){if(this.shouldThrowOnError)throw r;if((0,Na.isStorageVectorsError)(r))return{data:null,error:r};throw r}})}deleteVectors(e){return Ba.__awaiter(this,void 0,void 0,function*(){try{if(e.keys.length<1||e.keys.length>500)throw new Error("Keys batch size must be between 1 and 500 items");return{data:(yield(0,La.post)(this.fetch,`${this.url}/DeleteVectors`,e,{headers:this.headers}))||{},error:null}}catch(r){if(this.shouldThrowOnError)throw r;if((0,Na.isStorageVectorsError)(r))return{data:null,error:r};throw r}})}};_p.default=Ep});var Op=x(Ap=>{"use strict";Object.defineProperty(Ap,"__esModule",{value:!0});var Mu=(we(),ie(be)),MP=Tu(),qu=ni(),Hu=Nu(),qP=oi(),xp=class{constructor(e,r={},n){this.shouldThrowOnError=!1,this.url=e.replace(/\/$/,""),this.headers=Object.assign(Object.assign({},MP.DEFAULT_HEADERS),r),this.fetch=(0,qP.resolveFetch)(n)}throwOnError(){return this.shouldThrowOnError=!0,this}createBucket(e){return Mu.__awaiter(this,void 0,void 0,function*(){try{return{data:(yield(0,Hu.post)(this.fetch,`${this.url}/CreateVectorBucket`,{vectorBucketName:e},{headers:this.headers}))||{},error:null}}catch(r){if(this.shouldThrowOnError)throw r;if((0,qu.isStorageVectorsError)(r))return{data:null,error:r};throw r}})}getBucket(e){return Mu.__awaiter(this,void 0,void 0,function*(){try{return{data:yield(0,Hu.post)(this.fetch,`${this.url}/GetVectorBucket`,{vectorBucketName:e},{headers:this.headers}),error:null}}catch(r){if(this.shouldThrowOnError)throw r;if((0,qu.isStorageVectorsError)(r))return{data:null,error:r};throw r}})}listBuckets(){return Mu.__awaiter(this,arguments,void 0,function*(e={}){try{return{data:yield(0,Hu.post)(this.fetch,`${this.url}/ListVectorBuckets`,e,{headers:this.headers}),error:null}}catch(r){if(this.shouldThrowOnError)throw r;if((0,qu.isStorageVectorsError)(r))return{data:null,error:r};throw r}})}deleteBucket(e){return Mu.__awaiter(this,void 0,void 0,function*(){try{return{data:(yield(0,Hu.post)(this.fetch,`${this.url}/DeleteVectorBucket`,{vectorBucketName:e},{headers:this.headers}))||{},error:null}}catch(r){if(this.shouldThrowOnError)throw r;if((0,qu.isStorageVectorsError)(r))return{data:null,error:r};throw r}})}};Ap.default=xp});var x0=x(On=>{"use strict";Object.defineProperty(On,"__esModule",{value:!0});On.VectorIndexScope=On.VectorBucketScope=On.StorageVectorsClient=void 0;var mr=(we(),ie(be)),HP=mr.__importDefault(Cp()),VP=mr.__importDefault(Sp()),zP=mr.__importDefault(Op()),Fp=class extends zP.default{constructor(e,r={}){super(e,r.headers||{},r.fetch)}from(e){return new Vu(this.url,this.headers,e,this.fetch)}};On.StorageVectorsClient=Fp;var Vu=class extends HP.default{constructor(e,r,n,o){super(e,r,o),this.vectorBucketName=n}createIndex(e){let r=Object.create(null,{createIndex:{get:()=>super.createIndex}});return mr.__awaiter(this,void 0,void 0,function*(){return r.createIndex.call(this,Object.assign(Object.assign({},e),{vectorBucketName:this.vectorBucketName}))})}listIndexes(){let e=Object.create(null,{listIndexes:{get:()=>super.listIndexes}});return mr.__awaiter(this,arguments,void 0,function*(r={}){return e.listIndexes.call(this,Object.assign(Object.assign({},r),{vectorBucketName:this.vectorBucketName}))})}getIndex(e){let r=Object.create(null,{getIndex:{get:()=>super.getIndex}});return mr.__awaiter(this,void 0,void 0,function*(){return r.getIndex.call(this,this.vectorBucketName,e)})}deleteIndex(e){let r=Object.create(null,{deleteIndex:{get:()=>super.deleteIndex}});return mr.__awaiter(this,void 0,void 0,function*(){return r.deleteIndex.call(this,this.vectorBucketName,e)})}index(e){return new zu(this.url,this.headers,this.vectorBucketName,e,this.fetch)}};On.VectorBucketScope=Vu;var zu=class extends VP.default{constructor(e,r,n,o,i){super(e,r,i),this.vectorBucketName=n,this.indexName=o}putVectors(e){let r=Object.create(null,{putVectors:{get:()=>super.putVectors}});return mr.__awaiter(this,void 0,void 0,function*(){return r.putVectors.call(this,Object.assign(Object.assign({},e),{vectorBucketName:this.vectorBucketName,indexName:this.indexName}))})}getVectors(e){let r=Object.create(null,{getVectors:{get:()=>super.getVectors}});return mr.__awaiter(this,void 0,void 0,function*(){return r.getVectors.call(this,Object.assign(Object.assign({},e),{vectorBucketName:this.vectorBucketName,indexName:this.indexName}))})}listVectors(){let e=Object.create(null,{listVectors:{get:()=>super.listVectors}});return mr.__awaiter(this,arguments,void 0,function*(r={}){return e.listVectors.call(this,Object.assign(Object.assign({},r),{vectorBucketName:this.vectorBucketName,indexName:this.indexName}))})}queryVectors(e){let r=Object.create(null,{queryVectors:{get:()=>super.queryVectors}});return mr.__awaiter(this,void 0,void 0,function*(){return r.queryVectors.call(this,Object.assign(Object.assign({},e),{vectorBucketName:this.vectorBucketName,indexName:this.indexName}))})}deleteVectors(e){let r=Object.create(null,{deleteVectors:{get:()=>super.deleteVectors}});return mr.__awaiter(this,void 0,void 0,function*(){return r.deleteVectors.call(this,Object.assign(Object.assign({},e),{vectorBucketName:this.vectorBucketName,indexName:this.indexName}))})}};On.VectorIndexScope=zu});var $p=x(ve=>{"use strict";Object.defineProperty(ve,"__esModule",{value:!0});ve.validateVectorDimension=ve.normalizeToFloat32=ve.isPlainObject=ve.resolveResponse=ve.resolveFetch=ve.isStorageVectorsError=ve.StorageVectorsErrorCode=ve.StorageVectorsUnknownError=ve.StorageVectorsApiError=ve.StorageVectorsError=ve.VectorDataApi=ve.VectorIndexApi=ve.VectorBucketApi=ve.VectorIndexScope=ve.VectorBucketScope=ve.StorageVectorsClient=void 0;var kp=(we(),ie(be)),Pp=x0();Object.defineProperty(ve,"StorageVectorsClient",{enumerable:!0,get:function(){return Pp.StorageVectorsClient}});Object.defineProperty(ve,"VectorBucketScope",{enumerable:!0,get:function(){return Pp.VectorBucketScope}});Object.defineProperty(ve,"VectorIndexScope",{enumerable:!0,get:function(){return Pp.VectorIndexScope}});var KP=Op();Object.defineProperty(ve,"VectorBucketApi",{enumerable:!0,get:function(){return kp.__importDefault(KP).default}});var GP=Cp();Object.defineProperty(ve,"VectorIndexApi",{enumerable:!0,get:function(){return kp.__importDefault(GP).default}});var WP=Sp();Object.defineProperty(ve,"VectorDataApi",{enumerable:!0,get:function(){return kp.__importDefault(WP).default}});var ja=ni();Object.defineProperty(ve,"StorageVectorsError",{enumerable:!0,get:function(){return ja.StorageVectorsError}});Object.defineProperty(ve,"StorageVectorsApiError",{enumerable:!0,get:function(){return ja.StorageVectorsApiError}});Object.defineProperty(ve,"StorageVectorsUnknownError",{enumerable:!0,get:function(){return ja.StorageVectorsUnknownError}});Object.defineProperty(ve,"StorageVectorsErrorCode",{enumerable:!0,get:function(){return ja.StorageVectorsErrorCode}});Object.defineProperty(ve,"isStorageVectorsError",{enumerable:!0,get:function(){return ja.isStorageVectorsError}});var Ua=oi();Object.defineProperty(ve,"resolveFetch",{enumerable:!0,get:function(){return Ua.resolveFetch}});Object.defineProperty(ve,"resolveResponse",{enumerable:!0,get:function(){return Ua.resolveResponse}});Object.defineProperty(ve,"isPlainObject",{enumerable:!0,get:function(){return Ua.isPlainObject}});Object.defineProperty(ve,"normalizeToFloat32",{enumerable:!0,get:function(){return Ua.normalizeToFloat32}});Object.defineProperty(ve,"validateVectorDimension",{enumerable:!0,get:function(){return Ua.validateVectorDimension}})});var A0=x(Ku=>{"use strict";Object.defineProperty(Ku,"__esModule",{value:!0});Ku.StorageClient=void 0;var Tp=(we(),ie(be)),YP=Tp.__importDefault(C0()),JP=Tp.__importDefault(E0()),XP=Tp.__importDefault(yp()),ZP=$p(),Ip=class extends JP.default{constructor(e,r={},n,o){super(e,r,n,o)}from(e){return new YP.default(this.url,this.headers,e,this.fetch)}get vectors(){return new ZP.StorageVectorsClient(this.url+"/vector",{headers:this.headers,fetch:this.fetch})}get analytics(){return new XP.default(this.url+"/iceberg",this.headers,this.fetch)}};Ku.StorageClient=Ip});var F0=x(O0=>{"use strict";Object.defineProperty(O0,"__esModule",{value:!0})});var k0=x(nn=>{"use strict";Object.defineProperty(nn,"__esModule",{value:!0});nn.StorageAnalyticsClient=nn.StorageClient=void 0;var Gu=(we(),ie(be)),QP=A0();Object.defineProperty(nn,"StorageClient",{enumerable:!0,get:function(){return QP.StorageClient}});var e$=yp();Object.defineProperty(nn,"StorageAnalyticsClient",{enumerable:!0,get:function(){return Gu.__importDefault(e$).default}});Gu.__exportStar(F0(),nn);Gu.__exportStar(An(),nn);Gu.__exportStar($p(),nn)});var P0=x(Wu=>{"use strict";Object.defineProperty(Wu,"__esModule",{value:!0});Wu.version=void 0;Wu.version="2.84.0"});var $0=x(tr=>{"use strict";Object.defineProperty(tr,"__esModule",{value:!0});tr.DEFAULT_REALTIME_OPTIONS=tr.DEFAULT_AUTH_OPTIONS=tr.DEFAULT_DB_OPTIONS=tr.DEFAULT_GLOBAL_OPTIONS=tr.DEFAULT_HEADERS=void 0;var t$=P0(),Ma="";typeof Deno<"u"?Ma="deno":typeof document<"u"?Ma="web":typeof navigator<"u"&&navigator.product==="ReactNative"?Ma="react-native":Ma="node";tr.DEFAULT_HEADERS={"X-Client-Info":`supabase-js-${Ma}/${t$.version}`};tr.DEFAULT_GLOBAL_OPTIONS={headers:tr.DEFAULT_HEADERS};tr.DEFAULT_DB_OPTIONS={schema:"public"};tr.DEFAULT_AUTH_OPTIONS={autoRefreshToken:!0,persistSession:!0,detectSessionInUrl:!0,flowType:"implicit"};tr.DEFAULT_REALTIME_OPTIONS={}});var I0=x(Rr=>{"use strict";Object.defineProperty(Rr,"__esModule",{value:!0});Rr.fetchWithAuth=Rr.resolveHeadersConstructor=Rr.resolveFetch=void 0;var r$=t=>t?(...e)=>t(...e):(...e)=>fetch(...e);Rr.resolveFetch=r$;var n$=()=>Headers;Rr.resolveHeadersConstructor=n$;var o$=(t,e,r)=>{let n=(0,Rr.resolveFetch)(r),o=(0,Rr.resolveHeadersConstructor)();return async(i,a)=>{var s;let u=(s=await e())!==null&&s!==void 0?s:t,c=new o(a?.headers);return c.has("apikey")||c.set("apikey",t),c.has("Authorization")||c.set("Authorization",`Bearer ${u}`),n(i,Object.assign(Object.assign({},a),{headers:c}))}};Rr.fetchWithAuth=o$});var R0=x(Fn=>{"use strict";Object.defineProperty(Fn,"__esModule",{value:!0});Fn.isBrowser=void 0;Fn.uuid=i$;Fn.ensureTrailingSlash=T0;Fn.applySettingDefaults=s$;Fn.validateSupabaseUrl=u$;function i$(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(t){var e=Math.random()*16|0,r=t=="x"?e:e&3|8;return r.toString(16)})}function T0(t){return t.endsWith("/")?t:t+"/"}var a$=()=>typeof window<"u";Fn.isBrowser=a$;function s$(t,e){var r,n;let{db:o,auth:i,realtime:a,global:s}=t,{db:u,auth:c,realtime:f,global:d}=e,p={db:Object.assign(Object.assign({},u),o),auth:Object.assign(Object.assign({},c),i),realtime:Object.assign(Object.assign({},f),a),storage:{},global:Object.assign(Object.assign(Object.assign({},d),s),{headers:Object.assign(Object.assign({},(r=d?.headers)!==null&&r!==void 0?r:{}),(n=s?.headers)!==null&&n!==void 0?n:{})}),accessToken:async()=>""};return t.accessToken?p.accessToken=t.accessToken:delete p.accessToken,p}function u$(t){let e=t?.trim();if(!e)throw new Error("supabaseUrl is required.");if(!e.match(/^https?:\/\//i))throw new Error("Invalid supabaseUrl: Must be a valid HTTP or HTTPS URL.");try{return new URL(T0(e))}catch{throw Error("Invalid supabaseUrl: Provided URL is malformed.")}}});var Gp={};Qr(Gp,{AuthAdminApi:()=>Bp,AuthApiError:()=>Np,AuthClient:()=>Rp,AuthError:()=>Fr,AuthImplicitGrantRedirectError:()=>qp,AuthInvalidCredentialsError:()=>Mp,AuthInvalidTokenResponseError:()=>Up,AuthPKCEGrantCodeExchangeError:()=>Hp,AuthRetryableError:()=>Lp,AuthSessionMissingError:()=>jp,AuthWeakPasswordError:()=>Vp,GoTrueAdminApi:()=>Ju,GoTrueClient:()=>Yu,NavigatorLockAcquireTimeoutError:()=>zp,isAuthApiError:()=>p$,isAuthError:()=>d$,isAuthRetryableError:()=>h$,isAuthSessionMissingError:()=>m$,isAuthWeakPasswordError:()=>g$,lockInternals:()=>f$,navigatorLock:()=>c$,processLock:()=>l$});var Kp,B0,Yu,Ju,Rp,Bp,Fr,Np,Lp,jp,Up,Mp,qp,Hp,Vp,c$,l$,zp,f$,d$,p$,h$,m$,g$,Wp=Qe(()=>{Kp=()=>Promise.resolve({data:{session:null,user:null},error:null}),B0={get:(t,e)=>{if(e==="constructor")return t.constructor;if(!(e==="then"||e==="catch"||e==="finally")&&typeof e!="symbol")return e==="getSession"?()=>Promise.resolve({data:{session:null,user:null},error:null}):e==="onAuthStateChange"?()=>({data:{subscription:{unsubscribe:()=>{}}},error:null}):Kp}},Yu=class{constructor(e){return this.options=e,new Proxy(this,B0)}},Ju=class{constructor(e){return this.options=e,new Proxy(this,B0)}},Rp=class extends Yu{},Bp=class extends Ju{},Fr=class extends Error{},Np=class extends Fr{},Lp=class extends Fr{},jp=class extends Fr{},Up=class extends Fr{},Mp=class extends Fr{},qp=class extends Fr{},Hp=class extends Fr{},Vp=class extends Fr{},c$=Kp,l$=Kp,zp=class extends Error{},f$={},d$=()=>!1,p$=()=>!1,h$=()=>!1,m$=()=>!1,g$=()=>!1});var N0=x(Xu=>{"use strict";Object.defineProperty(Xu,"__esModule",{value:!0});Xu.SupabaseAuthClient=void 0;var y$=(Wp(),ie(Gp)),Yp=class extends y$.AuthClient{constructor(e){super(e)}};Xu.SupabaseAuthClient=Yp});var Zp=x(Xp=>{"use strict";Object.defineProperty(Xp,"__esModule",{value:!0});var D$=Pd(),b$=Wd(),w$=(Xd(),ie(Jd)),v$=k0(),Zu=$0(),C$=I0(),L0=R0(),E$=N0(),Jp=class{constructor(e,r,n){var o,i,a;this.supabaseUrl=e,this.supabaseKey=r;let s=(0,L0.validateSupabaseUrl)(e);if(!r)throw new Error("supabaseKey is required.");this.realtimeUrl=new URL("realtime/v1",s),this.realtimeUrl.protocol=this.realtimeUrl.protocol.replace("http","ws"),this.authUrl=new URL("auth/v1",s),this.storageUrl=new URL("storage/v1",s),this.functionsUrl=new URL("functions/v1",s);let u=`sb-${s.hostname.split(".")[0]}-auth-token`,c={db:Zu.DEFAULT_DB_OPTIONS,realtime:Zu.DEFAULT_REALTIME_OPTIONS,auth:Object.assign(Object.assign({},Zu.DEFAULT_AUTH_OPTIONS),{storageKey:u}),global:Zu.DEFAULT_GLOBAL_OPTIONS},f=(0,L0.applySettingDefaults)(n??{},c);this.storageKey=(o=f.auth.storageKey)!==null&&o!==void 0?o:"",this.headers=(i=f.global.headers)!==null&&i!==void 0?i:{},f.accessToken?(this.accessToken=f.accessToken,this.auth=new Proxy({},{get:(d,p)=>{throw new Error(`@supabase/supabase-js: Supabase Client is configured with the accessToken option, accessing supabase.auth.${String(p)} is not possible`)}})):this.auth=this._initSupabaseAuthClient((a=f.auth)!==null&&a!==void 0?a:{},this.headers,f.global.fetch),this.fetch=(0,C$.fetchWithAuth)(r,this._getAccessToken.bind(this),f.global.fetch),this.realtime=this._initRealtimeClient(Object.assign({headers:this.headers,accessToken:this._getAccessToken.bind(this)},f.realtime)),this.accessToken&&this.accessToken().then(d=>this.realtime.setAuth(d)).catch(d=>console.warn("Failed to set initial Realtime auth token:",d)),this.rest=new b$.PostgrestClient(new URL("rest/v1",s).href,{headers:this.headers,schema:f.db.schema,fetch:this.fetch}),this.storage=new v$.StorageClient(this.storageUrl.href,this.headers,this.fetch,n?.storage),f.accessToken||this._listenForAuthEvents()}get functions(){return new D$.FunctionsClient(this.functionsUrl.href,{headers:this.headers,customFetch:this.fetch})}from(e){return this.rest.from(e)}schema(e){return this.rest.schema(e)}rpc(e,r={},n={head:!1,get:!1,count:void 0}){return this.rest.rpc(e,r,n)}channel(e,r={config:{}}){return this.realtime.channel(e,r)}getChannels(){return this.realtime.getChannels()}removeChannel(e){return this.realtime.removeChannel(e)}removeAllChannels(){return this.realtime.removeAllChannels()}async _getAccessToken(){var e,r;if(this.accessToken)return await this.accessToken();let{data:n}=await this.auth.getSession();return(r=(e=n.session)===null||e===void 0?void 0:e.access_token)!==null&&r!==void 0?r:this.supabaseKey}_initSupabaseAuthClient({autoRefreshToken:e,persistSession:r,detectSessionInUrl:n,storage:o,userStorage:i,storageKey:a,flowType:s,lock:u,debug:c,throwOnError:f},d,p){let h={Authorization:`Bearer ${this.supabaseKey}`,apikey:`${this.supabaseKey}`};return new E$.SupabaseAuthClient({url:this.authUrl.href,headers:Object.assign(Object.assign({},h),d),storageKey:a,autoRefreshToken:e,persistSession:r,detectSessionInUrl:n,storage:o,userStorage:i,flowType:s,lock:u,debug:c,throwOnError:f,fetch:p,hasCustomAuthorizationHeader:Object.keys(this.headers).some(m=>m.toLowerCase()==="authorization")})}_initRealtimeClient(e){return new w$.RealtimeClient(this.realtimeUrl.href,Object.assign(Object.assign({},e),{params:Object.assign({apikey:this.supabaseKey},e?.params)}))}_listenForAuthEvents(){return this.auth.onAuthStateChange((r,n)=>{this._handleTokenChanged(r,"CLIENT",n?.access_token)})}_handleTokenChanged(e,r,n){(e==="TOKEN_REFRESHED"||e==="SIGNED_IN")&&this.changedAccessToken!==n?(this.changedAccessToken=n,this.realtime.setAuth(n)):e==="SIGNED_OUT"&&(this.realtime.setAuth(),r=="STORAGE"&&this.auth.signOut(),this.changedAccessToken=void 0)}};Xp.default=Jp});var M0=x(Re=>{"use strict";var _$=Re&&Re.__createBinding||(Object.create?(function(t,e,r,n){n===void 0&&(n=r);var o=Object.getOwnPropertyDescriptor(e,r);(!o||("get"in o?!e.__esModule:o.writable||o.configurable))&&(o={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,o)}):(function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]})),j0=Re&&Re.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&_$(e,t,r)},U0=Re&&Re.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Re,"__esModule",{value:!0});Re.createClient=Re.SupabaseClient=Re.FunctionRegion=Re.FunctionsError=Re.FunctionsRelayError=Re.FunctionsFetchError=Re.FunctionsHttpError=Re.PostgrestError=void 0;var S$=U0(Zp());j0((Wp(),ie(Gp)),Re);var x$=Wd();Object.defineProperty(Re,"PostgrestError",{enumerable:!0,get:function(){return x$.PostgrestError}});var qa=Pd();Object.defineProperty(Re,"FunctionsHttpError",{enumerable:!0,get:function(){return qa.FunctionsHttpError}});Object.defineProperty(Re,"FunctionsFetchError",{enumerable:!0,get:function(){return qa.FunctionsFetchError}});Object.defineProperty(Re,"FunctionsRelayError",{enumerable:!0,get:function(){return qa.FunctionsRelayError}});Object.defineProperty(Re,"FunctionsError",{enumerable:!0,get:function(){return qa.FunctionsError}});Object.defineProperty(Re,"FunctionRegion",{enumerable:!0,get:function(){return qa.FunctionRegion}});j0((Xd(),ie(Jd)),Re);var A$=Zp();Object.defineProperty(Re,"SupabaseClient",{enumerable:!0,get:function(){return U0(A$).default}});var O$=(t,e,r)=>new S$.default(t,e,r);Re.createClient=O$;function F$(){if(typeof window<"u"||typeof process>"u")return!1;let t=process.version;if(t==null)return!1;let e=t.match(/^v(\d+)\./);return e?parseInt(e[1],10)<=18:!1}F$()&&console.warn("\u26A0\uFE0F Node.js 18 and below are deprecated and will no longer be supported in future versions of @supabase/supabase-js. Please upgrade to Node.js 20 or later. For more information, visit: https://github.com/orgs/supabase/discussions/37217")});var Qp=x(($z,q0)=>{q0.exports={LOCHDR:30,LOCSIG:67324752,LOCVER:4,LOCFLG:6,LOCHOW:8,LOCTIM:10,LOCCRC:14,LOCSIZ:18,LOCLEN:22,LOCNAM:26,LOCEXT:28,EXTSIG:134695760,EXTHDR:16,EXTCRC:4,EXTSIZ:8,EXTLEN:12,CENHDR:46,CENSIG:33639248,CENVEM:4,CENVER:6,CENFLG:8,CENHOW:10,CENTIM:12,CENCRC:16,CENSIZ:20,CENLEN:24,CENNAM:28,CENEXT:30,CENCOM:32,CENDSK:34,CENATT:36,CENATX:38,CENOFF:42,ENDHDR:22,ENDSIG:101010256,ENDSUB:8,ENDTOT:10,ENDSIZ:12,ENDOFF:16,ENDCOM:20,END64HDR:20,END64SIG:117853008,END64START:4,END64OFF:8,END64NUMDISKS:16,ZIP64SIG:101075792,ZIP64HDR:56,ZIP64LEAD:12,ZIP64SIZE:4,ZIP64VEM:12,ZIP64VER:14,ZIP64DSK:16,ZIP64DSKDIR:20,ZIP64SUB:24,ZIP64TOT:32,ZIP64SIZB:40,ZIP64OFF:48,ZIP64EXTRA:56,STORED:0,SHRUNK:1,REDUCED1:2,REDUCED2:3,REDUCED3:4,REDUCED4:5,IMPLODED:6,DEFLATED:8,ENHANCED_DEFLATED:9,PKWARE:10,BZIP2:12,LZMA:14,IBM_TERSE:18,IBM_LZ77:19,AES_ENCRYPT:99,FLG_ENC:1,FLG_COMP1:2,FLG_COMP2:4,FLG_DESC:8,FLG_ENH:16,FLG_PATCH:32,FLG_STR:64,FLG_EFS:2048,FLG_MSK:4096,FILE:2,BUFFER:1,NONE:0,EF_ID:0,EF_SIZE:2,ID_ZIP64:1,ID_AVINFO:7,ID_PFS:8,ID_OS2:9,ID_NTFS:10,ID_OPENVMS:12,ID_UNIX:13,ID_FORK:14,ID_PATCH:15,ID_X509_PKCS7:20,ID_X509_CERTID_F:21,ID_X509_CERTID_C:22,ID_STRONGENC:23,ID_RECORD_MGT:24,ID_X509_PKCS7_RL:25,ID_IBM1:101,ID_IBM2:102,ID_POSZIP:18064,EF_ZIP64_OR_32:4294967295,EF_ZIP64_OR_16:65535,EF_ZIP64_SUNCOMP:0,EF_ZIP64_SCOMP:8,EF_ZIP64_RHO:16,EF_ZIP64_DSN:24}});var Qu=x(V0=>{var H0={INVALID_LOC:"Invalid LOC header (bad signature)",INVALID_CEN:"Invalid CEN header (bad signature)",INVALID_END:"Invalid END header (bad signature)",DESCRIPTOR_NOT_EXIST:"No descriptor present",DESCRIPTOR_UNKNOWN:"Unknown descriptor format",DESCRIPTOR_FAULTY:"Descriptor data is malformed",NO_DATA:"Nothing to decompress",BAD_CRC:"CRC32 checksum failed {0}",FILE_IN_THE_WAY:"There is a file in the way: {0}",UNKNOWN_METHOD:"Invalid/unsupported compression method",AVAIL_DATA:"inflate::Available inflate data did not terminate",INVALID_DISTANCE:"inflate::Invalid literal/length or distance code in fixed or dynamic block",TO_MANY_CODES:"inflate::Dynamic block code description: too many length or distance codes",INVALID_REPEAT_LEN:"inflate::Dynamic block code description: repeat more than specified lengths",INVALID_REPEAT_FIRST:"inflate::Dynamic block code description: repeat lengths with no first length",INCOMPLETE_CODES:"inflate::Dynamic block code description: code lengths codes incomplete",INVALID_DYN_DISTANCE:"inflate::Dynamic block code description: invalid distance code lengths",INVALID_CODES_LEN:"inflate::Dynamic block code description: invalid literal/length code lengths",INVALID_STORE_BLOCK:"inflate::Stored block length did not match one's complement",INVALID_BLOCK_TYPE:"inflate::Invalid block type (type == 3)",CANT_EXTRACT_FILE:"Could not extract the file",CANT_OVERRIDE:"Target file already exists",DISK_ENTRY_TOO_LARGE:"Number of disk entries is too large",NO_ZIP:"No zip file was loaded",NO_ENTRY:"Entry doesn't exist",DIRECTORY_CONTENT_ERROR:"A directory cannot have content",FILE_NOT_FOUND:'File not found: "{0}"',NOT_IMPLEMENTED:"Not implemented",INVALID_FILENAME:"Invalid filename",INVALID_FORMAT:"Invalid or unsupported zip format. No END header found",INVALID_PASS_PARAM:"Incompatible password parameter",WRONG_PASSWORD:"Wrong Password",COMMENT_TOO_LONG:"Comment is too long",EXTRA_FIELD_PARSE_ERROR:"Extra field parsing error"};function k$(t){return function(...e){return e.length&&(t=t.replace(/\{(\d)\}/g,(r,n)=>e[n]||"")),new Error("ADM-ZIP: "+t)}}for(let t of Object.keys(H0))V0[t]=k$(H0[t])});var Y0=x((Tz,W0)=>{var P$=require("fs"),it=require("path"),z0=Qp(),$$=Qu(),I$=typeof process=="object"&&process.platform==="win32",K0=t=>typeof t=="object"&&t!==null,G0=new Uint32Array(256).map((t,e)=>{for(let r=0;r<8;r++)(e&1)!==0?e=3988292384^e>>>1:e>>>=1;return e>>>0});function Ye(t){this.sep=it.sep,this.fs=P$,K0(t)&&K0(t.fs)&&typeof t.fs.statSync=="function"&&(this.fs=t.fs)}W0.exports=Ye;Ye.prototype.makeDir=function(t){let e=this;function r(n){let o=n.split(e.sep)[0];n.split(e.sep).forEach(function(i){if(!(!i||i.substr(-1,1)===":")){o+=e.sep+i;var a;try{a=e.fs.statSync(o)}catch{e.fs.mkdirSync(o)}if(a&&a.isFile())throw $$.FILE_IN_THE_WAY(`"${o}"`)}})}r(t)};Ye.prototype.writeFileTo=function(t,e,r,n){let o=this;if(o.fs.existsSync(t)){if(!r)return!1;var i=o.fs.statSync(t);if(i.isDirectory())return!1}var a=it.dirname(t);o.fs.existsSync(a)||o.makeDir(a);var s;try{s=o.fs.openSync(t,"w",438)}catch{o.fs.chmodSync(t,438),s=o.fs.openSync(t,"w",438)}if(s)try{o.fs.writeSync(s,e,0,e.length,0)}finally{o.fs.closeSync(s)}return o.fs.chmodSync(t,n||438),!0};Ye.prototype.writeFileToAsync=function(t,e,r,n,o){typeof n=="function"&&(o=n,n=void 0);let i=this;i.fs.exists(t,function(a){if(a&&!r)return o(!1);i.fs.stat(t,function(s,u){if(a&&u.isDirectory())return o(!1);var c=it.dirname(t);i.fs.exists(c,function(f){f||i.makeDir(c),i.fs.open(t,"w",438,function(d,p){d?i.fs.chmod(t,438,function(){i.fs.open(t,"w",438,function(h,m){i.fs.write(m,e,0,e.length,0,function(){i.fs.close(m,function(){i.fs.chmod(t,n||438,function(){o(!0)})})})})}):p?i.fs.write(p,e,0,e.length,0,function(){i.fs.close(p,function(){i.fs.chmod(t,n||438,function(){o(!0)})})}):i.fs.chmod(t,n||438,function(){o(!0)})})})})})};Ye.prototype.findFiles=function(t){let e=this;function r(n,o,i){typeof o=="boolean"&&(i=o,o=void 0);let a=[];return e.fs.readdirSync(n).forEach(function(s){let u=it.join(n,s),c=e.fs.statSync(u);(!o||o.test(u))&&a.push(it.normalize(u)+(c.isDirectory()?e.sep:"")),c.isDirectory()&&i&&(a=a.concat(r(u,o,i)))}),a}return r(t,void 0,!0)};Ye.prototype.findFilesAsync=function(t,e){let r=this,n=[];r.fs.readdir(t,function(o,i){if(o)return e(o);let a=i.length;if(!a)return e(null,n);i.forEach(function(s){s=it.join(t,s),r.fs.stat(s,function(u,c){if(u)return e(u);c&&(n.push(it.normalize(s)+(c.isDirectory()?r.sep:"")),c.isDirectory()?r.findFilesAsync(s,function(f,d){if(f)return e(f);n=n.concat(d),--a||e(null,n)}):--a||e(null,n))})})})};Ye.prototype.getAttributes=function(){};Ye.prototype.setAttributes=function(){};Ye.crc32update=function(t,e){return G0[(t^e)&255]^t>>>8};Ye.crc32=function(t){typeof t=="string"&&(t=Buffer.from(t,"utf8"));let e=t.length,r=-1;for(let n=0;n<e;)r=Ye.crc32update(r,t[n++]);return~r>>>0};Ye.methodToString=function(t){switch(t){case z0.STORED:return"STORED ("+t+")";case z0.DEFLATED:return"DEFLATED ("+t+")";default:return"UNSUPPORTED ("+t+")"}};Ye.canonical=function(t){if(!t)return"";let e=it.posix.normalize("/"+t.split("\\").join("/"));return it.join(".",e)};Ye.zipnamefix=function(t){if(!t)return"";let e=it.posix.normalize("/"+t.split("\\").join("/"));return it.posix.join(".",e)};Ye.findLast=function(t,e){if(!Array.isArray(t))throw new TypeError("arr is not array");let r=t.length>>>0;for(let n=r-1;n>=0;n--)if(e(t[n],n,t))return t[n]};Ye.sanitize=function(t,e){t=it.resolve(it.normalize(t));for(var r=e.split("/"),n=0,o=r.length;n<o;n++){var i=it.normalize(it.join(t,r.slice(n,o).join(it.sep)));if(i.indexOf(t)===0)return i}return it.normalize(it.join(t,it.basename(e)))};Ye.toBuffer=function(e,r){return Buffer.isBuffer(e)?e:e instanceof Uint8Array?Buffer.from(e):typeof e=="string"?r(e):Buffer.alloc(0)};Ye.readBigUInt64LE=function(t,e){var r=Buffer.from(t.slice(e,e+8));return r.swap64(),parseInt(`0x${r.toString("hex")}`)};Ye.fromDOS2Date=function(t){return new Date((t>>25&127)+1980,Math.max((t>>21&15)-1,0),Math.max(t>>16&31,1),t>>11&31,t>>5&63,(t&31)<<1)};Ye.fromDate2DOS=function(t){let e=0,r=0;return t.getFullYear()>1979&&(e=(t.getFullYear()-1980&127)<<9|t.getMonth()+1<<5|t.getDate(),r=t.getHours()<<11|t.getMinutes()<<5|t.getSeconds()>>1),e<<16|r};Ye.isWin=I$;Ye.crcTable=G0});var X0=x((Rz,J0)=>{var T$=require("path");J0.exports=function(t,{fs:e}){var r=t||"",n=i(),o=null;function i(){return{directory:!1,readonly:!1,hidden:!1,executable:!1,mtime:0,atime:0}}return r&&e.existsSync(r)?(o=e.statSync(r),n.directory=o.isDirectory(),n.mtime=o.mtime,n.atime=o.atime,n.executable=(73&o.mode)!==0,n.readonly=(128&o.mode)===0,n.hidden=T$.basename(r)[0]==="."):console.warn("Invalid path: "+r),{get directory(){return n.directory},get readOnly(){return n.readonly},get hidden(){return n.hidden},get mtime(){return n.mtime},get atime(){return n.atime},get executable(){return n.executable},decodeAttributes:function(){},encodeAttributes:function(){},toJSON:function(){return{path:r,isDirectory:n.directory,isReadOnly:n.readonly,isHidden:n.hidden,isExecutable:n.executable,mTime:n.mtime,aTime:n.atime}},toString:function(){return JSON.stringify(this.toJSON(),null," ")}}}});var Q0=x((Bz,Z0)=>{Z0.exports={efs:!0,encode:t=>Buffer.from(t,"utf8"),decode:t=>t.toString("utf8")}});var ui=x((Nz,si)=>{si.exports=Y0();si.exports.Constants=Qp();si.exports.Errors=Qu();si.exports.FileAttr=X0();si.exports.decoder=Q0()});var tb=x((Lz,eb)=>{var kn=ui(),Y=kn.Constants;eb.exports=function(){var t=20,e=10,r=0,n=0,o=0,i=0,a=0,s=0,u=0,c=0,f=0,d=0,p=0,h=0,m=0;t|=kn.isWin?2560:768,r|=Y.FLG_EFS;let y={extraLen:0},b=g=>Math.max(0,g)>>>0,v=g=>Math.max(0,g)&65535,E=g=>Math.max(0,g)&255;return o=kn.fromDate2DOS(new Date),{get made(){return t},set made(g){t=g},get version(){return e},set version(g){e=g},get flags(){return r},set flags(g){r=g},get flags_efs(){return(r&Y.FLG_EFS)>0},set flags_efs(g){g?r|=Y.FLG_EFS:r&=~Y.FLG_EFS},get flags_desc(){return(r&Y.FLG_DESC)>0},set flags_desc(g){g?r|=Y.FLG_DESC:r&=~Y.FLG_DESC},get method(){return n},set method(g){switch(g){case Y.STORED:this.version=10;case Y.DEFLATED:default:this.version=20}n=g},get time(){return kn.fromDOS2Date(this.timeval)},set time(g){this.timeval=kn.fromDate2DOS(g)},get timeval(){return o},set timeval(g){o=b(g)},get timeHighByte(){return E(o>>>8)},get crc(){return i},set crc(g){i=b(g)},get compressedSize(){return a},set compressedSize(g){a=b(g)},get size(){return s},set size(g){s=b(g)},get fileNameLength(){return u},set fileNameLength(g){u=g},get extraLength(){return c},set extraLength(g){c=g},get extraLocalLength(){return y.extraLen},set extraLocalLength(g){y.extraLen=g},get commentLength(){return f},set commentLength(g){f=g},get diskNumStart(){return d},set diskNumStart(g){d=b(g)},get inAttr(){return p},set inAttr(g){p=b(g)},get attr(){return h},set attr(g){h=b(g)},get fileAttr(){return(h||0)>>16&4095},get offset(){return m},set offset(g){m=b(g)},get encrypted(){return(r&Y.FLG_ENC)===Y.FLG_ENC},get centralHeaderSize(){return Y.CENHDR+u+c+f},get realDataOffset(){return m+Y.LOCHDR+y.fnameLen+y.extraLen},get localHeader(){return y},loadLocalHeaderFromBinary:function(g){var _=g.slice(m,m+Y.LOCHDR);if(_.readUInt32LE(0)!==Y.LOCSIG)throw kn.Errors.INVALID_LOC();y.version=_.readUInt16LE(Y.LOCVER),y.flags=_.readUInt16LE(Y.LOCFLG),y.method=_.readUInt16LE(Y.LOCHOW),y.time=_.readUInt32LE(Y.LOCTIM),y.crc=_.readUInt32LE(Y.LOCCRC),y.compressedSize=_.readUInt32LE(Y.LOCSIZ),y.size=_.readUInt32LE(Y.LOCLEN),y.fnameLen=_.readUInt16LE(Y.LOCNAM),y.extraLen=_.readUInt16LE(Y.LOCEXT);let S=m+Y.LOCHDR+y.fnameLen,P=S+y.extraLen;return g.slice(S,P)},loadFromBinary:function(g){if(g.length!==Y.CENHDR||g.readUInt32LE(0)!==Y.CENSIG)throw kn.Errors.INVALID_CEN();t=g.readUInt16LE(Y.CENVEM),e=g.readUInt16LE(Y.CENVER),r=g.readUInt16LE(Y.CENFLG),n=g.readUInt16LE(Y.CENHOW),o=g.readUInt32LE(Y.CENTIM),i=g.readUInt32LE(Y.CENCRC),a=g.readUInt32LE(Y.CENSIZ),s=g.readUInt32LE(Y.CENLEN),u=g.readUInt16LE(Y.CENNAM),c=g.readUInt16LE(Y.CENEXT),f=g.readUInt16LE(Y.CENCOM),d=g.readUInt16LE(Y.CENDSK),p=g.readUInt16LE(Y.CENATT),h=g.readUInt32LE(Y.CENATX),m=g.readUInt32LE(Y.CENOFF)},localHeaderToBinary:function(){var g=Buffer.alloc(Y.LOCHDR);return g.writeUInt32LE(Y.LOCSIG,0),g.writeUInt16LE(e,Y.LOCVER),g.writeUInt16LE(r,Y.LOCFLG),g.writeUInt16LE(n,Y.LOCHOW),g.writeUInt32LE(o,Y.LOCTIM),g.writeUInt32LE(i,Y.LOCCRC),g.writeUInt32LE(a,Y.LOCSIZ),g.writeUInt32LE(s,Y.LOCLEN),g.writeUInt16LE(u,Y.LOCNAM),g.writeUInt16LE(y.extraLen,Y.LOCEXT),g},centralHeaderToBinary:function(){var g=Buffer.alloc(Y.CENHDR+u+c+f);return g.writeUInt32LE(Y.CENSIG,0),g.writeUInt16LE(t,Y.CENVEM),g.writeUInt16LE(e,Y.CENVER),g.writeUInt16LE(r,Y.CENFLG),g.writeUInt16LE(n,Y.CENHOW),g.writeUInt32LE(o,Y.CENTIM),g.writeUInt32LE(i,Y.CENCRC),g.writeUInt32LE(a,Y.CENSIZ),g.writeUInt32LE(s,Y.CENLEN),g.writeUInt16LE(u,Y.CENNAM),g.writeUInt16LE(c,Y.CENEXT),g.writeUInt16LE(f,Y.CENCOM),g.writeUInt16LE(d,Y.CENDSK),g.writeUInt16LE(p,Y.CENATT),g.writeUInt32LE(h,Y.CENATX),g.writeUInt32LE(m,Y.CENOFF),g},toJSON:function(){let g=function(_){return _+" bytes"};return{made:t,version:e,flags:r,method:kn.methodToString(n),time:this.time,crc:"0x"+i.toString(16).toUpperCase(),compressedSize:g(a),size:g(s),fileNameLength:g(u),extraLength:g(c),commentLength:g(f),diskNumStart:d,inAttr:p,attr:h,offset:m,centralHeaderSize:g(Y.CENHDR+u+c+f)}},toString:function(){return JSON.stringify(this.toJSON(),null," ")}}}});var nb=x((jz,rb)=>{var ci=ui(),ze=ci.Constants;rb.exports=function(){var t=0,e=0,r=0,n=0,o=0;return{get diskEntries(){return t},set diskEntries(i){t=e=i},get totalEntries(){return e},set totalEntries(i){e=t=i},get size(){return r},set size(i){r=i},get offset(){return n},set offset(i){n=i},get commentLength(){return o},set commentLength(i){o=i},get mainHeaderSize(){return ze.ENDHDR+o},loadFromBinary:function(i){if((i.length!==ze.ENDHDR||i.readUInt32LE(0)!==ze.ENDSIG)&&(i.length<ze.ZIP64HDR||i.readUInt32LE(0)!==ze.ZIP64SIG))throw ci.Errors.INVALID_END();i.readUInt32LE(0)===ze.ENDSIG?(t=i.readUInt16LE(ze.ENDSUB),e=i.readUInt16LE(ze.ENDTOT),r=i.readUInt32LE(ze.ENDSIZ),n=i.readUInt32LE(ze.ENDOFF),o=i.readUInt16LE(ze.ENDCOM)):(t=ci.readBigUInt64LE(i,ze.ZIP64SUB),e=ci.readBigUInt64LE(i,ze.ZIP64TOT),r=ci.readBigUInt64LE(i,ze.ZIP64SIZE),n=ci.readBigUInt64LE(i,ze.ZIP64OFF),o=0)},toBinary:function(){var i=Buffer.alloc(ze.ENDHDR+o);return i.writeUInt32LE(ze.ENDSIG,0),i.writeUInt32LE(0,4),i.writeUInt16LE(t,ze.ENDSUB),i.writeUInt16LE(e,ze.ENDTOT),i.writeUInt32LE(r,ze.ENDSIZ),i.writeUInt32LE(n,ze.ENDOFF),i.writeUInt16LE(o,ze.ENDCOM),i.fill(" ",ze.ENDHDR),i},toJSON:function(){let i=function(a,s){let u=a.toString(16).toUpperCase();for(;u.length<s;)u="0"+u;return"0x"+u};return{diskEntries:t,totalEntries:e,size:r+" bytes",offset:i(n,4),commentLength:o}},toString:function(){return JSON.stringify(this.toJSON(),null," ")}}}});var th=x(eh=>{eh.EntryHeader=tb();eh.MainHeader=nb()});var ib=x((Mz,ob)=>{ob.exports=function(t){var e=require("zlib"),r={chunkSize:(parseInt(t.length/1024)+1)*1024};return{deflate:function(){return e.deflateRawSync(t,r)},deflateAsync:function(n){var o=e.createDeflateRaw(r),i=[],a=0;o.on("data",function(s){i.push(s),a+=s.length}),o.on("end",function(){var s=Buffer.alloc(a),u=0;s.fill(0);for(var c=0;c<i.length;c++){var f=i[c];f.copy(s,u),u+=f.length}n&&n(s)}),o.end(t)}}}});var sb=x((qz,ab)=>{var R$=+(process.versions?process.versions.node:"").split(".")[0]||0;ab.exports=function(t,e){var r=require("zlib");let n=R$>=15&&e>0?{maxOutputLength:e}:{};return{inflate:function(){return r.inflateRawSync(t,n)},inflateAsync:function(o){var i=r.createInflateRaw(n),a=[],s=0;i.on("data",function(u){a.push(u),s+=u.length}),i.on("end",function(){var u=Buffer.alloc(s),c=0;u.fill(0);for(var f=0;f<a.length;f++){var d=a[f];d.copy(u,c),c+=d.length}o&&o(u)}),i.end(t)}}}});var db=x((Hz,fb)=>{"use strict";var{randomFillSync:ub}=require("crypto"),B$=Qu(),N$=new Uint32Array(256).map((t,e)=>{for(let r=0;r<8;r++)(e&1)!==0?e=e>>>1^3988292384:e>>>=1;return e>>>0}),lb=(t,e)=>Math.imul(t,e)>>>0,cb=(t,e)=>N$[(t^e)&255]^t>>>8,Ha=()=>typeof ub=="function"?ub(Buffer.alloc(12)):Ha.node();Ha.node=()=>{let t=Buffer.alloc(12),e=t.length;for(let r=0;r<e;r++)t[r]=Math.random()*256&255;return t};var ec={genSalt:Ha};function tc(t){let e=Buffer.isBuffer(t)?t:Buffer.from(t);this.keys=new Uint32Array([305419896,591751049,878082192]);for(let r=0;r<e.length;r++)this.updateKeys(e[r])}tc.prototype.updateKeys=function(t){let e=this.keys;return e[0]=cb(e[0],t),e[1]+=e[0]&255,e[1]=lb(e[1],134775813)+1,e[2]=cb(e[2],e[1]>>>24),t};tc.prototype.next=function(){let t=(this.keys[2]|2)>>>0;return lb(t,t^1)>>8&255};function L$(t){let e=new tc(t);return function(r){let n=Buffer.alloc(r.length),o=0;for(let i of r)n[o++]=e.updateKeys(i^e.next());return n}}function j$(t){let e=new tc(t);return function(r,n,o=0){n||(n=Buffer.alloc(r.length));for(let i of r){let a=e.next();n[o++]=i^a,e.updateKeys(i)}return n}}function U$(t,e,r){if(!t||!Buffer.isBuffer(t)||t.length<12)return Buffer.alloc(0);let n=L$(r),o=n(t.slice(0,12)),i=(e.flags&8)===8?e.timeHighByte:e.crc>>>24;if(o[11]!==i)throw B$.WRONG_PASSWORD();return n(t.slice(12))}function M$(t){Buffer.isBuffer(t)&&t.length>=12?ec.genSalt=function(){return t.slice(0,12)}:t==="node"?ec.genSalt=Ha.node:ec.genSalt=Ha}function q$(t,e,r,n=!1){t==null&&(t=Buffer.alloc(0)),Buffer.isBuffer(t)||(t=Buffer.from(t.toString()));let o=j$(r),i=ec.genSalt();i[11]=e.crc>>>24&255,n&&(i[10]=e.crc>>>16&255);let a=Buffer.alloc(t.length+12);return o(i,a),o(t,a,12)}fb.exports={decrypt:U$,encrypt:q$,_salter:M$}});var pb=x(rc=>{rc.Deflater=ib();rc.Inflater=sb();rc.ZipCrypto=db()});var nh=x((zz,hb)=>{var Fe=ui(),H$=th(),Je=Fe.Constants,rh=pb();hb.exports=function(t,e){var r=new H$.EntryHeader,n=Buffer.alloc(0),o=Buffer.alloc(0),i=!1,a=null,s=Buffer.alloc(0),u=Buffer.alloc(0),c=!0;let f=t,d=typeof f.decoder=="object"?f.decoder:Fe.decoder;c=d.hasOwnProperty("efs")?d.efs:!1;function p(){return!e||!(e instanceof Uint8Array)?Buffer.alloc(0):(u=r.loadLocalHeaderFromBinary(e),e.slice(r.realDataOffset,r.realDataOffset+r.compressedSize))}function h(g){if(r.flags_desc){let _={},S=r.realDataOffset+r.compressedSize;if(e.readUInt32LE(S)==Je.LOCSIG||e.readUInt32LE(S)==Je.CENSIG)throw Fe.Errors.DESCRIPTOR_NOT_EXIST();if(e.readUInt32LE(S)==Je.EXTSIG)_.crc=e.readUInt32LE(S+Je.EXTCRC),_.compressedSize=e.readUInt32LE(S+Je.EXTSIZ),_.size=e.readUInt32LE(S+Je.EXTLEN);else if(e.readUInt16LE(S+12)===19280)_.crc=e.readUInt32LE(S+Je.EXTCRC-4),_.compressedSize=e.readUInt32LE(S+Je.EXTSIZ-4),_.size=e.readUInt32LE(S+Je.EXTLEN-4);else throw Fe.Errors.DESCRIPTOR_UNKNOWN();if(_.compressedSize!==r.compressedSize||_.size!==r.size||_.crc!==r.crc)throw Fe.Errors.DESCRIPTOR_FAULTY();if(Fe.crc32(g)!==_.crc)return!1}else if(Fe.crc32(g)!==r.localHeader.crc)return!1;return!0}function m(g,_,S){if(typeof _>"u"&&typeof g=="string"&&(S=g,g=void 0),i)return g&&_&&_(Buffer.alloc(0),Fe.Errors.DIRECTORY_CONTENT_ERROR()),Buffer.alloc(0);var P=p();if(P.length===0)return g&&_&&_(P),P;if(r.encrypted){if(typeof S!="string"&&!Buffer.isBuffer(S))throw Fe.Errors.INVALID_PASS_PARAM();P=rh.ZipCrypto.decrypt(P,r,S)}var F=Buffer.alloc(r.size);switch(r.method){case Fe.Constants.STORED:if(P.copy(F),h(F))return g&&_&&_(F),F;throw g&&_&&_(F,Fe.Errors.BAD_CRC()),Fe.Errors.BAD_CRC();case Fe.Constants.DEFLATED:var B=new rh.Inflater(P,r.size);if(g)B.inflateAsync(function(T){T.copy(T,0),_&&(h(T)?_(T):_(T,Fe.Errors.BAD_CRC()))});else{if(B.inflate(F).copy(F,0),!h(F))throw Fe.Errors.BAD_CRC(`"${d.decode(n)}"`);return F}break;default:throw g&&_&&_(Buffer.alloc(0),Fe.Errors.UNKNOWN_METHOD()),Fe.Errors.UNKNOWN_METHOD()}}function y(g,_){if((!a||!a.length)&&Buffer.isBuffer(e))return g&&_&&_(p()),p();if(a.length&&!i){var S;switch(r.method){case Fe.Constants.STORED:return r.compressedSize=r.size,S=Buffer.alloc(a.length),a.copy(S),g&&_&&_(S),S;default:case Fe.Constants.DEFLATED:var P=new rh.Deflater(a);if(g)P.deflateAsync(function(B){S=Buffer.alloc(B.length),r.compressedSize=B.length,B.copy(S),_&&_(S)});else{var F=P.deflate();return r.compressedSize=F.length,F}P=null;break}}else if(g&&_)_(Buffer.alloc(0));else return Buffer.alloc(0)}function b(g,_){return(g.readUInt32LE(_+4)<<4)+g.readUInt32LE(_)}function v(g){try{for(var _=0,S,P,F;_+4<g.length;)S=g.readUInt16LE(_),_+=2,P=g.readUInt16LE(_),_+=2,F=g.slice(_,_+P),_+=P,Je.ID_ZIP64===S&&E(F)}catch{throw Fe.Errors.EXTRA_FIELD_PARSE_ERROR()}}function E(g){var _,S,P,F;g.length>=Je.EF_ZIP64_SCOMP&&(_=b(g,Je.EF_ZIP64_SUNCOMP),r.size===Je.EF_ZIP64_OR_32&&(r.size=_)),g.length>=Je.EF_ZIP64_RHO&&(S=b(g,Je.EF_ZIP64_SCOMP),r.compressedSize===Je.EF_ZIP64_OR_32&&(r.compressedSize=S)),g.length>=Je.EF_ZIP64_DSN&&(P=b(g,Je.EF_ZIP64_RHO),r.offset===Je.EF_ZIP64_OR_32&&(r.offset=P)),g.length>=Je.EF_ZIP64_DSN+4&&(F=g.readUInt32LE(Je.EF_ZIP64_DSN),r.diskNumStart===Je.EF_ZIP64_OR_16&&(r.diskNumStart=F))}return{get entryName(){return d.decode(n)},get rawEntryName(){return n},set entryName(g){n=Fe.toBuffer(g,d.encode);var _=n[n.length-1];i=_===47||_===92,r.fileNameLength=n.length},get efs(){return typeof c=="function"?c(this.entryName):c},get extra(){return s},set extra(g){s=g,r.extraLength=g.length,v(g)},get comment(){return d.decode(o)},set comment(g){if(o=Fe.toBuffer(g,d.encode),r.commentLength=o.length,o.length>65535)throw Fe.Errors.COMMENT_TOO_LONG()},get name(){var g=d.decode(n);return i?g.substr(g.length-1).split("/").pop():g.split("/").pop()},get isDirectory(){return i},getCompressedData:function(){return y(!1,null)},getCompressedDataAsync:function(g){y(!0,g)},setData:function(g){a=Fe.toBuffer(g,Fe.decoder.encode),!i&&a.length?(r.size=a.length,r.method=Fe.Constants.DEFLATED,r.crc=Fe.crc32(g),r.changed=!0):r.method=Fe.Constants.STORED},getData:function(g){return r.changed?a:m(!1,null,g)},getDataAsync:function(g,_){r.changed?g(a):m(!0,g,_)},set attr(g){r.attr=g},get attr(){return r.attr},set header(g){r.loadFromBinary(g)},get header(){return r},packCentralHeader:function(){r.flags_efs=this.efs,r.extraLength=s.length;var g=r.centralHeaderToBinary(),_=Fe.Constants.CENHDR;return n.copy(g,_),_+=n.length,s.copy(g,_),_+=r.extraLength,o.copy(g,_),g},packLocalHeader:function(){let g=0;r.flags_efs=this.efs,r.extraLocalLength=u.length;let _=r.localHeaderToBinary(),S=Buffer.alloc(_.length+n.length+r.extraLocalLength);return _.copy(S,g),g+=_.length,n.copy(S,g),g+=n.length,u.copy(S,g),g+=u.length,S},toJSON:function(){let g=function(_){return"<"+(_&&_.length+" bytes buffer"||"null")+">"};return{entryName:this.entryName,name:this.name,comment:this.comment,isDirectory:this.isDirectory,header:r.toJSON(),compressedData:g(e),data:g(a)}},toString:function(){return JSON.stringify(this.toJSON(),null," ")}}}});var yb=x((Kz,gb)=>{var mb=nh(),V$=th(),yt=ui();gb.exports=function(t,e){var r=[],n={},o=Buffer.alloc(0),i=new V$.MainHeader,a=!1,s=null;let u=new Set,c=e,{noSort:f,decoder:d}=c;t?m(c.readEntries):a=!0;function p(){let b=new Set;for(let v of Object.keys(n)){let E=v.split("/");if(E.pop(),!!E.length)for(let g=0;g<E.length;g++){let _=E.slice(0,g+1).join("/")+"/";b.add(_)}}for(let v of b)if(!(v in n)){let E=new mb(c);E.entryName=v,E.attr=16,E.temporary=!0,r.push(E),n[E.entryName]=E,u.add(E)}}function h(){if(a=!0,n={},i.diskEntries>(t.length-i.offset)/yt.Constants.CENHDR)throw yt.Errors.DISK_ENTRY_TOO_LARGE();r=new Array(i.diskEntries);for(var b=i.offset,v=0;v<r.length;v++){var E=b,g=new mb(c,t);g.header=t.slice(E,E+=yt.Constants.CENHDR),g.entryName=t.slice(E,E+=g.header.fileNameLength),g.header.extraLength&&(g.extra=t.slice(E,E+=g.header.extraLength)),g.header.commentLength&&(g.comment=t.slice(E,E+g.header.commentLength)),b+=g.header.centralHeaderSize,r[v]=g,n[g.entryName]=g}u.clear(),p()}function m(b){var v=t.length-yt.Constants.ENDHDR,E=Math.max(0,v-65535),g=E,_=t.length,S=-1,P=0;for(typeof c.trailingSpace=="boolean"&&c.trailingSpace&&(E=0),v;v>=g;v--)if(t[v]===80){if(t.readUInt32LE(v)===yt.Constants.ENDSIG){S=v,P=v,_=v+yt.Constants.ENDHDR,g=v-yt.Constants.END64HDR;continue}if(t.readUInt32LE(v)===yt.Constants.END64SIG){g=E;continue}if(t.readUInt32LE(v)===yt.Constants.ZIP64SIG){S=v,_=v+yt.readBigUInt64LE(t,v+yt.Constants.ZIP64SIZE)+yt.Constants.ZIP64LEAD;break}}if(S==-1)throw yt.Errors.INVALID_FORMAT();i.loadFromBinary(t.slice(S,_)),i.commentLength&&(o=t.slice(P+yt.Constants.ENDHDR)),b&&h()}function y(){r.length>1&&!f&&r.sort((b,v)=>b.entryName.toLowerCase().localeCompare(v.entryName.toLowerCase()))}return{get entries(){return a||h(),r.filter(b=>!u.has(b))},get comment(){return d.decode(o)},set comment(b){o=yt.toBuffer(b,d.encode),i.commentLength=o.length},getEntryCount:function(){return a?r.length:i.diskEntries},forEach:function(b){this.entries.forEach(b)},getEntry:function(b){return a||h(),n[b]||null},setEntry:function(b){a||h(),r.push(b),n[b.entryName]=b,i.totalEntries=r.length},deleteFile:function(b,v=!0){a||h();let E=n[b];this.getEntryChildren(E,v).map(_=>_.entryName).forEach(this.deleteEntry)},deleteEntry:function(b){a||h();let v=n[b],E=r.indexOf(v);E>=0&&(r.splice(E,1),delete n[b],i.totalEntries=r.length)},getEntryChildren:function(b,v=!0){if(a||h(),typeof b=="object")if(b.isDirectory&&v){let E=[],g=b.entryName;for(let _ of r)_.entryName.startsWith(g)&&E.push(_);return E}else return[b];return[]},getChildCount:function(b){if(b&&b.isDirectory){let v=this.getEntryChildren(b);return v.includes(b)?v.length-1:v.length}return 0},compressToBuffer:function(){a||h(),y();let b=[],v=[],E=0,g=0;i.size=0,i.offset=0;let _=0;for(let F of this.entries){let B=F.getCompressedData();F.header.offset=g;let T=F.packLocalHeader(),L=T.length+B.length;g+=L,b.push(T),b.push(B);let A=F.packCentralHeader();v.push(A),i.size+=A.length,E+=L+A.length,_++}E+=i.mainHeaderSize,i.offset=g,i.totalEntries=_,g=0;let S=Buffer.alloc(E);for(let F of b)F.copy(S,g),g+=F.length;for(let F of v)F.copy(S,g),g+=F.length;let P=i.toBinary();return o&&o.copy(P,yt.Constants.ENDHDR),P.copy(S,g),t=S,a=!1,S},toAsyncBuffer:function(b,v,E,g){try{a||h(),y();let _=[],S=[],P=0,F=0,B=0;i.size=0,i.offset=0;let T=function(L){if(L.length>0){let A=L.shift(),q=A.entryName+A.extra.toString();E&&E(q),A.getCompressedDataAsync(function(j){g&&g(q),A.header.offset=F;let Z=A.packLocalHeader(),k=Z.length+j.length;F+=k,_.push(Z),_.push(j);let D=A.packCentralHeader();S.push(D),i.size+=D.length,P+=k+D.length,B++,T(L)})}else{P+=i.mainHeaderSize,i.offset=F,i.totalEntries=B,F=0;let A=Buffer.alloc(P);_.forEach(function(j){j.copy(A,F),F+=j.length}),S.forEach(function(j){j.copy(A,F),F+=j.length});let q=i.toBinary();o&&o.copy(q,yt.Constants.ENDHDR),q.copy(A,F),t=A,a=!1,b(A)}};T(Array.from(this.entries))}catch(_){v(_)}}}}});var oh=x((Gz,bb)=>{var Ke=ui(),Xe=require("path"),z$=nh(),K$=yb(),Zn=(...t)=>Ke.findLast(t,e=>typeof e=="boolean"),Db=(...t)=>Ke.findLast(t,e=>typeof e=="string"),G$=(...t)=>Ke.findLast(t,e=>typeof e=="function"),W$={noSort:!1,readEntries:!1,method:Ke.Constants.NONE,fs:null};bb.exports=function(t,e){let r=null,n=Object.assign(Object.create(null),W$);t&&typeof t=="object"&&(t instanceof Uint8Array||(Object.assign(n,t),t=n.input?n.input:void 0,n.input&&delete n.input),Buffer.isBuffer(t)&&(r=t,n.method=Ke.Constants.BUFFER,t=void 0)),Object.assign(n,e);let o=new Ke(n);if((typeof n.decoder!="object"||typeof n.decoder.encode!="function"||typeof n.decoder.decode!="function")&&(n.decoder=Ke.decoder),t&&typeof t=="string")if(o.fs.existsSync(t))n.method=Ke.Constants.FILE,n.filename=t,r=o.fs.readFileSync(t);else throw Ke.Errors.INVALID_FILENAME();let i=new K$(r,n),{canonical:a,sanitize:s,zipnamefix:u}=Ke;function c(h){if(h&&i){var m;if(typeof h=="string"&&(m=i.getEntry(Xe.posix.normalize(h))),typeof h=="object"&&typeof h.entryName<"u"&&typeof h.header<"u"&&(m=i.getEntry(h.entryName)),m)return m}return null}function f(h){let{join:m,normalize:y,sep:b}=Xe.posix;return m(".",y(b+h.split("\\").join(b)+b))}function d(h){return h instanceof RegExp?(function(m){return function(y){return m.test(y)}})(h):typeof h!="function"?()=>!0:h}let p=(h,m)=>{let y=m.slice(-1);return y=y===o.sep?o.sep:"",Xe.relative(h,m)+y};return{readFile:function(h,m){var y=c(h);return y&&y.getData(m)||null},childCount:function(h){let m=c(h);if(m)return i.getChildCount(m)},readFileAsync:function(h,m){var y=c(h);y?y.getDataAsync(m):m(null,"getEntry failed for:"+h)},readAsText:function(h,m){var y=c(h);if(y){var b=y.getData();if(b&&b.length)return b.toString(m||"utf8")}return""},readAsTextAsync:function(h,m,y){var b=c(h);b?b.getDataAsync(function(v,E){if(E){m(v,E);return}v&&v.length?m(v.toString(y||"utf8")):m("")}):m("")},deleteFile:function(h,m=!0){var y=c(h);y&&i.deleteFile(y.entryName,m)},deleteEntry:function(h){var m=c(h);m&&i.deleteEntry(m.entryName)},addZipComment:function(h){i.comment=h},getZipComment:function(){return i.comment||""},addZipEntryComment:function(h,m){var y=c(h);y&&(y.comment=m)},getZipEntryComment:function(h){var m=c(h);return m&&m.comment||""},updateFile:function(h,m){var y=c(h);y&&y.setData(m)},addLocalFile:function(h,m,y,b){if(o.fs.existsSync(h)){m=m?f(m):"";let v=Xe.win32.basename(Xe.win32.normalize(h));m+=y||v;let E=o.fs.statSync(h),g=E.isFile()?o.fs.readFileSync(h):Buffer.alloc(0);E.isDirectory()&&(m+=o.sep),this.addFile(m,g,b,E)}else throw Ke.Errors.FILE_NOT_FOUND(h)},addLocalFileAsync:function(h,m){h=typeof h=="object"?h:{localPath:h};let y=Xe.resolve(h.localPath),{comment:b}=h,{zipPath:v,zipName:E}=h,g=this;o.fs.stat(y,function(_,S){if(_)return m(_,!1);v=v?f(v):"";let P=Xe.win32.basename(Xe.win32.normalize(y));if(v+=E||P,S.isFile())o.fs.readFile(y,function(F,B){return F?m(F,!1):(g.addFile(v,B,b,S),setImmediate(m,void 0,!0))});else if(S.isDirectory())return v+=o.sep,g.addFile(v,Buffer.alloc(0),b,S),setImmediate(m,void 0,!0)})},addLocalFolder:function(h,m,y){if(y=d(y),m=m?f(m):"",h=Xe.normalize(h),o.fs.existsSync(h)){let b=o.findFiles(h),v=this;if(b.length)for(let E of b){let g=Xe.join(m,p(h,E));y(g)&&v.addLocalFile(E,Xe.dirname(g))}}else throw Ke.Errors.FILE_NOT_FOUND(h)},addLocalFolderAsync:function(h,m,y,b){b=d(b),y=y?f(y):"",h=Xe.normalize(h);var v=this;o.fs.open(h,"r",function(E){if(E&&E.code==="ENOENT")m(void 0,Ke.Errors.FILE_NOT_FOUND(h));else if(E)m(void 0,E);else{var g=o.findFiles(h),_=-1,S=function(){if(_+=1,_<g.length){var P=g[_],F=p(h,P).split("\\").join("/");F=F.normalize("NFD").replace(/[\u0300-\u036f]/g,"").replace(/[^\x20-\x7E]/g,""),b(F)?o.fs.stat(P,function(B,T){B&&m(void 0,B),T.isFile()?o.fs.readFile(P,function(L,A){L?m(void 0,L):(v.addFile(y+F,A,"",T),S())}):(v.addFile(y+F+"/",Buffer.alloc(0),"",T),S())}):process.nextTick(()=>{S()})}else m(!0,void 0)};S()}})},addLocalFolderAsync2:function(h,m){let y=this;h=typeof h=="object"?h:{localPath:h},localPath=Xe.resolve(f(h.localPath));let{zipPath:b,filter:v,namefix:E}=h;v instanceof RegExp?v=(function(S){return function(P){return S.test(P)}})(v):typeof v!="function"&&(v=function(){return!0}),b=b?f(b):"",E=="latin1"&&(E=S=>S.normalize("NFD").replace(/[\u0300-\u036f]/g,"").replace(/[^\x20-\x7E]/g,"")),typeof E!="function"&&(E=S=>S);let g=S=>Xe.join(b,E(p(localPath,S))),_=S=>Xe.win32.basename(Xe.win32.normalize(E(S)));o.fs.open(localPath,"r",function(S){S&&S.code==="ENOENT"?m(void 0,Ke.Errors.FILE_NOT_FOUND(localPath)):S?m(void 0,S):o.findFilesAsync(localPath,function(P,F){if(P)return m(P);F=F.filter(B=>v(g(B))),F.length||m(void 0,!1),setImmediate(F.reverse().reduce(function(B,T){return function(L,A){if(L||A===!1)return setImmediate(B,L,!1);y.addLocalFileAsync({localPath:T,zipPath:Xe.dirname(g(T)),zipName:_(T)},B)}},m))})})},addLocalFolderPromise:function(h,m){return new Promise((y,b)=>{this.addLocalFolderAsync2(Object.assign({localPath:h},m),(v,E)=>{v&&b(v),E&&y(this)})})},addFile:function(h,m,y,b){h=u(h);let v=c(h),E=v!=null;E||(v=new z$(n),v.entryName=h),v.comment=y||"";let g=typeof b=="object"&&b instanceof o.fs.Stats;g&&(v.header.time=b.mtime);var _=v.isDirectory?16:0;let S=v.isDirectory?16384:32768;return g?S|=4095&b.mode:typeof b=="number"?S|=4095&b:S|=v.isDirectory?493:420,_=(_|S<<16)>>>0,v.attr=_,v.setData(m),E||i.setEntry(v),v},getEntries:function(h){return i.password=h,i?i.entries:[]},getEntry:function(h){return c(h)},getEntryCount:function(){return i.getEntryCount()},forEach:function(h){return i.forEach(h)},extractEntryTo:function(h,m,y,b,v,E){b=Zn(!1,b),v=Zn(!1,v),y=Zn(!0,y),E=Db(v,E);var g=c(h);if(!g)throw Ke.Errors.NO_ENTRY();var _=a(g.entryName),S=s(m,E&&!g.isDirectory?E:y?_:Xe.basename(_));if(g.isDirectory){var P=i.getEntryChildren(g);return P.forEach(function(T){if(T.isDirectory)return;var L=T.getData();if(!L)throw Ke.Errors.CANT_EXTRACT_FILE();var A=a(T.entryName),q=s(m,y?A:Xe.basename(A));let j=v?T.header.fileAttr:void 0;o.writeFileTo(q,L,b,j)}),!0}var F=g.getData(i.password);if(!F)throw Ke.Errors.CANT_EXTRACT_FILE();if(o.fs.existsSync(S)&&!b)throw Ke.Errors.CANT_OVERRIDE();let B=v?h.header.fileAttr:void 0;return o.writeFileTo(S,F,b,B),!0},test:function(h){if(!i)return!1;for(var m in i.entries)try{if(m.isDirectory)continue;var y=i.entries[m].getData(h);if(!y)return!1}catch{return!1}return!0},extractAllTo:function(h,m,y,b){if(y=Zn(!1,y),b=Db(y,b),m=Zn(!1,m),!i)throw Ke.Errors.NO_ZIP();i.entries.forEach(function(v){var E=s(h,a(v.entryName));if(v.isDirectory){o.makeDir(E);return}var g=v.getData(b);if(!g)throw Ke.Errors.CANT_EXTRACT_FILE();let _=y?v.header.fileAttr:void 0;o.writeFileTo(E,g,m,_);try{o.fs.utimesSync(E,v.header.time,v.header.time)}catch{throw Ke.Errors.CANT_EXTRACT_FILE()}})},extractAllToAsync:function(h,m,y,b){if(b=G$(m,y,b),y=Zn(!1,y),m=Zn(!1,m),!b)return new Promise((S,P)=>{this.extractAllToAsync(h,m,y,function(F){F?P(F):S(this)})});if(!i){b(Ke.Errors.NO_ZIP());return}h=Xe.resolve(h);let v=S=>s(h,Xe.normalize(a(S.entryName))),E=(S,P)=>new Error(S+': "'+P+'"'),g=[],_=[];i.entries.forEach(S=>{S.isDirectory?g.push(S):_.push(S)});for(let S of g){let P=v(S),F=y?S.header.fileAttr:void 0;try{o.makeDir(P),F&&o.fs.chmodSync(P,F),o.fs.utimesSync(P,S.header.time,S.header.time)}catch{b(E("Unable to create folder",P))}}_.reverse().reduce(function(S,P){return function(F){if(F)S(F);else{let B=Xe.normalize(a(P.entryName)),T=s(h,B);P.getDataAsync(function(L,A){if(A)S(A);else if(!L)S(Ke.Errors.CANT_EXTRACT_FILE());else{let q=y?P.header.fileAttr:void 0;o.writeFileToAsync(T,L,m,q,function(j){j||S(E("Unable to write file",T)),o.fs.utimes(T,P.header.time,P.header.time,function(Z){Z?S(E("Unable to set times",T)):S()})})}})}}},b)()},writeZip:function(h,m){if(arguments.length===1&&typeof h=="function"&&(m=h,h=""),!h&&n.filename&&(h=n.filename),!!h){var y=i.compressToBuffer();if(y){var b=o.writeFileTo(h,y,!0);typeof m=="function"&&m(b?null:new Error("failed"),"")}}},writeZipPromise:function(h,m){let{overwrite:y,perm:b}=Object.assign({overwrite:!0},m);return new Promise((v,E)=>{!h&&n.filename&&(h=n.filename),h||E("ADM-ZIP: ZIP File Name Missing"),this.toBufferPromise().then(g=>{let _=S=>S?v(S):E("ADM-ZIP: Wasn't able to write zip file");o.writeFileToAsync(h,g,y,b,_)},E)})},toBufferPromise:function(){return new Promise((h,m)=>{i.toAsyncBuffer(h,m)})},toBuffer:function(h,m,y,b){return typeof h=="function"?(i.toAsyncBuffer(h,m,y,b),null):i.compressToBuffer()}}}});var Eb=x((Wz,Cb)=>{var vb={};Cb.exports=vb;var wb={reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],inverse:[7,27],hidden:[8,28],strikethrough:[9,29],black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],gray:[90,39],grey:[90,39],brightRed:[91,39],brightGreen:[92,39],brightYellow:[93,39],brightBlue:[94,39],brightMagenta:[95,39],brightCyan:[96,39],brightWhite:[97,39],bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgGray:[100,49],bgGrey:[100,49],bgBrightRed:[101,49],bgBrightGreen:[102,49],bgBrightYellow:[103,49],bgBrightBlue:[104,49],bgBrightMagenta:[105,49],bgBrightCyan:[106,49],bgBrightWhite:[107,49],blackBG:[40,49],redBG:[41,49],greenBG:[42,49],yellowBG:[43,49],blueBG:[44,49],magentaBG:[45,49],cyanBG:[46,49],whiteBG:[47,49]};Object.keys(wb).forEach(function(t){var e=wb[t],r=vb[t]=[];r.open="\x1B["+e[0]+"m",r.close="\x1B["+e[1]+"m"})});var Sb=x((Yz,_b)=>{"use strict";_b.exports=function(t,e){e=e||process.argv;var r=e.indexOf("--"),n=/^-{1,2}/.test(t)?"":"--",o=e.indexOf(n+t);return o!==-1&&(r===-1?!0:o<r)}});var Ab=x((Jz,xb)=>{"use strict";var Y$=require("os"),kr=Sb(),Tt=process.env,li=void 0;kr("no-color")||kr("no-colors")||kr("color=false")?li=!1:(kr("color")||kr("colors")||kr("color=true")||kr("color=always"))&&(li=!0);"FORCE_COLOR"in Tt&&(li=Tt.FORCE_COLOR.length===0||parseInt(Tt.FORCE_COLOR,10)!==0);function J$(t){return t===0?!1:{level:t,hasBasic:!0,has256:t>=2,has16m:t>=3}}function X$(t){if(li===!1)return 0;if(kr("color=16m")||kr("color=full")||kr("color=truecolor"))return 3;if(kr("color=256"))return 2;if(t&&!t.isTTY&&li!==!0)return 0;var e=li?1:0;if(process.platform==="win32"){var r=Y$.release().split(".");return Number(process.versions.node.split(".")[0])>=8&&Number(r[0])>=10&&Number(r[2])>=10586?Number(r[2])>=14931?3:2:1}if("CI"in Tt)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI"].some(function(o){return o in Tt})||Tt.CI_NAME==="codeship"?1:e;if("TEAMCITY_VERSION"in Tt)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(Tt.TEAMCITY_VERSION)?1:0;if("TERM_PROGRAM"in Tt){var n=parseInt((Tt.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(Tt.TERM_PROGRAM){case"iTerm.app":return n>=3?3:2;case"Hyper":return 3;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(Tt.TERM)?2:/^screen|^xterm|^vt100|^rxvt|color|ansi|cygwin|linux/i.test(Tt.TERM)||"COLORTERM"in Tt?1:(Tt.TERM==="dumb",e)}function ih(t){var e=X$(t);return J$(e)}xb.exports={supportsColor:ih,stdout:ih(process.stdout),stderr:ih(process.stderr)}});var Fb=x((Xz,Ob)=>{Ob.exports=function(e,r){var n="";e=e||"Run the trap, drop the bass",e=e.split("");var o={a:["@","\u0104","\u023A","\u0245","\u0394","\u039B","\u0414"],b:["\xDF","\u0181","\u0243","\u026E","\u03B2","\u0E3F"],c:["\xA9","\u023B","\u03FE"],d:["\xD0","\u018A","\u0500","\u0501","\u0502","\u0503"],e:["\xCB","\u0115","\u018E","\u0258","\u03A3","\u03BE","\u04BC","\u0A6C"],f:["\u04FA"],g:["\u0262"],h:["\u0126","\u0195","\u04A2","\u04BA","\u04C7","\u050A"],i:["\u0F0F"],j:["\u0134"],k:["\u0138","\u04A0","\u04C3","\u051E"],l:["\u0139"],m:["\u028D","\u04CD","\u04CE","\u0520","\u0521","\u0D69"],n:["\xD1","\u014B","\u019D","\u0376","\u03A0","\u048A"],o:["\xD8","\xF5","\xF8","\u01FE","\u0298","\u047A","\u05DD","\u06DD","\u0E4F"],p:["\u01F7","\u048E"],q:["\u09CD"],r:["\xAE","\u01A6","\u0210","\u024C","\u0280","\u042F"],s:["\xA7","\u03DE","\u03DF","\u03E8"],t:["\u0141","\u0166","\u0373"],u:["\u01B1","\u054D"],v:["\u05D8"],w:["\u0428","\u0460","\u047C","\u0D70"],x:["\u04B2","\u04FE","\u04FC","\u04FD"],y:["\xA5","\u04B0","\u04CB"],z:["\u01B5","\u0240"]};return e.forEach(function(i){i=i.toLowerCase();var a=o[i]||[" "],s=Math.floor(Math.random()*a.length);typeof o[i]<"u"?n+=o[i][s]:n+=i}),n}});var Pb=x((Zz,kb)=>{kb.exports=function(e,r){e=e||" he is here ";var n={up:["\u030D","\u030E","\u0304","\u0305","\u033F","\u0311","\u0306","\u0310","\u0352","\u0357","\u0351","\u0307","\u0308","\u030A","\u0342","\u0313","\u0308","\u034A","\u034B","\u034C","\u0303","\u0302","\u030C","\u0350","\u0300","\u0301","\u030B","\u030F","\u0312","\u0313","\u0314","\u033D","\u0309","\u0363","\u0364","\u0365","\u0366","\u0367","\u0368","\u0369","\u036A","\u036B","\u036C","\u036D","\u036E","\u036F","\u033E","\u035B","\u0346","\u031A"],down:["\u0316","\u0317","\u0318","\u0319","\u031C","\u031D","\u031E","\u031F","\u0320","\u0324","\u0325","\u0326","\u0329","\u032A","\u032B","\u032C","\u032D","\u032E","\u032F","\u0330","\u0331","\u0332","\u0333","\u0339","\u033A","\u033B","\u033C","\u0345","\u0347","\u0348","\u0349","\u034D","\u034E","\u0353","\u0354","\u0355","\u0356","\u0359","\u035A","\u0323"],mid:["\u0315","\u031B","\u0300","\u0301","\u0358","\u0321","\u0322","\u0327","\u0328","\u0334","\u0335","\u0336","\u035C","\u035D","\u035E","\u035F","\u0360","\u0362","\u0338","\u0337","\u0361"," \u0489"]},o=[].concat(n.up,n.down,n.mid);function i(u){var c=Math.floor(Math.random()*u);return c}function a(u){var c=!1;return o.filter(function(f){c=f===u}),c}function s(u,c){var f="",d,p;c=c||{},c.up=typeof c.up<"u"?c.up:!0,c.mid=typeof c.mid<"u"?c.mid:!0,c.down=typeof c.down<"u"?c.down:!0,c.size=typeof c.size<"u"?c.size:"maxi",u=u.split("");for(p in u)if(!a(p)){switch(f=f+u[p],d={up:0,down:0,mid:0},c.size){case"mini":d.up=i(8),d.mid=i(2),d.down=i(8);break;case"maxi":d.up=i(16)+3,d.mid=i(4)+1,d.down=i(64)+3;break;default:d.up=i(8)+1,d.mid=i(6)/2,d.down=i(8)+1;break}var h=["up","mid","down"];for(var m in h)for(var y=h[m],b=0;b<=d[y];b++)c[y]&&(f=f+n[y][i(n[y].length)])}return f}return s(e,r)}});var Ib=x((Qz,$b)=>{$b.exports=function(t){return function(e,r,n){if(e===" ")return e;switch(r%3){case 0:return t.red(e);case 1:return t.white(e);case 2:return t.blue(e)}}}});var Rb=x((eK,Tb)=>{Tb.exports=function(t){return function(e,r,n){return r%2===0?e:t.inverse(e)}}});var Nb=x((tK,Bb)=>{Bb.exports=function(t){var e=["red","yellow","green","blue","magenta"];return function(r,n,o){return r===" "?r:t[e[n++%e.length]](r)}}});var jb=x((rK,Lb)=>{Lb.exports=function(t){var e=["underline","inverse","grey","yellow","red","green","blue","white","cyan","magenta","brightYellow","brightRed","brightGreen","brightBlue","brightWhite","brightCyan","brightMagenta"];return function(r,n,o){return r===" "?r:t[e[Math.round(Math.random()*(e.length-2))]](r)}}});var zb=x((oK,Vb)=>{var he={};Vb.exports=he;he.themes={};var Z$=require("util"),Qn=he.styles=Eb(),Mb=Object.defineProperties,Q$=new RegExp(/[\r\n]+/g);he.supportsColor=Ab().supportsColor;typeof he.enabled>"u"&&(he.enabled=he.supportsColor()!==!1);he.enable=function(){he.enabled=!0};he.disable=function(){he.enabled=!1};he.stripColors=he.strip=function(t){return(""+t).replace(/\x1B\[\d+m/g,"")};var nK=he.stylize=function(e,r){if(!he.enabled)return e+"";var n=Qn[r];return!n&&r in he?he[r](e):n.open+e+n.close},e3=/[|\\{}()[\]^$+*?.]/g,t3=function(t){if(typeof t!="string")throw new TypeError("Expected a string");return t.replace(e3,"\\$&")};function qb(t){var e=function r(){return n3.apply(r,arguments)};return e._styles=t,e.__proto__=r3,e}var Hb=(function(){var t={};return Qn.grey=Qn.gray,Object.keys(Qn).forEach(function(e){Qn[e].closeRe=new RegExp(t3(Qn[e].close),"g"),t[e]={get:function(){return qb(this._styles.concat(e))}}}),t})(),r3=Mb(function(){},Hb);function n3(){var t=Array.prototype.slice.call(arguments),e=t.map(function(a){return a!=null&&a.constructor===String?a:Z$.inspect(a)}).join(" ");if(!he.enabled||!e)return e;for(var r=e.indexOf(`
|
|
30
|
+
${h.stack}`)}else p=(f=i?.stack)!==null&&f!==void 0?f:"";return{error:{message:`${(d=i?.name)!==null&&d!==void 0?d:"FetchError"}: ${i?.message}`,details:p,hint:"",code:""},data:null,count:null,status:0,statusText:""}})),o.then(e,r)}returns(){return this}overrideTypes(){return this}};Bd.default=Rd});var Ud=x(jd=>{"use strict";Object.defineProperty(jd,"__esModule",{value:!0});var Kk=(we(),ie(be)),Gk=Kk.__importDefault(Nd()),Ld=class extends Gk.default{select(e){let r=!1,n=(e??"*").split("").map(o=>/\s/.test(o)&&!r?"":(o==='"'&&(r=!r),o)).join("");return this.url.searchParams.set("select",n),this.headers.append("Prefer","return=representation"),this}order(e,{ascending:r=!0,nullsFirst:n,foreignTable:o,referencedTable:i=o}={}){let a=i?`${i}.order`:"order",s=this.url.searchParams.get(a);return this.url.searchParams.set(a,`${s?`${s},`:""}${e}.${r?"asc":"desc"}${n===void 0?"":n?".nullsfirst":".nullslast"}`),this}limit(e,{foreignTable:r,referencedTable:n=r}={}){let o=typeof n>"u"?"limit":`${n}.limit`;return this.url.searchParams.set(o,`${e}`),this}range(e,r,{foreignTable:n,referencedTable:o=n}={}){let i=typeof o>"u"?"offset":`${o}.offset`,a=typeof o>"u"?"limit":`${o}.limit`;return this.url.searchParams.set(i,`${e}`),this.url.searchParams.set(a,`${r-e+1}`),this}abortSignal(e){return this.signal=e,this}single(){return this.headers.set("Accept","application/vnd.pgrst.object+json"),this}maybeSingle(){return this.method==="GET"?this.headers.set("Accept","application/json"):this.headers.set("Accept","application/vnd.pgrst.object+json"),this.isMaybeSingle=!0,this}csv(){return this.headers.set("Accept","text/csv"),this}geojson(){return this.headers.set("Accept","application/geo+json"),this}explain({analyze:e=!1,verbose:r=!1,settings:n=!1,buffers:o=!1,wal:i=!1,format:a="text"}={}){var s;let u=[e?"analyze":null,r?"verbose":null,n?"settings":null,o?"buffers":null,i?"wal":null].filter(Boolean).join("|"),c=(s=this.headers.get("Accept"))!==null&&s!==void 0?s:"application/json";return this.headers.set("Accept",`application/vnd.pgrst.plan+${a}; for="${c}"; options=${u};`),a==="json"?this:this}rollback(){return this.headers.append("Prefer","tx=rollback"),this}returns(){return this}maxAffected(e){return this.headers.append("Prefer","handling=strict"),this.headers.append("Prefer",`max-affected=${e}`),this}};jd.default=Ld});var Fu=x(qd=>{"use strict";Object.defineProperty(qd,"__esModule",{value:!0});var Wk=(we(),ie(be)),Yk=Wk.__importDefault(Ud()),Jk=new RegExp("[,()]"),Md=class extends Yk.default{eq(e,r){return this.url.searchParams.append(e,`eq.${r}`),this}neq(e,r){return this.url.searchParams.append(e,`neq.${r}`),this}gt(e,r){return this.url.searchParams.append(e,`gt.${r}`),this}gte(e,r){return this.url.searchParams.append(e,`gte.${r}`),this}lt(e,r){return this.url.searchParams.append(e,`lt.${r}`),this}lte(e,r){return this.url.searchParams.append(e,`lte.${r}`),this}like(e,r){return this.url.searchParams.append(e,`like.${r}`),this}likeAllOf(e,r){return this.url.searchParams.append(e,`like(all).{${r.join(",")}}`),this}likeAnyOf(e,r){return this.url.searchParams.append(e,`like(any).{${r.join(",")}}`),this}ilike(e,r){return this.url.searchParams.append(e,`ilike.${r}`),this}ilikeAllOf(e,r){return this.url.searchParams.append(e,`ilike(all).{${r.join(",")}}`),this}ilikeAnyOf(e,r){return this.url.searchParams.append(e,`ilike(any).{${r.join(",")}}`),this}regexMatch(e,r){return this.url.searchParams.append(e,`match.${r}`),this}regexIMatch(e,r){return this.url.searchParams.append(e,`imatch.${r}`),this}is(e,r){return this.url.searchParams.append(e,`is.${r}`),this}isDistinct(e,r){return this.url.searchParams.append(e,`isdistinct.${r}`),this}in(e,r){let n=Array.from(new Set(r)).map(o=>typeof o=="string"&&Jk.test(o)?`"${o}"`:`${o}`).join(",");return this.url.searchParams.append(e,`in.(${n})`),this}contains(e,r){return typeof r=="string"?this.url.searchParams.append(e,`cs.${r}`):Array.isArray(r)?this.url.searchParams.append(e,`cs.{${r.join(",")}}`):this.url.searchParams.append(e,`cs.${JSON.stringify(r)}`),this}containedBy(e,r){return typeof r=="string"?this.url.searchParams.append(e,`cd.${r}`):Array.isArray(r)?this.url.searchParams.append(e,`cd.{${r.join(",")}}`):this.url.searchParams.append(e,`cd.${JSON.stringify(r)}`),this}rangeGt(e,r){return this.url.searchParams.append(e,`sr.${r}`),this}rangeGte(e,r){return this.url.searchParams.append(e,`nxl.${r}`),this}rangeLt(e,r){return this.url.searchParams.append(e,`sl.${r}`),this}rangeLte(e,r){return this.url.searchParams.append(e,`nxr.${r}`),this}rangeAdjacent(e,r){return this.url.searchParams.append(e,`adj.${r}`),this}overlaps(e,r){return typeof r=="string"?this.url.searchParams.append(e,`ov.${r}`):this.url.searchParams.append(e,`ov.{${r.join(",")}}`),this}textSearch(e,r,{config:n,type:o}={}){let i="";o==="plain"?i="pl":o==="phrase"?i="ph":o==="websearch"&&(i="w");let a=n===void 0?"":`(${n})`;return this.url.searchParams.append(e,`${i}fts${a}.${r}`),this}match(e){return Object.entries(e).forEach(([r,n])=>{this.url.searchParams.append(r,`eq.${n}`)}),this}not(e,r,n){return this.url.searchParams.append(e,`not.${r}.${n}`),this}or(e,{foreignTable:r,referencedTable:n=r}={}){let o=n?`${n}.or`:"or";return this.url.searchParams.append(o,`(${e})`),this}filter(e,r,n){return this.url.searchParams.append(e,`${r}.${n}`),this}};qd.default=Md});var zd=x(Vd=>{"use strict";Object.defineProperty(Vd,"__esModule",{value:!0});var Xk=(we(),ie(be)),Pa=Xk.__importDefault(Fu()),Hd=class{constructor(e,{headers:r={},schema:n,fetch:o}){this.url=e,this.headers=new Headers(r),this.schema=n,this.fetch=o}select(e,r){let{head:n=!1,count:o}=r??{},i=n?"HEAD":"GET",a=!1,s=(e??"*").split("").map(u=>/\s/.test(u)&&!a?"":(u==='"'&&(a=!a),u)).join("");return this.url.searchParams.set("select",s),o&&this.headers.append("Prefer",`count=${o}`),new Pa.default({method:i,url:this.url,headers:this.headers,schema:this.schema,fetch:this.fetch})}insert(e,{count:r,defaultToNull:n=!0}={}){var o;let i="POST";if(r&&this.headers.append("Prefer",`count=${r}`),n||this.headers.append("Prefer","missing=default"),Array.isArray(e)){let a=e.reduce((s,u)=>s.concat(Object.keys(u)),[]);if(a.length>0){let s=[...new Set(a)].map(u=>`"${u}"`);this.url.searchParams.set("columns",s.join(","))}}return new Pa.default({method:i,url:this.url,headers:this.headers,schema:this.schema,body:e,fetch:(o=this.fetch)!==null&&o!==void 0?o:fetch})}upsert(e,{onConflict:r,ignoreDuplicates:n=!1,count:o,defaultToNull:i=!0}={}){var a;let s="POST";if(this.headers.append("Prefer",`resolution=${n?"ignore":"merge"}-duplicates`),r!==void 0&&this.url.searchParams.set("on_conflict",r),o&&this.headers.append("Prefer",`count=${o}`),i||this.headers.append("Prefer","missing=default"),Array.isArray(e)){let u=e.reduce((c,f)=>c.concat(Object.keys(f)),[]);if(u.length>0){let c=[...new Set(u)].map(f=>`"${f}"`);this.url.searchParams.set("columns",c.join(","))}}return new Pa.default({method:s,url:this.url,headers:this.headers,schema:this.schema,body:e,fetch:(a=this.fetch)!==null&&a!==void 0?a:fetch})}update(e,{count:r}={}){var n;let o="PATCH";return r&&this.headers.append("Prefer",`count=${r}`),new Pa.default({method:o,url:this.url,headers:this.headers,schema:this.schema,body:e,fetch:(n=this.fetch)!==null&&n!==void 0?n:fetch})}delete({count:e}={}){var r;let n="DELETE";return e&&this.headers.append("Prefer",`count=${e}`),new Pa.default({method:n,url:this.url,headers:this.headers,schema:this.schema,fetch:(r=this.fetch)!==null&&r!==void 0?r:fetch})}};Vd.default=Hd});var u0=x(Gd=>{"use strict";Object.defineProperty(Gd,"__esModule",{value:!0});var s0=(we(),ie(be)),Zk=s0.__importDefault(zd()),Qk=s0.__importDefault(Fu()),Kd=class t{constructor(e,{headers:r={},schema:n,fetch:o}={}){this.url=e,this.headers=new Headers(r),this.schemaName=n,this.fetch=o}from(e){if(!e||typeof e!="string"||e.trim()==="")throw new Error("Invalid relation name: relation must be a non-empty string.");let r=new URL(`${this.url}/${e}`);return new Zk.default(r,{headers:new Headers(this.headers),schema:this.schemaName,fetch:this.fetch})}schema(e){return new t(this.url,{headers:this.headers,schema:e,fetch:this.fetch})}rpc(e,r={},{head:n=!1,get:o=!1,count:i}={}){var a;let s,u=new URL(`${this.url}/rpc/${e}`),c;n||o?(s=n?"HEAD":"GET",Object.entries(r).filter(([d,p])=>p!==void 0).map(([d,p])=>[d,Array.isArray(p)?`{${p.join(",")}}`:`${p}`]).forEach(([d,p])=>{u.searchParams.append(d,p)})):(s="POST",c=r);let f=new Headers(this.headers);return i&&f.set("Prefer",`count=${i}`),new Qk.default({method:s,url:u,headers:f,schema:this.schemaName,body:c,fetch:(a=this.fetch)!==null&&a!==void 0?a:fetch})}};Gd.default=Kd});var Wd=x($t=>{"use strict";Object.defineProperty($t,"__esModule",{value:!0});$t.PostgrestError=$t.PostgrestBuilder=$t.PostgrestTransformBuilder=$t.PostgrestFilterBuilder=$t.PostgrestQueryBuilder=$t.PostgrestClient=void 0;var Qo=(we(),ie(be)),c0=Qo.__importDefault(u0());$t.PostgrestClient=c0.default;var l0=Qo.__importDefault(zd());$t.PostgrestQueryBuilder=l0.default;var f0=Qo.__importDefault(Fu());$t.PostgrestFilterBuilder=f0.default;var d0=Qo.__importDefault(Ud());$t.PostgrestTransformBuilder=d0.default;var p0=Qo.__importDefault(Nd());$t.PostgrestBuilder=p0.default;var h0=Qo.__importDefault(Td());$t.PostgrestError=h0.default;$t.default={PostgrestClient:c0.default,PostgrestQueryBuilder:l0.default,PostgrestFilterBuilder:f0.default,PostgrestTransformBuilder:d0.default,PostgrestBuilder:p0.default,PostgrestError:h0.default}});var Jd={};Qr(Jd,{RealtimeClient:()=>Yd});var Yd,Xd=Qe(()=>{Yd=class{constructor(){}connect(){}disconnect(){}}});var An=x(rn=>{"use strict";Object.defineProperty(rn,"__esModule",{value:!0});rn.StorageUnknownError=rn.StorageApiError=rn.StorageError=void 0;rn.isStorageError=eP;var $a=class extends Error{constructor(e){super(e),this.__isStorageError=!0,this.name="StorageError"}};rn.StorageError=$a;function eP(t){return typeof t=="object"&&t!==null&&"__isStorageError"in t}var Zd=class extends $a{constructor(e,r,n){super(e),this.name="StorageApiError",this.status=r,this.statusCode=n}toJSON(){return{name:this.name,message:this.message,status:this.status,statusCode:this.statusCode}}};rn.StorageApiError=Zd;var Qd=class extends $a{constructor(e,r){super(e),this.name="StorageUnknownError",this.originalError=r}};rn.StorageUnknownError=Qd});var Ia=x(hr=>{"use strict";Object.defineProperty(hr,"__esModule",{value:!0});hr.isPlainObject=hr.recursiveToCamel=hr.resolveResponse=hr.resolveFetch=void 0;var tP=t=>t?(...e)=>t(...e):(...e)=>fetch(...e);hr.resolveFetch=tP;var rP=()=>Response;hr.resolveResponse=rP;var nP=t=>{if(Array.isArray(t))return t.map(r=>(0,hr.recursiveToCamel)(r));if(typeof t=="function"||t!==Object(t))return t;let e={};return Object.entries(t).forEach(([r,n])=>{let o=r.replace(/([-_][a-z])/gi,i=>i.toUpperCase().replace(/[-_]/g,""));e[o]=(0,hr.recursiveToCamel)(n)}),e};hr.recursiveToCamel=nP;var oP=t=>{if(typeof t!="object"||t===null)return!1;let e=Object.getPrototypeOf(t);return(e===null||e===Object.prototype||Object.getPrototypeOf(e)===null)&&!(Symbol.toStringTag in t)&&!(Symbol.iterator in t)};hr.isPlainObject=oP});var ku=x(Xn=>{"use strict";Object.defineProperty(Xn,"__esModule",{value:!0});Xn.get=sP;Xn.post=uP;Xn.put=cP;Xn.head=lP;Xn.remove=fP;var Jn=(we(),ie(be)),ep=An(),m0=Ia(),tp=t=>{var e;return t.msg||t.message||t.error_description||(typeof t.error=="string"?t.error:(e=t.error)===null||e===void 0?void 0:e.message)||JSON.stringify(t)},iP=(t,e,r)=>Jn.__awaiter(void 0,void 0,void 0,function*(){let n=yield(0,m0.resolveResponse)();t instanceof n&&!r?.noResolveJson?t.json().then(o=>{let i=t.status||500,a=o?.statusCode||i+"";e(new ep.StorageApiError(tp(o),i,a))}).catch(o=>{e(new ep.StorageUnknownError(tp(o),o))}):e(new ep.StorageUnknownError(tp(t),t))}),aP=(t,e,r,n)=>{let o={method:t,headers:e?.headers||{}};return t==="GET"||!n?o:((0,m0.isPlainObject)(n)?(o.headers=Object.assign({"Content-Type":"application/json"},e?.headers),o.body=JSON.stringify(n)):o.body=n,e?.duplex&&(o.duplex=e.duplex),Object.assign(Object.assign({},o),r))};function Ta(t,e,r,n,o,i){return Jn.__awaiter(this,void 0,void 0,function*(){return new Promise((a,s)=>{t(r,aP(e,n,o,i)).then(u=>{if(!u.ok)throw u;return n?.noResolveJson?u:u.json()}).then(u=>a(u)).catch(u=>iP(u,s,n))})})}function sP(t,e,r,n){return Jn.__awaiter(this,void 0,void 0,function*(){return Ta(t,"GET",e,r,n)})}function uP(t,e,r,n,o){return Jn.__awaiter(this,void 0,void 0,function*(){return Ta(t,"POST",e,n,o,r)})}function cP(t,e,r,n,o){return Jn.__awaiter(this,void 0,void 0,function*(){return Ta(t,"PUT",e,n,o,r)})}function lP(t,e,r,n){return Jn.__awaiter(this,void 0,void 0,function*(){return Ta(t,"HEAD",e,Object.assign(Object.assign({},r),{noResolveJson:!0}),n)})}function fP(t,e,r,n,o){return Jn.__awaiter(this,void 0,void 0,function*(){return Ta(t,"DELETE",e,n,o,r)})}});var g0=x(np=>{"use strict";Object.defineProperty(np,"__esModule",{value:!0});var dP=(we(),ie(be)),pP=An(),rp=class{constructor(e,r){this.downloadFn=e,this.shouldThrowOnError=r}then(e,r){return this.execute().then(e,r)}execute(){return dP.__awaiter(this,void 0,void 0,function*(){try{return{data:(yield this.downloadFn()).body,error:null}}catch(e){if(this.shouldThrowOnError)throw e;if((0,pP.isStorageError)(e))return{data:null,error:e};throw e}})}};np.default=rp});var b0=x(ip=>{"use strict";var y0;Object.defineProperty(ip,"__esModule",{value:!0});var D0=(we(),ie(be)),hP=An(),mP=D0.__importDefault(g0()),op=class{constructor(e,r){this.downloadFn=e,this.shouldThrowOnError=r,this[y0]="BlobDownloadBuilder",this.promise=null}asStream(){return new mP.default(this.downloadFn,this.shouldThrowOnError)}then(e,r){return this.getPromise().then(e,r)}catch(e){return this.getPromise().catch(e)}finally(e){return this.getPromise().finally(e)}getPromise(){return this.promise||(this.promise=this.execute()),this.promise}execute(){return D0.__awaiter(this,void 0,void 0,function*(){try{return{data:yield(yield this.downloadFn()).blob(),error:null}}catch(e){if(this.shouldThrowOnError)throw e;if((0,hP.isStorageError)(e))return{data:null,error:e};throw e}})}};y0=Symbol.toStringTag;ip.default=op});var C0=x(sp=>{"use strict";Object.defineProperty(sp,"__esModule",{value:!0});var It=(we(),ie(be)),zt=An(),Kt=ku(),w0=Ia(),gP=It.__importDefault(b0()),yP={limit:100,offset:0,sortBy:{column:"name",order:"asc"}},v0={cacheControl:"3600",contentType:"text/plain;charset=UTF-8",upsert:!1},ap=class{constructor(e,r={},n,o){this.shouldThrowOnError=!1,this.url=e,this.headers=r,this.bucketId=n,this.fetch=(0,w0.resolveFetch)(o)}throwOnError(){return this.shouldThrowOnError=!0,this}uploadOrUpdate(e,r,n,o){return It.__awaiter(this,void 0,void 0,function*(){try{let i,a=Object.assign(Object.assign({},v0),o),s=Object.assign(Object.assign({},this.headers),e==="POST"&&{"x-upsert":String(a.upsert)}),u=a.metadata;typeof Blob<"u"&&n instanceof Blob?(i=new FormData,i.append("cacheControl",a.cacheControl),u&&i.append("metadata",this.encodeMetadata(u)),i.append("",n)):typeof FormData<"u"&&n instanceof FormData?(i=n,i.has("cacheControl")||i.append("cacheControl",a.cacheControl),u&&!i.has("metadata")&&i.append("metadata",this.encodeMetadata(u))):(i=n,s["cache-control"]=`max-age=${a.cacheControl}`,s["content-type"]=a.contentType,u&&(s["x-metadata"]=this.toBase64(this.encodeMetadata(u))),(typeof ReadableStream<"u"&&i instanceof ReadableStream||i&&typeof i=="object"&&"pipe"in i&&typeof i.pipe=="function")&&!a.duplex&&(a.duplex="half")),o?.headers&&(s=Object.assign(Object.assign({},s),o.headers));let c=this._removeEmptyFolders(r),f=this._getFinalPath(c),d=yield(e=="PUT"?Kt.put:Kt.post)(this.fetch,`${this.url}/object/${f}`,i,Object.assign({headers:s},a?.duplex?{duplex:a.duplex}:{}));return{data:{path:c,id:d.Id,fullPath:d.Key},error:null}}catch(i){if(this.shouldThrowOnError)throw i;if((0,zt.isStorageError)(i))return{data:null,error:i};throw i}})}upload(e,r,n){return It.__awaiter(this,void 0,void 0,function*(){return this.uploadOrUpdate("POST",e,r,n)})}uploadToSignedUrl(e,r,n,o){return It.__awaiter(this,void 0,void 0,function*(){let i=this._removeEmptyFolders(e),a=this._getFinalPath(i),s=new URL(this.url+`/object/upload/sign/${a}`);s.searchParams.set("token",r);try{let u,c=Object.assign({upsert:v0.upsert},o),f=Object.assign(Object.assign({},this.headers),{"x-upsert":String(c.upsert)});typeof Blob<"u"&&n instanceof Blob?(u=new FormData,u.append("cacheControl",c.cacheControl),u.append("",n)):typeof FormData<"u"&&n instanceof FormData?(u=n,u.append("cacheControl",c.cacheControl)):(u=n,f["cache-control"]=`max-age=${c.cacheControl}`,f["content-type"]=c.contentType);let d=yield(0,Kt.put)(this.fetch,s.toString(),u,{headers:f});return{data:{path:i,fullPath:d.Key},error:null}}catch(u){if(this.shouldThrowOnError)throw u;if((0,zt.isStorageError)(u))return{data:null,error:u};throw u}})}createSignedUploadUrl(e,r){return It.__awaiter(this,void 0,void 0,function*(){try{let n=this._getFinalPath(e),o=Object.assign({},this.headers);r?.upsert&&(o["x-upsert"]="true");let i=yield(0,Kt.post)(this.fetch,`${this.url}/object/upload/sign/${n}`,{},{headers:o}),a=new URL(this.url+i.url),s=a.searchParams.get("token");if(!s)throw new zt.StorageError("No token returned by API");return{data:{signedUrl:a.toString(),path:e,token:s},error:null}}catch(n){if(this.shouldThrowOnError)throw n;if((0,zt.isStorageError)(n))return{data:null,error:n};throw n}})}update(e,r,n){return It.__awaiter(this,void 0,void 0,function*(){return this.uploadOrUpdate("PUT",e,r,n)})}move(e,r,n){return It.__awaiter(this,void 0,void 0,function*(){try{return{data:yield(0,Kt.post)(this.fetch,`${this.url}/object/move`,{bucketId:this.bucketId,sourceKey:e,destinationKey:r,destinationBucket:n?.destinationBucket},{headers:this.headers}),error:null}}catch(o){if(this.shouldThrowOnError)throw o;if((0,zt.isStorageError)(o))return{data:null,error:o};throw o}})}copy(e,r,n){return It.__awaiter(this,void 0,void 0,function*(){try{return{data:{path:(yield(0,Kt.post)(this.fetch,`${this.url}/object/copy`,{bucketId:this.bucketId,sourceKey:e,destinationKey:r,destinationBucket:n?.destinationBucket},{headers:this.headers})).Key},error:null}}catch(o){if(this.shouldThrowOnError)throw o;if((0,zt.isStorageError)(o))return{data:null,error:o};throw o}})}createSignedUrl(e,r,n){return It.__awaiter(this,void 0,void 0,function*(){try{let o=this._getFinalPath(e),i=yield(0,Kt.post)(this.fetch,`${this.url}/object/sign/${o}`,Object.assign({expiresIn:r},n?.transform?{transform:n.transform}:{}),{headers:this.headers}),a=n?.download?`&download=${n.download===!0?"":n.download}`:"";return i={signedUrl:encodeURI(`${this.url}${i.signedURL}${a}`)},{data:i,error:null}}catch(o){if(this.shouldThrowOnError)throw o;if((0,zt.isStorageError)(o))return{data:null,error:o};throw o}})}createSignedUrls(e,r,n){return It.__awaiter(this,void 0,void 0,function*(){try{let o=yield(0,Kt.post)(this.fetch,`${this.url}/object/sign/${this.bucketId}`,{expiresIn:r,paths:e},{headers:this.headers}),i=n?.download?`&download=${n.download===!0?"":n.download}`:"";return{data:o.map(a=>Object.assign(Object.assign({},a),{signedUrl:a.signedURL?encodeURI(`${this.url}${a.signedURL}${i}`):null})),error:null}}catch(o){if(this.shouldThrowOnError)throw o;if((0,zt.isStorageError)(o))return{data:null,error:o};throw o}})}download(e,r){let o=typeof r?.transform<"u"?"render/image/authenticated":"object",i=this.transformOptsToQueryString(r?.transform||{}),a=i?`?${i}`:"",s=this._getFinalPath(e),u=()=>(0,Kt.get)(this.fetch,`${this.url}/${o}/${s}${a}`,{headers:this.headers,noResolveJson:!0});return new gP.default(u,this.shouldThrowOnError)}info(e){return It.__awaiter(this,void 0,void 0,function*(){let r=this._getFinalPath(e);try{let n=yield(0,Kt.get)(this.fetch,`${this.url}/object/info/${r}`,{headers:this.headers});return{data:(0,w0.recursiveToCamel)(n),error:null}}catch(n){if(this.shouldThrowOnError)throw n;if((0,zt.isStorageError)(n))return{data:null,error:n};throw n}})}exists(e){return It.__awaiter(this,void 0,void 0,function*(){let r=this._getFinalPath(e);try{return yield(0,Kt.head)(this.fetch,`${this.url}/object/${r}`,{headers:this.headers}),{data:!0,error:null}}catch(n){if(this.shouldThrowOnError)throw n;if((0,zt.isStorageError)(n)&&n instanceof zt.StorageUnknownError){let o=n.originalError;if([400,404].includes(o?.status))return{data:!1,error:n}}throw n}})}getPublicUrl(e,r){let n=this._getFinalPath(e),o=[],i=r?.download?`download=${r.download===!0?"":r.download}`:"";i!==""&&o.push(i);let s=typeof r?.transform<"u"?"render/image":"object",u=this.transformOptsToQueryString(r?.transform||{});u!==""&&o.push(u);let c=o.join("&");return c!==""&&(c=`?${c}`),{data:{publicUrl:encodeURI(`${this.url}/${s}/public/${n}${c}`)}}}remove(e){return It.__awaiter(this,void 0,void 0,function*(){try{return{data:yield(0,Kt.remove)(this.fetch,`${this.url}/object/${this.bucketId}`,{prefixes:e},{headers:this.headers}),error:null}}catch(r){if(this.shouldThrowOnError)throw r;if((0,zt.isStorageError)(r))return{data:null,error:r};throw r}})}list(e,r,n){return It.__awaiter(this,void 0,void 0,function*(){try{let o=Object.assign(Object.assign(Object.assign({},yP),r),{prefix:e||""});return{data:yield(0,Kt.post)(this.fetch,`${this.url}/object/list/${this.bucketId}`,o,{headers:this.headers},n),error:null}}catch(o){if(this.shouldThrowOnError)throw o;if((0,zt.isStorageError)(o))return{data:null,error:o};throw o}})}listV2(e,r){return It.__awaiter(this,void 0,void 0,function*(){try{let n=Object.assign({},e);return{data:yield(0,Kt.post)(this.fetch,`${this.url}/object/list-v2/${this.bucketId}`,n,{headers:this.headers},r),error:null}}catch(n){if(this.shouldThrowOnError)throw n;if((0,zt.isStorageError)(n))return{data:null,error:n};throw n}})}encodeMetadata(e){return JSON.stringify(e)}toBase64(e){return typeof Buffer<"u"?Buffer.from(e).toString("base64"):btoa(e)}_getFinalPath(e){return`${this.bucketId}/${e.replace(/^\/+/,"")}`}_removeEmptyFolders(e){return e.replace(/^\/|\/$/g,"").replace(/\/+/g,"/")}transformOptsToQueryString(e){let r=[];return e.width&&r.push(`width=${e.width}`),e.height&&r.push(`height=${e.height}`),e.resize&&r.push(`resize=${e.resize}`),e.format&&r.push(`format=${e.format}`),e.quality&&r.push(`quality=${e.quality}`),r.join("&")}};sp.default=ap});var up=x(Pu=>{"use strict";Object.defineProperty(Pu,"__esModule",{value:!0});Pu.version=void 0;Pu.version="2.84.0"});var cp=x($u=>{"use strict";Object.defineProperty($u,"__esModule",{value:!0});$u.DEFAULT_HEADERS=void 0;var DP=up();$u.DEFAULT_HEADERS={"X-Client-Info":`storage-js/${DP.version}`}});var E0=x(fp=>{"use strict";Object.defineProperty(fp,"__esModule",{value:!0});var ei=(we(),ie(be)),bP=cp(),ti=An(),ri=ku(),wP=Ia(),lp=class{constructor(e,r={},n,o){this.shouldThrowOnError=!1;let i=new URL(e);o?.useNewHostname&&/supabase\.(co|in|red)$/.test(i.hostname)&&!i.hostname.includes("storage.supabase.")&&(i.hostname=i.hostname.replace("supabase.","storage.supabase.")),this.url=i.href.replace(/\/$/,""),this.headers=Object.assign(Object.assign({},bP.DEFAULT_HEADERS),r),this.fetch=(0,wP.resolveFetch)(n)}throwOnError(){return this.shouldThrowOnError=!0,this}listBuckets(e){return ei.__awaiter(this,void 0,void 0,function*(){try{let r=this.listBucketOptionsToQueryString(e);return{data:yield(0,ri.get)(this.fetch,`${this.url}/bucket${r}`,{headers:this.headers}),error:null}}catch(r){if(this.shouldThrowOnError)throw r;if((0,ti.isStorageError)(r))return{data:null,error:r};throw r}})}getBucket(e){return ei.__awaiter(this,void 0,void 0,function*(){try{return{data:yield(0,ri.get)(this.fetch,`${this.url}/bucket/${e}`,{headers:this.headers}),error:null}}catch(r){if(this.shouldThrowOnError)throw r;if((0,ti.isStorageError)(r))return{data:null,error:r};throw r}})}createBucket(e){return ei.__awaiter(this,arguments,void 0,function*(r,n={public:!1}){try{return{data:yield(0,ri.post)(this.fetch,`${this.url}/bucket`,{id:r,name:r,type:n.type,public:n.public,file_size_limit:n.fileSizeLimit,allowed_mime_types:n.allowedMimeTypes},{headers:this.headers}),error:null}}catch(o){if(this.shouldThrowOnError)throw o;if((0,ti.isStorageError)(o))return{data:null,error:o};throw o}})}updateBucket(e,r){return ei.__awaiter(this,void 0,void 0,function*(){try{return{data:yield(0,ri.put)(this.fetch,`${this.url}/bucket/${e}`,{id:e,name:e,public:r.public,file_size_limit:r.fileSizeLimit,allowed_mime_types:r.allowedMimeTypes},{headers:this.headers}),error:null}}catch(n){if(this.shouldThrowOnError)throw n;if((0,ti.isStorageError)(n))return{data:null,error:n};throw n}})}emptyBucket(e){return ei.__awaiter(this,void 0,void 0,function*(){try{return{data:yield(0,ri.post)(this.fetch,`${this.url}/bucket/${e}/empty`,{},{headers:this.headers}),error:null}}catch(r){if(this.shouldThrowOnError)throw r;if((0,ti.isStorageError)(r))return{data:null,error:r};throw r}})}deleteBucket(e){return ei.__awaiter(this,void 0,void 0,function*(){try{return{data:yield(0,ri.remove)(this.fetch,`${this.url}/bucket/${e}`,{},{headers:this.headers}),error:null}}catch(r){if(this.shouldThrowOnError)throw r;if((0,ti.isStorageError)(r))return{data:null,error:r};throw r}})}listBucketOptionsToQueryString(e){let r={};return e&&("limit"in e&&(r.limit=String(e.limit)),"offset"in e&&(r.offset=String(e.offset)),e.search&&(r.search=e.search),e.sortColumn&&(r.sortColumn=e.sortColumn),e.sortOrder&&(r.sortOrder=e.sortOrder)),Object.keys(r).length>0?"?"+new URLSearchParams(r).toString():""}};fp.default=lp});var yp=x(gp=>{"use strict";Object.defineProperty(gp,"__esModule",{value:!0});var dp=(we(),ie(be)),vP=cp(),pp=An(),hp=ku(),CP=Ia(),mp=class{constructor(e,r={},n){this.shouldThrowOnError=!1,this.url=e.replace(/\/$/,""),this.headers=Object.assign(Object.assign({},vP.DEFAULT_HEADERS),r),this.fetch=(0,CP.resolveFetch)(n)}throwOnError(){return this.shouldThrowOnError=!0,this}createBucket(e){return dp.__awaiter(this,void 0,void 0,function*(){try{return{data:yield(0,hp.post)(this.fetch,`${this.url}/bucket`,{name:e},{headers:this.headers}),error:null}}catch(r){if(this.shouldThrowOnError)throw r;if((0,pp.isStorageError)(r))return{data:null,error:r};throw r}})}listBuckets(e){return dp.__awaiter(this,void 0,void 0,function*(){try{let r=new URLSearchParams;e?.limit!==void 0&&r.set("limit",e.limit.toString()),e?.offset!==void 0&&r.set("offset",e.offset.toString()),e?.sortColumn&&r.set("sortColumn",e.sortColumn),e?.sortOrder&&r.set("sortOrder",e.sortOrder),e?.search&&r.set("search",e.search);let n=r.toString(),o=n?`${this.url}/bucket?${n}`:`${this.url}/bucket`;return{data:yield(0,hp.get)(this.fetch,o,{headers:this.headers}),error:null}}catch(r){if(this.shouldThrowOnError)throw r;if((0,pp.isStorageError)(r))return{data:null,error:r};throw r}})}deleteBucket(e){return dp.__awaiter(this,void 0,void 0,function*(){try{return{data:yield(0,hp.remove)(this.fetch,`${this.url}/bucket/${e}`,{},{headers:this.headers}),error:null}}catch(r){if(this.shouldThrowOnError)throw r;if((0,pp.isStorageError)(r))return{data:null,error:r};throw r}})}};gp.default=mp});var Tu=x(Iu=>{"use strict";Object.defineProperty(Iu,"__esModule",{value:!0});Iu.DEFAULT_HEADERS=void 0;var EP=up();Iu.DEFAULT_HEADERS={"X-Client-Info":`storage-js/${EP.version}`,"Content-Type":"application/json"}});var ni=x(Or=>{"use strict";Object.defineProperty(Or,"__esModule",{value:!0});Or.StorageVectorsErrorCode=Or.StorageVectorsUnknownError=Or.StorageVectorsApiError=Or.StorageVectorsError=void 0;Or.isStorageVectorsError=_P;var Ra=class extends Error{constructor(e){super(e),this.__isStorageVectorsError=!0,this.name="StorageVectorsError"}};Or.StorageVectorsError=Ra;function _P(t){return typeof t=="object"&&t!==null&&"__isStorageVectorsError"in t}var Dp=class extends Ra{constructor(e,r,n){super(e),this.name="StorageVectorsApiError",this.status=r,this.statusCode=n}toJSON(){return{name:this.name,message:this.message,status:this.status,statusCode:this.statusCode}}};Or.StorageVectorsApiError=Dp;var bp=class extends Ra{constructor(e,r){super(e),this.name="StorageVectorsUnknownError",this.originalError=r}};Or.StorageVectorsUnknownError=bp;var _0;(function(t){t.InternalError="InternalError",t.S3VectorConflictException="S3VectorConflictException",t.S3VectorNotFoundException="S3VectorNotFoundException",t.S3VectorBucketNotEmpty="S3VectorBucketNotEmpty",t.S3VectorMaxBucketsExceeded="S3VectorMaxBucketsExceeded",t.S3VectorMaxIndexesExceeded="S3VectorMaxIndexesExceeded"})(_0||(Or.StorageVectorsErrorCode=_0={}))});var oi=x(mr=>{"use strict";Object.defineProperty(mr,"__esModule",{value:!0});mr.validateVectorDimension=mr.normalizeToFloat32=mr.isPlainObject=mr.resolveResponse=mr.resolveFetch=void 0;var SP=t=>t?(...e)=>t(...e):(...e)=>fetch(...e);mr.resolveFetch=SP;var xP=()=>Response;mr.resolveResponse=xP;var AP=t=>{if(typeof t!="object"||t===null)return!1;let e=Object.getPrototypeOf(t);return(e===null||e===Object.prototype||Object.getPrototypeOf(e)===null)&&!(Symbol.toStringTag in t)&&!(Symbol.iterator in t)};mr.isPlainObject=AP;var OP=t=>Array.from(new Float32Array(t));mr.normalizeToFloat32=OP;var FP=(t,e)=>{if(e!==void 0&&t.float32.length!==e)throw new Error(`Vector dimension mismatch: expected ${e}, got ${t.float32.length}`)};mr.validateVectorDimension=FP});var Nu=x(ai=>{"use strict";Object.defineProperty(ai,"__esModule",{value:!0});ai.get=IP;ai.post=TP;ai.put=RP;ai.remove=BP;var ii=(we(),ie(be)),Ru=ni(),kP=oi(),S0=t=>t.msg||t.message||t.error_description||t.error||JSON.stringify(t),PP=(t,e,r)=>ii.__awaiter(void 0,void 0,void 0,function*(){if(t&&typeof t=="object"&&"status"in t&&"ok"in t&&typeof t.status=="number"&&!r?.noResolveJson){let o=t.status||500,i=t;if(typeof i.json=="function")i.json().then(a=>{let s=a?.statusCode||a?.code||o+"";e(new Ru.StorageVectorsApiError(S0(a),o,s))}).catch(()=>{let a=o+"",s=i.statusText||`HTTP ${o} error`;e(new Ru.StorageVectorsApiError(s,o,a))});else{let a=o+"",s=i.statusText||`HTTP ${o} error`;e(new Ru.StorageVectorsApiError(s,o,a))}}else e(new Ru.StorageVectorsUnknownError(S0(t),t))}),$P=(t,e,r,n)=>{let o={method:t,headers:e?.headers||{}};return t==="GET"||!n?o:((0,kP.isPlainObject)(n)?(o.headers=Object.assign({"Content-Type":"application/json"},e?.headers),o.body=JSON.stringify(n)):o.body=n,Object.assign(Object.assign({},o),r))};function Bu(t,e,r,n,o,i){return ii.__awaiter(this,void 0,void 0,function*(){return new Promise((a,s)=>{t(r,$P(e,n,o,i)).then(u=>{if(!u.ok)throw u;if(n?.noResolveJson)return u;let c=u.headers.get("content-type");return!c||!c.includes("application/json")?{}:u.json()}).then(u=>a(u)).catch(u=>PP(u,s,n))})})}function IP(t,e,r,n){return ii.__awaiter(this,void 0,void 0,function*(){return Bu(t,"GET",e,r,n)})}function TP(t,e,r,n,o){return ii.__awaiter(this,void 0,void 0,function*(){return Bu(t,"POST",e,n,o,r)})}function RP(t,e,r,n,o){return ii.__awaiter(this,void 0,void 0,function*(){return Bu(t,"PUT",e,n,o,r)})}function BP(t,e,r,n,o){return ii.__awaiter(this,void 0,void 0,function*(){return Bu(t,"DELETE",e,n,o,r)})}});var Cp=x(vp=>{"use strict";Object.defineProperty(vp,"__esModule",{value:!0});var Lu=(we(),ie(be)),NP=Tu(),ju=ni(),Uu=Nu(),LP=oi(),wp=class{constructor(e,r={},n){this.shouldThrowOnError=!1,this.url=e.replace(/\/$/,""),this.headers=Object.assign(Object.assign({},NP.DEFAULT_HEADERS),r),this.fetch=(0,LP.resolveFetch)(n)}throwOnError(){return this.shouldThrowOnError=!0,this}createIndex(e){return Lu.__awaiter(this,void 0,void 0,function*(){try{return{data:(yield(0,Uu.post)(this.fetch,`${this.url}/CreateIndex`,e,{headers:this.headers}))||{},error:null}}catch(r){if(this.shouldThrowOnError)throw r;if((0,ju.isStorageVectorsError)(r))return{data:null,error:r};throw r}})}getIndex(e,r){return Lu.__awaiter(this,void 0,void 0,function*(){try{return{data:yield(0,Uu.post)(this.fetch,`${this.url}/GetIndex`,{vectorBucketName:e,indexName:r},{headers:this.headers}),error:null}}catch(n){if(this.shouldThrowOnError)throw n;if((0,ju.isStorageVectorsError)(n))return{data:null,error:n};throw n}})}listIndexes(e){return Lu.__awaiter(this,void 0,void 0,function*(){try{return{data:yield(0,Uu.post)(this.fetch,`${this.url}/ListIndexes`,e,{headers:this.headers}),error:null}}catch(r){if(this.shouldThrowOnError)throw r;if((0,ju.isStorageVectorsError)(r))return{data:null,error:r};throw r}})}deleteIndex(e,r){return Lu.__awaiter(this,void 0,void 0,function*(){try{return{data:(yield(0,Uu.post)(this.fetch,`${this.url}/DeleteIndex`,{vectorBucketName:e,indexName:r},{headers:this.headers}))||{},error:null}}catch(n){if(this.shouldThrowOnError)throw n;if((0,ju.isStorageVectorsError)(n))return{data:null,error:n};throw n}})}};vp.default=wp});var Sp=x(_p=>{"use strict";Object.defineProperty(_p,"__esModule",{value:!0});var Ba=(we(),ie(be)),jP=Tu(),Na=ni(),La=Nu(),UP=oi(),Ep=class{constructor(e,r={},n){this.shouldThrowOnError=!1,this.url=e.replace(/\/$/,""),this.headers=Object.assign(Object.assign({},jP.DEFAULT_HEADERS),r),this.fetch=(0,UP.resolveFetch)(n)}throwOnError(){return this.shouldThrowOnError=!0,this}putVectors(e){return Ba.__awaiter(this,void 0,void 0,function*(){try{if(e.vectors.length<1||e.vectors.length>500)throw new Error("Vector batch size must be between 1 and 500 items");return{data:(yield(0,La.post)(this.fetch,`${this.url}/PutVectors`,e,{headers:this.headers}))||{},error:null}}catch(r){if(this.shouldThrowOnError)throw r;if((0,Na.isStorageVectorsError)(r))return{data:null,error:r};throw r}})}getVectors(e){return Ba.__awaiter(this,void 0,void 0,function*(){try{return{data:yield(0,La.post)(this.fetch,`${this.url}/GetVectors`,e,{headers:this.headers}),error:null}}catch(r){if(this.shouldThrowOnError)throw r;if((0,Na.isStorageVectorsError)(r))return{data:null,error:r};throw r}})}listVectors(e){return Ba.__awaiter(this,void 0,void 0,function*(){try{if(e.segmentCount!==void 0){if(e.segmentCount<1||e.segmentCount>16)throw new Error("segmentCount must be between 1 and 16");if(e.segmentIndex!==void 0&&(e.segmentIndex<0||e.segmentIndex>=e.segmentCount))throw new Error(`segmentIndex must be between 0 and ${e.segmentCount-1}`)}return{data:yield(0,La.post)(this.fetch,`${this.url}/ListVectors`,e,{headers:this.headers}),error:null}}catch(r){if(this.shouldThrowOnError)throw r;if((0,Na.isStorageVectorsError)(r))return{data:null,error:r};throw r}})}queryVectors(e){return Ba.__awaiter(this,void 0,void 0,function*(){try{return{data:yield(0,La.post)(this.fetch,`${this.url}/QueryVectors`,e,{headers:this.headers}),error:null}}catch(r){if(this.shouldThrowOnError)throw r;if((0,Na.isStorageVectorsError)(r))return{data:null,error:r};throw r}})}deleteVectors(e){return Ba.__awaiter(this,void 0,void 0,function*(){try{if(e.keys.length<1||e.keys.length>500)throw new Error("Keys batch size must be between 1 and 500 items");return{data:(yield(0,La.post)(this.fetch,`${this.url}/DeleteVectors`,e,{headers:this.headers}))||{},error:null}}catch(r){if(this.shouldThrowOnError)throw r;if((0,Na.isStorageVectorsError)(r))return{data:null,error:r};throw r}})}};_p.default=Ep});var Op=x(Ap=>{"use strict";Object.defineProperty(Ap,"__esModule",{value:!0});var Mu=(we(),ie(be)),MP=Tu(),qu=ni(),Hu=Nu(),qP=oi(),xp=class{constructor(e,r={},n){this.shouldThrowOnError=!1,this.url=e.replace(/\/$/,""),this.headers=Object.assign(Object.assign({},MP.DEFAULT_HEADERS),r),this.fetch=(0,qP.resolveFetch)(n)}throwOnError(){return this.shouldThrowOnError=!0,this}createBucket(e){return Mu.__awaiter(this,void 0,void 0,function*(){try{return{data:(yield(0,Hu.post)(this.fetch,`${this.url}/CreateVectorBucket`,{vectorBucketName:e},{headers:this.headers}))||{},error:null}}catch(r){if(this.shouldThrowOnError)throw r;if((0,qu.isStorageVectorsError)(r))return{data:null,error:r};throw r}})}getBucket(e){return Mu.__awaiter(this,void 0,void 0,function*(){try{return{data:yield(0,Hu.post)(this.fetch,`${this.url}/GetVectorBucket`,{vectorBucketName:e},{headers:this.headers}),error:null}}catch(r){if(this.shouldThrowOnError)throw r;if((0,qu.isStorageVectorsError)(r))return{data:null,error:r};throw r}})}listBuckets(){return Mu.__awaiter(this,arguments,void 0,function*(e={}){try{return{data:yield(0,Hu.post)(this.fetch,`${this.url}/ListVectorBuckets`,e,{headers:this.headers}),error:null}}catch(r){if(this.shouldThrowOnError)throw r;if((0,qu.isStorageVectorsError)(r))return{data:null,error:r};throw r}})}deleteBucket(e){return Mu.__awaiter(this,void 0,void 0,function*(){try{return{data:(yield(0,Hu.post)(this.fetch,`${this.url}/DeleteVectorBucket`,{vectorBucketName:e},{headers:this.headers}))||{},error:null}}catch(r){if(this.shouldThrowOnError)throw r;if((0,qu.isStorageVectorsError)(r))return{data:null,error:r};throw r}})}};Ap.default=xp});var x0=x(On=>{"use strict";Object.defineProperty(On,"__esModule",{value:!0});On.VectorIndexScope=On.VectorBucketScope=On.StorageVectorsClient=void 0;var gr=(we(),ie(be)),HP=gr.__importDefault(Cp()),VP=gr.__importDefault(Sp()),zP=gr.__importDefault(Op()),Fp=class extends zP.default{constructor(e,r={}){super(e,r.headers||{},r.fetch)}from(e){return new Vu(this.url,this.headers,e,this.fetch)}};On.StorageVectorsClient=Fp;var Vu=class extends HP.default{constructor(e,r,n,o){super(e,r,o),this.vectorBucketName=n}createIndex(e){let r=Object.create(null,{createIndex:{get:()=>super.createIndex}});return gr.__awaiter(this,void 0,void 0,function*(){return r.createIndex.call(this,Object.assign(Object.assign({},e),{vectorBucketName:this.vectorBucketName}))})}listIndexes(){let e=Object.create(null,{listIndexes:{get:()=>super.listIndexes}});return gr.__awaiter(this,arguments,void 0,function*(r={}){return e.listIndexes.call(this,Object.assign(Object.assign({},r),{vectorBucketName:this.vectorBucketName}))})}getIndex(e){let r=Object.create(null,{getIndex:{get:()=>super.getIndex}});return gr.__awaiter(this,void 0,void 0,function*(){return r.getIndex.call(this,this.vectorBucketName,e)})}deleteIndex(e){let r=Object.create(null,{deleteIndex:{get:()=>super.deleteIndex}});return gr.__awaiter(this,void 0,void 0,function*(){return r.deleteIndex.call(this,this.vectorBucketName,e)})}index(e){return new zu(this.url,this.headers,this.vectorBucketName,e,this.fetch)}};On.VectorBucketScope=Vu;var zu=class extends VP.default{constructor(e,r,n,o,i){super(e,r,i),this.vectorBucketName=n,this.indexName=o}putVectors(e){let r=Object.create(null,{putVectors:{get:()=>super.putVectors}});return gr.__awaiter(this,void 0,void 0,function*(){return r.putVectors.call(this,Object.assign(Object.assign({},e),{vectorBucketName:this.vectorBucketName,indexName:this.indexName}))})}getVectors(e){let r=Object.create(null,{getVectors:{get:()=>super.getVectors}});return gr.__awaiter(this,void 0,void 0,function*(){return r.getVectors.call(this,Object.assign(Object.assign({},e),{vectorBucketName:this.vectorBucketName,indexName:this.indexName}))})}listVectors(){let e=Object.create(null,{listVectors:{get:()=>super.listVectors}});return gr.__awaiter(this,arguments,void 0,function*(r={}){return e.listVectors.call(this,Object.assign(Object.assign({},r),{vectorBucketName:this.vectorBucketName,indexName:this.indexName}))})}queryVectors(e){let r=Object.create(null,{queryVectors:{get:()=>super.queryVectors}});return gr.__awaiter(this,void 0,void 0,function*(){return r.queryVectors.call(this,Object.assign(Object.assign({},e),{vectorBucketName:this.vectorBucketName,indexName:this.indexName}))})}deleteVectors(e){let r=Object.create(null,{deleteVectors:{get:()=>super.deleteVectors}});return gr.__awaiter(this,void 0,void 0,function*(){return r.deleteVectors.call(this,Object.assign(Object.assign({},e),{vectorBucketName:this.vectorBucketName,indexName:this.indexName}))})}};On.VectorIndexScope=zu});var $p=x(ve=>{"use strict";Object.defineProperty(ve,"__esModule",{value:!0});ve.validateVectorDimension=ve.normalizeToFloat32=ve.isPlainObject=ve.resolveResponse=ve.resolveFetch=ve.isStorageVectorsError=ve.StorageVectorsErrorCode=ve.StorageVectorsUnknownError=ve.StorageVectorsApiError=ve.StorageVectorsError=ve.VectorDataApi=ve.VectorIndexApi=ve.VectorBucketApi=ve.VectorIndexScope=ve.VectorBucketScope=ve.StorageVectorsClient=void 0;var kp=(we(),ie(be)),Pp=x0();Object.defineProperty(ve,"StorageVectorsClient",{enumerable:!0,get:function(){return Pp.StorageVectorsClient}});Object.defineProperty(ve,"VectorBucketScope",{enumerable:!0,get:function(){return Pp.VectorBucketScope}});Object.defineProperty(ve,"VectorIndexScope",{enumerable:!0,get:function(){return Pp.VectorIndexScope}});var KP=Op();Object.defineProperty(ve,"VectorBucketApi",{enumerable:!0,get:function(){return kp.__importDefault(KP).default}});var GP=Cp();Object.defineProperty(ve,"VectorIndexApi",{enumerable:!0,get:function(){return kp.__importDefault(GP).default}});var WP=Sp();Object.defineProperty(ve,"VectorDataApi",{enumerable:!0,get:function(){return kp.__importDefault(WP).default}});var ja=ni();Object.defineProperty(ve,"StorageVectorsError",{enumerable:!0,get:function(){return ja.StorageVectorsError}});Object.defineProperty(ve,"StorageVectorsApiError",{enumerable:!0,get:function(){return ja.StorageVectorsApiError}});Object.defineProperty(ve,"StorageVectorsUnknownError",{enumerable:!0,get:function(){return ja.StorageVectorsUnknownError}});Object.defineProperty(ve,"StorageVectorsErrorCode",{enumerable:!0,get:function(){return ja.StorageVectorsErrorCode}});Object.defineProperty(ve,"isStorageVectorsError",{enumerable:!0,get:function(){return ja.isStorageVectorsError}});var Ua=oi();Object.defineProperty(ve,"resolveFetch",{enumerable:!0,get:function(){return Ua.resolveFetch}});Object.defineProperty(ve,"resolveResponse",{enumerable:!0,get:function(){return Ua.resolveResponse}});Object.defineProperty(ve,"isPlainObject",{enumerable:!0,get:function(){return Ua.isPlainObject}});Object.defineProperty(ve,"normalizeToFloat32",{enumerable:!0,get:function(){return Ua.normalizeToFloat32}});Object.defineProperty(ve,"validateVectorDimension",{enumerable:!0,get:function(){return Ua.validateVectorDimension}})});var A0=x(Ku=>{"use strict";Object.defineProperty(Ku,"__esModule",{value:!0});Ku.StorageClient=void 0;var Tp=(we(),ie(be)),YP=Tp.__importDefault(C0()),JP=Tp.__importDefault(E0()),XP=Tp.__importDefault(yp()),ZP=$p(),Ip=class extends JP.default{constructor(e,r={},n,o){super(e,r,n,o)}from(e){return new YP.default(this.url,this.headers,e,this.fetch)}get vectors(){return new ZP.StorageVectorsClient(this.url+"/vector",{headers:this.headers,fetch:this.fetch})}get analytics(){return new XP.default(this.url+"/iceberg",this.headers,this.fetch)}};Ku.StorageClient=Ip});var F0=x(O0=>{"use strict";Object.defineProperty(O0,"__esModule",{value:!0})});var k0=x(nn=>{"use strict";Object.defineProperty(nn,"__esModule",{value:!0});nn.StorageAnalyticsClient=nn.StorageClient=void 0;var Gu=(we(),ie(be)),QP=A0();Object.defineProperty(nn,"StorageClient",{enumerable:!0,get:function(){return QP.StorageClient}});var e$=yp();Object.defineProperty(nn,"StorageAnalyticsClient",{enumerable:!0,get:function(){return Gu.__importDefault(e$).default}});Gu.__exportStar(F0(),nn);Gu.__exportStar(An(),nn);Gu.__exportStar($p(),nn)});var P0=x(Wu=>{"use strict";Object.defineProperty(Wu,"__esModule",{value:!0});Wu.version=void 0;Wu.version="2.84.0"});var $0=x(tr=>{"use strict";Object.defineProperty(tr,"__esModule",{value:!0});tr.DEFAULT_REALTIME_OPTIONS=tr.DEFAULT_AUTH_OPTIONS=tr.DEFAULT_DB_OPTIONS=tr.DEFAULT_GLOBAL_OPTIONS=tr.DEFAULT_HEADERS=void 0;var t$=P0(),Ma="";typeof Deno<"u"?Ma="deno":typeof document<"u"?Ma="web":typeof navigator<"u"&&navigator.product==="ReactNative"?Ma="react-native":Ma="node";tr.DEFAULT_HEADERS={"X-Client-Info":`supabase-js-${Ma}/${t$.version}`};tr.DEFAULT_GLOBAL_OPTIONS={headers:tr.DEFAULT_HEADERS};tr.DEFAULT_DB_OPTIONS={schema:"public"};tr.DEFAULT_AUTH_OPTIONS={autoRefreshToken:!0,persistSession:!0,detectSessionInUrl:!0,flowType:"implicit"};tr.DEFAULT_REALTIME_OPTIONS={}});var I0=x(Rr=>{"use strict";Object.defineProperty(Rr,"__esModule",{value:!0});Rr.fetchWithAuth=Rr.resolveHeadersConstructor=Rr.resolveFetch=void 0;var r$=t=>t?(...e)=>t(...e):(...e)=>fetch(...e);Rr.resolveFetch=r$;var n$=()=>Headers;Rr.resolveHeadersConstructor=n$;var o$=(t,e,r)=>{let n=(0,Rr.resolveFetch)(r),o=(0,Rr.resolveHeadersConstructor)();return async(i,a)=>{var s;let u=(s=await e())!==null&&s!==void 0?s:t,c=new o(a?.headers);return c.has("apikey")||c.set("apikey",t),c.has("Authorization")||c.set("Authorization",`Bearer ${u}`),n(i,Object.assign(Object.assign({},a),{headers:c}))}};Rr.fetchWithAuth=o$});var R0=x(Fn=>{"use strict";Object.defineProperty(Fn,"__esModule",{value:!0});Fn.isBrowser=void 0;Fn.uuid=i$;Fn.ensureTrailingSlash=T0;Fn.applySettingDefaults=s$;Fn.validateSupabaseUrl=u$;function i$(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(t){var e=Math.random()*16|0,r=t=="x"?e:e&3|8;return r.toString(16)})}function T0(t){return t.endsWith("/")?t:t+"/"}var a$=()=>typeof window<"u";Fn.isBrowser=a$;function s$(t,e){var r,n;let{db:o,auth:i,realtime:a,global:s}=t,{db:u,auth:c,realtime:f,global:d}=e,p={db:Object.assign(Object.assign({},u),o),auth:Object.assign(Object.assign({},c),i),realtime:Object.assign(Object.assign({},f),a),storage:{},global:Object.assign(Object.assign(Object.assign({},d),s),{headers:Object.assign(Object.assign({},(r=d?.headers)!==null&&r!==void 0?r:{}),(n=s?.headers)!==null&&n!==void 0?n:{})}),accessToken:async()=>""};return t.accessToken?p.accessToken=t.accessToken:delete p.accessToken,p}function u$(t){let e=t?.trim();if(!e)throw new Error("supabaseUrl is required.");if(!e.match(/^https?:\/\//i))throw new Error("Invalid supabaseUrl: Must be a valid HTTP or HTTPS URL.");try{return new URL(T0(e))}catch{throw Error("Invalid supabaseUrl: Provided URL is malformed.")}}});var Gp={};Qr(Gp,{AuthAdminApi:()=>Bp,AuthApiError:()=>Np,AuthClient:()=>Rp,AuthError:()=>Fr,AuthImplicitGrantRedirectError:()=>qp,AuthInvalidCredentialsError:()=>Mp,AuthInvalidTokenResponseError:()=>Up,AuthPKCEGrantCodeExchangeError:()=>Hp,AuthRetryableError:()=>Lp,AuthSessionMissingError:()=>jp,AuthWeakPasswordError:()=>Vp,GoTrueAdminApi:()=>Ju,GoTrueClient:()=>Yu,NavigatorLockAcquireTimeoutError:()=>zp,isAuthApiError:()=>p$,isAuthError:()=>d$,isAuthRetryableError:()=>h$,isAuthSessionMissingError:()=>m$,isAuthWeakPasswordError:()=>g$,lockInternals:()=>f$,navigatorLock:()=>c$,processLock:()=>l$});var Kp,B0,Yu,Ju,Rp,Bp,Fr,Np,Lp,jp,Up,Mp,qp,Hp,Vp,c$,l$,zp,f$,d$,p$,h$,m$,g$,Wp=Qe(()=>{Kp=()=>Promise.resolve({data:{session:null,user:null},error:null}),B0={get:(t,e)=>{if(e==="constructor")return t.constructor;if(!(e==="then"||e==="catch"||e==="finally")&&typeof e!="symbol")return e==="getSession"?()=>Promise.resolve({data:{session:null,user:null},error:null}):e==="onAuthStateChange"?()=>({data:{subscription:{unsubscribe:()=>{}}},error:null}):Kp}},Yu=class{constructor(e){return this.options=e,new Proxy(this,B0)}},Ju=class{constructor(e){return this.options=e,new Proxy(this,B0)}},Rp=class extends Yu{},Bp=class extends Ju{},Fr=class extends Error{},Np=class extends Fr{},Lp=class extends Fr{},jp=class extends Fr{},Up=class extends Fr{},Mp=class extends Fr{},qp=class extends Fr{},Hp=class extends Fr{},Vp=class extends Fr{},c$=Kp,l$=Kp,zp=class extends Error{},f$={},d$=()=>!1,p$=()=>!1,h$=()=>!1,m$=()=>!1,g$=()=>!1});var N0=x(Xu=>{"use strict";Object.defineProperty(Xu,"__esModule",{value:!0});Xu.SupabaseAuthClient=void 0;var y$=(Wp(),ie(Gp)),Yp=class extends y$.AuthClient{constructor(e){super(e)}};Xu.SupabaseAuthClient=Yp});var Zp=x(Xp=>{"use strict";Object.defineProperty(Xp,"__esModule",{value:!0});var D$=Pd(),b$=Wd(),w$=(Xd(),ie(Jd)),v$=k0(),Zu=$0(),C$=I0(),L0=R0(),E$=N0(),Jp=class{constructor(e,r,n){var o,i,a;this.supabaseUrl=e,this.supabaseKey=r;let s=(0,L0.validateSupabaseUrl)(e);if(!r)throw new Error("supabaseKey is required.");this.realtimeUrl=new URL("realtime/v1",s),this.realtimeUrl.protocol=this.realtimeUrl.protocol.replace("http","ws"),this.authUrl=new URL("auth/v1",s),this.storageUrl=new URL("storage/v1",s),this.functionsUrl=new URL("functions/v1",s);let u=`sb-${s.hostname.split(".")[0]}-auth-token`,c={db:Zu.DEFAULT_DB_OPTIONS,realtime:Zu.DEFAULT_REALTIME_OPTIONS,auth:Object.assign(Object.assign({},Zu.DEFAULT_AUTH_OPTIONS),{storageKey:u}),global:Zu.DEFAULT_GLOBAL_OPTIONS},f=(0,L0.applySettingDefaults)(n??{},c);this.storageKey=(o=f.auth.storageKey)!==null&&o!==void 0?o:"",this.headers=(i=f.global.headers)!==null&&i!==void 0?i:{},f.accessToken?(this.accessToken=f.accessToken,this.auth=new Proxy({},{get:(d,p)=>{throw new Error(`@supabase/supabase-js: Supabase Client is configured with the accessToken option, accessing supabase.auth.${String(p)} is not possible`)}})):this.auth=this._initSupabaseAuthClient((a=f.auth)!==null&&a!==void 0?a:{},this.headers,f.global.fetch),this.fetch=(0,C$.fetchWithAuth)(r,this._getAccessToken.bind(this),f.global.fetch),this.realtime=this._initRealtimeClient(Object.assign({headers:this.headers,accessToken:this._getAccessToken.bind(this)},f.realtime)),this.accessToken&&this.accessToken().then(d=>this.realtime.setAuth(d)).catch(d=>console.warn("Failed to set initial Realtime auth token:",d)),this.rest=new b$.PostgrestClient(new URL("rest/v1",s).href,{headers:this.headers,schema:f.db.schema,fetch:this.fetch}),this.storage=new v$.StorageClient(this.storageUrl.href,this.headers,this.fetch,n?.storage),f.accessToken||this._listenForAuthEvents()}get functions(){return new D$.FunctionsClient(this.functionsUrl.href,{headers:this.headers,customFetch:this.fetch})}from(e){return this.rest.from(e)}schema(e){return this.rest.schema(e)}rpc(e,r={},n={head:!1,get:!1,count:void 0}){return this.rest.rpc(e,r,n)}channel(e,r={config:{}}){return this.realtime.channel(e,r)}getChannels(){return this.realtime.getChannels()}removeChannel(e){return this.realtime.removeChannel(e)}removeAllChannels(){return this.realtime.removeAllChannels()}async _getAccessToken(){var e,r;if(this.accessToken)return await this.accessToken();let{data:n}=await this.auth.getSession();return(r=(e=n.session)===null||e===void 0?void 0:e.access_token)!==null&&r!==void 0?r:this.supabaseKey}_initSupabaseAuthClient({autoRefreshToken:e,persistSession:r,detectSessionInUrl:n,storage:o,userStorage:i,storageKey:a,flowType:s,lock:u,debug:c,throwOnError:f},d,p){let h={Authorization:`Bearer ${this.supabaseKey}`,apikey:`${this.supabaseKey}`};return new E$.SupabaseAuthClient({url:this.authUrl.href,headers:Object.assign(Object.assign({},h),d),storageKey:a,autoRefreshToken:e,persistSession:r,detectSessionInUrl:n,storage:o,userStorage:i,flowType:s,lock:u,debug:c,throwOnError:f,fetch:p,hasCustomAuthorizationHeader:Object.keys(this.headers).some(m=>m.toLowerCase()==="authorization")})}_initRealtimeClient(e){return new w$.RealtimeClient(this.realtimeUrl.href,Object.assign(Object.assign({},e),{params:Object.assign({apikey:this.supabaseKey},e?.params)}))}_listenForAuthEvents(){return this.auth.onAuthStateChange((r,n)=>{this._handleTokenChanged(r,"CLIENT",n?.access_token)})}_handleTokenChanged(e,r,n){(e==="TOKEN_REFRESHED"||e==="SIGNED_IN")&&this.changedAccessToken!==n?(this.changedAccessToken=n,this.realtime.setAuth(n)):e==="SIGNED_OUT"&&(this.realtime.setAuth(),r=="STORAGE"&&this.auth.signOut(),this.changedAccessToken=void 0)}};Xp.default=Jp});var M0=x(Re=>{"use strict";var _$=Re&&Re.__createBinding||(Object.create?(function(t,e,r,n){n===void 0&&(n=r);var o=Object.getOwnPropertyDescriptor(e,r);(!o||("get"in o?!e.__esModule:o.writable||o.configurable))&&(o={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,o)}):(function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]})),j0=Re&&Re.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&_$(e,t,r)},U0=Re&&Re.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Re,"__esModule",{value:!0});Re.createClient=Re.SupabaseClient=Re.FunctionRegion=Re.FunctionsError=Re.FunctionsRelayError=Re.FunctionsFetchError=Re.FunctionsHttpError=Re.PostgrestError=void 0;var S$=U0(Zp());j0((Wp(),ie(Gp)),Re);var x$=Wd();Object.defineProperty(Re,"PostgrestError",{enumerable:!0,get:function(){return x$.PostgrestError}});var qa=Pd();Object.defineProperty(Re,"FunctionsHttpError",{enumerable:!0,get:function(){return qa.FunctionsHttpError}});Object.defineProperty(Re,"FunctionsFetchError",{enumerable:!0,get:function(){return qa.FunctionsFetchError}});Object.defineProperty(Re,"FunctionsRelayError",{enumerable:!0,get:function(){return qa.FunctionsRelayError}});Object.defineProperty(Re,"FunctionsError",{enumerable:!0,get:function(){return qa.FunctionsError}});Object.defineProperty(Re,"FunctionRegion",{enumerable:!0,get:function(){return qa.FunctionRegion}});j0((Xd(),ie(Jd)),Re);var A$=Zp();Object.defineProperty(Re,"SupabaseClient",{enumerable:!0,get:function(){return U0(A$).default}});var O$=(t,e,r)=>new S$.default(t,e,r);Re.createClient=O$;function F$(){if(typeof window<"u"||typeof process>"u")return!1;let t=process.version;if(t==null)return!1;let e=t.match(/^v(\d+)\./);return e?parseInt(e[1],10)<=18:!1}F$()&&console.warn("\u26A0\uFE0F Node.js 18 and below are deprecated and will no longer be supported in future versions of @supabase/supabase-js. Please upgrade to Node.js 20 or later. For more information, visit: https://github.com/orgs/supabase/discussions/37217")});var Qp=x(($z,q0)=>{q0.exports={LOCHDR:30,LOCSIG:67324752,LOCVER:4,LOCFLG:6,LOCHOW:8,LOCTIM:10,LOCCRC:14,LOCSIZ:18,LOCLEN:22,LOCNAM:26,LOCEXT:28,EXTSIG:134695760,EXTHDR:16,EXTCRC:4,EXTSIZ:8,EXTLEN:12,CENHDR:46,CENSIG:33639248,CENVEM:4,CENVER:6,CENFLG:8,CENHOW:10,CENTIM:12,CENCRC:16,CENSIZ:20,CENLEN:24,CENNAM:28,CENEXT:30,CENCOM:32,CENDSK:34,CENATT:36,CENATX:38,CENOFF:42,ENDHDR:22,ENDSIG:101010256,ENDSUB:8,ENDTOT:10,ENDSIZ:12,ENDOFF:16,ENDCOM:20,END64HDR:20,END64SIG:117853008,END64START:4,END64OFF:8,END64NUMDISKS:16,ZIP64SIG:101075792,ZIP64HDR:56,ZIP64LEAD:12,ZIP64SIZE:4,ZIP64VEM:12,ZIP64VER:14,ZIP64DSK:16,ZIP64DSKDIR:20,ZIP64SUB:24,ZIP64TOT:32,ZIP64SIZB:40,ZIP64OFF:48,ZIP64EXTRA:56,STORED:0,SHRUNK:1,REDUCED1:2,REDUCED2:3,REDUCED3:4,REDUCED4:5,IMPLODED:6,DEFLATED:8,ENHANCED_DEFLATED:9,PKWARE:10,BZIP2:12,LZMA:14,IBM_TERSE:18,IBM_LZ77:19,AES_ENCRYPT:99,FLG_ENC:1,FLG_COMP1:2,FLG_COMP2:4,FLG_DESC:8,FLG_ENH:16,FLG_PATCH:32,FLG_STR:64,FLG_EFS:2048,FLG_MSK:4096,FILE:2,BUFFER:1,NONE:0,EF_ID:0,EF_SIZE:2,ID_ZIP64:1,ID_AVINFO:7,ID_PFS:8,ID_OS2:9,ID_NTFS:10,ID_OPENVMS:12,ID_UNIX:13,ID_FORK:14,ID_PATCH:15,ID_X509_PKCS7:20,ID_X509_CERTID_F:21,ID_X509_CERTID_C:22,ID_STRONGENC:23,ID_RECORD_MGT:24,ID_X509_PKCS7_RL:25,ID_IBM1:101,ID_IBM2:102,ID_POSZIP:18064,EF_ZIP64_OR_32:4294967295,EF_ZIP64_OR_16:65535,EF_ZIP64_SUNCOMP:0,EF_ZIP64_SCOMP:8,EF_ZIP64_RHO:16,EF_ZIP64_DSN:24}});var Qu=x(V0=>{var H0={INVALID_LOC:"Invalid LOC header (bad signature)",INVALID_CEN:"Invalid CEN header (bad signature)",INVALID_END:"Invalid END header (bad signature)",DESCRIPTOR_NOT_EXIST:"No descriptor present",DESCRIPTOR_UNKNOWN:"Unknown descriptor format",DESCRIPTOR_FAULTY:"Descriptor data is malformed",NO_DATA:"Nothing to decompress",BAD_CRC:"CRC32 checksum failed {0}",FILE_IN_THE_WAY:"There is a file in the way: {0}",UNKNOWN_METHOD:"Invalid/unsupported compression method",AVAIL_DATA:"inflate::Available inflate data did not terminate",INVALID_DISTANCE:"inflate::Invalid literal/length or distance code in fixed or dynamic block",TO_MANY_CODES:"inflate::Dynamic block code description: too many length or distance codes",INVALID_REPEAT_LEN:"inflate::Dynamic block code description: repeat more than specified lengths",INVALID_REPEAT_FIRST:"inflate::Dynamic block code description: repeat lengths with no first length",INCOMPLETE_CODES:"inflate::Dynamic block code description: code lengths codes incomplete",INVALID_DYN_DISTANCE:"inflate::Dynamic block code description: invalid distance code lengths",INVALID_CODES_LEN:"inflate::Dynamic block code description: invalid literal/length code lengths",INVALID_STORE_BLOCK:"inflate::Stored block length did not match one's complement",INVALID_BLOCK_TYPE:"inflate::Invalid block type (type == 3)",CANT_EXTRACT_FILE:"Could not extract the file",CANT_OVERRIDE:"Target file already exists",DISK_ENTRY_TOO_LARGE:"Number of disk entries is too large",NO_ZIP:"No zip file was loaded",NO_ENTRY:"Entry doesn't exist",DIRECTORY_CONTENT_ERROR:"A directory cannot have content",FILE_NOT_FOUND:'File not found: "{0}"',NOT_IMPLEMENTED:"Not implemented",INVALID_FILENAME:"Invalid filename",INVALID_FORMAT:"Invalid or unsupported zip format. No END header found",INVALID_PASS_PARAM:"Incompatible password parameter",WRONG_PASSWORD:"Wrong Password",COMMENT_TOO_LONG:"Comment is too long",EXTRA_FIELD_PARSE_ERROR:"Extra field parsing error"};function k$(t){return function(...e){return e.length&&(t=t.replace(/\{(\d)\}/g,(r,n)=>e[n]||"")),new Error("ADM-ZIP: "+t)}}for(let t of Object.keys(H0))V0[t]=k$(H0[t])});var Y0=x((Tz,W0)=>{var P$=require("fs"),it=require("path"),z0=Qp(),$$=Qu(),I$=typeof process=="object"&&process.platform==="win32",K0=t=>typeof t=="object"&&t!==null,G0=new Uint32Array(256).map((t,e)=>{for(let r=0;r<8;r++)(e&1)!==0?e=3988292384^e>>>1:e>>>=1;return e>>>0});function Ye(t){this.sep=it.sep,this.fs=P$,K0(t)&&K0(t.fs)&&typeof t.fs.statSync=="function"&&(this.fs=t.fs)}W0.exports=Ye;Ye.prototype.makeDir=function(t){let e=this;function r(n){let o=n.split(e.sep)[0];n.split(e.sep).forEach(function(i){if(!(!i||i.substr(-1,1)===":")){o+=e.sep+i;var a;try{a=e.fs.statSync(o)}catch{e.fs.mkdirSync(o)}if(a&&a.isFile())throw $$.FILE_IN_THE_WAY(`"${o}"`)}})}r(t)};Ye.prototype.writeFileTo=function(t,e,r,n){let o=this;if(o.fs.existsSync(t)){if(!r)return!1;var i=o.fs.statSync(t);if(i.isDirectory())return!1}var a=it.dirname(t);o.fs.existsSync(a)||o.makeDir(a);var s;try{s=o.fs.openSync(t,"w",438)}catch{o.fs.chmodSync(t,438),s=o.fs.openSync(t,"w",438)}if(s)try{o.fs.writeSync(s,e,0,e.length,0)}finally{o.fs.closeSync(s)}return o.fs.chmodSync(t,n||438),!0};Ye.prototype.writeFileToAsync=function(t,e,r,n,o){typeof n=="function"&&(o=n,n=void 0);let i=this;i.fs.exists(t,function(a){if(a&&!r)return o(!1);i.fs.stat(t,function(s,u){if(a&&u.isDirectory())return o(!1);var c=it.dirname(t);i.fs.exists(c,function(f){f||i.makeDir(c),i.fs.open(t,"w",438,function(d,p){d?i.fs.chmod(t,438,function(){i.fs.open(t,"w",438,function(h,m){i.fs.write(m,e,0,e.length,0,function(){i.fs.close(m,function(){i.fs.chmod(t,n||438,function(){o(!0)})})})})}):p?i.fs.write(p,e,0,e.length,0,function(){i.fs.close(p,function(){i.fs.chmod(t,n||438,function(){o(!0)})})}):i.fs.chmod(t,n||438,function(){o(!0)})})})})})};Ye.prototype.findFiles=function(t){let e=this;function r(n,o,i){typeof o=="boolean"&&(i=o,o=void 0);let a=[];return e.fs.readdirSync(n).forEach(function(s){let u=it.join(n,s),c=e.fs.statSync(u);(!o||o.test(u))&&a.push(it.normalize(u)+(c.isDirectory()?e.sep:"")),c.isDirectory()&&i&&(a=a.concat(r(u,o,i)))}),a}return r(t,void 0,!0)};Ye.prototype.findFilesAsync=function(t,e){let r=this,n=[];r.fs.readdir(t,function(o,i){if(o)return e(o);let a=i.length;if(!a)return e(null,n);i.forEach(function(s){s=it.join(t,s),r.fs.stat(s,function(u,c){if(u)return e(u);c&&(n.push(it.normalize(s)+(c.isDirectory()?r.sep:"")),c.isDirectory()?r.findFilesAsync(s,function(f,d){if(f)return e(f);n=n.concat(d),--a||e(null,n)}):--a||e(null,n))})})})};Ye.prototype.getAttributes=function(){};Ye.prototype.setAttributes=function(){};Ye.crc32update=function(t,e){return G0[(t^e)&255]^t>>>8};Ye.crc32=function(t){typeof t=="string"&&(t=Buffer.from(t,"utf8"));let e=t.length,r=-1;for(let n=0;n<e;)r=Ye.crc32update(r,t[n++]);return~r>>>0};Ye.methodToString=function(t){switch(t){case z0.STORED:return"STORED ("+t+")";case z0.DEFLATED:return"DEFLATED ("+t+")";default:return"UNSUPPORTED ("+t+")"}};Ye.canonical=function(t){if(!t)return"";let e=it.posix.normalize("/"+t.split("\\").join("/"));return it.join(".",e)};Ye.zipnamefix=function(t){if(!t)return"";let e=it.posix.normalize("/"+t.split("\\").join("/"));return it.posix.join(".",e)};Ye.findLast=function(t,e){if(!Array.isArray(t))throw new TypeError("arr is not array");let r=t.length>>>0;for(let n=r-1;n>=0;n--)if(e(t[n],n,t))return t[n]};Ye.sanitize=function(t,e){t=it.resolve(it.normalize(t));for(var r=e.split("/"),n=0,o=r.length;n<o;n++){var i=it.normalize(it.join(t,r.slice(n,o).join(it.sep)));if(i.indexOf(t)===0)return i}return it.normalize(it.join(t,it.basename(e)))};Ye.toBuffer=function(e,r){return Buffer.isBuffer(e)?e:e instanceof Uint8Array?Buffer.from(e):typeof e=="string"?r(e):Buffer.alloc(0)};Ye.readBigUInt64LE=function(t,e){var r=Buffer.from(t.slice(e,e+8));return r.swap64(),parseInt(`0x${r.toString("hex")}`)};Ye.fromDOS2Date=function(t){return new Date((t>>25&127)+1980,Math.max((t>>21&15)-1,0),Math.max(t>>16&31,1),t>>11&31,t>>5&63,(t&31)<<1)};Ye.fromDate2DOS=function(t){let e=0,r=0;return t.getFullYear()>1979&&(e=(t.getFullYear()-1980&127)<<9|t.getMonth()+1<<5|t.getDate(),r=t.getHours()<<11|t.getMinutes()<<5|t.getSeconds()>>1),e<<16|r};Ye.isWin=I$;Ye.crcTable=G0});var X0=x((Rz,J0)=>{var T$=require("path");J0.exports=function(t,{fs:e}){var r=t||"",n=i(),o=null;function i(){return{directory:!1,readonly:!1,hidden:!1,executable:!1,mtime:0,atime:0}}return r&&e.existsSync(r)?(o=e.statSync(r),n.directory=o.isDirectory(),n.mtime=o.mtime,n.atime=o.atime,n.executable=(73&o.mode)!==0,n.readonly=(128&o.mode)===0,n.hidden=T$.basename(r)[0]==="."):console.warn("Invalid path: "+r),{get directory(){return n.directory},get readOnly(){return n.readonly},get hidden(){return n.hidden},get mtime(){return n.mtime},get atime(){return n.atime},get executable(){return n.executable},decodeAttributes:function(){},encodeAttributes:function(){},toJSON:function(){return{path:r,isDirectory:n.directory,isReadOnly:n.readonly,isHidden:n.hidden,isExecutable:n.executable,mTime:n.mtime,aTime:n.atime}},toString:function(){return JSON.stringify(this.toJSON(),null," ")}}}});var Q0=x((Bz,Z0)=>{Z0.exports={efs:!0,encode:t=>Buffer.from(t,"utf8"),decode:t=>t.toString("utf8")}});var ui=x((Nz,si)=>{si.exports=Y0();si.exports.Constants=Qp();si.exports.Errors=Qu();si.exports.FileAttr=X0();si.exports.decoder=Q0()});var tb=x((Lz,eb)=>{var kn=ui(),Y=kn.Constants;eb.exports=function(){var t=20,e=10,r=0,n=0,o=0,i=0,a=0,s=0,u=0,c=0,f=0,d=0,p=0,h=0,m=0;t|=kn.isWin?2560:768,r|=Y.FLG_EFS;let y={extraLen:0},b=g=>Math.max(0,g)>>>0,v=g=>Math.max(0,g)&65535,E=g=>Math.max(0,g)&255;return o=kn.fromDate2DOS(new Date),{get made(){return t},set made(g){t=g},get version(){return e},set version(g){e=g},get flags(){return r},set flags(g){r=g},get flags_efs(){return(r&Y.FLG_EFS)>0},set flags_efs(g){g?r|=Y.FLG_EFS:r&=~Y.FLG_EFS},get flags_desc(){return(r&Y.FLG_DESC)>0},set flags_desc(g){g?r|=Y.FLG_DESC:r&=~Y.FLG_DESC},get method(){return n},set method(g){switch(g){case Y.STORED:this.version=10;case Y.DEFLATED:default:this.version=20}n=g},get time(){return kn.fromDOS2Date(this.timeval)},set time(g){this.timeval=kn.fromDate2DOS(g)},get timeval(){return o},set timeval(g){o=b(g)},get timeHighByte(){return E(o>>>8)},get crc(){return i},set crc(g){i=b(g)},get compressedSize(){return a},set compressedSize(g){a=b(g)},get size(){return s},set size(g){s=b(g)},get fileNameLength(){return u},set fileNameLength(g){u=g},get extraLength(){return c},set extraLength(g){c=g},get extraLocalLength(){return y.extraLen},set extraLocalLength(g){y.extraLen=g},get commentLength(){return f},set commentLength(g){f=g},get diskNumStart(){return d},set diskNumStart(g){d=b(g)},get inAttr(){return p},set inAttr(g){p=b(g)},get attr(){return h},set attr(g){h=b(g)},get fileAttr(){return(h||0)>>16&4095},get offset(){return m},set offset(g){m=b(g)},get encrypted(){return(r&Y.FLG_ENC)===Y.FLG_ENC},get centralHeaderSize(){return Y.CENHDR+u+c+f},get realDataOffset(){return m+Y.LOCHDR+y.fnameLen+y.extraLen},get localHeader(){return y},loadLocalHeaderFromBinary:function(g){var _=g.slice(m,m+Y.LOCHDR);if(_.readUInt32LE(0)!==Y.LOCSIG)throw kn.Errors.INVALID_LOC();y.version=_.readUInt16LE(Y.LOCVER),y.flags=_.readUInt16LE(Y.LOCFLG),y.method=_.readUInt16LE(Y.LOCHOW),y.time=_.readUInt32LE(Y.LOCTIM),y.crc=_.readUInt32LE(Y.LOCCRC),y.compressedSize=_.readUInt32LE(Y.LOCSIZ),y.size=_.readUInt32LE(Y.LOCLEN),y.fnameLen=_.readUInt16LE(Y.LOCNAM),y.extraLen=_.readUInt16LE(Y.LOCEXT);let S=m+Y.LOCHDR+y.fnameLen,P=S+y.extraLen;return g.slice(S,P)},loadFromBinary:function(g){if(g.length!==Y.CENHDR||g.readUInt32LE(0)!==Y.CENSIG)throw kn.Errors.INVALID_CEN();t=g.readUInt16LE(Y.CENVEM),e=g.readUInt16LE(Y.CENVER),r=g.readUInt16LE(Y.CENFLG),n=g.readUInt16LE(Y.CENHOW),o=g.readUInt32LE(Y.CENTIM),i=g.readUInt32LE(Y.CENCRC),a=g.readUInt32LE(Y.CENSIZ),s=g.readUInt32LE(Y.CENLEN),u=g.readUInt16LE(Y.CENNAM),c=g.readUInt16LE(Y.CENEXT),f=g.readUInt16LE(Y.CENCOM),d=g.readUInt16LE(Y.CENDSK),p=g.readUInt16LE(Y.CENATT),h=g.readUInt32LE(Y.CENATX),m=g.readUInt32LE(Y.CENOFF)},localHeaderToBinary:function(){var g=Buffer.alloc(Y.LOCHDR);return g.writeUInt32LE(Y.LOCSIG,0),g.writeUInt16LE(e,Y.LOCVER),g.writeUInt16LE(r,Y.LOCFLG),g.writeUInt16LE(n,Y.LOCHOW),g.writeUInt32LE(o,Y.LOCTIM),g.writeUInt32LE(i,Y.LOCCRC),g.writeUInt32LE(a,Y.LOCSIZ),g.writeUInt32LE(s,Y.LOCLEN),g.writeUInt16LE(u,Y.LOCNAM),g.writeUInt16LE(y.extraLen,Y.LOCEXT),g},centralHeaderToBinary:function(){var g=Buffer.alloc(Y.CENHDR+u+c+f);return g.writeUInt32LE(Y.CENSIG,0),g.writeUInt16LE(t,Y.CENVEM),g.writeUInt16LE(e,Y.CENVER),g.writeUInt16LE(r,Y.CENFLG),g.writeUInt16LE(n,Y.CENHOW),g.writeUInt32LE(o,Y.CENTIM),g.writeUInt32LE(i,Y.CENCRC),g.writeUInt32LE(a,Y.CENSIZ),g.writeUInt32LE(s,Y.CENLEN),g.writeUInt16LE(u,Y.CENNAM),g.writeUInt16LE(c,Y.CENEXT),g.writeUInt16LE(f,Y.CENCOM),g.writeUInt16LE(d,Y.CENDSK),g.writeUInt16LE(p,Y.CENATT),g.writeUInt32LE(h,Y.CENATX),g.writeUInt32LE(m,Y.CENOFF),g},toJSON:function(){let g=function(_){return _+" bytes"};return{made:t,version:e,flags:r,method:kn.methodToString(n),time:this.time,crc:"0x"+i.toString(16).toUpperCase(),compressedSize:g(a),size:g(s),fileNameLength:g(u),extraLength:g(c),commentLength:g(f),diskNumStart:d,inAttr:p,attr:h,offset:m,centralHeaderSize:g(Y.CENHDR+u+c+f)}},toString:function(){return JSON.stringify(this.toJSON(),null," ")}}}});var nb=x((jz,rb)=>{var ci=ui(),ze=ci.Constants;rb.exports=function(){var t=0,e=0,r=0,n=0,o=0;return{get diskEntries(){return t},set diskEntries(i){t=e=i},get totalEntries(){return e},set totalEntries(i){e=t=i},get size(){return r},set size(i){r=i},get offset(){return n},set offset(i){n=i},get commentLength(){return o},set commentLength(i){o=i},get mainHeaderSize(){return ze.ENDHDR+o},loadFromBinary:function(i){if((i.length!==ze.ENDHDR||i.readUInt32LE(0)!==ze.ENDSIG)&&(i.length<ze.ZIP64HDR||i.readUInt32LE(0)!==ze.ZIP64SIG))throw ci.Errors.INVALID_END();i.readUInt32LE(0)===ze.ENDSIG?(t=i.readUInt16LE(ze.ENDSUB),e=i.readUInt16LE(ze.ENDTOT),r=i.readUInt32LE(ze.ENDSIZ),n=i.readUInt32LE(ze.ENDOFF),o=i.readUInt16LE(ze.ENDCOM)):(t=ci.readBigUInt64LE(i,ze.ZIP64SUB),e=ci.readBigUInt64LE(i,ze.ZIP64TOT),r=ci.readBigUInt64LE(i,ze.ZIP64SIZE),n=ci.readBigUInt64LE(i,ze.ZIP64OFF),o=0)},toBinary:function(){var i=Buffer.alloc(ze.ENDHDR+o);return i.writeUInt32LE(ze.ENDSIG,0),i.writeUInt32LE(0,4),i.writeUInt16LE(t,ze.ENDSUB),i.writeUInt16LE(e,ze.ENDTOT),i.writeUInt32LE(r,ze.ENDSIZ),i.writeUInt32LE(n,ze.ENDOFF),i.writeUInt16LE(o,ze.ENDCOM),i.fill(" ",ze.ENDHDR),i},toJSON:function(){let i=function(a,s){let u=a.toString(16).toUpperCase();for(;u.length<s;)u="0"+u;return"0x"+u};return{diskEntries:t,totalEntries:e,size:r+" bytes",offset:i(n,4),commentLength:o}},toString:function(){return JSON.stringify(this.toJSON(),null," ")}}}});var th=x(eh=>{eh.EntryHeader=tb();eh.MainHeader=nb()});var ib=x((Mz,ob)=>{ob.exports=function(t){var e=require("zlib"),r={chunkSize:(parseInt(t.length/1024)+1)*1024};return{deflate:function(){return e.deflateRawSync(t,r)},deflateAsync:function(n){var o=e.createDeflateRaw(r),i=[],a=0;o.on("data",function(s){i.push(s),a+=s.length}),o.on("end",function(){var s=Buffer.alloc(a),u=0;s.fill(0);for(var c=0;c<i.length;c++){var f=i[c];f.copy(s,u),u+=f.length}n&&n(s)}),o.end(t)}}}});var sb=x((qz,ab)=>{var R$=+(process.versions?process.versions.node:"").split(".")[0]||0;ab.exports=function(t,e){var r=require("zlib");let n=R$>=15&&e>0?{maxOutputLength:e}:{};return{inflate:function(){return r.inflateRawSync(t,n)},inflateAsync:function(o){var i=r.createInflateRaw(n),a=[],s=0;i.on("data",function(u){a.push(u),s+=u.length}),i.on("end",function(){var u=Buffer.alloc(s),c=0;u.fill(0);for(var f=0;f<a.length;f++){var d=a[f];d.copy(u,c),c+=d.length}o&&o(u)}),i.end(t)}}}});var db=x((Hz,fb)=>{"use strict";var{randomFillSync:ub}=require("crypto"),B$=Qu(),N$=new Uint32Array(256).map((t,e)=>{for(let r=0;r<8;r++)(e&1)!==0?e=e>>>1^3988292384:e>>>=1;return e>>>0}),lb=(t,e)=>Math.imul(t,e)>>>0,cb=(t,e)=>N$[(t^e)&255]^t>>>8,Ha=()=>typeof ub=="function"?ub(Buffer.alloc(12)):Ha.node();Ha.node=()=>{let t=Buffer.alloc(12),e=t.length;for(let r=0;r<e;r++)t[r]=Math.random()*256&255;return t};var ec={genSalt:Ha};function tc(t){let e=Buffer.isBuffer(t)?t:Buffer.from(t);this.keys=new Uint32Array([305419896,591751049,878082192]);for(let r=0;r<e.length;r++)this.updateKeys(e[r])}tc.prototype.updateKeys=function(t){let e=this.keys;return e[0]=cb(e[0],t),e[1]+=e[0]&255,e[1]=lb(e[1],134775813)+1,e[2]=cb(e[2],e[1]>>>24),t};tc.prototype.next=function(){let t=(this.keys[2]|2)>>>0;return lb(t,t^1)>>8&255};function L$(t){let e=new tc(t);return function(r){let n=Buffer.alloc(r.length),o=0;for(let i of r)n[o++]=e.updateKeys(i^e.next());return n}}function j$(t){let e=new tc(t);return function(r,n,o=0){n||(n=Buffer.alloc(r.length));for(let i of r){let a=e.next();n[o++]=i^a,e.updateKeys(i)}return n}}function U$(t,e,r){if(!t||!Buffer.isBuffer(t)||t.length<12)return Buffer.alloc(0);let n=L$(r),o=n(t.slice(0,12)),i=(e.flags&8)===8?e.timeHighByte:e.crc>>>24;if(o[11]!==i)throw B$.WRONG_PASSWORD();return n(t.slice(12))}function M$(t){Buffer.isBuffer(t)&&t.length>=12?ec.genSalt=function(){return t.slice(0,12)}:t==="node"?ec.genSalt=Ha.node:ec.genSalt=Ha}function q$(t,e,r,n=!1){t==null&&(t=Buffer.alloc(0)),Buffer.isBuffer(t)||(t=Buffer.from(t.toString()));let o=j$(r),i=ec.genSalt();i[11]=e.crc>>>24&255,n&&(i[10]=e.crc>>>16&255);let a=Buffer.alloc(t.length+12);return o(i,a),o(t,a,12)}fb.exports={decrypt:U$,encrypt:q$,_salter:M$}});var pb=x(rc=>{rc.Deflater=ib();rc.Inflater=sb();rc.ZipCrypto=db()});var nh=x((zz,hb)=>{var Fe=ui(),H$=th(),Je=Fe.Constants,rh=pb();hb.exports=function(t,e){var r=new H$.EntryHeader,n=Buffer.alloc(0),o=Buffer.alloc(0),i=!1,a=null,s=Buffer.alloc(0),u=Buffer.alloc(0),c=!0;let f=t,d=typeof f.decoder=="object"?f.decoder:Fe.decoder;c=d.hasOwnProperty("efs")?d.efs:!1;function p(){return!e||!(e instanceof Uint8Array)?Buffer.alloc(0):(u=r.loadLocalHeaderFromBinary(e),e.slice(r.realDataOffset,r.realDataOffset+r.compressedSize))}function h(g){if(r.flags_desc){let _={},S=r.realDataOffset+r.compressedSize;if(e.readUInt32LE(S)==Je.LOCSIG||e.readUInt32LE(S)==Je.CENSIG)throw Fe.Errors.DESCRIPTOR_NOT_EXIST();if(e.readUInt32LE(S)==Je.EXTSIG)_.crc=e.readUInt32LE(S+Je.EXTCRC),_.compressedSize=e.readUInt32LE(S+Je.EXTSIZ),_.size=e.readUInt32LE(S+Je.EXTLEN);else if(e.readUInt16LE(S+12)===19280)_.crc=e.readUInt32LE(S+Je.EXTCRC-4),_.compressedSize=e.readUInt32LE(S+Je.EXTSIZ-4),_.size=e.readUInt32LE(S+Je.EXTLEN-4);else throw Fe.Errors.DESCRIPTOR_UNKNOWN();if(_.compressedSize!==r.compressedSize||_.size!==r.size||_.crc!==r.crc)throw Fe.Errors.DESCRIPTOR_FAULTY();if(Fe.crc32(g)!==_.crc)return!1}else if(Fe.crc32(g)!==r.localHeader.crc)return!1;return!0}function m(g,_,S){if(typeof _>"u"&&typeof g=="string"&&(S=g,g=void 0),i)return g&&_&&_(Buffer.alloc(0),Fe.Errors.DIRECTORY_CONTENT_ERROR()),Buffer.alloc(0);var P=p();if(P.length===0)return g&&_&&_(P),P;if(r.encrypted){if(typeof S!="string"&&!Buffer.isBuffer(S))throw Fe.Errors.INVALID_PASS_PARAM();P=rh.ZipCrypto.decrypt(P,r,S)}var F=Buffer.alloc(r.size);switch(r.method){case Fe.Constants.STORED:if(P.copy(F),h(F))return g&&_&&_(F),F;throw g&&_&&_(F,Fe.Errors.BAD_CRC()),Fe.Errors.BAD_CRC();case Fe.Constants.DEFLATED:var B=new rh.Inflater(P,r.size);if(g)B.inflateAsync(function(T){T.copy(T,0),_&&(h(T)?_(T):_(T,Fe.Errors.BAD_CRC()))});else{if(B.inflate(F).copy(F,0),!h(F))throw Fe.Errors.BAD_CRC(`"${d.decode(n)}"`);return F}break;default:throw g&&_&&_(Buffer.alloc(0),Fe.Errors.UNKNOWN_METHOD()),Fe.Errors.UNKNOWN_METHOD()}}function y(g,_){if((!a||!a.length)&&Buffer.isBuffer(e))return g&&_&&_(p()),p();if(a.length&&!i){var S;switch(r.method){case Fe.Constants.STORED:return r.compressedSize=r.size,S=Buffer.alloc(a.length),a.copy(S),g&&_&&_(S),S;default:case Fe.Constants.DEFLATED:var P=new rh.Deflater(a);if(g)P.deflateAsync(function(B){S=Buffer.alloc(B.length),r.compressedSize=B.length,B.copy(S),_&&_(S)});else{var F=P.deflate();return r.compressedSize=F.length,F}P=null;break}}else if(g&&_)_(Buffer.alloc(0));else return Buffer.alloc(0)}function b(g,_){return(g.readUInt32LE(_+4)<<4)+g.readUInt32LE(_)}function v(g){try{for(var _=0,S,P,F;_+4<g.length;)S=g.readUInt16LE(_),_+=2,P=g.readUInt16LE(_),_+=2,F=g.slice(_,_+P),_+=P,Je.ID_ZIP64===S&&E(F)}catch{throw Fe.Errors.EXTRA_FIELD_PARSE_ERROR()}}function E(g){var _,S,P,F;g.length>=Je.EF_ZIP64_SCOMP&&(_=b(g,Je.EF_ZIP64_SUNCOMP),r.size===Je.EF_ZIP64_OR_32&&(r.size=_)),g.length>=Je.EF_ZIP64_RHO&&(S=b(g,Je.EF_ZIP64_SCOMP),r.compressedSize===Je.EF_ZIP64_OR_32&&(r.compressedSize=S)),g.length>=Je.EF_ZIP64_DSN&&(P=b(g,Je.EF_ZIP64_RHO),r.offset===Je.EF_ZIP64_OR_32&&(r.offset=P)),g.length>=Je.EF_ZIP64_DSN+4&&(F=g.readUInt32LE(Je.EF_ZIP64_DSN),r.diskNumStart===Je.EF_ZIP64_OR_16&&(r.diskNumStart=F))}return{get entryName(){return d.decode(n)},get rawEntryName(){return n},set entryName(g){n=Fe.toBuffer(g,d.encode);var _=n[n.length-1];i=_===47||_===92,r.fileNameLength=n.length},get efs(){return typeof c=="function"?c(this.entryName):c},get extra(){return s},set extra(g){s=g,r.extraLength=g.length,v(g)},get comment(){return d.decode(o)},set comment(g){if(o=Fe.toBuffer(g,d.encode),r.commentLength=o.length,o.length>65535)throw Fe.Errors.COMMENT_TOO_LONG()},get name(){var g=d.decode(n);return i?g.substr(g.length-1).split("/").pop():g.split("/").pop()},get isDirectory(){return i},getCompressedData:function(){return y(!1,null)},getCompressedDataAsync:function(g){y(!0,g)},setData:function(g){a=Fe.toBuffer(g,Fe.decoder.encode),!i&&a.length?(r.size=a.length,r.method=Fe.Constants.DEFLATED,r.crc=Fe.crc32(g),r.changed=!0):r.method=Fe.Constants.STORED},getData:function(g){return r.changed?a:m(!1,null,g)},getDataAsync:function(g,_){r.changed?g(a):m(!0,g,_)},set attr(g){r.attr=g},get attr(){return r.attr},set header(g){r.loadFromBinary(g)},get header(){return r},packCentralHeader:function(){r.flags_efs=this.efs,r.extraLength=s.length;var g=r.centralHeaderToBinary(),_=Fe.Constants.CENHDR;return n.copy(g,_),_+=n.length,s.copy(g,_),_+=r.extraLength,o.copy(g,_),g},packLocalHeader:function(){let g=0;r.flags_efs=this.efs,r.extraLocalLength=u.length;let _=r.localHeaderToBinary(),S=Buffer.alloc(_.length+n.length+r.extraLocalLength);return _.copy(S,g),g+=_.length,n.copy(S,g),g+=n.length,u.copy(S,g),g+=u.length,S},toJSON:function(){let g=function(_){return"<"+(_&&_.length+" bytes buffer"||"null")+">"};return{entryName:this.entryName,name:this.name,comment:this.comment,isDirectory:this.isDirectory,header:r.toJSON(),compressedData:g(e),data:g(a)}},toString:function(){return JSON.stringify(this.toJSON(),null," ")}}}});var yb=x((Kz,gb)=>{var mb=nh(),V$=th(),yt=ui();gb.exports=function(t,e){var r=[],n={},o=Buffer.alloc(0),i=new V$.MainHeader,a=!1,s=null;let u=new Set,c=e,{noSort:f,decoder:d}=c;t?m(c.readEntries):a=!0;function p(){let b=new Set;for(let v of Object.keys(n)){let E=v.split("/");if(E.pop(),!!E.length)for(let g=0;g<E.length;g++){let _=E.slice(0,g+1).join("/")+"/";b.add(_)}}for(let v of b)if(!(v in n)){let E=new mb(c);E.entryName=v,E.attr=16,E.temporary=!0,r.push(E),n[E.entryName]=E,u.add(E)}}function h(){if(a=!0,n={},i.diskEntries>(t.length-i.offset)/yt.Constants.CENHDR)throw yt.Errors.DISK_ENTRY_TOO_LARGE();r=new Array(i.diskEntries);for(var b=i.offset,v=0;v<r.length;v++){var E=b,g=new mb(c,t);g.header=t.slice(E,E+=yt.Constants.CENHDR),g.entryName=t.slice(E,E+=g.header.fileNameLength),g.header.extraLength&&(g.extra=t.slice(E,E+=g.header.extraLength)),g.header.commentLength&&(g.comment=t.slice(E,E+g.header.commentLength)),b+=g.header.centralHeaderSize,r[v]=g,n[g.entryName]=g}u.clear(),p()}function m(b){var v=t.length-yt.Constants.ENDHDR,E=Math.max(0,v-65535),g=E,_=t.length,S=-1,P=0;for(typeof c.trailingSpace=="boolean"&&c.trailingSpace&&(E=0),v;v>=g;v--)if(t[v]===80){if(t.readUInt32LE(v)===yt.Constants.ENDSIG){S=v,P=v,_=v+yt.Constants.ENDHDR,g=v-yt.Constants.END64HDR;continue}if(t.readUInt32LE(v)===yt.Constants.END64SIG){g=E;continue}if(t.readUInt32LE(v)===yt.Constants.ZIP64SIG){S=v,_=v+yt.readBigUInt64LE(t,v+yt.Constants.ZIP64SIZE)+yt.Constants.ZIP64LEAD;break}}if(S==-1)throw yt.Errors.INVALID_FORMAT();i.loadFromBinary(t.slice(S,_)),i.commentLength&&(o=t.slice(P+yt.Constants.ENDHDR)),b&&h()}function y(){r.length>1&&!f&&r.sort((b,v)=>b.entryName.toLowerCase().localeCompare(v.entryName.toLowerCase()))}return{get entries(){return a||h(),r.filter(b=>!u.has(b))},get comment(){return d.decode(o)},set comment(b){o=yt.toBuffer(b,d.encode),i.commentLength=o.length},getEntryCount:function(){return a?r.length:i.diskEntries},forEach:function(b){this.entries.forEach(b)},getEntry:function(b){return a||h(),n[b]||null},setEntry:function(b){a||h(),r.push(b),n[b.entryName]=b,i.totalEntries=r.length},deleteFile:function(b,v=!0){a||h();let E=n[b];this.getEntryChildren(E,v).map(_=>_.entryName).forEach(this.deleteEntry)},deleteEntry:function(b){a||h();let v=n[b],E=r.indexOf(v);E>=0&&(r.splice(E,1),delete n[b],i.totalEntries=r.length)},getEntryChildren:function(b,v=!0){if(a||h(),typeof b=="object")if(b.isDirectory&&v){let E=[],g=b.entryName;for(let _ of r)_.entryName.startsWith(g)&&E.push(_);return E}else return[b];return[]},getChildCount:function(b){if(b&&b.isDirectory){let v=this.getEntryChildren(b);return v.includes(b)?v.length-1:v.length}return 0},compressToBuffer:function(){a||h(),y();let b=[],v=[],E=0,g=0;i.size=0,i.offset=0;let _=0;for(let F of this.entries){let B=F.getCompressedData();F.header.offset=g;let T=F.packLocalHeader(),L=T.length+B.length;g+=L,b.push(T),b.push(B);let A=F.packCentralHeader();v.push(A),i.size+=A.length,E+=L+A.length,_++}E+=i.mainHeaderSize,i.offset=g,i.totalEntries=_,g=0;let S=Buffer.alloc(E);for(let F of b)F.copy(S,g),g+=F.length;for(let F of v)F.copy(S,g),g+=F.length;let P=i.toBinary();return o&&o.copy(P,yt.Constants.ENDHDR),P.copy(S,g),t=S,a=!1,S},toAsyncBuffer:function(b,v,E,g){try{a||h(),y();let _=[],S=[],P=0,F=0,B=0;i.size=0,i.offset=0;let T=function(L){if(L.length>0){let A=L.shift(),q=A.entryName+A.extra.toString();E&&E(q),A.getCompressedDataAsync(function(j){g&&g(q),A.header.offset=F;let Z=A.packLocalHeader(),k=Z.length+j.length;F+=k,_.push(Z),_.push(j);let D=A.packCentralHeader();S.push(D),i.size+=D.length,P+=k+D.length,B++,T(L)})}else{P+=i.mainHeaderSize,i.offset=F,i.totalEntries=B,F=0;let A=Buffer.alloc(P);_.forEach(function(j){j.copy(A,F),F+=j.length}),S.forEach(function(j){j.copy(A,F),F+=j.length});let q=i.toBinary();o&&o.copy(q,yt.Constants.ENDHDR),q.copy(A,F),t=A,a=!1,b(A)}};T(Array.from(this.entries))}catch(_){v(_)}}}}});var oh=x((Gz,bb)=>{var Ke=ui(),Xe=require("path"),z$=nh(),K$=yb(),Zn=(...t)=>Ke.findLast(t,e=>typeof e=="boolean"),Db=(...t)=>Ke.findLast(t,e=>typeof e=="string"),G$=(...t)=>Ke.findLast(t,e=>typeof e=="function"),W$={noSort:!1,readEntries:!1,method:Ke.Constants.NONE,fs:null};bb.exports=function(t,e){let r=null,n=Object.assign(Object.create(null),W$);t&&typeof t=="object"&&(t instanceof Uint8Array||(Object.assign(n,t),t=n.input?n.input:void 0,n.input&&delete n.input),Buffer.isBuffer(t)&&(r=t,n.method=Ke.Constants.BUFFER,t=void 0)),Object.assign(n,e);let o=new Ke(n);if((typeof n.decoder!="object"||typeof n.decoder.encode!="function"||typeof n.decoder.decode!="function")&&(n.decoder=Ke.decoder),t&&typeof t=="string")if(o.fs.existsSync(t))n.method=Ke.Constants.FILE,n.filename=t,r=o.fs.readFileSync(t);else throw Ke.Errors.INVALID_FILENAME();let i=new K$(r,n),{canonical:a,sanitize:s,zipnamefix:u}=Ke;function c(h){if(h&&i){var m;if(typeof h=="string"&&(m=i.getEntry(Xe.posix.normalize(h))),typeof h=="object"&&typeof h.entryName<"u"&&typeof h.header<"u"&&(m=i.getEntry(h.entryName)),m)return m}return null}function f(h){let{join:m,normalize:y,sep:b}=Xe.posix;return m(".",y(b+h.split("\\").join(b)+b))}function d(h){return h instanceof RegExp?(function(m){return function(y){return m.test(y)}})(h):typeof h!="function"?()=>!0:h}let p=(h,m)=>{let y=m.slice(-1);return y=y===o.sep?o.sep:"",Xe.relative(h,m)+y};return{readFile:function(h,m){var y=c(h);return y&&y.getData(m)||null},childCount:function(h){let m=c(h);if(m)return i.getChildCount(m)},readFileAsync:function(h,m){var y=c(h);y?y.getDataAsync(m):m(null,"getEntry failed for:"+h)},readAsText:function(h,m){var y=c(h);if(y){var b=y.getData();if(b&&b.length)return b.toString(m||"utf8")}return""},readAsTextAsync:function(h,m,y){var b=c(h);b?b.getDataAsync(function(v,E){if(E){m(v,E);return}v&&v.length?m(v.toString(y||"utf8")):m("")}):m("")},deleteFile:function(h,m=!0){var y=c(h);y&&i.deleteFile(y.entryName,m)},deleteEntry:function(h){var m=c(h);m&&i.deleteEntry(m.entryName)},addZipComment:function(h){i.comment=h},getZipComment:function(){return i.comment||""},addZipEntryComment:function(h,m){var y=c(h);y&&(y.comment=m)},getZipEntryComment:function(h){var m=c(h);return m&&m.comment||""},updateFile:function(h,m){var y=c(h);y&&y.setData(m)},addLocalFile:function(h,m,y,b){if(o.fs.existsSync(h)){m=m?f(m):"";let v=Xe.win32.basename(Xe.win32.normalize(h));m+=y||v;let E=o.fs.statSync(h),g=E.isFile()?o.fs.readFileSync(h):Buffer.alloc(0);E.isDirectory()&&(m+=o.sep),this.addFile(m,g,b,E)}else throw Ke.Errors.FILE_NOT_FOUND(h)},addLocalFileAsync:function(h,m){h=typeof h=="object"?h:{localPath:h};let y=Xe.resolve(h.localPath),{comment:b}=h,{zipPath:v,zipName:E}=h,g=this;o.fs.stat(y,function(_,S){if(_)return m(_,!1);v=v?f(v):"";let P=Xe.win32.basename(Xe.win32.normalize(y));if(v+=E||P,S.isFile())o.fs.readFile(y,function(F,B){return F?m(F,!1):(g.addFile(v,B,b,S),setImmediate(m,void 0,!0))});else if(S.isDirectory())return v+=o.sep,g.addFile(v,Buffer.alloc(0),b,S),setImmediate(m,void 0,!0)})},addLocalFolder:function(h,m,y){if(y=d(y),m=m?f(m):"",h=Xe.normalize(h),o.fs.existsSync(h)){let b=o.findFiles(h),v=this;if(b.length)for(let E of b){let g=Xe.join(m,p(h,E));y(g)&&v.addLocalFile(E,Xe.dirname(g))}}else throw Ke.Errors.FILE_NOT_FOUND(h)},addLocalFolderAsync:function(h,m,y,b){b=d(b),y=y?f(y):"",h=Xe.normalize(h);var v=this;o.fs.open(h,"r",function(E){if(E&&E.code==="ENOENT")m(void 0,Ke.Errors.FILE_NOT_FOUND(h));else if(E)m(void 0,E);else{var g=o.findFiles(h),_=-1,S=function(){if(_+=1,_<g.length){var P=g[_],F=p(h,P).split("\\").join("/");F=F.normalize("NFD").replace(/[\u0300-\u036f]/g,"").replace(/[^\x20-\x7E]/g,""),b(F)?o.fs.stat(P,function(B,T){B&&m(void 0,B),T.isFile()?o.fs.readFile(P,function(L,A){L?m(void 0,L):(v.addFile(y+F,A,"",T),S())}):(v.addFile(y+F+"/",Buffer.alloc(0),"",T),S())}):process.nextTick(()=>{S()})}else m(!0,void 0)};S()}})},addLocalFolderAsync2:function(h,m){let y=this;h=typeof h=="object"?h:{localPath:h},localPath=Xe.resolve(f(h.localPath));let{zipPath:b,filter:v,namefix:E}=h;v instanceof RegExp?v=(function(S){return function(P){return S.test(P)}})(v):typeof v!="function"&&(v=function(){return!0}),b=b?f(b):"",E=="latin1"&&(E=S=>S.normalize("NFD").replace(/[\u0300-\u036f]/g,"").replace(/[^\x20-\x7E]/g,"")),typeof E!="function"&&(E=S=>S);let g=S=>Xe.join(b,E(p(localPath,S))),_=S=>Xe.win32.basename(Xe.win32.normalize(E(S)));o.fs.open(localPath,"r",function(S){S&&S.code==="ENOENT"?m(void 0,Ke.Errors.FILE_NOT_FOUND(localPath)):S?m(void 0,S):o.findFilesAsync(localPath,function(P,F){if(P)return m(P);F=F.filter(B=>v(g(B))),F.length||m(void 0,!1),setImmediate(F.reverse().reduce(function(B,T){return function(L,A){if(L||A===!1)return setImmediate(B,L,!1);y.addLocalFileAsync({localPath:T,zipPath:Xe.dirname(g(T)),zipName:_(T)},B)}},m))})})},addLocalFolderPromise:function(h,m){return new Promise((y,b)=>{this.addLocalFolderAsync2(Object.assign({localPath:h},m),(v,E)=>{v&&b(v),E&&y(this)})})},addFile:function(h,m,y,b){h=u(h);let v=c(h),E=v!=null;E||(v=new z$(n),v.entryName=h),v.comment=y||"";let g=typeof b=="object"&&b instanceof o.fs.Stats;g&&(v.header.time=b.mtime);var _=v.isDirectory?16:0;let S=v.isDirectory?16384:32768;return g?S|=4095&b.mode:typeof b=="number"?S|=4095&b:S|=v.isDirectory?493:420,_=(_|S<<16)>>>0,v.attr=_,v.setData(m),E||i.setEntry(v),v},getEntries:function(h){return i.password=h,i?i.entries:[]},getEntry:function(h){return c(h)},getEntryCount:function(){return i.getEntryCount()},forEach:function(h){return i.forEach(h)},extractEntryTo:function(h,m,y,b,v,E){b=Zn(!1,b),v=Zn(!1,v),y=Zn(!0,y),E=Db(v,E);var g=c(h);if(!g)throw Ke.Errors.NO_ENTRY();var _=a(g.entryName),S=s(m,E&&!g.isDirectory?E:y?_:Xe.basename(_));if(g.isDirectory){var P=i.getEntryChildren(g);return P.forEach(function(T){if(T.isDirectory)return;var L=T.getData();if(!L)throw Ke.Errors.CANT_EXTRACT_FILE();var A=a(T.entryName),q=s(m,y?A:Xe.basename(A));let j=v?T.header.fileAttr:void 0;o.writeFileTo(q,L,b,j)}),!0}var F=g.getData(i.password);if(!F)throw Ke.Errors.CANT_EXTRACT_FILE();if(o.fs.existsSync(S)&&!b)throw Ke.Errors.CANT_OVERRIDE();let B=v?h.header.fileAttr:void 0;return o.writeFileTo(S,F,b,B),!0},test:function(h){if(!i)return!1;for(var m in i.entries)try{if(m.isDirectory)continue;var y=i.entries[m].getData(h);if(!y)return!1}catch{return!1}return!0},extractAllTo:function(h,m,y,b){if(y=Zn(!1,y),b=Db(y,b),m=Zn(!1,m),!i)throw Ke.Errors.NO_ZIP();i.entries.forEach(function(v){var E=s(h,a(v.entryName));if(v.isDirectory){o.makeDir(E);return}var g=v.getData(b);if(!g)throw Ke.Errors.CANT_EXTRACT_FILE();let _=y?v.header.fileAttr:void 0;o.writeFileTo(E,g,m,_);try{o.fs.utimesSync(E,v.header.time,v.header.time)}catch{throw Ke.Errors.CANT_EXTRACT_FILE()}})},extractAllToAsync:function(h,m,y,b){if(b=G$(m,y,b),y=Zn(!1,y),m=Zn(!1,m),!b)return new Promise((S,P)=>{this.extractAllToAsync(h,m,y,function(F){F?P(F):S(this)})});if(!i){b(Ke.Errors.NO_ZIP());return}h=Xe.resolve(h);let v=S=>s(h,Xe.normalize(a(S.entryName))),E=(S,P)=>new Error(S+': "'+P+'"'),g=[],_=[];i.entries.forEach(S=>{S.isDirectory?g.push(S):_.push(S)});for(let S of g){let P=v(S),F=y?S.header.fileAttr:void 0;try{o.makeDir(P),F&&o.fs.chmodSync(P,F),o.fs.utimesSync(P,S.header.time,S.header.time)}catch{b(E("Unable to create folder",P))}}_.reverse().reduce(function(S,P){return function(F){if(F)S(F);else{let B=Xe.normalize(a(P.entryName)),T=s(h,B);P.getDataAsync(function(L,A){if(A)S(A);else if(!L)S(Ke.Errors.CANT_EXTRACT_FILE());else{let q=y?P.header.fileAttr:void 0;o.writeFileToAsync(T,L,m,q,function(j){j||S(E("Unable to write file",T)),o.fs.utimes(T,P.header.time,P.header.time,function(Z){Z?S(E("Unable to set times",T)):S()})})}})}}},b)()},writeZip:function(h,m){if(arguments.length===1&&typeof h=="function"&&(m=h,h=""),!h&&n.filename&&(h=n.filename),!!h){var y=i.compressToBuffer();if(y){var b=o.writeFileTo(h,y,!0);typeof m=="function"&&m(b?null:new Error("failed"),"")}}},writeZipPromise:function(h,m){let{overwrite:y,perm:b}=Object.assign({overwrite:!0},m);return new Promise((v,E)=>{!h&&n.filename&&(h=n.filename),h||E("ADM-ZIP: ZIP File Name Missing"),this.toBufferPromise().then(g=>{let _=S=>S?v(S):E("ADM-ZIP: Wasn't able to write zip file");o.writeFileToAsync(h,g,y,b,_)},E)})},toBufferPromise:function(){return new Promise((h,m)=>{i.toAsyncBuffer(h,m)})},toBuffer:function(h,m,y,b){return typeof h=="function"?(i.toAsyncBuffer(h,m,y,b),null):i.compressToBuffer()}}}});var Eb=x((Wz,Cb)=>{var vb={};Cb.exports=vb;var wb={reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],inverse:[7,27],hidden:[8,28],strikethrough:[9,29],black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],gray:[90,39],grey:[90,39],brightRed:[91,39],brightGreen:[92,39],brightYellow:[93,39],brightBlue:[94,39],brightMagenta:[95,39],brightCyan:[96,39],brightWhite:[97,39],bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgGray:[100,49],bgGrey:[100,49],bgBrightRed:[101,49],bgBrightGreen:[102,49],bgBrightYellow:[103,49],bgBrightBlue:[104,49],bgBrightMagenta:[105,49],bgBrightCyan:[106,49],bgBrightWhite:[107,49],blackBG:[40,49],redBG:[41,49],greenBG:[42,49],yellowBG:[43,49],blueBG:[44,49],magentaBG:[45,49],cyanBG:[46,49],whiteBG:[47,49]};Object.keys(wb).forEach(function(t){var e=wb[t],r=vb[t]=[];r.open="\x1B["+e[0]+"m",r.close="\x1B["+e[1]+"m"})});var Sb=x((Yz,_b)=>{"use strict";_b.exports=function(t,e){e=e||process.argv;var r=e.indexOf("--"),n=/^-{1,2}/.test(t)?"":"--",o=e.indexOf(n+t);return o!==-1&&(r===-1?!0:o<r)}});var Ab=x((Jz,xb)=>{"use strict";var Y$=require("os"),kr=Sb(),Tt=process.env,li=void 0;kr("no-color")||kr("no-colors")||kr("color=false")?li=!1:(kr("color")||kr("colors")||kr("color=true")||kr("color=always"))&&(li=!0);"FORCE_COLOR"in Tt&&(li=Tt.FORCE_COLOR.length===0||parseInt(Tt.FORCE_COLOR,10)!==0);function J$(t){return t===0?!1:{level:t,hasBasic:!0,has256:t>=2,has16m:t>=3}}function X$(t){if(li===!1)return 0;if(kr("color=16m")||kr("color=full")||kr("color=truecolor"))return 3;if(kr("color=256"))return 2;if(t&&!t.isTTY&&li!==!0)return 0;var e=li?1:0;if(process.platform==="win32"){var r=Y$.release().split(".");return Number(process.versions.node.split(".")[0])>=8&&Number(r[0])>=10&&Number(r[2])>=10586?Number(r[2])>=14931?3:2:1}if("CI"in Tt)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI"].some(function(o){return o in Tt})||Tt.CI_NAME==="codeship"?1:e;if("TEAMCITY_VERSION"in Tt)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(Tt.TEAMCITY_VERSION)?1:0;if("TERM_PROGRAM"in Tt){var n=parseInt((Tt.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(Tt.TERM_PROGRAM){case"iTerm.app":return n>=3?3:2;case"Hyper":return 3;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(Tt.TERM)?2:/^screen|^xterm|^vt100|^rxvt|color|ansi|cygwin|linux/i.test(Tt.TERM)||"COLORTERM"in Tt?1:(Tt.TERM==="dumb",e)}function ih(t){var e=X$(t);return J$(e)}xb.exports={supportsColor:ih,stdout:ih(process.stdout),stderr:ih(process.stderr)}});var Fb=x((Xz,Ob)=>{Ob.exports=function(e,r){var n="";e=e||"Run the trap, drop the bass",e=e.split("");var o={a:["@","\u0104","\u023A","\u0245","\u0394","\u039B","\u0414"],b:["\xDF","\u0181","\u0243","\u026E","\u03B2","\u0E3F"],c:["\xA9","\u023B","\u03FE"],d:["\xD0","\u018A","\u0500","\u0501","\u0502","\u0503"],e:["\xCB","\u0115","\u018E","\u0258","\u03A3","\u03BE","\u04BC","\u0A6C"],f:["\u04FA"],g:["\u0262"],h:["\u0126","\u0195","\u04A2","\u04BA","\u04C7","\u050A"],i:["\u0F0F"],j:["\u0134"],k:["\u0138","\u04A0","\u04C3","\u051E"],l:["\u0139"],m:["\u028D","\u04CD","\u04CE","\u0520","\u0521","\u0D69"],n:["\xD1","\u014B","\u019D","\u0376","\u03A0","\u048A"],o:["\xD8","\xF5","\xF8","\u01FE","\u0298","\u047A","\u05DD","\u06DD","\u0E4F"],p:["\u01F7","\u048E"],q:["\u09CD"],r:["\xAE","\u01A6","\u0210","\u024C","\u0280","\u042F"],s:["\xA7","\u03DE","\u03DF","\u03E8"],t:["\u0141","\u0166","\u0373"],u:["\u01B1","\u054D"],v:["\u05D8"],w:["\u0428","\u0460","\u047C","\u0D70"],x:["\u04B2","\u04FE","\u04FC","\u04FD"],y:["\xA5","\u04B0","\u04CB"],z:["\u01B5","\u0240"]};return e.forEach(function(i){i=i.toLowerCase();var a=o[i]||[" "],s=Math.floor(Math.random()*a.length);typeof o[i]<"u"?n+=o[i][s]:n+=i}),n}});var Pb=x((Zz,kb)=>{kb.exports=function(e,r){e=e||" he is here ";var n={up:["\u030D","\u030E","\u0304","\u0305","\u033F","\u0311","\u0306","\u0310","\u0352","\u0357","\u0351","\u0307","\u0308","\u030A","\u0342","\u0313","\u0308","\u034A","\u034B","\u034C","\u0303","\u0302","\u030C","\u0350","\u0300","\u0301","\u030B","\u030F","\u0312","\u0313","\u0314","\u033D","\u0309","\u0363","\u0364","\u0365","\u0366","\u0367","\u0368","\u0369","\u036A","\u036B","\u036C","\u036D","\u036E","\u036F","\u033E","\u035B","\u0346","\u031A"],down:["\u0316","\u0317","\u0318","\u0319","\u031C","\u031D","\u031E","\u031F","\u0320","\u0324","\u0325","\u0326","\u0329","\u032A","\u032B","\u032C","\u032D","\u032E","\u032F","\u0330","\u0331","\u0332","\u0333","\u0339","\u033A","\u033B","\u033C","\u0345","\u0347","\u0348","\u0349","\u034D","\u034E","\u0353","\u0354","\u0355","\u0356","\u0359","\u035A","\u0323"],mid:["\u0315","\u031B","\u0300","\u0301","\u0358","\u0321","\u0322","\u0327","\u0328","\u0334","\u0335","\u0336","\u035C","\u035D","\u035E","\u035F","\u0360","\u0362","\u0338","\u0337","\u0361"," \u0489"]},o=[].concat(n.up,n.down,n.mid);function i(u){var c=Math.floor(Math.random()*u);return c}function a(u){var c=!1;return o.filter(function(f){c=f===u}),c}function s(u,c){var f="",d,p;c=c||{},c.up=typeof c.up<"u"?c.up:!0,c.mid=typeof c.mid<"u"?c.mid:!0,c.down=typeof c.down<"u"?c.down:!0,c.size=typeof c.size<"u"?c.size:"maxi",u=u.split("");for(p in u)if(!a(p)){switch(f=f+u[p],d={up:0,down:0,mid:0},c.size){case"mini":d.up=i(8),d.mid=i(2),d.down=i(8);break;case"maxi":d.up=i(16)+3,d.mid=i(4)+1,d.down=i(64)+3;break;default:d.up=i(8)+1,d.mid=i(6)/2,d.down=i(8)+1;break}var h=["up","mid","down"];for(var m in h)for(var y=h[m],b=0;b<=d[y];b++)c[y]&&(f=f+n[y][i(n[y].length)])}return f}return s(e,r)}});var Ib=x((Qz,$b)=>{$b.exports=function(t){return function(e,r,n){if(e===" ")return e;switch(r%3){case 0:return t.red(e);case 1:return t.white(e);case 2:return t.blue(e)}}}});var Rb=x((eK,Tb)=>{Tb.exports=function(t){return function(e,r,n){return r%2===0?e:t.inverse(e)}}});var Nb=x((tK,Bb)=>{Bb.exports=function(t){var e=["red","yellow","green","blue","magenta"];return function(r,n,o){return r===" "?r:t[e[n++%e.length]](r)}}});var jb=x((rK,Lb)=>{Lb.exports=function(t){var e=["underline","inverse","grey","yellow","red","green","blue","white","cyan","magenta","brightYellow","brightRed","brightGreen","brightBlue","brightWhite","brightCyan","brightMagenta"];return function(r,n,o){return r===" "?r:t[e[Math.round(Math.random()*(e.length-2))]](r)}}});var zb=x((oK,Vb)=>{var he={};Vb.exports=he;he.themes={};var Z$=require("util"),Qn=he.styles=Eb(),Mb=Object.defineProperties,Q$=new RegExp(/[\r\n]+/g);he.supportsColor=Ab().supportsColor;typeof he.enabled>"u"&&(he.enabled=he.supportsColor()!==!1);he.enable=function(){he.enabled=!0};he.disable=function(){he.enabled=!1};he.stripColors=he.strip=function(t){return(""+t).replace(/\x1B\[\d+m/g,"")};var nK=he.stylize=function(e,r){if(!he.enabled)return e+"";var n=Qn[r];return!n&&r in he?he[r](e):n.open+e+n.close},e3=/[|\\{}()[\]^$+*?.]/g,t3=function(t){if(typeof t!="string")throw new TypeError("Expected a string");return t.replace(e3,"\\$&")};function qb(t){var e=function r(){return n3.apply(r,arguments)};return e._styles=t,e.__proto__=r3,e}var Hb=(function(){var t={};return Qn.grey=Qn.gray,Object.keys(Qn).forEach(function(e){Qn[e].closeRe=new RegExp(t3(Qn[e].close),"g"),t[e]={get:function(){return qb(this._styles.concat(e))}}}),t})(),r3=Mb(function(){},Hb);function n3(){var t=Array.prototype.slice.call(arguments),e=t.map(function(a){return a!=null&&a.constructor===String?a:Z$.inspect(a)}).join(" ");if(!he.enabled||!e)return e;for(var r=e.indexOf(`
|
|
31
31
|
`)!=-1,n=this._styles,o=n.length;o--;){var i=Qn[n[o]];e=i.open+e.replace(i.closeRe,i.open)+i.close,r&&(e=e.replace(Q$,function(a){return i.close+a+i.open}))}return e}he.setTheme=function(t){if(typeof t=="string"){console.log("colors.setTheme now only accepts an object, not a string. If you are trying to set a theme from a file, it is now your (the caller's) responsibility to require the file. The old syntax looked like colors.setTheme(__dirname + '/../themes/generic-logging.js'); The new syntax looks like colors.setTheme(require(__dirname + '/../themes/generic-logging.js'));");return}for(var e in t)(function(r){he[r]=function(n){if(typeof t[r]=="object"){var o=n;for(var i in t[r])o=he[t[r][i]](o);return o}return he[t[r]](n)}})(e)};function o3(){var t={};return Object.keys(Hb).forEach(function(e){t[e]={get:function(){return qb([e])}}}),t}var i3=function(e,r){var n=r.split("");return n=n.map(e),n.join("")};he.trap=Fb();he.zalgo=Pb();he.maps={};he.maps.america=Ib()(he);he.maps.zebra=Rb()(he);he.maps.rainbow=Nb()(he);he.maps.random=jb()(he);for(Ub in he.maps)(function(t){he[t]=function(e){return i3(he.maps[t],e)}})(Ub);var Ub;Mb(he,o3())});var Gb=x((iK,Kb)=>{var a3=zb();Kb.exports=a3});var Wb=x(ah=>{"use strict";ah.indent=function(e){return new Array(e+1).join(" ")};ah.getMaxIndexLength=function(t){var e=0;return Object.getOwnPropertyNames(t).forEach(function(r){t[r]!==void 0&&(e=Math.max(e,r.length))}),e}});var Yb=x((sK,s3)=>{s3.exports={author:"Rafael de Oleza <rafeca@gmail.com> (https://github.com/rafeca)",name:"prettyjson",description:"Package for formatting JSON data in a coloured YAML-style, perfect for CLI output",version:"1.2.5",homepage:"http://rafeca.com/prettyjson",keywords:["json","cli","formatting","colors"],repository:{type:"git",url:"https://github.com/rafeca/prettyjson.git"},bugs:{url:"https://github.com/rafeca/prettyjson/issues"},main:"./lib/prettyjson",files:["bin/prettyjson","lib/*.js"],license:"MIT",scripts:{test:"npm run jshint && mocha --reporter spec",testwin:"node ./node_modules/mocha/bin/mocha --reporter spec",jshint:"jshint lib/*.js test/*.js",coverage:"istanbul cover _mocha --report lcovonly -- -R spec",coveralls:"npm run coverage && cat ./coverage/lcov.info | coveralls && rm -rf ./coverage",changelog:"git log $(git describe --tags --abbrev=0)..HEAD --pretty='* %s' --first-parent"},bin:{prettyjson:"./bin/prettyjson"},dependencies:{colors:"1.4.0",minimist:"^1.2.0"},devDependencies:{coveralls:"^2.11.15",istanbul:"^0.4.5",jshint:"^2.9.4",mocha:"^3.1.2","mocha-lcov-reporter":"^1.2.0",should:"^11.1.1"}}});var Jb=x(Va=>{"use strict";var Br=Gb(),Pn=Wb(),u3=/[^\w\s\n\r\v\t\.,]/i;Va.version=Yb().version;var sh=function(t,e){return t!==void 0||e.renderUndefined},nc=function(t,e,r){return!!(typeof t=="boolean"||typeof t=="number"||typeof t=="function"||t===null||t===void 0||t instanceof Date||typeof t=="string"&&t.indexOf(`
|
|
32
32
|
`)===-1||r.inlineArrays&&!e&&Array.isArray(t)&&nc(t[0],!0,r))},c3=function(t,e){if(e.noColor)return t;if(typeof t=="string")return e.stringColor?Br[e.stringColor](t):t;var r=t+"";return t===!0?Br.green(r):t===!1?Br.red(r):t==null?Br.grey(r):typeof t=="number"?t>=0?Br[e.positiveNumberColor](r):Br[e.negativeNumberColor](r):typeof t=="function"?"function() {}":Array.isArray(t)?t.join(", "):r},uh=function(t,e){return t.multilineStringColor===null||t.noColor?e:Br[t.multilineStringColor](e)},l3=function(t,e,r){var n=t.split(`
|
|
33
33
|
`);return n=n.map(function(o){return Pn.indent(e)+uh(r,o)}),n.join(`
|
|
@@ -44,7 +44,7 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
44
44
|
`)}),e.__defineSetter__("stack",function(r){return[r].concat(e.stack).join(`
|
|
45
45
|
|
|
46
46
|
`)}),e}});var wC=x((LK,bC)=>{var In=require("constants"),a8=process.cwd,zc=null,s8=process.env.GRACEFUL_FS_PLATFORM||process.platform;process.cwd=function(){return zc||(zc=a8.call(process)),zc};try{process.cwd()}catch{}typeof process.chdir=="function"&&(nm=process.chdir,process.chdir=function(t){zc=null,nm.call(process,t)},Object.setPrototypeOf&&Object.setPrototypeOf(process.chdir,nm));var nm;bC.exports=u8;function u8(t){In.hasOwnProperty("O_SYMLINK")&&process.version.match(/^v0\.6\.[0-2]|^v0\.5\./)&&e(t),t.lutimes||r(t),t.chown=i(t.chown),t.fchown=i(t.fchown),t.lchown=i(t.lchown),t.chmod=n(t.chmod),t.fchmod=n(t.fchmod),t.lchmod=n(t.lchmod),t.chownSync=a(t.chownSync),t.fchownSync=a(t.fchownSync),t.lchownSync=a(t.lchownSync),t.chmodSync=o(t.chmodSync),t.fchmodSync=o(t.fchmodSync),t.lchmodSync=o(t.lchmodSync),t.stat=s(t.stat),t.fstat=s(t.fstat),t.lstat=s(t.lstat),t.statSync=u(t.statSync),t.fstatSync=u(t.fstatSync),t.lstatSync=u(t.lstatSync),t.chmod&&!t.lchmod&&(t.lchmod=function(f,d,p){p&&process.nextTick(p)},t.lchmodSync=function(){}),t.chown&&!t.lchown&&(t.lchown=function(f,d,p,h){h&&process.nextTick(h)},t.lchownSync=function(){}),s8==="win32"&&(t.rename=typeof t.rename!="function"?t.rename:(function(f){function d(p,h,m){var y=Date.now(),b=0;f(p,h,function v(E){if(E&&(E.code==="EACCES"||E.code==="EPERM"||E.code==="EBUSY")&&Date.now()-y<6e4){setTimeout(function(){t.stat(h,function(g,_){g&&g.code==="ENOENT"?f(p,h,v):m(E)})},b),b<100&&(b+=10);return}m&&m(E)})}return Object.setPrototypeOf&&Object.setPrototypeOf(d,f),d})(t.rename)),t.read=typeof t.read!="function"?t.read:(function(f){function d(p,h,m,y,b,v){var E;if(v&&typeof v=="function"){var g=0;E=function(_,S,P){if(_&&_.code==="EAGAIN"&&g<10)return g++,f.call(t,p,h,m,y,b,E);v.apply(this,arguments)}}return f.call(t,p,h,m,y,b,E)}return Object.setPrototypeOf&&Object.setPrototypeOf(d,f),d})(t.read),t.readSync=typeof t.readSync!="function"?t.readSync:(function(f){return function(d,p,h,m,y){for(var b=0;;)try{return f.call(t,d,p,h,m,y)}catch(v){if(v.code==="EAGAIN"&&b<10){b++;continue}throw v}}})(t.readSync);function e(f){f.lchmod=function(d,p,h){f.open(d,In.O_WRONLY|In.O_SYMLINK,p,function(m,y){if(m){h&&h(m);return}f.fchmod(y,p,function(b){f.close(y,function(v){h&&h(b||v)})})})},f.lchmodSync=function(d,p){var h=f.openSync(d,In.O_WRONLY|In.O_SYMLINK,p),m=!0,y;try{y=f.fchmodSync(h,p),m=!1}finally{if(m)try{f.closeSync(h)}catch{}else f.closeSync(h)}return y}}function r(f){In.hasOwnProperty("O_SYMLINK")&&f.futimes?(f.lutimes=function(d,p,h,m){f.open(d,In.O_SYMLINK,function(y,b){if(y){m&&m(y);return}f.futimes(b,p,h,function(v){f.close(b,function(E){m&&m(v||E)})})})},f.lutimesSync=function(d,p,h){var m=f.openSync(d,In.O_SYMLINK),y,b=!0;try{y=f.futimesSync(m,p,h),b=!1}finally{if(b)try{f.closeSync(m)}catch{}else f.closeSync(m)}return y}):f.futimes&&(f.lutimes=function(d,p,h,m){m&&process.nextTick(m)},f.lutimesSync=function(){})}function n(f){return f&&function(d,p,h){return f.call(t,d,p,function(m){c(m)&&(m=null),h&&h.apply(this,arguments)})}}function o(f){return f&&function(d,p){try{return f.call(t,d,p)}catch(h){if(!c(h))throw h}}}function i(f){return f&&function(d,p,h,m){return f.call(t,d,p,h,function(y){c(y)&&(y=null),m&&m.apply(this,arguments)})}}function a(f){return f&&function(d,p,h){try{return f.call(t,d,p,h)}catch(m){if(!c(m))throw m}}}function s(f){return f&&function(d,p,h){typeof p=="function"&&(h=p,p=null);function m(y,b){b&&(b.uid<0&&(b.uid+=4294967296),b.gid<0&&(b.gid+=4294967296)),h&&h.apply(this,arguments)}return p?f.call(t,d,p,m):f.call(t,d,m)}}function u(f){return f&&function(d,p){var h=p?f.call(t,d,p):f.call(t,d);return h&&(h.uid<0&&(h.uid+=4294967296),h.gid<0&&(h.gid+=4294967296)),h}}function c(f){if(!f||f.code==="ENOSYS")return!0;var d=!process.getuid||process.getuid()!==0;return!!(d&&(f.code==="EINVAL"||f.code==="EPERM"))}}});var EC=x((jK,CC)=>{var vC=require("stream").Stream;CC.exports=c8;function c8(t){return{ReadStream:e,WriteStream:r};function e(n,o){if(!(this instanceof e))return new e(n,o);vC.call(this);var i=this;this.path=n,this.fd=null,this.readable=!0,this.paused=!1,this.flags="r",this.mode=438,this.bufferSize=64*1024,o=o||{};for(var a=Object.keys(o),s=0,u=a.length;s<u;s++){var c=a[s];this[c]=o[c]}if(this.encoding&&this.setEncoding(this.encoding),this.start!==void 0){if(typeof this.start!="number")throw TypeError("start must be a Number");if(this.end===void 0)this.end=1/0;else if(typeof this.end!="number")throw TypeError("end must be a Number");if(this.start>this.end)throw new Error("start must be <= end");this.pos=this.start}if(this.fd!==null){process.nextTick(function(){i._read()});return}t.open(this.path,this.flags,this.mode,function(f,d){if(f){i.emit("error",f),i.readable=!1;return}i.fd=d,i.emit("open",d),i._read()})}function r(n,o){if(!(this instanceof r))return new r(n,o);vC.call(this),this.path=n,this.fd=null,this.writable=!0,this.flags="w",this.encoding="binary",this.mode=438,this.bytesWritten=0,o=o||{};for(var i=Object.keys(o),a=0,s=i.length;a<s;a++){var u=i[a];this[u]=o[u]}if(this.start!==void 0){if(typeof this.start!="number")throw TypeError("start must be a Number");if(this.start<0)throw new Error("start must be >= zero");this.pos=this.start}this.busy=!1,this._queue=[],this.fd===null&&(this._open=t.open,this._queue.push([this._open,this.path,this.flags,this.mode,void 0]),this.flush())}}});var SC=x((UK,_C)=>{"use strict";_C.exports=f8;var l8=Object.getPrototypeOf||function(t){return t.__proto__};function f8(t){if(t===null||typeof t!="object")return t;if(t instanceof Object)var e={__proto__:l8(t)};else var e=Object.create(null);return Object.getOwnPropertyNames(t).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))}),e}});var Tn=x((MK,am)=>{var Ge=require("fs"),d8=wC(),p8=EC(),h8=SC(),Kc=require("util"),Dt,Wc;typeof Symbol=="function"&&typeof Symbol.for=="function"?(Dt=Symbol.for("graceful-fs.queue"),Wc=Symbol.for("graceful-fs.previous")):(Dt="___graceful-fs.queue",Wc="___graceful-fs.previous");function m8(){}function OC(t,e){Object.defineProperty(t,Dt,{get:function(){return e}})}var wo=m8;Kc.debuglog?wo=Kc.debuglog("gfs4"):/\bgfs4\b/i.test(process.env.NODE_DEBUG||"")&&(wo=function(){var t=Kc.format.apply(Kc,arguments);t="GFS4: "+t.split(/\n/).join(`
|
|
47
|
-
GFS4: `),console.error(t)});Ge[Dt]||(xC=global[Dt]||[],OC(Ge,xC),Ge.close=(function(t){function e(r,n){return t.call(Ge,r,function(o){o||AC(),typeof n=="function"&&n.apply(this,arguments)})}return Object.defineProperty(e,Wc,{value:t}),e})(Ge.close),Ge.closeSync=(function(t){function e(r){t.apply(Ge,arguments),AC()}return Object.defineProperty(e,Wc,{value:t}),e})(Ge.closeSync),/\bgfs4\b/i.test(process.env.NODE_DEBUG||"")&&process.on("exit",function(){wo(Ge[Dt]),require("assert").equal(Ge[Dt].length,0)}));var xC;global[Dt]||OC(global,Ge[Dt]);am.exports=om(h8(Ge));process.env.TEST_GRACEFUL_FS_GLOBAL_PATCH&&!Ge.__patched&&(am.exports=om(Ge),Ge.__patched=!0);function om(t){d8(t),t.gracefulify=om,t.createReadStream=S,t.createWriteStream=P;var e=t.readFile;t.readFile=r;function r(T,L,A){return typeof L=="function"&&(A=L,L=null),q(T,L,A);function q(j,Z,k,D){return e(j,Z,function(w){w&&(w.code==="EMFILE"||w.code==="ENFILE")?Ai([q,[j,Z,k],w,D||Date.now(),Date.now()]):typeof k=="function"&&k.apply(this,arguments)})}}var n=t.writeFile;t.writeFile=o;function o(T,L,A,q){return typeof A=="function"&&(q=A,A=null),j(T,L,A,q);function j(Z,k,D,w,C){return n(Z,k,D,function(O){O&&(O.code==="EMFILE"||O.code==="ENFILE")?Ai([j,[Z,k,D,w],O,C||Date.now(),Date.now()]):typeof w=="function"&&w.apply(this,arguments)})}}var i=t.appendFile;i&&(t.appendFile=a);function a(T,L,A,q){return typeof A=="function"&&(q=A,A=null),j(T,L,A,q);function j(Z,k,D,w,C){return i(Z,k,D,function(O){O&&(O.code==="EMFILE"||O.code==="ENFILE")?Ai([j,[Z,k,D,w],O,C||Date.now(),Date.now()]):typeof w=="function"&&w.apply(this,arguments)})}}var s=t.copyFile;s&&(t.copyFile=u);function u(T,L,A,q){return typeof A=="function"&&(q=A,A=0),j(T,L,A,q);function j(Z,k,D,w,C){return s(Z,k,D,function(O){O&&(O.code==="EMFILE"||O.code==="ENFILE")?Ai([j,[Z,k,D,w],O,C||Date.now(),Date.now()]):typeof w=="function"&&w.apply(this,arguments)})}}var c=t.readdir;t.readdir=d;var f=/^v[0-5]\./;function d(T,L,A){typeof L=="function"&&(A=L,L=null);var q=f.test(process.version)?function(k,D,w,C){return c(k,j(k,D,w,C))}:function(k,D,w,C){return c(k,D,j(k,D,w,C))};return q(T,L,A);function j(Z,k,D,w){return function(C,O){C&&(C.code==="EMFILE"||C.code==="ENFILE")?Ai([q,[Z,k,D],C,w||Date.now(),Date.now()]):(O&&O.sort&&O.sort(),typeof D=="function"&&D.call(this,C,O))}}}if(process.version.substr(0,4)==="v0.8"){var p=p8(t);v=p.ReadStream,g=p.WriteStream}var h=t.ReadStream;h&&(v.prototype=Object.create(h.prototype),v.prototype.open=E);var m=t.WriteStream;m&&(g.prototype=Object.create(m.prototype),g.prototype.open=_),Object.defineProperty(t,"ReadStream",{get:function(){return v},set:function(T){v=T},enumerable:!0,configurable:!0}),Object.defineProperty(t,"WriteStream",{get:function(){return g},set:function(T){g=T},enumerable:!0,configurable:!0});var y=v;Object.defineProperty(t,"FileReadStream",{get:function(){return y},set:function(T){y=T},enumerable:!0,configurable:!0});var b=g;Object.defineProperty(t,"FileWriteStream",{get:function(){return b},set:function(T){b=T},enumerable:!0,configurable:!0});function v(T,L){return this instanceof v?(h.apply(this,arguments),this):v.apply(Object.create(v.prototype),arguments)}function E(){var T=this;B(T.path,T.flags,T.mode,function(L,A){L?(T.autoClose&&T.destroy(),T.emit("error",L)):(T.fd=A,T.emit("open",A),T.read())})}function g(T,L){return this instanceof g?(m.apply(this,arguments),this):g.apply(Object.create(g.prototype),arguments)}function _(){var T=this;B(T.path,T.flags,T.mode,function(L,A){L?(T.destroy(),T.emit("error",L)):(T.fd=A,T.emit("open",A))})}function S(T,L){return new t.ReadStream(T,L)}function P(T,L){return new t.WriteStream(T,L)}var F=t.open;t.open=B;function B(T,L,A,q){return typeof A=="function"&&(q=A,A=null),j(T,L,A,q);function j(Z,k,D,w,C){return F(Z,k,D,function(O,R){O&&(O.code==="EMFILE"||O.code==="ENFILE")?Ai([j,[Z,k,D,w],O,C||Date.now(),Date.now()]):typeof w=="function"&&w.apply(this,arguments)})}}return t}function Ai(t){wo("ENQUEUE",t[0].name,t[1]),Ge[Dt].push(t),im()}var Gc;function AC(){for(var t=Date.now(),e=0;e<Ge[Dt].length;++e)Ge[Dt][e].length>2&&(Ge[Dt][e][3]=t,Ge[Dt][e][4]=t);im()}function im(){if(clearTimeout(Gc),Gc=void 0,Ge[Dt].length!==0){var t=Ge[Dt].shift(),e=t[0],r=t[1],n=t[2],o=t[3],i=t[4];if(o===void 0)wo("RETRY",e.name,r),e.apply(null,r);else if(Date.now()-o>=6e4){wo("TIMEOUT",e.name,r);var a=r.pop();typeof a=="function"&&a.call(null,n)}else{var s=Date.now()-i,u=Math.max(i-o,1),c=Math.min(u*1.2,100);s>=c?(wo("RETRY",e.name,r),e.apply(null,r.concat([o]))):Ge[Dt].push(t)}Gc===void 0&&(Gc=setTimeout(im,0))}}});var kC=x((qK,FC)=>{function gr(t,e){typeof e=="boolean"&&(e={forever:e}),this._originalTimeouts=JSON.parse(JSON.stringify(t)),this._timeouts=t,this._options=e||{},this._maxRetryTime=e&&e.maxRetryTime||1/0,this._fn=null,this._errors=[],this._attempts=1,this._operationTimeout=null,this._operationTimeoutCb=null,this._timeout=null,this._operationStart=null,this._options.forever&&(this._cachedTimeouts=this._timeouts.slice(0))}FC.exports=gr;gr.prototype.reset=function(){this._attempts=1,this._timeouts=this._originalTimeouts};gr.prototype.stop=function(){this._timeout&&clearTimeout(this._timeout),this._timeouts=[],this._cachedTimeouts=null};gr.prototype.retry=function(t){if(this._timeout&&clearTimeout(this._timeout),!t)return!1;var e=new Date().getTime();if(t&&e-this._operationStart>=this._maxRetryTime)return this._errors.unshift(new Error("RetryOperation timeout occurred")),!1;this._errors.push(t);var r=this._timeouts.shift();if(r===void 0)if(this._cachedTimeouts)this._errors.splice(this._errors.length-1,this._errors.length),this._timeouts=this._cachedTimeouts.slice(0),r=this._timeouts.shift();else return!1;var n=this,o=setTimeout(function(){n._attempts++,n._operationTimeoutCb&&(n._timeout=setTimeout(function(){n._operationTimeoutCb(n._attempts)},n._operationTimeout),n._options.unref&&n._timeout.unref()),n._fn(n._attempts)},r);return this._options.unref&&o.unref(),!0};gr.prototype.attempt=function(t,e){this._fn=t,e&&(e.timeout&&(this._operationTimeout=e.timeout),e.cb&&(this._operationTimeoutCb=e.cb));var r=this;this._operationTimeoutCb&&(this._timeout=setTimeout(function(){r._operationTimeoutCb()},r._operationTimeout)),this._operationStart=new Date().getTime(),this._fn(this._attempts)};gr.prototype.try=function(t){console.log("Using RetryOperation.try() is deprecated"),this.attempt(t)};gr.prototype.start=function(t){console.log("Using RetryOperation.start() is deprecated"),this.attempt(t)};gr.prototype.start=gr.prototype.try;gr.prototype.errors=function(){return this._errors};gr.prototype.attempts=function(){return this._attempts};gr.prototype.mainError=function(){if(this._errors.length===0)return null;for(var t={},e=null,r=0,n=0;n<this._errors.length;n++){var o=this._errors[n],i=o.message,a=(t[i]||0)+1;t[i]=a,a>=r&&(e=o,r=a)}return e}});var PC=x(vo=>{var g8=kC();vo.operation=function(t){var e=vo.timeouts(t);return new g8(e,{forever:t&&t.forever,unref:t&&t.unref,maxRetryTime:t&&t.maxRetryTime})};vo.timeouts=function(t){if(t instanceof Array)return[].concat(t);var e={retries:10,factor:2,minTimeout:1*1e3,maxTimeout:1/0,randomize:!1};for(var r in t)e[r]=t[r];if(e.minTimeout>e.maxTimeout)throw new Error("minTimeout is greater than maxTimeout");for(var n=[],o=0;o<e.retries;o++)n.push(this.createTimeout(o,e));return t&&t.forever&&!n.length&&n.push(this.createTimeout(o,e)),n.sort(function(i,a){return i-a}),n};vo.createTimeout=function(t,e){var r=e.randomize?Math.random()+1:1,n=Math.round(r*e.minTimeout*Math.pow(e.factor,t));return n=Math.min(n,e.maxTimeout),n};vo.wrap=function(t,e,r){if(e instanceof Array&&(r=e,e=null),!r){r=[];for(var n in t)typeof t[n]=="function"&&r.push(n)}for(var o=0;o<r.length;o++){var i=r[o],a=t[i];t[i]=function(u){var c=vo.operation(e),f=Array.prototype.slice.call(arguments,1),d=f.pop();f.push(function(p){c.retry(p)||(p&&(arguments[0]=c.mainError()),d.apply(this,arguments))}),c.attempt(function(){u.apply(t,f)})}.bind(t,a),t[i].options=e}}});var IC=x((VK,$C)=>{$C.exports=PC()});var TC=x((zK,Yc)=>{Yc.exports=["SIGABRT","SIGALRM","SIGHUP","SIGINT","SIGTERM"];process.platform!=="win32"&&Yc.exports.push("SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");process.platform==="linux"&&Yc.exports.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT","SIGUNUSED")});var cm=x((KK,ki)=>{var Ue=global.process,Co=function(t){return t&&typeof t=="object"&&typeof t.removeListener=="function"&&typeof t.emit=="function"&&typeof t.reallyExit=="function"&&typeof t.listeners=="function"&&typeof t.kill=="function"&&typeof t.pid=="number"&&typeof t.on=="function"};Co(Ue)?(RC=require("assert"),Oi=TC(),BC=/^win/i.test(Ue.platform),ls=require("events"),typeof ls!="function"&&(ls=ls.EventEmitter),Ue.__signal_exit_emitter__?st=Ue.__signal_exit_emitter__:(st=Ue.__signal_exit_emitter__=new ls,st.count=0,st.emitted={}),st.infinite||(st.setMaxListeners(1/0),st.infinite=!0),ki.exports=function(t,e){if(!Co(global.process))return function(){};RC.equal(typeof t,"function","a callback must be provided for exit handler"),Fi===!1&&sm();var r="exit";e&&e.alwaysLast&&(r="afterexit");var n=function(){st.removeListener(r,t),st.listeners("exit").length===0&&st.listeners("afterexit").length===0&&Jc()};return st.on(r,t),n},Jc=function(){!Fi||!Co(global.process)||(Fi=!1,Oi.forEach(function(e){try{Ue.removeListener(e,Xc[e])}catch{}}),Ue.emit=Zc,Ue.reallyExit=um,st.count-=1)},ki.exports.unload=Jc,Eo=function(e,r,n){st.emitted[e]||(st.emitted[e]=!0,st.emit(e,r,n))},Xc={},Oi.forEach(function(t){Xc[t]=function(){if(Co(global.process)){var r=Ue.listeners(t);r.length===st.count&&(Jc(),Eo("exit",null,t),Eo("afterexit",null,t),BC&&t==="SIGHUP"&&(t="SIGINT"),Ue.kill(Ue.pid,t))}}}),ki.exports.signals=function(){return Oi},Fi=!1,sm=function(){Fi||!Co(global.process)||(Fi=!0,st.count+=1,Oi=Oi.filter(function(e){try{return Ue.on(e,Xc[e]),!0}catch{return!1}}),Ue.emit=LC,Ue.reallyExit=NC)},ki.exports.load=sm,um=Ue.reallyExit,NC=function(e){Co(global.process)&&(Ue.exitCode=e||0,Eo("exit",Ue.exitCode,null),Eo("afterexit",Ue.exitCode,null),um.call(Ue,Ue.exitCode))},Zc=Ue.emit,LC=function(e,r){if(e==="exit"&&Co(global.process)){r!==void 0&&(Ue.exitCode=r);var n=Zc.apply(this,arguments);return Eo("exit",Ue.exitCode,null),Eo("afterexit",Ue.exitCode,null),n}else return Zc.apply(this,arguments)}):ki.exports=function(){return function(){}};var RC,Oi,BC,ls,st,Jc,Eo,Xc,Fi,sm,um,NC,Zc,LC});var UC=x((GK,lm)=>{"use strict";var jC=Symbol();function y8(t,e,r){let n=e[jC];if(n)return e.stat(t,(i,a)=>{if(i)return r(i);r(null,a.mtime,n)});let o=new Date(Math.ceil(Date.now()/1e3)*1e3+5);e.utimes(t,o,o,i=>{if(i)return r(i);e.stat(t,(a,s)=>{if(a)return r(a);let u=s.mtime.getTime()%1e3===0?"s":"ms";Object.defineProperty(e,jC,{value:u}),r(null,s.mtime,u)})})}function D8(t){let e=Date.now();return t==="s"&&(e=Math.ceil(e/1e3)*1e3),new Date(e)}lm.exports.probe=y8;lm.exports.getMtime=D8});var zC=x((WK,ds)=>{"use strict";var b8=require("path"),pm=Tn(),w8=IC(),v8=cm(),MC=UC(),un={};function fs(t,e){return e.lockfilePath||`${t}.lock`}function hm(t,e,r){if(!e.realpath)return r(null,b8.resolve(t));e.fs.realpath(t,r)}function dm(t,e,r){let n=fs(t,e);e.fs.mkdir(n,o=>{if(!o)return MC.probe(n,e.fs,(i,a,s)=>{if(i)return e.fs.rmdir(n,()=>{}),r(i);r(null,a,s)});if(o.code!=="EEXIST")return r(o);if(e.stale<=0)return r(Object.assign(new Error("Lock file is already being held"),{code:"ELOCKED",file:t}));e.fs.stat(n,(i,a)=>{if(i)return i.code==="ENOENT"?dm(t,{...e,stale:0},r):r(i);if(!qC(a,e))return r(Object.assign(new Error("Lock file is already being held"),{code:"ELOCKED",file:t}));HC(t,e,s=>{if(s)return r(s);dm(t,{...e,stale:0},r)})})})}function qC(t,e){return t.mtime.getTime()<Date.now()-e.stale}function HC(t,e,r){e.fs.rmdir(fs(t,e),n=>{if(n&&n.code!=="ENOENT")return r(n);r()})}function Qc(t,e){let r=un[t];r.updateTimeout||(r.updateDelay=r.updateDelay||e.update,r.updateTimeout=setTimeout(()=>{r.updateTimeout=null,e.fs.stat(r.lockfilePath,(n,o)=>{let i=r.lastUpdate+e.stale<Date.now();if(n)return n.code==="ENOENT"||i?fm(t,r,Object.assign(n,{code:"ECOMPROMISED"})):(r.updateDelay=1e3,Qc(t,e));if(!(r.mtime.getTime()===o.mtime.getTime()))return fm(t,r,Object.assign(new Error("Unable to update lock within the stale threshold"),{code:"ECOMPROMISED"}));let s=MC.getMtime(r.mtimePrecision);e.fs.utimes(r.lockfilePath,s,s,u=>{let c=r.lastUpdate+e.stale<Date.now();if(!r.released){if(u)return u.code==="ENOENT"||c?fm(t,r,Object.assign(u,{code:"ECOMPROMISED"})):(r.updateDelay=1e3,Qc(t,e));r.mtime=s,r.lastUpdate=Date.now(),r.updateDelay=null,Qc(t,e)}})})},r.updateDelay),r.updateTimeout.unref&&r.updateTimeout.unref())}function fm(t,e,r){e.released=!0,e.updateTimeout&&clearTimeout(e.updateTimeout),un[t]===e&&delete un[t],e.options.onCompromised(r)}function C8(t,e,r){e={stale:1e4,update:null,realpath:!0,retries:0,fs:pm,onCompromised:n=>{throw n},...e},e.retries=e.retries||0,e.retries=typeof e.retries=="number"?{retries:e.retries}:e.retries,e.stale=Math.max(e.stale||0,2e3),e.update=e.update==null?e.stale/2:e.update||0,e.update=Math.max(Math.min(e.update,e.stale/2),1e3),hm(t,e,(n,o)=>{if(n)return r(n);let i=w8.operation(e.retries);i.attempt(()=>{dm(o,e,(a,s,u)=>{if(i.retry(a))return;if(a)return r(i.mainError());let c=un[o]={lockfilePath:fs(o,e),mtime:s,mtimePrecision:u,options:e,lastUpdate:Date.now()};Qc(o,e),r(null,f=>{if(c.released)return f&&f(Object.assign(new Error("Lock is already released"),{code:"ERELEASED"}));VC(o,{...e,realpath:!1},f)})})})})}function VC(t,e,r){e={fs:pm,realpath:!0,...e},hm(t,e,(n,o)=>{if(n)return r(n);let i=un[o];if(!i)return r(Object.assign(new Error("Lock is not acquired/owned by you"),{code:"ENOTACQUIRED"}));i.updateTimeout&&clearTimeout(i.updateTimeout),i.released=!0,delete un[o],HC(o,e,r)})}function E8(t,e,r){e={stale:1e4,realpath:!0,fs:pm,...e},e.stale=Math.max(e.stale||0,2e3),hm(t,e,(n,o)=>{if(n)return r(n);e.fs.stat(fs(o,e),(i,a)=>i?i.code==="ENOENT"?r(null,!1):r(i):r(null,!qC(a,e)))})}function _8(){return un}v8(()=>{for(let t in un){let e=un[t].options;try{e.fs.rmdirSync(fs(t,e))}catch{}}});ds.exports.lock=C8;ds.exports.unlock=VC;ds.exports.check=E8;ds.exports.getLocks=_8});var GC=x((YK,KC)=>{"use strict";var S8=Tn();function x8(t){let e=["mkdir","realpath","stat","rmdir","utimes"],r={...t};return e.forEach(n=>{r[n]=(...o)=>{let i=o.pop(),a;try{a=t[`${n}Sync`](...o)}catch(s){return i(s)}i(null,a)}}),r}function A8(t){return(...e)=>new Promise((r,n)=>{e.push((o,i)=>{o?n(o):r(i)}),t(...e)})}function O8(t){return(...e)=>{let r,n;if(e.push((o,i)=>{r=o,n=i}),t(...e),r)throw r;return n}}function F8(t){if(t={...t},t.fs=x8(t.fs||S8),typeof t.retries=="number"&&t.retries>0||t.retries&&typeof t.retries.retries=="number"&&t.retries.retries>0)throw Object.assign(new Error("Cannot use retries with the sync api"),{code:"ESYNC"});return t}KC.exports={toPromise:A8,toSync:O8,toSyncOptions:F8}});var YC=x((JK,Rn)=>{"use strict";var Pi=zC(),{toPromise:el,toSync:tl,toSyncOptions:mm}=GC();async function WC(t,e){let r=await el(Pi.lock)(t,e);return el(r)}function k8(t,e){let r=tl(Pi.lock)(t,mm(e));return tl(r)}function P8(t,e){return el(Pi.unlock)(t,e)}function $8(t,e){return tl(Pi.unlock)(t,mm(e))}function I8(t,e){return el(Pi.check)(t,e)}function T8(t,e){return tl(Pi.check)(t,mm(e))}Rn.exports=WC;Rn.exports.lock=WC;Rn.exports.unlock=P8;Rn.exports.lockSync=k8;Rn.exports.unlockSync=$8;Rn.exports.check=I8;Rn.exports.checkSync=T8});var eE=x($i=>{"use strict";Object.defineProperty($i,"__esModule",{value:!0});$i.canStoreURLs=$i.FileUrlStorage=void 0;var JC=require("fs"),R8=N8(DC()),XC=B8(YC());function QC(t){if(typeof WeakMap!="function")return null;var e=new WeakMap,r=new WeakMap;return(QC=function(n){return n?r:e})(t)}function B8(t,e){if(!e&&t&&t.__esModule)return t;if(t===null||typeof t!="object"&&typeof t!="function")return{default:t};var r=QC(e);if(r&&r.has(t))return r.get(t);var n={__proto__:null},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in t)if(i!=="default"&&{}.hasOwnProperty.call(t,i)){var a=o?Object.getOwnPropertyDescriptor(t,i):null;a&&(a.get||a.set)?Object.defineProperty(n,i,a):n[i]=t[i]}return n.default=t,r&&r.set(t,n),n}function N8(t){return t&&t.__esModule?t:{default:t}}function ps(t){"@babel/helpers - typeof";return ps=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(e){return typeof e}:function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},ps(t)}function L8(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function ZC(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,U8(n.key),n)}}function j8(t,e,r){return e&&ZC(t.prototype,e),r&&ZC(t,r),Object.defineProperty(t,"prototype",{writable:!1}),t}function U8(t){var e=M8(t,"string");return ps(e)=="symbol"?e:e+""}function M8(t,e){if(ps(t)!="object"||!t)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var n=r.call(t,e||"default");if(ps(n)!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}var XK=$i.canStoreURLs=!0,ZK=$i.FileUrlStorage=(function(){function t(e){L8(this,t),this.path=e}return j8(t,[{key:"findAllUploads",value:function(){var r=this;return new Promise(function(n,o){r._getItems("tus::",function(i,a){i?o(i):n(a)})})}},{key:"findUploadsByFingerprint",value:function(r){var n=this;return new Promise(function(o,i){n._getItems("tus::".concat(r),function(a,s){a?i(a):o(s)})})}},{key:"removeUpload",value:function(r){var n=this;return new Promise(function(o,i){n._removeItem(r,function(a){a?i(a):o()})})}},{key:"addUpload",value:function(r,n){var o=this,i=Math.round(Math.random()*1e12),a="tus::".concat(r,"::").concat(i);return new Promise(function(s,u){o._setItem(a,n,function(c){c?u(c):s(a)})})}},{key:"_setItem",value:function(r,n,o){var i=this;XC.lock(this.path,this._lockfileOptions()).then(function(a){o=i._releaseAndCb(a,o),i._getData(function(s,u){if(s){o(s);return}u[r]=n,i._writeData(u,function(c){return o(c)})})}).catch(o)}},{key:"_getItems",value:function(r,n){this._getData(function(o,i){if(o){n(o);return}var a=Object.keys(i).filter(function(s){return s.startsWith(r)}).map(function(s){var u=i[s];return u.urlStorageKey=s,u});n(null,a)})}},{key:"_removeItem",value:function(r,n){var o=this;XC.lock(this.path,this._lockfileOptions()).then(function(i){n=o._releaseAndCb(i,n),o._getData(function(a,s){if(a){n(a);return}delete s[r],o._writeData(s,function(u){return n(u)})})}).catch(n)}},{key:"_lockfileOptions",value:function(){return{realpath:!1,retries:{retries:5,minTimeout:20}}}},{key:"_releaseAndCb",value:function(r,n){return function(o){if(o){r().then(function(){return n(o)}).catch(function(i){return n((0,R8.default)([o,i]))});return}r().then(n).catch(n)}}},{key:"_writeData",value:function(r,n){var o={encoding:"utf8",mode:432,flag:"w"};(0,JC.writeFile)(this.path,JSON.stringify(r),o,function(i){return n(i)})}},{key:"_getData",value:function(r){(0,JC.readFile)(this.path,"utf8",function(n,o){if(n){n.code==="ENOENT"?r(null,{}):r(n);return}try{o=o.trim().length?JSON.parse(o):{}}catch(i){r(i);return}r(null,o)})}}])})()});var nl=x(Gt=>{"use strict";Object.defineProperty(Gt,"__esModule",{value:!0});Object.defineProperty(Gt,"DefaultHttpStack",{enumerable:!0,get:function(){return oE.default}});Object.defineProperty(Gt,"DetailedError",{enumerable:!0,get:function(){return q8.default}});Object.defineProperty(Gt,"FileUrlStorage",{enumerable:!0,get:function(){return iE.FileUrlStorage}});Object.defineProperty(Gt,"StreamSource",{enumerable:!0,get:function(){return G8.default}});Gt.Upload=void 0;Object.defineProperty(Gt,"canStoreURLs",{enumerable:!0,get:function(){return iE.canStoreURLs}});Gt.defaultOptions=void 0;Object.defineProperty(Gt,"enableDebugLog",{enumerable:!0,get:function(){return H8.enableDebugLog}});Gt.isSupported=void 0;var q8=_o(fh()),H8=dh(),V8=_o(ew()),gm=_o(kw()),z8=_o(Hw()),K8=_o(Gw()),oE=_o(sv()),G8=_o(xh()),iE=eE();function _o(t){return t&&t.__esModule?t:{default:t}}function Ti(t){"@babel/helpers - typeof";return Ti=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(e){return typeof e}:function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Ti(t)}function W8(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function tE(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,sE(n.key),n)}}function Y8(t,e,r){return e&&tE(t.prototype,e),r&&tE(t,r),Object.defineProperty(t,"prototype",{writable:!1}),t}function J8(t,e,r){return e=rl(e),X8(t,aE()?Reflect.construct(e,r||[],rl(t).constructor):e.apply(t,r))}function X8(t,e){if(e&&(Ti(e)==="object"||typeof e=="function"))return e;if(e!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return Z8(t)}function Z8(t){if(t===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}function aE(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(aE=function(){return!!t})()}function rl(t){return rl=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(r){return r.__proto__||Object.getPrototypeOf(r)},rl(t)}function Q8(t,e){if(typeof e!="function"&&e!==null)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&ym(t,e)}function ym(t,e){return ym=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(n,o){return n.__proto__=o,n},ym(t,e)}function rE(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(t,o).enumerable})),r.push.apply(r,n)}return r}function Ii(t){for(var e=1;e<arguments.length;e++){var r=arguments[e]!=null?arguments[e]:{};e%2?rE(Object(r),!0).forEach(function(n){eN(t,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):rE(Object(r)).forEach(function(n){Object.defineProperty(t,n,Object.getOwnPropertyDescriptor(r,n))})}return t}function eN(t,e,r){return e=sE(e),e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function sE(t){var e=tN(t,"string");return Ti(e)=="symbol"?e:e+""}function tN(t,e){if(Ti(t)!="object"||!t)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var n=r.call(t,e||"default");if(Ti(n)!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}var nE=Gt.defaultOptions=Ii(Ii({},gm.default.defaultOptions),{},{httpStack:new oE.default,fileReader:new z8.default,urlStorage:new V8.default,fingerprint:K8.default}),eG=Gt.Upload=(function(t){function e(){var r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:null,n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return W8(this,e),n=Ii(Ii({},nE),n),J8(this,e,[r,n])}return Q8(e,t),Y8(e,null,[{key:"terminate",value:function(n){var o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return o=Ii(Ii({},nE),o),gm.default.terminate(n,o)}}])})(gm.default),tG=Gt.isSupported=!0});var dE=x((yG,fE)=>{var Ri=1e3,Bi=Ri*60,Ni=Bi*60,So=Ni*24,lN=So*7,fN=So*365.25;fE.exports=function(t,e){e=e||{};var r=typeof t;if(r==="string"&&t.length>0)return dN(t);if(r==="number"&&isFinite(t))return e.long?hN(t):pN(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))};function dN(t){if(t=String(t),!(t.length>100)){var e=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(t);if(e){var r=parseFloat(e[1]),n=(e[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*fN;case"weeks":case"week":case"w":return r*lN;case"days":case"day":case"d":return r*So;case"hours":case"hour":case"hrs":case"hr":case"h":return r*Ni;case"minutes":case"minute":case"mins":case"min":case"m":return r*Bi;case"seconds":case"second":case"secs":case"sec":case"s":return r*Ri;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function pN(t){var e=Math.abs(t);return e>=So?Math.round(t/So)+"d":e>=Ni?Math.round(t/Ni)+"h":e>=Bi?Math.round(t/Bi)+"m":e>=Ri?Math.round(t/Ri)+"s":t+"ms"}function hN(t){var e=Math.abs(t);return e>=So?il(t,e,So,"day"):e>=Ni?il(t,e,Ni,"hour"):e>=Bi?il(t,e,Bi,"minute"):e>=Ri?il(t,e,Ri,"second"):t+" ms"}function il(t,e,r,n){var o=e>=r*1.5;return Math.round(t/r)+" "+n+(o?"s":"")}});var wm=x((DG,pE)=>{function mN(t){r.debug=r,r.default=r,r.coerce=u,r.disable=a,r.enable=o,r.enabled=s,r.humanize=dE(),r.destroy=c,Object.keys(t).forEach(f=>{r[f]=t[f]}),r.names=[],r.skips=[],r.formatters={};function e(f){let d=0;for(let p=0;p<f.length;p++)d=(d<<5)-d+f.charCodeAt(p),d|=0;return r.colors[Math.abs(d)%r.colors.length]}r.selectColor=e;function r(f){let d,p=null,h,m;function y(...b){if(!y.enabled)return;let v=y,E=Number(new Date),g=E-(d||E);v.diff=g,v.prev=d,v.curr=E,d=E,b[0]=r.coerce(b[0]),typeof b[0]!="string"&&b.unshift("%O");let _=0;b[0]=b[0].replace(/%([a-zA-Z%])/g,(P,F)=>{if(P==="%%")return"%";_++;let B=r.formatters[F];if(typeof B=="function"){let T=b[_];P=B.call(v,T),b.splice(_,1),_--}return P}),r.formatArgs.call(v,b),(v.log||r.log).apply(v,b)}return y.namespace=f,y.useColors=r.useColors(),y.color=r.selectColor(f),y.extend=n,y.destroy=r.destroy,Object.defineProperty(y,"enabled",{enumerable:!0,configurable:!1,get:()=>p!==null?p:(h!==r.namespaces&&(h=r.namespaces,m=r.enabled(f)),m),set:b=>{p=b}}),typeof r.init=="function"&&r.init(y),y}function n(f,d){let p=r(this.namespace+(typeof d>"u"?":":d)+f);return p.log=this.log,p}function o(f){r.save(f),r.namespaces=f,r.names=[],r.skips=[];let d=(typeof f=="string"?f:"").trim().replace(/\s+/g,",").split(",").filter(Boolean);for(let p of d)p[0]==="-"?r.skips.push(p.slice(1)):r.names.push(p)}function i(f,d){let p=0,h=0,m=-1,y=0;for(;p<f.length;)if(h<d.length&&(d[h]===f[p]||d[h]==="*"))d[h]==="*"?(m=h,y=p,h++):(p++,h++);else if(m!==-1)h=m+1,y++,p=y;else return!1;for(;h<d.length&&d[h]==="*";)h++;return h===d.length}function a(){let f=[...r.names,...r.skips.map(d=>"-"+d)].join(",");return r.enable(""),f}function s(f){for(let d of r.skips)if(i(f,d))return!1;for(let d of r.names)if(i(f,d))return!0;return!1}function u(f){return f instanceof Error?f.stack||f.message:f}function c(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return r.enable(r.load()),r}pE.exports=mN});var hE=x((Wt,al)=>{Wt.formatArgs=yN;Wt.save=DN;Wt.load=bN;Wt.useColors=gN;Wt.storage=wN();Wt.destroy=(()=>{let t=!1;return()=>{t||(t=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();Wt.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function gN(){if(typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs))return!0;if(typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let t;return typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&(t=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(t[1],10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function yN(t){if(t[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+t[0]+(this.useColors?"%c ":" ")+"+"+al.exports.humanize(this.diff),!this.useColors)return;let e="color: "+this.color;t.splice(1,0,e,"color: inherit");let r=0,n=0;t[0].replace(/%[a-zA-Z%]/g,o=>{o!=="%%"&&(r++,o==="%c"&&(n=r))}),t.splice(n,0,e)}Wt.log=console.debug||console.log||(()=>{});function DN(t){try{t?Wt.storage.setItem("debug",t):Wt.storage.removeItem("debug")}catch{}}function bN(){let t;try{t=Wt.storage.getItem("debug")||Wt.storage.getItem("DEBUG")}catch{}return!t&&typeof process<"u"&&"env"in process&&(t=process.env.DEBUG),t}function wN(){try{return localStorage}catch{}}al.exports=wm()(Wt);var{formatters:vN}=al.exports;vN.j=function(t){try{return JSON.stringify(t)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}});var gE=x((bG,mE)=>{"use strict";mE.exports=(t,e=process.argv)=>{let r=t.startsWith("-")?"":t.length===1?"-":"--",n=e.indexOf(r+t),o=e.indexOf("--");return n!==-1&&(o===-1||n<o)}});var bE=x((wG,DE)=>{"use strict";var CN=require("os"),yE=require("tty"),Dr=gE(),{env:ct}=process,Bn;Dr("no-color")||Dr("no-colors")||Dr("color=false")||Dr("color=never")?Bn=0:(Dr("color")||Dr("colors")||Dr("color=true")||Dr("color=always"))&&(Bn=1);"FORCE_COLOR"in ct&&(ct.FORCE_COLOR==="true"?Bn=1:ct.FORCE_COLOR==="false"?Bn=0:Bn=ct.FORCE_COLOR.length===0?1:Math.min(parseInt(ct.FORCE_COLOR,10),3));function vm(t){return t===0?!1:{level:t,hasBasic:!0,has256:t>=2,has16m:t>=3}}function Cm(t,e){if(Bn===0)return 0;if(Dr("color=16m")||Dr("color=full")||Dr("color=truecolor"))return 3;if(Dr("color=256"))return 2;if(t&&!e&&Bn===void 0)return 0;let r=Bn||0;if(ct.TERM==="dumb")return r;if(process.platform==="win32"){let n=CN.release().split(".");return Number(n[0])>=10&&Number(n[2])>=10586?Number(n[2])>=14931?3:2:1}if("CI"in ct)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE"].some(n=>n in ct)||ct.CI_NAME==="codeship"?1:r;if("TEAMCITY_VERSION"in ct)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(ct.TEAMCITY_VERSION)?1:0;if(ct.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in ct){let n=parseInt((ct.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(ct.TERM_PROGRAM){case"iTerm.app":return n>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(ct.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(ct.TERM)||"COLORTERM"in ct?1:r}function EN(t){let e=Cm(t,t&&t.isTTY);return vm(e)}DE.exports={supportsColor:EN,stdout:vm(Cm(!0,yE.isatty(1))),stderr:vm(Cm(!0,yE.isatty(2)))}});var vE=x((lt,ul)=>{var _N=require("tty"),sl=require("util");lt.init=PN;lt.log=ON;lt.formatArgs=xN;lt.save=FN;lt.load=kN;lt.useColors=SN;lt.destroy=sl.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");lt.colors=[6,2,3,4,5,1];try{let t=bE();t&&(t.stderr||t).level>=2&&(lt.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch{}lt.inspectOpts=Object.keys(process.env).filter(t=>/^debug_/i.test(t)).reduce((t,e)=>{let r=e.substring(6).toLowerCase().replace(/_([a-z])/g,(o,i)=>i.toUpperCase()),n=process.env[e];return/^(yes|on|true|enabled)$/i.test(n)?n=!0:/^(no|off|false|disabled)$/i.test(n)?n=!1:n==="null"?n=null:n=Number(n),t[r]=n,t},{});function SN(){return"colors"in lt.inspectOpts?!!lt.inspectOpts.colors:_N.isatty(process.stderr.fd)}function xN(t){let{namespace:e,useColors:r}=this;if(r){let n=this.color,o="\x1B[3"+(n<8?n:"8;5;"+n),i=` ${o};1m${e} \x1B[0m`;t[0]=i+t[0].split(`
|
|
47
|
+
GFS4: `),console.error(t)});Ge[Dt]||(xC=global[Dt]||[],OC(Ge,xC),Ge.close=(function(t){function e(r,n){return t.call(Ge,r,function(o){o||AC(),typeof n=="function"&&n.apply(this,arguments)})}return Object.defineProperty(e,Wc,{value:t}),e})(Ge.close),Ge.closeSync=(function(t){function e(r){t.apply(Ge,arguments),AC()}return Object.defineProperty(e,Wc,{value:t}),e})(Ge.closeSync),/\bgfs4\b/i.test(process.env.NODE_DEBUG||"")&&process.on("exit",function(){wo(Ge[Dt]),require("assert").equal(Ge[Dt].length,0)}));var xC;global[Dt]||OC(global,Ge[Dt]);am.exports=om(h8(Ge));process.env.TEST_GRACEFUL_FS_GLOBAL_PATCH&&!Ge.__patched&&(am.exports=om(Ge),Ge.__patched=!0);function om(t){d8(t),t.gracefulify=om,t.createReadStream=S,t.createWriteStream=P;var e=t.readFile;t.readFile=r;function r(T,L,A){return typeof L=="function"&&(A=L,L=null),q(T,L,A);function q(j,Z,k,D){return e(j,Z,function(w){w&&(w.code==="EMFILE"||w.code==="ENFILE")?Ai([q,[j,Z,k],w,D||Date.now(),Date.now()]):typeof k=="function"&&k.apply(this,arguments)})}}var n=t.writeFile;t.writeFile=o;function o(T,L,A,q){return typeof A=="function"&&(q=A,A=null),j(T,L,A,q);function j(Z,k,D,w,C){return n(Z,k,D,function(O){O&&(O.code==="EMFILE"||O.code==="ENFILE")?Ai([j,[Z,k,D,w],O,C||Date.now(),Date.now()]):typeof w=="function"&&w.apply(this,arguments)})}}var i=t.appendFile;i&&(t.appendFile=a);function a(T,L,A,q){return typeof A=="function"&&(q=A,A=null),j(T,L,A,q);function j(Z,k,D,w,C){return i(Z,k,D,function(O){O&&(O.code==="EMFILE"||O.code==="ENFILE")?Ai([j,[Z,k,D,w],O,C||Date.now(),Date.now()]):typeof w=="function"&&w.apply(this,arguments)})}}var s=t.copyFile;s&&(t.copyFile=u);function u(T,L,A,q){return typeof A=="function"&&(q=A,A=0),j(T,L,A,q);function j(Z,k,D,w,C){return s(Z,k,D,function(O){O&&(O.code==="EMFILE"||O.code==="ENFILE")?Ai([j,[Z,k,D,w],O,C||Date.now(),Date.now()]):typeof w=="function"&&w.apply(this,arguments)})}}var c=t.readdir;t.readdir=d;var f=/^v[0-5]\./;function d(T,L,A){typeof L=="function"&&(A=L,L=null);var q=f.test(process.version)?function(k,D,w,C){return c(k,j(k,D,w,C))}:function(k,D,w,C){return c(k,D,j(k,D,w,C))};return q(T,L,A);function j(Z,k,D,w){return function(C,O){C&&(C.code==="EMFILE"||C.code==="ENFILE")?Ai([q,[Z,k,D],C,w||Date.now(),Date.now()]):(O&&O.sort&&O.sort(),typeof D=="function"&&D.call(this,C,O))}}}if(process.version.substr(0,4)==="v0.8"){var p=p8(t);v=p.ReadStream,g=p.WriteStream}var h=t.ReadStream;h&&(v.prototype=Object.create(h.prototype),v.prototype.open=E);var m=t.WriteStream;m&&(g.prototype=Object.create(m.prototype),g.prototype.open=_),Object.defineProperty(t,"ReadStream",{get:function(){return v},set:function(T){v=T},enumerable:!0,configurable:!0}),Object.defineProperty(t,"WriteStream",{get:function(){return g},set:function(T){g=T},enumerable:!0,configurable:!0});var y=v;Object.defineProperty(t,"FileReadStream",{get:function(){return y},set:function(T){y=T},enumerable:!0,configurable:!0});var b=g;Object.defineProperty(t,"FileWriteStream",{get:function(){return b},set:function(T){b=T},enumerable:!0,configurable:!0});function v(T,L){return this instanceof v?(h.apply(this,arguments),this):v.apply(Object.create(v.prototype),arguments)}function E(){var T=this;B(T.path,T.flags,T.mode,function(L,A){L?(T.autoClose&&T.destroy(),T.emit("error",L)):(T.fd=A,T.emit("open",A),T.read())})}function g(T,L){return this instanceof g?(m.apply(this,arguments),this):g.apply(Object.create(g.prototype),arguments)}function _(){var T=this;B(T.path,T.flags,T.mode,function(L,A){L?(T.destroy(),T.emit("error",L)):(T.fd=A,T.emit("open",A))})}function S(T,L){return new t.ReadStream(T,L)}function P(T,L){return new t.WriteStream(T,L)}var F=t.open;t.open=B;function B(T,L,A,q){return typeof A=="function"&&(q=A,A=null),j(T,L,A,q);function j(Z,k,D,w,C){return F(Z,k,D,function(O,R){O&&(O.code==="EMFILE"||O.code==="ENFILE")?Ai([j,[Z,k,D,w],O,C||Date.now(),Date.now()]):typeof w=="function"&&w.apply(this,arguments)})}}return t}function Ai(t){wo("ENQUEUE",t[0].name,t[1]),Ge[Dt].push(t),im()}var Gc;function AC(){for(var t=Date.now(),e=0;e<Ge[Dt].length;++e)Ge[Dt][e].length>2&&(Ge[Dt][e][3]=t,Ge[Dt][e][4]=t);im()}function im(){if(clearTimeout(Gc),Gc=void 0,Ge[Dt].length!==0){var t=Ge[Dt].shift(),e=t[0],r=t[1],n=t[2],o=t[3],i=t[4];if(o===void 0)wo("RETRY",e.name,r),e.apply(null,r);else if(Date.now()-o>=6e4){wo("TIMEOUT",e.name,r);var a=r.pop();typeof a=="function"&&a.call(null,n)}else{var s=Date.now()-i,u=Math.max(i-o,1),c=Math.min(u*1.2,100);s>=c?(wo("RETRY",e.name,r),e.apply(null,r.concat([o]))):Ge[Dt].push(t)}Gc===void 0&&(Gc=setTimeout(im,0))}}});var kC=x((qK,FC)=>{function yr(t,e){typeof e=="boolean"&&(e={forever:e}),this._originalTimeouts=JSON.parse(JSON.stringify(t)),this._timeouts=t,this._options=e||{},this._maxRetryTime=e&&e.maxRetryTime||1/0,this._fn=null,this._errors=[],this._attempts=1,this._operationTimeout=null,this._operationTimeoutCb=null,this._timeout=null,this._operationStart=null,this._options.forever&&(this._cachedTimeouts=this._timeouts.slice(0))}FC.exports=yr;yr.prototype.reset=function(){this._attempts=1,this._timeouts=this._originalTimeouts};yr.prototype.stop=function(){this._timeout&&clearTimeout(this._timeout),this._timeouts=[],this._cachedTimeouts=null};yr.prototype.retry=function(t){if(this._timeout&&clearTimeout(this._timeout),!t)return!1;var e=new Date().getTime();if(t&&e-this._operationStart>=this._maxRetryTime)return this._errors.unshift(new Error("RetryOperation timeout occurred")),!1;this._errors.push(t);var r=this._timeouts.shift();if(r===void 0)if(this._cachedTimeouts)this._errors.splice(this._errors.length-1,this._errors.length),this._timeouts=this._cachedTimeouts.slice(0),r=this._timeouts.shift();else return!1;var n=this,o=setTimeout(function(){n._attempts++,n._operationTimeoutCb&&(n._timeout=setTimeout(function(){n._operationTimeoutCb(n._attempts)},n._operationTimeout),n._options.unref&&n._timeout.unref()),n._fn(n._attempts)},r);return this._options.unref&&o.unref(),!0};yr.prototype.attempt=function(t,e){this._fn=t,e&&(e.timeout&&(this._operationTimeout=e.timeout),e.cb&&(this._operationTimeoutCb=e.cb));var r=this;this._operationTimeoutCb&&(this._timeout=setTimeout(function(){r._operationTimeoutCb()},r._operationTimeout)),this._operationStart=new Date().getTime(),this._fn(this._attempts)};yr.prototype.try=function(t){console.log("Using RetryOperation.try() is deprecated"),this.attempt(t)};yr.prototype.start=function(t){console.log("Using RetryOperation.start() is deprecated"),this.attempt(t)};yr.prototype.start=yr.prototype.try;yr.prototype.errors=function(){return this._errors};yr.prototype.attempts=function(){return this._attempts};yr.prototype.mainError=function(){if(this._errors.length===0)return null;for(var t={},e=null,r=0,n=0;n<this._errors.length;n++){var o=this._errors[n],i=o.message,a=(t[i]||0)+1;t[i]=a,a>=r&&(e=o,r=a)}return e}});var PC=x(vo=>{var g8=kC();vo.operation=function(t){var e=vo.timeouts(t);return new g8(e,{forever:t&&t.forever,unref:t&&t.unref,maxRetryTime:t&&t.maxRetryTime})};vo.timeouts=function(t){if(t instanceof Array)return[].concat(t);var e={retries:10,factor:2,minTimeout:1*1e3,maxTimeout:1/0,randomize:!1};for(var r in t)e[r]=t[r];if(e.minTimeout>e.maxTimeout)throw new Error("minTimeout is greater than maxTimeout");for(var n=[],o=0;o<e.retries;o++)n.push(this.createTimeout(o,e));return t&&t.forever&&!n.length&&n.push(this.createTimeout(o,e)),n.sort(function(i,a){return i-a}),n};vo.createTimeout=function(t,e){var r=e.randomize?Math.random()+1:1,n=Math.round(r*e.minTimeout*Math.pow(e.factor,t));return n=Math.min(n,e.maxTimeout),n};vo.wrap=function(t,e,r){if(e instanceof Array&&(r=e,e=null),!r){r=[];for(var n in t)typeof t[n]=="function"&&r.push(n)}for(var o=0;o<r.length;o++){var i=r[o],a=t[i];t[i]=function(u){var c=vo.operation(e),f=Array.prototype.slice.call(arguments,1),d=f.pop();f.push(function(p){c.retry(p)||(p&&(arguments[0]=c.mainError()),d.apply(this,arguments))}),c.attempt(function(){u.apply(t,f)})}.bind(t,a),t[i].options=e}}});var IC=x((VK,$C)=>{$C.exports=PC()});var TC=x((zK,Yc)=>{Yc.exports=["SIGABRT","SIGALRM","SIGHUP","SIGINT","SIGTERM"];process.platform!=="win32"&&Yc.exports.push("SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");process.platform==="linux"&&Yc.exports.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT","SIGUNUSED")});var cm=x((KK,ki)=>{var Ue=global.process,Co=function(t){return t&&typeof t=="object"&&typeof t.removeListener=="function"&&typeof t.emit=="function"&&typeof t.reallyExit=="function"&&typeof t.listeners=="function"&&typeof t.kill=="function"&&typeof t.pid=="number"&&typeof t.on=="function"};Co(Ue)?(RC=require("assert"),Oi=TC(),BC=/^win/i.test(Ue.platform),ls=require("events"),typeof ls!="function"&&(ls=ls.EventEmitter),Ue.__signal_exit_emitter__?st=Ue.__signal_exit_emitter__:(st=Ue.__signal_exit_emitter__=new ls,st.count=0,st.emitted={}),st.infinite||(st.setMaxListeners(1/0),st.infinite=!0),ki.exports=function(t,e){if(!Co(global.process))return function(){};RC.equal(typeof t,"function","a callback must be provided for exit handler"),Fi===!1&&sm();var r="exit";e&&e.alwaysLast&&(r="afterexit");var n=function(){st.removeListener(r,t),st.listeners("exit").length===0&&st.listeners("afterexit").length===0&&Jc()};return st.on(r,t),n},Jc=function(){!Fi||!Co(global.process)||(Fi=!1,Oi.forEach(function(e){try{Ue.removeListener(e,Xc[e])}catch{}}),Ue.emit=Zc,Ue.reallyExit=um,st.count-=1)},ki.exports.unload=Jc,Eo=function(e,r,n){st.emitted[e]||(st.emitted[e]=!0,st.emit(e,r,n))},Xc={},Oi.forEach(function(t){Xc[t]=function(){if(Co(global.process)){var r=Ue.listeners(t);r.length===st.count&&(Jc(),Eo("exit",null,t),Eo("afterexit",null,t),BC&&t==="SIGHUP"&&(t="SIGINT"),Ue.kill(Ue.pid,t))}}}),ki.exports.signals=function(){return Oi},Fi=!1,sm=function(){Fi||!Co(global.process)||(Fi=!0,st.count+=1,Oi=Oi.filter(function(e){try{return Ue.on(e,Xc[e]),!0}catch{return!1}}),Ue.emit=LC,Ue.reallyExit=NC)},ki.exports.load=sm,um=Ue.reallyExit,NC=function(e){Co(global.process)&&(Ue.exitCode=e||0,Eo("exit",Ue.exitCode,null),Eo("afterexit",Ue.exitCode,null),um.call(Ue,Ue.exitCode))},Zc=Ue.emit,LC=function(e,r){if(e==="exit"&&Co(global.process)){r!==void 0&&(Ue.exitCode=r);var n=Zc.apply(this,arguments);return Eo("exit",Ue.exitCode,null),Eo("afterexit",Ue.exitCode,null),n}else return Zc.apply(this,arguments)}):ki.exports=function(){return function(){}};var RC,Oi,BC,ls,st,Jc,Eo,Xc,Fi,sm,um,NC,Zc,LC});var UC=x((GK,lm)=>{"use strict";var jC=Symbol();function y8(t,e,r){let n=e[jC];if(n)return e.stat(t,(i,a)=>{if(i)return r(i);r(null,a.mtime,n)});let o=new Date(Math.ceil(Date.now()/1e3)*1e3+5);e.utimes(t,o,o,i=>{if(i)return r(i);e.stat(t,(a,s)=>{if(a)return r(a);let u=s.mtime.getTime()%1e3===0?"s":"ms";Object.defineProperty(e,jC,{value:u}),r(null,s.mtime,u)})})}function D8(t){let e=Date.now();return t==="s"&&(e=Math.ceil(e/1e3)*1e3),new Date(e)}lm.exports.probe=y8;lm.exports.getMtime=D8});var zC=x((WK,ds)=>{"use strict";var b8=require("path"),pm=Tn(),w8=IC(),v8=cm(),MC=UC(),un={};function fs(t,e){return e.lockfilePath||`${t}.lock`}function hm(t,e,r){if(!e.realpath)return r(null,b8.resolve(t));e.fs.realpath(t,r)}function dm(t,e,r){let n=fs(t,e);e.fs.mkdir(n,o=>{if(!o)return MC.probe(n,e.fs,(i,a,s)=>{if(i)return e.fs.rmdir(n,()=>{}),r(i);r(null,a,s)});if(o.code!=="EEXIST")return r(o);if(e.stale<=0)return r(Object.assign(new Error("Lock file is already being held"),{code:"ELOCKED",file:t}));e.fs.stat(n,(i,a)=>{if(i)return i.code==="ENOENT"?dm(t,{...e,stale:0},r):r(i);if(!qC(a,e))return r(Object.assign(new Error("Lock file is already being held"),{code:"ELOCKED",file:t}));HC(t,e,s=>{if(s)return r(s);dm(t,{...e,stale:0},r)})})})}function qC(t,e){return t.mtime.getTime()<Date.now()-e.stale}function HC(t,e,r){e.fs.rmdir(fs(t,e),n=>{if(n&&n.code!=="ENOENT")return r(n);r()})}function Qc(t,e){let r=un[t];r.updateTimeout||(r.updateDelay=r.updateDelay||e.update,r.updateTimeout=setTimeout(()=>{r.updateTimeout=null,e.fs.stat(r.lockfilePath,(n,o)=>{let i=r.lastUpdate+e.stale<Date.now();if(n)return n.code==="ENOENT"||i?fm(t,r,Object.assign(n,{code:"ECOMPROMISED"})):(r.updateDelay=1e3,Qc(t,e));if(!(r.mtime.getTime()===o.mtime.getTime()))return fm(t,r,Object.assign(new Error("Unable to update lock within the stale threshold"),{code:"ECOMPROMISED"}));let s=MC.getMtime(r.mtimePrecision);e.fs.utimes(r.lockfilePath,s,s,u=>{let c=r.lastUpdate+e.stale<Date.now();if(!r.released){if(u)return u.code==="ENOENT"||c?fm(t,r,Object.assign(u,{code:"ECOMPROMISED"})):(r.updateDelay=1e3,Qc(t,e));r.mtime=s,r.lastUpdate=Date.now(),r.updateDelay=null,Qc(t,e)}})})},r.updateDelay),r.updateTimeout.unref&&r.updateTimeout.unref())}function fm(t,e,r){e.released=!0,e.updateTimeout&&clearTimeout(e.updateTimeout),un[t]===e&&delete un[t],e.options.onCompromised(r)}function C8(t,e,r){e={stale:1e4,update:null,realpath:!0,retries:0,fs:pm,onCompromised:n=>{throw n},...e},e.retries=e.retries||0,e.retries=typeof e.retries=="number"?{retries:e.retries}:e.retries,e.stale=Math.max(e.stale||0,2e3),e.update=e.update==null?e.stale/2:e.update||0,e.update=Math.max(Math.min(e.update,e.stale/2),1e3),hm(t,e,(n,o)=>{if(n)return r(n);let i=w8.operation(e.retries);i.attempt(()=>{dm(o,e,(a,s,u)=>{if(i.retry(a))return;if(a)return r(i.mainError());let c=un[o]={lockfilePath:fs(o,e),mtime:s,mtimePrecision:u,options:e,lastUpdate:Date.now()};Qc(o,e),r(null,f=>{if(c.released)return f&&f(Object.assign(new Error("Lock is already released"),{code:"ERELEASED"}));VC(o,{...e,realpath:!1},f)})})})})}function VC(t,e,r){e={fs:pm,realpath:!0,...e},hm(t,e,(n,o)=>{if(n)return r(n);let i=un[o];if(!i)return r(Object.assign(new Error("Lock is not acquired/owned by you"),{code:"ENOTACQUIRED"}));i.updateTimeout&&clearTimeout(i.updateTimeout),i.released=!0,delete un[o],HC(o,e,r)})}function E8(t,e,r){e={stale:1e4,realpath:!0,fs:pm,...e},e.stale=Math.max(e.stale||0,2e3),hm(t,e,(n,o)=>{if(n)return r(n);e.fs.stat(fs(o,e),(i,a)=>i?i.code==="ENOENT"?r(null,!1):r(i):r(null,!qC(a,e)))})}function _8(){return un}v8(()=>{for(let t in un){let e=un[t].options;try{e.fs.rmdirSync(fs(t,e))}catch{}}});ds.exports.lock=C8;ds.exports.unlock=VC;ds.exports.check=E8;ds.exports.getLocks=_8});var GC=x((YK,KC)=>{"use strict";var S8=Tn();function x8(t){let e=["mkdir","realpath","stat","rmdir","utimes"],r={...t};return e.forEach(n=>{r[n]=(...o)=>{let i=o.pop(),a;try{a=t[`${n}Sync`](...o)}catch(s){return i(s)}i(null,a)}}),r}function A8(t){return(...e)=>new Promise((r,n)=>{e.push((o,i)=>{o?n(o):r(i)}),t(...e)})}function O8(t){return(...e)=>{let r,n;if(e.push((o,i)=>{r=o,n=i}),t(...e),r)throw r;return n}}function F8(t){if(t={...t},t.fs=x8(t.fs||S8),typeof t.retries=="number"&&t.retries>0||t.retries&&typeof t.retries.retries=="number"&&t.retries.retries>0)throw Object.assign(new Error("Cannot use retries with the sync api"),{code:"ESYNC"});return t}KC.exports={toPromise:A8,toSync:O8,toSyncOptions:F8}});var YC=x((JK,Rn)=>{"use strict";var Pi=zC(),{toPromise:el,toSync:tl,toSyncOptions:mm}=GC();async function WC(t,e){let r=await el(Pi.lock)(t,e);return el(r)}function k8(t,e){let r=tl(Pi.lock)(t,mm(e));return tl(r)}function P8(t,e){return el(Pi.unlock)(t,e)}function $8(t,e){return tl(Pi.unlock)(t,mm(e))}function I8(t,e){return el(Pi.check)(t,e)}function T8(t,e){return tl(Pi.check)(t,mm(e))}Rn.exports=WC;Rn.exports.lock=WC;Rn.exports.unlock=P8;Rn.exports.lockSync=k8;Rn.exports.unlockSync=$8;Rn.exports.check=I8;Rn.exports.checkSync=T8});var eE=x($i=>{"use strict";Object.defineProperty($i,"__esModule",{value:!0});$i.canStoreURLs=$i.FileUrlStorage=void 0;var JC=require("fs"),R8=N8(DC()),XC=B8(YC());function QC(t){if(typeof WeakMap!="function")return null;var e=new WeakMap,r=new WeakMap;return(QC=function(n){return n?r:e})(t)}function B8(t,e){if(!e&&t&&t.__esModule)return t;if(t===null||typeof t!="object"&&typeof t!="function")return{default:t};var r=QC(e);if(r&&r.has(t))return r.get(t);var n={__proto__:null},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in t)if(i!=="default"&&{}.hasOwnProperty.call(t,i)){var a=o?Object.getOwnPropertyDescriptor(t,i):null;a&&(a.get||a.set)?Object.defineProperty(n,i,a):n[i]=t[i]}return n.default=t,r&&r.set(t,n),n}function N8(t){return t&&t.__esModule?t:{default:t}}function ps(t){"@babel/helpers - typeof";return ps=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(e){return typeof e}:function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},ps(t)}function L8(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function ZC(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,U8(n.key),n)}}function j8(t,e,r){return e&&ZC(t.prototype,e),r&&ZC(t,r),Object.defineProperty(t,"prototype",{writable:!1}),t}function U8(t){var e=M8(t,"string");return ps(e)=="symbol"?e:e+""}function M8(t,e){if(ps(t)!="object"||!t)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var n=r.call(t,e||"default");if(ps(n)!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}var XK=$i.canStoreURLs=!0,ZK=$i.FileUrlStorage=(function(){function t(e){L8(this,t),this.path=e}return j8(t,[{key:"findAllUploads",value:function(){var r=this;return new Promise(function(n,o){r._getItems("tus::",function(i,a){i?o(i):n(a)})})}},{key:"findUploadsByFingerprint",value:function(r){var n=this;return new Promise(function(o,i){n._getItems("tus::".concat(r),function(a,s){a?i(a):o(s)})})}},{key:"removeUpload",value:function(r){var n=this;return new Promise(function(o,i){n._removeItem(r,function(a){a?i(a):o()})})}},{key:"addUpload",value:function(r,n){var o=this,i=Math.round(Math.random()*1e12),a="tus::".concat(r,"::").concat(i);return new Promise(function(s,u){o._setItem(a,n,function(c){c?u(c):s(a)})})}},{key:"_setItem",value:function(r,n,o){var i=this;XC.lock(this.path,this._lockfileOptions()).then(function(a){o=i._releaseAndCb(a,o),i._getData(function(s,u){if(s){o(s);return}u[r]=n,i._writeData(u,function(c){return o(c)})})}).catch(o)}},{key:"_getItems",value:function(r,n){this._getData(function(o,i){if(o){n(o);return}var a=Object.keys(i).filter(function(s){return s.startsWith(r)}).map(function(s){var u=i[s];return u.urlStorageKey=s,u});n(null,a)})}},{key:"_removeItem",value:function(r,n){var o=this;XC.lock(this.path,this._lockfileOptions()).then(function(i){n=o._releaseAndCb(i,n),o._getData(function(a,s){if(a){n(a);return}delete s[r],o._writeData(s,function(u){return n(u)})})}).catch(n)}},{key:"_lockfileOptions",value:function(){return{realpath:!1,retries:{retries:5,minTimeout:20}}}},{key:"_releaseAndCb",value:function(r,n){return function(o){if(o){r().then(function(){return n(o)}).catch(function(i){return n((0,R8.default)([o,i]))});return}r().then(n).catch(n)}}},{key:"_writeData",value:function(r,n){var o={encoding:"utf8",mode:432,flag:"w"};(0,JC.writeFile)(this.path,JSON.stringify(r),o,function(i){return n(i)})}},{key:"_getData",value:function(r){(0,JC.readFile)(this.path,"utf8",function(n,o){if(n){n.code==="ENOENT"?r(null,{}):r(n);return}try{o=o.trim().length?JSON.parse(o):{}}catch(i){r(i);return}r(null,o)})}}])})()});var nl=x(Gt=>{"use strict";Object.defineProperty(Gt,"__esModule",{value:!0});Object.defineProperty(Gt,"DefaultHttpStack",{enumerable:!0,get:function(){return oE.default}});Object.defineProperty(Gt,"DetailedError",{enumerable:!0,get:function(){return q8.default}});Object.defineProperty(Gt,"FileUrlStorage",{enumerable:!0,get:function(){return iE.FileUrlStorage}});Object.defineProperty(Gt,"StreamSource",{enumerable:!0,get:function(){return G8.default}});Gt.Upload=void 0;Object.defineProperty(Gt,"canStoreURLs",{enumerable:!0,get:function(){return iE.canStoreURLs}});Gt.defaultOptions=void 0;Object.defineProperty(Gt,"enableDebugLog",{enumerable:!0,get:function(){return H8.enableDebugLog}});Gt.isSupported=void 0;var q8=_o(fh()),H8=dh(),V8=_o(ew()),gm=_o(kw()),z8=_o(Hw()),K8=_o(Gw()),oE=_o(sv()),G8=_o(xh()),iE=eE();function _o(t){return t&&t.__esModule?t:{default:t}}function Ti(t){"@babel/helpers - typeof";return Ti=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(e){return typeof e}:function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Ti(t)}function W8(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function tE(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,sE(n.key),n)}}function Y8(t,e,r){return e&&tE(t.prototype,e),r&&tE(t,r),Object.defineProperty(t,"prototype",{writable:!1}),t}function J8(t,e,r){return e=rl(e),X8(t,aE()?Reflect.construct(e,r||[],rl(t).constructor):e.apply(t,r))}function X8(t,e){if(e&&(Ti(e)==="object"||typeof e=="function"))return e;if(e!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return Z8(t)}function Z8(t){if(t===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}function aE(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(aE=function(){return!!t})()}function rl(t){return rl=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(r){return r.__proto__||Object.getPrototypeOf(r)},rl(t)}function Q8(t,e){if(typeof e!="function"&&e!==null)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&ym(t,e)}function ym(t,e){return ym=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(n,o){return n.__proto__=o,n},ym(t,e)}function rE(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(t,o).enumerable})),r.push.apply(r,n)}return r}function Ii(t){for(var e=1;e<arguments.length;e++){var r=arguments[e]!=null?arguments[e]:{};e%2?rE(Object(r),!0).forEach(function(n){eN(t,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):rE(Object(r)).forEach(function(n){Object.defineProperty(t,n,Object.getOwnPropertyDescriptor(r,n))})}return t}function eN(t,e,r){return e=sE(e),e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function sE(t){var e=tN(t,"string");return Ti(e)=="symbol"?e:e+""}function tN(t,e){if(Ti(t)!="object"||!t)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var n=r.call(t,e||"default");if(Ti(n)!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}var nE=Gt.defaultOptions=Ii(Ii({},gm.default.defaultOptions),{},{httpStack:new oE.default,fileReader:new z8.default,urlStorage:new V8.default,fingerprint:K8.default}),eG=Gt.Upload=(function(t){function e(){var r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:null,n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return W8(this,e),n=Ii(Ii({},nE),n),J8(this,e,[r,n])}return Q8(e,t),Y8(e,null,[{key:"terminate",value:function(n){var o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return o=Ii(Ii({},nE),o),gm.default.terminate(n,o)}}])})(gm.default),tG=Gt.isSupported=!0});var dE=x((yG,fE)=>{var Ri=1e3,Bi=Ri*60,Ni=Bi*60,So=Ni*24,lN=So*7,fN=So*365.25;fE.exports=function(t,e){e=e||{};var r=typeof t;if(r==="string"&&t.length>0)return dN(t);if(r==="number"&&isFinite(t))return e.long?hN(t):pN(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))};function dN(t){if(t=String(t),!(t.length>100)){var e=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(t);if(e){var r=parseFloat(e[1]),n=(e[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*fN;case"weeks":case"week":case"w":return r*lN;case"days":case"day":case"d":return r*So;case"hours":case"hour":case"hrs":case"hr":case"h":return r*Ni;case"minutes":case"minute":case"mins":case"min":case"m":return r*Bi;case"seconds":case"second":case"secs":case"sec":case"s":return r*Ri;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function pN(t){var e=Math.abs(t);return e>=So?Math.round(t/So)+"d":e>=Ni?Math.round(t/Ni)+"h":e>=Bi?Math.round(t/Bi)+"m":e>=Ri?Math.round(t/Ri)+"s":t+"ms"}function hN(t){var e=Math.abs(t);return e>=So?il(t,e,So,"day"):e>=Ni?il(t,e,Ni,"hour"):e>=Bi?il(t,e,Bi,"minute"):e>=Ri?il(t,e,Ri,"second"):t+" ms"}function il(t,e,r,n){var o=e>=r*1.5;return Math.round(t/r)+" "+n+(o?"s":"")}});var wm=x((DG,pE)=>{function mN(t){r.debug=r,r.default=r,r.coerce=u,r.disable=a,r.enable=o,r.enabled=s,r.humanize=dE(),r.destroy=c,Object.keys(t).forEach(f=>{r[f]=t[f]}),r.names=[],r.skips=[],r.formatters={};function e(f){let d=0;for(let p=0;p<f.length;p++)d=(d<<5)-d+f.charCodeAt(p),d|=0;return r.colors[Math.abs(d)%r.colors.length]}r.selectColor=e;function r(f){let d,p=null,h,m;function y(...b){if(!y.enabled)return;let v=y,E=Number(new Date),g=E-(d||E);v.diff=g,v.prev=d,v.curr=E,d=E,b[0]=r.coerce(b[0]),typeof b[0]!="string"&&b.unshift("%O");let _=0;b[0]=b[0].replace(/%([a-zA-Z%])/g,(P,F)=>{if(P==="%%")return"%";_++;let B=r.formatters[F];if(typeof B=="function"){let T=b[_];P=B.call(v,T),b.splice(_,1),_--}return P}),r.formatArgs.call(v,b),(v.log||r.log).apply(v,b)}return y.namespace=f,y.useColors=r.useColors(),y.color=r.selectColor(f),y.extend=n,y.destroy=r.destroy,Object.defineProperty(y,"enabled",{enumerable:!0,configurable:!1,get:()=>p!==null?p:(h!==r.namespaces&&(h=r.namespaces,m=r.enabled(f)),m),set:b=>{p=b}}),typeof r.init=="function"&&r.init(y),y}function n(f,d){let p=r(this.namespace+(typeof d>"u"?":":d)+f);return p.log=this.log,p}function o(f){r.save(f),r.namespaces=f,r.names=[],r.skips=[];let d=(typeof f=="string"?f:"").trim().replace(/\s+/g,",").split(",").filter(Boolean);for(let p of d)p[0]==="-"?r.skips.push(p.slice(1)):r.names.push(p)}function i(f,d){let p=0,h=0,m=-1,y=0;for(;p<f.length;)if(h<d.length&&(d[h]===f[p]||d[h]==="*"))d[h]==="*"?(m=h,y=p,h++):(p++,h++);else if(m!==-1)h=m+1,y++,p=y;else return!1;for(;h<d.length&&d[h]==="*";)h++;return h===d.length}function a(){let f=[...r.names,...r.skips.map(d=>"-"+d)].join(",");return r.enable(""),f}function s(f){for(let d of r.skips)if(i(f,d))return!1;for(let d of r.names)if(i(f,d))return!0;return!1}function u(f){return f instanceof Error?f.stack||f.message:f}function c(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return r.enable(r.load()),r}pE.exports=mN});var hE=x((Wt,al)=>{Wt.formatArgs=yN;Wt.save=DN;Wt.load=bN;Wt.useColors=gN;Wt.storage=wN();Wt.destroy=(()=>{let t=!1;return()=>{t||(t=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();Wt.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function gN(){if(typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs))return!0;if(typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let t;return typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&(t=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(t[1],10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function yN(t){if(t[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+t[0]+(this.useColors?"%c ":" ")+"+"+al.exports.humanize(this.diff),!this.useColors)return;let e="color: "+this.color;t.splice(1,0,e,"color: inherit");let r=0,n=0;t[0].replace(/%[a-zA-Z%]/g,o=>{o!=="%%"&&(r++,o==="%c"&&(n=r))}),t.splice(n,0,e)}Wt.log=console.debug||console.log||(()=>{});function DN(t){try{t?Wt.storage.setItem("debug",t):Wt.storage.removeItem("debug")}catch{}}function bN(){let t;try{t=Wt.storage.getItem("debug")||Wt.storage.getItem("DEBUG")}catch{}return!t&&typeof process<"u"&&"env"in process&&(t=process.env.DEBUG),t}function wN(){try{return localStorage}catch{}}al.exports=wm()(Wt);var{formatters:vN}=al.exports;vN.j=function(t){try{return JSON.stringify(t)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}});var gE=x((bG,mE)=>{"use strict";mE.exports=(t,e=process.argv)=>{let r=t.startsWith("-")?"":t.length===1?"-":"--",n=e.indexOf(r+t),o=e.indexOf("--");return n!==-1&&(o===-1||n<o)}});var bE=x((wG,DE)=>{"use strict";var CN=require("os"),yE=require("tty"),br=gE(),{env:ct}=process,Bn;br("no-color")||br("no-colors")||br("color=false")||br("color=never")?Bn=0:(br("color")||br("colors")||br("color=true")||br("color=always"))&&(Bn=1);"FORCE_COLOR"in ct&&(ct.FORCE_COLOR==="true"?Bn=1:ct.FORCE_COLOR==="false"?Bn=0:Bn=ct.FORCE_COLOR.length===0?1:Math.min(parseInt(ct.FORCE_COLOR,10),3));function vm(t){return t===0?!1:{level:t,hasBasic:!0,has256:t>=2,has16m:t>=3}}function Cm(t,e){if(Bn===0)return 0;if(br("color=16m")||br("color=full")||br("color=truecolor"))return 3;if(br("color=256"))return 2;if(t&&!e&&Bn===void 0)return 0;let r=Bn||0;if(ct.TERM==="dumb")return r;if(process.platform==="win32"){let n=CN.release().split(".");return Number(n[0])>=10&&Number(n[2])>=10586?Number(n[2])>=14931?3:2:1}if("CI"in ct)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE"].some(n=>n in ct)||ct.CI_NAME==="codeship"?1:r;if("TEAMCITY_VERSION"in ct)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(ct.TEAMCITY_VERSION)?1:0;if(ct.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in ct){let n=parseInt((ct.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(ct.TERM_PROGRAM){case"iTerm.app":return n>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(ct.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(ct.TERM)||"COLORTERM"in ct?1:r}function EN(t){let e=Cm(t,t&&t.isTTY);return vm(e)}DE.exports={supportsColor:EN,stdout:vm(Cm(!0,yE.isatty(1))),stderr:vm(Cm(!0,yE.isatty(2)))}});var vE=x((lt,ul)=>{var _N=require("tty"),sl=require("util");lt.init=PN;lt.log=ON;lt.formatArgs=xN;lt.save=FN;lt.load=kN;lt.useColors=SN;lt.destroy=sl.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");lt.colors=[6,2,3,4,5,1];try{let t=bE();t&&(t.stderr||t).level>=2&&(lt.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch{}lt.inspectOpts=Object.keys(process.env).filter(t=>/^debug_/i.test(t)).reduce((t,e)=>{let r=e.substring(6).toLowerCase().replace(/_([a-z])/g,(o,i)=>i.toUpperCase()),n=process.env[e];return/^(yes|on|true|enabled)$/i.test(n)?n=!0:/^(no|off|false|disabled)$/i.test(n)?n=!1:n==="null"?n=null:n=Number(n),t[r]=n,t},{});function SN(){return"colors"in lt.inspectOpts?!!lt.inspectOpts.colors:_N.isatty(process.stderr.fd)}function xN(t){let{namespace:e,useColors:r}=this;if(r){let n=this.color,o="\x1B[3"+(n<8?n:"8;5;"+n),i=` ${o};1m${e} \x1B[0m`;t[0]=i+t[0].split(`
|
|
48
48
|
`).join(`
|
|
49
49
|
`+i),t.push(o+"m+"+ul.exports.humanize(this.diff)+"\x1B[0m")}else t[0]=AN()+e+" "+t[0]}function AN(){return lt.inspectOpts.hideDate?"":new Date().toISOString()+" "}function ON(...t){return process.stderr.write(sl.formatWithOptions(lt.inspectOpts,...t)+`
|
|
50
50
|
`)}function FN(t){t?process.env.DEBUG=t:delete process.env.DEBUG}function kN(){return process.env.DEBUG}function PN(t){t.inspectOpts={};let e=Object.keys(lt.inspectOpts);for(let r=0;r<e.length;r++)t.inspectOpts[e[r]]=lt.inspectOpts[e[r]]}ul.exports=wm()(lt);var{formatters:wE}=ul.exports;wE.o=function(t){return this.inspectOpts.colors=this.useColors,sl.inspect(t,this.inspectOpts).split(`
|
|
@@ -63,7 +63,7 @@ GFS4: `),console.error(t)});Ge[Dt]||(xC=global[Dt]||[],OC(Ge,xC),Ge.close=(funct
|
|
|
63
63
|
`).join(`${n}
|
|
64
64
|
${tx(r)}`)}We.wordWrap=aU;function sU(t){t=rx(t);let e=process.cwd(),r=dn.dirname(t),n=eU.homedir(),o=Math.abs(r.split(dn.sep).length-e.split(dn.sep).length);if(e===r)return"."+dn.sep+dn.basename(t);if(r.startsWith(e))return"."+dn.sep+t.substring(e.length+1);if(o<=2){let i=dn.relative(e,t);return i||"."}else{if(t===n)return"~";if(t.indexOf(n)===0)return"~"+dn.sep+t.substring(n.length+1)}return t}We.prettyPath=sU;function rx(t){return dn.resolve(nU(t))}We.expandPath=rx;function nx(t,e=1,r=" "){e<2&&(e=2);let n=Math.max(...t.map(a=>Cl(a))),o=n>e?n+1:e,i=r.repeat(o);return t.map(a=>ex(i,0,o-Cl(a)))}We.generateFillSpaceStringList=nx;function uU(t,{hsep:e="-",vsep:r="|",headers:n}){let o=!!n;if(!t[0])return"";let i=n?n.length:t[0].length,a=n?n.map(f=>[f]):t[0].map(()=>[]);for(let f of t){let d=0,p=f.map(h=>{let m=h.split(`
|
|
65
65
|
`);return d=Math.max(d,m.length),m});for(let h in f)a[h]&&a[h].push(...p[h],...Array(d-p[h].length).fill(""))}let s=a.map((f,d)=>{if(d<i-1){let p=nx(f);return f.map((h,m)=>`${h}${p[m]}${r===""?"":`${r} `}`)}else return f}),u=0,c=s.reduce((f,d)=>f.map((p,h)=>{let m=f[h]+d[h];return u=Math.max(u,Cl(m)),m}));return o&&e!==""&&c.splice(1,0,e.repeat(u)),c.join(`
|
|
66
|
-
`)}We.columnar=uU});var ix=x(
|
|
66
|
+
`)}We.columnar=uU});var ix=x(wr=>{"use strict";Object.defineProperty(wr,"__esModule",{value:!0});wr.TERMINAL_INFO=wr.CI_ENVIRONMENT_VARIABLES_DETECTED=wr.CI_ENVIRONMENT_VARIABLES=void 0;var cU=(we(),ie(be)),lU=_m(),fU=cU.__importStar(require("os")),dU=(0,lU.debug)("ionic:utils-terminal:info");wr.CI_ENVIRONMENT_VARIABLES=["CI","BUILD_ID","BUILD_NUMBER","BITBUCKET_COMMIT","CODEBUILD_BUILD_ARN","GITHUB_ACTIONS"];wr.CI_ENVIRONMENT_VARIABLES_DETECTED=wr.CI_ENVIRONMENT_VARIABLES.filter(t=>!!process.env[t]);function pU(){let{shell:t}=fU.userInfo();return t||(process.env.SHELL?process.env.SHELL:process.platform==="darwin"?"/bin/bash":process.platform==="win32"?process.env.COMSPEC?process.env.COMSPEC:"cmd.exe":"/bin/sh")}wr.CI_ENVIRONMENT_VARIABLES_DETECTED.length>0&&dU(`Environment variables for CI detected: ${wr.CI_ENVIRONMENT_VARIABLES_DETECTED.join(", ")}`);wr.TERMINAL_INFO=Object.freeze({ci:wr.CI_ENVIRONMENT_VARIABLES_DETECTED.length>0,shell:pU(),tty:!!(process.stdin.isTTY&&process.stdout.isTTY&&process.stderr.isTTY),windows:process.platform==="win32"||!!(process.env.OSTYPE&&/^(msys|cygwin)$/.test(process.env.OSTYPE)||process.env.MSYSTEM&&/^MINGW(32|64)$/.test(process.env.MSYSTEM))})});var Wm=x(Gi=>{"use strict";Object.defineProperty(Gi,"__esModule",{value:!0});var El=(we(),ie(be));El.__exportStar(Bm(),Gi);El.__exportStar(mS(),Gi);El.__exportStar(ox(),Gi);El.__exportStar(ix(),Gi)});var Sl=x(qr=>{"use strict";Object.defineProperty(qr,"__esModule",{value:!0});qr.isFatal=qr.fatal=qr.FatalException=qr.BaseException=void 0;var _l=class extends Error{constructor(e,r){super(e),this.message=e,this.code=r}};qr.BaseException=_l;var Es=class extends _l{constructor(e,r=1){super(e,"FATAL"),this.message=e,this.exitCode=r}};qr.FatalException=Es;function hU(t){throw new Es(t)}qr.fatal=hU;function mU(t){return t&&t instanceof Es}qr.isFatal=mU});var Xm={};Qr(Xm,{LOGGER_LEVELS:()=>EU,Logger:()=>Jm,NO_COLORS:()=>ax,StreamOutputStrategy:()=>xl,TTYOutputStrategy:()=>Ym,TTY_WIDTH:()=>gU,createDefaultLogger:()=>CU,indent:()=>yU,sliceAnsi:()=>DU,stringWidth:()=>bU,stripAnsi:()=>wU,wordWrap:()=>vU});var gU,yU,DU,bU,wU,vU,CU,ax,xl,Ym,Jm,EU,Zm=Qe(()=>{gU=80,yU=t=>t,DU=t=>t,bU=t=>t.length,wU=t=>t,vU=t=>t,CU=()=>({info:console.log,warn:console.warn,error:console.error,debug:console.debug}),ax={},xl=class{constructor(){this.colors=ax,this.stream=process.stdout}},Ym=class extends xl{constructor(e){super(),this.options=e}},Jm=class{constructor(){}info(){}warn(){}error(){}debug(){}},EU={DEBUG:"DEBUG",INFO:"INFO",WARN:"WARN",ERROR:"ERROR"}});var ux=x(Ao=>{"use strict";Object.defineProperty(Ao,"__esModule",{value:!0});Ao.isInteractive=Ao.checkInteractive=void 0;var _U=(we(),ie(be)),sx=Wm(),SU=_U.__importDefault(qi()),xU=_s(),AU=(...t)=>(0,Ao.isInteractive)()?!0:t.length?t.filter(e=>!e).length?(xU.logger.error(`Non-interactive shell detected.
|
|
67
67
|
Run the command with ${SU.default.input("--help")} to see a list of arguments that must be provided.`),!1):!0:!1;Ao.checkInteractive=AU;var OU=()=>sx.TERMINAL_INFO.tty&&!sx.TERMINAL_INFO.ci;Ao.isInteractive=OU});var Al={};Qr(Al,{default:()=>cx});function cx(){throw new Error("Prompts are not supported in this CLI build")}var Ol=Qe(()=>{});var _s=x(Yt=>{"use strict";Object.defineProperty(Yt,"__esModule",{value:!0});Yt.logSuccess=Yt.logPrompt=Yt.logger=Yt.output=void 0;var Qm=(we(),ie(be)),Oo=(Zm(),ie(Xm)),Fo=Qm.__importDefault(qi()),FU=ux(),lx={colors:Fo.default,stream:process.argv.includes("--json")?process.stderr:process.stdout};Yt.output=(0,FU.isInteractive)()?new Oo.TTYOutputStrategy(lx):new Oo.StreamOutputStrategy(lx);Yt.logger=(0,Oo.createDefaultLogger)({output:Yt.output,formatterOptions:{titleize:!1,tags:new Map([[Oo.LOGGER_LEVELS.DEBUG,Fo.default.log.DEBUG("[debug]")],[Oo.LOGGER_LEVELS.INFO,Fo.default.log.INFO("[info]")],[Oo.LOGGER_LEVELS.WARN,Fo.default.log.WARN("[warn]")],[Oo.LOGGER_LEVELS.ERROR,Fo.default.log.ERROR("[error]")]])}});async function kU(t,e){let{wordWrap:r}=await Promise.resolve().then(()=>Qm.__importStar((Zm(),ie(Xm)))),{prompt:n}=await Promise.resolve().then(()=>Qm.__importStar((Ol(),ie(Al))));return Yt.logger.log({msg:`${Fo.default.input("[?]")} ${r(t,{indentation:4})}`,logger:Yt.logger,format:!1}),n(e,{onCancel:()=>process.exit(1)})}Yt.logPrompt=kU;function PU(t){Yt.logger.msg(`${Fo.default.success("[success]")} ${t}`)}Yt.logSuccess=PU});var Fl=x(Wi=>{"use strict";Object.defineProperty(Wi,"__esModule",{value:!0});Wi.resolveNode=Wi.requireTS=void 0;var $U=require("fs"),IU=Mi(),TU=require("path"),RU=(t,e)=>{let r=(0,TU.resolve)(e);delete require.cache[r],require.extensions[".ts"]=(o,i)=>{var a;let s=(0,IU.readFileSync)(i,"utf8");i.endsWith(".ts")?s=t.transpileModule(s,{fileName:i,compilerOptions:{module:t.ModuleKind.CommonJS,moduleResolution:t.ModuleResolutionKind.NodeJs,esModuleInterop:!0,strict:!0,target:t.ScriptTarget.ES2017},reportDiagnostics:!0}).outputText:s=s.replace(/export\s+\w+\s+(\w+)/gm,"exports.$1"),(a=o._compile)===null||a===void 0||a.call(o,s,i)};let n=require(r);return delete require.extensions[".ts"],n};Wi.requireTS=RU;function BU(t,...e){try{return require.resolve(e.join("/"),{paths:[t]})}catch{let n=[t,"node_modules",...e].join("/");return(0,$U.existsSync)(n)?n:null}}Wi.resolveNode=BU});var fx={};Qr(fx,{default:()=>NU});var NU,dx=Qe(()=>{NU={}});var px=x(Hr=>{"use strict";Object.defineProperty(Hr,"__esModule",{value:!0});Hr.buildXmlElement=Hr.writeXML=Hr.parseXML=Hr.readXML=void 0;var LU=(we(),ie(be)),jU=Mi(),Ss=LU.__importDefault((dx(),ie(fx)));async function UU(t){var e;try{let r=await(0,jU.readFile)(t,{encoding:"utf-8"});try{return await Ss.default.parseStringPromise(r)}catch(n){throw`Error parsing: ${t}, ${(e=n.stack)!==null&&e!==void 0?e:n}`}}catch{throw`Unable to read: ${t}`}}Hr.readXML=UU;function MU(t,e){let r=e!==void 0?new Ss.default.Parser({...e}):new Ss.default.Parser,n;return r.parseString(t,(o,i)=>{o||(n=i)}),n}Hr.parseXML=MU;async function qU(t){return new Promise(e=>{let n=new Ss.default.Builder({headless:!0,explicitRoot:!1,rootName:"deleteme"}).buildObject(t);n=n.replace("<deleteme>","").replace("</deleteme>",""),e(n)})}Hr.writeXML=qU;function HU(t,e){return new Ss.default.Builder({headless:!0,explicitRoot:!1,rootName:e}).buildObject(t)}Hr.buildXmlElement=HU});var Dx=x(Pe=>{"use strict";Object.defineProperty(Pe,"__esModule",{value:!0});Pe.getAllElements=Pe.getFilePath=Pe.getAssets=Pe.getJSModules=Pe.getPluginType=Pe.getPlatformElement=Pe.getPluginPlatform=Pe.printPlugins=Pe.fixName=Pe.getDependencies=Pe.resolvePlugin=Pe.getPlugins=Pe.getIncludedPluginPackages=void 0;var VU=(we(),ie(be)),zU=Mi(),eg=require("path"),Yi=VU.__importDefault(qi()),KU=Sl(),GU=_s(),hx=Fl(),WU=px();function mx(t,e){var r,n,o,i;let{extConfig:a}=t.app;switch(e){case"android":return(n=(r=a.android)===null||r===void 0?void 0:r.includePlugins)!==null&&n!==void 0?n:a.includePlugins;case"ios":return(i=(o=a.ios)===null||o===void 0?void 0:o.includePlugins)!==null&&i!==void 0?i:a.includePlugins}}Pe.getIncludedPluginPackages=mx;async function YU(t,e){var r;let n=(r=mx(t,e))!==null&&r!==void 0?r:yx(t);return(await Promise.all(n.map(async i=>gx(t,i)))).filter(i=>!!i)}Pe.getPlugins=YU;async function gx(t,e){try{let r=(0,hx.resolveNode)(t.app.rootDir,e,"package.json");r||(0,KU.fatal)(`Unable to find ${Yi.default.strong(`node_modules/${e}`)}.
|
|
68
68
|
Are you sure ${Yi.default.strong(e)} is installed?`);let n=(0,eg.dirname)(r),o=await(0,zU.readJSON)(r);if(!o)return null;if(o.capacitor)return{id:e,name:tg(e),version:o.version,rootPath:n,repository:o.repository,manifest:o.capacitor};let i=(0,eg.join)(n,"plugin.xml"),a=await(0,WU.readXML)(i);return{id:e,name:tg(e),version:o.version,rootPath:n,repository:o.repository,xml:a.plugin}}catch{}return null}Pe.resolvePlugin=gx;function yx(t){var e,r;return[...Object.keys((e=t.app.package.dependencies)!==null&&e!==void 0?e:{}),...Object.keys((r=t.app.package.devDependencies)!==null&&r!==void 0?r:{})]}Pe.getDependencies=yx;function tg(t){return t=t.replace(/\//g,"_").replace(/-/g,"_").replace(/@/g,"").replace(/_\w/g,e=>e[1].toUpperCase()),t.charAt(0).toUpperCase()+t.slice(1)}Pe.fixName=tg;function JU(t,e,r="capacitor"){if(t.length===0)return;let n,o=t.length===1?"":"s";switch(r){case"cordova":n=`Found ${t.length} Cordova plugin${o} for ${Yi.default.strong(e)}:
|
|
69
69
|
`;break;case"incompatible":n=`Found ${t.length} incompatible Cordova plugin${o} for ${Yi.default.strong(e)}, skipped install:
|
|
@@ -103,8 +103,8 @@ const config: CapacitorConfig = ${(0,lM.formatJSObject)(t)};
|
|
|
103
103
|
|
|
104
104
|
export default config;
|
|
105
105
|
`}});function AM(){try{return pg.default.statSync("/.dockerenv"),!0}catch{return!1}}function OM(){try{return pg.default.readFileSync("/proc/self/cgroup","utf8").includes("docker")}catch{return!1}}function hg(){return dg===void 0&&(dg=AM()||OM()),dg}var pg,dg,Vx=Qe(()=>{pg=pe(require("node:fs"),1)});function Qi(){return mg===void 0&&(mg=FM()||hg()),mg}var zx,mg,FM,gg=Qe(()=>{zx=pe(require("node:fs"),1);Vx();FM=()=>{try{return zx.default.statSync("/run/.containerenv"),!0}catch{return!1}}});var yg,Gx,Wx,Kx,pn,Dg=Qe(()=>{yg=pe(require("node:process"),1),Gx=pe(require("node:os"),1),Wx=pe(require("node:fs"),1);gg();Kx=()=>{if(yg.default.platform!=="linux")return!1;if(Gx.default.release().toLowerCase().includes("microsoft"))return!Qi();try{return Wx.default.readFileSync("/proc/version","utf8").toLowerCase().includes("microsoft")?!Qi():!1}catch{return!1}},pn=yg.default.env.__IS_WSL_TEST__?Kx:Kx()});var bg,Yx,Jx,Xx,kM,wg,rr,vg=Qe(()=>{bg=pe(require("node:process"),1),Yx=require("node:buffer"),Jx=require("node:util"),Xx=pe(require("node:child_process"),1),kM=(0,Jx.promisify)(Xx.default.execFile),wg=()=>`${bg.default.env.SYSTEMROOT||bg.default.env.windir||String.raw`C:\Windows`}\\System32\\WindowsPowerShell\\v1.0\\powershell.exe`,rr=async(t,e={})=>{let{powerShellPath:r,...n}=e,o=rr.encodeCommand(t);return kM(r??wg(),[...rr.argumentsPrefix,o],{encoding:"utf8",...n})};rr.argumentsPrefix=["-NoProfile","-NonInteractive","-ExecutionPolicy","Bypass","-EncodedCommand"];rr.encodeCommand=t=>Yx.Buffer.from(t,"utf16le").toString("base64");rr.escapeArgument=t=>`'${String(t).replaceAll("'","''")}'`});var Qx,eA,$o,PM,$M,IM,Nl,Zx,tA,rA,nA,oA=Qe(()=>{Qx=require("node:util"),eA=pe(require("node:child_process"),1),$o=pe(require("node:fs/promises"),1);Dg();vg();Dg();PM=(0,Qx.promisify)(eA.default.execFile),$M=(()=>{let t="/mnt/",e;return async function(){if(e)return e;let r="/etc/wsl.conf",n=!1;try{await $o.default.access(r,$o.constants.F_OK),n=!0}catch{}if(!n)return t;let o=await $o.default.readFile(r,{encoding:"utf8"}),i=/(?<!#.*)root\s*=\s*(?<mountPoint>.*)/g.exec(o);return i?(e=i.groups.mountPoint.trim(),e=e.endsWith("/")?e:`${e}/`,e):t}})(),IM=async()=>`${await $M()}c/Windows/System32/WindowsPowerShell/v1.0/powershell.exe`,Nl=pn?IM:wg,tA=async()=>(Zx??=(async()=>{try{let t=await Nl();return await $o.default.access(t,$o.constants.X_OK),!0}catch{return!1}})(),Zx),rA=async()=>{let t=await Nl(),e=String.raw`(Get-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\Shell\Associations\UrlAssociations\http\UserChoice").ProgId`,{stdout:r}=await rr(e,{powerShellPath:t});return r.trim()},nA=async t=>{if(/^[a-z]+:\/\//i.test(t))return t;try{let{stdout:e}=await PM("wslpath",["-aw",t],{encoding:"utf8"});return e.trim()}catch{return t}}});function Io(t,e,r){let n=o=>Object.defineProperty(t,e,{value:o,enumerable:!0,writable:!0});return Object.defineProperty(t,e,{configurable:!0,enumerable:!0,get(){let o=r();return n(o),o},set(o){n(o)}}),t}var iA=Qe(()=>{});async function Cg(){if(sA.default.platform!=="darwin")throw new Error("macOS only");let{stdout:t}=await TM("defaults",["read","com.apple.LaunchServices/com.apple.launchservices.secure","LSHandlers"]),r=/LSHandlerRoleAll = "(?!-)(?<id>[^"]+?)";\s+?LSHandlerURLScheme = (?:http|https);/.exec(t)?.groups.id??"com.apple.Safari";return r==="com.apple.safari"?"com.apple.Safari":r}var aA,sA,uA,TM,cA=Qe(()=>{aA=require("node:util"),sA=pe(require("node:process"),1),uA=require("node:child_process"),TM=(0,aA.promisify)(uA.execFile)});async function dA(t,{humanReadableOutput:e=!0,signal:r}={}){if(lA.default.platform!=="darwin")throw new Error("macOS only");let n=e?[]:["-ss"],o={};r&&(o.signal=r);let{stdout:i}=await RM("osascript",["-e",t,n],o);return i.trim()}var lA,fA,Eg,RM,pA=Qe(()=>{lA=pe(require("node:process"),1),fA=require("node:util"),Eg=require("node:child_process"),RM=(0,fA.promisify)(Eg.execFile)});async function _g(t){return dA(`tell application "Finder" to set app_path to application file id "${t}" as string
|
|
106
|
-
tell application "System Events" to get value of property list item "CFBundleName" of property list file (app_path & ":Contents:Info.plist")`)}var hA=Qe(()=>{pA()});async function xg(t=BM){let{stdout:e}=await t("reg",["QUERY"," HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\Shell\\Associations\\UrlAssociations\\http\\UserChoice","/v","ProgId"]),r=/ProgId\s*REG_SZ\s*(?<id>\S+)/.exec(e);if(!r)throw new Ll(`Cannot find Windows browser in stdout: ${JSON.stringify(e)}`);let{id:n}=r.groups,o=yA[n];if(!o)throw new Ll(`Unknown browser ID: ${n}`);return o}var mA,gA,BM,yA,Sg,Ll,Ag=Qe(()=>{mA=require("node:util"),gA=require("node:child_process"),BM=(0,mA.promisify)(gA.execFile),yA={MSEdgeHTM:{name:"Edge",id:"com.microsoft.edge"},MSEdgeBHTML:{name:"Edge Beta",id:"com.microsoft.edge.beta"},MSEdgeDHTML:{name:"Edge Dev",id:"com.microsoft.edge.dev"},AppXq0fevzme2pys62n3e0fbqa7peapykr8v:{name:"Edge",id:"com.microsoft.edge.old"},ChromeHTML:{name:"Chrome",id:"com.google.chrome"},ChromeBHTML:{name:"Chrome Beta",id:"com.google.chrome.beta"},ChromeDHTML:{name:"Chrome Dev",id:"com.google.chrome.dev"},ChromiumHTM:{name:"Chromium",id:"org.chromium.Chromium"},BraveHTML:{name:"Brave",id:"com.brave.Browser"},BraveBHTML:{name:"Brave Beta",id:"com.brave.Browser.beta"},BraveDHTML:{name:"Brave Dev",id:"com.brave.Browser.dev"},BraveSSHTM:{name:"Brave Nightly",id:"com.brave.Browser.nightly"},FirefoxURL:{name:"Firefox",id:"org.mozilla.firefox"},OperaStable:{name:"Opera",id:"com.operasoftware.Opera"},VivaldiHTM:{name:"Vivaldi",id:"com.vivaldi.Vivaldi"},"IE.HTTP":{name:"Internet Explorer",id:"com.microsoft.ie"}},Sg=new Map(Object.entries(yA)),Ll=class extends Error{}});async function Og(){if(jl.default.platform==="darwin"){let t=await Cg();return{name:await _g(t),id:t}}if(jl.default.platform==="linux"){let{stdout:t}=await NM("xdg-mime",["query","default","x-scheme-handler/http"]),e=t.trim();return{name:LM(e.replace(/.desktop$/,"").replace("-"," ")),id:e}}if(jl.default.platform==="win32")return xg();throw new Error("Only macOS, Linux, and Windows are supported")}var DA,jl,bA,NM,LM,wA=Qe(()=>{DA=require("node:util"),jl=pe(require("node:process"),1),bA=require("node:child_process");cA();hA();Ag();Ag();NM=(0,DA.promisify)(bA.execFile),LM=t=>t.toLowerCase().replaceAll(/(?:^|\s|-)\S/g,e=>e.toUpperCase())});var Ul,jM,vA,CA=Qe(()=>{Ul=pe(require("node:process"),1),jM=!!(Ul.default.env.SSH_CONNECTION||Ul.default.env.SSH_CLIENT||Ul.default.env.SSH_TTY),vA=jM});var $g={};Qr($g,{apps:()=>To,default:()=>qM,openApp:()=>MM});function xA(t){if(typeof t=="string"||Array.isArray(t))return t;let{[_A]:e}=t;if(!e)throw new Error(`${_A} is not supported`);return e}function ks({[ea]:t},{wsl:e}={}){if(e&&pn)return xA(e);if(!t)throw new Error(`${ea} is not supported`);return xA(t)}var kg,Pg,OA,FA,ql,AA,Ml,Fg,EA,ea,_A,SA,Fs,UM,MM,To,qM,Ig=Qe(()=>{kg=pe(require("node:process"),1),Pg=pe(require("node:path"),1),OA=require("node:url"),FA=pe(require("node:child_process"),1),ql=pe(require("node:fs/promises"),1);oA();vg();iA();wA();gg();CA();AA={},Ml=Symbol("fallbackAttempt"),Fg=AA.url?Pg.default.dirname((0,OA.fileURLToPath)(AA.url)):"",EA=Pg.default.join(Fg,"xdg-open"),{platform:ea,arch:_A}=kg.default,SA=async(t,e)=>{if(t.length===0)return;let r=[];for(let n of t)try{return await e(n)}catch(o){r.push(o)}throw new AggregateError(r,"Failed to open in all supported apps")},Fs=async t=>{t={wait:!1,background:!1,newInstance:!1,allowNonzeroExitCode:!1,...t};let e=t[Ml]===!0;if(delete t[Ml],Array.isArray(t.app))return SA(t.app,c=>Fs({...t,app:c,[Ml]:!0}));let{name:r,arguments:n=[]}=t.app??{};if(n=[...n],Array.isArray(r))return SA(r,c=>Fs({...t,app:{name:c,arguments:n},[Ml]:!0}));if(r==="browser"||r==="browserPrivate"){let c={"com.google.chrome":"chrome","google-chrome.desktop":"chrome","com.brave.browser":"brave","org.mozilla.firefox":"firefox","firefox.desktop":"firefox","com.microsoft.msedge":"edge","com.microsoft.edge":"edge","com.microsoft.edgemac":"edge","microsoft-edge.desktop":"edge","com.apple.safari":"safari"},f={chrome:"--incognito",brave:"--incognito",firefox:"--private-window",edge:"--inPrivate"},d;if(pn){let p=await rA();d=Sg.get(p)??{}}else d=await Og();if(d.id in c){let p=c[d.id.toLowerCase()];if(r==="browserPrivate"){if(p==="safari")throw new Error("Safari doesn't support opening in private mode via command line");n.push(f[p])}return Fs({...t,app:{name:To[p],arguments:n}})}throw new Error(`${d.name} is not supported as a default browser`)}let o,i=[],a={},s=!1;if(pn&&!Qi()&&!vA&&!r&&(s=await tA()),ea==="darwin")o="open",t.wait&&i.push("--wait-apps"),t.background&&i.push("--background"),t.newInstance&&i.push("--new"),r&&i.push("-a",r);else if(ea==="win32"||s){o=await Nl(),i.push(...rr.argumentsPrefix),pn||(a.windowsVerbatimArguments=!0),pn&&t.target&&(t.target=await nA(t.target));let c=["$ProgressPreference = 'SilentlyContinue';","Start"];t.wait&&c.push("-Wait"),r?(c.push(rr.escapeArgument(r)),t.target&&n.push(t.target)):t.target&&c.push(rr.escapeArgument(t.target)),n.length>0&&(n=n.map(f=>rr.escapeArgument(f)),c.push("-ArgumentList",n.join(","))),t.target=rr.encodeCommand(c.join(" ")),t.wait||(a.stdio="ignore")}else{if(r)o=r;else{let c=!Fg||Fg==="/",f=!1;try{await ql.default.access(EA,ql.constants.X_OK),f=!0}catch{}o=kg.default.versions.electron??(ea==="android"||c||!f)?"xdg-open":EA}n.length>0&&i.push(...n),t.wait||(a.stdio="ignore",a.detached=!0)}ea==="darwin"&&n.length>0&&i.push("--args",...n),t.target&&i.push(t.target);let u=FA.default.spawn(o,i,a);return t.wait?new Promise((c,f)=>{u.once("error",f),u.once("close",d=>{if(!t.allowNonzeroExitCode&&d!==0){f(new Error(`Exited with code ${d}`));return}c(u)})}):e?new Promise((c,f)=>{u.once("error",f),u.once("spawn",()=>{u.once("close",d=>{if(u.off("error",f),d!==0){f(new Error(`Exited with code ${d}`));return}u.unref(),c(u)})})}):(u.unref(),new Promise((c,f)=>{u.once("error",f),u.once("spawn",()=>{u.off("error",f),c(u)})}))},UM=(t,e)=>{if(typeof t!="string")throw new TypeError("Expected a `target`");return Fs({...e,target:t})},MM=(t,e)=>{if(typeof t!="string"&&!Array.isArray(t))throw new TypeError("Expected a valid `name`");let{arguments:r=[]}=e??{};if(r!=null&&!Array.isArray(r))throw new TypeError("Expected `appArguments` as Array type");return Fs({...e,app:{name:t,arguments:r}})};To={browser:"browser",browserPrivate:"browserPrivate"};Io(To,"chrome",()=>ks({darwin:"google chrome",win32:"chrome",linux:["google-chrome","google-chrome-stable","chromium","chromium-browser"]},{wsl:{ia32:"/mnt/c/Program Files (x86)/Google/Chrome/Application/chrome.exe",x64:["/mnt/c/Program Files/Google/Chrome/Application/chrome.exe","/mnt/c/Program Files (x86)/Google/Chrome/Application/chrome.exe"]}}));Io(To,"brave",()=>ks({darwin:"brave browser",win32:"brave",linux:["brave-browser","brave"]},{wsl:{ia32:"/mnt/c/Program Files (x86)/BraveSoftware/Brave-Browser/Application/brave.exe",x64:["/mnt/c/Program Files/BraveSoftware/Brave-Browser/Application/brave.exe","/mnt/c/Program Files (x86)/BraveSoftware/Brave-Browser/Application/brave.exe"]}}));Io(To,"firefox",()=>ks({darwin:"firefox",win32:String.raw`C:\Program Files\Mozilla Firefox\firefox.exe`,linux:"firefox"},{wsl:"/mnt/c/Program Files/Mozilla Firefox/firefox.exe"}));Io(To,"edge",()=>ks({darwin:"microsoft edge",win32:"msedge",linux:["microsoft-edge","microsoft-edge-dev"]},{wsl:"/mnt/c/Program Files (x86)/Microsoft/Edge/Application/msedge.exe"}));Io(To,"safari",()=>ks({darwin:"Safari"}));qM=UM});var yf=x(Sr=>{"use strict";Sr.isInteger=t=>typeof t=="number"?Number.isInteger(t):typeof t=="string"&&t.trim()!==""?Number.isInteger(Number(t)):!1;Sr.find=(t,e)=>t.nodes.find(r=>r.type===e);Sr.exceedsLimit=(t,e,r=1,n)=>n===!1||!Sr.isInteger(t)||!Sr.isInteger(e)?!1:(Number(e)-Number(t))/Number(r)>=n;Sr.escapeNode=(t,e=0,r)=>{let n=t.nodes[e];n&&(r&&n.type===r||n.type==="open"||n.type==="close")&&n.escaped!==!0&&(n.value="\\"+n.value,n.escaped=!0)};Sr.encloseBrace=t=>t.type!=="brace"?!1:t.commas>>0+t.ranges>>0===0?(t.invalid=!0,!0):!1;Sr.isInvalidBrace=t=>t.type!=="brace"?!1:t.invalid===!0||t.dollar?!0:t.commas>>0+t.ranges>>0===0||t.open!==!0||t.close!==!0?(t.invalid=!0,!0):!1;Sr.isOpenOrClose=t=>t.type==="open"||t.type==="close"?!0:t.open===!0||t.close===!0;Sr.reduce=t=>t.reduce((e,r)=>(r.type==="text"&&e.push(r.value),r.type==="range"&&(r.type="text"),e),[]);Sr.flatten=(...t)=>{let e=[],r=n=>{for(let o=0;o<n.length;o++){let i=n[o];if(Array.isArray(i)){r(i);continue}i!==void 0&&e.push(i)}return e};return r(t),e}});var Df=x((hX,c1)=>{"use strict";var u1=yf();c1.exports=(t,e={})=>{let r=(n,o={})=>{let i=e.escapeInvalid&&u1.isInvalidBrace(o),a=n.invalid===!0&&e.escapeInvalid===!0,s="";if(n.value)return(i||a)&&u1.isOpenOrClose(n)?"\\"+n.value:n.value;if(n.value)return n.value;if(n.nodes)for(let u of n.nodes)s+=r(u);return s};return r(t)}});var f1=x((mX,l1)=>{"use strict";l1.exports=function(t){return typeof t=="number"?t-t===0:typeof t=="string"&&t.trim()!==""?Number.isFinite?Number.isFinite(+t):isFinite(+t):!1}});var w1=x((gX,b1)=>{"use strict";var d1=f1(),qo=(t,e,r)=>{if(d1(t)===!1)throw new TypeError("toRegexRange: expected the first argument to be a number");if(e===void 0||t===e)return String(t);if(d1(e)===!1)throw new TypeError("toRegexRange: expected the second argument to be a number.");let n={relaxZeros:!0,...r};typeof n.strictZeros=="boolean"&&(n.relaxZeros=n.strictZeros===!1);let o=String(n.relaxZeros),i=String(n.shorthand),a=String(n.capture),s=String(n.wrap),u=t+":"+e+"="+o+i+a+s;if(qo.cache.hasOwnProperty(u))return qo.cache[u].result;let c=Math.min(t,e),f=Math.max(t,e);if(Math.abs(c-f)===1){let y=t+"|"+e;return n.capture?`(${y})`:n.wrap===!1?y:`(?:${y})`}let d=D1(t)||D1(e),p={min:t,max:e,a:c,b:f},h=[],m=[];if(d&&(p.isPadded=d,p.maxLen=String(p.max).length),c<0){let y=f<0?Math.abs(f):1;m=p1(y,Math.abs(c),p,n),c=p.a=0}return f>=0&&(h=p1(c,f,p,n)),p.negatives=m,p.positives=h,p.result=B5(m,h,n),n.capture===!0?p.result=`(${p.result})`:n.wrap!==!1&&h.length+m.length>1&&(p.result=`(?:${p.result})`),qo.cache[u]=p,p.result};function B5(t,e,r){let n=oy(t,e,"-",!1,r)||[],o=oy(e,t,"",!1,r)||[],i=oy(t,e,"-?",!0,r)||[];return n.concat(i).concat(o).join("|")}function N5(t,e){let r=1,n=1,o=m1(t,r),i=new Set([e]);for(;t<=o&&o<=e;)i.add(o),r+=1,o=m1(t,r);for(o=g1(e+1,n)-1;t<o&&o<=e;)i.add(o),n+=1,o=g1(e+1,n)-1;return i=[...i],i.sort(U5),i}function L5(t,e,r){if(t===e)return{pattern:t,count:[],digits:0};let n=j5(t,e),o=n.length,i="",a=0;for(let s=0;s<o;s++){let[u,c]=n[s];u===c?i+=u:u!=="0"||c!=="9"?i+=M5(u,c,r):a++}return a&&(i+=r.shorthand===!0?"\\d":"[0-9]"),{pattern:i,count:[a],digits:o}}function p1(t,e,r,n){let o=N5(t,e),i=[],a=t,s;for(let u=0;u<o.length;u++){let c=o[u],f=L5(String(a),String(c),n),d="";if(!r.isPadded&&s&&s.pattern===f.pattern){s.count.length>1&&s.count.pop(),s.count.push(f.count[0]),s.string=s.pattern+y1(s.count),a=c+1;continue}r.isPadded&&(d=q5(c,r,n)),f.string=d+f.pattern+y1(f.count),i.push(f),a=c+1,s=f}return i}function oy(t,e,r,n,o){let i=[];for(let a of t){let{string:s}=a;!n&&!h1(e,"string",s)&&i.push(r+s),n&&h1(e,"string",s)&&i.push(r+s)}return i}function j5(t,e){let r=[];for(let n=0;n<t.length;n++)r.push([t[n],e[n]]);return r}function U5(t,e){return t>e?1:e>t?-1:0}function h1(t,e,r){return t.some(n=>n[e]===r)}function m1(t,e){return Number(String(t).slice(0,-e)+"9".repeat(e))}function g1(t,e){return t-t%Math.pow(10,e)}function y1(t){let[e=0,r=""]=t;return r||e>1?`{${e+(r?","+r:"")}}`:""}function M5(t,e,r){return`[${t}${e-t===1?"":"-"}${e}]`}function D1(t){return/^-?(0+)\d/.test(t)}function q5(t,e,r){if(!e.isPadded)return t;let n=Math.abs(e.maxLen-String(t).length),o=r.relaxZeros!==!1;switch(n){case 0:return"";case 1:return o?"0?":"0";case 2:return o?"0{0,2}":"00";default:return o?`0{0,${n}}`:`0{${n}}`}}qo.cache={};qo.clearCache=()=>qo.cache={};b1.exports=qo});var sy=x((yX,A1)=>{"use strict";var H5=require("util"),C1=w1(),v1=t=>t!==null&&typeof t=="object"&&!Array.isArray(t),V5=t=>e=>t===!0?Number(e):String(e),iy=t=>typeof t=="number"||typeof t=="string"&&t!=="",Gs=t=>Number.isInteger(+t),ay=t=>{let e=`${t}`,r=-1;if(e[0]==="-"&&(e=e.slice(1)),e==="0")return!1;for(;e[++r]==="0";);return r>0},z5=(t,e,r)=>typeof t=="string"||typeof e=="string"?!0:r.stringify===!0,K5=(t,e,r)=>{if(e>0){let n=t[0]==="-"?"-":"";n&&(t=t.slice(1)),t=n+t.padStart(n?e-1:e,"0")}return r===!1?String(t):t},wf=(t,e)=>{let r=t[0]==="-"?"-":"";for(r&&(t=t.slice(1),e--);t.length<e;)t="0"+t;return r?"-"+t:t},G5=(t,e,r)=>{t.negatives.sort((s,u)=>s<u?-1:s>u?1:0),t.positives.sort((s,u)=>s<u?-1:s>u?1:0);let n=e.capture?"":"?:",o="",i="",a;return t.positives.length&&(o=t.positives.map(s=>wf(String(s),r)).join("|")),t.negatives.length&&(i=`-(${n}${t.negatives.map(s=>wf(String(s),r)).join("|")})`),o&&i?a=`${o}|${i}`:a=o||i,e.wrap?`(${n}${a})`:a},E1=(t,e,r,n)=>{if(r)return C1(t,e,{wrap:!1,...n});let o=String.fromCharCode(t);if(t===e)return o;let i=String.fromCharCode(e);return`[${o}-${i}]`},_1=(t,e,r)=>{if(Array.isArray(t)){let n=r.wrap===!0,o=r.capture?"":"?:";return n?`(${o}${t.join("|")})`:t.join("|")}return C1(t,e,r)},S1=(...t)=>new RangeError("Invalid range arguments: "+H5.inspect(...t)),x1=(t,e,r)=>{if(r.strictRanges===!0)throw S1([t,e]);return[]},W5=(t,e)=>{if(e.strictRanges===!0)throw new TypeError(`Expected step "${t}" to be a number`);return[]},Y5=(t,e,r=1,n={})=>{let o=Number(t),i=Number(e);if(!Number.isInteger(o)||!Number.isInteger(i)){if(n.strictRanges===!0)throw S1([t,e]);return[]}o===0&&(o=0),i===0&&(i=0);let a=o>i,s=String(t),u=String(e),c=String(r);r=Math.max(Math.abs(r),1);let f=ay(s)||ay(u)||ay(c),d=f?Math.max(s.length,u.length,c.length):0,p=f===!1&&z5(t,e,n)===!1,h=n.transform||V5(p);if(n.toRegex&&r===1)return E1(wf(t,d),wf(e,d),!0,n);let m={negatives:[],positives:[]},y=E=>m[E<0?"negatives":"positives"].push(Math.abs(E)),b=[],v=0;for(;a?o>=i:o<=i;)n.toRegex===!0&&r>1?y(o):b.push(K5(h(o,v),d,p)),o=a?o-r:o+r,v++;return n.toRegex===!0?r>1?G5(m,n,d):_1(b,null,{wrap:!1,...n}):b},J5=(t,e,r=1,n={})=>{if(!Gs(t)&&t.length>1||!Gs(e)&&e.length>1)return x1(t,e,n);let o=n.transform||(p=>String.fromCharCode(p)),i=`${t}`.charCodeAt(0),a=`${e}`.charCodeAt(0),s=i>a,u=Math.min(i,a),c=Math.max(i,a);if(n.toRegex&&r===1)return E1(u,c,!1,n);let f=[],d=0;for(;s?i>=a:i<=a;)f.push(o(i,d)),i=s?i-r:i+r,d++;return n.toRegex===!0?_1(f,null,{wrap:!1,options:n}):f},bf=(t,e,r,n={})=>{if(e==null&&iy(t))return[t];if(!iy(t)||!iy(e))return x1(t,e,n);if(typeof r=="function")return bf(t,e,1,{transform:r});if(v1(r))return bf(t,e,0,r);let o={...n};return o.capture===!0&&(o.wrap=!0),r=r||o.step||1,Gs(r)?Gs(t)&&Gs(e)?Y5(t,e,r,o):J5(t,e,Math.max(Math.abs(r),1),o):r!=null&&!v1(r)?W5(r,o):bf(t,e,1,r)};A1.exports=bf});var k1=x((DX,F1)=>{"use strict";var X5=sy(),O1=yf(),Z5=(t,e={})=>{let r=(n,o={})=>{let i=O1.isInvalidBrace(o),a=n.invalid===!0&&e.escapeInvalid===!0,s=i===!0||a===!0,u=e.escapeInvalid===!0?"\\":"",c="";if(n.isOpen===!0)return u+n.value;if(n.isClose===!0)return console.log("node.isClose",u,n.value),u+n.value;if(n.type==="open")return s?u+n.value:"(";if(n.type==="close")return s?u+n.value:")";if(n.type==="comma")return n.prev.type==="comma"?"":s?n.value:"|";if(n.value)return n.value;if(n.nodes&&n.ranges>0){let f=O1.reduce(n.nodes),d=X5(...f,{...e,wrap:!1,toRegex:!0,strictZeros:!0});if(d.length!==0)return f.length>1&&d.length>1?`(${d})`:d}if(n.nodes)for(let f of n.nodes)c+=r(f,n);return c};return r(t)};F1.exports=Z5});var I1=x((bX,$1)=>{"use strict";var Q5=sy(),P1=Df(),ga=yf(),Ho=(t="",e="",r=!1)=>{let n=[];if(t=[].concat(t),e=[].concat(e),!e.length)return t;if(!t.length)return r?ga.flatten(e).map(o=>`{${o}}`):e;for(let o of t)if(Array.isArray(o))for(let i of o)n.push(Ho(i,e,r));else for(let i of e)r===!0&&typeof i=="string"&&(i=`{${i}}`),n.push(Array.isArray(i)?Ho(o,i,r):o+i);return ga.flatten(n)},e9=(t,e={})=>{let r=e.rangeLimit===void 0?1e3:e.rangeLimit,n=(o,i={})=>{o.queue=[];let a=i,s=i.queue;for(;a.type!=="brace"&&a.type!=="root"&&a.parent;)a=a.parent,s=a.queue;if(o.invalid||o.dollar){s.push(Ho(s.pop(),P1(o,e)));return}if(o.type==="brace"&&o.invalid!==!0&&o.nodes.length===2){s.push(Ho(s.pop(),["{}"]));return}if(o.nodes&&o.ranges>0){let d=ga.reduce(o.nodes);if(ga.exceedsLimit(...d,e.step,r))throw new RangeError("expanded array length exceeds range limit. Use options.rangeLimit to increase or disable the limit.");let p=Q5(...d,e);p.length===0&&(p=P1(o,e)),s.push(Ho(s.pop(),p)),o.nodes=[];return}let u=ga.encloseBrace(o),c=o.queue,f=o;for(;f.type!=="brace"&&f.type!=="root"&&f.parent;)f=f.parent,c=f.queue;for(let d=0;d<o.nodes.length;d++){let p=o.nodes[d];if(p.type==="comma"&&o.type==="brace"){d===1&&c.push(""),c.push("");continue}if(p.type==="close"){s.push(Ho(s.pop(),c,u));continue}if(p.value&&p.type!=="open"){c.push(Ho(c.pop(),p.value));continue}p.nodes&&n(p,o)}return c};return ga.flatten(n(t))};$1.exports=e9});var R1=x((wX,T1)=>{"use strict";T1.exports={MAX_LENGTH:1e4,CHAR_0:"0",CHAR_9:"9",CHAR_UPPERCASE_A:"A",CHAR_LOWERCASE_A:"a",CHAR_UPPERCASE_Z:"Z",CHAR_LOWERCASE_Z:"z",CHAR_LEFT_PARENTHESES:"(",CHAR_RIGHT_PARENTHESES:")",CHAR_ASTERISK:"*",CHAR_AMPERSAND:"&",CHAR_AT:"@",CHAR_BACKSLASH:"\\",CHAR_BACKTICK:"`",CHAR_CARRIAGE_RETURN:"\r",CHAR_CIRCUMFLEX_ACCENT:"^",CHAR_COLON:":",CHAR_COMMA:",",CHAR_DOLLAR:"$",CHAR_DOT:".",CHAR_DOUBLE_QUOTE:'"',CHAR_EQUAL:"=",CHAR_EXCLAMATION_MARK:"!",CHAR_FORM_FEED:"\f",CHAR_FORWARD_SLASH:"/",CHAR_HASH:"#",CHAR_HYPHEN_MINUS:"-",CHAR_LEFT_ANGLE_BRACKET:"<",CHAR_LEFT_CURLY_BRACE:"{",CHAR_LEFT_SQUARE_BRACKET:"[",CHAR_LINE_FEED:`
|
|
107
|
-
`,CHAR_NO_BREAK_SPACE:"\xA0",CHAR_PERCENT:"%",CHAR_PLUS:"+",CHAR_QUESTION_MARK:"?",CHAR_RIGHT_ANGLE_BRACKET:">",CHAR_RIGHT_CURLY_BRACE:"}",CHAR_RIGHT_SQUARE_BRACKET:"]",CHAR_SEMICOLON:";",CHAR_SINGLE_QUOTE:"'",CHAR_SPACE:" ",CHAR_TAB:" ",CHAR_UNDERSCORE:"_",CHAR_VERTICAL_LINE:"|",CHAR_ZERO_WIDTH_NOBREAK_SPACE:"\uFEFF"}});var U1=x((vX,j1)=>{"use strict";var t9=Df(),{MAX_LENGTH:B1,CHAR_BACKSLASH:uy,CHAR_BACKTICK:r9,CHAR_COMMA:n9,CHAR_DOT:o9,CHAR_LEFT_PARENTHESES:i9,CHAR_RIGHT_PARENTHESES:a9,CHAR_LEFT_CURLY_BRACE:s9,CHAR_RIGHT_CURLY_BRACE:u9,CHAR_LEFT_SQUARE_BRACKET:N1,CHAR_RIGHT_SQUARE_BRACKET:L1,CHAR_DOUBLE_QUOTE:c9,CHAR_SINGLE_QUOTE:l9,CHAR_NO_BREAK_SPACE:f9,CHAR_ZERO_WIDTH_NOBREAK_SPACE:d9}=R1(),p9=(t,e={})=>{if(typeof t!="string")throw new TypeError("Expected a string");let r=e||{},n=typeof r.maxLength=="number"?Math.min(B1,r.maxLength):B1;if(t.length>n)throw new SyntaxError(`Input length (${t.length}), exceeds max characters (${n})`);let o={type:"root",input:t,nodes:[]},i=[o],a=o,s=o,u=0,c=t.length,f=0,d=0,p,h=()=>t[f++],m=y=>{if(y.type==="text"&&s.type==="dot"&&(s.type="text"),s&&s.type==="text"&&y.type==="text"){s.value+=y.value;return}return a.nodes.push(y),y.parent=a,y.prev=s,s=y,y};for(m({type:"bos"});f<c;)if(a=i[i.length-1],p=h(),!(p===d9||p===f9)){if(p===uy){m({type:"text",value:(e.keepEscaping?p:"")+h()});continue}if(p===L1){m({type:"text",value:"\\"+p});continue}if(p===N1){u++;let y;for(;f<c&&(y=h());){if(p+=y,y===N1){u++;continue}if(y===uy){p+=h();continue}if(y===L1&&(u--,u===0))break}m({type:"text",value:p});continue}if(p===i9){a=m({type:"paren",nodes:[]}),i.push(a),m({type:"text",value:p});continue}if(p===a9){if(a.type!=="paren"){m({type:"text",value:p});continue}a=i.pop(),m({type:"text",value:p}),a=i[i.length-1];continue}if(p===c9||p===l9||p===r9){let y=p,b;for(e.keepQuotes!==!0&&(p="");f<c&&(b=h());){if(b===uy){p+=b+h();continue}if(b===y){e.keepQuotes===!0&&(p+=b);break}p+=b}m({type:"text",value:p});continue}if(p===s9){d++;let b={type:"brace",open:!0,close:!1,dollar:s.value&&s.value.slice(-1)==="$"||a.dollar===!0,depth:d,commas:0,ranges:0,nodes:[]};a=m(b),i.push(a),m({type:"open",value:p});continue}if(p===u9){if(a.type!=="brace"){m({type:"text",value:p});continue}let y="close";a=i.pop(),a.close=!0,m({type:y,value:p}),d--,a=i[i.length-1];continue}if(p===n9&&d>0){if(a.ranges>0){a.ranges=0;let y=a.nodes.shift();a.nodes=[y,{type:"text",value:t9(a)}]}m({type:"comma",value:p}),a.commas++;continue}if(p===o9&&d>0&&a.commas===0){let y=a.nodes;if(d===0||y.length===0){m({type:"text",value:p});continue}if(s.type==="dot"){if(a.range=[],s.value+=p,s.type="range",a.nodes.length!==3&&a.nodes.length!==5){a.invalid=!0,a.ranges=0,s.type="text";continue}a.ranges++,a.args=[];continue}if(s.type==="range"){y.pop();let b=y[y.length-1];b.value+=s.value+p,s=b,a.ranges--;continue}m({type:"dot",value:p});continue}m({type:"text",value:p})}do if(a=i.pop(),a.type!=="root"){a.nodes.forEach(v=>{v.nodes||(v.type==="open"&&(v.isOpen=!0),v.type==="close"&&(v.isClose=!0),v.nodes||(v.type="text"),v.invalid=!0)});let y=i[i.length-1],b=y.nodes.indexOf(a);y.nodes.splice(b,1,...a.nodes)}while(i.length>0);return m({type:"eos"}),o};j1.exports=p9});var H1=x((CX,q1)=>{"use strict";var M1=Df(),h9=k1(),m9=I1(),g9=U1(),sr=(t,e={})=>{let r=[];if(Array.isArray(t))for(let n of t){let o=sr.create(n,e);Array.isArray(o)?r.push(...o):r.push(o)}else r=[].concat(sr.create(t,e));return e&&e.expand===!0&&e.nodupes===!0&&(r=[...new Set(r)]),r};sr.parse=(t,e={})=>g9(t,e);sr.stringify=(t,e={})=>M1(typeof t=="string"?sr.parse(t,e):t,e);sr.compile=(t,e={})=>(typeof t=="string"&&(t=sr.parse(t,e)),h9(t,e));sr.expand=(t,e={})=>{typeof t=="string"&&(t=sr.parse(t,e));let r=m9(t,e);return e.noempty===!0&&(r=r.filter(Boolean)),e.nodupes===!0&&(r=[...new Set(r)]),r};sr.create=(t,e={})=>t===""||t.length<3?[t]:e.expand!==!0?sr.compile(t,e):sr.expand(t,e);q1.exports=sr});var Ws=x((EX,W1)=>{"use strict";var y9=require("path"),Yr="\\\\/",V1=`[^${Yr}]`,wn="\\.",D9="\\+",b9="\\?",vf="\\/",w9="(?=.)",z1="[^/]",cy=`(?:${vf}|$)`,K1=`(?:^|${vf})`,ly=`${wn}{1,2}${cy}`,v9=`(?!${wn})`,C9=`(?!${K1}${ly})`,E9=`(?!${wn}{0,1}${cy})`,_9=`(?!${ly})`,S9=`[^.${vf}]`,x9=`${z1}*?`,G1={DOT_LITERAL:wn,PLUS_LITERAL:D9,QMARK_LITERAL:b9,SLASH_LITERAL:vf,ONE_CHAR:w9,QMARK:z1,END_ANCHOR:cy,DOTS_SLASH:ly,NO_DOT:v9,NO_DOTS:C9,NO_DOT_SLASH:E9,NO_DOTS_SLASH:_9,QMARK_NO_DOT:S9,STAR:x9,START_ANCHOR:K1},A9={...G1,SLASH_LITERAL:`[${Yr}]`,QMARK:V1,STAR:`${V1}*?`,DOTS_SLASH:`${wn}{1,2}(?:[${Yr}]|$)`,NO_DOT:`(?!${wn})`,NO_DOTS:`(?!(?:^|[${Yr}])${wn}{1,2}(?:[${Yr}]|$))`,NO_DOT_SLASH:`(?!${wn}{0,1}(?:[${Yr}]|$))`,NO_DOTS_SLASH:`(?!${wn}{1,2}(?:[${Yr}]|$))`,QMARK_NO_DOT:`[^.${Yr}]`,START_ANCHOR:`(?:^|[${Yr}])`,END_ANCHOR:`(?:[${Yr}]|$)`},O9={alnum:"a-zA-Z0-9",alpha:"a-zA-Z",ascii:"\\x00-\\x7F",blank:" \\t",cntrl:"\\x00-\\x1F\\x7F",digit:"0-9",graph:"\\x21-\\x7E",lower:"a-z",print:"\\x20-\\x7E ",punct:"\\-!\"#$%&'()\\*+,./:;<=>?@[\\]^_`{|}~",space:" \\t\\r\\n\\v\\f",upper:"A-Z",word:"A-Za-z0-9_",xdigit:"A-Fa-f0-9"};W1.exports={MAX_LENGTH:1024*64,POSIX_REGEX_SOURCE:O9,REGEX_BACKSLASH:/\\(?![*+?^${}(|)[\]])/g,REGEX_NON_SPECIAL_CHARS:/^[^@![\].,$*+?^{}()|\\/]+/,REGEX_SPECIAL_CHARS:/[-*+?.^${}(|)[\]]/,REGEX_SPECIAL_CHARS_BACKREF:/(\\?)((\W)(\3*))/g,REGEX_SPECIAL_CHARS_GLOBAL:/([-*+?.^${}(|)[\]])/g,REGEX_REMOVE_BACKSLASH:/(?:\[.*?[^\\]\]|\\(?=.))/g,REPLACEMENTS:{"***":"*","**/**":"**","**/**/**":"**"},CHAR_0:48,CHAR_9:57,CHAR_UPPERCASE_A:65,CHAR_LOWERCASE_A:97,CHAR_UPPERCASE_Z:90,CHAR_LOWERCASE_Z:122,CHAR_LEFT_PARENTHESES:40,CHAR_RIGHT_PARENTHESES:41,CHAR_ASTERISK:42,CHAR_AMPERSAND:38,CHAR_AT:64,CHAR_BACKWARD_SLASH:92,CHAR_CARRIAGE_RETURN:13,CHAR_CIRCUMFLEX_ACCENT:94,CHAR_COLON:58,CHAR_COMMA:44,CHAR_DOT:46,CHAR_DOUBLE_QUOTE:34,CHAR_EQUAL:61,CHAR_EXCLAMATION_MARK:33,CHAR_FORM_FEED:12,CHAR_FORWARD_SLASH:47,CHAR_GRAVE_ACCENT:96,CHAR_HASH:35,CHAR_HYPHEN_MINUS:45,CHAR_LEFT_ANGLE_BRACKET:60,CHAR_LEFT_CURLY_BRACE:123,CHAR_LEFT_SQUARE_BRACKET:91,CHAR_LINE_FEED:10,CHAR_NO_BREAK_SPACE:160,CHAR_PERCENT:37,CHAR_PLUS:43,CHAR_QUESTION_MARK:63,CHAR_RIGHT_ANGLE_BRACKET:62,CHAR_RIGHT_CURLY_BRACE:125,CHAR_RIGHT_SQUARE_BRACKET:93,CHAR_SEMICOLON:59,CHAR_SINGLE_QUOTE:39,CHAR_SPACE:32,CHAR_TAB:9,CHAR_UNDERSCORE:95,CHAR_VERTICAL_LINE:124,CHAR_ZERO_WIDTH_NOBREAK_SPACE:65279,SEP:y9.sep,extglobChars(t){return{"!":{type:"negate",open:"(?:(?!(?:",close:`))${t.STAR})`},"?":{type:"qmark",open:"(?:",close:")?"},"+":{type:"plus",open:"(?:",close:")+"},"*":{type:"star",open:"(?:",close:")*"},"@":{type:"at",open:"(?:",close:")"}}},globChars(t){return t===!0?A9:G1}}});var Ys=x(Xt=>{"use strict";var F9=require("path"),k9=process.platform==="win32",{REGEX_BACKSLASH:P9,REGEX_REMOVE_BACKSLASH:$9,REGEX_SPECIAL_CHARS:I9,REGEX_SPECIAL_CHARS_GLOBAL:T9}=Ws();Xt.isObject=t=>t!==null&&typeof t=="object"&&!Array.isArray(t);Xt.hasRegexChars=t=>I9.test(t);Xt.isRegexChar=t=>t.length===1&&Xt.hasRegexChars(t);Xt.escapeRegex=t=>t.replace(T9,"\\$1");Xt.toPosixSlashes=t=>t.replace(P9,"/");Xt.removeBackslashes=t=>t.replace($9,e=>e==="\\"?"":e);Xt.supportsLookbehinds=()=>{let t=process.version.slice(1).split(".").map(Number);return t.length===3&&t[0]>=9||t[0]===8&&t[1]>=10};Xt.isWindows=t=>t&&typeof t.windows=="boolean"?t.windows:k9===!0||F9.sep==="\\";Xt.escapeLast=(t,e,r)=>{let n=t.lastIndexOf(e,r);return n===-1?t:t[n-1]==="\\"?Xt.escapeLast(t,e,n-1):`${t.slice(0,n)}\\${t.slice(n)}`};Xt.removePrefix=(t,e={})=>{let r=t;return r.startsWith("./")&&(r=r.slice(2),e.prefix="./"),r};Xt.wrapOutput=(t,e={},r={})=>{let n=r.contains?"":"^",o=r.contains?"":"$",i=`${n}(?:${t})${o}`;return e.negated===!0&&(i=`(?:^(?!${i}).*$)`),i}});var rF=x((SX,tF)=>{"use strict";var Y1=Ys(),{CHAR_ASTERISK:fy,CHAR_AT:R9,CHAR_BACKWARD_SLASH:Js,CHAR_COMMA:B9,CHAR_DOT:dy,CHAR_EXCLAMATION_MARK:py,CHAR_FORWARD_SLASH:eF,CHAR_LEFT_CURLY_BRACE:hy,CHAR_LEFT_PARENTHESES:my,CHAR_LEFT_SQUARE_BRACKET:N9,CHAR_PLUS:L9,CHAR_QUESTION_MARK:J1,CHAR_RIGHT_CURLY_BRACE:j9,CHAR_RIGHT_PARENTHESES:X1,CHAR_RIGHT_SQUARE_BRACKET:U9}=Ws(),Z1=t=>t===eF||t===Js,Q1=t=>{t.isPrefix!==!0&&(t.depth=t.isGlobstar?1/0:1)},M9=(t,e)=>{let r=e||{},n=t.length-1,o=r.parts===!0||r.scanToEnd===!0,i=[],a=[],s=[],u=t,c=-1,f=0,d=0,p=!1,h=!1,m=!1,y=!1,b=!1,v=!1,E=!1,g=!1,_=!1,S=!1,P=0,F,B,T={value:"",depth:0,isGlob:!1},L=()=>c>=n,A=()=>u.charCodeAt(c+1),q=()=>(F=B,u.charCodeAt(++c));for(;c<n;){B=q();let w;if(B===Js){E=T.backslashes=!0,B=q(),B===hy&&(v=!0);continue}if(v===!0||B===hy){for(P++;L()!==!0&&(B=q());){if(B===Js){E=T.backslashes=!0,q();continue}if(B===hy){P++;continue}if(v!==!0&&B===dy&&(B=q())===dy){if(p=T.isBrace=!0,m=T.isGlob=!0,S=!0,o===!0)continue;break}if(v!==!0&&B===B9){if(p=T.isBrace=!0,m=T.isGlob=!0,S=!0,o===!0)continue;break}if(B===j9&&(P--,P===0)){v=!1,p=T.isBrace=!0,S=!0;break}}if(o===!0)continue;break}if(B===eF){if(i.push(c),a.push(T),T={value:"",depth:0,isGlob:!1},S===!0)continue;if(F===dy&&c===f+1){f+=2;continue}d=c+1;continue}if(r.noext!==!0&&(B===L9||B===R9||B===fy||B===J1||B===py)===!0&&A()===my){if(m=T.isGlob=!0,y=T.isExtglob=!0,S=!0,B===py&&c===f&&(_=!0),o===!0){for(;L()!==!0&&(B=q());){if(B===Js){E=T.backslashes=!0,B=q();continue}if(B===X1){m=T.isGlob=!0,S=!0;break}}continue}break}if(B===fy){if(F===fy&&(b=T.isGlobstar=!0),m=T.isGlob=!0,S=!0,o===!0)continue;break}if(B===J1){if(m=T.isGlob=!0,S=!0,o===!0)continue;break}if(B===N9){for(;L()!==!0&&(w=q());){if(w===Js){E=T.backslashes=!0,q();continue}if(w===U9){h=T.isBracket=!0,m=T.isGlob=!0,S=!0;break}}if(o===!0)continue;break}if(r.nonegate!==!0&&B===py&&c===f){g=T.negated=!0,f++;continue}if(r.noparen!==!0&&B===my){if(m=T.isGlob=!0,o===!0){for(;L()!==!0&&(B=q());){if(B===my){E=T.backslashes=!0,B=q();continue}if(B===X1){S=!0;break}}continue}break}if(m===!0){if(S=!0,o===!0)continue;break}}r.noext===!0&&(y=!1,m=!1);let j=u,Z="",k="";f>0&&(Z=u.slice(0,f),u=u.slice(f),d-=f),j&&m===!0&&d>0?(j=u.slice(0,d),k=u.slice(d)):m===!0?(j="",k=u):j=u,j&&j!==""&&j!=="/"&&j!==u&&Z1(j.charCodeAt(j.length-1))&&(j=j.slice(0,-1)),r.unescape===!0&&(k&&(k=Y1.removeBackslashes(k)),j&&E===!0&&(j=Y1.removeBackslashes(j)));let D={prefix:Z,input:t,start:f,base:j,glob:k,isBrace:p,isBracket:h,isGlob:m,isExtglob:y,isGlobstar:b,negated:g,negatedExtglob:_};if(r.tokens===!0&&(D.maxDepth=0,Z1(B)||a.push(T),D.tokens=a),r.parts===!0||r.tokens===!0){let w;for(let C=0;C<i.length;C++){let O=w?w+1:f,R=i[C],$=t.slice(O,R);r.tokens&&(C===0&&f!==0?(a[C].isPrefix=!0,a[C].value=Z):a[C].value=$,Q1(a[C]),D.maxDepth+=a[C].depth),(C!==0||$!=="")&&s.push($),w=R}if(w&&w+1<t.length){let C=t.slice(w+1);s.push(C),r.tokens&&(a[a.length-1].value=C,Q1(a[a.length-1]),D.maxDepth+=a[a.length-1].depth)}D.slashes=i,D.parts=s}return D};tF.exports=M9});var iF=x((xX,oF)=>{"use strict";var Cf=Ws(),ur=Ys(),{MAX_LENGTH:Ef,POSIX_REGEX_SOURCE:q9,REGEX_NON_SPECIAL_CHARS:H9,REGEX_SPECIAL_CHARS_BACKREF:V9,REPLACEMENTS:nF}=Cf,z9=(t,e)=>{if(typeof e.expandRange=="function")return e.expandRange(...t,e);t.sort();let r=`[${t.join("-")}]`;try{new RegExp(r)}catch{return t.map(o=>ur.escapeRegex(o)).join("..")}return r},ya=(t,e)=>`Missing ${t}: "${e}" - use "\\\\${e}" to match literal characters`,gy=(t,e)=>{if(typeof t!="string")throw new TypeError("Expected a string");t=nF[t]||t;let r={...e},n=typeof r.maxLength=="number"?Math.min(Ef,r.maxLength):Ef,o=t.length;if(o>n)throw new SyntaxError(`Input length: ${o}, exceeds maximum allowed length: ${n}`);let i={type:"bos",value:"",output:r.prepend||""},a=[i],s=r.capture?"":"?:",u=ur.isWindows(e),c=Cf.globChars(u),f=Cf.extglobChars(c),{DOT_LITERAL:d,PLUS_LITERAL:p,SLASH_LITERAL:h,ONE_CHAR:m,DOTS_SLASH:y,NO_DOT:b,NO_DOT_SLASH:v,NO_DOTS_SLASH:E,QMARK:g,QMARK_NO_DOT:_,STAR:S,START_ANCHOR:P}=c,F=z=>`(${s}(?:(?!${P}${z.dot?y:d}).)*?)`,B=r.dot?"":b,T=r.dot?g:_,L=r.bash===!0?F(r):S;r.capture&&(L=`(${L})`),typeof r.noext=="boolean"&&(r.noextglob=r.noext);let A={input:t,index:-1,start:0,dot:r.dot===!0,consumed:"",output:"",prefix:"",backtrack:!1,negated:!1,brackets:0,braces:0,parens:0,quotes:0,globstar:!1,tokens:a};t=ur.removePrefix(t,A),o=t.length;let q=[],j=[],Z=[],k=i,D,w=()=>A.index===o-1,C=A.peek=(z=1)=>t[A.index+z],O=A.advance=()=>t[++A.index]||"",R=()=>t.slice(A.index+1),$=(z="",Se=0)=>{A.consumed+=z,A.index+=Se},H=z=>{A.output+=z.output!=null?z.output:z.value,$(z.value)},I=()=>{let z=1;for(;C()==="!"&&(C(2)!=="("||C(3)==="?");)O(),A.start++,z++;return z%2===0?!1:(A.negated=!0,A.start++,!0)},N=z=>{A[z]++,Z.push(z)},X=z=>{A[z]--,Z.pop()},U=z=>{if(k.type==="globstar"){let Se=A.braces>0&&(z.type==="comma"||z.type==="brace"),V=z.extglob===!0||q.length&&(z.type==="pipe"||z.type==="paren");z.type!=="slash"&&z.type!=="paren"&&!Se&&!V&&(A.output=A.output.slice(0,-k.output.length),k.type="star",k.value="*",k.output=L,A.output+=k.output)}if(q.length&&z.type!=="paren"&&(q[q.length-1].inner+=z.value),(z.value||z.output)&&H(z),k&&k.type==="text"&&z.type==="text"){k.value+=z.value,k.output=(k.output||"")+z.value;return}z.prev=k,a.push(z),k=z},oe=(z,Se)=>{let V={...f[Se],conditions:1,inner:""};V.prev=k,V.parens=A.parens,V.output=A.output;let de=(r.capture?"(":"")+V.open;N("parens"),U({type:z,value:Se,output:A.output?"":m}),U({type:"paren",extglob:!0,value:O(),output:de}),q.push(V)},Zt=z=>{let Se=z.close+(r.capture?")":""),V;if(z.type==="negate"){let de=L;if(z.inner&&z.inner.length>1&&z.inner.includes("/")&&(de=F(r)),(de!==L||w()||/^\)+$/.test(R()))&&(Se=z.close=`)$))${de}`),z.inner.includes("*")&&(V=R())&&/^\.[^\\/.]+$/.test(V)){let He=gy(V,{...e,fastpaths:!1}).output;Se=z.close=`)${He})${de})`}z.prev.type==="bos"&&(A.negatedExtglob=!0)}U({type:"paren",extglob:!0,value:D,output:Se}),X("parens")};if(r.fastpaths!==!1&&!/(^[*!]|[/()[\]{}"])/.test(t)){let z=!1,Se=t.replace(V9,(V,de,He,Ot,ot,Rf)=>Ot==="\\"?(z=!0,V):Ot==="?"?de?de+Ot+(ot?g.repeat(ot.length):""):Rf===0?T+(ot?g.repeat(ot.length):""):g.repeat(He.length):Ot==="."?d.repeat(He.length):Ot==="*"?de?de+Ot+(ot?L:""):L:de?V:`\\${V}`);return z===!0&&(r.unescape===!0?Se=Se.replace(/\\/g,""):Se=Se.replace(/\\+/g,V=>V.length%2===0?"\\\\":V?"\\":"")),Se===t&&r.contains===!0?(A.output=t,A):(A.output=ur.wrapOutput(Se,A,e),A)}for(;!w();){if(D=O(),D==="\0")continue;if(D==="\\"){let V=C();if(V==="/"&&r.bash!==!0||V==="."||V===";")continue;if(!V){D+="\\",U({type:"text",value:D});continue}let de=/^\\+/.exec(R()),He=0;if(de&&de[0].length>2&&(He=de[0].length,A.index+=He,He%2!==0&&(D+="\\")),r.unescape===!0?D=O():D+=O(),A.brackets===0){U({type:"text",value:D});continue}}if(A.brackets>0&&(D!=="]"||k.value==="["||k.value==="[^")){if(r.posix!==!1&&D===":"){let V=k.value.slice(1);if(V.includes("[")&&(k.posix=!0,V.includes(":"))){let de=k.value.lastIndexOf("["),He=k.value.slice(0,de),Ot=k.value.slice(de+2),ot=q9[Ot];if(ot){k.value=He+ot,A.backtrack=!0,O(),!i.output&&a.indexOf(k)===1&&(i.output=m);continue}}}(D==="["&&C()!==":"||D==="-"&&C()==="]")&&(D=`\\${D}`),D==="]"&&(k.value==="["||k.value==="[^")&&(D=`\\${D}`),r.posix===!0&&D==="!"&&k.value==="["&&(D="^"),k.value+=D,H({value:D});continue}if(A.quotes===1&&D!=='"'){D=ur.escapeRegex(D),k.value+=D,H({value:D});continue}if(D==='"'){A.quotes=A.quotes===1?0:1,r.keepQuotes===!0&&U({type:"text",value:D});continue}if(D==="("){N("parens"),U({type:"paren",value:D});continue}if(D===")"){if(A.parens===0&&r.strictBrackets===!0)throw new SyntaxError(ya("opening","("));let V=q[q.length-1];if(V&&A.parens===V.parens+1){Zt(q.pop());continue}U({type:"paren",value:D,output:A.parens?")":"\\)"}),X("parens");continue}if(D==="["){if(r.nobracket===!0||!R().includes("]")){if(r.nobracket!==!0&&r.strictBrackets===!0)throw new SyntaxError(ya("closing","]"));D=`\\${D}`}else N("brackets");U({type:"bracket",value:D});continue}if(D==="]"){if(r.nobracket===!0||k&&k.type==="bracket"&&k.value.length===1){U({type:"text",value:D,output:`\\${D}`});continue}if(A.brackets===0){if(r.strictBrackets===!0)throw new SyntaxError(ya("opening","["));U({type:"text",value:D,output:`\\${D}`});continue}X("brackets");let V=k.value.slice(1);if(k.posix!==!0&&V[0]==="^"&&!V.includes("/")&&(D=`/${D}`),k.value+=D,H({value:D}),r.literalBrackets===!1||ur.hasRegexChars(V))continue;let de=ur.escapeRegex(k.value);if(A.output=A.output.slice(0,-k.value.length),r.literalBrackets===!0){A.output+=de,k.value=de;continue}k.value=`(${s}${de}|${k.value})`,A.output+=k.value;continue}if(D==="{"&&r.nobrace!==!0){N("braces");let V={type:"brace",value:D,output:"(",outputIndex:A.output.length,tokensIndex:A.tokens.length};j.push(V),U(V);continue}if(D==="}"){let V=j[j.length-1];if(r.nobrace===!0||!V){U({type:"text",value:D,output:D});continue}let de=")";if(V.dots===!0){let He=a.slice(),Ot=[];for(let ot=He.length-1;ot>=0&&(a.pop(),He[ot].type!=="brace");ot--)He[ot].type!=="dots"&&Ot.unshift(He[ot].value);de=z9(Ot,r),A.backtrack=!0}if(V.comma!==!0&&V.dots!==!0){let He=A.output.slice(0,V.outputIndex),Ot=A.tokens.slice(V.tokensIndex);V.value=V.output="\\{",D=de="\\}",A.output=He;for(let ot of Ot)A.output+=ot.output||ot.value}U({type:"brace",value:D,output:de}),X("braces"),j.pop();continue}if(D==="|"){q.length>0&&q[q.length-1].conditions++,U({type:"text",value:D});continue}if(D===","){let V=D,de=j[j.length-1];de&&Z[Z.length-1]==="braces"&&(de.comma=!0,V="|"),U({type:"comma",value:D,output:V});continue}if(D==="/"){if(k.type==="dot"&&A.index===A.start+1){A.start=A.index+1,A.consumed="",A.output="",a.pop(),k=i;continue}U({type:"slash",value:D,output:h});continue}if(D==="."){if(A.braces>0&&k.type==="dot"){k.value==="."&&(k.output=d);let V=j[j.length-1];k.type="dots",k.output+=D,k.value+=D,V.dots=!0;continue}if(A.braces+A.parens===0&&k.type!=="bos"&&k.type!=="slash"){U({type:"text",value:D,output:d});continue}U({type:"dot",value:D,output:d});continue}if(D==="?"){if(!(k&&k.value==="(")&&r.noextglob!==!0&&C()==="("&&C(2)!=="?"){oe("qmark",D);continue}if(k&&k.type==="paren"){let de=C(),He=D;if(de==="<"&&!ur.supportsLookbehinds())throw new Error("Node.js v10 or higher is required for regex lookbehinds");(k.value==="("&&!/[!=<:]/.test(de)||de==="<"&&!/<([!=]|\w+>)/.test(R()))&&(He=`\\${D}`),U({type:"text",value:D,output:He});continue}if(r.dot!==!0&&(k.type==="slash"||k.type==="bos")){U({type:"qmark",value:D,output:_});continue}U({type:"qmark",value:D,output:g});continue}if(D==="!"){if(r.noextglob!==!0&&C()==="("&&(C(2)!=="?"||!/[!=<:]/.test(C(3)))){oe("negate",D);continue}if(r.nonegate!==!0&&A.index===0){I();continue}}if(D==="+"){if(r.noextglob!==!0&&C()==="("&&C(2)!=="?"){oe("plus",D);continue}if(k&&k.value==="("||r.regex===!1){U({type:"plus",value:D,output:p});continue}if(k&&(k.type==="bracket"||k.type==="paren"||k.type==="brace")||A.parens>0){U({type:"plus",value:D});continue}U({type:"plus",value:p});continue}if(D==="@"){if(r.noextglob!==!0&&C()==="("&&C(2)!=="?"){U({type:"at",extglob:!0,value:D,output:""});continue}U({type:"text",value:D});continue}if(D!=="*"){(D==="$"||D==="^")&&(D=`\\${D}`);let V=H9.exec(R());V&&(D+=V[0],A.index+=V[0].length),U({type:"text",value:D});continue}if(k&&(k.type==="globstar"||k.star===!0)){k.type="star",k.star=!0,k.value+=D,k.output=L,A.backtrack=!0,A.globstar=!0,$(D);continue}let z=R();if(r.noextglob!==!0&&/^\([^?]/.test(z)){oe("star",D);continue}if(k.type==="star"){if(r.noglobstar===!0){$(D);continue}let V=k.prev,de=V.prev,He=V.type==="slash"||V.type==="bos",Ot=de&&(de.type==="star"||de.type==="globstar");if(r.bash===!0&&(!He||z[0]&&z[0]!=="/")){U({type:"star",value:D,output:""});continue}let ot=A.braces>0&&(V.type==="comma"||V.type==="brace"),Rf=q.length&&(V.type==="pipe"||V.type==="paren");if(!He&&V.type!=="paren"&&!ot&&!Rf){U({type:"star",value:D,output:""});continue}for(;z.slice(0,3)==="/**";){let ru=t[A.index+4];if(ru&&ru!=="/")break;z=z.slice(3),$("/**",3)}if(V.type==="bos"&&w()){k.type="globstar",k.value+=D,k.output=F(r),A.output=k.output,A.globstar=!0,$(D);continue}if(V.type==="slash"&&V.prev.type!=="bos"&&!Ot&&w()){A.output=A.output.slice(0,-(V.output+k.output).length),V.output=`(?:${V.output}`,k.type="globstar",k.output=F(r)+(r.strictSlashes?")":"|$)"),k.value+=D,A.globstar=!0,A.output+=V.output+k.output,$(D);continue}if(V.type==="slash"&&V.prev.type!=="bos"&&z[0]==="/"){let ru=z[1]!==void 0?"|$":"";A.output=A.output.slice(0,-(V.output+k.output).length),V.output=`(?:${V.output}`,k.type="globstar",k.output=`${F(r)}${h}|${h}${ru})`,k.value+=D,A.output+=V.output+k.output,A.globstar=!0,$(D+O()),U({type:"slash",value:"/",output:""});continue}if(V.type==="bos"&&z[0]==="/"){k.type="globstar",k.value+=D,k.output=`(?:^|${h}|${F(r)}${h})`,A.output=k.output,A.globstar=!0,$(D+O()),U({type:"slash",value:"/",output:""});continue}A.output=A.output.slice(0,-k.output.length),k.type="globstar",k.output=F(r),k.value+=D,A.output+=k.output,A.globstar=!0,$(D);continue}let Se={type:"star",value:D,output:L};if(r.bash===!0){Se.output=".*?",(k.type==="bos"||k.type==="slash")&&(Se.output=B+Se.output),U(Se);continue}if(k&&(k.type==="bracket"||k.type==="paren")&&r.regex===!0){Se.output=D,U(Se);continue}(A.index===A.start||k.type==="slash"||k.type==="dot")&&(k.type==="dot"?(A.output+=v,k.output+=v):r.dot===!0?(A.output+=E,k.output+=E):(A.output+=B,k.output+=B),C()!=="*"&&(A.output+=m,k.output+=m)),U(Se)}for(;A.brackets>0;){if(r.strictBrackets===!0)throw new SyntaxError(ya("closing","]"));A.output=ur.escapeLast(A.output,"["),X("brackets")}for(;A.parens>0;){if(r.strictBrackets===!0)throw new SyntaxError(ya("closing",")"));A.output=ur.escapeLast(A.output,"("),X("parens")}for(;A.braces>0;){if(r.strictBrackets===!0)throw new SyntaxError(ya("closing","}"));A.output=ur.escapeLast(A.output,"{"),X("braces")}if(r.strictSlashes!==!0&&(k.type==="star"||k.type==="bracket")&&U({type:"maybe_slash",value:"",output:`${h}?`}),A.backtrack===!0){A.output="";for(let z of A.tokens)A.output+=z.output!=null?z.output:z.value,z.suffix&&(A.output+=z.suffix)}return A};gy.fastpaths=(t,e)=>{let r={...e},n=typeof r.maxLength=="number"?Math.min(Ef,r.maxLength):Ef,o=t.length;if(o>n)throw new SyntaxError(`Input length: ${o}, exceeds maximum allowed length: ${n}`);t=nF[t]||t;let i=ur.isWindows(e),{DOT_LITERAL:a,SLASH_LITERAL:s,ONE_CHAR:u,DOTS_SLASH:c,NO_DOT:f,NO_DOTS:d,NO_DOTS_SLASH:p,STAR:h,START_ANCHOR:m}=Cf.globChars(i),y=r.dot?d:f,b=r.dot?p:f,v=r.capture?"":"?:",E={negated:!1,prefix:""},g=r.bash===!0?".*?":h;r.capture&&(g=`(${g})`);let _=B=>B.noglobstar===!0?g:`(${v}(?:(?!${m}${B.dot?c:a}).)*?)`,S=B=>{switch(B){case"*":return`${y}${u}${g}`;case".*":return`${a}${u}${g}`;case"*.*":return`${y}${g}${a}${u}${g}`;case"*/*":return`${y}${g}${s}${u}${b}${g}`;case"**":return y+_(r);case"**/*":return`(?:${y}${_(r)}${s})?${b}${u}${g}`;case"**/*.*":return`(?:${y}${_(r)}${s})?${b}${g}${a}${u}${g}`;case"**/.*":return`(?:${y}${_(r)}${s})?${a}${u}${g}`;default:{let T=/^(.*?)\.(\w+)$/.exec(B);if(!T)return;let L=S(T[1]);return L?L+a+T[2]:void 0}}},P=ur.removePrefix(t,E),F=S(P);return F&&r.strictSlashes!==!0&&(F+=`${s}?`),F};oF.exports=gy});var sF=x((AX,aF)=>{"use strict";var K9=require("path"),G9=rF(),yy=iF(),Dy=Ys(),W9=Ws(),Y9=t=>t&&typeof t=="object"&&!Array.isArray(t),rt=(t,e,r=!1)=>{if(Array.isArray(t)){let f=t.map(p=>rt(p,e,r));return p=>{for(let h of f){let m=h(p);if(m)return m}return!1}}let n=Y9(t)&&t.tokens&&t.input;if(t===""||typeof t!="string"&&!n)throw new TypeError("Expected pattern to be a non-empty string");let o=e||{},i=Dy.isWindows(e),a=n?rt.compileRe(t,e):rt.makeRe(t,e,!1,!0),s=a.state;delete a.state;let u=()=>!1;if(o.ignore){let f={...e,ignore:null,onMatch:null,onResult:null};u=rt(o.ignore,f,r)}let c=(f,d=!1)=>{let{isMatch:p,match:h,output:m}=rt.test(f,a,e,{glob:t,posix:i}),y={glob:t,state:s,regex:a,posix:i,input:f,output:m,match:h,isMatch:p};return typeof o.onResult=="function"&&o.onResult(y),p===!1?(y.isMatch=!1,d?y:!1):u(f)?(typeof o.onIgnore=="function"&&o.onIgnore(y),y.isMatch=!1,d?y:!1):(typeof o.onMatch=="function"&&o.onMatch(y),d?y:!0)};return r&&(c.state=s),c};rt.test=(t,e,r,{glob:n,posix:o}={})=>{if(typeof t!="string")throw new TypeError("Expected input to be a string");if(t==="")return{isMatch:!1,output:""};let i=r||{},a=i.format||(o?Dy.toPosixSlashes:null),s=t===n,u=s&&a?a(t):t;return s===!1&&(u=a?a(t):t,s=u===n),(s===!1||i.capture===!0)&&(i.matchBase===!0||i.basename===!0?s=rt.matchBase(t,e,r,o):s=e.exec(u)),{isMatch:!!s,match:s,output:u}};rt.matchBase=(t,e,r,n=Dy.isWindows(r))=>(e instanceof RegExp?e:rt.makeRe(e,r)).test(K9.basename(t));rt.isMatch=(t,e,r)=>rt(e,r)(t);rt.parse=(t,e)=>Array.isArray(t)?t.map(r=>rt.parse(r,e)):yy(t,{...e,fastpaths:!1});rt.scan=(t,e)=>G9(t,e);rt.compileRe=(t,e,r=!1,n=!1)=>{if(r===!0)return t.output;let o=e||{},i=o.contains?"":"^",a=o.contains?"":"$",s=`${i}(?:${t.output})${a}`;t&&t.negated===!0&&(s=`^(?!${s}).*$`);let u=rt.toRegex(s,e);return n===!0&&(u.state=t),u};rt.makeRe=(t,e={},r=!1,n=!1)=>{if(!t||typeof t!="string")throw new TypeError("Expected a non-empty string");let o={negated:!1,fastpaths:!0};return e.fastpaths!==!1&&(t[0]==="."||t[0]==="*")&&(o.output=yy.fastpaths(t,e)),o.output||(o=yy(t,e)),rt.compileRe(o,e,r,n)};rt.toRegex=(t,e)=>{try{let r=e||{};return new RegExp(t,r.flags||(r.nocase?"i":""))}catch(r){if(e&&e.debug===!0)throw r;return/$^/}};rt.constants=W9;aF.exports=rt});var cF=x((OX,uF)=>{"use strict";uF.exports=sF()});var mF=x((FX,hF)=>{"use strict";var fF=require("util"),dF=H1(),Jr=cF(),by=Ys(),lF=t=>t===""||t==="./",pF=t=>{let e=t.indexOf("{");return e>-1&&t.indexOf("}",e)>-1},Le=(t,e,r)=>{e=[].concat(e),t=[].concat(t);let n=new Set,o=new Set,i=new Set,a=0,s=f=>{i.add(f.output),r&&r.onResult&&r.onResult(f)};for(let f=0;f<e.length;f++){let d=Jr(String(e[f]),{...r,onResult:s},!0),p=d.state.negated||d.state.negatedExtglob;p&&a++;for(let h of t){let m=d(h,!0);(p?!m.isMatch:m.isMatch)&&(p?n.add(m.output):(n.delete(m.output),o.add(m.output)))}}let c=(a===e.length?[...i]:[...o]).filter(f=>!n.has(f));if(r&&c.length===0){if(r.failglob===!0)throw new Error(`No matches found for "${e.join(", ")}"`);if(r.nonull===!0||r.nullglob===!0)return r.unescape?e.map(f=>f.replace(/\\/g,"")):e}return c};Le.match=Le;Le.matcher=(t,e)=>Jr(t,e);Le.isMatch=(t,e,r)=>Jr(e,r)(t);Le.any=Le.isMatch;Le.not=(t,e,r={})=>{e=[].concat(e).map(String);let n=new Set,o=[],i=s=>{r.onResult&&r.onResult(s),o.push(s.output)},a=new Set(Le(t,e,{...r,onResult:i}));for(let s of o)a.has(s)||n.add(s);return[...n]};Le.contains=(t,e,r)=>{if(typeof t!="string")throw new TypeError(`Expected a string: "${fF.inspect(t)}"`);if(Array.isArray(e))return e.some(n=>Le.contains(t,n,r));if(typeof e=="string"){if(lF(t)||lF(e))return!1;if(t.includes(e)||t.startsWith("./")&&t.slice(2).includes(e))return!0}return Le.isMatch(t,e,{...r,contains:!0})};Le.matchKeys=(t,e,r)=>{if(!by.isObject(t))throw new TypeError("Expected the first argument to be an object");let n=Le(Object.keys(t),e,r),o={};for(let i of n)o[i]=t[i];return o};Le.some=(t,e,r)=>{let n=[].concat(t);for(let o of[].concat(e)){let i=Jr(String(o),r);if(n.some(a=>i(a)))return!0}return!1};Le.every=(t,e,r)=>{let n=[].concat(t);for(let o of[].concat(e)){let i=Jr(String(o),r);if(!n.every(a=>i(a)))return!1}return!0};Le.all=(t,e,r)=>{if(typeof t!="string")throw new TypeError(`Expected a string: "${fF.inspect(t)}"`);return[].concat(e).every(n=>Jr(n,r)(t))};Le.capture=(t,e,r)=>{let n=by.isWindows(r),i=Jr.makeRe(String(t),{...r,capture:!0}).exec(n?by.toPosixSlashes(e):e);if(i)return i.slice(1).map(a=>a===void 0?"":a)};Le.makeRe=(...t)=>Jr.makeRe(...t);Le.scan=(...t)=>Jr.scan(...t);Le.parse=(t,e)=>{let r=[];for(let n of[].concat(t||[]))for(let o of dF(String(n),e))r.push(Jr.parse(o,e));return r};Le.braces=(t,e)=>{if(typeof t!="string")throw new TypeError("Expected a string");return e&&e.nobrace===!0||!pF(t)?[t]:dF(t,e)};Le.braceExpand=(t,e)=>{if(typeof t!="string")throw new TypeError("Expected a string");return Le.braces(t,{...e,expand:!0})};Le.hasBraces=pF;hF.exports=Le});var QF=x((FZ,vn)=>{var Ie=require("fs"),kf=require("os"),wt=require("path"),BF=require("crypto"),Zr={fs:Ie.constants,os:kf.constants},NF="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",MF=/XXXXXX/,C7=3,qF=(Zr.O_CREAT||Zr.fs.O_CREAT)|(Zr.O_EXCL||Zr.fs.O_EXCL)|(Zr.O_RDWR||Zr.fs.O_RDWR),E7=kf.platform()==="win32",_7=Zr.EBADF||Zr.os.errno.EBADF,S7=Zr.ENOENT||Zr.os.errno.ENOENT,HF=448,VF=384,x7="exit",ba=[],zF=Ie.rmdirSync.bind(Ie),KF=!1;function A7(t,e){return Ie.rm(t,{recursive:!0},e)}function GF(t){return Ie.rmSync(t,{recursive:!0})}function _y(t,e){let r=wa(t,e),n=r[0],o=r[1];N7(n,function(i,a){if(i)return o(i);let s=a.tries;(function u(){try{let c=YF(a);Ie.stat(c,function(f){if(!f)return s-- >0?u():o(new Error("Could not get a unique tmp filename, max tries reached "+c));o(null,c)})}catch(c){o(c)}})()})}function Sy(t){let e=wa(t),r=e[0],n=L7(r),o=n.tries;do{let i=YF(n);try{Ie.statSync(i)}catch{return i}}while(o-- >0);throw new Error("Could not get a unique tmp filename, max tries reached")}function O7(t,e){let r=wa(t,e),n=r[0],o=r[1];_y(n,function(a,s){if(a)return o(a);Ie.open(s,qF,n.mode||VF,function(c,f){if(c)return o(c);if(n.discardDescriptor)return Ie.close(f,function(p){return o(p,s,void 0,Cy(s,-1,n,!1))});{let d=n.discardDescriptor||n.detachDescriptor;o(null,s,f,Cy(s,d?-1:f,n,!1))}})})}function F7(t){let e=wa(t),r=e[0],n=r.discardDescriptor||r.detachDescriptor,o=Sy(r),i=Ie.openSync(o,qF,r.mode||VF);return r.discardDescriptor&&(Ie.closeSync(i),i=void 0),{name:o,fd:i,removeCallback:Cy(o,n?-1:i,r,!0)}}function k7(t,e){let r=wa(t,e),n=r[0],o=r[1];_y(n,function(a,s){if(a)return o(a);Ie.mkdir(s,n.mode||HF,function(c){if(c)return o(c);o(null,s,WF(s,n,!1))})})}function P7(t){let e=wa(t),r=e[0],n=Sy(r);return Ie.mkdirSync(n,r.mode||HF),{name:n,removeCallback:WF(n,r,!0)}}function $7(t,e){let r=function(n){if(n&&!Ey(n))return e(n);e()};0<=t[0]?Ie.close(t[0],function(){Ie.unlink(t[1],r)}):Ie.unlink(t[1],r)}function I7(t){let e=null;try{0<=t[0]&&Ie.closeSync(t[0])}catch(r){if(!j7(r)&&!Ey(r))throw r}finally{try{Ie.unlinkSync(t[1])}catch(r){Ey(r)||(e=r)}}if(e!==null)throw e}function Cy(t,e,r,n){let o=Ff(I7,[e,t],n),i=Ff($7,[e,t],n,o);return r.keep||ba.unshift(o),n?o:i}function WF(t,e,r){let n=e.unsafeCleanup?A7:Ie.rmdir.bind(Ie),o=e.unsafeCleanup?GF:zF,i=Ff(o,t,r),a=Ff(n,t,r,i);return e.keep||ba.unshift(i),r?i:a}function Ff(t,e,r,n){let o=!1;return function i(a){if(!o){let s=n||i,u=ba.indexOf(s);return u>=0&&ba.splice(u,1),o=!0,r||t===zF||t===GF?t(e):t(e,a||function(){})}}}function T7(){if(KF)for(;ba.length;)try{ba[0]()}catch{}}function LF(t){let e=[],r=null;try{r=BF.randomBytes(t)}catch{r=BF.pseudoRandomBytes(t)}for(let n=0;n<t;n++)e.push(NF[r[n]%NF.length]);return e.join("")}function cr(t){return typeof t>"u"}function wa(t,e){if(typeof t=="function")return[{},t];if(cr(t))return[{},e];let r={};for(let n of Object.getOwnPropertyNames(t))r[n]=t[n];return[r,e]}function R7(t,e,r){let n=wt.isAbsolute(t)?t:wt.join(e,t);Ie.stat(n,function(o){o?Ie.realpath(wt.dirname(n),function(i,a){if(i)return r(i);r(null,wt.join(a,wt.basename(n)))}):Ie.realpath(n,r)})}function B7(t,e){let r=wt.isAbsolute(t)?t:wt.join(e,t);try{return Ie.statSync(r),Ie.realpathSync(r)}catch{let o=Ie.realpathSync(wt.dirname(r));return wt.join(o,wt.basename(r))}}function YF(t){let e=t.tmpdir;if(!cr(t.name))return wt.join(e,t.dir,t.name);if(!cr(t.template))return wt.join(e,t.dir,t.template).replace(MF,LF(6));let r=[t.prefix?t.prefix:"tmp","-",process.pid,"-",LF(12),t.postfix?"-"+t.postfix:""].join("");return wt.join(e,t.dir,r)}function JF(t){if(!cr(t.name)){let e=t.name;if(wt.isAbsolute(e))throw new Error(`name option must not contain an absolute path, found "${e}".`);let r=wt.basename(e);if(r===".."||r==="."||r!==e)throw new Error(`name option must not contain a path, found "${e}".`)}if(!cr(t.template)&&!t.template.match(MF))throw new Error(`Invalid template, found "${t.template}".`);if(!cr(t.tries)&&isNaN(t.tries)||t.tries<0)throw new Error(`Invalid tries, found "${t.tries}".`);t.tries=cr(t.name)?t.tries||C7:1,t.keep=!!t.keep,t.detachDescriptor=!!t.detachDescriptor,t.discardDescriptor=!!t.discardDescriptor,t.unsafeCleanup=!!t.unsafeCleanup,t.prefix=cr(t.prefix)?"":t.prefix,t.postfix=cr(t.postfix)?"":t.postfix}function jF(t,e,r,n){if(cr(e))return n(null);R7(e,r,function(o,i){if(o)return n(o);let a=wt.relative(r,i);if(!i.startsWith(r))return n(new Error(`${t} option must be relative to "${r}", found "${a}".`));n(null,a)})}function UF(t,e,r){if(cr(e))return;let n=B7(e,r),o=wt.relative(r,n);if(!n.startsWith(r))throw new Error(`${t} option must be relative to "${r}", found "${o}".`);return o}function N7(t,e){M7(t,function(r,n){if(r)return e(r);t.tmpdir=n;try{JF(t,n)}catch(o){return e(o)}jF("dir",t.dir,n,function(o,i){if(o)return e(o);t.dir=cr(i)?"":i,jF("template",t.template,n,function(a,s){if(a)return e(a);t.template=s,e(null,t)})})})}function L7(t){let e=t.tmpdir=ZF(t);JF(t,e);let r=UF("dir",t.dir,e);return t.dir=cr(r)?"":r,t.template=UF("template",t.template,e),t}function j7(t){return XF(t,-_7,"EBADF")}function Ey(t){return XF(t,-S7,"ENOENT")}function XF(t,e,r){return E7?t.code===r:t.code===r&&t.errno===e}function U7(){KF=!0}function M7(t,e){return Ie.realpath(t&&t.tmpdir||kf.tmpdir(),e)}function ZF(t){return Ie.realpathSync(t&&t.tmpdir||kf.tmpdir())}process.addListener(x7,T7);Object.defineProperty(vn.exports,"tmpdir",{enumerable:!0,configurable:!1,get:function(){return ZF()}});vn.exports.dir=k7;vn.exports.dirSync=P7;vn.exports.file=O7;vn.exports.fileSync=F7;vn.exports.tmpName=_y;vn.exports.tmpNameSync=Sy;vn.exports.setGracefulCleanup=U7});var $f=require("node:process");var Yy=pe(Wy(),1),{program:at,createCommand:Sq,createArgument:xq,createOption:Aq,CommanderError:Oq,InvalidArgumentError:Fq,InvalidOptionArgumentError:kq,Command:Pq,Argument:$q,Option:Iq,Help:Tq}=Yy.default;var xr={name:"@capgo/cli",version:"7.56.3",description:"A CLI to upload to capgo servers",author:"Martin martin@capgo.app",license:"Apache 2.0",homepage:"https://github.com/Cap-go/CLI#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","sdk"],exports:{".":{import:"./dist/index.js",require:"./dist/index.js"},"./sdk":{types:"./dist/src/sdk.d.ts",import:"./dist/src/sdk.js",require:"./dist/src/sdk.js"}},main:"dist/index.js",types:"dist/src/index.d.ts",bin:{capgo:"dist/index.js"},engines:{npm:">=8.0.0",node:">=20.0.0"},scripts:{build:"tsc && node build.mjs",dev:"NODE_ENV=development ncc build","no-debug":"node dist/index.js","dev-build":"SUPA_DB=development ncc build",pack:"pkg",types:"npx --yes supabase gen types typescript --project-id=xvwzpoazmxkqosrdewyv > src/types/supabase.types.ts",typecheck:"tsc --noEmit",lint:'eslint "src/**/*.ts" --fix',"check-posix-paths":"node test/check-posix-paths.js","generate-docs":"node dist/index.js generate-docs README.md","test:bundle":"bun test/test-bundle.mjs","test:functional":"bun test/test-functional.mjs","test:semver":"bun test/test-semver-validation.mjs","test:version-edge-cases":"bun test/test-version-validation.mjs","test:regex":"bun test/test-regex-validation.mjs","test:upload":"bun test/test-upload-validation.mjs","test:credentials":"bun test/test-credentials.mjs","test:credentials-validation":"bun test/test-credentials-validation.mjs","test:version-detection":"node test/test-get-installed-version.mjs","test:version-detection:setup":"./test/fixtures/setup-test-projects.sh",test:"bun run test:bundle && bun run test:functional && bun run test:semver && bun run test:version-edge-cases && bun run test:regex && bun run test:upload && bun run test:credentials && bun run test:credentials-validation && bun run test:version-detection"},devDependencies:{"@antfu/eslint-config":"^6.1.0","@bradenmacdonald/s3-lite-client":"npm:@jsr/bradenmacdonald__s3-lite-client@0.9.4","@capacitor/cli":"^7.4.4","@capgo/find-package-manager":"^0.0.18","@clack/prompts":"^0.11.0","@sauber/table":"npm:@jsr/sauber__table","@std/semver":"npm:@jsr/std__semver@1.0.6","@supabase/supabase-js":"^2.79.0","@types/adm-zip":"^0.5.7","@types/node":"^24.9.1","@types/prettyjson":"^0.0.33","@types/tmp":"^0.2.6","@vercel/ncc":"^0.38.4","adm-zip":"^0.5.16","ci-info":"^4.3.1",commander:"^14.0.2",esbuild:"^0.27.0",eslint:"^9.38.0","git-format-staged":"3.1.1",husky:"^9.1.7","is-wsl":"^3.1.0",open:"^11.0.0",prettyjson:"^1.2.5",tmp:"^0.2.5","tus-js-client":"^4.3.1",typescript:"^5.9.3"}};var ca=require("node:fs");var vt=pe(ed(),1),Ko=require("node:process"),En=pe(require("node:readline"),1),id=pe(require("node:readline"),1),aD=require("node:stream"),sD=pe(rd(),1);function B2({onlyFirst:t=!1}={}){let e=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?(?:\\u0007|\\u001B\\u005C|\\u009C))","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|");return new RegExp(e,t?void 0:"g")}var N2=B2();function uD(t){if(typeof t!="string")throw new TypeError(`Expected a \`string\`, got \`${typeof t}\``);return t.replace(N2,"")}function cD(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var lD={exports:{}};(function(t){var e={};t.exports=e,e.eastAsianWidth=function(n){var o=n.charCodeAt(0),i=n.length==2?n.charCodeAt(1):0,a=o;return 55296<=o&&o<=56319&&56320<=i&&i<=57343&&(o&=1023,i&=1023,a=o<<10|i,a+=65536),a==12288||65281<=a&&a<=65376||65504<=a&&a<=65510?"F":a==8361||65377<=a&&a<=65470||65474<=a&&a<=65479||65482<=a&&a<=65487||65490<=a&&a<=65495||65498<=a&&a<=65500||65512<=a&&a<=65518?"H":4352<=a&&a<=4447||4515<=a&&a<=4519||4602<=a&&a<=4607||9001<=a&&a<=9002||11904<=a&&a<=11929||11931<=a&&a<=12019||12032<=a&&a<=12245||12272<=a&&a<=12283||12289<=a&&a<=12350||12353<=a&&a<=12438||12441<=a&&a<=12543||12549<=a&&a<=12589||12593<=a&&a<=12686||12688<=a&&a<=12730||12736<=a&&a<=12771||12784<=a&&a<=12830||12832<=a&&a<=12871||12880<=a&&a<=13054||13056<=a&&a<=19903||19968<=a&&a<=42124||42128<=a&&a<=42182||43360<=a&&a<=43388||44032<=a&&a<=55203||55216<=a&&a<=55238||55243<=a&&a<=55291||63744<=a&&a<=64255||65040<=a&&a<=65049||65072<=a&&a<=65106||65108<=a&&a<=65126||65128<=a&&a<=65131||110592<=a&&a<=110593||127488<=a&&a<=127490||127504<=a&&a<=127546||127552<=a&&a<=127560||127568<=a&&a<=127569||131072<=a&&a<=194367||177984<=a&&a<=196605||196608<=a&&a<=262141?"W":32<=a&&a<=126||162<=a&&a<=163||165<=a&&a<=166||a==172||a==175||10214<=a&&a<=10221||10629<=a&&a<=10630?"Na":a==161||a==164||167<=a&&a<=168||a==170||173<=a&&a<=174||176<=a&&a<=180||182<=a&&a<=186||188<=a&&a<=191||a==198||a==208||215<=a&&a<=216||222<=a&&a<=225||a==230||232<=a&&a<=234||236<=a&&a<=237||a==240||242<=a&&a<=243||247<=a&&a<=250||a==252||a==254||a==257||a==273||a==275||a==283||294<=a&&a<=295||a==299||305<=a&&a<=307||a==312||319<=a&&a<=322||a==324||328<=a&&a<=331||a==333||338<=a&&a<=339||358<=a&&a<=359||a==363||a==462||a==464||a==466||a==468||a==470||a==472||a==474||a==476||a==593||a==609||a==708||a==711||713<=a&&a<=715||a==717||a==720||728<=a&&a<=731||a==733||a==735||768<=a&&a<=879||913<=a&&a<=929||931<=a&&a<=937||945<=a&&a<=961||963<=a&&a<=969||a==1025||1040<=a&&a<=1103||a==1105||a==8208||8211<=a&&a<=8214||8216<=a&&a<=8217||8220<=a&&a<=8221||8224<=a&&a<=8226||8228<=a&&a<=8231||a==8240||8242<=a&&a<=8243||a==8245||a==8251||a==8254||a==8308||a==8319||8321<=a&&a<=8324||a==8364||a==8451||a==8453||a==8457||a==8467||a==8470||8481<=a&&a<=8482||a==8486||a==8491||8531<=a&&a<=8532||8539<=a&&a<=8542||8544<=a&&a<=8555||8560<=a&&a<=8569||a==8585||8592<=a&&a<=8601||8632<=a&&a<=8633||a==8658||a==8660||a==8679||a==8704||8706<=a&&a<=8707||8711<=a&&a<=8712||a==8715||a==8719||a==8721||a==8725||a==8730||8733<=a&&a<=8736||a==8739||a==8741||8743<=a&&a<=8748||a==8750||8756<=a&&a<=8759||8764<=a&&a<=8765||a==8776||a==8780||a==8786||8800<=a&&a<=8801||8804<=a&&a<=8807||8810<=a&&a<=8811||8814<=a&&a<=8815||8834<=a&&a<=8835||8838<=a&&a<=8839||a==8853||a==8857||a==8869||a==8895||a==8978||9312<=a&&a<=9449||9451<=a&&a<=9547||9552<=a&&a<=9587||9600<=a&&a<=9615||9618<=a&&a<=9621||9632<=a&&a<=9633||9635<=a&&a<=9641||9650<=a&&a<=9651||9654<=a&&a<=9655||9660<=a&&a<=9661||9664<=a&&a<=9665||9670<=a&&a<=9672||a==9675||9678<=a&&a<=9681||9698<=a&&a<=9701||a==9711||9733<=a&&a<=9734||a==9737||9742<=a&&a<=9743||9748<=a&&a<=9749||a==9756||a==9758||a==9792||a==9794||9824<=a&&a<=9825||9827<=a&&a<=9829||9831<=a&&a<=9834||9836<=a&&a<=9837||a==9839||9886<=a&&a<=9887||9918<=a&&a<=9919||9924<=a&&a<=9933||9935<=a&&a<=9953||a==9955||9960<=a&&a<=9983||a==10045||a==10071||10102<=a&&a<=10111||11093<=a&&a<=11097||12872<=a&&a<=12879||57344<=a&&a<=63743||65024<=a&&a<=65039||a==65533||127232<=a&&a<=127242||127248<=a&&a<=127277||127280<=a&&a<=127337||127344<=a&&a<=127386||917760<=a&&a<=917999||983040<=a&&a<=1048573||1048576<=a&&a<=1114109?"A":"N"},e.characterLength=function(n){var o=this.eastAsianWidth(n);return o=="F"||o=="W"||o=="A"?2:1};function r(n){return n.match(/[\uD800-\uDBFF][\uDC00-\uDFFF]|[^\uD800-\uDFFF]/g)||[]}e.length=function(n){for(var o=r(n),i=0,a=0;a<o.length;a++)i=i+this.characterLength(o[a]);return i},e.slice=function(n,o,i){textLen=e.length(n),o=o||0,i=i||1,o<0&&(o=textLen+o),i<0&&(i=textLen+i);for(var a="",s=0,u=r(n),c=0;c<u.length;c++){var f=u[c],d=e.length(f);if(s>=o-(d==2?1:0))if(s+d<=i)a+=f;else break;s+=d}return a}})(lD);var L2=lD.exports,j2=cD(L2),U2=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},M2=cD(U2);function _a(t,e={}){if(typeof t!="string"||t.length===0||(e={ambiguousIsNarrow:!0,...e},t=uD(t),t.length===0))return 0;t=t.replace(M2()," ");let r=e.ambiguousIsNarrow?1:2,n=0;for(let o of t){let i=o.codePointAt(0);if(!(i<=31||i>=127&&i<=159||i>=768&&i<=879))switch(j2.eastAsianWidth(o)){case"F":case"W":n+=2;break;case"A":n+=r;break;default:n+=1}}return n}var nd=10,Qy=(t=0)=>e=>`\x1B[${e+t}m`,eD=(t=0)=>e=>`\x1B[${38+t};5;${e}m`,tD=(t=0)=>(e,r,n)=>`\x1B[${38+t};2;${e};${r};${n}m`,je={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(je.modifier);var q2=Object.keys(je.color),H2=Object.keys(je.bgColor);[...q2,...H2];function V2(){let t=new Map;for(let[e,r]of Object.entries(je)){for(let[n,o]of Object.entries(r))je[n]={open:`\x1B[${o[0]}m`,close:`\x1B[${o[1]}m`},r[n]=je[n],t.set(o[0],o[1]);Object.defineProperty(je,e,{value:r,enumerable:!1})}return Object.defineProperty(je,"codes",{value:t,enumerable:!1}),je.color.close="\x1B[39m",je.bgColor.close="\x1B[49m",je.color.ansi=Qy(),je.color.ansi256=eD(),je.color.ansi16m=tD(),je.bgColor.ansi=Qy(nd),je.bgColor.ansi256=eD(nd),je.bgColor.ansi16m=tD(nd),Object.defineProperties(je,{rgbToAnsi256:{value:(e,r,n)=>e===r&&r===n?e<8?16:e>248?231:Math.round((e-8)/247*24)+232:16+36*Math.round(e/255*5)+6*Math.round(r/255*5)+Math.round(n/255*5),enumerable:!1},hexToRgb:{value:e=>{let r=/[a-f\d]{6}|[a-f\d]{3}/i.exec(e.toString(16));if(!r)return[0,0,0];let[n]=r;n.length===3&&(n=[...n].map(i=>i+i).join(""));let o=Number.parseInt(n,16);return[o>>16&255,o>>8&255,o&255]},enumerable:!1},hexToAnsi256:{value:e=>je.rgbToAnsi256(...je.hexToRgb(e)),enumerable:!1},ansi256ToAnsi:{value:e=>{if(e<8)return 30+e;if(e<16)return 90+(e-8);let r,n,o;if(e>=232)r=((e-232)*10+8)/255,n=r,o=r;else{e-=16;let s=e%36;r=Math.floor(e/36)/5,n=Math.floor(s/6)/5,o=s%6/5}let i=Math.max(r,n,o)*2;if(i===0)return 30;let a=30+(Math.round(o)<<2|Math.round(n)<<1|Math.round(r));return i===2&&(a+=60),a},enumerable:!1},rgbToAnsi:{value:(e,r,n)=>je.ansi256ToAnsi(je.rgbToAnsi256(e,r,n)),enumerable:!1},hexToAnsi:{value:e=>je.ansi256ToAnsi(je.hexToAnsi256(e)),enumerable:!1}}),je}var z2=V2(),hu=new Set(["\x1B","\x9B"]),K2=39,sd="\x07",fD="[",G2="]",dD="m",ud=`${G2}8;;`,rD=t=>`${hu.values().next().value}${fD}${t}${dD}`,nD=t=>`${hu.values().next().value}${ud}${t}${sd}`,W2=t=>t.split(" ").map(e=>_a(e)),od=(t,e,r)=>{let n=[...e],o=!1,i=!1,a=_a(uD(t[t.length-1]));for(let[s,u]of n.entries()){let c=_a(u);if(a+c<=r?t[t.length-1]+=u:(t.push(u),a=0),hu.has(u)&&(o=!0,i=n.slice(s+1).join("").startsWith(ud)),o){i?u===sd&&(o=!1,i=!1):u===dD&&(o=!1);continue}a+=c,a===r&&s<n.length-1&&(t.push(""),a=0)}!a&&t[t.length-1].length>0&&t.length>1&&(t[t.length-2]+=t.pop())},Y2=t=>{let e=t.split(" "),r=e.length;for(;r>0&&!(_a(e[r-1])>0);)r--;return r===e.length?t:e.slice(0,r).join(" ")+e.slice(r).join("")},J2=(t,e,r={})=>{if(r.trim!==!1&&t.trim()==="")return"";let n="",o,i,a=W2(t),s=[""];for(let[c,f]of t.split(" ").entries()){r.trim!==!1&&(s[s.length-1]=s[s.length-1].trimStart());let d=_a(s[s.length-1]);if(c!==0&&(d>=e&&(r.wordWrap===!1||r.trim===!1)&&(s.push(""),d=0),(d>0||r.trim===!1)&&(s[s.length-1]+=" ",d++)),r.hard&&a[c]>e){let p=e-d,h=1+Math.floor((a[c]-p-1)/e);Math.floor((a[c]-1)/e)<h&&s.push(""),od(s,f,e);continue}if(d+a[c]>e&&d>0&&a[c]>0){if(r.wordWrap===!1&&d<e){od(s,f,e);continue}s.push("")}if(d+a[c]>e&&r.wordWrap===!1){od(s,f,e);continue}s[s.length-1]+=f}r.trim!==!1&&(s=s.map(c=>Y2(c)));let u=[...s.join(`
|
|
106
|
+
tell application "System Events" to get value of property list item "CFBundleName" of property list file (app_path & ":Contents:Info.plist")`)}var hA=Qe(()=>{pA()});async function xg(t=BM){let{stdout:e}=await t("reg",["QUERY"," HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\Shell\\Associations\\UrlAssociations\\http\\UserChoice","/v","ProgId"]),r=/ProgId\s*REG_SZ\s*(?<id>\S+)/.exec(e);if(!r)throw new Ll(`Cannot find Windows browser in stdout: ${JSON.stringify(e)}`);let{id:n}=r.groups,o=yA[n];if(!o)throw new Ll(`Unknown browser ID: ${n}`);return o}var mA,gA,BM,yA,Sg,Ll,Ag=Qe(()=>{mA=require("node:util"),gA=require("node:child_process"),BM=(0,mA.promisify)(gA.execFile),yA={MSEdgeHTM:{name:"Edge",id:"com.microsoft.edge"},MSEdgeBHTML:{name:"Edge Beta",id:"com.microsoft.edge.beta"},MSEdgeDHTML:{name:"Edge Dev",id:"com.microsoft.edge.dev"},AppXq0fevzme2pys62n3e0fbqa7peapykr8v:{name:"Edge",id:"com.microsoft.edge.old"},ChromeHTML:{name:"Chrome",id:"com.google.chrome"},ChromeBHTML:{name:"Chrome Beta",id:"com.google.chrome.beta"},ChromeDHTML:{name:"Chrome Dev",id:"com.google.chrome.dev"},ChromiumHTM:{name:"Chromium",id:"org.chromium.Chromium"},BraveHTML:{name:"Brave",id:"com.brave.Browser"},BraveBHTML:{name:"Brave Beta",id:"com.brave.Browser.beta"},BraveDHTML:{name:"Brave Dev",id:"com.brave.Browser.dev"},BraveSSHTM:{name:"Brave Nightly",id:"com.brave.Browser.nightly"},FirefoxURL:{name:"Firefox",id:"org.mozilla.firefox"},OperaStable:{name:"Opera",id:"com.operasoftware.Opera"},VivaldiHTM:{name:"Vivaldi",id:"com.vivaldi.Vivaldi"},"IE.HTTP":{name:"Internet Explorer",id:"com.microsoft.ie"}},Sg=new Map(Object.entries(yA)),Ll=class extends Error{}});async function Og(){if(jl.default.platform==="darwin"){let t=await Cg();return{name:await _g(t),id:t}}if(jl.default.platform==="linux"){let{stdout:t}=await NM("xdg-mime",["query","default","x-scheme-handler/http"]),e=t.trim();return{name:LM(e.replace(/.desktop$/,"").replace("-"," ")),id:e}}if(jl.default.platform==="win32")return xg();throw new Error("Only macOS, Linux, and Windows are supported")}var DA,jl,bA,NM,LM,wA=Qe(()=>{DA=require("node:util"),jl=pe(require("node:process"),1),bA=require("node:child_process");cA();hA();Ag();Ag();NM=(0,DA.promisify)(bA.execFile),LM=t=>t.toLowerCase().replaceAll(/(?:^|\s|-)\S/g,e=>e.toUpperCase())});var Ul,jM,vA,CA=Qe(()=>{Ul=pe(require("node:process"),1),jM=!!(Ul.default.env.SSH_CONNECTION||Ul.default.env.SSH_CLIENT||Ul.default.env.SSH_TTY),vA=jM});var $g={};Qr($g,{apps:()=>To,default:()=>qM,openApp:()=>MM});function xA(t){if(typeof t=="string"||Array.isArray(t))return t;let{[_A]:e}=t;if(!e)throw new Error(`${_A} is not supported`);return e}function ks({[ea]:t},{wsl:e}={}){if(e&&pn)return xA(e);if(!t)throw new Error(`${ea} is not supported`);return xA(t)}var kg,Pg,OA,FA,ql,AA,Ml,Fg,EA,ea,_A,SA,Fs,UM,MM,To,qM,Ig=Qe(()=>{kg=pe(require("node:process"),1),Pg=pe(require("node:path"),1),OA=require("node:url"),FA=pe(require("node:child_process"),1),ql=pe(require("node:fs/promises"),1);oA();vg();iA();wA();gg();CA();AA={},Ml=Symbol("fallbackAttempt"),Fg=AA.url?Pg.default.dirname((0,OA.fileURLToPath)(AA.url)):"",EA=Pg.default.join(Fg,"xdg-open"),{platform:ea,arch:_A}=kg.default,SA=async(t,e)=>{if(t.length===0)return;let r=[];for(let n of t)try{return await e(n)}catch(o){r.push(o)}throw new AggregateError(r,"Failed to open in all supported apps")},Fs=async t=>{t={wait:!1,background:!1,newInstance:!1,allowNonzeroExitCode:!1,...t};let e=t[Ml]===!0;if(delete t[Ml],Array.isArray(t.app))return SA(t.app,c=>Fs({...t,app:c,[Ml]:!0}));let{name:r,arguments:n=[]}=t.app??{};if(n=[...n],Array.isArray(r))return SA(r,c=>Fs({...t,app:{name:c,arguments:n},[Ml]:!0}));if(r==="browser"||r==="browserPrivate"){let c={"com.google.chrome":"chrome","google-chrome.desktop":"chrome","com.brave.browser":"brave","org.mozilla.firefox":"firefox","firefox.desktop":"firefox","com.microsoft.msedge":"edge","com.microsoft.edge":"edge","com.microsoft.edgemac":"edge","microsoft-edge.desktop":"edge","com.apple.safari":"safari"},f={chrome:"--incognito",brave:"--incognito",firefox:"--private-window",edge:"--inPrivate"},d;if(pn){let p=await rA();d=Sg.get(p)??{}}else d=await Og();if(d.id in c){let p=c[d.id.toLowerCase()];if(r==="browserPrivate"){if(p==="safari")throw new Error("Safari doesn't support opening in private mode via command line");n.push(f[p])}return Fs({...t,app:{name:To[p],arguments:n}})}throw new Error(`${d.name} is not supported as a default browser`)}let o,i=[],a={},s=!1;if(pn&&!Qi()&&!vA&&!r&&(s=await tA()),ea==="darwin")o="open",t.wait&&i.push("--wait-apps"),t.background&&i.push("--background"),t.newInstance&&i.push("--new"),r&&i.push("-a",r);else if(ea==="win32"||s){o=await Nl(),i.push(...rr.argumentsPrefix),pn||(a.windowsVerbatimArguments=!0),pn&&t.target&&(t.target=await nA(t.target));let c=["$ProgressPreference = 'SilentlyContinue';","Start"];t.wait&&c.push("-Wait"),r?(c.push(rr.escapeArgument(r)),t.target&&n.push(t.target)):t.target&&c.push(rr.escapeArgument(t.target)),n.length>0&&(n=n.map(f=>rr.escapeArgument(f)),c.push("-ArgumentList",n.join(","))),t.target=rr.encodeCommand(c.join(" ")),t.wait||(a.stdio="ignore")}else{if(r)o=r;else{let c=!Fg||Fg==="/",f=!1;try{await ql.default.access(EA,ql.constants.X_OK),f=!0}catch{}o=kg.default.versions.electron??(ea==="android"||c||!f)?"xdg-open":EA}n.length>0&&i.push(...n),t.wait||(a.stdio="ignore",a.detached=!0)}ea==="darwin"&&n.length>0&&i.push("--args",...n),t.target&&i.push(t.target);let u=FA.default.spawn(o,i,a);return t.wait?new Promise((c,f)=>{u.once("error",f),u.once("close",d=>{if(!t.allowNonzeroExitCode&&d!==0){f(new Error(`Exited with code ${d}`));return}c(u)})}):e?new Promise((c,f)=>{u.once("error",f),u.once("spawn",()=>{u.once("close",d=>{if(u.off("error",f),d!==0){f(new Error(`Exited with code ${d}`));return}u.unref(),c(u)})})}):(u.unref(),new Promise((c,f)=>{u.once("error",f),u.once("spawn",()=>{u.off("error",f),c(u)})}))},UM=(t,e)=>{if(typeof t!="string")throw new TypeError("Expected a `target`");return Fs({...e,target:t})},MM=(t,e)=>{if(typeof t!="string"&&!Array.isArray(t))throw new TypeError("Expected a valid `name`");let{arguments:r=[]}=e??{};if(r!=null&&!Array.isArray(r))throw new TypeError("Expected `appArguments` as Array type");return Fs({...e,app:{name:t,arguments:r}})};To={browser:"browser",browserPrivate:"browserPrivate"};Io(To,"chrome",()=>ks({darwin:"google chrome",win32:"chrome",linux:["google-chrome","google-chrome-stable","chromium","chromium-browser"]},{wsl:{ia32:"/mnt/c/Program Files (x86)/Google/Chrome/Application/chrome.exe",x64:["/mnt/c/Program Files/Google/Chrome/Application/chrome.exe","/mnt/c/Program Files (x86)/Google/Chrome/Application/chrome.exe"]}}));Io(To,"brave",()=>ks({darwin:"brave browser",win32:"brave",linux:["brave-browser","brave"]},{wsl:{ia32:"/mnt/c/Program Files (x86)/BraveSoftware/Brave-Browser/Application/brave.exe",x64:["/mnt/c/Program Files/BraveSoftware/Brave-Browser/Application/brave.exe","/mnt/c/Program Files (x86)/BraveSoftware/Brave-Browser/Application/brave.exe"]}}));Io(To,"firefox",()=>ks({darwin:"firefox",win32:String.raw`C:\Program Files\Mozilla Firefox\firefox.exe`,linux:"firefox"},{wsl:"/mnt/c/Program Files/Mozilla Firefox/firefox.exe"}));Io(To,"edge",()=>ks({darwin:"microsoft edge",win32:"msedge",linux:["microsoft-edge","microsoft-edge-dev"]},{wsl:"/mnt/c/Program Files (x86)/Microsoft/Edge/Application/msedge.exe"}));Io(To,"safari",()=>ks({darwin:"Safari"}));qM=UM});var yf=x(xr=>{"use strict";xr.isInteger=t=>typeof t=="number"?Number.isInteger(t):typeof t=="string"&&t.trim()!==""?Number.isInteger(Number(t)):!1;xr.find=(t,e)=>t.nodes.find(r=>r.type===e);xr.exceedsLimit=(t,e,r=1,n)=>n===!1||!xr.isInteger(t)||!xr.isInteger(e)?!1:(Number(e)-Number(t))/Number(r)>=n;xr.escapeNode=(t,e=0,r)=>{let n=t.nodes[e];n&&(r&&n.type===r||n.type==="open"||n.type==="close")&&n.escaped!==!0&&(n.value="\\"+n.value,n.escaped=!0)};xr.encloseBrace=t=>t.type!=="brace"?!1:t.commas>>0+t.ranges>>0===0?(t.invalid=!0,!0):!1;xr.isInvalidBrace=t=>t.type!=="brace"?!1:t.invalid===!0||t.dollar?!0:t.commas>>0+t.ranges>>0===0||t.open!==!0||t.close!==!0?(t.invalid=!0,!0):!1;xr.isOpenOrClose=t=>t.type==="open"||t.type==="close"?!0:t.open===!0||t.close===!0;xr.reduce=t=>t.reduce((e,r)=>(r.type==="text"&&e.push(r.value),r.type==="range"&&(r.type="text"),e),[]);xr.flatten=(...t)=>{let e=[],r=n=>{for(let o=0;o<n.length;o++){let i=n[o];if(Array.isArray(i)){r(i);continue}i!==void 0&&e.push(i)}return e};return r(t),e}});var Df=x((hX,c1)=>{"use strict";var u1=yf();c1.exports=(t,e={})=>{let r=(n,o={})=>{let i=e.escapeInvalid&&u1.isInvalidBrace(o),a=n.invalid===!0&&e.escapeInvalid===!0,s="";if(n.value)return(i||a)&&u1.isOpenOrClose(n)?"\\"+n.value:n.value;if(n.value)return n.value;if(n.nodes)for(let u of n.nodes)s+=r(u);return s};return r(t)}});var f1=x((mX,l1)=>{"use strict";l1.exports=function(t){return typeof t=="number"?t-t===0:typeof t=="string"&&t.trim()!==""?Number.isFinite?Number.isFinite(+t):isFinite(+t):!1}});var w1=x((gX,b1)=>{"use strict";var d1=f1(),qo=(t,e,r)=>{if(d1(t)===!1)throw new TypeError("toRegexRange: expected the first argument to be a number");if(e===void 0||t===e)return String(t);if(d1(e)===!1)throw new TypeError("toRegexRange: expected the second argument to be a number.");let n={relaxZeros:!0,...r};typeof n.strictZeros=="boolean"&&(n.relaxZeros=n.strictZeros===!1);let o=String(n.relaxZeros),i=String(n.shorthand),a=String(n.capture),s=String(n.wrap),u=t+":"+e+"="+o+i+a+s;if(qo.cache.hasOwnProperty(u))return qo.cache[u].result;let c=Math.min(t,e),f=Math.max(t,e);if(Math.abs(c-f)===1){let y=t+"|"+e;return n.capture?`(${y})`:n.wrap===!1?y:`(?:${y})`}let d=D1(t)||D1(e),p={min:t,max:e,a:c,b:f},h=[],m=[];if(d&&(p.isPadded=d,p.maxLen=String(p.max).length),c<0){let y=f<0?Math.abs(f):1;m=p1(y,Math.abs(c),p,n),c=p.a=0}return f>=0&&(h=p1(c,f,p,n)),p.negatives=m,p.positives=h,p.result=B5(m,h,n),n.capture===!0?p.result=`(${p.result})`:n.wrap!==!1&&h.length+m.length>1&&(p.result=`(?:${p.result})`),qo.cache[u]=p,p.result};function B5(t,e,r){let n=oy(t,e,"-",!1,r)||[],o=oy(e,t,"",!1,r)||[],i=oy(t,e,"-?",!0,r)||[];return n.concat(i).concat(o).join("|")}function N5(t,e){let r=1,n=1,o=m1(t,r),i=new Set([e]);for(;t<=o&&o<=e;)i.add(o),r+=1,o=m1(t,r);for(o=g1(e+1,n)-1;t<o&&o<=e;)i.add(o),n+=1,o=g1(e+1,n)-1;return i=[...i],i.sort(U5),i}function L5(t,e,r){if(t===e)return{pattern:t,count:[],digits:0};let n=j5(t,e),o=n.length,i="",a=0;for(let s=0;s<o;s++){let[u,c]=n[s];u===c?i+=u:u!=="0"||c!=="9"?i+=M5(u,c,r):a++}return a&&(i+=r.shorthand===!0?"\\d":"[0-9]"),{pattern:i,count:[a],digits:o}}function p1(t,e,r,n){let o=N5(t,e),i=[],a=t,s;for(let u=0;u<o.length;u++){let c=o[u],f=L5(String(a),String(c),n),d="";if(!r.isPadded&&s&&s.pattern===f.pattern){s.count.length>1&&s.count.pop(),s.count.push(f.count[0]),s.string=s.pattern+y1(s.count),a=c+1;continue}r.isPadded&&(d=q5(c,r,n)),f.string=d+f.pattern+y1(f.count),i.push(f),a=c+1,s=f}return i}function oy(t,e,r,n,o){let i=[];for(let a of t){let{string:s}=a;!n&&!h1(e,"string",s)&&i.push(r+s),n&&h1(e,"string",s)&&i.push(r+s)}return i}function j5(t,e){let r=[];for(let n=0;n<t.length;n++)r.push([t[n],e[n]]);return r}function U5(t,e){return t>e?1:e>t?-1:0}function h1(t,e,r){return t.some(n=>n[e]===r)}function m1(t,e){return Number(String(t).slice(0,-e)+"9".repeat(e))}function g1(t,e){return t-t%Math.pow(10,e)}function y1(t){let[e=0,r=""]=t;return r||e>1?`{${e+(r?","+r:"")}}`:""}function M5(t,e,r){return`[${t}${e-t===1?"":"-"}${e}]`}function D1(t){return/^-?(0+)\d/.test(t)}function q5(t,e,r){if(!e.isPadded)return t;let n=Math.abs(e.maxLen-String(t).length),o=r.relaxZeros!==!1;switch(n){case 0:return"";case 1:return o?"0?":"0";case 2:return o?"0{0,2}":"00";default:return o?`0{0,${n}}`:`0{${n}}`}}qo.cache={};qo.clearCache=()=>qo.cache={};b1.exports=qo});var sy=x((yX,A1)=>{"use strict";var H5=require("util"),C1=w1(),v1=t=>t!==null&&typeof t=="object"&&!Array.isArray(t),V5=t=>e=>t===!0?Number(e):String(e),iy=t=>typeof t=="number"||typeof t=="string"&&t!=="",Gs=t=>Number.isInteger(+t),ay=t=>{let e=`${t}`,r=-1;if(e[0]==="-"&&(e=e.slice(1)),e==="0")return!1;for(;e[++r]==="0";);return r>0},z5=(t,e,r)=>typeof t=="string"||typeof e=="string"?!0:r.stringify===!0,K5=(t,e,r)=>{if(e>0){let n=t[0]==="-"?"-":"";n&&(t=t.slice(1)),t=n+t.padStart(n?e-1:e,"0")}return r===!1?String(t):t},wf=(t,e)=>{let r=t[0]==="-"?"-":"";for(r&&(t=t.slice(1),e--);t.length<e;)t="0"+t;return r?"-"+t:t},G5=(t,e,r)=>{t.negatives.sort((s,u)=>s<u?-1:s>u?1:0),t.positives.sort((s,u)=>s<u?-1:s>u?1:0);let n=e.capture?"":"?:",o="",i="",a;return t.positives.length&&(o=t.positives.map(s=>wf(String(s),r)).join("|")),t.negatives.length&&(i=`-(${n}${t.negatives.map(s=>wf(String(s),r)).join("|")})`),o&&i?a=`${o}|${i}`:a=o||i,e.wrap?`(${n}${a})`:a},E1=(t,e,r,n)=>{if(r)return C1(t,e,{wrap:!1,...n});let o=String.fromCharCode(t);if(t===e)return o;let i=String.fromCharCode(e);return`[${o}-${i}]`},_1=(t,e,r)=>{if(Array.isArray(t)){let n=r.wrap===!0,o=r.capture?"":"?:";return n?`(${o}${t.join("|")})`:t.join("|")}return C1(t,e,r)},S1=(...t)=>new RangeError("Invalid range arguments: "+H5.inspect(...t)),x1=(t,e,r)=>{if(r.strictRanges===!0)throw S1([t,e]);return[]},W5=(t,e)=>{if(e.strictRanges===!0)throw new TypeError(`Expected step "${t}" to be a number`);return[]},Y5=(t,e,r=1,n={})=>{let o=Number(t),i=Number(e);if(!Number.isInteger(o)||!Number.isInteger(i)){if(n.strictRanges===!0)throw S1([t,e]);return[]}o===0&&(o=0),i===0&&(i=0);let a=o>i,s=String(t),u=String(e),c=String(r);r=Math.max(Math.abs(r),1);let f=ay(s)||ay(u)||ay(c),d=f?Math.max(s.length,u.length,c.length):0,p=f===!1&&z5(t,e,n)===!1,h=n.transform||V5(p);if(n.toRegex&&r===1)return E1(wf(t,d),wf(e,d),!0,n);let m={negatives:[],positives:[]},y=E=>m[E<0?"negatives":"positives"].push(Math.abs(E)),b=[],v=0;for(;a?o>=i:o<=i;)n.toRegex===!0&&r>1?y(o):b.push(K5(h(o,v),d,p)),o=a?o-r:o+r,v++;return n.toRegex===!0?r>1?G5(m,n,d):_1(b,null,{wrap:!1,...n}):b},J5=(t,e,r=1,n={})=>{if(!Gs(t)&&t.length>1||!Gs(e)&&e.length>1)return x1(t,e,n);let o=n.transform||(p=>String.fromCharCode(p)),i=`${t}`.charCodeAt(0),a=`${e}`.charCodeAt(0),s=i>a,u=Math.min(i,a),c=Math.max(i,a);if(n.toRegex&&r===1)return E1(u,c,!1,n);let f=[],d=0;for(;s?i>=a:i<=a;)f.push(o(i,d)),i=s?i-r:i+r,d++;return n.toRegex===!0?_1(f,null,{wrap:!1,options:n}):f},bf=(t,e,r,n={})=>{if(e==null&&iy(t))return[t];if(!iy(t)||!iy(e))return x1(t,e,n);if(typeof r=="function")return bf(t,e,1,{transform:r});if(v1(r))return bf(t,e,0,r);let o={...n};return o.capture===!0&&(o.wrap=!0),r=r||o.step||1,Gs(r)?Gs(t)&&Gs(e)?Y5(t,e,r,o):J5(t,e,Math.max(Math.abs(r),1),o):r!=null&&!v1(r)?W5(r,o):bf(t,e,1,r)};A1.exports=bf});var k1=x((DX,F1)=>{"use strict";var X5=sy(),O1=yf(),Z5=(t,e={})=>{let r=(n,o={})=>{let i=O1.isInvalidBrace(o),a=n.invalid===!0&&e.escapeInvalid===!0,s=i===!0||a===!0,u=e.escapeInvalid===!0?"\\":"",c="";if(n.isOpen===!0)return u+n.value;if(n.isClose===!0)return console.log("node.isClose",u,n.value),u+n.value;if(n.type==="open")return s?u+n.value:"(";if(n.type==="close")return s?u+n.value:")";if(n.type==="comma")return n.prev.type==="comma"?"":s?n.value:"|";if(n.value)return n.value;if(n.nodes&&n.ranges>0){let f=O1.reduce(n.nodes),d=X5(...f,{...e,wrap:!1,toRegex:!0,strictZeros:!0});if(d.length!==0)return f.length>1&&d.length>1?`(${d})`:d}if(n.nodes)for(let f of n.nodes)c+=r(f,n);return c};return r(t)};F1.exports=Z5});var I1=x((bX,$1)=>{"use strict";var Q5=sy(),P1=Df(),ga=yf(),Ho=(t="",e="",r=!1)=>{let n=[];if(t=[].concat(t),e=[].concat(e),!e.length)return t;if(!t.length)return r?ga.flatten(e).map(o=>`{${o}}`):e;for(let o of t)if(Array.isArray(o))for(let i of o)n.push(Ho(i,e,r));else for(let i of e)r===!0&&typeof i=="string"&&(i=`{${i}}`),n.push(Array.isArray(i)?Ho(o,i,r):o+i);return ga.flatten(n)},e9=(t,e={})=>{let r=e.rangeLimit===void 0?1e3:e.rangeLimit,n=(o,i={})=>{o.queue=[];let a=i,s=i.queue;for(;a.type!=="brace"&&a.type!=="root"&&a.parent;)a=a.parent,s=a.queue;if(o.invalid||o.dollar){s.push(Ho(s.pop(),P1(o,e)));return}if(o.type==="brace"&&o.invalid!==!0&&o.nodes.length===2){s.push(Ho(s.pop(),["{}"]));return}if(o.nodes&&o.ranges>0){let d=ga.reduce(o.nodes);if(ga.exceedsLimit(...d,e.step,r))throw new RangeError("expanded array length exceeds range limit. Use options.rangeLimit to increase or disable the limit.");let p=Q5(...d,e);p.length===0&&(p=P1(o,e)),s.push(Ho(s.pop(),p)),o.nodes=[];return}let u=ga.encloseBrace(o),c=o.queue,f=o;for(;f.type!=="brace"&&f.type!=="root"&&f.parent;)f=f.parent,c=f.queue;for(let d=0;d<o.nodes.length;d++){let p=o.nodes[d];if(p.type==="comma"&&o.type==="brace"){d===1&&c.push(""),c.push("");continue}if(p.type==="close"){s.push(Ho(s.pop(),c,u));continue}if(p.value&&p.type!=="open"){c.push(Ho(c.pop(),p.value));continue}p.nodes&&n(p,o)}return c};return ga.flatten(n(t))};$1.exports=e9});var R1=x((wX,T1)=>{"use strict";T1.exports={MAX_LENGTH:1e4,CHAR_0:"0",CHAR_9:"9",CHAR_UPPERCASE_A:"A",CHAR_LOWERCASE_A:"a",CHAR_UPPERCASE_Z:"Z",CHAR_LOWERCASE_Z:"z",CHAR_LEFT_PARENTHESES:"(",CHAR_RIGHT_PARENTHESES:")",CHAR_ASTERISK:"*",CHAR_AMPERSAND:"&",CHAR_AT:"@",CHAR_BACKSLASH:"\\",CHAR_BACKTICK:"`",CHAR_CARRIAGE_RETURN:"\r",CHAR_CIRCUMFLEX_ACCENT:"^",CHAR_COLON:":",CHAR_COMMA:",",CHAR_DOLLAR:"$",CHAR_DOT:".",CHAR_DOUBLE_QUOTE:'"',CHAR_EQUAL:"=",CHAR_EXCLAMATION_MARK:"!",CHAR_FORM_FEED:"\f",CHAR_FORWARD_SLASH:"/",CHAR_HASH:"#",CHAR_HYPHEN_MINUS:"-",CHAR_LEFT_ANGLE_BRACKET:"<",CHAR_LEFT_CURLY_BRACE:"{",CHAR_LEFT_SQUARE_BRACKET:"[",CHAR_LINE_FEED:`
|
|
107
|
+
`,CHAR_NO_BREAK_SPACE:"\xA0",CHAR_PERCENT:"%",CHAR_PLUS:"+",CHAR_QUESTION_MARK:"?",CHAR_RIGHT_ANGLE_BRACKET:">",CHAR_RIGHT_CURLY_BRACE:"}",CHAR_RIGHT_SQUARE_BRACKET:"]",CHAR_SEMICOLON:";",CHAR_SINGLE_QUOTE:"'",CHAR_SPACE:" ",CHAR_TAB:" ",CHAR_UNDERSCORE:"_",CHAR_VERTICAL_LINE:"|",CHAR_ZERO_WIDTH_NOBREAK_SPACE:"\uFEFF"}});var U1=x((vX,j1)=>{"use strict";var t9=Df(),{MAX_LENGTH:B1,CHAR_BACKSLASH:uy,CHAR_BACKTICK:r9,CHAR_COMMA:n9,CHAR_DOT:o9,CHAR_LEFT_PARENTHESES:i9,CHAR_RIGHT_PARENTHESES:a9,CHAR_LEFT_CURLY_BRACE:s9,CHAR_RIGHT_CURLY_BRACE:u9,CHAR_LEFT_SQUARE_BRACKET:N1,CHAR_RIGHT_SQUARE_BRACKET:L1,CHAR_DOUBLE_QUOTE:c9,CHAR_SINGLE_QUOTE:l9,CHAR_NO_BREAK_SPACE:f9,CHAR_ZERO_WIDTH_NOBREAK_SPACE:d9}=R1(),p9=(t,e={})=>{if(typeof t!="string")throw new TypeError("Expected a string");let r=e||{},n=typeof r.maxLength=="number"?Math.min(B1,r.maxLength):B1;if(t.length>n)throw new SyntaxError(`Input length (${t.length}), exceeds max characters (${n})`);let o={type:"root",input:t,nodes:[]},i=[o],a=o,s=o,u=0,c=t.length,f=0,d=0,p,h=()=>t[f++],m=y=>{if(y.type==="text"&&s.type==="dot"&&(s.type="text"),s&&s.type==="text"&&y.type==="text"){s.value+=y.value;return}return a.nodes.push(y),y.parent=a,y.prev=s,s=y,y};for(m({type:"bos"});f<c;)if(a=i[i.length-1],p=h(),!(p===d9||p===f9)){if(p===uy){m({type:"text",value:(e.keepEscaping?p:"")+h()});continue}if(p===L1){m({type:"text",value:"\\"+p});continue}if(p===N1){u++;let y;for(;f<c&&(y=h());){if(p+=y,y===N1){u++;continue}if(y===uy){p+=h();continue}if(y===L1&&(u--,u===0))break}m({type:"text",value:p});continue}if(p===i9){a=m({type:"paren",nodes:[]}),i.push(a),m({type:"text",value:p});continue}if(p===a9){if(a.type!=="paren"){m({type:"text",value:p});continue}a=i.pop(),m({type:"text",value:p}),a=i[i.length-1];continue}if(p===c9||p===l9||p===r9){let y=p,b;for(e.keepQuotes!==!0&&(p="");f<c&&(b=h());){if(b===uy){p+=b+h();continue}if(b===y){e.keepQuotes===!0&&(p+=b);break}p+=b}m({type:"text",value:p});continue}if(p===s9){d++;let b={type:"brace",open:!0,close:!1,dollar:s.value&&s.value.slice(-1)==="$"||a.dollar===!0,depth:d,commas:0,ranges:0,nodes:[]};a=m(b),i.push(a),m({type:"open",value:p});continue}if(p===u9){if(a.type!=="brace"){m({type:"text",value:p});continue}let y="close";a=i.pop(),a.close=!0,m({type:y,value:p}),d--,a=i[i.length-1];continue}if(p===n9&&d>0){if(a.ranges>0){a.ranges=0;let y=a.nodes.shift();a.nodes=[y,{type:"text",value:t9(a)}]}m({type:"comma",value:p}),a.commas++;continue}if(p===o9&&d>0&&a.commas===0){let y=a.nodes;if(d===0||y.length===0){m({type:"text",value:p});continue}if(s.type==="dot"){if(a.range=[],s.value+=p,s.type="range",a.nodes.length!==3&&a.nodes.length!==5){a.invalid=!0,a.ranges=0,s.type="text";continue}a.ranges++,a.args=[];continue}if(s.type==="range"){y.pop();let b=y[y.length-1];b.value+=s.value+p,s=b,a.ranges--;continue}m({type:"dot",value:p});continue}m({type:"text",value:p})}do if(a=i.pop(),a.type!=="root"){a.nodes.forEach(v=>{v.nodes||(v.type==="open"&&(v.isOpen=!0),v.type==="close"&&(v.isClose=!0),v.nodes||(v.type="text"),v.invalid=!0)});let y=i[i.length-1],b=y.nodes.indexOf(a);y.nodes.splice(b,1,...a.nodes)}while(i.length>0);return m({type:"eos"}),o};j1.exports=p9});var H1=x((CX,q1)=>{"use strict";var M1=Df(),h9=k1(),m9=I1(),g9=U1(),sr=(t,e={})=>{let r=[];if(Array.isArray(t))for(let n of t){let o=sr.create(n,e);Array.isArray(o)?r.push(...o):r.push(o)}else r=[].concat(sr.create(t,e));return e&&e.expand===!0&&e.nodupes===!0&&(r=[...new Set(r)]),r};sr.parse=(t,e={})=>g9(t,e);sr.stringify=(t,e={})=>M1(typeof t=="string"?sr.parse(t,e):t,e);sr.compile=(t,e={})=>(typeof t=="string"&&(t=sr.parse(t,e)),h9(t,e));sr.expand=(t,e={})=>{typeof t=="string"&&(t=sr.parse(t,e));let r=m9(t,e);return e.noempty===!0&&(r=r.filter(Boolean)),e.nodupes===!0&&(r=[...new Set(r)]),r};sr.create=(t,e={})=>t===""||t.length<3?[t]:e.expand!==!0?sr.compile(t,e):sr.expand(t,e);q1.exports=sr});var Ws=x((EX,W1)=>{"use strict";var y9=require("path"),Yr="\\\\/",V1=`[^${Yr}]`,wn="\\.",D9="\\+",b9="\\?",vf="\\/",w9="(?=.)",z1="[^/]",cy=`(?:${vf}|$)`,K1=`(?:^|${vf})`,ly=`${wn}{1,2}${cy}`,v9=`(?!${wn})`,C9=`(?!${K1}${ly})`,E9=`(?!${wn}{0,1}${cy})`,_9=`(?!${ly})`,S9=`[^.${vf}]`,x9=`${z1}*?`,G1={DOT_LITERAL:wn,PLUS_LITERAL:D9,QMARK_LITERAL:b9,SLASH_LITERAL:vf,ONE_CHAR:w9,QMARK:z1,END_ANCHOR:cy,DOTS_SLASH:ly,NO_DOT:v9,NO_DOTS:C9,NO_DOT_SLASH:E9,NO_DOTS_SLASH:_9,QMARK_NO_DOT:S9,STAR:x9,START_ANCHOR:K1},A9={...G1,SLASH_LITERAL:`[${Yr}]`,QMARK:V1,STAR:`${V1}*?`,DOTS_SLASH:`${wn}{1,2}(?:[${Yr}]|$)`,NO_DOT:`(?!${wn})`,NO_DOTS:`(?!(?:^|[${Yr}])${wn}{1,2}(?:[${Yr}]|$))`,NO_DOT_SLASH:`(?!${wn}{0,1}(?:[${Yr}]|$))`,NO_DOTS_SLASH:`(?!${wn}{1,2}(?:[${Yr}]|$))`,QMARK_NO_DOT:`[^.${Yr}]`,START_ANCHOR:`(?:^|[${Yr}])`,END_ANCHOR:`(?:[${Yr}]|$)`},O9={alnum:"a-zA-Z0-9",alpha:"a-zA-Z",ascii:"\\x00-\\x7F",blank:" \\t",cntrl:"\\x00-\\x1F\\x7F",digit:"0-9",graph:"\\x21-\\x7E",lower:"a-z",print:"\\x20-\\x7E ",punct:"\\-!\"#$%&'()\\*+,./:;<=>?@[\\]^_`{|}~",space:" \\t\\r\\n\\v\\f",upper:"A-Z",word:"A-Za-z0-9_",xdigit:"A-Fa-f0-9"};W1.exports={MAX_LENGTH:1024*64,POSIX_REGEX_SOURCE:O9,REGEX_BACKSLASH:/\\(?![*+?^${}(|)[\]])/g,REGEX_NON_SPECIAL_CHARS:/^[^@![\].,$*+?^{}()|\\/]+/,REGEX_SPECIAL_CHARS:/[-*+?.^${}(|)[\]]/,REGEX_SPECIAL_CHARS_BACKREF:/(\\?)((\W)(\3*))/g,REGEX_SPECIAL_CHARS_GLOBAL:/([-*+?.^${}(|)[\]])/g,REGEX_REMOVE_BACKSLASH:/(?:\[.*?[^\\]\]|\\(?=.))/g,REPLACEMENTS:{"***":"*","**/**":"**","**/**/**":"**"},CHAR_0:48,CHAR_9:57,CHAR_UPPERCASE_A:65,CHAR_LOWERCASE_A:97,CHAR_UPPERCASE_Z:90,CHAR_LOWERCASE_Z:122,CHAR_LEFT_PARENTHESES:40,CHAR_RIGHT_PARENTHESES:41,CHAR_ASTERISK:42,CHAR_AMPERSAND:38,CHAR_AT:64,CHAR_BACKWARD_SLASH:92,CHAR_CARRIAGE_RETURN:13,CHAR_CIRCUMFLEX_ACCENT:94,CHAR_COLON:58,CHAR_COMMA:44,CHAR_DOT:46,CHAR_DOUBLE_QUOTE:34,CHAR_EQUAL:61,CHAR_EXCLAMATION_MARK:33,CHAR_FORM_FEED:12,CHAR_FORWARD_SLASH:47,CHAR_GRAVE_ACCENT:96,CHAR_HASH:35,CHAR_HYPHEN_MINUS:45,CHAR_LEFT_ANGLE_BRACKET:60,CHAR_LEFT_CURLY_BRACE:123,CHAR_LEFT_SQUARE_BRACKET:91,CHAR_LINE_FEED:10,CHAR_NO_BREAK_SPACE:160,CHAR_PERCENT:37,CHAR_PLUS:43,CHAR_QUESTION_MARK:63,CHAR_RIGHT_ANGLE_BRACKET:62,CHAR_RIGHT_CURLY_BRACE:125,CHAR_RIGHT_SQUARE_BRACKET:93,CHAR_SEMICOLON:59,CHAR_SINGLE_QUOTE:39,CHAR_SPACE:32,CHAR_TAB:9,CHAR_UNDERSCORE:95,CHAR_VERTICAL_LINE:124,CHAR_ZERO_WIDTH_NOBREAK_SPACE:65279,SEP:y9.sep,extglobChars(t){return{"!":{type:"negate",open:"(?:(?!(?:",close:`))${t.STAR})`},"?":{type:"qmark",open:"(?:",close:")?"},"+":{type:"plus",open:"(?:",close:")+"},"*":{type:"star",open:"(?:",close:")*"},"@":{type:"at",open:"(?:",close:")"}}},globChars(t){return t===!0?A9:G1}}});var Ys=x(Xt=>{"use strict";var F9=require("path"),k9=process.platform==="win32",{REGEX_BACKSLASH:P9,REGEX_REMOVE_BACKSLASH:$9,REGEX_SPECIAL_CHARS:I9,REGEX_SPECIAL_CHARS_GLOBAL:T9}=Ws();Xt.isObject=t=>t!==null&&typeof t=="object"&&!Array.isArray(t);Xt.hasRegexChars=t=>I9.test(t);Xt.isRegexChar=t=>t.length===1&&Xt.hasRegexChars(t);Xt.escapeRegex=t=>t.replace(T9,"\\$1");Xt.toPosixSlashes=t=>t.replace(P9,"/");Xt.removeBackslashes=t=>t.replace($9,e=>e==="\\"?"":e);Xt.supportsLookbehinds=()=>{let t=process.version.slice(1).split(".").map(Number);return t.length===3&&t[0]>=9||t[0]===8&&t[1]>=10};Xt.isWindows=t=>t&&typeof t.windows=="boolean"?t.windows:k9===!0||F9.sep==="\\";Xt.escapeLast=(t,e,r)=>{let n=t.lastIndexOf(e,r);return n===-1?t:t[n-1]==="\\"?Xt.escapeLast(t,e,n-1):`${t.slice(0,n)}\\${t.slice(n)}`};Xt.removePrefix=(t,e={})=>{let r=t;return r.startsWith("./")&&(r=r.slice(2),e.prefix="./"),r};Xt.wrapOutput=(t,e={},r={})=>{let n=r.contains?"":"^",o=r.contains?"":"$",i=`${n}(?:${t})${o}`;return e.negated===!0&&(i=`(?:^(?!${i}).*$)`),i}});var rF=x((SX,tF)=>{"use strict";var Y1=Ys(),{CHAR_ASTERISK:fy,CHAR_AT:R9,CHAR_BACKWARD_SLASH:Js,CHAR_COMMA:B9,CHAR_DOT:dy,CHAR_EXCLAMATION_MARK:py,CHAR_FORWARD_SLASH:eF,CHAR_LEFT_CURLY_BRACE:hy,CHAR_LEFT_PARENTHESES:my,CHAR_LEFT_SQUARE_BRACKET:N9,CHAR_PLUS:L9,CHAR_QUESTION_MARK:J1,CHAR_RIGHT_CURLY_BRACE:j9,CHAR_RIGHT_PARENTHESES:X1,CHAR_RIGHT_SQUARE_BRACKET:U9}=Ws(),Z1=t=>t===eF||t===Js,Q1=t=>{t.isPrefix!==!0&&(t.depth=t.isGlobstar?1/0:1)},M9=(t,e)=>{let r=e||{},n=t.length-1,o=r.parts===!0||r.scanToEnd===!0,i=[],a=[],s=[],u=t,c=-1,f=0,d=0,p=!1,h=!1,m=!1,y=!1,b=!1,v=!1,E=!1,g=!1,_=!1,S=!1,P=0,F,B,T={value:"",depth:0,isGlob:!1},L=()=>c>=n,A=()=>u.charCodeAt(c+1),q=()=>(F=B,u.charCodeAt(++c));for(;c<n;){B=q();let w;if(B===Js){E=T.backslashes=!0,B=q(),B===hy&&(v=!0);continue}if(v===!0||B===hy){for(P++;L()!==!0&&(B=q());){if(B===Js){E=T.backslashes=!0,q();continue}if(B===hy){P++;continue}if(v!==!0&&B===dy&&(B=q())===dy){if(p=T.isBrace=!0,m=T.isGlob=!0,S=!0,o===!0)continue;break}if(v!==!0&&B===B9){if(p=T.isBrace=!0,m=T.isGlob=!0,S=!0,o===!0)continue;break}if(B===j9&&(P--,P===0)){v=!1,p=T.isBrace=!0,S=!0;break}}if(o===!0)continue;break}if(B===eF){if(i.push(c),a.push(T),T={value:"",depth:0,isGlob:!1},S===!0)continue;if(F===dy&&c===f+1){f+=2;continue}d=c+1;continue}if(r.noext!==!0&&(B===L9||B===R9||B===fy||B===J1||B===py)===!0&&A()===my){if(m=T.isGlob=!0,y=T.isExtglob=!0,S=!0,B===py&&c===f&&(_=!0),o===!0){for(;L()!==!0&&(B=q());){if(B===Js){E=T.backslashes=!0,B=q();continue}if(B===X1){m=T.isGlob=!0,S=!0;break}}continue}break}if(B===fy){if(F===fy&&(b=T.isGlobstar=!0),m=T.isGlob=!0,S=!0,o===!0)continue;break}if(B===J1){if(m=T.isGlob=!0,S=!0,o===!0)continue;break}if(B===N9){for(;L()!==!0&&(w=q());){if(w===Js){E=T.backslashes=!0,q();continue}if(w===U9){h=T.isBracket=!0,m=T.isGlob=!0,S=!0;break}}if(o===!0)continue;break}if(r.nonegate!==!0&&B===py&&c===f){g=T.negated=!0,f++;continue}if(r.noparen!==!0&&B===my){if(m=T.isGlob=!0,o===!0){for(;L()!==!0&&(B=q());){if(B===my){E=T.backslashes=!0,B=q();continue}if(B===X1){S=!0;break}}continue}break}if(m===!0){if(S=!0,o===!0)continue;break}}r.noext===!0&&(y=!1,m=!1);let j=u,Z="",k="";f>0&&(Z=u.slice(0,f),u=u.slice(f),d-=f),j&&m===!0&&d>0?(j=u.slice(0,d),k=u.slice(d)):m===!0?(j="",k=u):j=u,j&&j!==""&&j!=="/"&&j!==u&&Z1(j.charCodeAt(j.length-1))&&(j=j.slice(0,-1)),r.unescape===!0&&(k&&(k=Y1.removeBackslashes(k)),j&&E===!0&&(j=Y1.removeBackslashes(j)));let D={prefix:Z,input:t,start:f,base:j,glob:k,isBrace:p,isBracket:h,isGlob:m,isExtglob:y,isGlobstar:b,negated:g,negatedExtglob:_};if(r.tokens===!0&&(D.maxDepth=0,Z1(B)||a.push(T),D.tokens=a),r.parts===!0||r.tokens===!0){let w;for(let C=0;C<i.length;C++){let O=w?w+1:f,R=i[C],$=t.slice(O,R);r.tokens&&(C===0&&f!==0?(a[C].isPrefix=!0,a[C].value=Z):a[C].value=$,Q1(a[C]),D.maxDepth+=a[C].depth),(C!==0||$!=="")&&s.push($),w=R}if(w&&w+1<t.length){let C=t.slice(w+1);s.push(C),r.tokens&&(a[a.length-1].value=C,Q1(a[a.length-1]),D.maxDepth+=a[a.length-1].depth)}D.slashes=i,D.parts=s}return D};tF.exports=M9});var iF=x((xX,oF)=>{"use strict";var Cf=Ws(),ur=Ys(),{MAX_LENGTH:Ef,POSIX_REGEX_SOURCE:q9,REGEX_NON_SPECIAL_CHARS:H9,REGEX_SPECIAL_CHARS_BACKREF:V9,REPLACEMENTS:nF}=Cf,z9=(t,e)=>{if(typeof e.expandRange=="function")return e.expandRange(...t,e);t.sort();let r=`[${t.join("-")}]`;try{new RegExp(r)}catch{return t.map(o=>ur.escapeRegex(o)).join("..")}return r},ya=(t,e)=>`Missing ${t}: "${e}" - use "\\\\${e}" to match literal characters`,gy=(t,e)=>{if(typeof t!="string")throw new TypeError("Expected a string");t=nF[t]||t;let r={...e},n=typeof r.maxLength=="number"?Math.min(Ef,r.maxLength):Ef,o=t.length;if(o>n)throw new SyntaxError(`Input length: ${o}, exceeds maximum allowed length: ${n}`);let i={type:"bos",value:"",output:r.prepend||""},a=[i],s=r.capture?"":"?:",u=ur.isWindows(e),c=Cf.globChars(u),f=Cf.extglobChars(c),{DOT_LITERAL:d,PLUS_LITERAL:p,SLASH_LITERAL:h,ONE_CHAR:m,DOTS_SLASH:y,NO_DOT:b,NO_DOT_SLASH:v,NO_DOTS_SLASH:E,QMARK:g,QMARK_NO_DOT:_,STAR:S,START_ANCHOR:P}=c,F=z=>`(${s}(?:(?!${P}${z.dot?y:d}).)*?)`,B=r.dot?"":b,T=r.dot?g:_,L=r.bash===!0?F(r):S;r.capture&&(L=`(${L})`),typeof r.noext=="boolean"&&(r.noextglob=r.noext);let A={input:t,index:-1,start:0,dot:r.dot===!0,consumed:"",output:"",prefix:"",backtrack:!1,negated:!1,brackets:0,braces:0,parens:0,quotes:0,globstar:!1,tokens:a};t=ur.removePrefix(t,A),o=t.length;let q=[],j=[],Z=[],k=i,D,w=()=>A.index===o-1,C=A.peek=(z=1)=>t[A.index+z],O=A.advance=()=>t[++A.index]||"",R=()=>t.slice(A.index+1),$=(z="",Se=0)=>{A.consumed+=z,A.index+=Se},H=z=>{A.output+=z.output!=null?z.output:z.value,$(z.value)},I=()=>{let z=1;for(;C()==="!"&&(C(2)!=="("||C(3)==="?");)O(),A.start++,z++;return z%2===0?!1:(A.negated=!0,A.start++,!0)},N=z=>{A[z]++,Z.push(z)},X=z=>{A[z]--,Z.pop()},U=z=>{if(k.type==="globstar"){let Se=A.braces>0&&(z.type==="comma"||z.type==="brace"),V=z.extglob===!0||q.length&&(z.type==="pipe"||z.type==="paren");z.type!=="slash"&&z.type!=="paren"&&!Se&&!V&&(A.output=A.output.slice(0,-k.output.length),k.type="star",k.value="*",k.output=L,A.output+=k.output)}if(q.length&&z.type!=="paren"&&(q[q.length-1].inner+=z.value),(z.value||z.output)&&H(z),k&&k.type==="text"&&z.type==="text"){k.value+=z.value,k.output=(k.output||"")+z.value;return}z.prev=k,a.push(z),k=z},oe=(z,Se)=>{let V={...f[Se],conditions:1,inner:""};V.prev=k,V.parens=A.parens,V.output=A.output;let de=(r.capture?"(":"")+V.open;N("parens"),U({type:z,value:Se,output:A.output?"":m}),U({type:"paren",extglob:!0,value:O(),output:de}),q.push(V)},Zt=z=>{let Se=z.close+(r.capture?")":""),V;if(z.type==="negate"){let de=L;if(z.inner&&z.inner.length>1&&z.inner.includes("/")&&(de=F(r)),(de!==L||w()||/^\)+$/.test(R()))&&(Se=z.close=`)$))${de}`),z.inner.includes("*")&&(V=R())&&/^\.[^\\/.]+$/.test(V)){let He=gy(V,{...e,fastpaths:!1}).output;Se=z.close=`)${He})${de})`}z.prev.type==="bos"&&(A.negatedExtglob=!0)}U({type:"paren",extglob:!0,value:D,output:Se}),X("parens")};if(r.fastpaths!==!1&&!/(^[*!]|[/()[\]{}"])/.test(t)){let z=!1,Se=t.replace(V9,(V,de,He,Ot,ot,Rf)=>Ot==="\\"?(z=!0,V):Ot==="?"?de?de+Ot+(ot?g.repeat(ot.length):""):Rf===0?T+(ot?g.repeat(ot.length):""):g.repeat(He.length):Ot==="."?d.repeat(He.length):Ot==="*"?de?de+Ot+(ot?L:""):L:de?V:`\\${V}`);return z===!0&&(r.unescape===!0?Se=Se.replace(/\\/g,""):Se=Se.replace(/\\+/g,V=>V.length%2===0?"\\\\":V?"\\":"")),Se===t&&r.contains===!0?(A.output=t,A):(A.output=ur.wrapOutput(Se,A,e),A)}for(;!w();){if(D=O(),D==="\0")continue;if(D==="\\"){let V=C();if(V==="/"&&r.bash!==!0||V==="."||V===";")continue;if(!V){D+="\\",U({type:"text",value:D});continue}let de=/^\\+/.exec(R()),He=0;if(de&&de[0].length>2&&(He=de[0].length,A.index+=He,He%2!==0&&(D+="\\")),r.unescape===!0?D=O():D+=O(),A.brackets===0){U({type:"text",value:D});continue}}if(A.brackets>0&&(D!=="]"||k.value==="["||k.value==="[^")){if(r.posix!==!1&&D===":"){let V=k.value.slice(1);if(V.includes("[")&&(k.posix=!0,V.includes(":"))){let de=k.value.lastIndexOf("["),He=k.value.slice(0,de),Ot=k.value.slice(de+2),ot=q9[Ot];if(ot){k.value=He+ot,A.backtrack=!0,O(),!i.output&&a.indexOf(k)===1&&(i.output=m);continue}}}(D==="["&&C()!==":"||D==="-"&&C()==="]")&&(D=`\\${D}`),D==="]"&&(k.value==="["||k.value==="[^")&&(D=`\\${D}`),r.posix===!0&&D==="!"&&k.value==="["&&(D="^"),k.value+=D,H({value:D});continue}if(A.quotes===1&&D!=='"'){D=ur.escapeRegex(D),k.value+=D,H({value:D});continue}if(D==='"'){A.quotes=A.quotes===1?0:1,r.keepQuotes===!0&&U({type:"text",value:D});continue}if(D==="("){N("parens"),U({type:"paren",value:D});continue}if(D===")"){if(A.parens===0&&r.strictBrackets===!0)throw new SyntaxError(ya("opening","("));let V=q[q.length-1];if(V&&A.parens===V.parens+1){Zt(q.pop());continue}U({type:"paren",value:D,output:A.parens?")":"\\)"}),X("parens");continue}if(D==="["){if(r.nobracket===!0||!R().includes("]")){if(r.nobracket!==!0&&r.strictBrackets===!0)throw new SyntaxError(ya("closing","]"));D=`\\${D}`}else N("brackets");U({type:"bracket",value:D});continue}if(D==="]"){if(r.nobracket===!0||k&&k.type==="bracket"&&k.value.length===1){U({type:"text",value:D,output:`\\${D}`});continue}if(A.brackets===0){if(r.strictBrackets===!0)throw new SyntaxError(ya("opening","["));U({type:"text",value:D,output:`\\${D}`});continue}X("brackets");let V=k.value.slice(1);if(k.posix!==!0&&V[0]==="^"&&!V.includes("/")&&(D=`/${D}`),k.value+=D,H({value:D}),r.literalBrackets===!1||ur.hasRegexChars(V))continue;let de=ur.escapeRegex(k.value);if(A.output=A.output.slice(0,-k.value.length),r.literalBrackets===!0){A.output+=de,k.value=de;continue}k.value=`(${s}${de}|${k.value})`,A.output+=k.value;continue}if(D==="{"&&r.nobrace!==!0){N("braces");let V={type:"brace",value:D,output:"(",outputIndex:A.output.length,tokensIndex:A.tokens.length};j.push(V),U(V);continue}if(D==="}"){let V=j[j.length-1];if(r.nobrace===!0||!V){U({type:"text",value:D,output:D});continue}let de=")";if(V.dots===!0){let He=a.slice(),Ot=[];for(let ot=He.length-1;ot>=0&&(a.pop(),He[ot].type!=="brace");ot--)He[ot].type!=="dots"&&Ot.unshift(He[ot].value);de=z9(Ot,r),A.backtrack=!0}if(V.comma!==!0&&V.dots!==!0){let He=A.output.slice(0,V.outputIndex),Ot=A.tokens.slice(V.tokensIndex);V.value=V.output="\\{",D=de="\\}",A.output=He;for(let ot of Ot)A.output+=ot.output||ot.value}U({type:"brace",value:D,output:de}),X("braces"),j.pop();continue}if(D==="|"){q.length>0&&q[q.length-1].conditions++,U({type:"text",value:D});continue}if(D===","){let V=D,de=j[j.length-1];de&&Z[Z.length-1]==="braces"&&(de.comma=!0,V="|"),U({type:"comma",value:D,output:V});continue}if(D==="/"){if(k.type==="dot"&&A.index===A.start+1){A.start=A.index+1,A.consumed="",A.output="",a.pop(),k=i;continue}U({type:"slash",value:D,output:h});continue}if(D==="."){if(A.braces>0&&k.type==="dot"){k.value==="."&&(k.output=d);let V=j[j.length-1];k.type="dots",k.output+=D,k.value+=D,V.dots=!0;continue}if(A.braces+A.parens===0&&k.type!=="bos"&&k.type!=="slash"){U({type:"text",value:D,output:d});continue}U({type:"dot",value:D,output:d});continue}if(D==="?"){if(!(k&&k.value==="(")&&r.noextglob!==!0&&C()==="("&&C(2)!=="?"){oe("qmark",D);continue}if(k&&k.type==="paren"){let de=C(),He=D;if(de==="<"&&!ur.supportsLookbehinds())throw new Error("Node.js v10 or higher is required for regex lookbehinds");(k.value==="("&&!/[!=<:]/.test(de)||de==="<"&&!/<([!=]|\w+>)/.test(R()))&&(He=`\\${D}`),U({type:"text",value:D,output:He});continue}if(r.dot!==!0&&(k.type==="slash"||k.type==="bos")){U({type:"qmark",value:D,output:_});continue}U({type:"qmark",value:D,output:g});continue}if(D==="!"){if(r.noextglob!==!0&&C()==="("&&(C(2)!=="?"||!/[!=<:]/.test(C(3)))){oe("negate",D);continue}if(r.nonegate!==!0&&A.index===0){I();continue}}if(D==="+"){if(r.noextglob!==!0&&C()==="("&&C(2)!=="?"){oe("plus",D);continue}if(k&&k.value==="("||r.regex===!1){U({type:"plus",value:D,output:p});continue}if(k&&(k.type==="bracket"||k.type==="paren"||k.type==="brace")||A.parens>0){U({type:"plus",value:D});continue}U({type:"plus",value:p});continue}if(D==="@"){if(r.noextglob!==!0&&C()==="("&&C(2)!=="?"){U({type:"at",extglob:!0,value:D,output:""});continue}U({type:"text",value:D});continue}if(D!=="*"){(D==="$"||D==="^")&&(D=`\\${D}`);let V=H9.exec(R());V&&(D+=V[0],A.index+=V[0].length),U({type:"text",value:D});continue}if(k&&(k.type==="globstar"||k.star===!0)){k.type="star",k.star=!0,k.value+=D,k.output=L,A.backtrack=!0,A.globstar=!0,$(D);continue}let z=R();if(r.noextglob!==!0&&/^\([^?]/.test(z)){oe("star",D);continue}if(k.type==="star"){if(r.noglobstar===!0){$(D);continue}let V=k.prev,de=V.prev,He=V.type==="slash"||V.type==="bos",Ot=de&&(de.type==="star"||de.type==="globstar");if(r.bash===!0&&(!He||z[0]&&z[0]!=="/")){U({type:"star",value:D,output:""});continue}let ot=A.braces>0&&(V.type==="comma"||V.type==="brace"),Rf=q.length&&(V.type==="pipe"||V.type==="paren");if(!He&&V.type!=="paren"&&!ot&&!Rf){U({type:"star",value:D,output:""});continue}for(;z.slice(0,3)==="/**";){let ru=t[A.index+4];if(ru&&ru!=="/")break;z=z.slice(3),$("/**",3)}if(V.type==="bos"&&w()){k.type="globstar",k.value+=D,k.output=F(r),A.output=k.output,A.globstar=!0,$(D);continue}if(V.type==="slash"&&V.prev.type!=="bos"&&!Ot&&w()){A.output=A.output.slice(0,-(V.output+k.output).length),V.output=`(?:${V.output}`,k.type="globstar",k.output=F(r)+(r.strictSlashes?")":"|$)"),k.value+=D,A.globstar=!0,A.output+=V.output+k.output,$(D);continue}if(V.type==="slash"&&V.prev.type!=="bos"&&z[0]==="/"){let ru=z[1]!==void 0?"|$":"";A.output=A.output.slice(0,-(V.output+k.output).length),V.output=`(?:${V.output}`,k.type="globstar",k.output=`${F(r)}${h}|${h}${ru})`,k.value+=D,A.output+=V.output+k.output,A.globstar=!0,$(D+O()),U({type:"slash",value:"/",output:""});continue}if(V.type==="bos"&&z[0]==="/"){k.type="globstar",k.value+=D,k.output=`(?:^|${h}|${F(r)}${h})`,A.output=k.output,A.globstar=!0,$(D+O()),U({type:"slash",value:"/",output:""});continue}A.output=A.output.slice(0,-k.output.length),k.type="globstar",k.output=F(r),k.value+=D,A.output+=k.output,A.globstar=!0,$(D);continue}let Se={type:"star",value:D,output:L};if(r.bash===!0){Se.output=".*?",(k.type==="bos"||k.type==="slash")&&(Se.output=B+Se.output),U(Se);continue}if(k&&(k.type==="bracket"||k.type==="paren")&&r.regex===!0){Se.output=D,U(Se);continue}(A.index===A.start||k.type==="slash"||k.type==="dot")&&(k.type==="dot"?(A.output+=v,k.output+=v):r.dot===!0?(A.output+=E,k.output+=E):(A.output+=B,k.output+=B),C()!=="*"&&(A.output+=m,k.output+=m)),U(Se)}for(;A.brackets>0;){if(r.strictBrackets===!0)throw new SyntaxError(ya("closing","]"));A.output=ur.escapeLast(A.output,"["),X("brackets")}for(;A.parens>0;){if(r.strictBrackets===!0)throw new SyntaxError(ya("closing",")"));A.output=ur.escapeLast(A.output,"("),X("parens")}for(;A.braces>0;){if(r.strictBrackets===!0)throw new SyntaxError(ya("closing","}"));A.output=ur.escapeLast(A.output,"{"),X("braces")}if(r.strictSlashes!==!0&&(k.type==="star"||k.type==="bracket")&&U({type:"maybe_slash",value:"",output:`${h}?`}),A.backtrack===!0){A.output="";for(let z of A.tokens)A.output+=z.output!=null?z.output:z.value,z.suffix&&(A.output+=z.suffix)}return A};gy.fastpaths=(t,e)=>{let r={...e},n=typeof r.maxLength=="number"?Math.min(Ef,r.maxLength):Ef,o=t.length;if(o>n)throw new SyntaxError(`Input length: ${o}, exceeds maximum allowed length: ${n}`);t=nF[t]||t;let i=ur.isWindows(e),{DOT_LITERAL:a,SLASH_LITERAL:s,ONE_CHAR:u,DOTS_SLASH:c,NO_DOT:f,NO_DOTS:d,NO_DOTS_SLASH:p,STAR:h,START_ANCHOR:m}=Cf.globChars(i),y=r.dot?d:f,b=r.dot?p:f,v=r.capture?"":"?:",E={negated:!1,prefix:""},g=r.bash===!0?".*?":h;r.capture&&(g=`(${g})`);let _=B=>B.noglobstar===!0?g:`(${v}(?:(?!${m}${B.dot?c:a}).)*?)`,S=B=>{switch(B){case"*":return`${y}${u}${g}`;case".*":return`${a}${u}${g}`;case"*.*":return`${y}${g}${a}${u}${g}`;case"*/*":return`${y}${g}${s}${u}${b}${g}`;case"**":return y+_(r);case"**/*":return`(?:${y}${_(r)}${s})?${b}${u}${g}`;case"**/*.*":return`(?:${y}${_(r)}${s})?${b}${g}${a}${u}${g}`;case"**/.*":return`(?:${y}${_(r)}${s})?${a}${u}${g}`;default:{let T=/^(.*?)\.(\w+)$/.exec(B);if(!T)return;let L=S(T[1]);return L?L+a+T[2]:void 0}}},P=ur.removePrefix(t,E),F=S(P);return F&&r.strictSlashes!==!0&&(F+=`${s}?`),F};oF.exports=gy});var sF=x((AX,aF)=>{"use strict";var K9=require("path"),G9=rF(),yy=iF(),Dy=Ys(),W9=Ws(),Y9=t=>t&&typeof t=="object"&&!Array.isArray(t),rt=(t,e,r=!1)=>{if(Array.isArray(t)){let f=t.map(p=>rt(p,e,r));return p=>{for(let h of f){let m=h(p);if(m)return m}return!1}}let n=Y9(t)&&t.tokens&&t.input;if(t===""||typeof t!="string"&&!n)throw new TypeError("Expected pattern to be a non-empty string");let o=e||{},i=Dy.isWindows(e),a=n?rt.compileRe(t,e):rt.makeRe(t,e,!1,!0),s=a.state;delete a.state;let u=()=>!1;if(o.ignore){let f={...e,ignore:null,onMatch:null,onResult:null};u=rt(o.ignore,f,r)}let c=(f,d=!1)=>{let{isMatch:p,match:h,output:m}=rt.test(f,a,e,{glob:t,posix:i}),y={glob:t,state:s,regex:a,posix:i,input:f,output:m,match:h,isMatch:p};return typeof o.onResult=="function"&&o.onResult(y),p===!1?(y.isMatch=!1,d?y:!1):u(f)?(typeof o.onIgnore=="function"&&o.onIgnore(y),y.isMatch=!1,d?y:!1):(typeof o.onMatch=="function"&&o.onMatch(y),d?y:!0)};return r&&(c.state=s),c};rt.test=(t,e,r,{glob:n,posix:o}={})=>{if(typeof t!="string")throw new TypeError("Expected input to be a string");if(t==="")return{isMatch:!1,output:""};let i=r||{},a=i.format||(o?Dy.toPosixSlashes:null),s=t===n,u=s&&a?a(t):t;return s===!1&&(u=a?a(t):t,s=u===n),(s===!1||i.capture===!0)&&(i.matchBase===!0||i.basename===!0?s=rt.matchBase(t,e,r,o):s=e.exec(u)),{isMatch:!!s,match:s,output:u}};rt.matchBase=(t,e,r,n=Dy.isWindows(r))=>(e instanceof RegExp?e:rt.makeRe(e,r)).test(K9.basename(t));rt.isMatch=(t,e,r)=>rt(e,r)(t);rt.parse=(t,e)=>Array.isArray(t)?t.map(r=>rt.parse(r,e)):yy(t,{...e,fastpaths:!1});rt.scan=(t,e)=>G9(t,e);rt.compileRe=(t,e,r=!1,n=!1)=>{if(r===!0)return t.output;let o=e||{},i=o.contains?"":"^",a=o.contains?"":"$",s=`${i}(?:${t.output})${a}`;t&&t.negated===!0&&(s=`^(?!${s}).*$`);let u=rt.toRegex(s,e);return n===!0&&(u.state=t),u};rt.makeRe=(t,e={},r=!1,n=!1)=>{if(!t||typeof t!="string")throw new TypeError("Expected a non-empty string");let o={negated:!1,fastpaths:!0};return e.fastpaths!==!1&&(t[0]==="."||t[0]==="*")&&(o.output=yy.fastpaths(t,e)),o.output||(o=yy(t,e)),rt.compileRe(o,e,r,n)};rt.toRegex=(t,e)=>{try{let r=e||{};return new RegExp(t,r.flags||(r.nocase?"i":""))}catch(r){if(e&&e.debug===!0)throw r;return/$^/}};rt.constants=W9;aF.exports=rt});var cF=x((OX,uF)=>{"use strict";uF.exports=sF()});var mF=x((FX,hF)=>{"use strict";var fF=require("util"),dF=H1(),Jr=cF(),by=Ys(),lF=t=>t===""||t==="./",pF=t=>{let e=t.indexOf("{");return e>-1&&t.indexOf("}",e)>-1},Le=(t,e,r)=>{e=[].concat(e),t=[].concat(t);let n=new Set,o=new Set,i=new Set,a=0,s=f=>{i.add(f.output),r&&r.onResult&&r.onResult(f)};for(let f=0;f<e.length;f++){let d=Jr(String(e[f]),{...r,onResult:s},!0),p=d.state.negated||d.state.negatedExtglob;p&&a++;for(let h of t){let m=d(h,!0);(p?!m.isMatch:m.isMatch)&&(p?n.add(m.output):(n.delete(m.output),o.add(m.output)))}}let c=(a===e.length?[...i]:[...o]).filter(f=>!n.has(f));if(r&&c.length===0){if(r.failglob===!0)throw new Error(`No matches found for "${e.join(", ")}"`);if(r.nonull===!0||r.nullglob===!0)return r.unescape?e.map(f=>f.replace(/\\/g,"")):e}return c};Le.match=Le;Le.matcher=(t,e)=>Jr(t,e);Le.isMatch=(t,e,r)=>Jr(e,r)(t);Le.any=Le.isMatch;Le.not=(t,e,r={})=>{e=[].concat(e).map(String);let n=new Set,o=[],i=s=>{r.onResult&&r.onResult(s),o.push(s.output)},a=new Set(Le(t,e,{...r,onResult:i}));for(let s of o)a.has(s)||n.add(s);return[...n]};Le.contains=(t,e,r)=>{if(typeof t!="string")throw new TypeError(`Expected a string: "${fF.inspect(t)}"`);if(Array.isArray(e))return e.some(n=>Le.contains(t,n,r));if(typeof e=="string"){if(lF(t)||lF(e))return!1;if(t.includes(e)||t.startsWith("./")&&t.slice(2).includes(e))return!0}return Le.isMatch(t,e,{...r,contains:!0})};Le.matchKeys=(t,e,r)=>{if(!by.isObject(t))throw new TypeError("Expected the first argument to be an object");let n=Le(Object.keys(t),e,r),o={};for(let i of n)o[i]=t[i];return o};Le.some=(t,e,r)=>{let n=[].concat(t);for(let o of[].concat(e)){let i=Jr(String(o),r);if(n.some(a=>i(a)))return!0}return!1};Le.every=(t,e,r)=>{let n=[].concat(t);for(let o of[].concat(e)){let i=Jr(String(o),r);if(!n.every(a=>i(a)))return!1}return!0};Le.all=(t,e,r)=>{if(typeof t!="string")throw new TypeError(`Expected a string: "${fF.inspect(t)}"`);return[].concat(e).every(n=>Jr(n,r)(t))};Le.capture=(t,e,r)=>{let n=by.isWindows(r),i=Jr.makeRe(String(t),{...r,capture:!0}).exec(n?by.toPosixSlashes(e):e);if(i)return i.slice(1).map(a=>a===void 0?"":a)};Le.makeRe=(...t)=>Jr.makeRe(...t);Le.scan=(...t)=>Jr.scan(...t);Le.parse=(t,e)=>{let r=[];for(let n of[].concat(t||[]))for(let o of dF(String(n),e))r.push(Jr.parse(o,e));return r};Le.braces=(t,e)=>{if(typeof t!="string")throw new TypeError("Expected a string");return e&&e.nobrace===!0||!pF(t)?[t]:dF(t,e)};Le.braceExpand=(t,e)=>{if(typeof t!="string")throw new TypeError("Expected a string");return Le.braces(t,{...e,expand:!0})};Le.hasBraces=pF;hF.exports=Le});var QF=x((FZ,vn)=>{var Ie=require("fs"),kf=require("os"),wt=require("path"),BF=require("crypto"),Zr={fs:Ie.constants,os:kf.constants},NF="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",MF=/XXXXXX/,C7=3,qF=(Zr.O_CREAT||Zr.fs.O_CREAT)|(Zr.O_EXCL||Zr.fs.O_EXCL)|(Zr.O_RDWR||Zr.fs.O_RDWR),E7=kf.platform()==="win32",_7=Zr.EBADF||Zr.os.errno.EBADF,S7=Zr.ENOENT||Zr.os.errno.ENOENT,HF=448,VF=384,x7="exit",ba=[],zF=Ie.rmdirSync.bind(Ie),KF=!1;function A7(t,e){return Ie.rm(t,{recursive:!0},e)}function GF(t){return Ie.rmSync(t,{recursive:!0})}function _y(t,e){let r=wa(t,e),n=r[0],o=r[1];N7(n,function(i,a){if(i)return o(i);let s=a.tries;(function u(){try{let c=YF(a);Ie.stat(c,function(f){if(!f)return s-- >0?u():o(new Error("Could not get a unique tmp filename, max tries reached "+c));o(null,c)})}catch(c){o(c)}})()})}function Sy(t){let e=wa(t),r=e[0],n=L7(r),o=n.tries;do{let i=YF(n);try{Ie.statSync(i)}catch{return i}}while(o-- >0);throw new Error("Could not get a unique tmp filename, max tries reached")}function O7(t,e){let r=wa(t,e),n=r[0],o=r[1];_y(n,function(a,s){if(a)return o(a);Ie.open(s,qF,n.mode||VF,function(c,f){if(c)return o(c);if(n.discardDescriptor)return Ie.close(f,function(p){return o(p,s,void 0,Cy(s,-1,n,!1))});{let d=n.discardDescriptor||n.detachDescriptor;o(null,s,f,Cy(s,d?-1:f,n,!1))}})})}function F7(t){let e=wa(t),r=e[0],n=r.discardDescriptor||r.detachDescriptor,o=Sy(r),i=Ie.openSync(o,qF,r.mode||VF);return r.discardDescriptor&&(Ie.closeSync(i),i=void 0),{name:o,fd:i,removeCallback:Cy(o,n?-1:i,r,!0)}}function k7(t,e){let r=wa(t,e),n=r[0],o=r[1];_y(n,function(a,s){if(a)return o(a);Ie.mkdir(s,n.mode||HF,function(c){if(c)return o(c);o(null,s,WF(s,n,!1))})})}function P7(t){let e=wa(t),r=e[0],n=Sy(r);return Ie.mkdirSync(n,r.mode||HF),{name:n,removeCallback:WF(n,r,!0)}}function $7(t,e){let r=function(n){if(n&&!Ey(n))return e(n);e()};0<=t[0]?Ie.close(t[0],function(){Ie.unlink(t[1],r)}):Ie.unlink(t[1],r)}function I7(t){let e=null;try{0<=t[0]&&Ie.closeSync(t[0])}catch(r){if(!j7(r)&&!Ey(r))throw r}finally{try{Ie.unlinkSync(t[1])}catch(r){Ey(r)||(e=r)}}if(e!==null)throw e}function Cy(t,e,r,n){let o=Ff(I7,[e,t],n),i=Ff($7,[e,t],n,o);return r.keep||ba.unshift(o),n?o:i}function WF(t,e,r){let n=e.unsafeCleanup?A7:Ie.rmdir.bind(Ie),o=e.unsafeCleanup?GF:zF,i=Ff(o,t,r),a=Ff(n,t,r,i);return e.keep||ba.unshift(i),r?i:a}function Ff(t,e,r,n){let o=!1;return function i(a){if(!o){let s=n||i,u=ba.indexOf(s);return u>=0&&ba.splice(u,1),o=!0,r||t===zF||t===GF?t(e):t(e,a||function(){})}}}function T7(){if(KF)for(;ba.length;)try{ba[0]()}catch{}}function LF(t){let e=[],r=null;try{r=BF.randomBytes(t)}catch{r=BF.pseudoRandomBytes(t)}for(let n=0;n<t;n++)e.push(NF[r[n]%NF.length]);return e.join("")}function cr(t){return typeof t>"u"}function wa(t,e){if(typeof t=="function")return[{},t];if(cr(t))return[{},e];let r={};for(let n of Object.getOwnPropertyNames(t))r[n]=t[n];return[r,e]}function R7(t,e,r){let n=wt.isAbsolute(t)?t:wt.join(e,t);Ie.stat(n,function(o){o?Ie.realpath(wt.dirname(n),function(i,a){if(i)return r(i);r(null,wt.join(a,wt.basename(n)))}):Ie.realpath(n,r)})}function B7(t,e){let r=wt.isAbsolute(t)?t:wt.join(e,t);try{return Ie.statSync(r),Ie.realpathSync(r)}catch{let o=Ie.realpathSync(wt.dirname(r));return wt.join(o,wt.basename(r))}}function YF(t){let e=t.tmpdir;if(!cr(t.name))return wt.join(e,t.dir,t.name);if(!cr(t.template))return wt.join(e,t.dir,t.template).replace(MF,LF(6));let r=[t.prefix?t.prefix:"tmp","-",process.pid,"-",LF(12),t.postfix?"-"+t.postfix:""].join("");return wt.join(e,t.dir,r)}function JF(t){if(!cr(t.name)){let e=t.name;if(wt.isAbsolute(e))throw new Error(`name option must not contain an absolute path, found "${e}".`);let r=wt.basename(e);if(r===".."||r==="."||r!==e)throw new Error(`name option must not contain a path, found "${e}".`)}if(!cr(t.template)&&!t.template.match(MF))throw new Error(`Invalid template, found "${t.template}".`);if(!cr(t.tries)&&isNaN(t.tries)||t.tries<0)throw new Error(`Invalid tries, found "${t.tries}".`);t.tries=cr(t.name)?t.tries||C7:1,t.keep=!!t.keep,t.detachDescriptor=!!t.detachDescriptor,t.discardDescriptor=!!t.discardDescriptor,t.unsafeCleanup=!!t.unsafeCleanup,t.prefix=cr(t.prefix)?"":t.prefix,t.postfix=cr(t.postfix)?"":t.postfix}function jF(t,e,r,n){if(cr(e))return n(null);R7(e,r,function(o,i){if(o)return n(o);let a=wt.relative(r,i);if(!i.startsWith(r))return n(new Error(`${t} option must be relative to "${r}", found "${a}".`));n(null,a)})}function UF(t,e,r){if(cr(e))return;let n=B7(e,r),o=wt.relative(r,n);if(!n.startsWith(r))throw new Error(`${t} option must be relative to "${r}", found "${o}".`);return o}function N7(t,e){M7(t,function(r,n){if(r)return e(r);t.tmpdir=n;try{JF(t,n)}catch(o){return e(o)}jF("dir",t.dir,n,function(o,i){if(o)return e(o);t.dir=cr(i)?"":i,jF("template",t.template,n,function(a,s){if(a)return e(a);t.template=s,e(null,t)})})})}function L7(t){let e=t.tmpdir=ZF(t);JF(t,e);let r=UF("dir",t.dir,e);return t.dir=cr(r)?"":r,t.template=UF("template",t.template,e),t}function j7(t){return XF(t,-_7,"EBADF")}function Ey(t){return XF(t,-S7,"ENOENT")}function XF(t,e,r){return E7?t.code===r:t.code===r&&t.errno===e}function U7(){KF=!0}function M7(t,e){return Ie.realpath(t&&t.tmpdir||kf.tmpdir(),e)}function ZF(t){return Ie.realpathSync(t&&t.tmpdir||kf.tmpdir())}process.addListener(x7,T7);Object.defineProperty(vn.exports,"tmpdir",{enumerable:!0,configurable:!1,get:function(){return ZF()}});vn.exports.dir=k7;vn.exports.dirSync=P7;vn.exports.file=O7;vn.exports.fileSync=F7;vn.exports.tmpName=_y;vn.exports.tmpNameSync=Sy;vn.exports.setGracefulCleanup=U7});var $f=require("node:process");var Yy=pe(Wy(),1),{program:at,createCommand:Sq,createArgument:xq,createOption:Aq,CommanderError:Oq,InvalidArgumentError:Fq,InvalidOptionArgumentError:kq,Command:Pq,Argument:$q,Option:Iq,Help:Tq}=Yy.default;var fr={name:"@capgo/cli",version:"7.57.0",description:"A CLI to upload to capgo servers",author:"Martin martin@capgo.app",license:"Apache 2.0",homepage:"https://github.com/Cap-go/CLI#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","sdk"],exports:{".":{import:"./dist/index.js",require:"./dist/index.js"},"./sdk":{types:"./dist/src/sdk.d.ts",import:"./dist/src/sdk.js",require:"./dist/src/sdk.js"}},main:"dist/index.js",types:"dist/src/index.d.ts",bin:{capgo:"dist/index.js"},engines:{npm:">=8.0.0",node:">=20.0.0"},scripts:{build:"tsc && node build.mjs",dev:"NODE_ENV=development ncc build","no-debug":"node dist/index.js","dev-build":"SUPA_DB=development ncc build",pack:"pkg",types:"npx --yes supabase gen types typescript --project-id=xvwzpoazmxkqosrdewyv > src/types/supabase.types.ts",typecheck:"tsc --noEmit",lint:'eslint "src/**/*.ts" --fix',"check-posix-paths":"node test/check-posix-paths.js","generate-docs":"node dist/index.js generate-docs README.md","test:bundle":"bun test/test-bundle.mjs","test:functional":"bun test/test-functional.mjs","test:semver":"bun test/test-semver-validation.mjs","test:version-edge-cases":"bun test/test-version-validation.mjs","test:regex":"bun test/test-regex-validation.mjs","test:upload":"bun test/test-upload-validation.mjs","test:credentials":"bun test/test-credentials.mjs","test:credentials-validation":"bun test/test-credentials-validation.mjs","test:version-detection":"node test/test-get-installed-version.mjs","test:version-detection:setup":"./test/fixtures/setup-test-projects.sh",test:"bun run test:bundle && bun run test:functional && bun run test:semver && bun run test:version-edge-cases && bun run test:regex && bun run test:upload && bun run test:credentials && bun run test:credentials-validation && bun run test:version-detection"},devDependencies:{"@antfu/eslint-config":"^6.1.0","@bradenmacdonald/s3-lite-client":"npm:@jsr/bradenmacdonald__s3-lite-client@0.9.4","@capacitor/cli":"^7.4.4","@capgo/find-package-manager":"^0.0.18","@clack/prompts":"^0.11.0","@sauber/table":"npm:@jsr/sauber__table","@std/semver":"npm:@jsr/std__semver@1.0.6","@supabase/supabase-js":"^2.79.0","@types/adm-zip":"^0.5.7","@types/node":"^24.9.1","@types/prettyjson":"^0.0.33","@types/tmp":"^0.2.6","@vercel/ncc":"^0.38.4","adm-zip":"^0.5.16","ci-info":"^4.3.1",commander:"^14.0.2",esbuild:"^0.27.0",eslint:"^9.38.0","git-format-staged":"3.1.1",husky:"^9.1.7","is-wsl":"^3.1.0",open:"^11.0.0",prettyjson:"^1.2.5",tmp:"^0.2.5","tus-js-client":"^4.3.1",typescript:"^5.9.3"}};var ca=require("node:fs");var vt=pe(ed(),1),Ko=require("node:process"),En=pe(require("node:readline"),1),id=pe(require("node:readline"),1),aD=require("node:stream"),sD=pe(rd(),1);function B2({onlyFirst:t=!1}={}){let e=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?(?:\\u0007|\\u001B\\u005C|\\u009C))","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|");return new RegExp(e,t?void 0:"g")}var N2=B2();function uD(t){if(typeof t!="string")throw new TypeError(`Expected a \`string\`, got \`${typeof t}\``);return t.replace(N2,"")}function cD(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var lD={exports:{}};(function(t){var e={};t.exports=e,e.eastAsianWidth=function(n){var o=n.charCodeAt(0),i=n.length==2?n.charCodeAt(1):0,a=o;return 55296<=o&&o<=56319&&56320<=i&&i<=57343&&(o&=1023,i&=1023,a=o<<10|i,a+=65536),a==12288||65281<=a&&a<=65376||65504<=a&&a<=65510?"F":a==8361||65377<=a&&a<=65470||65474<=a&&a<=65479||65482<=a&&a<=65487||65490<=a&&a<=65495||65498<=a&&a<=65500||65512<=a&&a<=65518?"H":4352<=a&&a<=4447||4515<=a&&a<=4519||4602<=a&&a<=4607||9001<=a&&a<=9002||11904<=a&&a<=11929||11931<=a&&a<=12019||12032<=a&&a<=12245||12272<=a&&a<=12283||12289<=a&&a<=12350||12353<=a&&a<=12438||12441<=a&&a<=12543||12549<=a&&a<=12589||12593<=a&&a<=12686||12688<=a&&a<=12730||12736<=a&&a<=12771||12784<=a&&a<=12830||12832<=a&&a<=12871||12880<=a&&a<=13054||13056<=a&&a<=19903||19968<=a&&a<=42124||42128<=a&&a<=42182||43360<=a&&a<=43388||44032<=a&&a<=55203||55216<=a&&a<=55238||55243<=a&&a<=55291||63744<=a&&a<=64255||65040<=a&&a<=65049||65072<=a&&a<=65106||65108<=a&&a<=65126||65128<=a&&a<=65131||110592<=a&&a<=110593||127488<=a&&a<=127490||127504<=a&&a<=127546||127552<=a&&a<=127560||127568<=a&&a<=127569||131072<=a&&a<=194367||177984<=a&&a<=196605||196608<=a&&a<=262141?"W":32<=a&&a<=126||162<=a&&a<=163||165<=a&&a<=166||a==172||a==175||10214<=a&&a<=10221||10629<=a&&a<=10630?"Na":a==161||a==164||167<=a&&a<=168||a==170||173<=a&&a<=174||176<=a&&a<=180||182<=a&&a<=186||188<=a&&a<=191||a==198||a==208||215<=a&&a<=216||222<=a&&a<=225||a==230||232<=a&&a<=234||236<=a&&a<=237||a==240||242<=a&&a<=243||247<=a&&a<=250||a==252||a==254||a==257||a==273||a==275||a==283||294<=a&&a<=295||a==299||305<=a&&a<=307||a==312||319<=a&&a<=322||a==324||328<=a&&a<=331||a==333||338<=a&&a<=339||358<=a&&a<=359||a==363||a==462||a==464||a==466||a==468||a==470||a==472||a==474||a==476||a==593||a==609||a==708||a==711||713<=a&&a<=715||a==717||a==720||728<=a&&a<=731||a==733||a==735||768<=a&&a<=879||913<=a&&a<=929||931<=a&&a<=937||945<=a&&a<=961||963<=a&&a<=969||a==1025||1040<=a&&a<=1103||a==1105||a==8208||8211<=a&&a<=8214||8216<=a&&a<=8217||8220<=a&&a<=8221||8224<=a&&a<=8226||8228<=a&&a<=8231||a==8240||8242<=a&&a<=8243||a==8245||a==8251||a==8254||a==8308||a==8319||8321<=a&&a<=8324||a==8364||a==8451||a==8453||a==8457||a==8467||a==8470||8481<=a&&a<=8482||a==8486||a==8491||8531<=a&&a<=8532||8539<=a&&a<=8542||8544<=a&&a<=8555||8560<=a&&a<=8569||a==8585||8592<=a&&a<=8601||8632<=a&&a<=8633||a==8658||a==8660||a==8679||a==8704||8706<=a&&a<=8707||8711<=a&&a<=8712||a==8715||a==8719||a==8721||a==8725||a==8730||8733<=a&&a<=8736||a==8739||a==8741||8743<=a&&a<=8748||a==8750||8756<=a&&a<=8759||8764<=a&&a<=8765||a==8776||a==8780||a==8786||8800<=a&&a<=8801||8804<=a&&a<=8807||8810<=a&&a<=8811||8814<=a&&a<=8815||8834<=a&&a<=8835||8838<=a&&a<=8839||a==8853||a==8857||a==8869||a==8895||a==8978||9312<=a&&a<=9449||9451<=a&&a<=9547||9552<=a&&a<=9587||9600<=a&&a<=9615||9618<=a&&a<=9621||9632<=a&&a<=9633||9635<=a&&a<=9641||9650<=a&&a<=9651||9654<=a&&a<=9655||9660<=a&&a<=9661||9664<=a&&a<=9665||9670<=a&&a<=9672||a==9675||9678<=a&&a<=9681||9698<=a&&a<=9701||a==9711||9733<=a&&a<=9734||a==9737||9742<=a&&a<=9743||9748<=a&&a<=9749||a==9756||a==9758||a==9792||a==9794||9824<=a&&a<=9825||9827<=a&&a<=9829||9831<=a&&a<=9834||9836<=a&&a<=9837||a==9839||9886<=a&&a<=9887||9918<=a&&a<=9919||9924<=a&&a<=9933||9935<=a&&a<=9953||a==9955||9960<=a&&a<=9983||a==10045||a==10071||10102<=a&&a<=10111||11093<=a&&a<=11097||12872<=a&&a<=12879||57344<=a&&a<=63743||65024<=a&&a<=65039||a==65533||127232<=a&&a<=127242||127248<=a&&a<=127277||127280<=a&&a<=127337||127344<=a&&a<=127386||917760<=a&&a<=917999||983040<=a&&a<=1048573||1048576<=a&&a<=1114109?"A":"N"},e.characterLength=function(n){var o=this.eastAsianWidth(n);return o=="F"||o=="W"||o=="A"?2:1};function r(n){return n.match(/[\uD800-\uDBFF][\uDC00-\uDFFF]|[^\uD800-\uDFFF]/g)||[]}e.length=function(n){for(var o=r(n),i=0,a=0;a<o.length;a++)i=i+this.characterLength(o[a]);return i},e.slice=function(n,o,i){textLen=e.length(n),o=o||0,i=i||1,o<0&&(o=textLen+o),i<0&&(i=textLen+i);for(var a="",s=0,u=r(n),c=0;c<u.length;c++){var f=u[c],d=e.length(f);if(s>=o-(d==2?1:0))if(s+d<=i)a+=f;else break;s+=d}return a}})(lD);var L2=lD.exports,j2=cD(L2),U2=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},M2=cD(U2);function _a(t,e={}){if(typeof t!="string"||t.length===0||(e={ambiguousIsNarrow:!0,...e},t=uD(t),t.length===0))return 0;t=t.replace(M2()," ");let r=e.ambiguousIsNarrow?1:2,n=0;for(let o of t){let i=o.codePointAt(0);if(!(i<=31||i>=127&&i<=159||i>=768&&i<=879))switch(j2.eastAsianWidth(o)){case"F":case"W":n+=2;break;case"A":n+=r;break;default:n+=1}}return n}var nd=10,Qy=(t=0)=>e=>`\x1B[${e+t}m`,eD=(t=0)=>e=>`\x1B[${38+t};5;${e}m`,tD=(t=0)=>(e,r,n)=>`\x1B[${38+t};2;${e};${r};${n}m`,je={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(je.modifier);var q2=Object.keys(je.color),H2=Object.keys(je.bgColor);[...q2,...H2];function V2(){let t=new Map;for(let[e,r]of Object.entries(je)){for(let[n,o]of Object.entries(r))je[n]={open:`\x1B[${o[0]}m`,close:`\x1B[${o[1]}m`},r[n]=je[n],t.set(o[0],o[1]);Object.defineProperty(je,e,{value:r,enumerable:!1})}return Object.defineProperty(je,"codes",{value:t,enumerable:!1}),je.color.close="\x1B[39m",je.bgColor.close="\x1B[49m",je.color.ansi=Qy(),je.color.ansi256=eD(),je.color.ansi16m=tD(),je.bgColor.ansi=Qy(nd),je.bgColor.ansi256=eD(nd),je.bgColor.ansi16m=tD(nd),Object.defineProperties(je,{rgbToAnsi256:{value:(e,r,n)=>e===r&&r===n?e<8?16:e>248?231:Math.round((e-8)/247*24)+232:16+36*Math.round(e/255*5)+6*Math.round(r/255*5)+Math.round(n/255*5),enumerable:!1},hexToRgb:{value:e=>{let r=/[a-f\d]{6}|[a-f\d]{3}/i.exec(e.toString(16));if(!r)return[0,0,0];let[n]=r;n.length===3&&(n=[...n].map(i=>i+i).join(""));let o=Number.parseInt(n,16);return[o>>16&255,o>>8&255,o&255]},enumerable:!1},hexToAnsi256:{value:e=>je.rgbToAnsi256(...je.hexToRgb(e)),enumerable:!1},ansi256ToAnsi:{value:e=>{if(e<8)return 30+e;if(e<16)return 90+(e-8);let r,n,o;if(e>=232)r=((e-232)*10+8)/255,n=r,o=r;else{e-=16;let s=e%36;r=Math.floor(e/36)/5,n=Math.floor(s/6)/5,o=s%6/5}let i=Math.max(r,n,o)*2;if(i===0)return 30;let a=30+(Math.round(o)<<2|Math.round(n)<<1|Math.round(r));return i===2&&(a+=60),a},enumerable:!1},rgbToAnsi:{value:(e,r,n)=>je.ansi256ToAnsi(je.rgbToAnsi256(e,r,n)),enumerable:!1},hexToAnsi:{value:e=>je.ansi256ToAnsi(je.hexToAnsi256(e)),enumerable:!1}}),je}var z2=V2(),hu=new Set(["\x1B","\x9B"]),K2=39,sd="\x07",fD="[",G2="]",dD="m",ud=`${G2}8;;`,rD=t=>`${hu.values().next().value}${fD}${t}${dD}`,nD=t=>`${hu.values().next().value}${ud}${t}${sd}`,W2=t=>t.split(" ").map(e=>_a(e)),od=(t,e,r)=>{let n=[...e],o=!1,i=!1,a=_a(uD(t[t.length-1]));for(let[s,u]of n.entries()){let c=_a(u);if(a+c<=r?t[t.length-1]+=u:(t.push(u),a=0),hu.has(u)&&(o=!0,i=n.slice(s+1).join("").startsWith(ud)),o){i?u===sd&&(o=!1,i=!1):u===dD&&(o=!1);continue}a+=c,a===r&&s<n.length-1&&(t.push(""),a=0)}!a&&t[t.length-1].length>0&&t.length>1&&(t[t.length-2]+=t.pop())},Y2=t=>{let e=t.split(" "),r=e.length;for(;r>0&&!(_a(e[r-1])>0);)r--;return r===e.length?t:e.slice(0,r).join(" ")+e.slice(r).join("")},J2=(t,e,r={})=>{if(r.trim!==!1&&t.trim()==="")return"";let n="",o,i,a=W2(t),s=[""];for(let[c,f]of t.split(" ").entries()){r.trim!==!1&&(s[s.length-1]=s[s.length-1].trimStart());let d=_a(s[s.length-1]);if(c!==0&&(d>=e&&(r.wordWrap===!1||r.trim===!1)&&(s.push(""),d=0),(d>0||r.trim===!1)&&(s[s.length-1]+=" ",d++)),r.hard&&a[c]>e){let p=e-d,h=1+Math.floor((a[c]-p-1)/e);Math.floor((a[c]-1)/e)<h&&s.push(""),od(s,f,e);continue}if(d+a[c]>e&&d>0&&a[c]>0){if(r.wordWrap===!1&&d<e){od(s,f,e);continue}s.push("")}if(d+a[c]>e&&r.wordWrap===!1){od(s,f,e);continue}s[s.length-1]+=f}r.trim!==!1&&(s=s.map(c=>Y2(c)));let u=[...s.join(`
|
|
108
108
|
`)];for(let[c,f]of u.entries()){if(n+=f,hu.has(f)){let{groups:p}=new RegExp(`(?:\\${fD}(?<code>\\d+)m|\\${ud}(?<uri>.*)${sd})`).exec(u.slice(c).join(""))||{groups:{}};if(p.code!==void 0){let h=Number.parseFloat(p.code);o=h===K2?void 0:h}else p.uri!==void 0&&(i=p.uri.length===0?void 0:p.uri)}let d=z2.codes.get(Number(o));u[c+1]===`
|
|
109
109
|
`?(i&&(n+=nD("")),o&&d&&(n+=rD(d))):f===`
|
|
110
110
|
`&&(o&&d&&(n+=rD(o)),i&&(n+=nD(i)))}return n};function oD(t,e,r){return String(t).normalize().replace(/\r\n/g,`
|
|
@@ -117,7 +117,7 @@ tell application "System Events" to get value of property list item "CFBundleNam
|
|
|
117
117
|
`).length-1;this.output.write(vt.cursor.move(-999,e*-1))}render(){let e=oD(this._render(this)??"",process.stdout.columns,{hard:!0});if(e!==this._prevFrame){if(this.state==="initial")this.output.write(vt.cursor.hide);else{let r=Z2(this._prevFrame,e);if(this.restoreCursor(),r&&r?.length===1){let n=r[0];this.output.write(vt.cursor.move(0,n)),this.output.write(vt.erase.lines(1));let o=e.split(`
|
|
118
118
|
`);this.output.write(o[n]),this._prevFrame=e,this.output.write(vt.cursor.move(0,o.length-n-1));return}if(r&&r?.length>1){let n=r[0];this.output.write(vt.cursor.move(0,n)),this.output.write(vt.erase.down());let o=e.split(`
|
|
119
119
|
`).slice(n);this.output.write(o.join(`
|
|
120
|
-
`)),this._prevFrame=e;return}this.output.write(vt.erase.down())}this.output.write(e),this.state==="initial"&&(this.state="active"),this._prevFrame=e}}},fu=class extends Sa{get cursor(){return this.value?0:1}get _value(){return this.cursor===0}constructor(e){super(e,!1),this.value=!!e.initialValue,this.on("value",()=>{this.value=this._value}),this.on("confirm",r=>{this.output.write(vt.cursor.move(0,-1)),this.value=r,this.state="submit",this.close()}),this.on("cursor",()=>{this.value=!this.value})}};var rk;rk=new WeakMap;var nk=Object.defineProperty,ok=(t,e,r)=>e in t?nk(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,iD=(t,e,r)=>(ok(t,typeof e!="symbol"?e+"":e,r),r),du=class extends Sa{constructor(e){super(e,!1),iD(this,"options"),iD(this,"cursor",0),this.options=e.options,this.cursor=this.options.findIndex(({value:r})=>r===e.initialValue),this.cursor===-1&&(this.cursor=0),this.changeValue(),this.on("cursor",r=>{switch(r){case"left":case"up":this.cursor=this.cursor===0?this.options.length-1:this.cursor-1;break;case"down":case"right":this.cursor=this.cursor===this.options.length-1?0:this.cursor+1;break}this.changeValue()})}get _value(){return this.options[this.cursor]}changeValue(){this.value=this._value.value}};var pu=class extends Sa{get valueWithCursor(){if(this.state==="submit")return this.value;if(this.cursor>=this.value.length)return`${this.value}\u2588`;let e=this.value.slice(0,this.cursor),[r,...n]=this.value.slice(this.cursor);return`${e}${sD.default.inverse(r)}${n.join("")}`}get cursor(){return this._cursor}constructor(e){super(e),this.on("finalize",()=>{this.value||(this.value=e.defaultValue)})}};var
|
|
120
|
+
`)),this._prevFrame=e;return}this.output.write(vt.erase.down())}this.output.write(e),this.state==="initial"&&(this.state="active"),this._prevFrame=e}}},fu=class extends Sa{get cursor(){return this.value?0:1}get _value(){return this.cursor===0}constructor(e){super(e,!1),this.value=!!e.initialValue,this.on("value",()=>{this.value=this._value}),this.on("confirm",r=>{this.output.write(vt.cursor.move(0,-1)),this.value=r,this.state="submit",this.close()}),this.on("cursor",()=>{this.value=!this.value})}};var rk;rk=new WeakMap;var nk=Object.defineProperty,ok=(t,e,r)=>e in t?nk(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,iD=(t,e,r)=>(ok(t,typeof e!="symbol"?e+"":e,r),r),du=class extends Sa{constructor(e){super(e,!1),iD(this,"options"),iD(this,"cursor",0),this.options=e.options,this.cursor=this.options.findIndex(({value:r})=>r===e.initialValue),this.cursor===-1&&(this.cursor=0),this.changeValue(),this.on("cursor",r=>{switch(r){case"left":case"up":this.cursor=this.cursor===0?this.options.length-1:this.cursor-1;break;case"down":case"right":this.cursor=this.cursor===this.options.length-1?0:this.cursor+1;break}this.changeValue()})}get _value(){return this.options[this.cursor]}changeValue(){this.value=this._value.value}};var pu=class extends Sa{get valueWithCursor(){if(this.state==="submit")return this.value;if(this.cursor>=this.value.length)return`${this.value}\u2588`;let e=this.value.slice(0,this.cursor),[r,...n]=this.value.slice(this.cursor);return`${e}${sD.default.inverse(r)}${n.join("")}`}get cursor(){return this._cursor}constructor(e){super(e),this.on("finalize",()=>{this.value||(this.value=e.defaultValue)})}};var dr=pe(require("node:process"),1),W=pe(rd(),1),mu=pe(ed(),1);function ik(){return dr.default.platform!=="win32"?dr.default.env.TERM!=="linux":!!dr.default.env.CI||!!dr.default.env.WT_SESSION||!!dr.default.env.TERMINUS_SUBLIME||dr.default.env.ConEmuTask==="{cmd::Cmder}"||dr.default.env.TERM_PROGRAM==="Terminus-Sublime"||dr.default.env.TERM_PROGRAM==="vscode"||dr.default.env.TERM==="xterm-256color"||dr.default.env.TERM==="alacritty"||dr.default.env.TERMINAL_EMULATOR==="JetBrains-JediTerm"}var ld=ik(),et=(t,e)=>ld?t:e,ak=et("\u25C6","*"),hD=et("\u25A0","x"),mD=et("\u25B2","x"),pd=et("\u25C7","o"),sk=et("\u250C","T"),Ve=et("\u2502","|"),Go=et("\u2514","\u2014"),fd=et("\u25CF",">"),dd=et("\u25CB"," "),Kq=et("\u25FB","[\u2022]"),Gq=et("\u25FC","[+]"),Wq=et("\u25FB","[ ]"),Yq=et("\u25AA","\u2022"),Jq=et("\u2500","-"),Xq=et("\u256E","+"),Zq=et("\u251C","+"),Qq=et("\u256F","+"),uk=et("\u25CF","\u2022"),ck=et("\u25C6","*"),lk=et("\u25B2","!"),fk=et("\u25A0","x"),hd=t=>{switch(t){case"initial":case"active":return W.default.cyan(ak);case"cancel":return W.default.red(hD);case"error":return W.default.yellow(mD);case"submit":return W.default.green(pd)}},dk=t=>{let{cursor:e,options:r,style:n}=t,o=t.maxItems??Number.POSITIVE_INFINITY,i=Math.max(process.stdout.rows-4,0),a=Math.min(i,Math.max(o,5)),s=0;e>=s+a-3?s=Math.max(Math.min(e-a+3,r.length-a),0):e<s+2&&(s=Math.max(e-2,0));let u=a<r.length&&s>0,c=a<r.length&&s+a<r.length;return r.slice(s,s+a).map((f,d,p)=>{let h=d===0&&u,m=d===p.length-1&&c;return h||m?W.default.dim("..."):n(f,d+s===e)})},Mt=t=>new pu({validate:t.validate,placeholder:t.placeholder,defaultValue:t.defaultValue,initialValue:t.initialValue,render(){let e=`${W.default.gray(Ve)}
|
|
121
121
|
${hd(this.state)} ${t.message}
|
|
122
122
|
`,r=t.placeholder?W.default.inverse(t.placeholder[0])+W.default.dim(t.placeholder.slice(1)):W.default.inverse(W.default.hidden("_")),n=this.value?this.valueWithCursor:r;switch(this.state){case"error":return`${e.trim()}
|
|
123
123
|
${W.default.yellow(Ve)} ${n}
|
|
@@ -151,9 +151,9 @@ ${W.default.gray(Go)} ${t}
|
|
|
151
151
|
`);let S=0,P=0;h(),i=setInterval(()=>{if(n&&s===u)return;y(),u=s;let F=W.default.magenta(e[S]);if(n)process.stdout.write(`${F} ${s}...`);else if(t==="timer")process.stdout.write(`${F} ${s} ${v(c)}`);else{let B=".".repeat(Math.floor(P)).slice(0,3);process.stdout.write(`${F} ${s}${B}`)}S=S+1<e.length?S+1:0,P=P<e.length?P+.125:0},r)},g=(_="",S=0)=>{a=!1,clearInterval(i),y();let P=S===0?W.default.green(pd):S===1?W.default.red(hD):W.default.red(mD);s=b(_??s),t==="timer"?process.stdout.write(`${P} ${s} ${v(c)}
|
|
152
152
|
`):process.stdout.write(`${P} ${s}
|
|
153
153
|
`),m(),o()};return{start:E,stop:g,message:(_="")=>{s=b(_??s)}}};var BA=require("node:child_process"),_e=require("node:fs"),Vl=require("node:os"),ye=pe(require("node:path")),nr=require("node:process"),Vr=pe(yu());var Ft=require("fs"),Aa=(t=".",e="unknown")=>{let r=`${t}/bun.lockb`,n=`${t}/bun.lock`,o=`${t}/pnpm-lock.yaml`,i=`${t}/shrinkwrap.yaml`,a=`${t}/yarn.lock`,s=`${t}/package-lock.json`,u=`${t}/npm-shrinkwrap.json`;return(0,Ft.existsSync)(r)||(0,Ft.existsSync)(n)?"bun":(0,Ft.existsSync)(o)||(0,Ft.existsSync)(i)?"pnpm":(0,Ft.existsSync)(a)?"yarn":(0,Ft.existsSync)(s)||(0,Ft.existsSync)(u)?"npm":e},Du=(t=Aa(),e=!1)=>{switch(t){case"bun":return e?"bun install":"install";case"pnpm":return e?"pnpm install":"install";case"yarn":return e?"yarn install":"install";case"npm":return e?"npm install":"install";case"unknown":return e?"unknown unknown":"unknown";default:return e?"npm install":"install"}},gD=(t=".",e="npx")=>{let r=`${t}/bun.lockb`,n=`${t}/bun.lock`,o=`${t}/pnpm-lock.yaml`,i=`${t}/shrinkwrap.yaml`,a=`${t}/yarn.lock`,s=`${t}/package-lock.json`,u=`${t}/npm-shrinkwrap.json`;return(0,Ft.existsSync)(r)||(0,Ft.existsSync)(n)?"bunx":(0,Ft.existsSync)(o)||(0,Ft.existsSync)(i)?"pnpm exec":(0,Ft.existsSync)(a)?"yarn dlx":(0,Ft.existsSync)(s)||(0,Ft.existsSync)(u)?"npx":e};function bu(t,e){if(isNaN(t)||isNaN(e))throw new Error("Cannot compare against non-numbers");return t===e?0:t<e?-1:1}function bD(t=[],e=[]){return t.length&&!e.length?-1:!t.length&&e.length?1:0}function Dd(t=[],e=[]){let r=Math.max(t.length,e.length);for(let n=0;n<r;n++){let o=t[n],i=e[n];if(o===void 0&&i===void 0)return 0;if(i===void 0)return 1;if(o===void 0)return-1;if(typeof o=="string"&&typeof i=="number")return 1;if(typeof o=="number"&&typeof i=="string"||o<i)return-1;if(o>i)return 1}return 0}var Wo="0|[1-9]\\d*",gk="\\d*[a-zA-Z-][a-zA-Z0-9-]*",yk=`(?<major>${Wo})\\.(?<minor>${Wo})\\.(?<patch>${Wo})`,yD=`(?:${Wo}|${gk})`,wD=`(?:-(?<prerelease>${yD}(?:\\.${yD})*))`,DD="[0-9A-Za-z-]+",vD=`(?:\\+(?<buildmetadata>${DD}(?:\\.${DD})*))`,CD=`v?${yk}${wD}?${vD}?`,ED=new RegExp(`^${CD}$`),_D="(?:<|>)?=?",Dk="x|X|\\*",yd=`${Wo}|${Dk}`,wu=`[v=\\s]*(?<major>${yd})(?:\\.(?<minor>${yd})(?:\\.(?<patch>${yd})${wD}?${vD}?)?)?`,SD=new RegExp(`^(?<operator>~>?|\\^|${_D})\\s*${wu}$`),xD=new RegExp(`^(?<operator>${_D})\\s*(${CD})$|^$`);function bd(t){return typeof t=="number"&&!Number.isNaN(t)&&(!Number.isFinite(t)||0<=t&&t<=Number.MAX_SAFE_INTEGER)}var wd=256;var bk=new RegExp(`^${Wo}$`);function kt(t){return t.split(".").filter(Boolean).map(e=>{if(bk.test(e)){let r=Number(e);if(bd(r))return r}return e})}function Ar(t){return t.split(".").filter(Boolean)}function Sn(t,e){let r=Number(t);if(!bd(r))throw new TypeError(e);return r}function tn(t){return Number.isNaN(t.major)&&Number.isNaN(t.minor)&&Number.isNaN(t.patch)&&(t.prerelease===void 0||t.prerelease.length===0)&&(t.build===void 0||t.build.length===0)}function Pt(t,e){return t===e?0:bu(t.major,e.major)||bu(t.minor,e.minor)||bu(t.patch,e.patch)||bD(t.prerelease,e.prerelease)||Dd(t.prerelease,e.prerelease)}function vd(t){return t.toFixed(0)}function Ht(t){let e=vd(t.major),r=vd(t.minor),n=vd(t.patch),o=t.prerelease?.join(".")??"",i=t.build?.join(".")??"";return[[`${e}.${r}.${n}`,o].filter(u=>u).join("-"),i].filter(u=>u).join("+")}function wk(t,e){if(tn(e))return!0;let r=Pt(t,e);switch(e.operator){case"=":case void 0:return r===0;case"!=":return r!==0;case">":return r>0;case"<":return r<0;case">=":return r>=0;case"<=":return r<=0}}function vu(t,e){for(let r of e)if(!wk(t,r))return!1;if(t.prerelease&&t.prerelease.length>0){for(let r of e){if(tn(r))continue;let{major:n,minor:o,patch:i,prerelease:a}=r;if(a&&a.length>0&&t.major===n&&t.minor===o&&t.patch===i)return!0}return!1}return!0}function Oa(t,e){return e.some(r=>vu(t,r))}function vk(t=[]){let e=[...t],r=e.length;for(;r>=0;){let n=e[r];if(typeof n=="number"){e[r]=n+1;break}r-=1}return r===-1&&e.push(0),e}function Fa(t=[],e){let r=vk(t);if(!e)return r;let n=kt(e);if(n.every(o=>typeof o=="string")){if(n.every((o,i)=>o===r[i])&&typeof r[n.length]=="number")return r;n=[...n,0]}return n}function xn(t,e,r={}){let n=r.build!==void 0?Ar(r.build):t.build??[];switch(e){case"premajor":return{major:t.major+1,minor:0,patch:0,prerelease:Fa(t.prerelease,r.prerelease),build:n};case"preminor":return{major:t.major,minor:t.minor+1,patch:0,prerelease:Fa(t.prerelease,r.prerelease),build:n};case"prepatch":return{major:t.major,minor:t.minor,patch:t.patch+1,prerelease:Fa(t.prerelease,r.prerelease),build:n};case"prerelease":{let i=(t.prerelease??[]).length===0?t.patch+1:t.patch;return{major:t.major,minor:t.minor,patch:i,prerelease:Fa(t.prerelease,r.prerelease),build:n}}case"major":return{major:(t.prerelease??[]).length===0||t.minor!==0||t.patch!==0?t.major+1:t.major,minor:0,patch:0,prerelease:[],build:n};case"minor":{let i=(t.prerelease??[]).length===0||t.patch!==0?t.minor+1:t.minor;return{major:t.major,minor:i,patch:0,prerelease:[],build:n}}case"patch":{let i=(t.prerelease??[]).length===0?t.patch+1:t.patch;return{major:t.major,minor:t.minor,patch:i,prerelease:[],build:n}}case"pre":return{major:t.major,minor:t.minor,patch:t.patch,prerelease:Fa(t.prerelease,r.prerelease),build:n};default:throw new TypeError(`Cannot increment version: invalid argument ${e}`)}}var Cu={major:Number.NaN,minor:Number.NaN,patch:Number.NaN,prerelease:[],build:[]},Yo={operator:void 0,...Cu};function Cd(t,e){return Pt(t,e)>0}function er(t,e){return Pt(t,e)<0}function Ck(t){let r=t.match(xD)?.groups;if(!r)return null;let{operator:n,prerelease:o,buildmetadata:i}=r,a=r.major?{major:Sn(r.major,`Cannot parse comparator ${t}: invalid major version`),minor:Sn(r.minor,`Cannot parse comparator ${t}: invalid minor version`),patch:Sn(r.patch,`Cannot parse comparator ${t}: invalid patch version`),prerelease:o?kt(o):[],build:i?Ar(i):[]}:Cu;return{operator:n||void 0,...a}}function Te(t){return!t||t.toLowerCase()==="x"||t==="*"}function Ek(t){if(!Te(t.major))return Te(t.minor)?{operator:">=",major:+t.major,minor:0,patch:0,prerelease:[],build:[]}:Te(t.patch)?{operator:">=",major:+t.major,minor:+t.minor,patch:0,prerelease:[],build:[]}:{operator:">=",major:+t.major,minor:+t.minor,patch:+t.patch,prerelease:t.prerelease?kt(t.prerelease):[],build:[]}}function _k(t){if(!Te(t.major))return Te(t.minor)?{operator:"<",major:+t.major+1,minor:0,patch:0,prerelease:[],build:[]}:Te(t.patch)?{operator:"<",major:+t.major,minor:+t.minor+1,patch:0,prerelease:[],build:[]}:t.prerelease?{operator:"<=",major:+t.major,minor:+t.minor,patch:+t.patch,prerelease:kt(t.prerelease),build:[]}:{operator:"<=",major:+t.major,minor:+t.minor,patch:+t.patch,prerelease:[],build:[]}}function Sk(t){let e=t.match(new RegExp(`^${wu}`)),r=e?.groups;if(!r)return null;let n=e[0].length,o=t.slice(n).match(/^\s+-\s+/);if(!o)return null;let i=o[0].length,s=t.slice(n+i).match(new RegExp(`^${wu}\\s*$`))?.groups;if(!s)return null;let u=Ek(r),c=_k(s);return[u,c].filter(Boolean)}function xk(t){let e=Te(t.major),r=Te(t.minor),n=Te(t.patch),o=+t.major,i=+t.minor,a=+t.patch;if(e)return[Yo];if(r)return[{operator:">=",major:o,minor:0,patch:0},{operator:"<",major:o+1,minor:0,patch:0}];if(n)return o===0?[{operator:">=",major:o,minor:i,patch:0},{operator:"<",major:o,minor:i+1,patch:0}]:[{operator:">=",major:o,minor:i,patch:0},{operator:"<",major:o+1,minor:0,patch:0}];let s=kt(t.prerelease??"");return o===0?i===0?[{operator:">=",major:o,minor:i,patch:a,prerelease:s},{operator:"<",major:o,minor:i,patch:a+1}]:[{operator:">=",major:o,minor:i,patch:a,prerelease:s},{operator:"<",major:o,minor:i+1,patch:0}]:[{operator:">=",major:o,minor:i,patch:a,prerelease:s},{operator:"<",major:o+1,minor:0,patch:0}]}function Ak(t){let e=Te(t.major),r=Te(t.minor),n=Te(t.patch),o=+t.major,i=+t.minor,a=+t.patch;if(e)return[Yo];if(r)return[{operator:">=",major:o,minor:0,patch:0},{operator:"<",major:o+1,minor:0,patch:0}];if(n)return[{operator:">=",major:o,minor:i,patch:0},{operator:"<",major:o,minor:i+1,patch:0}];let s=kt(t.prerelease??"");return[{operator:">=",major:o,minor:i,patch:a,prerelease:s},{operator:"<",major:o,minor:i+1,patch:0}]}function Ok(t){let e=Te(t.major),r=Te(t.minor),n=Te(t.patch),o=+t.major,i=+t.minor,a=+t.patch;if(e)return[{operator:"<",major:0,minor:0,patch:0}];if(r)return n?[{operator:"<",major:o,minor:0,patch:0}]:[{operator:"<",major:o,minor:0,patch:0}];if(n)return[{operator:"<",major:o,minor:i,patch:0}];let s=kt(t.prerelease??""),u=Ar(t.build??"");return[{operator:"<",major:o,minor:i,patch:a,prerelease:s,build:u}]}function Fk(t){let e=Te(t.minor),r=Te(t.patch),n=+t.major,o=+t.minor,i=+t.patch;if(e)return r?[{operator:"<",major:n+1,minor:0,patch:0}]:[{operator:"<",major:n,minor:o+1,patch:0}];if(r)return[{operator:"<",major:n,minor:o+1,patch:0}];let a=kt(t.prerelease??""),s=Ar(t.build??"");return[{operator:"<=",major:n,minor:o,patch:i,prerelease:a,build:s}]}function kk(t){let e=Te(t.major),r=Te(t.minor),n=Te(t.patch),o=+t.major,i=+t.minor,a=+t.patch;if(e)return[{operator:"<",major:0,minor:0,patch:0}];if(r)return[{operator:">=",major:o+1,minor:0,patch:0}];if(n)return[{operator:">=",major:o,minor:i+1,patch:0}];let s=kt(t.prerelease??""),u=Ar(t.build??"");return[{operator:">",major:o,minor:i,patch:a,prerelease:s,build:u}]}function Pk(t){let e=Te(t.major),r=Te(t.minor),n=Te(t.patch),o=+t.major,i=+t.minor,a=+t.patch;if(e)return[Yo];if(r)return n?[{operator:">=",major:o,minor:0,patch:0}]:[{operator:">=",major:o,minor:0,patch:0}];if(n)return[{operator:">=",major:o,minor:i,patch:0}];let s=kt(t.prerelease??""),u=Ar(t.build??"");return[{operator:">=",major:o,minor:i,patch:a,prerelease:s,build:u}]}function $k(t){let e=Te(t.major),r=Te(t.minor),n=Te(t.patch),o=+t.major,i=+t.minor,a=+t.patch;if(e)return[Yo];if(r)return[{operator:">=",major:o,minor:0,patch:0},{operator:"<",major:o+1,minor:0,patch:0}];if(n)return[{operator:">=",major:o,minor:i,patch:0},{operator:"<",major:o,minor:i+1,patch:0}];let s=kt(t.prerelease??""),u=Ar(t.build??"");return[{operator:void 0,major:o,minor:i,patch:a,prerelease:s,build:u}]}function Ik(t){let e=t.match(SD)?.groups;if(!e)return Ck(t);switch(e.operator){case"^":return xk(e);case"~":case"~>":return Ak(e);case"<":return Ok(e);case"<=":return Fk(e);case">":return kk(e);case">=":return Pk(e);case"=":case"":return $k(e);default:throw new Error(`Cannot parse version range: '${e.operator}' is not a valid operator`)}}function Tk(t){return t.split(/\s+/).flatMap(Ik)}function Eu(t){let e=t.replaceAll(/(?<=<|>|=|~|\^)(\s+)/g,"").split(/\s*\|\|\s*/).map(r=>Sk(r)||Tk(r));if(e.some(r=>r.includes(null)))throw new TypeError(`Cannot parse version range: range "${t}" is invalid`);return e}function ge(t){if(typeof t!="string")throw new TypeError(`Cannot parse version as version must be a string: received ${typeof t}`);if(t.length>wd)throw new TypeError(`Cannot parse version as version length is too long: length is ${t.length}, max length is ${wd}`);t=t.trim();let e=t.match(ED)?.groups;if(!e)throw new TypeError(`Cannot parse version: ${t}`);let r=Sn(e.major,`Cannot parse version ${t}: invalid major version`),n=Sn(e.minor,`Cannot parse version ${t}: invalid minor version`),o=Sn(e.patch,`Cannot parse version ${t}: invalid patch version`),i=e.prerelease?kt(e.prerelease):[],a=e.buildmetadata?Ar(e.buildmetadata):[];return{major:r,minor:n,patch:o,prerelease:i,build:a}}function AD(t,e){let r=t.operator,n=e.operator;if(r===void 0)return tn(t)?!0:Oa(t,[[e]]);if(n===void 0)return tn(e)?!0:Oa(e,[[t]]);let o=Pt(t,e);return(r===">="||r===">")&&(n===">="||n===">")||(r==="<="||r==="<")&&(n==="<="||n==="<")||o===0&&((r===">="||r==="<=")&&(n===">="||n==="<="))||o===-1&&(r===">="||r===">")&&(n==="<="||n==="<")||o===1&&(r==="<="||r==="<")&&(n===">="||n===">")}function Rk(t){return t.every(e=>e.some(r=>Bk(r)))}function Bk(t){for(let e=0;e<t.length-1;e++){let r=t[e];for(let n of t.slice(e+1))if(!AD(r,n))return!1}return!0}function OD(t,e){return Rk([t,e])&&t.some(r=>e.some(n=>r.every(o=>n.every(i=>AD(o,i)))))}function FD(t){try{return ge(t),!0}catch{return!1}}function kD(t,e){return Pt(t,e)>=0}var ra=pe(M0()),Rg=pe(oh()),NA=pe(Jb()),zl=pe(nl());function uE(t,e){let n=["normal","bold","dim","italic","underline","strikethrough"].indexOf(t),o="\x1B[";return o+n+"m"+e+o+"0m"}var ut=class t{title=null;headers=[];rows=[];static narrowTheme={top:["\u2554","\u2550","\u2564","\u2557"],row:["\u2551"," ","\u2502","\u2551"],div:["\u255F","\u2500","\u253C","\u2562"],bot:["\u255A","\u2550","\u2567","\u255D"]};static wideTheme={top:["\u2554\u2550","\u2550","\u2550\u2564\u2550","\u2550\u2557"],row:["\u2551 "," "," \u2502 "," \u2551"],div:["\u255F\u2500","\u2500","\u2500\u253C\u2500","\u2500\u2562"],bot:["\u255A\u2550","\u2550","\u2550\u2567\u2550","\u2550\u255D"]};static roundTheme={top:["\u256D\u2500","\u2500","\u2500\u252C\u2500","\u2500\u256E"],row:["\u2502 "," "," \u2502 "," \u2502"],div:["\u251C\u2500","\u2500","\u2500\u253C\u2500","\u2500\u2524"],bot:["\u2570\u2500","\u2500","\u2500\u2534\u2500","\u2500\u256F"]};theme=t.wideTheme;columnWidth(){let e=[this.headers,...this.rows].filter(n=>n.length>0),r=e[0].map(n=>this.cast(n).length);for(let n of e.slice(1))for(let o=0;o<r.length;o++){let i=this.cast(n[o]).length;i>r[o]&&(r[o]=i)}return r}cast(e){return typeof e=="object"?"obj":e!==void 0&&typeof e.toString=="function"?e.toString():""}renderTitle(){return"[ "+this.title+" ]"}renderLine(e){let r=this.columnWidth();return e[0]+r.map(n=>e[1].repeat(n)).join(e[2])+e[3]}renderCell(e,r,n=!1){let o=this.cast(e),i=n?uE("bold",o):o,a=r-o.length,s=this.theme.row[1];switch(typeof e){case"number":return s.repeat(a)+i;case"string":return i+s.repeat(a);case"boolean":case"object":return s.repeat(Math.ceil(a/2))+uE("italic",o)+s.repeat(Math.floor(a/2));default:return s.repeat(a)}}renderRow(e,r=!1){let n=this.theme.row,o=this.columnWidth();return n[0]+e.map((i,a)=>this.renderCell(i,o[a],r)).join(n[2])+n[3]}toString(){let e=this.theme,r=this.headers.length>0,n=this.rows.length>0;return[this.title?this.renderTitle():"",r||n?this.renderLine(e.top):"",r?this.renderRow(this.headers,!0):"",r&&n?this.renderLine(e.div):"",...this.rows.map(o=>this.renderRow(o)),r||n?this.renderLine(e.bot):""].filter(o=>o.length>0).join(`
|
|
154
|
-
`)}};async function ol(t){try{let r=`https://registry.npmjs.org/${encodeURIComponent(t.toLowerCase())}`,n=await fetch(r,{headers:{accept:"application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"}});return n.ok&&(await n.json())["dist-tags"]?.latest||null}catch{return null}}async function Ce(){let t=await ol("@capgo/cli")??"",e=t?.split(".")[0];t!==
|
|
155
|
-
Please use @capgo/cli@${t}" or @capgo/cli@${e} to keep up to date with the latest features and bug fixes.`)}function rN(t){return new Promise(e=>{setTimeout(e,t)})}function nN(t){return new Date(t||"").toLocaleTimeString()}async function Ct(t,e,r,n,o,i="\u2705"){await me(r,{channel:t,event:n,icon:i,user_id:e,...o?{tags:{"app-id":o}}:{},notify:!1})}async function oN(t,e,r,n){if(le(e))throw await Ct(t,r,n,"canceled",void 0,"\u{1F937}"),new Error("Command cancelled")}async function iN(t,e,r){try{let n=await
|
|
156
|
-
${NA.default.render(t)}`:"";function Hl(t){return new Promise(e=>{setTimeout(e,t)})}function LA(t){return(0,Vr.isMonorepo)(t)||(0,Vr.isNXMonorepo)(t)}function bt(t){return(0,Vr.isMonorepo)(t)?(0,Vr.findMonorepoRoot)(t):(0,Vr.isNXMonorepo)(t)?(0,Vr.findNXMonorepoRoot)(t):t}function jA(t=bt((0,nr.cwd)()),e=void 0){let r=e?.split(",")[0];if(r&&!(0,_e.existsSync)(r)){let o=`Package.json at ${r} does not exist`;throw l.error(o),new Error(o)}let n=(0,_e.readFileSync)(r??(0,ye.join)(t,
|
|
154
|
+
`)}};async function ol(t){try{let r=`https://registry.npmjs.org/${encodeURIComponent(t.toLowerCase())}`,n=await fetch(r,{headers:{accept:"application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"}});return n.ok&&(await n.json())["dist-tags"]?.latest||null}catch{return null}}async function Ce(){let t=await ol("@capgo/cli")??"",e=t?.split(".")[0];t!==fr.version&&l.warning(`\u{1F6A8} You are using @capgo/cli@${fr.version} it's not the latest version.
|
|
155
|
+
Please use @capgo/cli@${t}" or @capgo/cli@${e} to keep up to date with the latest features and bug fixes.`)}function rN(t){return new Promise(e=>{setTimeout(e,t)})}function nN(t){return new Date(t||"").toLocaleTimeString()}async function Ct(t,e,r,n,o,i="\u2705"){await me(r,{channel:t,event:n,icon:i,user_id:e,...o?{tags:{"app-id":o}}:{},notify:!1})}async function oN(t,e,r,n){if(le(e))throw await Ct(t,r,n,"canceled",void 0,"\u{1F937}"),new Error("Command cancelled")}async function iN(t,e,r){try{let n=await Dr(),o=r?{...e,rangeStart:r}:{...e},i=await fetch(`${n.hostApi}/private/stats`,{method:"POST",headers:{"Content-Type":"application/json",capgkey:t},body:JSON.stringify(o)});if(!i.ok)throw new Error(`HTTP error! status: ${i.status}`);let a=await i.json();if(a?.length>0)return a}catch(n){console.error("Cannot get devices",n),l.error(`Cannot get stats ${M(n)}`)}return[]}function aN(t){let e={get:{summary:()=>"Update request by device. Waiting for download\u2026",level:"info",snag:"done"},delete:{summary:()=>"Bundle deleted on device",level:"info"},set:{summary:()=>"Bundle set on device \u2764\uFE0F",level:"info",snag:"set",stop:!0},NoChannelOrOverride:{summary:()=>"No default channel/override; create it in channel settings",level:"error"},needPlanUpgrade:{summary:({baseUrl:r})=>`Out of quota. Upgrade plan: ${r}/settings/organization/plans`,level:"error"},missingBundle:{summary:()=>"Requested bundle not found on server",level:"error"},noNew:{summary:()=>"Device already has latest available version",level:"info"},disablePlatformIos:{summary:()=>"iOS platform disabled in channel",level:"error"},disablePlatformAndroid:{summary:()=>"Android platform disabled in channel",level:"error"},disableAutoUpdate:{summary:()=>"Automatic updates disabled in channel",level:"error"},disableAutoUpdateToMajor:{summary:()=>"Auto-update to major versions disabled",level:"error"},disableAutoUpdateToMinor:{summary:()=>"Auto-update to minor versions disabled",level:"error"},disableAutoUpdateToPatch:{summary:()=>"Auto-update to patch versions disabled",level:"error"},disableAutoUpdateUnderNative:{summary:()=>"Channel update version is lower than device native",level:"error"},disableDevBuild:{summary:()=>"Dev build updates disabled in channel",level:"error"},disableEmulator:{summary:()=>"Emulator updates disabled in channel",level:"error"},cannotGetBundle:{summary:()=>"Cannot retrieve bundle from channel",level:"error"},cannotUpdateViaPrivateChannel:{summary:()=>"No access to private channel",level:"error"},channelMisconfigured:{summary:()=>"Channel configuration invalid or incomplete",level:"error"},disableAutoUpdateMetadata:{summary:()=>"Auto-update on metadata disabled",level:"error"},set_fail:{summary:()=>"Bundle set failed. Possibly corrupted",level:"error"},reset:{summary:()=>"Device reset to builtin bundle",level:"warn"},update_fail:{summary:()=>"Installed bundle failed to call notifyAppReady",level:"error"},checksum_fail:{summary:()=>"Downloaded bundle checksum validation failed",level:"error"},windows_path_fail:{summary:()=>"Bundle contains illegal Windows-style paths",level:"error"},canonical_path_fail:{summary:()=>"Bundle contains non-canonical paths",level:"error"},directory_path_fail:{summary:()=>"Bundle ZIP contains invalid directory paths",level:"error"},unzip_fail:{summary:()=>"Failed to unzip bundle on device",level:"error"},low_mem_fail:{summary:()=>"Download failed due to low device memory",level:"error"},app_moved_to_background:{summary:()=>"App moved to background",level:"info"},app_moved_to_foreground:{summary:()=>"App moved to foreground",level:"info"},decrypt_fail:{summary:()=>"Failed to decrypt downloaded bundle",level:"error"},getChannel:{summary:()=>"Queried current channel on device",level:"info"},setChannel:{summary:()=>"Channel set on device",level:"info"},InvalidIp:{summary:()=>"Device appears in Google datacenter; blocking recent updates (<4h)",level:"warn"},uninstall:{summary:()=>"App uninstalled or Capgo data cleared on device",level:"warn"}};if(t.action.startsWith("download_")){let r=t.action.split("_")[1];return r==="complete"?{summary:()=>"Download complete; relaunch app to apply",level:"info",snag:"downloaded"}:r==="fail"?{summary:()=>"Download failed on device",level:"error"}:{summary:()=>`Downloading ${r}%`,level:"info"}}return e[t.action]||null}async function sN(t,e,r,n,o,i){let a=aN(t);if(!a)return{};a.snag&&await Ct(e,r,n,a.snag);let s=nN(t.created_at),u=t.action,c=t.version_id?`(version #${t.version_id})`:"",f=t.version?` (version ${t.version})`:c,d=`${a.summary({data:t,baseAppUrl:o,baseUrl:i})}${f}`;return{row:[s,t.device_id,u,d],stop:a.stop}}async function Dm(t,e,r,n,o){let i=!0,a=await Dr(),s=`${a.hostWeb}/app/${r}`;await Ct(t,n,e,"Use waitlog",r);let u={appId:r,devicesId:o?[o]:void 0,order:[{key:"created_at",sortable:"desc"}],rangeStart:new Date().toISOString()},c=null,f=new Set,d=Ee(),p=`${a.host}/docs/plugins/updater/debugging/#sent-from-the-backend`;for(d.start(`Waiting for logs (Expect delay of 30 sec) more info: ${p}`);i;){await rN(5e3);let h=await iN(e,u,c);if(h.length>0){let m=h.reduce((E,g)=>{let _=new Date(g.created_at).getTime();return Math.max(E,_)},c?new Date(c).getTime():0);m>0&&(c=new Date(m).toISOString());let y=h.filter(E=>{let g=`${E.app_id}|${E.device_id}|${E.action}|${E.version_id}|${E.created_at}`;return f.has(g)?!1:(f.add(g),!0)}).sort((E,g)=>new Date(E.created_at).getTime()-new Date(g.created_at).getTime()),b=new ut;b.headers=["Time","Device","Key","Message"],b.theme=ut.roundTheme,b.rows=[];let v=!1;for(let E of y){let{row:g,stop:_}=await sN(E,t,n,e,s,a.hostWeb);g&&b.rows.push(g),_&&(v=!0)}if(b.rows.length&&(d.stop(""),l.info(b.toString()),d.start(`Waiting for logs (Expect delay of 30 sec) more info: ${p}`)),v){i=!1;break}}}return d.stop("Stop watching logs"),Promise.resolve()}async function cE(t,e){ee("Debug Live update in Capgo"),await Ce(),e.apikey=e.apikey||ne();let r=await te();t=fe(t,r?.config);let n=e.device;if(!e.apikey)throw l.error("Missing API key, you need to provide an API key to delete your app"),new Error("Missing API key");if(!t)throw l.error("Missing argument, you need to provide a appId, or be in a capacitor project"),new Error("Missing appId");let o=await re(e.apikey,e.supaHost,e.supaAnon),i=await Et(o,t),a=await ue({message:"Automatic check if update working in device ?"});await oN("debug",a,i,e.apikey),a?(l.info(`Wait logs sent to Capgo from ${t} device, Please background your app and open it again \u{1F4AA}`),await Dm("debug",e.apikey,t,i,n),K("Done \u2705")):K("Canceled \u274C")}var bm=require("node:buffer"),lE=require("node:crypto"),uN=(()=>{let t=[];for(let e=0;e<256;e++){let r=e;for(let n=0;n<8;n++)r=r&1?3988292384^r>>>1:r>>>1;t[e]=r}return t})();function cN(t){let e=4294967295;for(let r=0;r<t.length;r++){let n=t[r];e=uN[(e^n)&255]^e>>>8}return e=e^4294967295,(e>>>0).toString(16).padStart(8,"0")}async function cn(t,e="sha256"){let r=bm.Buffer.isBuffer(t)?t:bm.Buffer.from(t);if(e==="crc32")return cN(r);let n=(0,lE.createHash)(e);return n.update(r),n.digest("hex")}var Os=pe(qx());async function Hx(){let t=await(0,Os.loadConfig)();return{config:t.app.extConfig,path:t.app.extConfigFilePath}}async function fg(t,e,r=!1){let n=await(0,Os.loadConfig)(),{extConfig:o}=n.app;o&&(o.plugins||(o.plugins={extConfig:{},[t]:{}}),o.plugins[t]||(o.plugins[t]={}),r?o=e.config:o.plugins[t]=e.config.plugins?.[t],(0,Os.writeConfig)(o,n.app.extConfigFilePath))}async function Zi(t,e=!1){await fg("CapacitorUpdater",t,e)}var na=".capgo_key",or=".capgo_key_v2",Kl=`${na}.pub`,hn=`${or}.pub`,kA="https://capgo.app",PA="https://files.capgo.app",$A="https://api.capgo.app",IA="https://console.capgo.app",Bg=12e4,HM=1024*1024*20,VM=1024*1024*1024,zM=1024*1024*99,vr="package.json",oa=/^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-z-][0-9a-z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-z-][0-9a-z-]*))*))?(?:\+([0-9a-z-]+(?:\.[0-9a-z-]+)*))?$/i,M=t=>t?`
|
|
156
|
+
${NA.default.render(t)}`:"";function Hl(t){return new Promise(e=>{setTimeout(e,t)})}function LA(t){return(0,Vr.isMonorepo)(t)||(0,Vr.isNXMonorepo)(t)}function bt(t){return(0,Vr.isMonorepo)(t)?(0,Vr.findMonorepoRoot)(t):(0,Vr.isNXMonorepo)(t)?(0,Vr.findNXMonorepoRoot)(t):t}function jA(t=bt((0,nr.cwd)()),e=void 0){let r=e?.split(",")[0];if(r&&!(0,_e.existsSync)(r)){let o=`Package.json at ${r} does not exist`;throw l.error(o),new Error(o)}let n=(0,_e.readFileSync)(r??(0,ye.join)(t,vr));return JSON.parse(n)}function Ng(t=bt((0,nr.cwd)()),e=void 0){return jA(t,e).scripts}function Ir(t=bt((0,nr.cwd)()),e=void 0){return jA(t,e).version??""}function TA(t){let e=t.replace("^","").replace("~","");if(FD(e))try{let r=ge(e);return Ht(r)}catch{return e}return e}async function zr(t,e=(0,nr.cwd)(),r){if(t!=="@capgo/capacitor-updater")return null;let n=r?(0,ye.dirname)(r):e;try{let u=`${t}/package.json`,{createRequire:c}=await import("node:module"),d=c((0,ye.join)(n,"package.json")).resolve(u),p=JSON.parse((0,_e.readFileSync)(d,"utf-8"));if(p.version)return p.version}catch{}let o=n,i=ye.default.parse(o).root;for(;o!==i;){let u=(0,ye.join)(o,"node_modules",t,vr);if((0,_e.existsSync)(u))try{let f=JSON.parse((0,_e.readFileSync)(u,"utf-8"));if(f.version)return f.version}catch{}let c=(0,ye.dirname)(o);if(c===o)break;o=c}let a=null,s=(0,ye.join)(e,"ios","App","Podfile");if((0,_e.existsSync)(s))try{let c=(0,_e.readFileSync)(s,"utf-8").match(/pod\s+['"]CapgoCapacitorUpdater['"],\s*:path\s*=>\s*['"]([^'"]+)['"]/);c?.[1]&&(a=(0,ye.resolve)((0,ye.join)(e,"ios","App",c[1])))}catch{}if(!a){let u=(0,ye.join)(e,"android","capacitor.settings.gradle");if((0,_e.existsSync)(u))try{let f=(0,_e.readFileSync)(u,"utf-8").match(/project\(':capgo-capacitor-updater'\)\.projectDir\s*=\s*new\s+File\(['"]([^'"]+)['"]/);f?.[1]&&(a=(0,ye.resolve)((0,ye.join)(e,"android",f[1])).replace(/\/android$/,""))}catch{}}if(a){let u=(0,ye.join)(a,vr);if((0,_e.existsSync)(u))try{let c=JSON.parse((0,_e.readFileSync)(u,"utf-8"));if(c.version)return c.version}catch{}}try{let c=(await Cr(e)).get(t);if(c)return c}catch{}return null}async function Cr(t=bt((0,nr.cwd)()),e=void 0){let r=e?.split(",");if(r??=[(0,ye.join)(t,vr)],r){for(let o of r)if(!(0,_e.existsSync)(o)){let i=`Package.json at ${o} does not exist`;throw l.error(i),new Error(i)}}let n=new Map;for(let o of r){let i=(0,_e.readFileSync)(o),a=JSON.parse(i);for(let s in a.dependencies)n.set(s,TA(a.dependencies[s]));for(let s in a.devDependencies)n.set(s,TA(a.devDependencies[s]))}return n}async function te(){try{let t=await Hx();if(!t){let e="No capacitor config file found, run `cap init` first";throw l.error(e),new Error(e)}return t}catch(t){let e=`No capacitor config file found, run \`cap init\` first ${M(t)}`;throw l.error(e),new Error(e)}}async function Lg(t,e){let r=await te();return r?.config&&(r.config.plugins??={},r.config.plugins.extConfig??={},r.config.plugins[t]??={},r.config.plugins[t]={...r.config.plugins[t],...e},await fg(t,r)),r}async function $s(t){return Lg("CapacitorUpdater",t)}async function Dr(){try{let t=await te(),e={host:t?.config?.plugins?.CapacitorUpdater?.localHost||kA,hostWeb:t?.config?.plugins?.CapacitorUpdater?.localWebHost||IA,hostFilesApi:t?.config?.plugins?.CapacitorUpdater?.localApiFiles||PA,hostApi:t?.config?.plugins?.CapacitorUpdater?.localApi||$A};return t?.config?.plugins?.CapacitorUpdater?.localSupa&&t?.config?.plugins?.CapacitorUpdater?.localSupaAnon&&(l.info("Using custom supabase instance from capacitor.config.json"),e.supaKey=t?.config?.plugins?.CapacitorUpdater?.localSupaAnon,e.supaHost=t?.config?.plugins?.CapacitorUpdater?.localSupa),e}catch{return{host:kA,hostWeb:IA,hostFilesApi:PA,hostApi:$A}}}var KM=/([A-Za-z0-9]+)\.(java|swift|kt|scala)$/;async function Gl(){let t=await Dr();try{let e=await fetch(`${t.hostApi}/private/config`);if(!e.ok)throw new Error(`HTTP error! status: ${e.status}`);return{...await e.json(),...t}}catch{return l.info(`Local config ${M(t)}`),t}}async function UA(){let t=await Dr();try{let e=await fetch(`${t.hostFilesApi}/files/config`);if(!e.ok)throw new Error(`HTTP error! status: ${e.status}`);return await e.json()}catch{return{partialUpload:!1,TUSUpload:!1,partialUploadForced:!1,TUSUploadForced:!1,maxUploadLength:VM,maxChunkSize:zM,alertUploadSize:HM}}}async function re(t,e,r){let n=await Gl();if(e&&r&&(l.info("Using custom supabase instance from provided options"),n.supaHost=e,n.supaKey=r),!n.supaHost||!n.supaKey)throw l.error("Cannot connect to server please try again later"),new Error("Cannot connect to server please try again later");return(0,ra.createClient)(n.supaHost,n.supaKey,{auth:{persistSession:!1},global:{headers:{capgkey:t}}})}async function GM(t,e,r){let{data:n}=await t.rpc("is_allowed_capgkey",{apikey:e,keymode:r}).single();if(!n){l.error("Invalid API key or insufficient permissions.");let i=`Your key should be: ${r.map((a,s)=>r.length===1?`"${a}"`:s===r.length-1?`or "${a}"`:`"${a}", `).join("")} mode.`;throw l.error(i),new Error("Invalid API key or insufficient permissions.")}}async function MA(t,e){let{data:r}=await t.rpc("is_paying_org",{orgid:e}).single();return r||!1}async function qA(t,e){let{data:r}=await t.rpc("is_trial_org",{orgid:e}).single();return r||0}async function WM(t,e){let{data:r}=await t.rpc("is_allowed_action_org",{orgid:e}).single();return!!r}async function YM(t,e,r){let{data:n}=await t.rpc("is_allowed_action",{apikey:r,appid:e}).single();return!!n}var St=(a=>(a[a.none=0]="none",a[a.read=1]="read",a[a.upload=2]="upload",a[a.write=3]="write",a[a.admin=4]="admin",a[a.super_admin=5]="super_admin",a))(St||{}),ia=(t,e)=>t>=e;async function HA(t,e,r){let{data:n,error:o}=await t.rpc("get_org_perm_for_apikey",{apikey:e,app_id:r}).single();if(o)throw l.error("Cannot get permissions for organization!"),console.error(o),new Error("Cannot get permissions for organization");if(n.includes("perm")){let s=null;switch(n){case"perm_none":{s=0;break}case"perm_read":{s=1;break}case"perm_upload":{s=2;break}case"perm_write":{s=3;break}case"perm_admin":{s=4;break}case"perm_owner":{s=5;break}default:throw n.includes("invite")?(l.info("Please accept/deny the organization invitation before trying to access the app"),new Error("Organization invitation pending")):(l.error(`Invalid output when fetching organization permission. Response: ${n}`),new Error(`Invalid output when fetching organization permission. Response: ${n}`))}return{okay:!0,data:s}}let a=null;switch(n){case"INVALID_APIKEY":{a="INVALID_APIKEY";break}case"NO_APP":{a="NO_APP";break}case"NO_ORG":{a="NO_ORG";break}default:throw l.error(`Invalid error when fetching organization permission. Response: ${n}`),new Error(`Invalid error when fetching organization permission. Response: ${n}`)}return{okay:!1,error:a}}async function VA(t,e,r){let{data:n,error:o}=await t.rpc("get_organization_cli_warnings",{orgid:e,cli_version:r});if(o){l.error(`Cannot get cli warnings: ${M(o)}`);return}if(n.length>0){l.warn(`Found ${n.length} cli warnings for your organization.`);let i=null;for(let a of n){if(typeof a!="object"||typeof a.message!="string"||typeof a.fatal!="boolean"){l.error(`Invalid cli warning: ${a}`);continue}let s=a;s.fatal?(l.error(`${s.message.replaceAll("\\n",`
|
|
157
157
|
`)}`),i=new Error(s.message)):l.warn(`${s.message.replaceAll("\\n",`
|
|
158
158
|
`)}`)}if(i)throw l.error("Please fix the warnings and try again."),i;l.info("End of cli warnings.")}}async function zA(t,e,r,n,o=!0){let i=await Gl();if(!await(n?YM(t,n,r):WM(t,e)))throw l.error(`You need to upgrade your plan to continue to use capgo.
|
|
159
159
|
Upgrade here: ${i.hostWeb}/settings/organization/plans
|
|
@@ -163,12 +163,12 @@ Trial expires in ${s} days, upgrade here: ${i.hostWeb}/settings/organization/pla
|
|
|
163
163
|
Upgrade here: ${i.hostWeb}/settings/organization/plans
|
|
164
164
|
`),Hl(100),Promise.resolve().then(()=>(Ig(),$g)).then(c=>{c.default(`${i.hostWeb}/settings/organization/plans`)}),Hl(500),new Error("Plan upgrade required for upload");let[s,u]=await Promise.all([qA(t,e),MA(t,e)]);s>0&&o&&!u&&l.warn(`WARNING !!
|
|
165
165
|
Trial expires in ${s} days, upgrade here: ${i.hostWeb}/settings/organization/plans
|
|
166
|
-
`)}function ne(t=!1){let e=nr.env.CAPGO_TOKEN?.trim();if(e)return t||l.info("Use CAPGO_TOKEN environment variable"),e;let r=(0,Vl.homedir)(),n,o=`${r}/.capgo`;if((0,_e.existsSync)(o)&&(t||l.info(`Use global API key ${o}`),n=(0,_e.readFileSync)(o,"utf8").trim()),o=".capgo",!n&&(0,_e.existsSync)(o)&&(t||l.info(`Use local API key ${o}`),n=(0,_e.readFileSync)(o,"utf8").trim()),!n){let i=`Cannot find API key in local folder or global, please login first with ${nt().runner} @capgo/cli login`;throw l.error(i),new Error(i)}return n}async function*jg(t){let e=await(0,_e.readdirSync)(t,{withFileTypes:!0});for(let r of e){let n=(0,ye.resolve)(t,r.name);r.isDirectory()&&!r.name.startsWith(".")&&!r.name.startsWith("node_modules")&&!r.name.startsWith("dist")?yield*jg(n):yield n}}function aa(t){let e=/\.(jpg|jpeg|png|gif|bmp|webp)$/i,r=t.match(e);if(r)switch(r[1].toLowerCase()){case"jpg":case"jpeg":return"image/jpeg";case"png":return"image/png";case"webp":return"image/webp"}return null}async function Wl(){let t=(0,nr.cwd)(),e=!1,r=(0,ye.resolve)(t,"tsconfig.json");(0,_e.existsSync)(r)&&(e=!0);for await(let n of jg(t)){if(n.includes("angular.json"))return l.info("Found angular project"),e?"angular-ts":"angular-js";if(n.includes("nuxt.config.js")||n.includes("nuxt.config.ts"))return l.info("Found nuxtjs project"),e?"nuxtjs-ts":"nuxtjs-js";if(n.includes("next.config.js")||n.includes("next.config.mjs"))return l.info("Found nextjs project"),e?"nextjs-ts":"nextjs-js";if(n.includes("svelte.config.js"))return l.info("Found sveltekit project"),e?"sveltekit-ts":"sveltekit-js";if(n.includes("rolluconfig.js"))return l.info("Found svelte project"),e?"svelte-ts":"svelte-js";if(n.includes("vue.config.js"))return l.info("Found vue project"),e?"vue-ts":"vue-js";if(n.includes(wr)){let o=(0,ye.dirname)(n),i=await vr(o);if(i){if(i.get("react"))return l.info("Found react project test"),e?"react-ts":"react-js";if(i.get("vue"))return l.info("Found vue project"),e?"vue-ts":"vue-js"}}}return"unknown"}function GA(t,e){return t==="angular-js"||t==="angular-ts"?e?"src/main.ts":"src/main.js":t==="nextjs-js"||t==="nextjs-ts"?e?"src/app/layout.tsx":"src/app/layout.js":t==="svelte-js"||t==="svelte-ts"||t==="vue-js"||t==="vue-ts"?e?"src/main.ts":"src/main.js":t==="react-js"||t==="react-ts"?e?"src/index.tsx":"src/index.js":null}async function Ug(t){if(t==="angular")return l.info("Angular project detected"),"build";if(t==="nuxtjs")return l.info("Nuxtjs project detected"),"generate";if(t==="nextjs"){if(l.info("Nextjs project detected"),l.warn("Please make sure you have configured static export in your next.config.js: https://nextjs.org/docs/pages/building-your-application/deploying/static-exports"),l.warn("Please make sure you have the output: 'export' and distDir: 'dist' in your next.config.js"),!await ue({message:"Do you want to continue?"})){let r="Build command selection aborted by user";throw l.error(r),new Error(r)}return"build"}if(t==="sveltekit"){if(l.info("Sveltekit project detected"),l.warn("Please make sure you have the adapter-static installed: https://kit.svelte.dev/docs/adapter-static"),l.warn("Please make sure you have the pages: 'dist' and assets: 'dest', in your svelte.config.js adapter"),!await ue({message:"Do you want to continue?"})){let r="Build command selection aborted by user";throw l.error(r),new Error(r)}return"build"}return"build"}async function WA(){let t=/(main|index)\.(ts|tsx|js|jsx)$/,e="",r=(0,nr.cwd)(),n=r.split("/").length;for await(let o of jg(r))if(o.split("/").length-n<=2&&t.test(o)){e=o,l.info(`Found main file here ${o}`);break}return e}async function Mg(t,e){return t.from("app_versions").upsert(e,{onConflict:"name,app_id"}).eq("app_id",e.app_id).eq("name",e.name)}async function YA(t,e,r){let n={app_id:e,name:r,version:0};try{let i=await t.functions.invoke("files/upload_link",{body:JSON.stringify(n)});if(i.error){if(i.error instanceof ra.FunctionsHttpError){let a=await i.error.context.json();l.error(`Upload URL error: ${a.status||JSON.stringify(a)}`)}else l.error(`Cannot get upload url: ${i.error.message}`);return""}return i.data.url}catch(o){l.error(`Cannot get upload url ${M(o)}`)}return""}async function*JA(t){let e=(0,_e.readdirSync)(t,{withFileTypes:!0});for(let r of e){let n=(0,ye.join)(t,r.name);r.isDirectory()?yield*JA(n):yield n}}var XA="5.10.0",ZA="6.25.0",Is="7.0.30";function Hn(t,e="5.10.0",r="6.25.0",n="7.25.0"){return!!(t.major===5&&er(t,ge(e))||t.major===6&&er(t,ge(r))||t.major===7&&er(t,ge(n)))}async function QA(t){let e=[],r=[".DS_Store",".git",".gitignore","node_modules","package-lock.json","tsconfig.json","tsconfig.app.json","tsconfig.spec.json","tsconfig.app.json","tsconfig.spec.json","tsconfig.app.json","tsconfig.spec.json"];for await(let n of JA(t)){if(r.some(s=>n.includes(s))){l.info(`Ignoring file ${n}, please ensure you have only required files in your dist folder`);continue}let o=(0,_e.readFileSync)(n);if(o.length===0){l.info(`Ignoring empty file ${n}, please ensure you have only required files in your dist folder`);continue}let i=await cn(o,"sha256"),a=(0,ye.relative)(t,n);a.startsWith("/")&&(a=a.substring(1)),e.push({file:a,hash:i})}return e}async function Yl(t){return(0,Vl.platform)()==="win32"?XM(t):JM(t)}function JM(t){let e=new Rg.default;return e.addLocalFolder(t),e.toBuffer()}async function XM(t){l.info("Zipping file windows mode");let e=new Rg.default,r=(n,o)=>{let i=(0,_e.readdirSync)(n);for(let a of i){let s=(0,ye.join)(n,a),u=(0,_e.statSync)(s);if(u.isFile()){let c=(0,_e.readFileSync)(s);e.addFile((0,ye.join)(o,a).split(ye.sep).join("/"),c)}else u.isDirectory()&&r(s,(0,ye.join)(o,a))}};return r(t,""),e.toBuffer()}async function eO(t,e,r,n,o,i,a,s){return new Promise((u,c)=>{me(t,{channel:"app",event:"App TUS upload",icon:"\u23EB",user_id:r,tags:{"app-id":n},notify:!1}),new zl.Upload(e,{endpoint:`${a.hostFilesApi}/files/upload/attachments/`,chunkSize:s,metadataForPartialUploads:{filename:`orgs/${r}/apps/${n}/${o}.zip`,filetype:"application/gzip"},metadata:{filename:`orgs/${r}/apps/${n}/${o}.zip`,filetype:"application/zip"},headers:{Authorization:t},onError(d){if(l.error(`Error uploading bundle: ${d.message}`),d instanceof zl.DetailedError){let p=d.originalResponse?.getBody(),h=JSON.parse(p||'{"error": "unknown error"}');c(h.status||h.error||h.message||"unknown error")}else c(d.message||d.toString()||"unknown error")},onProgress(d,p){let h=(d/p*100).toFixed(2);i.message(`Uploaded ${h}%`)},async onSuccess(){await me(t,{channel:"app",event:"App TUS done",icon:"\u23EB",user_id:r,tags:{"app-id":n},notify:!1}).catch(),u(!0)}}).start()})}async function tO(t,e,r){let n={app_id:e,name:r};try{let i=await t.functions.invoke("private/delete_failed_version",{body:JSON.stringify(n),method:"DELETE"});if(i.error){if(i.error instanceof ra.FunctionsHttpError){let a=await i.error.context.json();l.error(`Cannot delete failed version: ${a.status||JSON.stringify(a)}`)}else l.error(`Cannot delete failed version: ${i.error.message}`);return}return i.data?.status}catch(o){if(o instanceof ra.FunctionsHttpError){let i=await o.context.json();l.error(`Cannot delete failed version: ${i.message||JSON.stringify(i)}`)}else l.error(`Cannot delete failed version: ${M(o)}`)}}async function Jl(t,e){if(!e.app_id||!e.name||!e.created_by)return l.error("missing app_id, name, or created_by"),Promise.reject(new Error("missing app_id, name, or created_by"));let{data:r,error:n}=await t.from("channels").select().eq("app_id",e.app_id).eq("name",e.name).single();return r&&!n?t.from("channels").update(e).eq("app_id",e.app_id).eq("name",e.name).select().single():t.from("channels").insert(e).select().single()}async function me(t,e,r){try{r&&l.info(`Get remove config: for ${e.event}`);let n=await Gl();r&&l.info(`Sending LogSnag event: ${JSON.stringify(e)}`);let o=new AbortController,i=setTimeout(()=>o.abort(),1e4);try{let a=await fetch(`${n.hostApi}/private/events`,{method:"POST",body:JSON.stringify(e),headers:{"Content-Type":"application/json",capgkey:t},signal:o.signal});if(clearTimeout(i),!a.ok)throw new Error(`HTTP error! status: ${a.status}`);let s=await a.json();s.error&&l.error(`Failed to send LogSnag event: ${s.error}`)}finally{clearTimeout(i)}}catch(n){r&&(l.error("Failed to send Stats event details:"),l.error(M(n)))}}async function sa(t,e){let{error:r,data:n}=await t.rpc("get_orgs_v6");if(r)throw l.error("Cannot get the list of organizations - exiting"),l.error(`Error ${JSON.stringify(r)}`),new Error("Cannot get the list of organizations");let o=n.filter(u=>!!e.find(c=>c===u.role));if(n.length===0)throw l.error("Could not get organization please create an organization first"),new Error("No organizations available");if(o.length===0)throw l.error(`Could not find organization with roles: ${e.join(" or ")} please create an organization or ask the admin to add you to the organization with this roles`),new Error("Could not find organization with required roles");let i=o.length>1?await gt({message:"Please pick the organization that you want to insert to",options:o.map(u=>({value:u.gid,label:u.name}))}):o[0].gid;if(le(i))throw l.error("Canceled organization selection, exiting"),new Error("Organization selection cancelled");let a=i,s=n.find(u=>u.gid===a);return l.info(`Using the organization "${s.name}" as the app owner`),s}async function ae(t,e,r=["all"]){await GM(t,e,r);let{data:n,error:o}=await t.rpc("get_user_id",{apikey:e}).single(),i=(n||"").toString();if(!i||o)throw l.error("Cannot auth user with apikey"),new Error("Cannot authenticate user with provided API key");return i}async function Et(t,e){let{data:r,error:n}=await t.from("apps").select("owner_org").eq("app_id",e).single();if(!r||n)throw l.error(`Cannot get organization id for app id ${e}`),M(n),new Error(`Cannot get organization id for app id ${e}`);return r.owner_org}function ua(t){return new Date(t||"").toLocaleString()}var RA=!1,ta="npm",Ps="install",Tg="npx";function nt(){if(RA)return{pm:ta,command:Ps,installCommand:`${ta} ${Ps}`,runner:Tg};let t=bt((0,nr.cwd)());return ta=Aa(t,"npm"),Ps=Du(ta),RA=!0,Tg=gD(t),{pm:ta,command:Ps,installCommand:`${ta} ${Ps}`,runner:Tg}}function rO(t){return(0,_e.readdirSync)(t,{withFileTypes:!0}).flatMap(n=>{let o=(0,ye.join)(t,n.name);return n.isDirectory()?rO(o):o.split(`node_modules${ye.sep}`)[1]||o})}async function qg(t,e){let r=e?e.split(","):[],n;try{n=await vr("",t)}catch(f){throw l.error("Invalid package.json, JSON parsing failed"),console.error("json parse error: ",f),f instanceof Error?f:new Error("Invalid package.json")}let o=t?.split(",")[0],i=o?ye.default.resolve(o).replace(wr,""):bt((0,nr.cwd)());if(!n)throw l.error("Missing dependencies section in package.json"),new Error("Missing dependencies section in package.json");for(let[f,d]of Object.entries(n))if(typeof d!="string")throw l.error(`Invalid dependency ${f}: ${d}, expected string, got ${typeof d}`),new Error(`Invalid dependency ${f}: expected string version`);let a=r.length===0?[(0,ye.join)((0,nr.cwd)(),"node_modules")]:r;if(!a.some(f=>(0,_e.existsSync)(f))){let f=Aa(i,"npm"),d=Du(f);throw l.error(`Missing node_modules folder at ${a.join(", ")}, please run ${f} ${d}`),new Error("Missing node_modules folder")}let u=!1,c=await Promise.all(Array.from(n.entries()).map(async([f,d])=>{let p=!1,h=!1,m=d;for(let y of a){let b=(0,ye.join)(y,f);if((0,_e.existsSync)(b)){p=!0;try{let v=(0,ye.join)(b,wr);if((0,_e.existsSync)(v)){let E=JSON.parse((0,_e.readFileSync)(v,"utf-8"));E.version&&(m=E.version)}}catch{}try{if(rO(b).some(E=>KM.test(E))){h=!0;break}}catch(v){throw l.error(`Error reading node_modules files for ${f} package in ${y}`),console.error(v),v instanceof Error?v:new Error(`Error reading node_modules files for ${f}`)}}}if(!p){u=!0;let y=Aa(i,"npm"),b=Du(y);return l.error(`Missing dependency ${f}, please run ${y} ${b}`),{name:f,version:d}}return{name:f,version:m,native:h}})).catch(()=>[]);if(u||c.find(f=>f.native===void 0))throw l.error("Missing dependencies or invalid dependencies"),l.error("If you use monorepo, workspace or any special package manager you can use the --package-json [path,] and --node-modules [path,] options to make the command work properly"),new Error("Missing dependencies or invalid dependencies");return c}async function ZM(t,e,r){let{data:n,error:o}=await t.from("channels").select("version(checksum)").eq("name",r).eq("app_id",e).single(),i=n;return o||i===null||!i.version||!i.version.checksum?null:i.version.checksum}function QM(t){if(!t)throw l.error("Error parsing native packages, perhaps the metadata does not exist in Capgo?"),new Error("Error parsing native packages");for(let r of t){if(typeof r!="object")throw l.error(`Invalid remote native package data: ${r}, expected object, got ${typeof r}`),new Error("Invalid remote native package data");let{name:n,version:o}=r;if(!n||typeof n!="string")throw l.error(`Invalid remote native package name: ${n}, expected string, got ${typeof n}`),new Error("Invalid remote native package name");if(!o||typeof o!="string")throw l.error(`Invalid remote native package version: ${o}, expected string, got ${typeof o}`),new Error("Invalid remote native package version")}return new Map(t.map(r=>[r.name,r]))}async function nO(t,e,r){let{data:n,error:o}=await t.from("channels").select(`version (
|
|
166
|
+
`)}function ne(t=!1){let e=nr.env.CAPGO_TOKEN?.trim();if(e)return t||l.info("Use CAPGO_TOKEN environment variable"),e;let r=(0,Vl.homedir)(),n,o=`${r}/.capgo`;if((0,_e.existsSync)(o)&&(t||l.info(`Use global API key ${o}`),n=(0,_e.readFileSync)(o,"utf8").trim()),o=".capgo",!n&&(0,_e.existsSync)(o)&&(t||l.info(`Use local API key ${o}`),n=(0,_e.readFileSync)(o,"utf8").trim()),!n){let i=`Cannot find API key in local folder or global, please login first with ${nt().runner} @capgo/cli login`;throw l.error(i),new Error(i)}return n}async function*jg(t){let e=await(0,_e.readdirSync)(t,{withFileTypes:!0});for(let r of e){let n=(0,ye.resolve)(t,r.name);r.isDirectory()&&!r.name.startsWith(".")&&!r.name.startsWith("node_modules")&&!r.name.startsWith("dist")?yield*jg(n):yield n}}function aa(t){let e=/\.(jpg|jpeg|png|gif|bmp|webp)$/i,r=t.match(e);if(r)switch(r[1].toLowerCase()){case"jpg":case"jpeg":return"image/jpeg";case"png":return"image/png";case"webp":return"image/webp"}return null}async function Wl(){let t=(0,nr.cwd)(),e=!1,r=(0,ye.resolve)(t,"tsconfig.json");(0,_e.existsSync)(r)&&(e=!0);for await(let n of jg(t)){if(n.includes("angular.json"))return l.info("Found angular project"),e?"angular-ts":"angular-js";if(n.includes("nuxt.config.js")||n.includes("nuxt.config.ts"))return l.info("Found nuxtjs project"),e?"nuxtjs-ts":"nuxtjs-js";if(n.includes("next.config.js")||n.includes("next.config.mjs"))return l.info("Found nextjs project"),e?"nextjs-ts":"nextjs-js";if(n.includes("svelte.config.js"))return l.info("Found sveltekit project"),e?"sveltekit-ts":"sveltekit-js";if(n.includes("rolluconfig.js"))return l.info("Found svelte project"),e?"svelte-ts":"svelte-js";if(n.includes("vue.config.js"))return l.info("Found vue project"),e?"vue-ts":"vue-js";if(n.includes(vr)){let o=(0,ye.dirname)(n),i=await Cr(o);if(i){if(i.get("react"))return l.info("Found react project test"),e?"react-ts":"react-js";if(i.get("vue"))return l.info("Found vue project"),e?"vue-ts":"vue-js"}}}return"unknown"}function GA(t,e){return t==="angular-js"||t==="angular-ts"?e?"src/main.ts":"src/main.js":t==="nextjs-js"||t==="nextjs-ts"?e?"src/app/layout.tsx":"src/app/layout.js":t==="svelte-js"||t==="svelte-ts"||t==="vue-js"||t==="vue-ts"?e?"src/main.ts":"src/main.js":t==="react-js"||t==="react-ts"?e?"src/index.tsx":"src/index.js":null}async function Ug(t){if(t==="angular")return l.info("Angular project detected"),"build";if(t==="nuxtjs")return l.info("Nuxtjs project detected"),"generate";if(t==="nextjs"){if(l.info("Nextjs project detected"),l.warn("Please make sure you have configured static export in your next.config.js: https://nextjs.org/docs/pages/building-your-application/deploying/static-exports"),l.warn("Please make sure you have the output: 'export' and distDir: 'dist' in your next.config.js"),!await ue({message:"Do you want to continue?"})){let r="Build command selection aborted by user";throw l.error(r),new Error(r)}return"build"}if(t==="sveltekit"){if(l.info("Sveltekit project detected"),l.warn("Please make sure you have the adapter-static installed: https://kit.svelte.dev/docs/adapter-static"),l.warn("Please make sure you have the pages: 'dist' and assets: 'dest', in your svelte.config.js adapter"),!await ue({message:"Do you want to continue?"})){let r="Build command selection aborted by user";throw l.error(r),new Error(r)}return"build"}return"build"}async function WA(){let t=/(main|index)\.(ts|tsx|js|jsx)$/,e="",r=(0,nr.cwd)(),n=r.split("/").length;for await(let o of jg(r))if(o.split("/").length-n<=2&&t.test(o)){e=o,l.info(`Found main file here ${o}`);break}return e}async function Mg(t,e){return t.from("app_versions").upsert(e,{onConflict:"name,app_id"}).eq("app_id",e.app_id).eq("name",e.name)}async function YA(t,e,r){let n={app_id:e,name:r,version:0};try{let i=await t.functions.invoke("files/upload_link",{body:JSON.stringify(n)});if(i.error){if(i.error instanceof ra.FunctionsHttpError){let a=await i.error.context.json();l.error(`Upload URL error: ${a.status||JSON.stringify(a)}`)}else l.error(`Cannot get upload url: ${i.error.message}`);return""}return i.data.url}catch(o){l.error(`Cannot get upload url ${M(o)}`)}return""}async function*JA(t){let e=(0,_e.readdirSync)(t,{withFileTypes:!0});for(let r of e){let n=(0,ye.join)(t,r.name);r.isDirectory()?yield*JA(n):yield n}}var XA="5.10.0",ZA="6.25.0",Is="7.0.30";function Hn(t,e="5.10.0",r="6.25.0",n="7.25.0"){return!!(t.major===5&&er(t,ge(e))||t.major===6&&er(t,ge(r))||t.major===7&&er(t,ge(n)))}async function QA(t){let e=[],r=[".DS_Store",".git",".gitignore","node_modules","package-lock.json","tsconfig.json","tsconfig.app.json","tsconfig.spec.json","tsconfig.app.json","tsconfig.spec.json","tsconfig.app.json","tsconfig.spec.json"];for await(let n of JA(t)){if(r.some(s=>n.includes(s))){l.info(`Ignoring file ${n}, please ensure you have only required files in your dist folder`);continue}let o=(0,_e.readFileSync)(n);if(o.length===0){l.info(`Ignoring empty file ${n}, please ensure you have only required files in your dist folder`);continue}let i=await cn(o,"sha256"),a=(0,ye.relative)(t,n);a.startsWith("/")&&(a=a.substring(1)),e.push({file:a,hash:i})}return e}async function Yl(t){return(0,Vl.platform)()==="win32"?XM(t):JM(t)}function JM(t){let e=new Rg.default;return e.addLocalFolder(t),e.toBuffer()}async function XM(t){l.info("Zipping file windows mode");let e=new Rg.default,r=(n,o)=>{let i=(0,_e.readdirSync)(n);for(let a of i){let s=(0,ye.join)(n,a),u=(0,_e.statSync)(s);if(u.isFile()){let c=(0,_e.readFileSync)(s);e.addFile((0,ye.join)(o,a).split(ye.sep).join("/"),c)}else u.isDirectory()&&r(s,(0,ye.join)(o,a))}};return r(t,""),e.toBuffer()}async function eO(t,e,r,n,o,i,a,s){return new Promise((u,c)=>{me(t,{channel:"app",event:"App TUS upload",icon:"\u23EB",user_id:r,tags:{"app-id":n},notify:!1}),new zl.Upload(e,{endpoint:`${a.hostFilesApi}/files/upload/attachments/`,chunkSize:s,metadataForPartialUploads:{filename:`orgs/${r}/apps/${n}/${o}.zip`,filetype:"application/gzip"},metadata:{filename:`orgs/${r}/apps/${n}/${o}.zip`,filetype:"application/zip"},headers:{Authorization:t},onError(d){if(l.error(`Error uploading bundle: ${d.message}`),d instanceof zl.DetailedError){let p=d.originalResponse?.getBody(),h=JSON.parse(p||'{"error": "unknown error"}');c(h.status||h.error||h.message||"unknown error")}else c(d.message||d.toString()||"unknown error")},onProgress(d,p){let h=(d/p*100).toFixed(2);i.message(`Uploaded ${h}%`)},async onSuccess(){await me(t,{channel:"app",event:"App TUS done",icon:"\u23EB",user_id:r,tags:{"app-id":n},notify:!1}).catch(),u(!0)}}).start()})}async function tO(t,e,r){let n={app_id:e,name:r};try{let i=await t.functions.invoke("private/delete_failed_version",{body:JSON.stringify(n),method:"DELETE"});if(i.error){if(i.error instanceof ra.FunctionsHttpError){let a=await i.error.context.json();l.error(`Cannot delete failed version: ${a.status||JSON.stringify(a)}`)}else l.error(`Cannot delete failed version: ${i.error.message}`);return}return i.data?.status}catch(o){if(o instanceof ra.FunctionsHttpError){let i=await o.context.json();l.error(`Cannot delete failed version: ${i.message||JSON.stringify(i)}`)}else l.error(`Cannot delete failed version: ${M(o)}`)}}async function Jl(t,e){if(!e.app_id||!e.name||!e.created_by)return l.error("missing app_id, name, or created_by"),Promise.reject(new Error("missing app_id, name, or created_by"));let{data:r,error:n}=await t.from("channels").select().eq("app_id",e.app_id).eq("name",e.name).single();return r&&!n?t.from("channels").update(e).eq("app_id",e.app_id).eq("name",e.name).select().single():t.from("channels").insert(e).select().single()}async function me(t,e,r){try{r&&l.info(`Get remove config: for ${e.event}`);let n=await Gl();r&&l.info(`Sending LogSnag event: ${JSON.stringify(e)}`);let o=new AbortController,i=setTimeout(()=>o.abort(),1e4);try{let a=await fetch(`${n.hostApi}/private/events`,{method:"POST",body:JSON.stringify(e),headers:{"Content-Type":"application/json",capgkey:t},signal:o.signal});if(clearTimeout(i),!a.ok)throw new Error(`HTTP error! status: ${a.status}`);let s=await a.json();s.error&&l.error(`Failed to send LogSnag event: ${s.error}`)}finally{clearTimeout(i)}}catch(n){r&&(l.error("Failed to send Stats event details:"),l.error(M(n)))}}async function sa(t,e){let{error:r,data:n}=await t.rpc("get_orgs_v6");if(r)throw l.error("Cannot get the list of organizations - exiting"),l.error(`Error ${JSON.stringify(r)}`),new Error("Cannot get the list of organizations");let o=n.filter(u=>!!e.find(c=>c===u.role));if(n.length===0)throw l.error("Could not get organization please create an organization first"),new Error("No organizations available");if(o.length===0)throw l.error(`Could not find organization with roles: ${e.join(" or ")} please create an organization or ask the admin to add you to the organization with this roles`),new Error("Could not find organization with required roles");let i=o.length>1?await gt({message:"Please pick the organization that you want to insert to",options:o.map(u=>({value:u.gid,label:u.name}))}):o[0].gid;if(le(i))throw l.error("Canceled organization selection, exiting"),new Error("Organization selection cancelled");let a=i,s=n.find(u=>u.gid===a);return l.info(`Using the organization "${s.name}" as the app owner`),s}async function ae(t,e,r=["all"]){await GM(t,e,r);let{data:n,error:o}=await t.rpc("get_user_id",{apikey:e}).single(),i=(n||"").toString();if(!i||o)throw l.error("Cannot auth user with apikey"),new Error("Cannot authenticate user with provided API key");return i}async function Et(t,e){let{data:r,error:n}=await t.from("apps").select("owner_org").eq("app_id",e).single();if(!r||n)throw l.error(`Cannot get organization id for app id ${e}`),M(n),new Error(`Cannot get organization id for app id ${e}`);return r.owner_org}function ua(t){return new Date(t||"").toLocaleString()}var RA=!1,ta="npm",Ps="install",Tg="npx";function nt(){if(RA)return{pm:ta,command:Ps,installCommand:`${ta} ${Ps}`,runner:Tg};let t=bt((0,nr.cwd)());return ta=Aa(t,"npm"),Ps=Du(ta),RA=!0,Tg=gD(t),{pm:ta,command:Ps,installCommand:`${ta} ${Ps}`,runner:Tg}}function rO(t){return(0,_e.readdirSync)(t,{withFileTypes:!0}).flatMap(n=>{let o=(0,ye.join)(t,n.name);return n.isDirectory()?rO(o):o.split(`node_modules${ye.sep}`)[1]||o})}async function qg(t,e){let r=e?e.split(","):[],n;try{n=await Cr("",t)}catch(f){throw l.error("Invalid package.json, JSON parsing failed"),console.error("json parse error: ",f),f instanceof Error?f:new Error("Invalid package.json")}let o=t?.split(",")[0],i=o?ye.default.resolve(o).replace(vr,""):bt((0,nr.cwd)());if(!n)throw l.error("Missing dependencies section in package.json"),new Error("Missing dependencies section in package.json");for(let[f,d]of Object.entries(n))if(typeof d!="string")throw l.error(`Invalid dependency ${f}: ${d}, expected string, got ${typeof d}`),new Error(`Invalid dependency ${f}: expected string version`);let a=r.length===0?[(0,ye.join)((0,nr.cwd)(),"node_modules")]:r;if(!a.some(f=>(0,_e.existsSync)(f))){let f=Aa(i,"npm"),d=Du(f);throw l.error(`Missing node_modules folder at ${a.join(", ")}, please run ${f} ${d}`),new Error("Missing node_modules folder")}let u=!1,c=await Promise.all(Array.from(n.entries()).map(async([f,d])=>{let p=!1,h=!1,m=d;for(let y of a){let b=(0,ye.join)(y,f);if((0,_e.existsSync)(b)){p=!0;try{let v=(0,ye.join)(b,vr);if((0,_e.existsSync)(v)){let E=JSON.parse((0,_e.readFileSync)(v,"utf-8"));E.version&&(m=E.version)}}catch{}try{if(rO(b).some(E=>KM.test(E))){h=!0;break}}catch(v){throw l.error(`Error reading node_modules files for ${f} package in ${y}`),console.error(v),v instanceof Error?v:new Error(`Error reading node_modules files for ${f}`)}}}if(!p){u=!0;let y=Aa(i,"npm"),b=Du(y);return l.error(`Missing dependency ${f}, please run ${y} ${b}`),{name:f,version:d}}return{name:f,version:m,native:h}})).catch(()=>[]);if(u||c.find(f=>f.native===void 0))throw l.error("Missing dependencies or invalid dependencies"),l.error("If you use monorepo, workspace or any special package manager you can use the --package-json [path,] and --node-modules [path,] options to make the command work properly"),new Error("Missing dependencies or invalid dependencies");return c}async function ZM(t,e,r){let{data:n,error:o}=await t.from("channels").select("version(checksum)").eq("name",r).eq("app_id",e).single(),i=n;return o||i===null||!i.version||!i.version.checksum?null:i.version.checksum}function QM(t){if(!t)throw l.error("Error parsing native packages, perhaps the metadata does not exist in Capgo?"),new Error("Error parsing native packages");for(let r of t){if(typeof r!="object")throw l.error(`Invalid remote native package data: ${r}, expected object, got ${typeof r}`),new Error("Invalid remote native package data");let{name:n,version:o}=r;if(!n||typeof n!="string")throw l.error(`Invalid remote native package name: ${n}, expected string, got ${typeof n}`),new Error("Invalid remote native package name");if(!o||typeof o!="string")throw l.error(`Invalid remote native package version: ${o}, expected string, got ${typeof o}`),new Error("Invalid remote native package version")}return new Map(t.map(r=>[r.name,r]))}async function nO(t,e,r){let{data:n,error:o}=await t.from("channels").select(`version (
|
|
167
167
|
native_packages
|
|
168
168
|
)`).eq("name",r).eq("app_id",e).single();if(o)throw l.error(`Error fetching native packages: ${o.message}`),new Error(`Error fetching native packages: ${o.message}`);return QM(n.version.native_packages??[])}async function oO(t,e,r,n){let o=Ee();o.start(`Checking bundle checksum compatibility with channel ${r}`);let i=await ZM(t,e,r);if(!i){o.stop(`No checksum found for channel ${r}, the bundle will be uploaded`);return}if(i&&i===n)throw o.stop("Checksum check failed"),l.error(`Cannot upload the same bundle content.
|
|
169
169
|
Current bundle checksum matches remote bundle for channel ${r}
|
|
170
170
|
Did you build your app before uploading?
|
|
171
|
-
PS: You can ignore this check with "--ignore-checksum-check"`),new Error("Cannot upload the same bundle content");o.stop(`Checksum compatible with ${r} channel`)}function fe(t,e){return t||e?.plugins?.CapacitorUpdater?.appId||e?.appId}function Ro(t){if(!t.localVersion)return!0;if(!t.remoteVersion)return!1;try{let e=Eu(t.localVersion),r=Eu(t.remoteVersion);return OD(e,r)}catch{return!1}}async function Xl(t,e,r,n,o){let i=await qg(n,o),a=await nO(t,e,r),s=i.filter(c=>!!c.native).map(c=>{let f=a.get(c.name);return f?{name:c.name,localVersion:c.version,remoteVersion:f.version}:{name:c.name,localVersion:c.version,remoteVersion:void 0}}),u=[...a].filter(([c])=>i.find(f=>f.name===c)===void 0).map(([c,f])=>({name:c,localVersion:void 0,remoteVersion:f.version}));return s.push(...u),{finalCompatibility:s,localDependencies:i}}async function Hg(t,e,r,n){let o=await nO(t,e,r),i=n.map(s=>{let u=o.get(s.name);return u?{name:s.name,localVersion:s.version,remoteVersion:u.version}:{name:s.name,localVersion:s.version,remoteVersion:void 0}}),a=[...o].filter(([s])=>n.find(u=>u.name===s)===void 0).map(([s,u])=>({name:s,localVersion:void 0,remoteVersion:u.version}));return i.push(...a),{finalCompatibility:i,localDependencies:n}}async function Zl(t,e,r){let n=await ue({message:"Would you like to sync your project with Capacitor now? This is recommended to ensure encrypted updates work properly."});if(le(n))throw t&&e&&r&&await Ct("onboarding-v2",e,r,"canceled","\u{1F937}"),l.error("Canceled Capacitor sync"),new Error("Capacitor sync cancelled");if(n){let o=nt(),i=Ee();i.start("Running the command...");try{await new Promise((a,s)=>{let u=(0,BA.spawn)(o.runner,["cap","sync"],{stdio:"pipe"});u.on("close",c=>{c===0?a():s(new Error(`Command failed with exit code ${c}`))}),u.on("error",c=>{s(c)})}),i.stop("Capacitor sync completed \u2705")}catch(a){i.stop("Error"),l.error(`Failed to run Capacitor sync: ${a}`),l.warn(`Please run "${o.runner} cap sync" manually to ensure encrypted updates work properly`)}}else{let o=nt();l.warn("\u26A0\uFE0F Important: If you upload encrypted bundles without syncing, updates will fail!"),l.info(`Remember to run "${o.runner} cap sync" before uploading encrypted bundles`)}}async function iO(t,e){let{data:r}=await t.rpc("exist_app_v2",{appid:e}).single();return!!r}async function Me(t,e,r,n,o=!1){let i=nt(),a=await HA(t,e,r);if(!a.okay)switch(a.error){case"INVALID_APIKEY":{let c="Invalid apikey, such apikey does not exists!";throw o||l.error(c),new Error(c)}case"NO_APP":{let c=`App ${r} does not exist, run first \`${i.runner} @capgo/cli app add ${r}\` to create it`;throw o||l.error(c),new Error(c)}case"NO_ORG":{let c="Could not find organization, please contact support to resolve this!";throw o||l.error(c),new Error(c)}}let s=a.data;if(n>s){let c=`Insuficcent permissions for app ${r}. Current permission: ${St[a.data]}, required for this action: ${St[n]}.`;throw o||l.error(c),new Error(c)}return a.data}var Cr="assets/icon.png";var e5=/^[a-z0-9]+(\.[\w-]+)+$/i;function t5(t,e,r){if(!e.apikey)throw r||l.error("Missing API key, you need to provide an API key to upload your bundle"),new Error("Missing API key");if(!t)throw r||l.error("Missing argument, you need to provide a appId, or be in a capacitor project"),new Error("Missing appId");if(t.includes("--"))throw r||l.error('The app id includes illegal symbols. You cannot use "--" in the app id'),new Error("App id includes illegal symbols");if(!e5.test(t))throw r||(l.error(`Invalid app ID format: "${t}"`),l.info("App ID must be in reverse domain notation (e.g., com.example.app)"),l.info("Valid format: lowercase letters, numbers, dots, hyphens, and underscores"),l.info("Examples: com.mycompany.myapp, io.capgo.app, com.example.my-app")),new Error("Invalid app ID format")}async function r5(t,e,r){if(await iO(t,e))throw e==="io.ionic.starter"?(r||l.error(`This appId ${e} cannot be used it's reserved, please change it in your capacitor config.`),new Error("Reserved appId, please change it in capacitor config")):(r||l.error(`App ${e} already exist`),new Error(`App ${e} already exists`))}async function Vg(t,e,r,n=!1){n||ee("Adding"),await Ce(),e.apikey=e.apikey||ne();let o=await te(),i=fe(t,o?.config);t5(i,e,n);let a=await re(e.apikey,e.supaHost,e.supaAnon),s=await ae(a,e.apikey,["write","all"]);await r5(a,i,n),r||(r=await sa(a,["admin","super_admin"]));let u=r.gid,{name:c,icon:f}=e;if(c=c||o.config?.appName||"Unknown",f=f||"resources/icon.png",!f||!c)throw n||l.error("Missing argument, you need to provide a appId and a name, or be in a capacitor project"),new Error("Missing app name or icon path");n||l.info(`Adding ${i} to Capgo`);let d=null,p=null;f&&(0,ca.existsSync)(f)?(d=(0,ca.readFileSync)(f),p=aa(f)||"image/png",n||l.warn(`Found app icon ${f}`)):(0,ca.existsSync)(Cr)?(d=(0,ca.readFileSync)(Cr),p=aa(Cr)||"image/png",n||l.warn(`Found app icon ${Cr}`)):n||l.warn(`Cannot find app icon in any of the following locations: ${f}, ${Cr}`);let h="icon",m="https://xvwzpoazmxkqosrdewyv.supabase.co/storage/v1/object/public/images/capgo.png";if(d&&p){let{error:b}=await a.storage.from(`images/org/${u}/${i}`).upload(h,d,{contentType:p});if(b)throw n||console.error(b),n||l.error(`Could not add app ${M(b)}`),new Error(`Could not add app ${M(b)}`);let{data:v}=await a.storage.from(`images/org/${u}/${i}`).getPublicUrl(h);m=v?.publicUrl||m}let{error:y}=await a.from("apps").insert({icon_url:m,owner_org:u,user_id:s,name:c,app_id:i});if(y)throw n||l.error(`Could not add app ${M(y)}`),new Error(`Could not add app ${M(y)}`);return n||(l.success(`App ${i} added to Capgo. You can upload a bundle now`),K("Done \u2705")),{appId:i,organizationUid:u,userId:s,name:c,signedURL:m}}async function aO(t,e){await Vg(t,e,void 0)}async function n5(t,e,r=!1,n=!1){r||ee("Deleting"),e.apikey=e.apikey||ne();let o=await te(),i=fe(t,o?.config);if(!e.apikey)throw r||l.error("Missing API key, you need to provide an API key to upload your bundle"),new Error("Missing API key");if(!i)throw r||l.error("Missing argument, you need to provide a appId, or be in a capacitor project"),new Error("Missing appId");let a=await re(e.apikey,e.supaHost,e.supaAnon),s=await ae(a,e.apikey,["write","all"]);await Me(a,e.apikey,i,5,r);let{data:u,error:c}=await a.from("apps").select("owner_org ( created_by, id )").eq("app_id",i).single(),f=u;if(!n&&!c&&(f?.owner_org.created_by??"")!==s){if(r)throw new Error("Cannot delete app: you are not the organization owner");{l.warn("Deleting the app is not recommended for users that are not the organization owner"),l.warn("You are invited as a super_admin but your are not the owner"),l.warn("It's strongly recommended that you do not continue!");let y=await gt({message:"Do you want to continue?",options:[{label:"Yes",value:"yes"},{label:"No",value:"no"}]});if(le(y)||y==="no")throw l.error("Canceled deleting the app, exiting"),new Error("App deletion cancelled")}}else c&&!r&&l.warn(`Cannot get the app owner ${M(c)}`);let{error:d}=await a.storage.from("images").remove([`org/${f?.owner_org.id}/${i}/icon`]);d&&!r&&l.error("Could not delete app logo");let{error:p}=await a.storage.from(`apps/${i}/${s}`).remove(["versions"]);p&&!r&&l.error("Could not delete app version");let{error:h}=await a.from("apps").delete().eq("app_id",i);if(h)throw r||l.error("Could not delete app"),new Error(`Could not delete app: ${M(h)}`);let m=await Et(a,i);return await me(e.apikey,{channel:"app",event:"App Deleted",icon:"\u{1F5D1}\uFE0F",user_id:m,tags:{"app-id":i},notify:!1}).catch(()=>{}),r||(l.success("App deleted in Capgo"),K("Done \u2705")),!0}async function sO(t,e){return n5(t,e,!1,!1)}var Ql=require("node:os"),cO=require("node:process");async function uO(t){let e={},r=Object.keys(t);return(await Promise.all(r.map(o=>ol(o)))).forEach((o,i)=>{o&&(e[r[i]]=o)}),e}async function o5(){let t=await vr(),e={"@capgo/cli":xr.version};for(let[r,n]of t)(r.startsWith("@capgo/")||r.startsWith("@capawesome/")||r.startsWith("capacitor"))&&(e[r]=n);return e}async function i5(t,e=!1){e||l.warn(" \u{1F48A} Capgo Doctor \u{1F48A}");let r=await te(),n=Ir("",t.packageJson),o=r?.config?.plugins?.CapacitorUpdater?.version||n,i=r?.config?.appName||"",a=fe("",r?.config),s=r?.config?.webDir||"";e||(l.info(` App Name: ${i}`),l.info(` App ID: ${a}`),l.info(` App Version: ${o}`),l.info(` Web Dir: ${s}`),l.info(` OS: ${(0,Ql.platform)()} ${(0,Ql.version)()}`),l.info(` Node: ${cO.version}`),l.info(" Installed Dependencies:"));let u=await o5();if(Object.keys(u).length===0)throw e||l.warning("\x1B[31m%s\x1B[0m \u{1F6A8} No dependencies found"),new Error("No dependencies found");if(!e)for(let f of Object.keys(u))l.info(` ${f}: ${u[f]}`);let c={};if(e)c=await uO(u);else{let f=Ee();f.start("Running: Loading latest dependencies"),c=await uO(u),f.stop("Latest Dependencies:");for(let d of Object.keys(c))l.info(` ${d}: ${c[d]}`)}if(JSON.stringify(u)!==JSON.stringify(c))throw e||l.warn("\x1B[31m\u{1F6A8} Some dependencies are not up to date\x1B[0m"),new Error("Some dependencies are not up to date");return e||l.success("\x1B[32m\u2705 All dependencies are up to date\x1B[0m"),{appName:i,appId:a,appVersion:o,webDir:s,installedDependencies:u,latestDependencies:c}}async function lO(t){return i5(t)}function a5(t){let e=new ut;e.headers=["Name","id","Created"],e.rows=[];for(let r of t.toReversed())e.rows.push([r.name??"",r.app_id,ua(r.created_at)]);l.success("Apps"),l.success(e.toString())}async function s5(t,e){let{data:r,error:n}=await t.from("apps").select().order("created_at",{ascending:!1});if(n)throw e||l.error("Apps not found"),new Error("Apps not found");return r??[]}async function u5(t,e=!1){e||ee("List apps in Capgo"),await Ce(),t.apikey=t.apikey||ne();let r=await re(t.apikey,t.supaHost,t.supaAnon);await ae(r,t.apikey,["write","all","read","upload"]),e||l.info("Getting active bundle in Capgo");let n=await s5(r,e);if(!n.length)throw e||l.error("No apps found"),new Error("No apps found");return e||(l.info(`Active app in Capgo: ${n.length}`),a5(n),K("Done \u2705")),n}async function fO(t){return u5(t,!1)}var dO=require("node:crypto"),la=require("node:fs");async function c5(t,e,r=!1){r||ee("Set app"),e.apikey=e.apikey||ne();let n=await te();if(t=fe(t,n?.config),!e.apikey)throw r||l.error("Missing API key, you need to provide an API key to upload your bundle"),new Error("Missing API key");if(!t)throw r||l.error("Missing argument, you need to provide a appId, or be in a capacitor project"),new Error("Missing appId");let o=await re(e.apikey,e.supaHost,e.supaAnon),a=(await sa(o,["admin","super_admin"])).gid,s=await ae(o,e.apikey,["write","all"]);await Me(o,e.apikey,t,4,r);let{name:u,icon:c,retention:f,exposeMetadata:d}=e;if(f&&Number.isNaN(Number(f)))throw r||l.error("retention value must be a number"),new Error("Retention value must be a number");if(f&&f<0)throw r||l.error("retention value cannot be less than 0"),new Error("Retention value cannot be less than 0");if(f&&f>=63113904)throw r||l.error("retention value cannot be greater than 63113904 seconds (2 years)"),new Error("Retention value cannot be greater than 63113904 seconds (2 years)");let p,h,m=`icon_${(0,dO.randomUUID)()}`,y="https://xvwzpoazmxkqosrdewyv.supabase.co/storage/v1/object/public/images/capgo.png";if(c&&(0,la.existsSync)(c)?(p=(0,la.readFileSync)(c),h=aa(c)||"image/png",r||l.warn(`Found app icon ${c}`)):(0,la.existsSync)(Cr)?(p=(0,la.readFileSync)(Cr),h=aa(Cr)||"image/png",r||l.warn(`Found app icon ${Cr}`)):r||l.warn(`Cannot find app icon in any of the following locations: ${c}, ${Cr}`),p&&h){let{error:v}=await o.storage.from(`images/org/${a}/${t}`).upload(m,p,{contentType:h});if(v)throw r||l.error(`Could not set app ${M(v)}`),new Error(`Could not set app: ${M(v)}`);let{data:E}=await o.storage.from(`images/org/${a}/${t}`).getPublicUrl(m);y=E?.publicUrl||y}let{error:b}=await o.from("apps").update({icon_url:y,name:u,retention:f?f*24*60*60:void 0,expose_metadata:d}).eq("app_id",t).eq("user_id",s);if(b)throw r||l.error(`Could not set app ${M(b)}`),new Error(`Could not set app: ${M(b)}`);return r||K("Done \u2705"),!0}async function pO(t,e){return c5(t,e)}async function l5(t,e,r=!1){if(r||ee("Set a specific setting in capacitor config"),e.bool&&e.string)throw r||l.error("Bool and string CANNOT be set at the same time"),new Error("Bool and string cannot both be provided");if(!e.bool&&!e.string)throw r||l.error("You MUST provide either bool or string as the value"),new Error("Either bool or string value is required");if(e.bool&&e.bool!=="true"&&e.bool!=="false")throw r||l.error("Invalid bool"),new Error("Invalid bool value; expected true or false");try{let n=await te(),o=n.config,i=t.split(".");if(i.length===0)throw r||l.error("Invalid path"),new Error("Invalid config path");for(let s of i.slice(0,-1))Object.prototype.hasOwnProperty.call(o,s)||(o[s]={}),o=o[s];let a=e.bool?e.bool==="true":e.string;o[i.at(-1)]=a,await Zi(n,!0),r||l.success(`Set "${t}" to "${a}"`)}catch(n){throw r||l.error(`Cannot set config in capacitor settings ${M(n)}`),new Error(`Cannot set capacitor config: ${M(n)}`)}r||K("Done \u2705")}async function hO(t,e){return l5(t,e)}var ir=require("node:fs"),ar=require("node:path"),qe=require("node:process");var Bo=require("node:fs/promises"),mO=require("node:os"),Ts=require("node:path"),xe=require("node:process"),gO=(0,Ts.join)((0,mO.homedir)(),".capgo-credentials"),yO=(0,Ts.join)(gO,"credentials.json"),DO=".capgo-credentials.json";function bO(t){return t?(0,Ts.join)((0,xe.cwd)(),DO):yO}function f5(t){return t?null:gO}async function fa(t){return(await(0,Bo.readFile)(t)).toString("base64")}async function da(t){try{let e=bO(t),r=await(0,Bo.readFile)(e,"utf-8");return JSON.parse(r)}catch{return{}}}async function Rs(t,e){if(e!==void 0){let o=await da(e);if(!t){let i=Object.keys(o);return i.length===0?null:o[i[0]]||null}return o[t]||null}let r=await da(!0),n=await da(!1);if(!t){let o=Object.keys(r);if(o.length>0)return r[o[0]]||null;let i=Object.keys(n);return i.length===0?null:n[i[0]]||null}return r[t]||n[t]||null}async function ef(t,e){let r=bO(e),n=f5(e);n&&await(0,Bo.mkdir)(n,{recursive:!0}),await(0,Bo.writeFile)(r,JSON.stringify(t,null,2),"utf-8")}function d5(){let t={};return xe.env.BUILD_CERTIFICATE_BASE64&&(t.BUILD_CERTIFICATE_BASE64=xe.env.BUILD_CERTIFICATE_BASE64),xe.env.BUILD_PROVISION_PROFILE_BASE64&&(t.BUILD_PROVISION_PROFILE_BASE64=xe.env.BUILD_PROVISION_PROFILE_BASE64),xe.env.BUILD_PROVISION_PROFILE_BASE64_PROD&&(t.BUILD_PROVISION_PROFILE_BASE64_PROD=xe.env.BUILD_PROVISION_PROFILE_BASE64_PROD),xe.env.P12_PASSWORD&&(t.P12_PASSWORD=xe.env.P12_PASSWORD),xe.env.APPLE_KEY_ID&&(t.APPLE_KEY_ID=xe.env.APPLE_KEY_ID),xe.env.APPLE_ISSUER_ID&&(t.APPLE_ISSUER_ID=xe.env.APPLE_ISSUER_ID),xe.env.APPLE_KEY_CONTENT&&(t.APPLE_KEY_CONTENT=xe.env.APPLE_KEY_CONTENT),xe.env.APPLE_PROFILE_NAME&&(t.APPLE_PROFILE_NAME=xe.env.APPLE_PROFILE_NAME),xe.env.APP_STORE_CONNECT_TEAM_ID&&(t.APP_STORE_CONNECT_TEAM_ID=xe.env.APP_STORE_CONNECT_TEAM_ID),xe.env.ANDROID_KEYSTORE_FILE&&(t.ANDROID_KEYSTORE_FILE=xe.env.ANDROID_KEYSTORE_FILE),xe.env.KEYSTORE_KEY_ALIAS&&(t.KEYSTORE_KEY_ALIAS=xe.env.KEYSTORE_KEY_ALIAS),xe.env.KEYSTORE_KEY_PASSWORD&&(t.KEYSTORE_KEY_PASSWORD=xe.env.KEYSTORE_KEY_PASSWORD),xe.env.KEYSTORE_STORE_PASSWORD&&(t.KEYSTORE_STORE_PASSWORD=xe.env.KEYSTORE_STORE_PASSWORD),xe.env.PLAY_CONFIG_JSON&&(t.PLAY_CONFIG_JSON=xe.env.PLAY_CONFIG_JSON),t}async function wO(t,e,r){let n=await Rs(t),o=d5(),i={...n?.[e]||{}};if(Object.assign(i,o),r&&Object.assign(i,r),e==="android"){let a=!!i.KEYSTORE_KEY_PASSWORD,s=!!i.KEYSTORE_STORE_PASSWORD;a&&!s?i.KEYSTORE_STORE_PASSWORD=i.KEYSTORE_KEY_PASSWORD:!a&&s&&(i.KEYSTORE_KEY_PASSWORD=i.KEYSTORE_STORE_PASSWORD)}return Object.keys(i).length>0?i:void 0}async function zg(t,e,r={}){let n={...r};return t==="ios"?(e.BUILD_CERTIFICATE_FILE&&(n.BUILD_CERTIFICATE_BASE64=await fa(e.BUILD_CERTIFICATE_FILE)),e.BUILD_PROVISION_PROFILE_FILE&&(n.BUILD_PROVISION_PROFILE_BASE64=await fa(e.BUILD_PROVISION_PROFILE_FILE)),e.BUILD_PROVISION_PROFILE_FILE_PROD&&(n.BUILD_PROVISION_PROFILE_BASE64_PROD=await fa(e.BUILD_PROVISION_PROFILE_FILE_PROD)),e.APPLE_KEY_FILE&&(n.APPLE_KEY_CONTENT=await fa(e.APPLE_KEY_FILE))):t==="android"&&(e.ANDROID_KEYSTORE_PATH&&(n.ANDROID_KEYSTORE_FILE=await fa(e.ANDROID_KEYSTORE_PATH)),e.PLAY_CONFIG_JSON_PATH&&(n.PLAY_CONFIG_JSON=await fa(e.PLAY_CONFIG_JSON_PATH))),n}async function Kg(t,e,r,n){let o=await da(n),i=o[t]||{};i[e]={...i[e],...r},o[t]=i,await ef(o,n)}async function tf(t,e,r){let n=await da(r);if(!t){await ef({},r);return}if(!e){delete n[t],await ef(n,r);return}let o=n[t]||{};delete o[e],Object.keys(o).length===0?delete n[t]:n[t]=o,await ef(n,r)}async function Gg(t,e,r){return(await Rs(t,r))?.[e]||null}async function rf(t){let e=await da(t);return Object.keys(e)}function Bs(){return(0,Ts.join)((0,xe.cwd)(),DO)}function Ns(){return yO}async function vO(t){try{t.platform||(l.error("Platform is required. Use --platform ios or --platform android"),(0,qe.exit)(1));let e=await te(),r=fe(t.appId,e?.config);r||(l.error("\u274C App ID is required."),l.error(""),l.error("Either:"),l.error(" 1. Run this command from a Capacitor project directory, OR"),l.error(" 2. Provide --appId explicitly: --appId com.example.app"),l.error(""),(0,qe.exit)(1));let n=t.platform;l.info(`
|
|
171
|
+
PS: You can ignore this check with "--ignore-checksum-check"`),new Error("Cannot upload the same bundle content");o.stop(`Checksum compatible with ${r} channel`)}function fe(t,e){return t||e?.plugins?.CapacitorUpdater?.appId||e?.appId}function Ro(t){if(!t.localVersion)return!0;if(!t.remoteVersion)return!1;try{let e=Eu(t.localVersion),r=Eu(t.remoteVersion);return OD(e,r)}catch{return!1}}async function Xl(t,e,r,n,o){let i=await qg(n,o),a=await nO(t,e,r),s=i.filter(c=>!!c.native).map(c=>{let f=a.get(c.name);return f?{name:c.name,localVersion:c.version,remoteVersion:f.version}:{name:c.name,localVersion:c.version,remoteVersion:void 0}}),u=[...a].filter(([c])=>i.find(f=>f.name===c)===void 0).map(([c,f])=>({name:c,localVersion:void 0,remoteVersion:f.version}));return s.push(...u),{finalCompatibility:s,localDependencies:i}}async function Hg(t,e,r,n){let o=await nO(t,e,r),i=n.map(s=>{let u=o.get(s.name);return u?{name:s.name,localVersion:s.version,remoteVersion:u.version}:{name:s.name,localVersion:s.version,remoteVersion:void 0}}),a=[...o].filter(([s])=>n.find(u=>u.name===s)===void 0).map(([s,u])=>({name:s,localVersion:void 0,remoteVersion:u.version}));return i.push(...a),{finalCompatibility:i,localDependencies:n}}async function Zl(t,e,r){let n=await ue({message:"Would you like to sync your project with Capacitor now? This is recommended to ensure encrypted updates work properly."});if(le(n))throw t&&e&&r&&await Ct("onboarding-v2",e,r,"canceled","\u{1F937}"),l.error("Canceled Capacitor sync"),new Error("Capacitor sync cancelled");if(n){let o=nt(),i=Ee();i.start("Running the command...");try{await new Promise((a,s)=>{let u=(0,BA.spawn)(o.runner,["cap","sync"],{stdio:"pipe"});u.on("close",c=>{c===0?a():s(new Error(`Command failed with exit code ${c}`))}),u.on("error",c=>{s(c)})}),i.stop("Capacitor sync completed \u2705")}catch(a){i.stop("Error"),l.error(`Failed to run Capacitor sync: ${a}`),l.warn(`Please run "${o.runner} cap sync" manually to ensure encrypted updates work properly`)}}else{let o=nt();l.warn("\u26A0\uFE0F Important: If you upload encrypted bundles without syncing, updates will fail!"),l.info(`Remember to run "${o.runner} cap sync" before uploading encrypted bundles`)}}async function iO(t,e){let{data:r}=await t.rpc("exist_app_v2",{appid:e}).single();return!!r}async function Me(t,e,r,n,o=!1){let i=nt(),a=await HA(t,e,r);if(!a.okay)switch(a.error){case"INVALID_APIKEY":{let c="Invalid apikey, such apikey does not exists!";throw o||l.error(c),new Error(c)}case"NO_APP":{let c=`App ${r} does not exist, run first \`${i.runner} @capgo/cli app add ${r}\` to create it`;throw o||l.error(c),new Error(c)}case"NO_ORG":{let c="Could not find organization, please contact support to resolve this!";throw o||l.error(c),new Error(c)}}let s=a.data;if(n>s){let c=`Insuficcent permissions for app ${r}. Current permission: ${St[a.data]}, required for this action: ${St[n]}.`;throw o||l.error(c),new Error(c)}return a.data}var Er="assets/icon.png";var e5=/^[a-z0-9]+(\.[\w-]+)+$/i;function t5(t,e,r){if(!e.apikey)throw r||l.error("Missing API key, you need to provide an API key to upload your bundle"),new Error("Missing API key");if(!t)throw r||l.error("Missing argument, you need to provide a appId, or be in a capacitor project"),new Error("Missing appId");if(t.includes("--"))throw r||l.error('The app id includes illegal symbols. You cannot use "--" in the app id'),new Error("App id includes illegal symbols");if(!e5.test(t))throw r||(l.error(`Invalid app ID format: "${t}"`),l.info("App ID must be in reverse domain notation (e.g., com.example.app)"),l.info("Valid format: lowercase letters, numbers, dots, hyphens, and underscores"),l.info("Examples: com.mycompany.myapp, io.capgo.app, com.example.my-app")),new Error("Invalid app ID format")}async function r5(t,e,r){if(await iO(t,e))throw e==="io.ionic.starter"?(r||l.error(`This appId ${e} cannot be used it's reserved, please change it in your capacitor config.`),new Error("Reserved appId, please change it in capacitor config")):(r||l.error(`App ${e} already exist`),new Error(`App ${e} already exists`))}async function Vg(t,e,r,n=!1){n||ee("Adding"),await Ce(),e.apikey=e.apikey||ne();let o=await te(),i=fe(t,o?.config);t5(i,e,n);let a=await re(e.apikey,e.supaHost,e.supaAnon),s=await ae(a,e.apikey,["write","all"]);await r5(a,i,n),r||(r=await sa(a,["admin","super_admin"]));let u=r.gid,{name:c,icon:f}=e;if(c=c||o.config?.appName||"Unknown",f=f||"resources/icon.png",!f||!c)throw n||l.error("Missing argument, you need to provide a appId and a name, or be in a capacitor project"),new Error("Missing app name or icon path");n||l.info(`Adding ${i} to Capgo`);let d=null,p=null;f&&(0,ca.existsSync)(f)?(d=(0,ca.readFileSync)(f),p=aa(f)||"image/png",n||l.warn(`Found app icon ${f}`)):(0,ca.existsSync)(Er)?(d=(0,ca.readFileSync)(Er),p=aa(Er)||"image/png",n||l.warn(`Found app icon ${Er}`)):n||l.warn(`Cannot find app icon in any of the following locations: ${f}, ${Er}`);let h="icon",m="https://xvwzpoazmxkqosrdewyv.supabase.co/storage/v1/object/public/images/capgo.png";if(d&&p){let{error:b}=await a.storage.from(`images/org/${u}/${i}`).upload(h,d,{contentType:p});if(b)throw n||console.error(b),n||l.error(`Could not add app ${M(b)}`),new Error(`Could not add app ${M(b)}`);let{data:v}=await a.storage.from(`images/org/${u}/${i}`).getPublicUrl(h);m=v?.publicUrl||m}let{error:y}=await a.from("apps").insert({icon_url:m,owner_org:u,user_id:s,name:c,app_id:i});if(y)throw n||l.error(`Could not add app ${M(y)}`),new Error(`Could not add app ${M(y)}`);return n||(l.success(`App ${i} added to Capgo. You can upload a bundle now`),K("Done \u2705")),{appId:i,organizationUid:u,userId:s,name:c,signedURL:m}}async function aO(t,e){await Vg(t,e,void 0)}async function n5(t,e,r=!1,n=!1){r||ee("Deleting"),e.apikey=e.apikey||ne();let o=await te(),i=fe(t,o?.config);if(!e.apikey)throw r||l.error("Missing API key, you need to provide an API key to upload your bundle"),new Error("Missing API key");if(!i)throw r||l.error("Missing argument, you need to provide a appId, or be in a capacitor project"),new Error("Missing appId");let a=await re(e.apikey,e.supaHost,e.supaAnon),s=await ae(a,e.apikey,["write","all"]);await Me(a,e.apikey,i,5,r);let{data:u,error:c}=await a.from("apps").select("owner_org ( created_by, id )").eq("app_id",i).single(),f=u;if(!n&&!c&&(f?.owner_org.created_by??"")!==s){if(r)throw new Error("Cannot delete app: you are not the organization owner");{l.warn("Deleting the app is not recommended for users that are not the organization owner"),l.warn("You are invited as a super_admin but your are not the owner"),l.warn("It's strongly recommended that you do not continue!");let y=await gt({message:"Do you want to continue?",options:[{label:"Yes",value:"yes"},{label:"No",value:"no"}]});if(le(y)||y==="no")throw l.error("Canceled deleting the app, exiting"),new Error("App deletion cancelled")}}else c&&!r&&l.warn(`Cannot get the app owner ${M(c)}`);let{error:d}=await a.storage.from("images").remove([`org/${f?.owner_org.id}/${i}/icon`]);d&&!r&&l.error("Could not delete app logo");let{error:p}=await a.storage.from(`apps/${i}/${s}`).remove(["versions"]);p&&!r&&l.error("Could not delete app version");let{error:h}=await a.from("apps").delete().eq("app_id",i);if(h)throw r||l.error("Could not delete app"),new Error(`Could not delete app: ${M(h)}`);let m=await Et(a,i);return await me(e.apikey,{channel:"app",event:"App Deleted",icon:"\u{1F5D1}\uFE0F",user_id:m,tags:{"app-id":i},notify:!1}).catch(()=>{}),r||(l.success("App deleted in Capgo"),K("Done \u2705")),!0}async function sO(t,e){return n5(t,e,!1,!1)}var Ql=require("node:os"),cO=require("node:process");async function uO(t){let e={},r=Object.keys(t);return(await Promise.all(r.map(o=>ol(o)))).forEach((o,i)=>{o&&(e[r[i]]=o)}),e}async function o5(){let t=await Cr(),e={"@capgo/cli":fr.version};for(let[r,n]of t)(r.startsWith("@capgo/")||r.startsWith("@capawesome/")||r.startsWith("capacitor"))&&(e[r]=n);return e}async function i5(t,e=!1){e||l.warn(" \u{1F48A} Capgo Doctor \u{1F48A}");let r=await te(),n=Ir("",t.packageJson),o=r?.config?.plugins?.CapacitorUpdater?.version||n,i=r?.config?.appName||"",a=fe("",r?.config),s=r?.config?.webDir||"";e||(l.info(` App Name: ${i}`),l.info(` App ID: ${a}`),l.info(` App Version: ${o}`),l.info(` Web Dir: ${s}`),l.info(` OS: ${(0,Ql.platform)()} ${(0,Ql.version)()}`),l.info(` Node: ${cO.version}`),l.info(" Installed Dependencies:"));let u=await o5();if(Object.keys(u).length===0)throw e||l.warning("\x1B[31m%s\x1B[0m \u{1F6A8} No dependencies found"),new Error("No dependencies found");if(!e)for(let f of Object.keys(u))l.info(` ${f}: ${u[f]}`);let c={};if(e)c=await uO(u);else{let f=Ee();f.start("Running: Loading latest dependencies"),c=await uO(u),f.stop("Latest Dependencies:");for(let d of Object.keys(c))l.info(` ${d}: ${c[d]}`)}if(JSON.stringify(u)!==JSON.stringify(c))throw e||l.warn("\x1B[31m\u{1F6A8} Some dependencies are not up to date\x1B[0m"),new Error("Some dependencies are not up to date");return e||l.success("\x1B[32m\u2705 All dependencies are up to date\x1B[0m"),{appName:i,appId:a,appVersion:o,webDir:s,installedDependencies:u,latestDependencies:c}}async function lO(t){return i5(t)}function a5(t){let e=new ut;e.headers=["Name","id","Created"],e.rows=[];for(let r of t.toReversed())e.rows.push([r.name??"",r.app_id,ua(r.created_at)]);l.success("Apps"),l.success(e.toString())}async function s5(t,e){let{data:r,error:n}=await t.from("apps").select().order("created_at",{ascending:!1});if(n)throw e||l.error("Apps not found"),new Error("Apps not found");return r??[]}async function u5(t,e=!1){e||ee("List apps in Capgo"),await Ce(),t.apikey=t.apikey||ne();let r=await re(t.apikey,t.supaHost,t.supaAnon);await ae(r,t.apikey,["write","all","read","upload"]),e||l.info("Getting active bundle in Capgo");let n=await s5(r,e);if(!n.length)throw e||l.error("No apps found"),new Error("No apps found");return e||(l.info(`Active app in Capgo: ${n.length}`),a5(n),K("Done \u2705")),n}async function fO(t){return u5(t,!1)}var dO=require("node:crypto"),la=require("node:fs");async function c5(t,e,r=!1){r||ee("Set app"),e.apikey=e.apikey||ne();let n=await te();if(t=fe(t,n?.config),!e.apikey)throw r||l.error("Missing API key, you need to provide an API key to upload your bundle"),new Error("Missing API key");if(!t)throw r||l.error("Missing argument, you need to provide a appId, or be in a capacitor project"),new Error("Missing appId");let o=await re(e.apikey,e.supaHost,e.supaAnon),a=(await sa(o,["admin","super_admin"])).gid,s=await ae(o,e.apikey,["write","all"]);await Me(o,e.apikey,t,4,r);let{name:u,icon:c,retention:f,exposeMetadata:d}=e;if(f&&Number.isNaN(Number(f)))throw r||l.error("retention value must be a number"),new Error("Retention value must be a number");if(f&&f<0)throw r||l.error("retention value cannot be less than 0"),new Error("Retention value cannot be less than 0");if(f&&f>=63113904)throw r||l.error("retention value cannot be greater than 63113904 seconds (2 years)"),new Error("Retention value cannot be greater than 63113904 seconds (2 years)");let p,h,m=`icon_${(0,dO.randomUUID)()}`,y="https://xvwzpoazmxkqosrdewyv.supabase.co/storage/v1/object/public/images/capgo.png";if(c&&(0,la.existsSync)(c)?(p=(0,la.readFileSync)(c),h=aa(c)||"image/png",r||l.warn(`Found app icon ${c}`)):(0,la.existsSync)(Er)?(p=(0,la.readFileSync)(Er),h=aa(Er)||"image/png",r||l.warn(`Found app icon ${Er}`)):r||l.warn(`Cannot find app icon in any of the following locations: ${c}, ${Er}`),p&&h){let{error:v}=await o.storage.from(`images/org/${a}/${t}`).upload(m,p,{contentType:h});if(v)throw r||l.error(`Could not set app ${M(v)}`),new Error(`Could not set app: ${M(v)}`);let{data:E}=await o.storage.from(`images/org/${a}/${t}`).getPublicUrl(m);y=E?.publicUrl||y}let{error:b}=await o.from("apps").update({icon_url:y,name:u,retention:f?f*24*60*60:void 0,expose_metadata:d}).eq("app_id",t).eq("user_id",s);if(b)throw r||l.error(`Could not set app ${M(b)}`),new Error(`Could not set app: ${M(b)}`);return r||K("Done \u2705"),!0}async function pO(t,e){return c5(t,e)}async function l5(t,e,r=!1){if(r||ee("Set a specific setting in capacitor config"),e.bool&&e.string)throw r||l.error("Bool and string CANNOT be set at the same time"),new Error("Bool and string cannot both be provided");if(!e.bool&&!e.string)throw r||l.error("You MUST provide either bool or string as the value"),new Error("Either bool or string value is required");if(e.bool&&e.bool!=="true"&&e.bool!=="false")throw r||l.error("Invalid bool"),new Error("Invalid bool value; expected true or false");try{let n=await te(),o=n.config,i=t.split(".");if(i.length===0)throw r||l.error("Invalid path"),new Error("Invalid config path");for(let s of i.slice(0,-1))Object.prototype.hasOwnProperty.call(o,s)||(o[s]={}),o=o[s];let a=e.bool?e.bool==="true":e.string;o[i.at(-1)]=a,await Zi(n,!0),r||l.success(`Set "${t}" to "${a}"`)}catch(n){throw r||l.error(`Cannot set config in capacitor settings ${M(n)}`),new Error(`Cannot set capacitor config: ${M(n)}`)}r||K("Done \u2705")}async function hO(t,e){return l5(t,e)}var ir=require("node:fs"),ar=require("node:path"),qe=require("node:process");var Bo=require("node:fs/promises"),mO=require("node:os"),Ts=require("node:path"),xe=require("node:process"),gO=(0,Ts.join)((0,mO.homedir)(),".capgo-credentials"),yO=(0,Ts.join)(gO,"credentials.json"),DO=".capgo-credentials.json";function bO(t){return t?(0,Ts.join)((0,xe.cwd)(),DO):yO}function f5(t){return t?null:gO}async function fa(t){return(await(0,Bo.readFile)(t)).toString("base64")}async function da(t){try{let e=bO(t),r=await(0,Bo.readFile)(e,"utf-8");return JSON.parse(r)}catch{return{}}}async function Rs(t,e){if(e!==void 0){let o=await da(e);if(!t){let i=Object.keys(o);return i.length===0?null:o[i[0]]||null}return o[t]||null}let r=await da(!0),n=await da(!1);if(!t){let o=Object.keys(r);if(o.length>0)return r[o[0]]||null;let i=Object.keys(n);return i.length===0?null:n[i[0]]||null}return r[t]||n[t]||null}async function ef(t,e){let r=bO(e),n=f5(e);n&&await(0,Bo.mkdir)(n,{recursive:!0}),await(0,Bo.writeFile)(r,JSON.stringify(t,null,2),"utf-8")}function d5(){let t={};return xe.env.BUILD_CERTIFICATE_BASE64&&(t.BUILD_CERTIFICATE_BASE64=xe.env.BUILD_CERTIFICATE_BASE64),xe.env.BUILD_PROVISION_PROFILE_BASE64&&(t.BUILD_PROVISION_PROFILE_BASE64=xe.env.BUILD_PROVISION_PROFILE_BASE64),xe.env.BUILD_PROVISION_PROFILE_BASE64_PROD&&(t.BUILD_PROVISION_PROFILE_BASE64_PROD=xe.env.BUILD_PROVISION_PROFILE_BASE64_PROD),xe.env.P12_PASSWORD&&(t.P12_PASSWORD=xe.env.P12_PASSWORD),xe.env.APPLE_KEY_ID&&(t.APPLE_KEY_ID=xe.env.APPLE_KEY_ID),xe.env.APPLE_ISSUER_ID&&(t.APPLE_ISSUER_ID=xe.env.APPLE_ISSUER_ID),xe.env.APPLE_KEY_CONTENT&&(t.APPLE_KEY_CONTENT=xe.env.APPLE_KEY_CONTENT),xe.env.APPLE_PROFILE_NAME&&(t.APPLE_PROFILE_NAME=xe.env.APPLE_PROFILE_NAME),xe.env.APP_STORE_CONNECT_TEAM_ID&&(t.APP_STORE_CONNECT_TEAM_ID=xe.env.APP_STORE_CONNECT_TEAM_ID),xe.env.ANDROID_KEYSTORE_FILE&&(t.ANDROID_KEYSTORE_FILE=xe.env.ANDROID_KEYSTORE_FILE),xe.env.KEYSTORE_KEY_ALIAS&&(t.KEYSTORE_KEY_ALIAS=xe.env.KEYSTORE_KEY_ALIAS),xe.env.KEYSTORE_KEY_PASSWORD&&(t.KEYSTORE_KEY_PASSWORD=xe.env.KEYSTORE_KEY_PASSWORD),xe.env.KEYSTORE_STORE_PASSWORD&&(t.KEYSTORE_STORE_PASSWORD=xe.env.KEYSTORE_STORE_PASSWORD),xe.env.PLAY_CONFIG_JSON&&(t.PLAY_CONFIG_JSON=xe.env.PLAY_CONFIG_JSON),t}async function wO(t,e,r){let n=await Rs(t),o=d5(),i={...n?.[e]||{}};if(Object.assign(i,o),r&&Object.assign(i,r),e==="android"){let a=!!i.KEYSTORE_KEY_PASSWORD,s=!!i.KEYSTORE_STORE_PASSWORD;a&&!s?i.KEYSTORE_STORE_PASSWORD=i.KEYSTORE_KEY_PASSWORD:!a&&s&&(i.KEYSTORE_KEY_PASSWORD=i.KEYSTORE_STORE_PASSWORD)}return Object.keys(i).length>0?i:void 0}async function zg(t,e,r={}){let n={...r};return t==="ios"?(e.BUILD_CERTIFICATE_FILE&&(n.BUILD_CERTIFICATE_BASE64=await fa(e.BUILD_CERTIFICATE_FILE)),e.BUILD_PROVISION_PROFILE_FILE&&(n.BUILD_PROVISION_PROFILE_BASE64=await fa(e.BUILD_PROVISION_PROFILE_FILE)),e.BUILD_PROVISION_PROFILE_FILE_PROD&&(n.BUILD_PROVISION_PROFILE_BASE64_PROD=await fa(e.BUILD_PROVISION_PROFILE_FILE_PROD)),e.APPLE_KEY_FILE&&(n.APPLE_KEY_CONTENT=await fa(e.APPLE_KEY_FILE))):t==="android"&&(e.ANDROID_KEYSTORE_PATH&&(n.ANDROID_KEYSTORE_FILE=await fa(e.ANDROID_KEYSTORE_PATH)),e.PLAY_CONFIG_JSON_PATH&&(n.PLAY_CONFIG_JSON=await fa(e.PLAY_CONFIG_JSON_PATH))),n}async function Kg(t,e,r,n){let o=await da(n),i=o[t]||{};i[e]={...i[e],...r},o[t]=i,await ef(o,n)}async function tf(t,e,r){let n=await da(r);if(!t){await ef({},r);return}if(!e){delete n[t],await ef(n,r);return}let o=n[t]||{};delete o[e],Object.keys(o).length===0?delete n[t]:n[t]=o,await ef(n,r)}async function Gg(t,e,r){return(await Rs(t,r))?.[e]||null}async function rf(t){let e=await da(t);return Object.keys(e)}function Bs(){return(0,Ts.join)((0,xe.cwd)(),DO)}function Ns(){return yO}async function vO(t){try{t.platform||(l.error("Platform is required. Use --platform ios or --platform android"),(0,qe.exit)(1));let e=await te(),r=fe(t.appId,e?.config);r||(l.error("\u274C App ID is required."),l.error(""),l.error("Either:"),l.error(" 1. Run this command from a Capacitor project directory, OR"),l.error(" 2. Provide --appId explicitly: --appId com.example.app"),l.error(""),(0,qe.exit)(1));let n=t.platform;l.info(`
|
|
172
172
|
\u{1F512} SECURITY NOTICE:`),l.info(" - Credentials saved to ~/.capgo-credentials/credentials.json (local only)"),l.info(" - When building, credentials are sent to Capgo servers"),l.info(" - Credentials are NEVER stored on Capgo servers"),l.info(" - Auto-deleted after build"),l.info(` - Builds sent directly to app stores - Capgo keeps nothing
|
|
173
173
|
`);let o={},i={};if(n==="ios"){if(t.certificate){let c=(0,ar.resolve)(t.certificate);(0,ir.existsSync)(c)||(l.error(`Certificate file not found: ${c}`),(0,qe.exit)(1)),i.BUILD_CERTIFICATE_FILE=c,l.info(`\u2713 Certificate file: ${c}`)}if(t.provisioningProfile){let c=(0,ar.resolve)(t.provisioningProfile);(0,ir.existsSync)(c)||(l.error(`Provisioning profile not found: ${c}`),(0,qe.exit)(1)),i.BUILD_PROVISION_PROFILE_FILE=c,l.info(`\u2713 Provisioning profile: ${c}`)}if(t.provisioningProfileProd){let c=(0,ar.resolve)(t.provisioningProfileProd);(0,ir.existsSync)(c)||(l.error(`Production provisioning profile not found: ${c}`),(0,qe.exit)(1)),i.BUILD_PROVISION_PROFILE_FILE_PROD=c,l.info(`\u2713 Production provisioning profile: ${c}`)}if(t.appleKey){let c=(0,ar.resolve)(t.appleKey);(0,ir.existsSync)(c)||(l.error(`Apple key file not found: ${c}`),(0,qe.exit)(1)),i.APPLE_KEY_FILE=c,l.info(`\u2713 Apple key file: ${c}`)}t.p12Password?o.P12_PASSWORD=t.p12Password:i.BUILD_CERTIFICATE_FILE&&(l.warn("\u26A0\uFE0F No P12 password provided - assuming certificate has no password"),l.warn(' If your certificate requires a password, add --p12-password "your-password"')),t.appleKeyId&&(o.APPLE_KEY_ID=t.appleKeyId),t.appleIssuerId&&(o.APPLE_ISSUER_ID=t.appleIssuerId),t.appleProfileName&&(o.APPLE_PROFILE_NAME=t.appleProfileName),t.appleTeamId&&(o.APP_STORE_CONNECT_TEAM_ID=t.appleTeamId)}else if(n==="android"){if(t.keystore){let d=(0,ar.resolve)(t.keystore);(0,ir.existsSync)(d)||(l.error(`Keystore file not found: ${d}`),(0,qe.exit)(1)),i.ANDROID_KEYSTORE_PATH=d,l.info(`\u2713 Keystore file: ${d}`)}if(t.playConfig){let d=(0,ar.resolve)(t.playConfig);(0,ir.existsSync)(d)||(l.error(`Play config file not found: ${d}`),(0,qe.exit)(1)),i.PLAY_CONFIG_JSON_PATH=d,l.info(`\u2713 Play Store config: ${d}`)}t.keystoreAlias&&(o.KEYSTORE_KEY_ALIAS=t.keystoreAlias);let c=!!t.keystoreKeyPassword,f=!!t.keystoreStorePassword;c&&!f?(o.KEYSTORE_KEY_PASSWORD=t.keystoreKeyPassword,o.KEYSTORE_STORE_PASSWORD=t.keystoreKeyPassword):!c&&f?(o.KEYSTORE_KEY_PASSWORD=t.keystoreStorePassword,o.KEYSTORE_STORE_PASSWORD=t.keystoreStorePassword):c&&f&&(o.KEYSTORE_KEY_PASSWORD=t.keystoreKeyPassword,o.KEYSTORE_STORE_PASSWORD=t.keystoreStorePassword)}let a=await zg(n,i,o),s=[];if(n==="ios"?(a.BUILD_CERTIFICATE_BASE64||s.push("--certificate <path> (P12 certificate file)"),a.BUILD_PROVISION_PROFILE_BASE64||s.push("--provisioning-profile <path> (Provisioning profile file)"),a.APPLE_KEY_ID||s.push("--apple-key-id <id> (App Store Connect API Key ID)"),a.APPLE_ISSUER_ID||s.push("--apple-issuer-id <id> (App Store Connect Issuer ID)"),a.APPLE_KEY_CONTENT||s.push("--apple-key <path> (App Store Connect API Key file)"),a.APP_STORE_CONNECT_TEAM_ID||s.push("--apple-team-id <id> (App Store Connect Team ID)"),a.APPLE_PROFILE_NAME||s.push("--apple-profile-name <name> (Provisioning profile name)")):n==="android"&&(a.ANDROID_KEYSTORE_FILE||s.push("--keystore <path> (Keystore file)"),a.KEYSTORE_KEY_ALIAS||s.push("--keystore-alias <alias> (Keystore alias)"),!a.KEYSTORE_KEY_PASSWORD&&!a.KEYSTORE_STORE_PASSWORD&&s.push("--keystore-key-password <password> OR --keystore-store-password <password> (At least one password required, will be used for both)"),a.PLAY_CONFIG_JSON||s.push("--play-config <path> (Google Play service account JSON - required for uploading to Play Store)")),s.length>0){l.error(`\u274C Missing required credentials for ${n.toUpperCase()}:`),l.error("");for(let c of s)l.error(` \u2022 ${c}`);l.error(""),l.error("Example:"),n==="ios"?(l.error(" npx @capgo/cli build credentials save --platform ios \\"),l.error(" --certificate ./cert.p12 \\"),l.error(' --p12-password "your-password" \\ # Optional if cert has no password'),l.error(" --provisioning-profile ./profile.mobileprovision \\"),l.error(" --apple-key ./AuthKey_XXXXXXXXXX.p8 \\"),l.error(' --apple-key-id "XXXXXXXXXX" \\'),l.error(' --apple-issuer-id "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" \\'),l.error(' --apple-team-id "XXXXXXXXXX" \\'),l.error(' --apple-profile-name "match AppStore com.example.app"')):(l.error(" npx @capgo/cli build credentials save --platform android \\"),l.error(" --keystore ./release.keystore \\"),l.error(' --keystore-alias "my-key-alias" \\'),l.error(' --keystore-key-password "password" \\'),l.error(" --play-config ./play-store-service-account.json"),l.error(""),l.error(" Note: If both key and store passwords are the same, you only need to provide one."),l.error(" If they differ, provide both --keystore-key-password and --keystore-store-password."),l.error(" The --play-config is required for uploading to Google Play Store.")),l.error(""),(0,qe.exit)(1)}await Kg(r,n,a,t.local);try{let c=ne(!0);if(c){let f=await re(c),d=await Et(f,r);await me(c,{channel:"credentials",event:"Credentials saved",icon:"\u{1F510}",user_id:d,tags:{"app-id":r,platform:n,storage:t.local?"local":"global"},notify:!1}).catch()}}catch{}let u=t.local?Bs():Ns();l.success(`
|
|
174
174
|
\u2705 ${n.toUpperCase()} credentials saved successfully for ${r}!`),l.info(` Location: ${u}`),l.info(` Use: npx @capgo/cli build ${r} --platform ${n}
|
|
@@ -181,10 +181,10 @@ Global: ${Ns()}`),l.info(`Local: ${Bs()}`),l.info(`
|
|
|
181
181
|
`)}catch(e){l.error(`Failed to list credentials: ${e instanceof Error?e.message:String(e)}`),(0,qe.exit)(1)}}async function EO(t){try{let e=await te(),r=t.appId||fe(void 0,e?.config),n=t.local?Bs():Ns();if(r&&t.platform){if(!await Gg(r,t.platform,t.local)){l.info(`No ${t.platform.toUpperCase()} credentials found for ${r}.`);return}await tf(r,t.platform,t.local),l.success(`\u2705 ${t.platform.toUpperCase()} credentials cleared for ${r}!`)}else if(r){let o=await Rs(r,t.local);if(!o||!o.ios&&!o.android){l.info(`No credentials found for ${r}.`);return}await tf(r,void 0,t.local),l.success(`\u2705 All credentials cleared for ${r}!`)}else{if((await rf(t.local)).length===0){l.info("No saved credentials found.");return}await tf(void 0,void 0,t.local),l.success("\u2705 All credentials cleared!")}l.info(` Location: ${n}
|
|
182
182
|
`)}catch(e){l.error(`Failed to clear credentials: ${e instanceof Error?e.message:String(e)}`),(0,qe.exit)(1)}}async function _O(t){try{let e=!!(t.certificate||t.provisioningProfile||t.provisioningProfileProd||t.p12Password||t.appleKey||t.appleKeyId||t.appleIssuerId||t.appleProfileName||t.appleTeamId),r=!!(t.keystore||t.keystoreAlias||t.keystoreKeyPassword||t.keystoreStorePassword||t.playConfig),n=t.platform;n||(e&&!r?n="ios":r&&!e?n="android":e&&r?(l.error("Cannot mix iOS and Android options. Please use --platform to specify which platform."),(0,qe.exit)(1)):(l.error("No credentials provided to update."),l.error(""),l.error("Usage: npx @capgo/cli build credentials update [options]"),l.error(""),l.error("iOS options: --certificate, --provisioning-profile, --apple-key, etc."),l.error("Android options: --keystore, --keystore-alias, --play-config, etc."),(0,qe.exit)(1)));let o=await te(),i=fe(t.appId,o?.config);i||(l.error("\u274C App ID is required."),l.error(""),l.error("Either:"),l.error(" 1. Run this command from a Capacitor project directory, OR"),l.error(" 2. Provide --appId explicitly: --appId com.example.app"),(0,qe.exit)(1)),await Gg(i,n,t.local)||(l.error(`\u274C No existing ${n.toUpperCase()} credentials found for ${i}.`),l.error(""),l.error('Use "build credentials save" to create credentials first.'),(0,qe.exit)(1));let s={},u={};if(n==="ios"){if(t.certificate){let d=(0,ar.resolve)(t.certificate);(0,ir.existsSync)(d)||(l.error(`Certificate file not found: ${d}`),(0,qe.exit)(1)),u.BUILD_CERTIFICATE_FILE=d,l.info(`\u2713 Updating certificate: ${d}`)}if(t.provisioningProfile){let d=(0,ar.resolve)(t.provisioningProfile);(0,ir.existsSync)(d)||(l.error(`Provisioning profile not found: ${d}`),(0,qe.exit)(1)),u.BUILD_PROVISION_PROFILE_FILE=d,l.info(`\u2713 Updating provisioning profile: ${d}`)}if(t.provisioningProfileProd){let d=(0,ar.resolve)(t.provisioningProfileProd);(0,ir.existsSync)(d)||(l.error(`Production provisioning profile not found: ${d}`),(0,qe.exit)(1)),u.BUILD_PROVISION_PROFILE_FILE_PROD=d,l.info(`\u2713 Updating production provisioning profile: ${d}`)}if(t.appleKey){let d=(0,ar.resolve)(t.appleKey);(0,ir.existsSync)(d)||(l.error(`Apple key file not found: ${d}`),(0,qe.exit)(1)),u.APPLE_KEY_FILE=d,l.info(`\u2713 Updating Apple key file: ${d}`)}t.p12Password&&(s.P12_PASSWORD=t.p12Password,l.info("\u2713 Updating P12 password")),t.appleKeyId&&(s.APPLE_KEY_ID=t.appleKeyId,l.info(`\u2713 Updating Apple Key ID: ${t.appleKeyId}`)),t.appleIssuerId&&(s.APPLE_ISSUER_ID=t.appleIssuerId,l.info(`\u2713 Updating Apple Issuer ID: ${t.appleIssuerId}`)),t.appleProfileName&&(s.APPLE_PROFILE_NAME=t.appleProfileName,l.info(`\u2713 Updating Apple Profile Name: ${t.appleProfileName}`)),t.appleTeamId&&(s.APP_STORE_CONNECT_TEAM_ID=t.appleTeamId,l.info(`\u2713 Updating Apple Team ID: ${t.appleTeamId}`))}else if(n==="android"){if(t.keystore){let d=(0,ar.resolve)(t.keystore);(0,ir.existsSync)(d)||(l.error(`Keystore file not found: ${d}`),(0,qe.exit)(1)),u.ANDROID_KEYSTORE_PATH=d,l.info(`\u2713 Updating keystore: ${d}`)}if(t.playConfig){let d=(0,ar.resolve)(t.playConfig);(0,ir.existsSync)(d)||(l.error(`Play config file not found: ${d}`),(0,qe.exit)(1)),u.PLAY_CONFIG_JSON_PATH=d,l.info(`\u2713 Updating Play Store config: ${d}`)}t.keystoreAlias&&(s.KEYSTORE_KEY_ALIAS=t.keystoreAlias,l.info(`\u2713 Updating keystore alias: ${t.keystoreAlias}`)),t.keystoreKeyPassword&&(s.KEYSTORE_KEY_PASSWORD=t.keystoreKeyPassword,l.info("\u2713 Updating keystore key password")),t.keystoreStorePassword&&(s.KEYSTORE_STORE_PASSWORD=t.keystoreStorePassword,l.info("\u2713 Updating keystore store password"))}let c=await zg(n,u,s);await Kg(i,n,c,t.local);let f=t.local?Bs():Ns();l.success(`
|
|
183
183
|
\u2705 ${n.toUpperCase()} credentials updated for ${i}!`),l.info(` Location: ${f}
|
|
184
|
-
`)}catch(e){l.error(`Failed to update credentials: ${e instanceof Error?e.message:String(e)}`),(0,qe.exit)(1)}}var Kr=require("node:fs"),
|
|
185
|
-
`);p=b.pop()||"";for(let v of b)if(v.startsWith("data: ")){let E=v.slice(6);h(E)}}if(p.startsWith("data: ")){let m=p.slice(6);h(m)}return a}catch(c){return o||l.warn(`Log streaming interrupted${c instanceof Error?`: ${c.message}`:""}`),null}}async function h5(t,e,r,n,o,i){let s=0;for(;s<120;)try{let u=await fetch(`${t}/build/status?job_id=${encodeURIComponent(e)}&app_id=${encodeURIComponent(r)}&platform=${n}`,{headers:{authorization:o}});if(!u.ok){i||l.warn(`Status check failed: ${u.status}`),await new Promise(f=>setTimeout(f,5e3)),s++;continue}let c=await u.json();if(c.status==="succeeded"||c.status==="failed")return c.status;await new Promise(f=>setTimeout(f,5e3)),s++}catch(u){i||l.warn(`Status check error: ${u}`),await new Promise(c=>setTimeout(c,5e3)),s++}return i||l.warn("Build status polling timed out"),"timeout"}async function m5(t,e){let r=new Set,n=!1;if(e==="ios"){let o=(0,
|
|
186
|
-
\u{1F512} Security: Credentials are never stored on Capgo servers`),l.info(" They are used only during build and deleted after
|
|
187
|
-
`)),o&&l.info(`API host: ${s}`);let f={};e.buildCertificateBase64&&(f.BUILD_CERTIFICATE_BASE64=e.buildCertificateBase64),e.buildProvisionProfileBase64&&(f.BUILD_PROVISION_PROFILE_BASE64=e.buildProvisionProfileBase64),e.buildProvisionProfileBase64Prod&&(f.BUILD_PROVISION_PROFILE_BASE64_PROD=e.buildProvisionProfileBase64Prod),e.p12Password&&(f.P12_PASSWORD=e.p12Password),e.appleKeyId&&(f.APPLE_KEY_ID=e.appleKeyId),e.appleIssuerId&&(f.APPLE_ISSUER_ID=e.appleIssuerId),e.appleKeyContent&&(f.APPLE_KEY_CONTENT=e.appleKeyContent),e.appleProfileName&&(f.APPLE_PROFILE_NAME=e.appleProfileName),e.appStoreConnectTeamId&&(f.APP_STORE_CONNECT_TEAM_ID=e.appStoreConnectTeamId),e.androidKeystoreFile&&(f.ANDROID_KEYSTORE_FILE=e.androidKeystoreFile),e.keystoreKeyAlias&&(f.KEYSTORE_KEY_ALIAS=e.keystoreKeyAlias);let d=!!e.keystoreKeyPassword,p=!!e.keystoreStorePassword;d&&!p?(f.KEYSTORE_KEY_PASSWORD=e.keystoreKeyPassword,f.KEYSTORE_STORE_PASSWORD=e.keystoreKeyPassword):!d&&p?(f.KEYSTORE_KEY_PASSWORD=e.keystoreStorePassword,f.KEYSTORE_STORE_PASSWORD=e.keystoreStorePassword):d&&p&&(f.KEYSTORE_KEY_PASSWORD=e.keystoreKeyPassword,f.KEYSTORE_STORE_PASSWORD=e.keystoreStorePassword),e.playConfigJson&&(f.PLAY_CONFIG_JSON=e.playConfigJson);let h=await wO(t,e.platform,Object.keys(f).length>0?f:void 0),m={app_id:t,platform:e.platform};if(!h)throw r||(l.error("\u274C No credentials found for this app and platform"),l.error(""),l.error("You must provide credentials via:"),l.error(" 1. CLI arguments (--apple-key-id, --p12-password, etc.)"),l.error(" 2. Environment variables (APPLE_KEY_ID, P12_PASSWORD, etc.)"),l.error(" 3. Saved credentials file:"),l.error(` npx @capgo/cli build credentials save --appId ${t} --platform ${e.platform}`),l.error(""),l.error("Documentation:"),l.error(" https://capgo.app/docs/cli/cloud-build/credentials/")),new Error("No credentials found. Please provide credentials before building.");let y=[];if(e.platform==="ios"?(h.BUILD_CERTIFICATE_BASE64||y.push("BUILD_CERTIFICATE_BASE64 (or --build-certificate-base64)"),!h.P12_PASSWORD&&!r&&(l.warn("\u26A0\uFE0F P12_PASSWORD not provided - assuming certificate has no password"),l.warn(" If your certificate requires a password, provide it with --p12-password")),h.BUILD_PROVISION_PROFILE_BASE64||y.push("BUILD_PROVISION_PROFILE_BASE64 (or --build-provision-profile-base64)"),h.APPLE_KEY_ID||y.push("APPLE_KEY_ID (or --apple-key-id)"),h.APPLE_ISSUER_ID||y.push("APPLE_ISSUER_ID (or --apple-issuer-id)"),h.APPLE_KEY_CONTENT||y.push("APPLE_KEY_CONTENT (or --apple-key-content)"),h.APP_STORE_CONNECT_TEAM_ID||y.push("APP_STORE_CONNECT_TEAM_ID (or --apple-team-id)")):e.platform==="android"&&(h.ANDROID_KEYSTORE_FILE||y.push("ANDROID_KEYSTORE_FILE (or --android-keystore-file)"),h.KEYSTORE_KEY_ALIAS||y.push("KEYSTORE_KEY_ALIAS (or --keystore-key-alias)"),!h.KEYSTORE_KEY_PASSWORD&&!h.KEYSTORE_STORE_PASSWORD&&y.push("KEYSTORE_KEY_PASSWORD or KEYSTORE_STORE_PASSWORD (at least one password required)"),!h.PLAY_CONFIG_JSON&&!r&&l.warn("\u26A0\uFE0F PLAY_CONFIG_JSON not provided - build will succeed but cannot auto-upload to Play Store")),y.length>0){if(!r){l.error(`\u274C Missing required credentials for ${e.platform}:`),l.error("");for(let _ of y)l.error(` \u2022 ${_}`);l.error(""),l.error("Provide credentials via:"),l.error(' 1. CLI arguments: npx @capgo/cli build request --platform ios --apple-id "..." --p12-password "..."'),l.error(' 2. Environment variables: export APPLE_ID="..." P12_PASSWORD="..."'),l.error(" 3. Saved credentials: npx @capgo/cli build credentials save --platform ios ..."),l.error(""),l.error("Documentation:"),l.error(` https://capgo.app/docs/cli/cloud-build/${e.platform}/`)}throw new Error(`Missing required credentials for ${e.platform}: ${y.join(", ")}`)}if(m.credentials=h,r||l.info("\u2713 Using credentials (merged from CLI args, env vars, and saved file)"),o){let _=Object.keys(h).filter(S=>h[S]);l.info(`Credentials provided: ${_.join(", ")}`)}r||l.info("Requesting build from Capgo...");let b=await fetch(`${s}/build/request`,{method:"POST",headers:{"Content-Type":"application/json",authorization:e.apikey},body:JSON.stringify(m)});if(!b.ok){let _=await b.text();throw new Error(`Failed to request build: ${b.status} - ${_}`)}let v=await b.json();r||(l.success(`Build job created: ${v.job_id}`),l.info(`Status: ${v.status}`)),o&&(l.info(`Upload URL: ${v.upload_url}`),l.info(`Upload expires: ${v.upload_expires_at}`)),await me(e.apikey,{channel:"native-builder",event:"Build requested",icon:"\u{1F3D7}\uFE0F",user_id:c,tags:{"app-id":t,platform:e.platform},notify:!1}).catch();let E=(0,
|
|
184
|
+
`)}catch(e){l.error(`Failed to update credentials: ${e instanceof Error?e.message:String(e)}`),(0,qe.exit)(1)}}var Kr=require("node:fs"),_r=require("node:fs/promises"),xO=require("node:os"),Sr=require("node:path"),nf=require("node:process");var AO=pe(oh()),of=pe(nl());async function p5(t,e,r,n,o,i=!1){if(o)return null;let a=null,s=!1,u=`${t}/build/logs/${e}?app_id=${encodeURIComponent(r)}`;l.info(`Connecting to log stream: ${u}`);try{let c=await fetch(u,{headers:{authorization:n}});if(l.info(`Log stream response: ${c.status}`),!c.ok){let m=await c.text().catch(()=>"unknown error");return l.warn(`Could not stream logs (${c.status}): ${m}`),null}let f=c.body?.getReader();if(!f)return l.warn("No response body for log stream"),null;l.info("Reading log stream...");let d=new TextDecoder,p="",h=m=>{if(!m.trim())return;let y=m.match(/^(?:Build|Job already) (succeeded|failed|expired|released|cancelled)$/i);if(y){a=y[1].toLowerCase();return}a||(s||(s=!0,l.info("")),l.info(m))};for(;;){let{done:m,value:y}=await f.read();if(m)break;p+=d.decode(y,{stream:!0});let b=p.split(`
|
|
185
|
+
`);p=b.pop()||"";for(let v of b)if(v.startsWith("data: ")){let E=v.slice(6);h(E)}}if(p.startsWith("data: ")){let m=p.slice(6);h(m)}return a}catch(c){return o||l.warn(`Log streaming interrupted${c instanceof Error?`: ${c.message}`:""}`),null}}async function h5(t,e,r,n,o,i){let s=0;for(;s<120;)try{let u=await fetch(`${t}/build/status?job_id=${encodeURIComponent(e)}&app_id=${encodeURIComponent(r)}&platform=${n}`,{headers:{authorization:o}});if(!u.ok){i||l.warn(`Status check failed: ${u.status}`),await new Promise(f=>setTimeout(f,5e3)),s++;continue}let c=await u.json();if(c.status==="succeeded"||c.status==="failed")return c.status;await new Promise(f=>setTimeout(f,5e3)),s++}catch(u){i||l.warn(`Status check error: ${u}`),await new Promise(c=>setTimeout(c,5e3)),s++}return i||l.warn("Build status polling timed out"),"timeout"}async function m5(t,e){let r=new Set,n=!1;if(e==="ios"){let o=(0,Sr.join)(t,"ios/App/CapApp-SPM/Package.swift");if((0,Kr.existsSync)(o)){n=!0;let a=(await(0,_r.readFile)(o,"utf-8")).matchAll(/\.package\s*\([^)]*path:\s*["'](?:\.\.\/)*node_modules\/([^"']+)["']\s*\)/g);for(let s of a)r.add(s[1])}else{let i=(0,Sr.join)(t,"ios/App/Podfile");if((0,Kr.existsSync)(i)){let s=(await(0,_r.readFile)(i,"utf-8")).matchAll(/pod\s+['"][^'"]+['"],\s*:path\s*=>\s*['"]\.\.\/\.\.\/node_modules\/([^'"]+)['"]/g);for(let u of s)r.add(u[1])}}}else if(e==="android"){let o=(0,Sr.join)(t,"android/capacitor.settings.gradle");if((0,Kr.existsSync)(o)){let a=(await(0,_r.readFile)(o,"utf-8")).matchAll(/new\s+File\s*\(\s*['"]\.\.\/node_modules\/([^'"]+)['"]\s*\)/g);for(let s of a){let c=s[1].replace(/\/android$/,"");r.add(c)}}}return{packages:r,usesSPM:n}}function SO(t,e,r){let n=t.replace(/\\/g,"/");if(n.startsWith(`${e}/`)||n==="package.json"||n==="package-lock.json"||n.startsWith("capacitor.config.")||n.startsWith("resources/")||e==="ios"&&n.startsWith("node_modules/@capacitor/ios/")||e==="android"&&n.startsWith("node_modules/@capacitor/android/"))return!0;for(let o of r.packages){let i=`node_modules/${o}/`;if(e==="android"){if(n.startsWith(`${i}android/`))return!0}else if(e==="ios"){if(n.startsWith(`${i}ios/`))return!0;if(r.usesSPM){if(n===`${i}Package.swift`)return!0}else if(n.startsWith(i)&&n.endsWith(".podspec"))return!0}}return!1}function Ls(t,e,r,n,o){let i=(0,Kr.readdirSync)(e);for(let a of i){let s=(0,Sr.join)(e,a),u=r?`${r}/${a}`:a,c=(0,Kr.statSync)(s);if(c.isDirectory()){if(a===".git"||a==="dist"||a==="build"||a===".angular"||a===".vite"||a===".gradle"||a===".idea"||a===".swiftpm")continue;if(a===n){Ls(t,s,u,n,o);continue}if(a==="node_modules"){Ls(t,s,u,n,o);continue}if(a==="resources"){Ls(t,s,u,n,o);continue}let f=u.replace(/\\/g,"/");(SO(u,n,o)||Array.from(o.packages).some(p=>`node_modules/${p}/`.startsWith(`${f}/`)||f.startsWith(`node_modules/${p}`)))&&Ls(t,s,u,n,o)}else if(c.isFile()){if(a===".DS_Store"||a.endsWith(".log"))continue;SO(u,n,o)&&t.addLocalFile(s,r||void 0)}}}async function g5(t,e,r){let n=await m5(t,r),o=new AO.default;Ls(o,t,"",r,n),await(0,_r.writeFile)(e,o.toBuffer())}async function y5(t,e,r=!1){let n=Date.now(),o=e.verbose??!1;try{e.apikey=e.apikey||ne(r);let i=await te();if(t=t||i?.config.appId,!t)throw new Error("Missing argument, you need to provide a appId, or be in a capacitor project");if(!e.platform)throw new Error("Missing required argument: --platform <ios|android>");if(e.platform!=="ios"&&e.platform!=="android")throw new Error(`Invalid platform "${e.platform}". Must be "ios" or "android"`);let a=(0,Sr.resolve)(e.path||(0,nf.cwd)()),s=e.supaHost||"https://api.capgo.app",u=await re(e.apikey,e.supaHost,e.supaAnon);await ae(u,e.apikey,["write","all"]);let c=await Et(u,t);r||(l.info(`Requesting native build for ${t}`),l.info(`Platform: ${e.platform}`),l.info(`Project: ${a}`),l.info(`
|
|
186
|
+
\u{1F512} Security: Credentials are never stored on Capgo servers`),l.info(" They are used only during build and deleted after"),l.info(` Builds sent directly to app stores - Capgo keeps nothing
|
|
187
|
+
`)),o&&l.info(`API host: ${s}`);let f={};e.buildCertificateBase64&&(f.BUILD_CERTIFICATE_BASE64=e.buildCertificateBase64),e.buildProvisionProfileBase64&&(f.BUILD_PROVISION_PROFILE_BASE64=e.buildProvisionProfileBase64),e.buildProvisionProfileBase64Prod&&(f.BUILD_PROVISION_PROFILE_BASE64_PROD=e.buildProvisionProfileBase64Prod),e.p12Password&&(f.P12_PASSWORD=e.p12Password),e.appleKeyId&&(f.APPLE_KEY_ID=e.appleKeyId),e.appleIssuerId&&(f.APPLE_ISSUER_ID=e.appleIssuerId),e.appleKeyContent&&(f.APPLE_KEY_CONTENT=e.appleKeyContent),e.appleProfileName&&(f.APPLE_PROFILE_NAME=e.appleProfileName),e.appStoreConnectTeamId&&(f.APP_STORE_CONNECT_TEAM_ID=e.appStoreConnectTeamId),e.androidKeystoreFile&&(f.ANDROID_KEYSTORE_FILE=e.androidKeystoreFile),e.keystoreKeyAlias&&(f.KEYSTORE_KEY_ALIAS=e.keystoreKeyAlias);let d=!!e.keystoreKeyPassword,p=!!e.keystoreStorePassword;d&&!p?(f.KEYSTORE_KEY_PASSWORD=e.keystoreKeyPassword,f.KEYSTORE_STORE_PASSWORD=e.keystoreKeyPassword):!d&&p?(f.KEYSTORE_KEY_PASSWORD=e.keystoreStorePassword,f.KEYSTORE_STORE_PASSWORD=e.keystoreStorePassword):d&&p&&(f.KEYSTORE_KEY_PASSWORD=e.keystoreKeyPassword,f.KEYSTORE_STORE_PASSWORD=e.keystoreStorePassword),e.playConfigJson&&(f.PLAY_CONFIG_JSON=e.playConfigJson);let h=await wO(t,e.platform,Object.keys(f).length>0?f:void 0),m={app_id:t,platform:e.platform};if(!h)throw r||(l.error("\u274C No credentials found for this app and platform"),l.error(""),l.error("You must provide credentials via:"),l.error(" 1. CLI arguments (--apple-key-id, --p12-password, etc.)"),l.error(" 2. Environment variables (APPLE_KEY_ID, P12_PASSWORD, etc.)"),l.error(" 3. Saved credentials file:"),l.error(` npx @capgo/cli build credentials save --appId ${t} --platform ${e.platform}`),l.error(""),l.error("Documentation:"),l.error(" https://capgo.app/docs/cli/cloud-build/credentials/")),new Error("No credentials found. Please provide credentials before building.");let y=[];if(e.platform==="ios"?(h.BUILD_CERTIFICATE_BASE64||y.push("BUILD_CERTIFICATE_BASE64 (or --build-certificate-base64)"),!h.P12_PASSWORD&&!r&&(l.warn("\u26A0\uFE0F P12_PASSWORD not provided - assuming certificate has no password"),l.warn(" If your certificate requires a password, provide it with --p12-password")),h.BUILD_PROVISION_PROFILE_BASE64||y.push("BUILD_PROVISION_PROFILE_BASE64 (or --build-provision-profile-base64)"),h.APPLE_KEY_ID||y.push("APPLE_KEY_ID (or --apple-key-id)"),h.APPLE_ISSUER_ID||y.push("APPLE_ISSUER_ID (or --apple-issuer-id)"),h.APPLE_KEY_CONTENT||y.push("APPLE_KEY_CONTENT (or --apple-key-content)"),h.APP_STORE_CONNECT_TEAM_ID||y.push("APP_STORE_CONNECT_TEAM_ID (or --apple-team-id)")):e.platform==="android"&&(h.ANDROID_KEYSTORE_FILE||y.push("ANDROID_KEYSTORE_FILE (or --android-keystore-file)"),h.KEYSTORE_KEY_ALIAS||y.push("KEYSTORE_KEY_ALIAS (or --keystore-key-alias)"),!h.KEYSTORE_KEY_PASSWORD&&!h.KEYSTORE_STORE_PASSWORD&&y.push("KEYSTORE_KEY_PASSWORD or KEYSTORE_STORE_PASSWORD (at least one password required)"),!h.PLAY_CONFIG_JSON&&!r&&l.warn("\u26A0\uFE0F PLAY_CONFIG_JSON not provided - build will succeed but cannot auto-upload to Play Store")),y.length>0){if(!r){l.error(`\u274C Missing required credentials for ${e.platform}:`),l.error("");for(let _ of y)l.error(` \u2022 ${_}`);l.error(""),l.error("Provide credentials via:"),l.error(' 1. CLI arguments: npx @capgo/cli build request --platform ios --apple-id "..." --p12-password "..."'),l.error(' 2. Environment variables: export APPLE_ID="..." P12_PASSWORD="..."'),l.error(" 3. Saved credentials: npx @capgo/cli build credentials save --platform ios ..."),l.error(""),l.error("Documentation:"),l.error(` https://capgo.app/docs/cli/cloud-build/${e.platform}/`)}throw new Error(`Missing required credentials for ${e.platform}: ${y.join(", ")}`)}if(m.credentials=h,r||l.info("\u2713 Using credentials (merged from CLI args, env vars, and saved file)"),o){let _=Object.keys(h).filter(S=>h[S]);l.info(`Credentials provided: ${_.join(", ")}`)}r||l.info("Requesting build from Capgo...");let b=await fetch(`${s}/build/request`,{method:"POST",headers:{"Content-Type":"application/json",authorization:e.apikey},body:JSON.stringify(m)});if(!b.ok){let _=await b.text();throw new Error(`Failed to request build: ${b.status} - ${_}`)}let v=await b.json();r||(l.success(`Build job created: ${v.job_id}`),l.info(`Status: ${v.status}`)),o&&(l.info(`Upload URL: ${v.upload_url}`),l.info(`Upload expires: ${v.upload_expires_at}`)),await me(e.apikey,{channel:"native-builder",event:"Build requested",icon:"\u{1F3D7}\uFE0F",user_id:c,tags:{"app-id":t,platform:e.platform},notify:!1}).catch();let E=(0,Sr.join)((0,xO.tmpdir)(),`capgo-build-${Date.now()}`);await(0,_r.mkdir)(E,{recursive:!0});let g=(0,Sr.join)(E,`${(0,Sr.basename)(a)}.zip`);try{r||l.info(`Zipping ${e.platform} project from ${a}...`),await g5(a,g,e.platform);let S=((await(0,_r.stat)(g)).size/1024/1024).toFixed(2);r||l.success(`Created zip: ${g} (${S} MB)`),r||l.info("Uploading to builder..."),o&&(l.info(`Upload endpoint: ${v.upload_url}`),l.info(`File size: ${S} MB`),l.info(`Job ID: ${v.job_id}`));let P=(0,Kr.readFileSync)(g),F=Ee();r||F.start("Uploading bundle"),await new Promise((j,Z)=>{let k=new of.Upload(P,{endpoint:v.upload_url,chunkSize:5242880,metadata:{filename:(0,Sr.basename)(g),filetype:"application/zip"},headers:{authorization:e.apikey},onBeforeRequest(D){if(o){l.info(`[TUS] ${D.getMethod()} ${D.getURL()}`);let w=D.getHeader("authorization");l.info(`[TUS] Authorization header present: ${!!w}`)}},onAfterResponse(D,w){if(o){l.info(`[TUS] Response status: ${w.getStatus()}`);let C=w.getHeader("upload-offset"),O=w.getHeader("tus-resumable");l.info(`[TUS] Upload-Offset: ${C}, Tus-Resumable: ${O}`)}},onError(D){if(r||(F.stop("Upload failed"),l.error(`Upload error: ${D.message}`)),D instanceof of.DetailedError){let w=D.originalResponse?.getBody(),C=D.originalResponse?.getStatus(),O=D.originalRequest?.getURL();o&&(l.error(`[TUS] Request URL: ${O}`),l.error(`[TUS] Response status: ${C}`),l.error(`[TUS] Response body: ${w}`));let R="Unknown error";try{let $=JSON.parse(w||'{"error": "unknown error"}');R=$.status||$.error||$.message||"unknown error"}catch{R=w||D.message}Z(new Error(`TUS upload failed: ${R}`))}else Z(new Error(`TUS upload failed: ${D.message||D.toString()}`))},onProgress(D,w){let C=(D/w*100).toFixed(2);r||F.message(`Uploading ${C}%`)},onSuccess(){r||F.stop("Upload complete!"),o&&l.success("TUS upload completed successfully"),j()}});o&&l.info("[TUS] Starting upload..."),k.start()}),r||l.info("Starting build job...");let B=await fetch(`${s}/build/start/${v.job_id}`,{method:"POST",headers:{"Content-Type":"application/json",authorization:e.apikey},body:JSON.stringify({app_id:t})});if(!B.ok){let j=await B.text();throw new Error(`Failed to start build: ${B.status} - ${j}`)}let T=await B.json();r||(l.success("Build started!"),l.info("Streaming build logs..."));let L,A=await p5(s,v.job_id,t,e.apikey,r,o);A?L=A:L=await h5(s,v.job_id,t,e.platform,e.apikey,r),r||(L==="succeeded"?l.success("Build completed successfully!"):L==="failed"?l.error("Build failed"):l.warn(`Build finished with status: ${L}`));let q=((Date.now()-n)/1e3).toFixed(2);return await me(e.apikey,{channel:"native-builder",event:L==="succeeded"?"Build succeeded":"Build failed",icon:L==="succeeded"?"\u2705":"\u274C",user_id:c,tags:{"app-id":t,platform:e.platform,status:L||"unknown",time:q},notify:!1}).catch(),{success:L==="succeeded",jobId:v.job_id,uploadUrl:v.upload_url,status:L||T.status||v.status}}finally{await(0,_r.rm)(E,{recursive:!0,force:!0})}}catch(i){let a=i instanceof Error?i.message:String(i);return r||l.error(a),{success:!1,error:a}}}async function OO(t,e){(await y5(t,e,!1)).success||(0,nf.exit)(1)}async function FO(t,e,r,n={}){let{silent:o=!1,autoUnlink:i=!1}=n,{data:a,error:s}=await t.from("channels").select().eq("app_id",e).eq("version",r.id);if(s)throw o||l.error(`Cannot check Version ${e}@${r.name}: ${M(s)}`),new Error(`Cannot check version ${e}@${r.name}: ${M(s)}`);if(!a?.length)return;if(o)throw new Error(`Version ${e}@${r.name} is used in ${a.length} channel(s)`);ee(`\u274C Version ${e}@${r.name} is used in ${a.length} channel${a.length>1?"s":""}`);let u=i;if(i||(u=await ue({message:"unlink it?"})===!0),!u)throw l.error("Unlink it first"),new Error(`Version ${e}@${r.name} is still linked to channel(s)`);for(let c of a){let f=Ee();f.start(`Unlinking channel ${c.name}`);let d=await Wg(t,e,{silent:o});if(!d)throw f.stop(`Cannot find unknown version for ${e}`),new Error(`Cannot find unknown version for ${e}`);let{error:p}=await t.from("channels").update({version:d.id}).eq("id",c.id);if(p)throw f.stop(`Cannot update channel ${c.name} ${M(p)}`),new Error(`Cannot update channel ${c.name}: ${M(p)}`);f.stop(`\u2705 Channel ${c.name} unlinked`)}K(`Version unlinked from ${a.length} channel${a.length>1?"s":""}`)}async function Wg(t,e,r={}){let{silent:n=!1}=r,o=[3e3,7e3],i;for(let a=0;a<=2;a++){let{data:s,error:u}=await t.from("app_versions").select("id").eq("app_id",e).eq("name","unknown").single();if(!u)return s;i=u,a<2&&await new Promise(c=>setTimeout(c,o[a]))}throw n||l.error(`Cannot call findUnknownVersion as it returned an error.
|
|
188
188
|
${M(i)}`),new Error(`Cannot retrieve unknown version for app ${e}: ${M(i)}`)}function kO(t,e){return t.from("channels").insert(e).select().single()}function PO(t,e,r,n){return t.from("channels").delete().eq("name",e).eq("app_id",r).single()}function $O(t,e,r){return t.from("channels").select().eq("app_id",e).eq("name",r).single()}function IO(t,e,r){return t.from("channel_devices").delete().eq("app_id",e).eq("channel_id",r)}function TO(t,e,r){return t.from("channels").select(`
|
|
189
189
|
id,
|
|
190
190
|
version (id, name)
|
|
@@ -212,7 +212,7 @@ ${M(i)}`),new Error(`Cannot retrieve unknown version for app ${e}: ${M(i)}`)}fun
|
|
|
212
212
|
`)+`
|
|
213
213
|
`,n.join(";").toLowerCase(),o].join(`
|
|
214
214
|
`)}async function n1(t,e,r){let n=await pf(t),o=Qg(r,e);return[Vs,Lo(e),o,n].join(`
|
|
215
|
-
`)}async function ty(t,e,r){let n=Zg(t),o=await Uo("AWS4"+r,n),i=await Uo(o,e),a=await Uo(i,"s3");return await Uo(a,"aws4_request")}function ry(t,e,r){return`${t}/${Qg(e,r)}`}async function Uo(t,e){let r=new TextEncoder,n=await crypto.subtle.importKey("raw",t instanceof Uint8Array?t:r.encode(t),{name:"HMAC",hash:{name:"SHA-256"}},!1,["sign","verify"]),o=await crypto.subtle.sign("HMAC",n,e instanceof Uint8Array?e:r.encode(e));return new Uint8Array(o)}async function o1(t){if(!t.accessKey)throw new zn;if(!t.secretKey)throw new ma;if(t.expirySeconds<1||t.expirySeconds>604800)throw new qs;let e=new Date(t.date);e.setSeconds(e.getSeconds()+t.expirySeconds);let r=ry(t.accessKey,t.region,t.date),n=Lo(t.date),o={"X-Amz-Algorithm":Vs,"X-Amz-Credential":r,"X-Amz-Date":n,key:t.objectKey,...t.fields},i=[{bucket:t.bucket},{key:t.objectKey},{"X-Amz-Algorithm":Vs},{"X-Amz-Credential":r},{"X-Amz-Date":n}];t.conditions&&i.push(...t.conditions);for(let[h,m]of Object.entries(t.fields||{}))["key","X-Amz-Algorithm","X-Amz-Credential","X-Amz-Date"].includes(h)||i.push({[h]:m});let a={expiration:e.toISOString(),conditions:i},s=new TextEncoder().encode(JSON.stringify(a)),u=btoa(String.fromCharCode(...s));o.policy=u;let c=u,f=await ty(t.date,t.region,t.secretKey),d=Hs(await Uo(f,c)).toLowerCase();return o["X-Amz-Signature"]=d,{url:`${t.protocol}//${t.host}/${t.bucket}`,fields:o}}var $5=["Content-Type","Cache-Control","Content-Disposition","Content-Encoding","Content-Language","Expires","x-amz-checksum-sha256","x-amz-grant-full-control","x-amz-grant-read","x-amz-grant-read-acp","x-amz-grant-write-acp","x-amz-server-side-encryption","x-amz-storage-class","x-amz-website-redirect-location","x-amz-server-side-encryption-customer-algorithm","x-amz-server-side-encryption-customer-key","x-amz-server-side-encryption-customer-key-MD5","x-amz-server-side-encryption-aws-kms-key-id","x-amz-server-side-encryption-context","x-amz-server-side-encryption-bucket-key-enabled","x-amz-request-payer","x-amz-tagging","x-amz-object-lock-mode","x-amz-object-lock-retain-until-date","x-amz-object-lock-legal-hold","x-amz-expected-bucket-owner"],I5=5*1024*1024,T5=5*1024*1024*1024,ny=5*1024*1024*1024*1024,zs=class{host;port;protocol;accessKey;#e;sessionToken;defaultBucket;region;userAgent="s3-lite-client";pathStyle;pathPrefix;constructor({endPoint:e,useSSL:r,port:n,pathPrefix:o,...i}){if(/^https?:\/\//i.test(e)){if(r!==void 0||n!==void 0||o!==void 0)throw new xt("useSSL/port/pathPrefix cannot be specified if endPoint is a URL.");try{let s=new URL(e);e=s.hostname,r=s.protocol==="https:",n=s.port?parseInt(s.port,10):r?443:80,s.pathname&&s.pathname!=="/"&&(o=s.pathname.endsWith("/")?s.pathname.slice(0,-1):s.pathname)}catch{throw new Ms(`Invalid endPoint URL: ${e}`)}}if(typeof e!="string"||e.length===0)throw new Ms(`Invalid endPoint: ${e}`);if(r===void 0&&(r=!0),n!==void 0&&!XO(n))throw new xt(`Invalid port: ${n}`);if(i.accessKey&&!i.secretKey)throw new xt("If specifying access key, secret key must also be provided.");if(i.accessKey&&i.accessKey.startsWith("ASIA")&&!i.sessionToken)throw new xt("If specifying temporary access key, session token must also be provided.");let a=r?443:80;if(this.port=n??a,this.host=e.toLowerCase()+(this.port!==a?`:${this.port}`:""),this.protocol=r?"https:":"http:",this.accessKey=i.accessKey,this.#e=i.secretKey??"",this.sessionToken=i.sessionToken,this.pathStyle=i.pathStyle??!0,this.pathPrefix=o??"",this.defaultBucket=i.bucket,this.region=i.region,this.pathPrefix){if(!this.pathStyle)throw new xt("pathPrefix is incompatible with pathStyle=false");if(!this.pathPrefix.startsWith("/"))throw new xt("pathPrefix should start with /");if(this.pathPrefix.endsWith("/"))throw new xt("pathPrefix should not end with /")}}getBucketName(e){let r=e?.bucketName??this.defaultBucket;if(r===void 0||!ZO(r))throw new df(r??"");return r}buildRequestOptions(e){let r=this.getBucketName(e),n=this.pathStyle?this.host:`${r}.${this.host}`,o=e.headers??new Headers;o.set("host",n);let i=typeof e.query=="object"?new URLSearchParams(e.query).toString().replace("+","%20"):e.query,a=this.pathStyle?`${this.pathPrefix}/${r}/${e.objectName}`:`/${e.objectName}`,s=i?`?${i}`:"",u=a+s,c=a.split("/").map(f=>encodeURIComponent(f)).join("/")+s;return{headers:o,host:n,path:u,encodedPath:c}}async makeRequest({method:e,payload:r,...n}){let o=new Date,{headers:i,host:a,path:s,encodedPath:u}=this.buildRequestOptions(n),c=n.statusCode??200;if(e==="POST"||e==="PUT"||e==="DELETE")r===void 0?r=new Uint8Array:typeof r=="string"&&(r=new TextEncoder().encode(r)),i.set("Content-Length",String(r.length));else if(r)throw new Error(`Unexpected payload on ${e} request.`);let f=await pf(r??new Uint8Array);i.set("x-amz-date",Lo(o)),i.set("x-amz-content-sha256",f),this.accessKey&&(this.sessionToken&&i.set("x-amz-security-token",this.sessionToken),i.set("authorization",await QO({headers:i,method:e,path:s,accessKey:this.accessKey,secretKey:this.#e,region:this.region,date:o})));let d=`${this.protocol}//${a}${u}`,p=await fetch(d,{method:e,headers:i,body:r});if(p.status!==c)throw p.status>=400?await JO(p):p.status===301?new bn(p.status,"UnexpectedRedirect",'The server unexpectedly returned a redirect response. With AWS S3, this usually means you need to use a region-specific endpoint like "s3.us-west-2.amazonaws.com" instead of "s3.amazonaws.com"'):new bn(p.status,"UnexpectedStatusCode",`Unexpected response code from the server (expected ${c}, got ${p.status} ${p.statusText}).`);return n.returnBody||await p.body?.getReader().read(),p}async deleteObject(e,r={}){let n=this.getBucketName(r);if(!Kn(e))throw new Wr(e);let o=r.versionId?{versionId:r.versionId}:{},i=new Headers;r.governanceBypass&&i.set("X-Amz-Bypass-Governance-Retention","true"),await this.makeRequest({method:"DELETE",bucketName:n,objectName:e,headers:i,query:o,statusCode:204})}async exists(e,r){try{return await this.statObject(e,r),!0}catch(n){if(n instanceof bn&&n.statusCode===404)return!1;throw n}}getObject(e,r){return this.getPartialObject(e,{...r,offset:0,length:0})}async getPartialObject(e,{offset:r,length:n,...o}){let i=this.getBucketName(o);if(!Kn(e))throw new Wr(e);let a=new Headers(Object.entries(o.metadata??{})),s=200;if(r||n){let c="";r?c=`bytes=${+r}-`:(c="bytes=0-",r=0),n&&(c+=`${+n+r-1}`),a.set("Range",c),s=206}let u={...o.responseParams,...o.versionId?{versionId:o.versionId}:{}};return await this.makeRequest({method:"GET",bucketName:i,objectName:e,headers:a,query:u,statusCode:s,returnBody:!0})}getPresignedUrl(e,r,n={}){if(!this.accessKey)throw new zn;if(!Kn(r))throw new Wr(r);let{headers:o,path:i}=this.buildRequestOptions({objectName:r,bucketName:n.bucketName,query:n.parameters}),a=n.requestDate??new Date,s=n.expirySeconds??1440*60*7;return e1({protocol:this.protocol,headers:o,method:e,path:i,accessKey:this.accessKey,secretKey:this.#e,sessionToken:this.sessionToken,region:this.region,date:a,expirySeconds:s})}presignedGetObject(e,r={}){let{versionId:n,responseParams:o,...i}=r,a={...o,...n?{versionId:n}:{}};return this.getPresignedUrl("GET",e,{parameters:a,...i})}async*listObjects(e={}){for await(let r of this.listObjectsGrouped({...e,delimiter:""}))if(r.type==="Object")yield r;else throw new Error(`Unexpected result from listObjectsGrouped(): ${r}`)}async*listObjectsGrouped(e){let r=this.getBucketName(e),n="",o=e.pageSize??1e3;if(o<1||o>1e3)throw new xt("pageSize must be between 1 and 1,000.");let i=0;for(;;){let a=e.maxResults?Math.min(o,e.maxResults-i):o;if(a===0)return;let u=await(await this.makeRequest({method:"GET",bucketName:r,objectName:"",query:{"list-type":"2",prefix:e.prefix??"",delimiter:e.delimiter,"max-keys":String(a),...n?{"continuation-token":n}:{}},returnBody:!0})).text(),c=Vn(u).root;if(!c||c.name!=="ListBucketResult")throw new Error(`Unexpected response: ${u}`);let f=c.children.filter(h=>h.name==="CommonPrefixes").flatMap(h=>h.children),d=[];for(let h of f)d.push({type:"CommonPrefix",prefix:h.content??""}),i++;for(let h of c.children.filter(m=>m.name==="Contents"))d.push({type:"Object",key:h.children.find(m=>m.name==="Key")?.content??"",etag:No(h.children.find(m=>m.name==="ETag")?.content??""),size:parseInt(h.children.find(m=>m.name==="Size")?.content??"",10),lastModified:new Date(h.children.find(m=>m.name==="LastModified")?.content??"invalid")}),i++;d.sort((h,m)=>{let y=h.type==="Object"?h.key:h.prefix,b=m.type==="Object"?m.key:m.prefix;return y>b?1:y<b?-1:0});for(let h of d)yield h;if(c.children.find(h=>h.name==="IsTruncated")?.content==="true"){let h=c.children.find(m=>m.name==="NextContinuationToken")?.content;if(!h)throw new Error("Unexpectedly missing continuation token, but server said there are more results.");n=h}else return}}async putObject(e,r,n){let o=this.getBucketName(n);if(!Kn(e))throw new Wr(e);let i,a;if(typeof r=="string"){let f=new TextEncoder().encode(r);typeof ReadableStream.from<"u"?a=ReadableStream.from([f]):a=new ReadableStream({start(d){d.enqueue(f),d.close()}}),i=f.length}else if(r instanceof Uint8Array)typeof ReadableStream.from<"u"?a=ReadableStream.from([r]):a=new ReadableStream({start(f){f.enqueue(r),f.close()}}),i=r.byteLength;else if(r instanceof ReadableStream)a=r;else throw new xt("Invalid stream/data type provided.");if(n?.size!==void 0){if(i!==void 0&&n?.size!==i)throw new xt(`size was specified (${n.size}) but doesn't match auto-detected size (${i}).`);if(typeof n.size!="number"||n.size<0||isNaN(n.size))throw new xt(`invalid size specified: ${n.size}`);i=n.size}let s=n?.partSize??this.calculatePartSize(i);if(s<I5)throw new xt("Part size should be greater than 5MB");if(s>T5)throw new xt("Part size should be less than 6MB");let u=new ff(s),c=new hf({client:this,bucketName:o,objectName:e,partSize:s,metadata:n?.metadata??{}});return await a.pipeThrough(u).pipeTo(c),c.getResult()}calculatePartSize(e){if(e===void 0&&(e=ny),e>ny)throw new TypeError(`size should not be more than ${ny}`);let r=64*1024*1024;for(;;){if(r*1e4>e)return r;r+=16*1024*1024}}async statObject(e,r){let n=this.getBucketName(r);if(!Kn(e))throw new Wr(e);let o={};r?.versionId&&(o.versionId=r.versionId);let i=await this.makeRequest({method:"HEAD",bucketName:n,objectName:e,query:o,headers:new Headers(r?.headers)}),a={};for(let s of $5)i.headers.has(s)&&(a[s]=i.headers.get(s));return i.headers.forEach((s,u)=>{u.startsWith("x-amz-meta-")&&(a[u]=i.headers.get(u))}),{type:"Object",key:e,size:parseInt(i.headers.get("content-length")??"",10),metadata:a,lastModified:new Date(i.headers.get("Last-Modified")??"error: missing last modified"),versionId:i.headers.get("x-amz-version-id")||null,etag:No(i.headers.get("ETag")??"")}}async copyObject(e,r,n){let o=this.getBucketName(n),i=e.sourceBucketName??o;if(!Kn(r))throw new Wr(r);let a=`${i}/${e.sourceKey}`;e.sourceVersionId&&(a+=`?versionId=${e.sourceVersionId}`);let s=new Headers(n?.metadata);n?.metadata!==void 0&&s.set("x-amz-metadata-directive","REPLACE"),s.set("x-amz-copy-source",a);let u=await this.makeRequest({method:"PUT",bucketName:o,objectName:r,headers:s,returnBody:!0}),c=await u.text(),f=Vn(c).root;if(!f||f.name!=="CopyObjectResult")throw new Error(`Unexpected response: ${c}`);let d=f.children.find(h=>h.name==="ETag")?.content??"",p=f.children.find(h=>h.name==="LastModified")?.content;if(p===void 0)throw new Error("Unable to find <LastModified>...</LastModified> from the server.");return{copySourceVersionId:u.headers.get("x-amz-copy-source-version-id")||null,etag:No(d),lastModified:new Date(p),versionId:u.headers.get("x-amz-version-id")||null}}async bucketExists(e){try{return await this.listObjects({bucketName:e}).next(),!0}catch(r){if(r instanceof bn&&r.statusCode===404)return!1;throw r}}async makeBucket(e){await this.makeRequest({method:"PUT",bucketName:this.getBucketName({bucketName:e}),objectName:"",statusCode:200})}async removeBucket(e){await this.makeRequest({method:"DELETE",bucketName:this.getBucketName({bucketName:e}),objectName:"",statusCode:204})}presignedPostObject(e,r={}){if(!Kn(e))throw new Wr(e);let n=this.getBucketName(r);if(!n)throw new Error("Bucket name is required for presignedPost, but none was provided either to this method nor to the client constructor");let o=r.requestDate||new Date,i=r.expirySeconds??3600;return o1({protocol:this.protocol,host:this.host,bucket:n,objectKey:e,accessKey:this.accessKey||"",secretKey:this.#e||"",region:this.region,date:o,expirySeconds:i,conditions:r.conditions,fields:r.fields})}};function i1(t){try{let e=ge(t);return Ht(xn(e,"patch"))}catch{let e=t.match(/^(\d+)\.(\d+)\.(\d+)/);if(e){let[,r,n,o]=e;return`${r}.${n}.${Number.parseInt(o)+1}`}return"1.0.1"}}async function a1(t,e){let r=i1(t),n=e?` for ${e}`:"",o=await gt({message:`How do you want to handle the version${n}?`,options:[{value:"auto",label:`Auto: Bump patch version (${t} \u2192 ${r})`},{value:"manual",label:"Manual: I'll provide the version number"}]});if(le(o))return null;if(o==="auto")return l.info(`\u{1F522} Auto-bumped version from ${t} to ${r}`),r;let i=await Mt({message:`Current version is ${t}. Enter new version:`,validate:a=>{if(!a)return"Version is required";if(!a.match(/^\d+\.\d+\.\d+/))return"Please enter a valid version (x.y.z)"}});return le(i)?null:i}function s1(t){let e=i1(t);try{let r=ge(t);return[e,Ht(xn(r,"minor")),`${t}-beta.1`,`${t}.1`]}catch{return[e,`${t}.1`,`${t}-beta.1`,`${t}-rc.1`]}}var Mo=require("node:fs"),mf=require("node:path");function R5(t,e){return(0,Mo.readFileSync)(t,"utf8").includes(e)}function Ks(t,e){let r=(0,Mo.readdirSync)(t);for(let n of r){let o=(0,mf.join)(t,n),i=(0,Mo.statSync)(o);if(i.isDirectory()){if(Ks(o,e))return!0}else if(i.isFile()&&(0,mf.extname)(o)===".js"&&R5(o,e))return!0}return!1}function gf(t){return(0,Mo.readdirSync)(t).indexOf("index.html")>-1}var gF=require("node:buffer"),yF=require("node:crypto"),Da=require("node:fs"),DF=require("node:os"),Vo=require("node:path"),bF=require("node:process"),_f=require("node:stream/consumers"),wF=require("node:zlib");var vF=pe(mF()),CF=pe(nl());async function J9(t,e){try{return(await fetch(`${t.hostFilesApi}/files/read/attachments/${encodeURIComponent(e)}`,{method:"HEAD"})).ok}catch{return!1}}var X9=8192;async function Z9(t){let e=bt((0,bF.cwd)()),r=await zr("@capgo/capacitor-updater",e,t.packageJson),n;try{n=r?ge(r):void 0}catch{n=void 0}if(!r||!n)return{version:null,supportsBrotliV2:!1};let o=!Hn(n,void 0,void 0,Is);return{version:`${n.major}.${n.minor}.${n.patch}`,supportsBrotliV2:o}}function Q9(t,e){if(!e)return!1;let r=e.split(",").map(n=>n.trim()).filter(n=>!!n);return r.length===0?!1:vF.isMatch(t,r)}async function e7(t,e,r){let o=(0,Da.statSync)(t).size,i=await(0,_f.buffer)((0,Da.createReadStream)(t));if(o===0)return{buffer:i,useBrotli:!1};if(Q9(e,r.noBrotliPatterns))return{buffer:i,useBrotli:!1};if(o<X9)return{buffer:i,useBrotli:!1};try{let a=await(0,_f.buffer)((0,Da.createReadStream)(t).pipe((0,wF.createBrotliCompress)({})));return a.length>=o-10?{buffer:i,useBrotli:!1}:{buffer:a,useBrotli:!0}}catch(a){return l.warn(`Brotli compression failed for ${t}: ${a}, using original file`),{buffer:i,useBrotli:!1}}}async function EF(t,e,r,n,o,i,a=!1){let s=Ee();s.start(o!=="v2"?"Generating the update manifest":`Generating the update manifest with ${a?"V3":"V2"} encryption`);let u=await QA(t);if(o==="v2")for(let c of u)c.hash=a?lf(c.hash,i):ha(c.hash,i);return s.stop("Manifest generated successfully"),await me(e,{channel:"partial-update",event:"Generate manifest",icon:"\u{1F4C2}",user_id:r,tags:{"app-id":n},notify:!1}),u}function t7(t){return(0,DF.platform)()!=="win32"?t:Vo.win32.normalize(t).split(Vo.win32.sep).join(Vo.posix.sep)}function r7(t){let e=t.split("/").map(r=>encodeURIComponent(r)).join("/");return t.includes(" ")&&l.warn(`File "${t}" contains spaces in its name.`),e}async function _F(t,e,r,n,o,i,a){let s=Ee();s.start("Preparing partial update with TUS protocol");let u=performance.now(),c=await yr(),f=!!(a.partial||a.delta||a.partialOnly||a.deltaOnly),{version:d,supportsBrotliV2:p}=await Z9(a);if(p)a.disableBrotli?l.info("Brotli compression disabled by user request"):a.noBrotliPatterns&&l.info(`Files matching patterns (${a.noBrotliPatterns}) will be excluded from brotli compression`);else throw new Error(`Your project is using an older version of @capgo/capacitor-updater (${d||"unknown"}). To use Delta updates, please upgrade to version ${XA} (v5), ${ZA} (v6) or ${Is} (v7) or higher.`);let h=e.filter(v=>v.file.includes(" "));if(h.length>0)throw new Error(`Files with spaces in their names (${h.map(v=>v.file).join(", ")}). Please rename the files.`);let m=0,y=e.length,b=0;try{s.message(`Uploading ${y} files using TUS protocol`);let v=async P=>{let F=(0,Vo.join)(r,P.file),B=t7(P.file),T,L=!1;if(a.disableBrotli)T=await(0,_f.buffer)((0,Da.createReadStream)(F)),L=!1;else{let D=await e7(F,B,a);T=D.buffer,L=D.useBrotli}let A=T;i&&(A=pa(T,i.sessionKey,i.ivSessionKey));let q=B;L&&(q=`${B}.br`,b++);let j=r7(q),Z=(0,yF.createHash)("sha256").update(P.hash).digest("hex"),k;if(i){let D=gF.Buffer.from(i.ivSessionKey).toString("hex");k=`orgs/${o}/apps/${n}/delta/${D}/${Z}_${j}`}else k=`orgs/${o}/apps/${n}/delta/${Z}_${j}`;return!i&&await J9(c,k)?(m++,Promise.resolve({file_name:j,s3_path:k,file_hash:P.hash})):new Promise((D,w)=>{s.message(`Prepare upload partial file: ${B}`),new CF.Upload(A,{endpoint:`${c.hostFilesApi}/files/upload/attachments/`,chunkSize:a.tusChunkSize,retryDelays:[0,1e3,3e3,5e3,1e4],removeFingerprintOnSuccess:!0,metadata:{filename:k},headers:{Authorization:t},onError:O=>{let R=O.toString(),$;try{let I=R.match(/response text: (\{.*?\})/);I&&I[1]&&($=JSON.parse(I[1]).moreInfo?.requestId)}catch{}let H=$?` [requestId: ${$}]`:"";l.error(`Failed to upload ${B}: ${R}${H}`),w(O)},onProgress(){let O=(m/y*100).toFixed(2);s.message(`Uploading partial update: ${O}%`)},onSuccess(){m++,D({file_name:j,s3_path:k,file_hash:P.hash})}}).start()})},E=500,g=[];for(let P=0;P<e.length;P+=E){let F=e.slice(P,P+E),B=Math.floor(P/E)+1,T=Math.ceil(e.length/E);T>1&&s.message(`Processing batch ${B}/${T} (${F.length} files)`);let L=await Promise.all(F.map(A=>v(A)));g.push(...L)}let S=((performance.now()-u)/1e3).toFixed(2);return s.stop(`Partial update uploaded successfully \u{1F4AA} in (${S} seconds)`),b>0&&l.info(`${b} of ${y} files were compressed with brotli and use .br extension`),await me(t,{channel:"app",event:`App Partial TUS done${b>0?" with .br extension":""}`,icon:"\u23EB",user_id:o,tags:{"app-id":n},notify:!1}),await me(t,{channel:"performance",event:"Partial upload performance",icon:"\u{1F684}",user_id:o,tags:{"app-id":n,time:S},notify:!1}),g}catch(v){let g=((performance.now()-u)/1e3).toFixed(2);if(s.stop(`Failed to upload Partial bundle (after ${g} seconds)`),f)throw l.error(`Error uploading partial update: ${v}`),l.error("Delta/partial upload was explicitly requested but failed. Upload aborted."),v;return l.info(`Error uploading partial update: ${v}, This is not a critical error, the bundle has been uploaded without the partial files`),null}}function De(t){throw l.error(t),new Error(t)}async function n7(t,e){let r=Ir("",e.packageJson),n=e.bundle||t?.plugins?.CapacitorUpdater?.version||r||`0.0.1-beta.${(0,SF.randomUUID)().split("-")[0]}`;return oa.test(n)||De(`Your bundle name ${n}, is not valid it should follow semver convention : https://semver.org/`),n}function o7(t){let e=t.apikey||ne();return e||De("Missing API key, you need to provide an API key to upload your bundle"),e}function i7(t,e,r){let n=fe(t,r),o=e.path||r?.webDir;return n||De("Missing argument, you need to provide a appid or be in a capacitor project"),o||De("Missing argument, you need to provide a path (--path), or be in a capacitor project"),(0,zo.existsSync)(o)||De(`Path ${o} does not exist, build your app first, or provide a valid path`),{appid:n,path:o}}function a7(t,e){let r=t.codeCheck;(typeof r>"u"||r)&&(Ks(e,"notifyAppReady")||De(`notifyAppReady() is missing in the build folder of your app. see: https://capgo.app/docs/plugin/api/#notifyappready
|
|
215
|
+
`)}async function ty(t,e,r){let n=Zg(t),o=await Uo("AWS4"+r,n),i=await Uo(o,e),a=await Uo(i,"s3");return await Uo(a,"aws4_request")}function ry(t,e,r){return`${t}/${Qg(e,r)}`}async function Uo(t,e){let r=new TextEncoder,n=await crypto.subtle.importKey("raw",t instanceof Uint8Array?t:r.encode(t),{name:"HMAC",hash:{name:"SHA-256"}},!1,["sign","verify"]),o=await crypto.subtle.sign("HMAC",n,e instanceof Uint8Array?e:r.encode(e));return new Uint8Array(o)}async function o1(t){if(!t.accessKey)throw new zn;if(!t.secretKey)throw new ma;if(t.expirySeconds<1||t.expirySeconds>604800)throw new qs;let e=new Date(t.date);e.setSeconds(e.getSeconds()+t.expirySeconds);let r=ry(t.accessKey,t.region,t.date),n=Lo(t.date),o={"X-Amz-Algorithm":Vs,"X-Amz-Credential":r,"X-Amz-Date":n,key:t.objectKey,...t.fields},i=[{bucket:t.bucket},{key:t.objectKey},{"X-Amz-Algorithm":Vs},{"X-Amz-Credential":r},{"X-Amz-Date":n}];t.conditions&&i.push(...t.conditions);for(let[h,m]of Object.entries(t.fields||{}))["key","X-Amz-Algorithm","X-Amz-Credential","X-Amz-Date"].includes(h)||i.push({[h]:m});let a={expiration:e.toISOString(),conditions:i},s=new TextEncoder().encode(JSON.stringify(a)),u=btoa(String.fromCharCode(...s));o.policy=u;let c=u,f=await ty(t.date,t.region,t.secretKey),d=Hs(await Uo(f,c)).toLowerCase();return o["X-Amz-Signature"]=d,{url:`${t.protocol}//${t.host}/${t.bucket}`,fields:o}}var $5=["Content-Type","Cache-Control","Content-Disposition","Content-Encoding","Content-Language","Expires","x-amz-checksum-sha256","x-amz-grant-full-control","x-amz-grant-read","x-amz-grant-read-acp","x-amz-grant-write-acp","x-amz-server-side-encryption","x-amz-storage-class","x-amz-website-redirect-location","x-amz-server-side-encryption-customer-algorithm","x-amz-server-side-encryption-customer-key","x-amz-server-side-encryption-customer-key-MD5","x-amz-server-side-encryption-aws-kms-key-id","x-amz-server-side-encryption-context","x-amz-server-side-encryption-bucket-key-enabled","x-amz-request-payer","x-amz-tagging","x-amz-object-lock-mode","x-amz-object-lock-retain-until-date","x-amz-object-lock-legal-hold","x-amz-expected-bucket-owner"],I5=5*1024*1024,T5=5*1024*1024*1024,ny=5*1024*1024*1024*1024,zs=class{host;port;protocol;accessKey;#e;sessionToken;defaultBucket;region;userAgent="s3-lite-client";pathStyle;pathPrefix;constructor({endPoint:e,useSSL:r,port:n,pathPrefix:o,...i}){if(/^https?:\/\//i.test(e)){if(r!==void 0||n!==void 0||o!==void 0)throw new xt("useSSL/port/pathPrefix cannot be specified if endPoint is a URL.");try{let s=new URL(e);e=s.hostname,r=s.protocol==="https:",n=s.port?parseInt(s.port,10):r?443:80,s.pathname&&s.pathname!=="/"&&(o=s.pathname.endsWith("/")?s.pathname.slice(0,-1):s.pathname)}catch{throw new Ms(`Invalid endPoint URL: ${e}`)}}if(typeof e!="string"||e.length===0)throw new Ms(`Invalid endPoint: ${e}`);if(r===void 0&&(r=!0),n!==void 0&&!XO(n))throw new xt(`Invalid port: ${n}`);if(i.accessKey&&!i.secretKey)throw new xt("If specifying access key, secret key must also be provided.");if(i.accessKey&&i.accessKey.startsWith("ASIA")&&!i.sessionToken)throw new xt("If specifying temporary access key, session token must also be provided.");let a=r?443:80;if(this.port=n??a,this.host=e.toLowerCase()+(this.port!==a?`:${this.port}`:""),this.protocol=r?"https:":"http:",this.accessKey=i.accessKey,this.#e=i.secretKey??"",this.sessionToken=i.sessionToken,this.pathStyle=i.pathStyle??!0,this.pathPrefix=o??"",this.defaultBucket=i.bucket,this.region=i.region,this.pathPrefix){if(!this.pathStyle)throw new xt("pathPrefix is incompatible with pathStyle=false");if(!this.pathPrefix.startsWith("/"))throw new xt("pathPrefix should start with /");if(this.pathPrefix.endsWith("/"))throw new xt("pathPrefix should not end with /")}}getBucketName(e){let r=e?.bucketName??this.defaultBucket;if(r===void 0||!ZO(r))throw new df(r??"");return r}buildRequestOptions(e){let r=this.getBucketName(e),n=this.pathStyle?this.host:`${r}.${this.host}`,o=e.headers??new Headers;o.set("host",n);let i=typeof e.query=="object"?new URLSearchParams(e.query).toString().replace("+","%20"):e.query,a=this.pathStyle?`${this.pathPrefix}/${r}/${e.objectName}`:`/${e.objectName}`,s=i?`?${i}`:"",u=a+s,c=a.split("/").map(f=>encodeURIComponent(f)).join("/")+s;return{headers:o,host:n,path:u,encodedPath:c}}async makeRequest({method:e,payload:r,...n}){let o=new Date,{headers:i,host:a,path:s,encodedPath:u}=this.buildRequestOptions(n),c=n.statusCode??200;if(e==="POST"||e==="PUT"||e==="DELETE")r===void 0?r=new Uint8Array:typeof r=="string"&&(r=new TextEncoder().encode(r)),i.set("Content-Length",String(r.length));else if(r)throw new Error(`Unexpected payload on ${e} request.`);let f=await pf(r??new Uint8Array);i.set("x-amz-date",Lo(o)),i.set("x-amz-content-sha256",f),this.accessKey&&(this.sessionToken&&i.set("x-amz-security-token",this.sessionToken),i.set("authorization",await QO({headers:i,method:e,path:s,accessKey:this.accessKey,secretKey:this.#e,region:this.region,date:o})));let d=`${this.protocol}//${a}${u}`,p=await fetch(d,{method:e,headers:i,body:r});if(p.status!==c)throw p.status>=400?await JO(p):p.status===301?new bn(p.status,"UnexpectedRedirect",'The server unexpectedly returned a redirect response. With AWS S3, this usually means you need to use a region-specific endpoint like "s3.us-west-2.amazonaws.com" instead of "s3.amazonaws.com"'):new bn(p.status,"UnexpectedStatusCode",`Unexpected response code from the server (expected ${c}, got ${p.status} ${p.statusText}).`);return n.returnBody||await p.body?.getReader().read(),p}async deleteObject(e,r={}){let n=this.getBucketName(r);if(!Kn(e))throw new Wr(e);let o=r.versionId?{versionId:r.versionId}:{},i=new Headers;r.governanceBypass&&i.set("X-Amz-Bypass-Governance-Retention","true"),await this.makeRequest({method:"DELETE",bucketName:n,objectName:e,headers:i,query:o,statusCode:204})}async exists(e,r){try{return await this.statObject(e,r),!0}catch(n){if(n instanceof bn&&n.statusCode===404)return!1;throw n}}getObject(e,r){return this.getPartialObject(e,{...r,offset:0,length:0})}async getPartialObject(e,{offset:r,length:n,...o}){let i=this.getBucketName(o);if(!Kn(e))throw new Wr(e);let a=new Headers(Object.entries(o.metadata??{})),s=200;if(r||n){let c="";r?c=`bytes=${+r}-`:(c="bytes=0-",r=0),n&&(c+=`${+n+r-1}`),a.set("Range",c),s=206}let u={...o.responseParams,...o.versionId?{versionId:o.versionId}:{}};return await this.makeRequest({method:"GET",bucketName:i,objectName:e,headers:a,query:u,statusCode:s,returnBody:!0})}getPresignedUrl(e,r,n={}){if(!this.accessKey)throw new zn;if(!Kn(r))throw new Wr(r);let{headers:o,path:i}=this.buildRequestOptions({objectName:r,bucketName:n.bucketName,query:n.parameters}),a=n.requestDate??new Date,s=n.expirySeconds??1440*60*7;return e1({protocol:this.protocol,headers:o,method:e,path:i,accessKey:this.accessKey,secretKey:this.#e,sessionToken:this.sessionToken,region:this.region,date:a,expirySeconds:s})}presignedGetObject(e,r={}){let{versionId:n,responseParams:o,...i}=r,a={...o,...n?{versionId:n}:{}};return this.getPresignedUrl("GET",e,{parameters:a,...i})}async*listObjects(e={}){for await(let r of this.listObjectsGrouped({...e,delimiter:""}))if(r.type==="Object")yield r;else throw new Error(`Unexpected result from listObjectsGrouped(): ${r}`)}async*listObjectsGrouped(e){let r=this.getBucketName(e),n="",o=e.pageSize??1e3;if(o<1||o>1e3)throw new xt("pageSize must be between 1 and 1,000.");let i=0;for(;;){let a=e.maxResults?Math.min(o,e.maxResults-i):o;if(a===0)return;let u=await(await this.makeRequest({method:"GET",bucketName:r,objectName:"",query:{"list-type":"2",prefix:e.prefix??"",delimiter:e.delimiter,"max-keys":String(a),...n?{"continuation-token":n}:{}},returnBody:!0})).text(),c=Vn(u).root;if(!c||c.name!=="ListBucketResult")throw new Error(`Unexpected response: ${u}`);let f=c.children.filter(h=>h.name==="CommonPrefixes").flatMap(h=>h.children),d=[];for(let h of f)d.push({type:"CommonPrefix",prefix:h.content??""}),i++;for(let h of c.children.filter(m=>m.name==="Contents"))d.push({type:"Object",key:h.children.find(m=>m.name==="Key")?.content??"",etag:No(h.children.find(m=>m.name==="ETag")?.content??""),size:parseInt(h.children.find(m=>m.name==="Size")?.content??"",10),lastModified:new Date(h.children.find(m=>m.name==="LastModified")?.content??"invalid")}),i++;d.sort((h,m)=>{let y=h.type==="Object"?h.key:h.prefix,b=m.type==="Object"?m.key:m.prefix;return y>b?1:y<b?-1:0});for(let h of d)yield h;if(c.children.find(h=>h.name==="IsTruncated")?.content==="true"){let h=c.children.find(m=>m.name==="NextContinuationToken")?.content;if(!h)throw new Error("Unexpectedly missing continuation token, but server said there are more results.");n=h}else return}}async putObject(e,r,n){let o=this.getBucketName(n);if(!Kn(e))throw new Wr(e);let i,a;if(typeof r=="string"){let f=new TextEncoder().encode(r);typeof ReadableStream.from<"u"?a=ReadableStream.from([f]):a=new ReadableStream({start(d){d.enqueue(f),d.close()}}),i=f.length}else if(r instanceof Uint8Array)typeof ReadableStream.from<"u"?a=ReadableStream.from([r]):a=new ReadableStream({start(f){f.enqueue(r),f.close()}}),i=r.byteLength;else if(r instanceof ReadableStream)a=r;else throw new xt("Invalid stream/data type provided.");if(n?.size!==void 0){if(i!==void 0&&n?.size!==i)throw new xt(`size was specified (${n.size}) but doesn't match auto-detected size (${i}).`);if(typeof n.size!="number"||n.size<0||isNaN(n.size))throw new xt(`invalid size specified: ${n.size}`);i=n.size}let s=n?.partSize??this.calculatePartSize(i);if(s<I5)throw new xt("Part size should be greater than 5MB");if(s>T5)throw new xt("Part size should be less than 6MB");let u=new ff(s),c=new hf({client:this,bucketName:o,objectName:e,partSize:s,metadata:n?.metadata??{}});return await a.pipeThrough(u).pipeTo(c),c.getResult()}calculatePartSize(e){if(e===void 0&&(e=ny),e>ny)throw new TypeError(`size should not be more than ${ny}`);let r=64*1024*1024;for(;;){if(r*1e4>e)return r;r+=16*1024*1024}}async statObject(e,r){let n=this.getBucketName(r);if(!Kn(e))throw new Wr(e);let o={};r?.versionId&&(o.versionId=r.versionId);let i=await this.makeRequest({method:"HEAD",bucketName:n,objectName:e,query:o,headers:new Headers(r?.headers)}),a={};for(let s of $5)i.headers.has(s)&&(a[s]=i.headers.get(s));return i.headers.forEach((s,u)=>{u.startsWith("x-amz-meta-")&&(a[u]=i.headers.get(u))}),{type:"Object",key:e,size:parseInt(i.headers.get("content-length")??"",10),metadata:a,lastModified:new Date(i.headers.get("Last-Modified")??"error: missing last modified"),versionId:i.headers.get("x-amz-version-id")||null,etag:No(i.headers.get("ETag")??"")}}async copyObject(e,r,n){let o=this.getBucketName(n),i=e.sourceBucketName??o;if(!Kn(r))throw new Wr(r);let a=`${i}/${e.sourceKey}`;e.sourceVersionId&&(a+=`?versionId=${e.sourceVersionId}`);let s=new Headers(n?.metadata);n?.metadata!==void 0&&s.set("x-amz-metadata-directive","REPLACE"),s.set("x-amz-copy-source",a);let u=await this.makeRequest({method:"PUT",bucketName:o,objectName:r,headers:s,returnBody:!0}),c=await u.text(),f=Vn(c).root;if(!f||f.name!=="CopyObjectResult")throw new Error(`Unexpected response: ${c}`);let d=f.children.find(h=>h.name==="ETag")?.content??"",p=f.children.find(h=>h.name==="LastModified")?.content;if(p===void 0)throw new Error("Unable to find <LastModified>...</LastModified> from the server.");return{copySourceVersionId:u.headers.get("x-amz-copy-source-version-id")||null,etag:No(d),lastModified:new Date(p),versionId:u.headers.get("x-amz-version-id")||null}}async bucketExists(e){try{return await this.listObjects({bucketName:e}).next(),!0}catch(r){if(r instanceof bn&&r.statusCode===404)return!1;throw r}}async makeBucket(e){await this.makeRequest({method:"PUT",bucketName:this.getBucketName({bucketName:e}),objectName:"",statusCode:200})}async removeBucket(e){await this.makeRequest({method:"DELETE",bucketName:this.getBucketName({bucketName:e}),objectName:"",statusCode:204})}presignedPostObject(e,r={}){if(!Kn(e))throw new Wr(e);let n=this.getBucketName(r);if(!n)throw new Error("Bucket name is required for presignedPost, but none was provided either to this method nor to the client constructor");let o=r.requestDate||new Date,i=r.expirySeconds??3600;return o1({protocol:this.protocol,host:this.host,bucket:n,objectKey:e,accessKey:this.accessKey||"",secretKey:this.#e||"",region:this.region,date:o,expirySeconds:i,conditions:r.conditions,fields:r.fields})}};function i1(t){try{let e=ge(t);return Ht(xn(e,"patch"))}catch{let e=t.match(/^(\d+)\.(\d+)\.(\d+)/);if(e){let[,r,n,o]=e;return`${r}.${n}.${Number.parseInt(o)+1}`}return"1.0.1"}}async function a1(t,e){let r=i1(t),n=e?` for ${e}`:"",o=await gt({message:`How do you want to handle the version${n}?`,options:[{value:"auto",label:`Auto: Bump patch version (${t} \u2192 ${r})`},{value:"manual",label:"Manual: I'll provide the version number"}]});if(le(o))return null;if(o==="auto")return l.info(`\u{1F522} Auto-bumped version from ${t} to ${r}`),r;let i=await Mt({message:`Current version is ${t}. Enter new version:`,validate:a=>{if(!a)return"Version is required";if(!a.match(/^\d+\.\d+\.\d+/))return"Please enter a valid version (x.y.z)"}});return le(i)?null:i}function s1(t){let e=i1(t);try{let r=ge(t);return[e,Ht(xn(r,"minor")),`${t}-beta.1`,`${t}.1`]}catch{return[e,`${t}.1`,`${t}-beta.1`,`${t}-rc.1`]}}var Mo=require("node:fs"),mf=require("node:path");function R5(t,e){return(0,Mo.readFileSync)(t,"utf8").includes(e)}function Ks(t,e){let r=(0,Mo.readdirSync)(t);for(let n of r){let o=(0,mf.join)(t,n),i=(0,Mo.statSync)(o);if(i.isDirectory()){if(Ks(o,e))return!0}else if(i.isFile()&&(0,mf.extname)(o)===".js"&&R5(o,e))return!0}return!1}function gf(t){return(0,Mo.readdirSync)(t).indexOf("index.html")>-1}var gF=require("node:buffer"),yF=require("node:crypto"),Da=require("node:fs"),DF=require("node:os"),Vo=require("node:path"),bF=require("node:process"),_f=require("node:stream/consumers"),wF=require("node:zlib");var vF=pe(mF()),CF=pe(nl());async function J9(t,e){try{return(await fetch(`${t.hostFilesApi}/files/read/attachments/${encodeURIComponent(e)}`,{method:"HEAD"})).ok}catch{return!1}}var X9=8192;async function Z9(t){let e=bt((0,bF.cwd)()),r=await zr("@capgo/capacitor-updater",e,t.packageJson),n;try{n=r?ge(r):void 0}catch{n=void 0}if(!r||!n)return{version:null,supportsBrotliV2:!1};let o=!Hn(n,void 0,void 0,Is);return{version:`${n.major}.${n.minor}.${n.patch}`,supportsBrotliV2:o}}function Q9(t,e){if(!e)return!1;let r=e.split(",").map(n=>n.trim()).filter(n=>!!n);return r.length===0?!1:vF.isMatch(t,r)}async function e7(t,e,r){let o=(0,Da.statSync)(t).size,i=await(0,_f.buffer)((0,Da.createReadStream)(t));if(o===0)return{buffer:i,useBrotli:!1};if(Q9(e,r.noBrotliPatterns))return{buffer:i,useBrotli:!1};if(o<X9)return{buffer:i,useBrotli:!1};try{let a=await(0,_f.buffer)((0,Da.createReadStream)(t).pipe((0,wF.createBrotliCompress)({})));return a.length>=o-10?{buffer:i,useBrotli:!1}:{buffer:a,useBrotli:!0}}catch(a){return l.warn(`Brotli compression failed for ${t}: ${a}, using original file`),{buffer:i,useBrotli:!1}}}async function EF(t,e,r,n,o,i,a=!1){let s=Ee();s.start(o!=="v2"?"Generating the update manifest":`Generating the update manifest with ${a?"V3":"V2"} encryption`);let u=await QA(t);if(o==="v2")for(let c of u)c.hash=a?lf(c.hash,i):ha(c.hash,i);return s.stop("Manifest generated successfully"),await me(e,{channel:"partial-update",event:"Generate manifest",icon:"\u{1F4C2}",user_id:r,tags:{"app-id":n},notify:!1}),u}function t7(t){return(0,DF.platform)()!=="win32"?t:Vo.win32.normalize(t).split(Vo.win32.sep).join(Vo.posix.sep)}function r7(t){let e=t.split("/").map(r=>encodeURIComponent(r)).join("/");return t.includes(" ")&&l.warn(`File "${t}" contains spaces in its name.`),e}async function _F(t,e,r,n,o,i,a){let s=Ee();s.start("Preparing partial update with TUS protocol");let u=performance.now(),c=await Dr(),f=!!(a.partial||a.delta||a.partialOnly||a.deltaOnly),{version:d,supportsBrotliV2:p}=await Z9(a);if(p)a.disableBrotli?l.info("Brotli compression disabled by user request"):a.noBrotliPatterns&&l.info(`Files matching patterns (${a.noBrotliPatterns}) will be excluded from brotli compression`);else throw new Error(`Your project is using an older version of @capgo/capacitor-updater (${d||"unknown"}). To use Delta updates, please upgrade to version ${XA} (v5), ${ZA} (v6) or ${Is} (v7) or higher.`);let h=e.filter(v=>v.file.includes(" "));if(h.length>0)throw new Error(`Files with spaces in their names (${h.map(v=>v.file).join(", ")}). Please rename the files.`);let m=0,y=e.length,b=0;try{s.message(`Uploading ${y} files using TUS protocol`);let v=async P=>{let F=(0,Vo.join)(r,P.file),B=t7(P.file),T,L=!1;if(a.disableBrotli)T=await(0,_f.buffer)((0,Da.createReadStream)(F)),L=!1;else{let D=await e7(F,B,a);T=D.buffer,L=D.useBrotli}let A=T;i&&(A=pa(T,i.sessionKey,i.ivSessionKey));let q=B;L&&(q=`${B}.br`,b++);let j=r7(q),Z=(0,yF.createHash)("sha256").update(P.hash).digest("hex"),k;if(i){let D=gF.Buffer.from(i.ivSessionKey).toString("hex");k=`orgs/${o}/apps/${n}/delta/${D}/${Z}_${j}`}else k=`orgs/${o}/apps/${n}/delta/${Z}_${j}`;return!i&&await J9(c,k)?(m++,Promise.resolve({file_name:j,s3_path:k,file_hash:P.hash})):new Promise((D,w)=>{s.message(`Prepare upload partial file: ${B}`),new CF.Upload(A,{endpoint:`${c.hostFilesApi}/files/upload/attachments/`,chunkSize:a.tusChunkSize,retryDelays:[0,1e3,3e3,5e3,1e4],removeFingerprintOnSuccess:!0,metadata:{filename:k},headers:{Authorization:t},onError:O=>{let R=O.toString(),$;try{let I=R.match(/response text: (\{.*?\})/);I&&I[1]&&($=JSON.parse(I[1]).moreInfo?.requestId)}catch{}let H=$?` [requestId: ${$}]`:"";l.error(`Failed to upload ${B}: ${R}${H}`),w(O)},onProgress(){let O=(m/y*100).toFixed(2);s.message(`Uploading partial update: ${O}%`)},onSuccess(){m++,D({file_name:j,s3_path:k,file_hash:P.hash})}}).start()})},E=500,g=[];for(let P=0;P<e.length;P+=E){let F=e.slice(P,P+E),B=Math.floor(P/E)+1,T=Math.ceil(e.length/E);T>1&&s.message(`Processing batch ${B}/${T} (${F.length} files)`);let L=await Promise.all(F.map(A=>v(A)));g.push(...L)}let S=((performance.now()-u)/1e3).toFixed(2);return s.stop(`Partial update uploaded successfully \u{1F4AA} in (${S} seconds)`),b>0&&l.info(`${b} of ${y} files were compressed with brotli and use .br extension`),await me(t,{channel:"app",event:`App Partial TUS done${b>0?" with .br extension":""}`,icon:"\u23EB",user_id:o,tags:{"app-id":n},notify:!1}),await me(t,{channel:"performance",event:"Partial upload performance",icon:"\u{1F684}",user_id:o,tags:{"app-id":n,time:S},notify:!1}),g}catch(v){let g=((performance.now()-u)/1e3).toFixed(2);if(s.stop(`Failed to upload Partial bundle (after ${g} seconds)`),f)throw l.error(`Error uploading partial update: ${v}`),l.error("Delta/partial upload was explicitly requested but failed. Upload aborted."),v;return l.info(`Error uploading partial update: ${v}, This is not a critical error, the bundle has been uploaded without the partial files`),null}}function De(t){throw l.error(t),new Error(t)}async function n7(t,e){let r=Ir("",e.packageJson),n=e.bundle||t?.plugins?.CapacitorUpdater?.version||r||`0.0.1-beta.${(0,SF.randomUUID)().split("-")[0]}`;return oa.test(n)||De(`Your bundle name ${n}, is not valid it should follow semver convention : https://semver.org/`),n}function o7(t){let e=t.apikey||ne();return e||De("Missing API key, you need to provide an API key to upload your bundle"),e}function i7(t,e,r){let n=fe(t,r),o=e.path||r?.webDir;return n||De("Missing argument, you need to provide a appid or be in a capacitor project"),o||De("Missing argument, you need to provide a path (--path), or be in a capacitor project"),(0,zo.existsSync)(o)||De(`Path ${o} does not exist, build your app first, or provide a valid path`),{appid:n,path:o}}function a7(t,e){let r=t.codeCheck;(typeof r>"u"||r)&&(Ks(e,"notifyAppReady")||De(`notifyAppReady() is missing in the build folder of your app. see: https://capgo.app/docs/plugin/api/#notifyappready
|
|
216
216
|
If you are sure your app has this code, you can use the --no-code-check option`),gf(e)||De(`index.html is missing in the root folder of ${e}`))}async function s7(t,e,r,n,o,i){let a=r.ignoreMetadataCheck,s=r.autoMinUpdateVersion,u=r.minUpdateVersion,{data:c,error:f}=await t.from("channels").select("disable_auto_update, version ( min_update_version, native_packages )").eq("name",n).eq("app_id",o).single(),d=!!c&&c.disable_auto_update==="version_number",p,h;if(!f&&c&&c.version&&c.version.native_packages&&!a){let b=Ee();b.start(`Checking bundle compatibility with channel ${n}`);let{finalCompatibility:v,localDependencies:E}=await Xl(t,o,n,r.packageJson,r.nodeModules);if(h=v,p=E,h.find(g=>!Ro(g)))b.stop(`Bundle NOT compatible with ${n} channel`),l.warn(`You can check compatibility with "${e.runner} @capgo/cli bundle compatibility"`),s&&(u=i,l.info(`Auto set min-update-version to ${u}`));else if(s)try{let{min_update_version:g}=c.version;(!g||!oa.test(g))&&De("Invalid remote min update version, skipping auto setting compatibility"),u=g,b.stop(`Auto set min-update-version to ${u}`)}catch{De(`Cannot auto set compatibility, invalid data ${c}`)}else b.stop(`Bundle compatible with ${n} channel`)}else a||(l.warn(`Channel ${n} is new or it's your first upload with compatibility check, it will be ignored this time`),p=await qg(r.packageJson,r.nodeModules),s&&(u=i,l.info(`Auto set min-update-version to ${u}`)));d&&!u&&!a&&De("You need to provide a min-update-version to upload a bundle to this channel"),u&&(oa.test(u)||De(`Your minimal version update ${u}, is not valid it should follow semver convention : https://semver.org/`));let m=p?new Map(p.filter(b=>!!b.native&&b.native!==void 0).map(b=>[b.name,b])):new Map;return{nativePackages:m.size>0||!r.ignoreMetadataCheck?Array.from(m,([b,v])=>({name:b,version:v.version})):void 0,minUpdateVersion:u}}async function u7(t,e,r,n=!1,o=!1){let{data:i,error:a}=await t.rpc("exist_app_versions",{appid:e,name_version:r}).single();if(i||a){if(n)return l.warn(`Version ${r} already exists - exiting gracefully due to --silent-fail option`),K("Bundle version already exists - exiting gracefully \u{1F389}"),!0;if(o){l.error(`\u274C Version ${r} already exists`);let s=s1(r);l.info("\u{1F4A1} Here are some suggestions:"),s.forEach((f,d)=>{l.info(` ${d+1}. ${f}`)});let u=await gt({message:"What would you like to do?",options:[{value:"suggest1",label:`Use ${s[0]}`},{value:"suggest2",label:`Use ${s[1]}`},{value:"suggest3",label:`Use ${s[2]}`},{value:"suggest4",label:`Use ${s[3]}`},{value:"custom",label:"Enter a custom version"},{value:"cancel",label:"Cancel upload"}]});(le(u)||u==="cancel")&&De("Upload cancelled by user");let c;if(u==="custom"){let f=await a1(r,"upload");f||De("Upload cancelled by user"),c=f}else{let f=Number.parseInt(u.replace("suggest",""))-1;c=s[f]}return l.info(`\u{1F504} Retrying with new version: ${c}`),c}De(`Version ${r} already exists ${M(a)}`)}return!1}async function c7(t,e,r,n,o,i,a,s){let u,c,f="",d=null,p="none",h="",m="",y=e.keyV2,b=e.key===!1,v=Ee();v.start(`Zipping bundle from ${t}`),d=await Yl(t),v.message("Calculating checksum");let E=bt((0,Sf.cwd)()),g=await zr("@capgo/capacitor-updater",E,e.packageJson),_=!1,S;try{S=g?ge(g):void 0}catch{S=void 0}if(g?S?_=!Hn(S,Is):(g==="link:@capgo/capacitor-updater"||g==="file:.."||g==="file:../")&&(l.warn("Using local @capgo/capacitor-updater. Assuming latest version for checksum calculation."),_=!0):De("Cannot find @capgo/capacitor-updater in node_modules, please install it first with your package manager"),(y||e.keyDataV2||(0,zo.existsSync)(or))&&!b||_?f=await cn(d,"sha256"):f=await cn(d,"crc32"),v.stop(`Checksum ${_?"SHA256":"CRC32"}: ${f}`),b)l.info("Encryption ignored");else if((y||(0,zo.existsSync)(or)||e.keyDataV2)&&!e.oldEncryption){let B=typeof y=="string"?y:or,T=e.keyDataV2||"";!T&&!(0,zo.existsSync)(B)&&De(`Cannot find private key ${B}`),await me(r,{channel:"app",event:"App encryption v2",icon:"\u{1F511}",user_id:n,tags:{"app-id":o},notify:!1},e.verbose),T||(T=(0,zo.readFileSync)(B).toString());let L=S&&!Hn(S,"5.30.0","6.30.0","7.30.0");l.info(`Encrypting your bundle with ${L?"V3":"V2"}`);let{sessionKey:A,ivSessionKey:q}=cf(T),j=pa(d,A,q);f=L?lf(f,T):ha(f,T),u=q,c=A,p="v2",h=T,s&&(m=zO(s),e.verbose&&l.info(`[Verbose] Encryption key_id: ${m}`)),e.displayIvSession&&l.info(`Your Iv Session key is ${u},
|
|
217
217
|
keep it safe, you will need it to decrypt your bundle.
|
|
218
218
|
It will be also visible in your dashboard
|
|
@@ -220,7 +220,7 @@ ${M(i)}`),new Error(`Cannot retrieve unknown version for app ${e}: ${M(i)}`)}fun
|
|
|
220
220
|
The bundle size is ${P} Mb, this may take a while to download for users
|
|
221
221
|
`),l.info(`Learn how to optimize your assets https://capgo.app/blog/optimise-your-images-for-updates/
|
|
222
222
|
`),e.verbose&&(l.info("[Verbose] Bundle size details:"),l.info(` - Actual size: ${P} MB (${d?.byteLength} bytes)`),l.info(` - Alert threshold: ${Math.floor(a/1024/1024)} MB`),l.info(` - Maximum allowed: ${F} MB`),l.info("[Verbose] Sending 'App Too Large' event to analytics...")),await me(r,{channel:"app-error",event:"App Too Large",icon:"\u{1F69B}",user_id:n,tags:{"app-id":o},notify:!1},e.verbose),e.verbose&&l.info("[Verbose] Event sent successfully")):e.verbose&&l.info(`[Verbose] Bundle size OK: ${P} MB (under ${Math.floor(a/1024/1024)} MB alert threshold)`),e.verbose&&l.info("[Verbose] Bundle preparation complete, returning bundle data"),{zipped:d,ivSessionKey:u,sessionKey:c,checksum:f,encryptionMethod:p,finalKeyData:h,keyId:m}}async function l7(t,e,r,n,o,i,a,s){let u=Ee();u.start("Uploading Bundle");let c=performance.now(),f=!1;if(a.verbose&&(l.info("[Verbose] uploadBundleToCapgoCloud called:"),l.info(` - Bundle size: ${Math.floor(i.byteLength/1024)} KB`),l.info(` - App ID: ${r}`),l.info(` - Bundle version: ${n}`),l.info(` - Chunk size: ${Math.floor(s/1024/1024)} MB`)),a.dryUpload){u.stop(`Dry run, bundle not uploaded
|
|
223
|
-
Bundle uploaded \u{1F4AA} in 0 seconds`),a.verbose&&l.info("[Verbose] Dry upload mode - skipping actual upload");return}try{let h=await yr();if(a.verbose&&l.info("[Verbose] Local config retrieved for upload"),a.multipart!==void 0&&a.multipart||a.tus!==void 0&&a.tus){a.multipart?l.info("Uploading bundle with multipart is deprecated, we upload with TUS instead"):l.info("Uploading bundle with TUS protocol"),a.verbose&&(l.info("[Verbose] Starting TUS resumable upload..."),l.info(` - Host: ${h.hostWeb}`),l.info(` - Chunk size: ${Math.floor(s/1024/1024)} MB`)),await eO(t,i,o,r,n,u,h,s),f=!0,a.verbose&&l.info("[Verbose] TUS upload completed, updating database with R2 path...");let m=`orgs/${o}/apps/${r}/${n}.zip`,{error:y}=await e.from("app_versions").update({r2_path:m}).eq("name",n).eq("app_id",r);if(y)return l.error(`Cannot finish TUS upload ${M(y)}`),a.verbose&&l.info(`[Verbose] Database update failed: ${M(y)}`),Promise.reject(new Error("Cannot finish TUS upload"));a.verbose&&l.info(`[Verbose] Database updated with R2 path: ${m}`)}else{a.verbose&&l.info("[Verbose] Using standard upload (non-TUS), getting presigned URL...");let m=await YA(e,r,n);if(!m)return l.error("Cannot get upload url"),a.verbose&&l.info("[Verbose] Failed to retrieve presigned upload URL from database"),Promise.reject(new Error("Cannot get upload url"));a.verbose&&(l.info("[Verbose] Presigned URL obtained, uploading via HTTP PUT..."),l.info(` - Timeout: ${a.timeout||Bg}ms`),l.info(" - Retry attempts: 5"),l.info(" - Content-Type: application/zip"));let y=new AbortController,b=setTimeout(()=>y.abort(),a.timeout||Bg);try{let v=await fetch(m,{method:"PUT",body:i,headers:{"Content-Type":"application/zip"},signal:y.signal});if(!v.ok)throw new Error(`HTTP error! status: ${v.status}`)}finally{clearTimeout(b)}a.verbose&&l.info("[Verbose] HTTP PUT upload completed successfully")}}catch(h){let y=((performance.now()-c)/1e3).toFixed(2);if(u.stop(`Failed to upload bundle ( after ${y} seconds)`),a.verbose&&(l.info(`[Verbose] Upload failed after ${y} seconds`),l.info(`[Verbose] Error type: ${h instanceof Error?"Error":typeof h}`)),h instanceof Error&&h.message.includes("HTTP error"))try{let b=h.message.match(/status: (\d+)/),v=b?b[1]:"unknown";l.error(`Upload failed with status ${v}: ${h.message}`)}catch{l.error(`Upload failed: ${h.message}`)}else a.verbose&&l.info(`[Verbose] Non-HTTP error: ${M(h)}`),a.tus?l.error(`Cannot upload bundle please contact support if the issue persists ${M(h)}`):l.error(`Cannot upload bundle ( try again with --tus option) ${M(h)}`);throw a.verbose&&l.info("[Verbose] Cleaning up failed version from database..."),await tO(e,r,n),a.verbose&&l.info("[Verbose] Failed version cleaned up"),h instanceof Error?h:new Error(String(h))}let p=((performance.now()-c)/1e3).toFixed(2);u.stop(`Bundle uploaded \u{1F4AA} in (${p} seconds)`),a.verbose&&(l.info("[Verbose] Upload successful:"),l.info(` - Upload time: ${p} seconds`),l.info(` - Upload method: ${f?"TUS (resumable)":"Standard HTTP PUT"}`),l.info(` - Bundle size: ${Math.floor(i.byteLength/1024)} KB`),l.info("[Verbose] Sending performance event...")),await me(t,{channel:"performance",event:f?"TUS upload zip performance":"Upload zip performance",icon:"\u{1F684}",user_id:o,tags:{"app-id":r,time:p},notify:!1},a.verbose),a.verbose&&l.info("[Verbose] Performance event sent successfully")}async function f7(t,e,r){let{data:n,error:o}=await t.from("channels").select("version ( id, name, deleted )").eq("app_id",e).eq("name",r);if(o){l.error(`Cannot delete linked bundle on upload ${M(o)}`);return}if(n.length===0){l.warn("No linked bundle found in the channel you are trying to upload to");return}let i=n[0].version;if(i.deleted){l.warn("The linked bundle is already deleted");return}let{error:a}=await t.from("app_versions").update({deleted:!0}).eq("id",i.id);if(a){l.error(`Cannot delete linked bundle on upload ${M(a)}`);return}l.info("Linked bundle deleted")}async function d7(t,e,r,n,o,i,a,s,u,c){let{data:f}=await t.rpc("get_app_versions",{apikey:e,name_version:n,appid:s}).single();f||De("Cannot get version id, cannot set channel");let{data:d}=await t.rpc("is_allowed_capgkey",{apikey:e,keymode:["write","all"]}).single();if(d){let{error:p,data:h}=await Jl(t,{name:o,app_id:s,created_by:i,version:f,owner_org:a,...c?{allow_device_self_set:!0}:{}});p&&De(`Cannot set channel, the upload key is not allowed to do that, use the "all" for this. ${M(p)}`);let m=`${u.hostWeb}/app/${s}/channel/${h.id}`;h?.public?l.info("Your update is now available in your public channel \u{1F389}"):h?.id&&l.info(`Link device to this bundle to try it: ${m}`),r&&l.info(`Bundle url: ${m}`)}else l.warn("The upload key is not allowed to set the version in the channel")}async function p7(t,e,r){let{error:n,data:o}=await e.from("apps").select("default_upload_channel").eq("app_id",t).single();return n?(l.warn("Cannot find default upload channel"),l.info(`You can set it here: ${r}/app/${t}/info`),null):o.default_upload_channel}async function Af(t,e,r=!1){r||ee(`Uploading with CLI version ${xr.version}`);let n,o=nt();await Ce();let{s3Region:i,s3Apikey:a,s3Apisecret:s,s3BucketName:u,s3Endpoint:c,s3Port:f,s3SSL:d}=e;e.verbose&&(l.info("[Verbose] Starting upload process with options:"),l.info(` - API key: ${e.apikey?"provided":"from saved key"}`),l.info(` - Path: ${e.path||"from capacitor config"}`),l.info(` - Channel: ${e.channel||"from default upload channel"}`),l.info(` - Bundle: ${e.bundle||"auto-detected"}`),l.info(` - External: ${e.external||"false"}`),l.info(` - Encryption: ${e.keyV2||e.keyDataV2?"v2":e.key===!1?"disabled":"auto"}`),l.info(` - Upload method: ${e.tus?"TUS":e.zip?"ZIP":"auto"}`),l.info(` - Delta updates: ${e.delta||e.partial?"enabled":"disabled"}`));let p=o7(e);e.verbose&&l.info("[Verbose] API key retrieved successfully");let h=await te();e.verbose&&l.info("[Verbose] Capacitor config loaded successfully");let m=await UA();e.verbose&&(l.info("[Verbose] Remote file config retrieved:"),l.info(` - Max upload length: ${Math.floor(m.maxUploadLength/1024/1024)} MB`),l.info(` - Alert upload size: ${Math.floor(m.alertUploadSize/1024/1024)} MB`),l.info(` - TUS upload: ${m.TUSUpload?"enabled":"disabled"}`),l.info(` - TUS upload forced: ${m.TUSUploadForced?"yes":"no"}`),l.info(` - Partial upload: ${m.partialUpload?"enabled":"disabled"}`),l.info(` - Max chunk size: ${Math.floor(m.maxChunkSize/1024/1024)} MB`));let{appid:y,path:b}=i7(t,e,h.config);e.verbose&&l.info(`[Verbose] App ID: ${y}, Build path: ${b}`);let v=await n7(h.config,e);e.verbose&&l.info(`[Verbose] Bundle version: ${v}`);let E=e.external?"external":"r2-direct",g="none";e.autoSetBundle&&(await $s({version:v}),e.verbose&&l.info("[Verbose] Auto-set bundle version in capacitor.config.json")),a7(e,b),e.verbose&&l.info("[Verbose] Code check passed (notifyAppReady found and index.html present)"),l.info(`Upload ${y}@${v} started from path "${b}" to Capgo cloud`);let _=await yr();e.verbose&&l.info(`[Verbose] Local config loaded: host=${_.hostWeb}`),e.supaHost&&e.supaAnon&&(l.info("Using custom supabase instance from provided options"),_.supaHost=e.supaHost,_.supaKey=e.supaAnon,e.verbose&&l.info(`[Verbose] Custom Supabase host: ${e.supaHost}`));let S=await re(p,e.supaHost,e.supaAnon);e.verbose&&l.info("[Verbose] Supabase client created successfully");let P=await ae(S,p,["write","all","upload"]);e.verbose&&l.info(`[Verbose] User verified successfully, user_id: ${P}`);let F=e.channel||await p7(y,S,_.hostWeb)||"production";e.verbose&&l.info(`[Verbose] Target channel: ${F}`);let B=await Et(S,y);e.verbose&&l.info(`[Verbose] Organization ID: ${B}`),await VA(S,B,xr.version),e.verbose&&l.info("[Verbose] Remote CLI messages checked"),await KA(S,B,p,y,!0),e.verbose&&l.info("[Verbose] Plan validation passed"),e.verbose&&l.info("[Verbose] Trial check completed"),e.verbose&&l.info(`[Verbose] Checking compatibility with channel ${F}...`);let{nativePackages:T,minUpdateVersion:L}=await s7(S,o,e,F,y,v);e.verbose&&(l.info("[Verbose] Compatibility check completed:"),l.info(` - Native packages: ${T?T.length:0}`),l.info(` - Min update version: ${L||"none"}`)),e.verbose&&l.info(`[Verbose] Checking if version ${v} already exists...`);let A=!r,q=await u7(S,y,v,e.versionExistsOk,A);if(e.verbose&&l.info(`[Verbose] Version exists check: ${q?typeof q=="string"?`retry with ${q}`:"yes (skipping)":"no (continuing)"}`),q===!0)return{success:!0,skipped:!0,reason:"VERSION_EXISTS",bundle:v,checksum:null,encryptionMethod:g,storageProvider:E};if(typeof q=="string")return l.info(`Retrying upload with new version: ${q}`),Af(t,{...e,bundle:q},r);e.external&&!e.external.startsWith("https://")&&De(`External link should should start with "https://" current is "${e.external}"`),e.deleteLinkedBundleOnUpload&&(l.warn("Deleting linked bundle on upload is destructive, it will delete the currently linked bundle in the channel you are trying to upload to."),l.warn("Please make sure you want to do this, if you are not sure, please do not use this option."));let j={name:v,app_id:y,session_key:void 0,external_url:e.external,storage_provider:E,min_update_version:L,native_packages:T,owner_org:B,user_id:P,checksum:void 0,link:e.link||null,comment:e.comment||null,key_id:void 0},Z=null,k="";if(e.external)e.verbose&&l.info(`[Verbose] Using external URL: ${e.external}`),await me(p,{channel:"app",event:"App external",icon:"\u{1F4E4}",user_id:B,tags:{"app-id":y},notify:!1},e.verbose),j.session_key=e.ivSessionKey,j.checksum=e.encryptedChecksum,e.verbose&&(l.info("[Verbose] External bundle configured:"),l.info(` - URL: ${e.external}`),l.info(` - IV Session Key: ${e.ivSessionKey?"provided":"none"}`),l.info(` - Encrypted Checksum: ${e.encryptedChecksum?"provided":"none"}`));else{e.verbose&&l.info(`[Verbose] Preparing bundle file from path: ${b}`);let N=h.config?.plugins?.CapacitorUpdater?.publicKey,{zipped:X,ivSessionKey:U,checksum:oe,sessionKey:Zt,encryptionMethod:z,finalKeyData:Se,keyId:V}=await c7(b,e,p,B,y,m.maxUploadLength,m.alertUploadSize,N);j.session_key=U,j.checksum=oe,j.key_id=V||void 0,n=Zt,Z=X,g=z,k=Se,e.verbose&&(l.info("[Verbose] Bundle prepared:"),l.info(` - Size: ${Math.floor((X?.byteLength??0)/1024)} KB`),l.info(` - Checksum: ${oe}`),l.info(` - Encryption: ${z}`),l.info(` - IV Session Key: ${U?"present":"none"}`),l.info(` - Key ID: ${V||"none"}`)),e.ignoreChecksumCheck||(e.verbose&&l.info("[Verbose] Checking for duplicate checksum..."),await oO(S,y,F,oe),e.verbose&&l.info("[Verbose] Checksum is unique"))}e.zip?(e.tus=!1,e.verbose&&l.info("[Verbose] Upload method: ZIP (explicitly set via --zip)")):!m.TUSUpload||e.external?(e.tus=!1,e.verbose&&l.info("[Verbose] Upload method: Standard (TUS not available or external URL)")):(e.tus=e.tus||m.TUSUploadForced,e.verbose&&l.info(`[Verbose] Upload method: ${e.tus?"TUS (resumable)":"Standard"}`)),!m.partialUpload||e.external?(e.delta=!1,e.verbose&&e.external&&l.info("[Verbose] Delta updates disabled (not available with external URLs)")):(e.delta=e.delta||e.partial||e.deltaOnly||e.partialOnly||m.partialUploadForced,e.verbose&&l.info(`[Verbose] Delta updates: ${e.delta?"enabled":"disabled"}`)),e.encryptPartial&&g==="v1"&&De("You cannot encrypt the partial update if you are not using the v2 encryption method");let D="5.30.0",w="6.30.0",C="7.30.0",O=!1;if(e.delta&&g==="v2"&&!e.encryptPartial){let N=bt((0,Sf.cwd)()),X=await zr("@capgo/capacitor-updater",N,e.packageJson),U;try{U=X?ge(X):void 0}catch{U=void 0}X&&U&&kD(U,ge("6.14.4"))&&(l.info(`Auto-enabling partial update encryption for updater version ${U} (> 6.14.4)`),e.verbose&&l.info("[Verbose] Partial encryption auto-enabled for updater >= 6.14.4"),e.encryptPartial=!0)}if(e.delta&&(e.encryptPartial||g==="v2")){let N=bt((0,Sf.cwd)()),X=await zr("@capgo/capacitor-updater",N,e.packageJson),U;try{U=X?ge(X):void 0}catch{U=void 0}X&&U&&(O=!Hn(U,D,w,C),e.verbose&&O&&l.info(`[Verbose] Using hex checksum format for updater version ${U}`))}e.verbose&&e.delta&&l.info("[Verbose] Preparing delta/partial update manifest...");let R=e.delta?await EF(b,p,B,y,e.encryptPartial?g:"none",k,O):[];e.verbose&&e.delta&&l.info(`[Verbose] Delta manifest prepared with ${R.length} files`),e.verbose&&l.info("[Verbose] Creating version record in database...");let{error:$}=await Mg(S,j);if($&&De(`Cannot add bundle ${M($)}`),e.verbose&&l.info("[Verbose] Version record created successfully"),e.tusChunkSize&&e.tusChunkSize>m.maxChunkSize?(l.error(`Chunk size ${e.tusChunkSize} is greater than the maximum chunk size ${m.maxChunkSize}, using the maximum chunk size`),e.tusChunkSize=m.maxChunkSize):e.tusChunkSize||(e.tusChunkSize=m.maxChunkSize),e.verbose&&l.info(`[Verbose] TUS chunk size: ${Math.floor(e.tusChunkSize/1024/1024)} MB`),Z&&(u||c||i||a||s||f||d)){(!u||!c||!i||!a||!s||!f)&&De("Missing argument, for S3 upload you need to provide a bucket name, endpoint, region, port, API key, and API secret"),l.info("Uploading to S3"),e.verbose&&(l.info("[Verbose] S3 configuration:"),l.info(` - Endpoint: ${c}`),l.info(` - Region: ${i}`),l.info(` - Bucket: ${u}`),l.info(` - Port: ${f}`),l.info(` - SSL: ${d?"enabled":"disabled"}`));let N=d?`https://${c}`:`http://${c}`,X=new zs({endPoint:c,region:i,port:f,pathStyle:!0,bucket:u,accessKey:a,secretKey:s}),U=`${y}-${v}`,oe=encodeURIComponent(U);e.verbose&&l.info(`[Verbose] Uploading to S3 as: ${U}`),await X.putObject(U,Uint8Array.from(Z)),j.external_url=`${N}/${oe}`,j.storage_provider="external",e.verbose&&l.info(`[Verbose] S3 upload complete, external URL: ${j.external_url}`)}else if(Z){!e.partialOnly&&!e.deltaOnly?(e.verbose&&l.info("[Verbose] Starting full bundle upload to Capgo Cloud..."),await l7(p,S,y,v,B,Z,e,e.tusChunkSize)):e.verbose&&l.info("[Verbose] Skipping full bundle upload (delta-only mode)");let N=null;try{e.dryUpload&&(e.delta=!1,e.verbose&&l.info("[Verbose] Dry upload mode: skipping delta upload"));let U=j.session_key&&e.encryptPartial&&n?{sessionKey:n,ivSessionKey:j.session_key}:void 0;e.verbose&&e.delta&&(l.info("[Verbose] Starting delta/partial file upload..."),l.info(` - Manifest entries: ${R.length}`),l.info(` - Encryption: ${U?"enabled":"disabled"}`)),N=e.delta?await _F(p,R,b,y,B,U,e):null,e.verbose&&N&&l.info(`[Verbose] Delta upload complete with ${N.length} files`)}catch(U){if(!!(e.partial||e.delta||e.partialOnly||e.deltaOnly))throw U;l.info(`Failed to upload partial files to capgo cloud. Error: ${M(U)}. This is not a critical error, the bundle has been uploaded without the partial files`),e.verbose&&l.info(`[Verbose] Delta upload error details: ${M(U)}`)}j.storage_provider="r2",j.manifest=N,e.verbose&&l.info("[Verbose] Updating version record with storage provider and manifest...");let{error:X}=await Mg(S,j);X&&De(`Cannot update bundle ${M(X)}`),e.verbose&&l.info("[Verbose] Version record updated successfully")}e.verbose&&l.info("[Verbose] Checking app permissions...");let H=await Me(S,p,y,2);e.verbose&&(l.info("[Verbose] Permissions:"),l.info(` - Upload: ${ia(H,2)?"yes":"no"}`),l.info(` - Write: ${ia(H,3)?"yes":"no"}`),l.info(` - Admin: ${ia(H,4)?"yes":"no"}`)),e.deleteLinkedBundleOnUpload&&ia(H,3)?(e.verbose&&l.info(`[Verbose] Deleting linked bundle in channel ${F}...`),await f7(S,y,F)):e.deleteLinkedBundleOnUpload&&l.warn("Cannot delete linked bundle on upload as a upload organization member"),ia(H,3)?(e.verbose&&l.info(`[Verbose] Setting bundle ${v} to channel ${F}...`),await d7(S,p,!!e.bundleUrl,v,F,P,B,y,_,e.selfAssign),e.verbose&&l.info("[Verbose] Channel updated successfully")):l.warn("Cannot set channel as a upload organization member"),e.verbose&&l.info("[Verbose] Sending upload event..."),await me(p,{channel:"app",event:"App Uploaded",icon:"\u23EB",user_id:B,tags:{"app-id":y},notify:!1},e.verbose);let I={success:!0,bundle:v,checksum:j.checksum??null,encryptionMethod:g,sessionKey:n?n.toString("base64"):void 0,ivSessionKey:typeof j.session_key=="string"?j.session_key:void 0,storageProvider:j.storage_provider};return e.verbose&&(l.info("[Verbose] Upload completed successfully:"),l.info(` - Bundle: ${I.bundle}`),l.info(` - Checksum: ${I.checksum}`),l.info(` - Encryption: ${I.encryptionMethod}`),l.info(` - Storage: ${I.storageProvider}`)),r&&!I.skipped&&K("Time to share your update to the world \u{1F30D}"),I}function h7(t){t.ivSessionKey&&!t.external&&De("You need to provide an external url if you want to use the --iv-session-key option"),t.encryptedChecksum&&!t.external&&De("You need to provide an external url if you want to use the --encrypted-checksum option"),(t.partial||t.delta||t.partialOnly||t.deltaOnly)&&t.external&&De("You cannot use the --partial/--delta/--partial-only/--delta-only option with an external url"),t.tus&&t.external&&De("You cannot use the --tus option with an external url"),t.dryUpload&&t.external&&De("You cannot use the --dry-upload option with an external url"),t.multipart&&t.external&&De("You cannot use the --multipart option with an external url"),t.external&&(t.keyV2||t.keyDataV2)&&De("You cannot set a key if you are uploading to an external url"),t.keyV2&&t.keyDataV2&&De("You cannot set both key-v2 and key-data-v2"),t.external&&(t.s3Region||t.s3Apikey||t.s3Apisecret||t.s3Endpoint||t.s3BucketName||t.s3Port||t.s3SSL)&&De("You cannot set S3 options if you are uploading to an external url, it's automatically handled"),t.encryptedChecksum&&!t.external&&De("You cannot set the --encrypted-checksum option if you are not uploading to an external url"),t.minUpdateVersion&&t.autoMinUpdateVersion&&De("You cannot set both min-update-version and auto-min-update-version, use only one of them")}async function xf(t,e){try{h7(e),await Af(t,e)}catch(r){let n=r instanceof Error?r.message:String(r),o=M(r);e.verbose?l.error(`uploadBundle failed:${o}`):l.error(`uploadBundle failed: ${n}`);let i=n.includes("Cannot upload the same bundle content");if(!e.versionExistsOk)try{if(i){let a=await gt({message:"Would you like to retry the upload?",options:[{value:"ignore",label:"Retry with --ignore-checksum-check (force upload same content)"},{value:"cancel",label:"Cancel upload"}]});if(le(a)||a==="cancel")throw r instanceof Error?r:new Error(String(r));if(a==="ignore")return l.info("\u{1F504} Retrying upload with --ignore-checksum-check..."),xf(t,{...e,ignoreChecksumCheck:!0})}else{let a=await ue({message:"Would you like to retry the upload?"});if(le(a))throw r instanceof Error?r:new Error(String(r));if(a)return l.info("\u{1F504} Retrying upload..."),xf(t,e)}}catch{throw r instanceof Error?r:new Error(String(r))}throw r instanceof Error?r:new Error(String(r))}}var xF=require("node:crypto"),Of=require("node:fs"),AF=require("node:process");var m7=20;function g7(t){console.log(JSON.stringify(t,null,2))}function Xs(t){console.error(M(t))}async function y7(t,e,r=!1){let{json:n}=e,{bundle:o,path:i}=e,a=!n&&!r;try{a&&await Ce();let s=await te(),u=fe(t,s?.config),c=(0,xF.randomUUID)().split("-")[0],f=Ir("",e.packageJson);if(o=o||f||`0.0.1-beta.${c}`,a&&ee(`Zipping ${u}@${o}`),o&&!oa.test(o)){let P=`Your bundle name ${o}, is not valid it should follow semver convention : https://semver.org/`;throw r||(n?Xs({error:"invalid_semver"}):l.error(P)),new Error("Invalid bundle version format")}if(i=i||s?.config?.webDir,!u||!o||!i){let P="Missing argument, you need to provide a appId and a bundle and a path, or be in a capacitor project";throw r||(n?Xs({error:"missing_argument"}):l.error(P)),new Error(P)}if(a&&l.info(`Started from path "${i}"`),typeof e.codeCheck>"u"?!0:e.codeCheck){if(!Ks(i,"notifyAppReady"))throw r||(n?Xs({error:"notifyAppReady_not_in_source_code"}):l.error("notifyAppReady() is missing in the build folder of your app. see: https://capgo.app/docs/plugin/api/#notifyappready")),new Error("notifyAppReady() is missing in build folder");if(!gf(i))throw r||(n?Xs({error:"index_html_not_found"}):l.error(`index.html is missing in the root folder of ${i}`)),new Error("index.html is missing in root folder")}let p=await Yl(i);a&&l.info(`Zipped ${p.byteLength} bytes`);let h=a?Ee():null;h&&h.start("Calculating checksum");let m=bt((0,AF.cwd)()),y=await zr("@capgo/capacitor-updater",m,e.packageJson);if(!y){let P="Cannot find @capgo/capacitor-updater in node_modules, please install it first with your package manager";throw r||l.warn(P),new Error(P)}let b=!1,v;try{v=y?ge(y):void 0}catch{v=void 0}v?b=!Hn(v,void 0,void 0,"7.0.0"):y==="link:@capgo/capacitor-updater"&&(r||l.warn("Using local @capgo/capacitor-updater. Assuming v7"),b=!0);let E=await cn(p,e.keyV2||(0,Of.existsSync)(or)||b?"sha256":"crc32");h&&h.stop(`Checksum ${b?"SHA256":"CRC32"}: ${E}`);let g=Math.floor(p.byteLength/1024/1024);g>m7&&a&&(l.warn(`WARNING !!
|
|
223
|
+
Bundle uploaded \u{1F4AA} in 0 seconds`),a.verbose&&l.info("[Verbose] Dry upload mode - skipping actual upload");return}try{let h=await Dr();if(a.verbose&&l.info("[Verbose] Local config retrieved for upload"),a.multipart!==void 0&&a.multipart||a.tus!==void 0&&a.tus){a.multipart?l.info("Uploading bundle with multipart is deprecated, we upload with TUS instead"):l.info("Uploading bundle with TUS protocol"),a.verbose&&(l.info("[Verbose] Starting TUS resumable upload..."),l.info(` - Host: ${h.hostWeb}`),l.info(` - Chunk size: ${Math.floor(s/1024/1024)} MB`)),await eO(t,i,o,r,n,u,h,s),f=!0,a.verbose&&l.info("[Verbose] TUS upload completed, updating database with R2 path...");let m=`orgs/${o}/apps/${r}/${n}.zip`,{error:y}=await e.from("app_versions").update({r2_path:m}).eq("name",n).eq("app_id",r);if(y)return l.error(`Cannot finish TUS upload ${M(y)}`),a.verbose&&l.info(`[Verbose] Database update failed: ${M(y)}`),Promise.reject(new Error("Cannot finish TUS upload"));a.verbose&&l.info(`[Verbose] Database updated with R2 path: ${m}`)}else{a.verbose&&l.info("[Verbose] Using standard upload (non-TUS), getting presigned URL...");let m=await YA(e,r,n);if(!m)return l.error("Cannot get upload url"),a.verbose&&l.info("[Verbose] Failed to retrieve presigned upload URL from database"),Promise.reject(new Error("Cannot get upload url"));a.verbose&&(l.info("[Verbose] Presigned URL obtained, uploading via HTTP PUT..."),l.info(` - Timeout: ${a.timeout||Bg}ms`),l.info(" - Retry attempts: 5"),l.info(" - Content-Type: application/zip"));let y=new AbortController,b=setTimeout(()=>y.abort(),a.timeout||Bg);try{let v=await fetch(m,{method:"PUT",body:i,headers:{"Content-Type":"application/zip"},signal:y.signal});if(!v.ok)throw new Error(`HTTP error! status: ${v.status}`)}finally{clearTimeout(b)}a.verbose&&l.info("[Verbose] HTTP PUT upload completed successfully")}}catch(h){let y=((performance.now()-c)/1e3).toFixed(2);if(u.stop(`Failed to upload bundle ( after ${y} seconds)`),a.verbose&&(l.info(`[Verbose] Upload failed after ${y} seconds`),l.info(`[Verbose] Error type: ${h instanceof Error?"Error":typeof h}`)),h instanceof Error&&h.message.includes("HTTP error"))try{let b=h.message.match(/status: (\d+)/),v=b?b[1]:"unknown";l.error(`Upload failed with status ${v}: ${h.message}`)}catch{l.error(`Upload failed: ${h.message}`)}else a.verbose&&l.info(`[Verbose] Non-HTTP error: ${M(h)}`),a.tus?l.error(`Cannot upload bundle please contact support if the issue persists ${M(h)}`):l.error(`Cannot upload bundle ( try again with --tus option) ${M(h)}`);throw a.verbose&&l.info("[Verbose] Cleaning up failed version from database..."),await tO(e,r,n),a.verbose&&l.info("[Verbose] Failed version cleaned up"),h instanceof Error?h:new Error(String(h))}let p=((performance.now()-c)/1e3).toFixed(2);u.stop(`Bundle uploaded \u{1F4AA} in (${p} seconds)`),a.verbose&&(l.info("[Verbose] Upload successful:"),l.info(` - Upload time: ${p} seconds`),l.info(` - Upload method: ${f?"TUS (resumable)":"Standard HTTP PUT"}`),l.info(` - Bundle size: ${Math.floor(i.byteLength/1024)} KB`),l.info("[Verbose] Sending performance event...")),await me(t,{channel:"performance",event:f?"TUS upload zip performance":"Upload zip performance",icon:"\u{1F684}",user_id:o,tags:{"app-id":r,time:p},notify:!1},a.verbose),a.verbose&&l.info("[Verbose] Performance event sent successfully")}async function f7(t,e,r){let{data:n,error:o}=await t.from("channels").select("version ( id, name, deleted )").eq("app_id",e).eq("name",r);if(o){l.error(`Cannot delete linked bundle on upload ${M(o)}`);return}if(n.length===0){l.warn("No linked bundle found in the channel you are trying to upload to");return}let i=n[0].version;if(i.deleted){l.warn("The linked bundle is already deleted");return}let{error:a}=await t.from("app_versions").update({deleted:!0}).eq("id",i.id);if(a){l.error(`Cannot delete linked bundle on upload ${M(a)}`);return}l.info("Linked bundle deleted")}async function d7(t,e,r,n,o,i,a,s,u,c){let{data:f}=await t.rpc("get_app_versions",{apikey:e,name_version:n,appid:s}).single();f||De("Cannot get version id, cannot set channel");let{data:d}=await t.rpc("is_allowed_capgkey",{apikey:e,keymode:["write","all"]}).single();if(d){let{error:p,data:h}=await Jl(t,{name:o,app_id:s,created_by:i,version:f,owner_org:a,...c?{allow_device_self_set:!0}:{}});p&&De(`Cannot set channel, the upload key is not allowed to do that, use the "all" for this. ${M(p)}`);let m=`${u.hostWeb}/app/${s}/channel/${h.id}`;h?.public?l.info("Your update is now available in your public channel \u{1F389}"):h?.id&&l.info(`Link device to this bundle to try it: ${m}`),r&&l.info(`Bundle url: ${m}`)}else l.warn("The upload key is not allowed to set the version in the channel")}async function p7(t,e,r){let{error:n,data:o}=await e.from("apps").select("default_upload_channel").eq("app_id",t).single();return n?(l.warn("Cannot find default upload channel"),l.info(`You can set it here: ${r}/app/${t}/info`),null):o.default_upload_channel}async function Af(t,e,r=!1){r||ee(`Uploading with CLI version ${fr.version}`);let n,o=nt();await Ce();let{s3Region:i,s3Apikey:a,s3Apisecret:s,s3BucketName:u,s3Endpoint:c,s3Port:f,s3SSL:d}=e;e.verbose&&(l.info("[Verbose] Starting upload process with options:"),l.info(` - API key: ${e.apikey?"provided":"from saved key"}`),l.info(` - Path: ${e.path||"from capacitor config"}`),l.info(` - Channel: ${e.channel||"from default upload channel"}`),l.info(` - Bundle: ${e.bundle||"auto-detected"}`),l.info(` - External: ${e.external||"false"}`),l.info(` - Encryption: ${e.keyV2||e.keyDataV2?"v2":e.key===!1?"disabled":"auto"}`),l.info(` - Upload method: ${e.tus?"TUS":e.zip?"ZIP":"auto"}`),l.info(` - Delta updates: ${e.delta||e.partial?"enabled":"disabled"}`));let p=o7(e);e.verbose&&l.info("[Verbose] API key retrieved successfully");let h=await te();e.verbose&&l.info("[Verbose] Capacitor config loaded successfully");let m=await UA();e.verbose&&(l.info("[Verbose] Remote file config retrieved:"),l.info(` - Max upload length: ${Math.floor(m.maxUploadLength/1024/1024)} MB`),l.info(` - Alert upload size: ${Math.floor(m.alertUploadSize/1024/1024)} MB`),l.info(` - TUS upload: ${m.TUSUpload?"enabled":"disabled"}`),l.info(` - TUS upload forced: ${m.TUSUploadForced?"yes":"no"}`),l.info(` - Partial upload: ${m.partialUpload?"enabled":"disabled"}`),l.info(` - Max chunk size: ${Math.floor(m.maxChunkSize/1024/1024)} MB`));let{appid:y,path:b}=i7(t,e,h.config);e.verbose&&l.info(`[Verbose] App ID: ${y}, Build path: ${b}`);let v=await n7(h.config,e);e.verbose&&l.info(`[Verbose] Bundle version: ${v}`);let E=e.external?"external":"r2-direct",g="none";e.autoSetBundle&&(await $s({version:v}),e.verbose&&l.info("[Verbose] Auto-set bundle version in capacitor.config.json")),a7(e,b),e.verbose&&l.info("[Verbose] Code check passed (notifyAppReady found and index.html present)"),l.info(`Upload ${y}@${v} started from path "${b}" to Capgo cloud`);let _=await Dr();e.verbose&&l.info(`[Verbose] Local config loaded: host=${_.hostWeb}`),e.supaHost&&e.supaAnon&&(l.info("Using custom supabase instance from provided options"),_.supaHost=e.supaHost,_.supaKey=e.supaAnon,e.verbose&&l.info(`[Verbose] Custom Supabase host: ${e.supaHost}`));let S=await re(p,e.supaHost,e.supaAnon);e.verbose&&l.info("[Verbose] Supabase client created successfully");let P=await ae(S,p,["write","all","upload"]);e.verbose&&l.info(`[Verbose] User verified successfully, user_id: ${P}`);let F=e.channel||await p7(y,S,_.hostWeb)||"production";e.verbose&&l.info(`[Verbose] Target channel: ${F}`);let B=await Et(S,y);e.verbose&&l.info(`[Verbose] Organization ID: ${B}`),await VA(S,B,fr.version),e.verbose&&l.info("[Verbose] Remote CLI messages checked"),await KA(S,B,p,y,!0),e.verbose&&l.info("[Verbose] Plan validation passed"),e.verbose&&l.info("[Verbose] Trial check completed"),e.verbose&&l.info(`[Verbose] Checking compatibility with channel ${F}...`);let{nativePackages:T,minUpdateVersion:L}=await s7(S,o,e,F,y,v);e.verbose&&(l.info("[Verbose] Compatibility check completed:"),l.info(` - Native packages: ${T?T.length:0}`),l.info(` - Min update version: ${L||"none"}`)),e.verbose&&l.info(`[Verbose] Checking if version ${v} already exists...`);let A=!r,q=await u7(S,y,v,e.versionExistsOk,A);if(e.verbose&&l.info(`[Verbose] Version exists check: ${q?typeof q=="string"?`retry with ${q}`:"yes (skipping)":"no (continuing)"}`),q===!0)return{success:!0,skipped:!0,reason:"VERSION_EXISTS",bundle:v,checksum:null,encryptionMethod:g,storageProvider:E};if(typeof q=="string")return l.info(`Retrying upload with new version: ${q}`),Af(t,{...e,bundle:q},r);e.external&&!e.external.startsWith("https://")&&De(`External link should should start with "https://" current is "${e.external}"`),e.deleteLinkedBundleOnUpload&&(l.warn("Deleting linked bundle on upload is destructive, it will delete the currently linked bundle in the channel you are trying to upload to."),l.warn("Please make sure you want to do this, if you are not sure, please do not use this option."));let j={name:v,app_id:y,session_key:void 0,external_url:e.external,storage_provider:E,min_update_version:L,native_packages:T,owner_org:B,user_id:P,checksum:void 0,link:e.link||null,comment:e.comment||null,key_id:void 0,cli_version:fr.version},Z=null,k="";if(e.external)e.verbose&&l.info(`[Verbose] Using external URL: ${e.external}`),await me(p,{channel:"app",event:"App external",icon:"\u{1F4E4}",user_id:B,tags:{"app-id":y},notify:!1},e.verbose),j.session_key=e.ivSessionKey,j.checksum=e.encryptedChecksum,e.verbose&&(l.info("[Verbose] External bundle configured:"),l.info(` - URL: ${e.external}`),l.info(` - IV Session Key: ${e.ivSessionKey?"provided":"none"}`),l.info(` - Encrypted Checksum: ${e.encryptedChecksum?"provided":"none"}`));else{e.verbose&&l.info(`[Verbose] Preparing bundle file from path: ${b}`);let N=h.config?.plugins?.CapacitorUpdater?.publicKey,{zipped:X,ivSessionKey:U,checksum:oe,sessionKey:Zt,encryptionMethod:z,finalKeyData:Se,keyId:V}=await c7(b,e,p,B,y,m.maxUploadLength,m.alertUploadSize,N);j.session_key=U,j.checksum=oe,j.key_id=V||void 0,n=Zt,Z=X,g=z,k=Se,e.verbose&&(l.info("[Verbose] Bundle prepared:"),l.info(` - Size: ${Math.floor((X?.byteLength??0)/1024)} KB`),l.info(` - Checksum: ${oe}`),l.info(` - Encryption: ${z}`),l.info(` - IV Session Key: ${U?"present":"none"}`),l.info(` - Key ID: ${V||"none"}`)),e.ignoreChecksumCheck||(e.verbose&&l.info("[Verbose] Checking for duplicate checksum..."),await oO(S,y,F,oe),e.verbose&&l.info("[Verbose] Checksum is unique"))}e.zip?(e.tus=!1,e.verbose&&l.info("[Verbose] Upload method: ZIP (explicitly set via --zip)")):!m.TUSUpload||e.external?(e.tus=!1,e.verbose&&l.info("[Verbose] Upload method: Standard (TUS not available or external URL)")):(e.tus=e.tus||m.TUSUploadForced,e.verbose&&l.info(`[Verbose] Upload method: ${e.tus?"TUS (resumable)":"Standard"}`)),!m.partialUpload||e.external?(e.delta=!1,e.verbose&&e.external&&l.info("[Verbose] Delta updates disabled (not available with external URLs)")):(e.delta=e.delta||e.partial||e.deltaOnly||e.partialOnly||m.partialUploadForced,e.verbose&&l.info(`[Verbose] Delta updates: ${e.delta?"enabled":"disabled"}`)),e.encryptPartial&&g==="v1"&&De("You cannot encrypt the partial update if you are not using the v2 encryption method");let D="5.30.0",w="6.30.0",C="7.30.0",O=!1;if(e.delta&&g==="v2"&&!e.encryptPartial){let N=bt((0,Sf.cwd)()),X=await zr("@capgo/capacitor-updater",N,e.packageJson),U;try{U=X?ge(X):void 0}catch{U=void 0}X&&U&&kD(U,ge("6.14.4"))&&(l.info(`Auto-enabling partial update encryption for updater version ${U} (> 6.14.4)`),e.verbose&&l.info("[Verbose] Partial encryption auto-enabled for updater >= 6.14.4"),e.encryptPartial=!0)}if(e.delta&&(e.encryptPartial||g==="v2")){let N=bt((0,Sf.cwd)()),X=await zr("@capgo/capacitor-updater",N,e.packageJson),U;try{U=X?ge(X):void 0}catch{U=void 0}X&&U&&(O=!Hn(U,D,w,C),e.verbose&&O&&l.info(`[Verbose] Using hex checksum format for updater version ${U}`))}e.verbose&&e.delta&&l.info("[Verbose] Preparing delta/partial update manifest...");let R=e.delta?await EF(b,p,B,y,e.encryptPartial?g:"none",k,O):[];e.verbose&&e.delta&&l.info(`[Verbose] Delta manifest prepared with ${R.length} files`),e.verbose&&l.info("[Verbose] Creating version record in database...");let{error:$}=await Mg(S,j);if($&&De(`Cannot add bundle ${M($)}`),e.verbose&&l.info("[Verbose] Version record created successfully"),e.tusChunkSize&&e.tusChunkSize>m.maxChunkSize?(l.error(`Chunk size ${e.tusChunkSize} is greater than the maximum chunk size ${m.maxChunkSize}, using the maximum chunk size`),e.tusChunkSize=m.maxChunkSize):e.tusChunkSize||(e.tusChunkSize=m.maxChunkSize),e.verbose&&l.info(`[Verbose] TUS chunk size: ${Math.floor(e.tusChunkSize/1024/1024)} MB`),Z&&(u||c||i||a||s||f||d)){(!u||!c||!i||!a||!s||!f)&&De("Missing argument, for S3 upload you need to provide a bucket name, endpoint, region, port, API key, and API secret"),l.info("Uploading to S3"),e.verbose&&(l.info("[Verbose] S3 configuration:"),l.info(` - Endpoint: ${c}`),l.info(` - Region: ${i}`),l.info(` - Bucket: ${u}`),l.info(` - Port: ${f}`),l.info(` - SSL: ${d?"enabled":"disabled"}`));let N=d?`https://${c}`:`http://${c}`,X=new zs({endPoint:c,region:i,port:f,pathStyle:!0,bucket:u,accessKey:a,secretKey:s}),U=`${y}-${v}`,oe=encodeURIComponent(U);e.verbose&&l.info(`[Verbose] Uploading to S3 as: ${U}`),await X.putObject(U,Uint8Array.from(Z)),j.external_url=`${N}/${oe}`,j.storage_provider="external",e.verbose&&l.info(`[Verbose] S3 upload complete, external URL: ${j.external_url}`)}else if(Z){!e.partialOnly&&!e.deltaOnly?(e.verbose&&l.info("[Verbose] Starting full bundle upload to Capgo Cloud..."),await l7(p,S,y,v,B,Z,e,e.tusChunkSize)):e.verbose&&l.info("[Verbose] Skipping full bundle upload (delta-only mode)");let N=null;try{e.dryUpload&&(e.delta=!1,e.verbose&&l.info("[Verbose] Dry upload mode: skipping delta upload"));let U=j.session_key&&e.encryptPartial&&n?{sessionKey:n,ivSessionKey:j.session_key}:void 0;e.verbose&&e.delta&&(l.info("[Verbose] Starting delta/partial file upload..."),l.info(` - Manifest entries: ${R.length}`),l.info(` - Encryption: ${U?"enabled":"disabled"}`)),N=e.delta?await _F(p,R,b,y,B,U,e):null,e.verbose&&N&&l.info(`[Verbose] Delta upload complete with ${N.length} files`)}catch(U){if(!!(e.partial||e.delta||e.partialOnly||e.deltaOnly))throw U;l.info(`Failed to upload partial files to capgo cloud. Error: ${M(U)}. This is not a critical error, the bundle has been uploaded without the partial files`),e.verbose&&l.info(`[Verbose] Delta upload error details: ${M(U)}`)}j.storage_provider="r2",j.manifest=N,e.verbose&&l.info("[Verbose] Updating version record with storage provider and manifest...");let{error:X}=await Mg(S,j);X&&De(`Cannot update bundle ${M(X)}`),e.verbose&&l.info("[Verbose] Version record updated successfully")}e.verbose&&l.info("[Verbose] Checking app permissions...");let H=await Me(S,p,y,2);e.verbose&&(l.info("[Verbose] Permissions:"),l.info(` - Upload: ${ia(H,2)?"yes":"no"}`),l.info(` - Write: ${ia(H,3)?"yes":"no"}`),l.info(` - Admin: ${ia(H,4)?"yes":"no"}`)),e.deleteLinkedBundleOnUpload&&ia(H,3)?(e.verbose&&l.info(`[Verbose] Deleting linked bundle in channel ${F}...`),await f7(S,y,F)):e.deleteLinkedBundleOnUpload&&l.warn("Cannot delete linked bundle on upload as a upload organization member"),ia(H,3)?(e.verbose&&l.info(`[Verbose] Setting bundle ${v} to channel ${F}...`),await d7(S,p,!!e.bundleUrl,v,F,P,B,y,_,e.selfAssign),e.verbose&&l.info("[Verbose] Channel updated successfully")):l.warn("Cannot set channel as a upload organization member"),e.verbose&&l.info("[Verbose] Sending upload event..."),await me(p,{channel:"app",event:"App Uploaded",icon:"\u23EB",user_id:B,tags:{"app-id":y},notify:!1},e.verbose);let I={success:!0,bundle:v,checksum:j.checksum??null,encryptionMethod:g,sessionKey:n?n.toString("base64"):void 0,ivSessionKey:typeof j.session_key=="string"?j.session_key:void 0,storageProvider:j.storage_provider};return e.verbose&&(l.info("[Verbose] Upload completed successfully:"),l.info(` - Bundle: ${I.bundle}`),l.info(` - Checksum: ${I.checksum}`),l.info(` - Encryption: ${I.encryptionMethod}`),l.info(` - Storage: ${I.storageProvider}`)),r&&!I.skipped&&K("Time to share your update to the world \u{1F30D}"),I}function h7(t){t.ivSessionKey&&!t.external&&De("You need to provide an external url if you want to use the --iv-session-key option"),t.encryptedChecksum&&!t.external&&De("You need to provide an external url if you want to use the --encrypted-checksum option"),(t.partial||t.delta||t.partialOnly||t.deltaOnly)&&t.external&&De("You cannot use the --partial/--delta/--partial-only/--delta-only option with an external url"),t.tus&&t.external&&De("You cannot use the --tus option with an external url"),t.dryUpload&&t.external&&De("You cannot use the --dry-upload option with an external url"),t.multipart&&t.external&&De("You cannot use the --multipart option with an external url"),t.external&&(t.keyV2||t.keyDataV2)&&De("You cannot set a key if you are uploading to an external url"),t.keyV2&&t.keyDataV2&&De("You cannot set both key-v2 and key-data-v2"),t.external&&(t.s3Region||t.s3Apikey||t.s3Apisecret||t.s3Endpoint||t.s3BucketName||t.s3Port||t.s3SSL)&&De("You cannot set S3 options if you are uploading to an external url, it's automatically handled"),t.encryptedChecksum&&!t.external&&De("You cannot set the --encrypted-checksum option if you are not uploading to an external url"),t.minUpdateVersion&&t.autoMinUpdateVersion&&De("You cannot set both min-update-version and auto-min-update-version, use only one of them")}async function xf(t,e){try{h7(e),await Af(t,e)}catch(r){let n=r instanceof Error?r.message:String(r),o=M(r);e.verbose?l.error(`uploadBundle failed:${o}`):l.error(`uploadBundle failed: ${n}`);let i=n.includes("Cannot upload the same bundle content");if(!e.versionExistsOk)try{if(i){let a=await gt({message:"Would you like to retry the upload?",options:[{value:"ignore",label:"Retry with --ignore-checksum-check (force upload same content)"},{value:"cancel",label:"Cancel upload"}]});if(le(a)||a==="cancel")throw r instanceof Error?r:new Error(String(r));if(a==="ignore")return l.info("\u{1F504} Retrying upload with --ignore-checksum-check..."),xf(t,{...e,ignoreChecksumCheck:!0})}else{let a=await ue({message:"Would you like to retry the upload?"});if(le(a))throw r instanceof Error?r:new Error(String(r));if(a)return l.info("\u{1F504} Retrying upload..."),xf(t,e)}}catch{throw r instanceof Error?r:new Error(String(r))}throw r instanceof Error?r:new Error(String(r))}}var xF=require("node:crypto"),Of=require("node:fs"),AF=require("node:process");var m7=20;function g7(t){console.log(JSON.stringify(t,null,2))}function Xs(t){console.error(M(t))}async function y7(t,e,r=!1){let{json:n}=e,{bundle:o,path:i}=e,a=!n&&!r;try{a&&await Ce();let s=await te(),u=fe(t,s?.config),c=(0,xF.randomUUID)().split("-")[0],f=Ir("",e.packageJson);if(o=o||f||`0.0.1-beta.${c}`,a&&ee(`Zipping ${u}@${o}`),o&&!oa.test(o)){let P=`Your bundle name ${o}, is not valid it should follow semver convention : https://semver.org/`;throw r||(n?Xs({error:"invalid_semver"}):l.error(P)),new Error("Invalid bundle version format")}if(i=i||s?.config?.webDir,!u||!o||!i){let P="Missing argument, you need to provide a appId and a bundle and a path, or be in a capacitor project";throw r||(n?Xs({error:"missing_argument"}):l.error(P)),new Error(P)}if(a&&l.info(`Started from path "${i}"`),typeof e.codeCheck>"u"?!0:e.codeCheck){if(!Ks(i,"notifyAppReady"))throw r||(n?Xs({error:"notifyAppReady_not_in_source_code"}):l.error("notifyAppReady() is missing in the build folder of your app. see: https://capgo.app/docs/plugin/api/#notifyappready")),new Error("notifyAppReady() is missing in build folder");if(!gf(i))throw r||(n?Xs({error:"index_html_not_found"}):l.error(`index.html is missing in the root folder of ${i}`)),new Error("index.html is missing in root folder")}let p=await Yl(i);a&&l.info(`Zipped ${p.byteLength} bytes`);let h=a?Ee():null;h&&h.start("Calculating checksum");let m=bt((0,AF.cwd)()),y=await zr("@capgo/capacitor-updater",m,e.packageJson);if(!y){let P="Cannot find @capgo/capacitor-updater in node_modules, please install it first with your package manager";throw r||l.warn(P),new Error(P)}let b=!1,v;try{v=y?ge(y):void 0}catch{v=void 0}v?b=!Hn(v,void 0,void 0,"7.0.0"):y==="link:@capgo/capacitor-updater"&&(r||l.warn("Using local @capgo/capacitor-updater. Assuming v7"),b=!0);let E=await cn(p,e.keyV2||(0,Of.existsSync)(or)||b?"sha256":"crc32");h&&h.stop(`Checksum ${b?"SHA256":"CRC32"}: ${E}`);let g=Math.floor(p.byteLength/1024/1024);g>m7&&a&&(l.warn(`WARNING !!
|
|
224
224
|
The bundle size is ${g} Mb, this may take a while to download for users
|
|
225
225
|
`),l.warn(`Learn how to optimize your assets https://capgo.app/blog/optimise-your-images-for-updates/
|
|
226
226
|
`));let _=a?Ee():null,S=e.name||`${u}_${o}.zip`;return _&&_.start(`Saving to ${S}`),(0,Of.writeFileSync)(S,p),_&&_.stop(`Saved to ${S}`),a&&K("Done \u2705"),!r&&n&&g7({bundle:o,filename:S,checksum:E}),{bundle:o,filename:S,checksum:E}}catch(s){throw r||(n?Xs(s):l.error(M(s))),s instanceof Error?s:new Error(String(s))}}async function OF(t,e){await y7(t,e,!1)}async function wy(t,e,r,n=!1){n||ee("Create channel"),r.apikey=r.apikey||ne();let o=await te().catch(()=>{});if(e=fe(e,o?.config),!r.apikey)throw n||l.error("Missing API key, you need to provide an API key to upload your bundle"),new Error("Missing API key");if(!e)throw n||l.error("Missing argument, you need to provide a appId, or be in a capacitor project"),new Error("Missing appId");let i=await re(r.apikey,r.supaHost,r.supaAnon);await ae(i,r.apikey,["write","all"]),await Me(i,r.apikey,e,4,n),n||l.info(`Creating channel ${e}#${t} to Capgo`);let a=await Wg(i,e);if(!a)throw n||l.error("Cannot find default version for channel creation, please contact Capgo support \u{1F928}"),new Error("Cannot find default version for channel creation");let s=await Et(i,e),u=await ae(i,r.apikey,["write","all"]),c=await kO(i,{name:t,app_id:e,version:a.id,created_by:u,owner_org:s,allow_device_self_set:r.selfAssign??!1,public:r.default??!1});if(c.error)throw n||l.error(`Cannot create Channel \u{1F640}
|
|
@@ -283,7 +283,7 @@ Error: ${t}`)}}async function Ze(t,e,r){le(t)&&(await Ct("onboarding-v2",e,r,"ca
|
|
|
283
283
|
\u{1F4A1} You can resume the onboarding anytime by running the same command again`),(0,se.exit)()),p==="cancel"&&(await Ct("onboarding-v2",t.gid,e,"canceled-appid-conflict","\u{1F937}"),K(`Bye \u{1F44B}
|
|
284
284
|
\u{1F4A1} You can resume the onboarding anytime by running the same command again`),(0,se.exit)()),p==="custom"){let h=await Mt({message:"Enter your custom app ID (e.g., com.example.myapp):",validate:m=>{if(!m)return"App ID is required";if(m.includes("--"))return'App ID cannot contain "--"';if(!/^[a-z0-9]+(?:\.[\w-]+)+$/i.test(m))return"Invalid format. Use reverse domain notation (e.g., com.example.app)"}});le(h)&&(await Ct("onboarding-v2",t.gid,e,"canceled","\u{1F937}"),K(`Bye \u{1F44B}
|
|
285
285
|
\u{1F4A1} You can resume the onboarding anytime by running the same command again`),(0,se.exit)()),i=h}else{let h=Number.parseInt(p.replace("suggest",""))-1;i=d[h]}l.info(`\u{1F504} Trying with new app ID: ${i}`);continue}throw c}}l.error(`\u274C Maximum retry attempts (${s}) reached`),K(`Bye \u{1F44B}
|
|
286
|
-
\u{1F4A1} You can resume the onboarding anytime by running the same command again`),(0,se.exit)(1)}async function Y7(t,e,r){let n=nt(),o=await ue({message:`Create default channel ${Qs} for ${r} in Capgo?`});if(await Ze(o,t,e),o){let i=Ee();i.start(`Running: ${n.runner} @capgo/cli@latest channel add ${Qs} ${r} --default`),await wy(Qs,r,{default:!0,apikey:e},!0)?i.stop("Channel add Done \u2705"):i.stop("Channel already added \u2705")}else l.info(`If you change your mind, run it for yourself with: "${n.runner} @capgo/cli@latest channel add ${Qs} ${r} --default"`);await At(t,e,"add-channel",r)}async function J7(t){let e=(0,Tr.join)(bt((0,se.cwd)()),
|
|
286
|
+
\u{1F4A1} You can resume the onboarding anytime by running the same command again`),(0,se.exit)(1)}async function Y7(t,e,r){let n=nt(),o=await ue({message:`Create default channel ${Qs} for ${r} in Capgo?`});if(await Ze(o,t,e),o){let i=Ee();i.start(`Running: ${n.runner} @capgo/cli@latest channel add ${Qs} ${r} --default`),await wy(Qs,r,{default:!0,apikey:e},!0)?i.stop("Channel add Done \u2705"):i.stop("Channel already added \u2705")}else l.info(`If you change your mind, run it for yourself with: "${n.runner} @capgo/cli@latest channel add ${Qs} ${r} --default"`);await At(t,e,"add-channel",r)}async function J7(t){let e=(0,Tr.join)(bt((0,se.cwd)()),vr),r=Gn?await Cr(void 0,Gn):await Cr(void 0,e);if(r.size===0||!r.has("@capacitor/core")){l.warn("No adequate dependencies found");let n=await ue({message:"Would you like to select the package.json file manually?"});if(le(n)&&(Yn("Operation cancelled."),(0,se.exit)(1)),n){let o=await ue({message:"Would you like to use a tree selector to choose the package.json file?"});if(le(o)&&(Yn("Operation cancelled."),(0,se.exit)(1)),o){let a=(0,se.cwd)(),s=vr;for(;;){let u=(0,Oe.readdirSync)(a).map(c=>({value:c,label:c}));if(u.push({value:"..",label:".."}),s=await gt({message:"Select package.json file:",options:u}),le(s)&&(Yn("Operation cancelled."),(0,se.exit)(1)),!(0,Oe.statSync)((0,Tr.join)(a,s)).isDirectory()&&s!==vr){l.error("Selected a file that is not a package.json file");continue}if(a=(0,Tr.join)(a,s),s===vr)break}return await Ut(t,a),{dependencies:await Cr(void 0,a),path:a}}let i=await Mt({message:"Enter path to node_modules folder:"});return le(i)&&(Yn("Operation cancelled."),(0,se.exit)(1)),(0,Oe.existsSync)(i)||(l.error(`Path ${i} does not exist`),(0,se.exit)(1)),{dependencies:await Cr(void 0,i),path:i}}}return await Ut(t,e),{dependencies:await Cr(void 0,e),path:e}}var X7="https://capacitorjs.com/docs/updating/5-0",Z7="https://capacitorjs.com/docs/updating/6-0",Q7="https://capacitorjs.com/docs/updating/7-0",eq="https://capacitorjs.com/docs/updating/8-0";async function tq(t,e,r){let n=nt(),o="1.0.0",i=!1,a=await ue({message:`Automatic Install "@capgo/capacitor-updater" dependency in ${r}?`});if(await Ze(a,t,e),a){let s=Ee(),u="latest",{dependencies:c,path:f}=await J7(3);s.start("Checking if @capgo/capacitor-updater is installed"),c.has("@capacitor/core")||(s.stop("Error"),l.warn("Cannot find @capacitor/core in package.json"),K(`Bye \u{1F44B}
|
|
287
287
|
\u{1F4A1} You can resume the onboarding anytime by running the same command again`),(0,se.exit)());let d=c.get("@capacitor/core");if(d||(s.stop("Error"),l.warn("Cannot find @capacitor/core in package.json, please run `capgo init` in a capacitor project"),K(`Bye \u{1F44B}
|
|
288
288
|
\u{1F4A1} You can resume the onboarding anytime by running the same command again`),(0,se.exit)()),d==="latest"?(s.stop(`@capacitor/core version is ${d}, make sure to use a proper version, using Latest as value is not recommended and will lead to unexpected behavior`),K(`Bye \u{1F44B}
|
|
289
289
|
\u{1F4A1} You can resume the onboarding anytime by running the same command again`),(0,se.exit)()):er(ge(d),ge("5.0.0"))?(s.stop("Error"),l.warn(`@capacitor/core version is ${d}, Capgo only supports Capacitor v5 and above, please update to Capacitor v5 minimum: ${X7}`),K(`Bye \u{1F44B}
|
|
@@ -304,7 +304,7 @@ ${Zs};
|
|
|
304
304
|
${Fy};
|
|
305
305
|
|
|
306
306
|
${Zs};
|
|
307
|
-
`)}async function nq(t,e,r){let o=(await
|
|
307
|
+
`)}async function nq(t,e,r){let o=(await Cr()).get("@capacitor/core");o||l.warn("Cannot find @capacitor/core in package.json. It is likely that you are using a monorepo. Please NOTE that encryption is not supported in Capacitor V5.");let i=nt();l.info("\u{1F510} End-to-end encryption"),l.info(" \u2705 Use this for: Banking, healthcare, or apps with legal encryption requirements"),l.info(" \u26A0\uFE0F Note: Makes debugging harder - skip if you don't need it");let a=await ue({message:`Enable end-to-end encryption for ${r} updates?`,initialValue:!1});if(await Ze(a,t,e),a){if(o==="latest"){l.error(`@capacitor/core version is ${o}, make sure to use a proper version, using Latest as value is not recommended and will lead to unexpected behavior`);return}if(o&&er(ge(o),ge("6.0.0"))){l.warn("Encryption is not supported in Capacitor V5.");return}let s=Ee();s.start(`Running: ${i.runner} @capgo/cli@latest key create`),await xy({force:!0},!1)?s.stop("key created \u{1F511}"):(s.stop("Error"),l.warn("Cannot create key \u274C"),K("Bye \u{1F44B}"),(0,se.exit)(1));try{await Zl(!0,t,e),Ct("onboarding-v2",t,e,"Use encryption v2",r)}catch(c){if(!(c instanceof Error&&c.message==="Capacitor sync cancelled"))throw c}}await At(t,e,"add-encryption",r)}async function oq(t,e,r,n){let o=nt(),i=await ue({message:`Automatic build ${r} with "${o.pm} run build" ?`});if(await Ze(i,t,e),i){let a=Ee();a.start("Checking project type");let s=await Wl(),u=await Ug(s);if(a.message(`Running: ${o.pm} run ${u} && ${o.runner} cap sync ${n}`),!Ng()[u]){a.stop("Missing build script"),l.warn(`\u274C Cannot find "${u}" script in package.json`),l.info(`\u{1F4A1} Your package.json needs a "${u}" script to build the app`);let f=await ue({message:"Would you like to skip the build for now and continue? You can build manually later."});if(await Ze(f,t,e),f){l.info(`\u23ED\uFE0F Skipping build step - you can build manually with: ${o.pm} run ${u}`),l.info(`\u{1F4DD} After building, run: ${o.runner} cap sync ${n}`),await At(t,e,"build-project-skipped",r);return}K(`Bye \u{1F44B}
|
|
308
308
|
\u{1F4A1} Add a "${u}" script to package.json and run the command again`),(0,se.exit)()}(0,va.execSync)(`${o.pm} run ${u} && ${o.runner} cap sync ${n}`,ky),a.stop("Build & Sync Done \u2705")}else l.info(`Build yourself with command: ${o.pm} run build && ${o.runner} cap sync ${n}`);await At(t,e,"build-project",r)}async function iq(t,e){l.info("\u{1F4F1} Platform selection for onboarding"),l.info(" This is just for testing during onboarding - your app will work on all platforms");let r=await gt({message:"Which platform do you want to test with during this onboarding?",options:[{value:"ios",label:"IOS"},{value:"android",label:"Android"}]});le(r)&&(await Ct("onboarding-v2",t,e,"canceled","\u{1F937}"),K(`Bye \u{1F44B}
|
|
309
309
|
\u{1F4A1} You can resume the onboarding anytime by running the same command again`),(0,se.exit)());let n=r;return l.info(`\u{1F3AF} Testing with: ${n.toUpperCase()}`),l.info(`\u{1F4A1} Note: Onboarding builds will use ${n} only`),await At(t,e,"select-platform",n),n}async function aq(t,e,r,n){let o=nt(),i=await ue({message:`Run ${r} on ${n.toUpperCase()} device now to test the initial version?`});if(await Ze(i,t,e),i){let a=Ee();a.start(`Running: ${o.runner} cap run ${n}`),await(0,va.spawnSync)(o.runner,["cap","run",n],{stdio:"inherit"}),a.stop("App started \u2705"),l.info(`\u{1F4F1} Your app should now be running on your ${n} device with Capgo integrated`),l.info("\u{1F504} This is your baseline version - we'll create an update next")}else l.info(`If you change your mind, run it for yourself with: ${o.runner} cap run ${n}`);await At(t,e,"run-device",r)}async function sq(t,e,r,n,o){l.info("\u{1F3AF} Now let's test Capgo by making a visible change and deploying an update!");let i=await gt({message:"How would you like to test the update?",options:[{value:"auto",label:"Auto: Let Capgo CLI make a visible change for you"},{value:"manual",label:"Manual: I'll make changes myself"}]});if(le(i)&&(await Ct("onboarding-v2",t,e,"canceled","\u{1F937}"),K(`Bye \u{1F44B}
|
|
310
310
|
\u{1F4A1} You can resume the onboarding anytime by running the same command again`),(0,se.exit)()),i==="auto"){let d=Ee();d.start("Making automatic changes to test Capgo updates");let p=!1,h=["src/index.html","public/index.html","index.html","src/App.vue","src/app/app.component.html","src/app/home/home.page.html","src/main.css","src/style.css","public/style.css"];for(let m of h)if((0,Oe.existsSync)(m)&&!p)try{let y=(0,Oe.readFileSync)(m,"utf8"),b=y;if(m.endsWith(".html")?y.includes("<body>")&&!y.includes("capgo-test-banner")&&(b=y.replace("<body>",`<body>
|
|
@@ -326,9 +326,9 @@ ${y}`)),b!==y){(0,Oe.writeFileSync)(m,b,"utf8"),d.stop(`\u2705 Made test changes
|
|
|
326
326
|
\u{1F4A1} You can resume the onboarding anytime by running the same command again`),(0,se.exit)());let u=n;if(s==="auto")try{let d=ge(n);u=Ht(xn(d,"patch")),l.info(`\u{1F522} Auto-bumped version from ${n} to ${u}`)}catch{u="1.0.1",l.warn(`Could not parse version ${n}, using fallback ${u}`)}else{let d=await Mt({message:`Current version is ${n}. Enter new version:`,validate:p=>{if(!p.match(/^\d+\.\d+\.\d+/))return"Please enter a valid version (x.y.z)"}});le(d)&&(await Ct("onboarding-v2",t,e,"canceled","\u{1F937}"),K(`Bye \u{1F44B}
|
|
327
327
|
\u{1F4A1} You can resume the onboarding anytime by running the same command again`),(0,se.exit)()),u=d}let c=nt(),f=await ue({message:`Build ${r} with changes before uploading? If you need to build yourself please do it now in other terminal, and then select no`});if(await Ze(f,t,e),f){let d=Ee();d.start("Checking project type");let p=await Wl(),h=await Ug(p);if(d.message(`Running: ${c.pm} run ${h} && ${c.runner} cap sync ${o}`),Ng()[h])(0,va.execSync)(`${c.pm} run ${h} && ${c.runner} cap sync ${o}`,ky),d.stop("\u2705 Build with changes completed"),l.info("\u{1F4E6} Your modifications have been built and synced");else{d.stop("Missing build script"),l.warn(`\u274C Cannot find "${h}" script in package.json`),l.info("\u{1F4A1} Build manually in another terminal, then come back and continue");let y=await ue({message:"Have you built the app manually? (If not, we'll skip the build)"});await Ze(y,t,e),y?l.info("\u2705 Great! Continuing with your manual build"):(l.warn("\u26A0\uFE0F Continuing without build - upload may fail if app isn't built"),l.info(`\u{1F4A1} Build with: ${c.pm} run ${h} && ${c.runner} cap sync ${o}`))}}else l.info(`Build yourself with command: ${c.pm} run build && ${c.runner} cap sync ${o}`);return await At(t,e,"add-code-change",r),u}async function uq(t,e,r,n,o){let i=nt(),a=await ue({message:`Upload the updated ${r} bundle (v${n}) to Capgo?`});if(await Ze(a,t,e),a){let s=Ee(),u;s.start(`Running: ${i.runner} @capgo/cli@latest bundle upload ${o?"--delta-only":""}`);let c=LA((0,se.cwd)());Gn&&c&&(l.warn("You are most likely using a monorepo, please provide the path to your package.json file AND node_modules path folder when uploading your bundle"),l.warn(`Example: ${i.runner} @capgo/cli@latest bundle upload --package-json ./packages/my-app/package.json --node-modules ./packages/my-app/node_modules ${o?"--delta-only":""}`),u=(0,Tr.join)(bt((0,se.cwd)()),"node_modules"),l.warn(`Guessed node modules path at: ${u}`),(0,Oe.existsSync)(u)||(l.error("Node modules path does not exist, upload skipped"),K(`Bye \u{1F44B}
|
|
328
328
|
\u{1F4A1} You can resume the onboarding anytime by running the same command again`),(0,se.exit)(1))),(await Af(r,{channel:Qs,apikey:e,packageJson:c?Gn:void 0,nodeModules:c?u:void 0,deltaOnly:o,bundle:n},!1))?.success?(s.stop(`\u2705 Update v${n} uploaded successfully!`),l.info("\u{1F389} Your updated bundle is now available on Capgo")):(s.stop("Error"),l.warn("Upload failed \u274C"),K(`Bye \u{1F44B}
|
|
329
|
-
\u{1F4A1} You can resume the onboarding anytime by running the same command again`),(0,se.exit)())}else l.info(`Upload yourself with command: ${i.runner} @capgo/cli@latest bundle upload`);await At(t,e,"upload",r)}async function cq(t,e,r,n,o){l.info("\u{1F9EA} Time to test the Capgo update system!"),l.info("\u{1F4F1} Go to your device where the app is running"),o?(l.info("\u{1F504} IMPORTANT: Background your app (swipe up/press home button) and then reopen it"),l.info("\u23F1\uFE0F The update should be downloaded and applied automatically")):(l.info("\u{1F4F1} With standard updates, you will need to:"),l.info(" 1. Background the app (swipe up/press home button) to start download"),l.info(" 2. Wait a few seconds for download to complete"),l.info(" 3. Background and foreground again to see the update")),l.info("\u{1F440} You should see your changes appear in the app!");let i=await ue({message:"Monitor Capgo logs to verify the update worked?"});await Ze(i,t,e),i?(l.info(`\u{1F4CA} Watching logs from ${r}...`),l.info("\u{1F504} Please background and reopen your app now to trigger the update"),await Dm("onboarding-v2",e,r,e,t)):l.info(`\u{1F4CA} Check logs manually at ${n}/app/${r}/logs to verify the update`),await At(t,e,"test-update",r)}async function s2(t,e,r){let n=nt();ee("Capgo onboarding \u{1F6EB}"),await Ce();let o=!r.supaAnon||!r.supaHost?await te():await $s({statsUrl:`${r.supaHost}/functions/v1/stats`,channelUrl:`${r.supaHost}/functions/v1/channel_self`,updateUrl:`${r.supaHost}/functions/v1/updates`,localApiFiles:`${r.supaHost}/functions/v1`,localS3:!0,localSupa:r.supaHost,localSupaAnon:r.supaAnon}),i=await
|
|
329
|
+
\u{1F4A1} You can resume the onboarding anytime by running the same command again`),(0,se.exit)())}else l.info(`Upload yourself with command: ${i.runner} @capgo/cli@latest bundle upload`);await At(t,e,"upload",r)}async function cq(t,e,r,n,o){l.info("\u{1F9EA} Time to test the Capgo update system!"),l.info("\u{1F4F1} Go to your device where the app is running"),o?(l.info("\u{1F504} IMPORTANT: Background your app (swipe up/press home button) and then reopen it"),l.info("\u23F1\uFE0F The update should be downloaded and applied automatically")):(l.info("\u{1F4F1} With standard updates, you will need to:"),l.info(" 1. Background the app (swipe up/press home button) to start download"),l.info(" 2. Wait a few seconds for download to complete"),l.info(" 3. Background and foreground again to see the update")),l.info("\u{1F440} You should see your changes appear in the app!");let i=await ue({message:"Monitor Capgo logs to verify the update worked?"});await Ze(i,t,e),i?(l.info(`\u{1F4CA} Watching logs from ${r}...`),l.info("\u{1F504} Please background and reopen your app now to trigger the update"),await Dm("onboarding-v2",e,r,e,t)):l.info(`\u{1F4CA} Check logs manually at ${n}/app/${r}/logs to verify the update`),await At(t,e,"test-update",r)}async function s2(t,e,r){let n=nt();ee("Capgo onboarding \u{1F6EB}"),await Ce();let o=!r.supaAnon||!r.supaHost?await te():await $s({statsUrl:`${r.supaHost}/functions/v1/stats`,channelUrl:`${r.supaHost}/functions/v1/channel_self`,updateUrl:`${r.supaHost}/functions/v1/updates`,localApiFiles:`${r.supaHost}/functions/v1`,localS3:!0,localSupa:r.supaHost,localSupaAnon:r.supaAnon}),i=await Dr();e=fe(e,o?.config),r.apikey=t||ne(),e===void 0&&(e=await Mt({message:"Enter your appId:"}),le(e)&&(Yn("Operation cancelled."),(0,se.exit)(1)));let a=Ee();(!o2()||t)&&(a.start(`Running: ${n.runner} @capgo/cli@latest login ***`),await Oy(r.apikey,r,!1),a.stop("Login Done \u2705"));let s=await re(r.apikey,r.supaHost,r.supaAnon);await ae(s,r.apikey,["upload","all","read","write"]);let u=await sa(s,["admin","super_admin"]),c=u.gid,f=await z7(c,r.apikey)??0,d=Ir(void 0,Gn)||"1.0.0",p=!1,h=d,m="ios";try{if(f<1&&(await G7(c,r.apikey),Ut(1)),f<2&&(e=await W7(u,r.apikey,e,r),Ut(2)),f<3&&(await Y7(c,r.apikey,e),Ut(3)),f<4){let y=await tq(c,r.apikey,e);d=y.pkgVersion,h=d,p=y.delta,Ut(4)}f<5&&(await rq(c,r.apikey,e),Ut(5)),f<6&&(await nq(c,r.apikey,e),Ut(6)),f<7&&(m=await iq(c,r.apikey),Ut(7)),f<8&&(await oq(c,r.apikey,e,m),Ut(8)),f<9&&(await aq(c,r.apikey,e,m),Ut(9)),f<10&&(h=await sq(c,r.apikey,e,d,m),Ut(10)),f<11&&(await uq(c,r.apikey,e,h,p),Ut(11)),f<12&&(await cq(c,r.apikey,e,i.hostWeb,p),Ut(12)),f<13&&Ut(13),await At(c,r.apikey,"done",e),K7()}catch(y){console.error(y),l.error(`Error during onboarding.
|
|
330
330
|
if the error persists please contact support@capgo.app
|
|
331
|
-
Or use manual installation: https://capgo.app/docs/getting-started/add-an-app/`),(0,se.exit)(1)}l.info("Welcome onboard \u2708\uFE0F!"),l.info("Your Capgo update system is setup"),l.info(`Next time use \`${n.runner} @capgo/cli@latest bundle upload\` to only upload your bundle`),l.info(`If you have any issue try to use the debug command \`${n.runner} @capgo/cli@latest app debug\``),K("Bye \u{1F44B}"),(0,se.exit)()}async function lq(t,e=!1){e||ee("Adding organization"),await Ce();let r={...t,apikey:t.apikey||ne()};if(!r.apikey)throw e||l.error("Missing API key, you need to provide an API key to add an organization"),new Error("Missing API key");let n=await re(r.apikey,r.supaHost,r.supaAnon),o=await ae(n,r.apikey,["write","all"]),{name:i,email:a}=r;if(!e&&!i){let c=await Mt({message:"Organization name:",placeholder:"My Organization"});if(le(c))throw l.error("Canceled adding organization"),new Error("Organization creation cancelled");i=c}if(!e&&!a){let c=await Mt({message:"Management email:",placeholder:"admin@example.com"});if(le(c))throw l.error("Canceled adding organization"),new Error("Organization creation cancelled");a=c}if(!i||!a)throw e||l.error("Missing arguments, you need to provide an organization name and management email"),new Error("Missing organization name or management email");e||l.info(`Adding organization "${i}" to Capgo`);let{data:s,error:u}=await n.from("orgs").insert({name:i,management_email:a,created_by:o}).select().single();if(u)throw e||l.error(`Could not add organization ${M(u)}`),new Error(`Could not add organization: ${M(u)}`);return await me(r.apikey,{channel:"organization",event:"Organization Created",icon:"\u{1F3E2}",user_id:s.id,tags:{"org-name":i},notify:!1}).catch(()=>{}),e||(l.success(`Organization "${i}" added to Capgo`),K("Done \u2705")),s}async function Py(t){await lq(t,!1)}async function fq(t,e,r=!1){r||ee("Deleting organization"),await Ce();let n={...e,apikey:e.apikey||ne()};if(!n.apikey)throw r||l.error("Missing API key, you need to provide an API key to delete an organization"),new Error("Missing API key");if(!t)throw r||l.error("Missing argument, you need to provide an organization ID"),new Error("Missing organization id");let o=await re(n.apikey,n.supaHost,n.supaAnon),i=await ae(o,n.apikey,["write","all"]),{data:a,error:s}=await o.from("orgs").select("created_by, name").eq("id",t).single();if(s||!a)throw r||l.error(`Cannot get organization details ${M(s)}`),new Error(`Cannot get organization details: ${M(s)}`);if(a.created_by!==i){if(r)throw new Error("Deleting an organization is restricted to the organization owner");l.warn("Deleting an organization is restricted to the organization owner"),l.warn("You are not the owner of this organization"),l.warn("It's strongly recommended that you do not continue!");let c=await gt({message:"Do you want to continue?",options:[{label:"Yes",value:"yes"},{label:"No",value:"no"}]});if(le(c)||c==="no")throw l.error("Canceled deleting the organization"),new Error("Organization deletion cancelled")}if(!r&&!n.autoConfirm){let c=await ue({message:`Are you sure you want to delete organization "${a.name}"? This action cannot be undone.`});if(le(c)||!c)throw l.error("Canceled deleting the organization"),new Error("Organization deletion cancelled")}r||l.info(`Deleting organization "${a.name}"`);let{error:u}=await o.from("orgs").delete().eq("id",t);if(u)throw r||l.error(`Could not delete organization ${M(u)}`),new Error(`Could not delete organization: ${M(u)}`);return await me(n.apikey,{channel:"organization",event:"Organization Deleted",icon:"\u{1F5D1}\uFE0F",user_id:t,tags:{"org-name":a.name},notify:!1}).catch(()=>{}),r||(l.success(`Organization "${a.name}" deleted from Capgo`),K("Done \u2705")),!0}async function $y(t,e){await fq(t,e,!1)}function dq(t,e){if(e)return;if(!t.length){l.error("No organizations found");return}let r=new ut;r.headers=["Name","ID","Role","Apps"],r.rows=[];for(let n of t.toReversed())r.rows.push([n.name??"Unknown",n.gid,n.role,n.app_count?.toString()||"0"]);l.success("Organizations"),l.success(r.toString())}async function pq(t,e=!1){e||ee("List organizations"),await Ce();let r={...t,apikey:t.apikey||ne()};if(!r.apikey)throw e||l.error("Missing API key, you need to provide an API key to list organizations"),new Error("Missing API key");let n=await re(r.apikey,r.supaHost,r.supaAnon);await ae(n,r.apikey,["read","write","all"]),e||l.info("Getting organizations from Capgo");let{error:o,data:i}=await n.rpc("get_orgs_v6");if(o)throw e||l.error(`Cannot get organizations ${M(o)}`),new Error(`Cannot get organizations: ${M(o)}`);let a=i||[];return e||(l.info(`Organizations found: ${a.length}`),dq(a,e),K("Done \u2705")),a}async function Iy(t){await pq(t,!1)}async function hq(t,e,r=!1){r||ee("Updating organization"),await Ce();let n={...e,apikey:e.apikey||ne()};if(!n.apikey)throw r||l.error("Missing API key, you need to provide an API key to update an organization"),new Error("Missing API key");if(!t)throw r||l.error("Missing argument, you need to provide an organization ID"),new Error("Missing organization id");let o=await re(n.apikey,n.supaHost,n.supaAnon);await ae(o,n.apikey,["write","all"]);let{data:i,error:a}=await o.from("orgs").select("name, management_email, created_by").eq("id",t).single();if(a||!i)throw r||l.error(`Cannot get organization details ${M(a)}`),new Error(`Cannot get organization details: ${M(a)}`);let{name:s,email:u}=n;if(!r&&!s){let f=await Mt({message:"New organization name:",placeholder:i.name||"My Organization"});if(le(f))throw l.error("Canceled updating organization"),new Error("Organization update cancelled");s=f}if(!r&&!u){let f=await Mt({message:"Management email:",placeholder:i.management_email||"admin@example.com"});if(le(f))throw l.error("Canceled updating organization"),new Error("Organization update cancelled");u=f}if(!s||!u)throw r||l.error("Missing arguments, you need to provide an organization name and management email"),new Error("Missing organization name or management email");r||l.info(`Updating organization "${t}"`);let{error:c}=await o.from("orgs").update({name:s,management_email:u}).eq("id",t);if(c)throw r||l.error(`Could not update organization ${M(c)}`),new Error(`Could not update organization: ${M(c)}`);return await me(n.apikey,{channel:"organization",event:"Organization Updated",icon:"\u270F\uFE0F",user_id:t,tags:{"org-name":s},notify:!1}).catch(()=>{}),r||(l.success("Organization updated"),K("Done \u2705")),{orgId:t,name:s,email:u}}async function Ty(t,e){await hq(t,e,!1)}async function mq(t,e=!1){e||ee("Getting user id");let r={...t,apikey:t.apikey||ne()};if(!r.apikey)throw e||l.error("Missing API key, you need to provide an API key to fetch the user id"),new Error("Missing API key");try{let n=await re(r.apikey,r.supaHost,r.supaAnon),o=await ae(n,r.apikey,["read","all","write"]);return e||K(`Done \u2705: ${o}`),o}catch(n){throw e||l.error(`Error getting user id ${M(n)}`),n instanceof Error?n:new Error(String(n))}}async function u2(t){await mq(t,!1)}var G={apikey:"API key to link to your account",supaHost:"Custom Supabase host URL (for self-hosting or Capgo development)",supaAnon:"Custom Supabase anon key (for self-hosting)",packageJson:"Paths to package.json files for monorepos (comma-separated)",nodeModules:"Paths to node_modules directories for monorepos (comma-separated)",verbose:"Enable verbose output with detailed logging"};at.name(
|
|
331
|
+
Or use manual installation: https://capgo.app/docs/getting-started/add-an-app/`),(0,se.exit)(1)}l.info("Welcome onboard \u2708\uFE0F!"),l.info("Your Capgo update system is setup"),l.info(`Next time use \`${n.runner} @capgo/cli@latest bundle upload\` to only upload your bundle`),l.info(`If you have any issue try to use the debug command \`${n.runner} @capgo/cli@latest app debug\``),K("Bye \u{1F44B}"),(0,se.exit)()}async function lq(t,e=!1){e||ee("Adding organization"),await Ce();let r={...t,apikey:t.apikey||ne()};if(!r.apikey)throw e||l.error("Missing API key, you need to provide an API key to add an organization"),new Error("Missing API key");let n=await re(r.apikey,r.supaHost,r.supaAnon),o=await ae(n,r.apikey,["write","all"]),{name:i,email:a}=r;if(!e&&!i){let c=await Mt({message:"Organization name:",placeholder:"My Organization"});if(le(c))throw l.error("Canceled adding organization"),new Error("Organization creation cancelled");i=c}if(!e&&!a){let c=await Mt({message:"Management email:",placeholder:"admin@example.com"});if(le(c))throw l.error("Canceled adding organization"),new Error("Organization creation cancelled");a=c}if(!i||!a)throw e||l.error("Missing arguments, you need to provide an organization name and management email"),new Error("Missing organization name or management email");e||l.info(`Adding organization "${i}" to Capgo`);let{data:s,error:u}=await n.from("orgs").insert({name:i,management_email:a,created_by:o}).select().single();if(u)throw e||l.error(`Could not add organization ${M(u)}`),new Error(`Could not add organization: ${M(u)}`);return await me(r.apikey,{channel:"organization",event:"Organization Created",icon:"\u{1F3E2}",user_id:s.id,tags:{"org-name":i},notify:!1}).catch(()=>{}),e||(l.success(`Organization "${i}" added to Capgo`),K("Done \u2705")),s}async function Py(t){await lq(t,!1)}async function fq(t,e,r=!1){r||ee("Deleting organization"),await Ce();let n={...e,apikey:e.apikey||ne()};if(!n.apikey)throw r||l.error("Missing API key, you need to provide an API key to delete an organization"),new Error("Missing API key");if(!t)throw r||l.error("Missing argument, you need to provide an organization ID"),new Error("Missing organization id");let o=await re(n.apikey,n.supaHost,n.supaAnon),i=await ae(o,n.apikey,["write","all"]),{data:a,error:s}=await o.from("orgs").select("created_by, name").eq("id",t).single();if(s||!a)throw r||l.error(`Cannot get organization details ${M(s)}`),new Error(`Cannot get organization details: ${M(s)}`);if(a.created_by!==i){if(r)throw new Error("Deleting an organization is restricted to the organization owner");l.warn("Deleting an organization is restricted to the organization owner"),l.warn("You are not the owner of this organization"),l.warn("It's strongly recommended that you do not continue!");let c=await gt({message:"Do you want to continue?",options:[{label:"Yes",value:"yes"},{label:"No",value:"no"}]});if(le(c)||c==="no")throw l.error("Canceled deleting the organization"),new Error("Organization deletion cancelled")}if(!r&&!n.autoConfirm){let c=await ue({message:`Are you sure you want to delete organization "${a.name}"? This action cannot be undone.`});if(le(c)||!c)throw l.error("Canceled deleting the organization"),new Error("Organization deletion cancelled")}r||l.info(`Deleting organization "${a.name}"`);let{error:u}=await o.from("orgs").delete().eq("id",t);if(u)throw r||l.error(`Could not delete organization ${M(u)}`),new Error(`Could not delete organization: ${M(u)}`);return await me(n.apikey,{channel:"organization",event:"Organization Deleted",icon:"\u{1F5D1}\uFE0F",user_id:t,tags:{"org-name":a.name},notify:!1}).catch(()=>{}),r||(l.success(`Organization "${a.name}" deleted from Capgo`),K("Done \u2705")),!0}async function $y(t,e){await fq(t,e,!1)}function dq(t,e){if(e)return;if(!t.length){l.error("No organizations found");return}let r=new ut;r.headers=["Name","ID","Role","Apps"],r.rows=[];for(let n of t.toReversed())r.rows.push([n.name??"Unknown",n.gid,n.role,n.app_count?.toString()||"0"]);l.success("Organizations"),l.success(r.toString())}async function pq(t,e=!1){e||ee("List organizations"),await Ce();let r={...t,apikey:t.apikey||ne()};if(!r.apikey)throw e||l.error("Missing API key, you need to provide an API key to list organizations"),new Error("Missing API key");let n=await re(r.apikey,r.supaHost,r.supaAnon);await ae(n,r.apikey,["read","write","all"]),e||l.info("Getting organizations from Capgo");let{error:o,data:i}=await n.rpc("get_orgs_v6");if(o)throw e||l.error(`Cannot get organizations ${M(o)}`),new Error(`Cannot get organizations: ${M(o)}`);let a=i||[];return e||(l.info(`Organizations found: ${a.length}`),dq(a,e),K("Done \u2705")),a}async function Iy(t){await pq(t,!1)}async function hq(t,e,r=!1){r||ee("Updating organization"),await Ce();let n={...e,apikey:e.apikey||ne()};if(!n.apikey)throw r||l.error("Missing API key, you need to provide an API key to update an organization"),new Error("Missing API key");if(!t)throw r||l.error("Missing argument, you need to provide an organization ID"),new Error("Missing organization id");let o=await re(n.apikey,n.supaHost,n.supaAnon);await ae(o,n.apikey,["write","all"]);let{data:i,error:a}=await o.from("orgs").select("name, management_email, created_by").eq("id",t).single();if(a||!i)throw r||l.error(`Cannot get organization details ${M(a)}`),new Error(`Cannot get organization details: ${M(a)}`);let{name:s,email:u}=n;if(!r&&!s){let f=await Mt({message:"New organization name:",placeholder:i.name||"My Organization"});if(le(f))throw l.error("Canceled updating organization"),new Error("Organization update cancelled");s=f}if(!r&&!u){let f=await Mt({message:"Management email:",placeholder:i.management_email||"admin@example.com"});if(le(f))throw l.error("Canceled updating organization"),new Error("Organization update cancelled");u=f}if(!s||!u)throw r||l.error("Missing arguments, you need to provide an organization name and management email"),new Error("Missing organization name or management email");r||l.info(`Updating organization "${t}"`);let{error:c}=await o.from("orgs").update({name:s,management_email:u}).eq("id",t);if(c)throw r||l.error(`Could not update organization ${M(c)}`),new Error(`Could not update organization: ${M(c)}`);return await me(n.apikey,{channel:"organization",event:"Organization Updated",icon:"\u270F\uFE0F",user_id:t,tags:{"org-name":s},notify:!1}).catch(()=>{}),r||(l.success("Organization updated"),K("Done \u2705")),{orgId:t,name:s,email:u}}async function Ty(t,e){await hq(t,e,!1)}async function mq(t,e=!1){e||ee("Getting user id");let r={...t,apikey:t.apikey||ne()};if(!r.apikey)throw e||l.error("Missing API key, you need to provide an API key to fetch the user id"),new Error("Missing API key");try{let n=await re(r.apikey,r.supaHost,r.supaAnon),o=await ae(n,r.apikey,["read","all","write"]);return e||K(`Done \u2705: ${o}`),o}catch(n){throw e||l.error(`Error getting user id ${M(n)}`),n instanceof Error?n:new Error(String(n))}}async function u2(t){await mq(t,!1)}var G={apikey:"API key to link to your account",supaHost:"Custom Supabase host URL (for self-hosting or Capgo development)",supaAnon:"Custom Supabase anon key (for self-hosting)",packageJson:"Paths to package.json files for monorepos (comma-separated)",nodeModules:"Paths to node_modules directories for monorepos (comma-separated)",verbose:"Enable verbose output with detailed logging"};at.name(fr.name).description("\u{1F4E6} Manage packages and bundle versions in Capgo Cloud").version(fr.version,"-v, --version","output the current version");at.command("init [apikey] [appId]").alias("i").description(`\u{1F680} Initialize a new app in Capgo Cloud with step-by-step guidance.
|
|
332
332
|
|
|
333
333
|
This includes adding code for updates, building, uploading your app, and verifying update functionality.
|
|
334
334
|
|