@capgo/cli 7.114.0 → 7.114.1
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 +3 -3
- package/dist/package.json +1 -1
- package/dist/src/sdk.js +3 -3
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -91,7 +91,7 @@ Expecting one of '${B.join("', '")}'`);if(this._lifeCycleHooks[A])this._lifeCycl
|
|
|
91
91
|
`),this.outputHelp({error:!0});let B=Q||{},I=B.exitCode||1,E=B.code||"commander.error";this._exit(I,E,A)}_parseOptionsEnv(){this.options.forEach((A)=>{if(A.envVar&&A.envVar in a0.env){let Q=A.attributeName();if(this.getOptionValue(Q)===void 0||["default","config","env"].includes(this.getOptionValueSource(Q)))if(A.required||A.optional)this.emit(`optionEnv:${A.name()}`,a0.env[A.envVar]);else this.emit(`optionEnv:${A.name()}`)}})}_parseOptionsImplied(){let A=new yfA(this.options),Q=(B)=>{return this.getOptionValue(B)!==void 0&&!["default","implied"].includes(this.getOptionValueSource(B))};this.options.filter((B)=>B.implied!==void 0&&Q(B.attributeName())&&A.valueFromOption(this.getOptionValue(B.attributeName()),B)).forEach((B)=>{Object.keys(B.implied).filter((I)=>!Q(I)).forEach((I)=>{this.setOptionValueWithSource(I,B.implied[I],"implied")})})}missingArgument(A){let Q=`error: missing required argument '${A}'`;this.error(Q,{code:"commander.missingArgument"})}optionMissingArgument(A){let Q=`error: option '${A.flags}' argument missing`;this.error(Q,{code:"commander.optionMissingArgument"})}missingMandatoryOptionValue(A){let Q=`error: required option '${A.flags}' not specified`;this.error(Q,{code:"commander.missingMandatoryOptionValue"})}_conflictingOption(A,Q){let B=(D)=>{let $=D.attributeName(),G=this.getOptionValue($),Y=this.options.find((X)=>X.negate&&$===X.attributeName()),H=this.options.find((X)=>!X.negate&&$===X.attributeName());if(Y&&(Y.presetArg===void 0&&G===!1||Y.presetArg!==void 0&&G===Y.presetArg))return Y;return H||D},I=(D)=>{let $=B(D),G=$.attributeName();if(this.getOptionValueSource(G)==="env")return`environment variable '${$.envVar}'`;return`option '${$.flags}'`},E=`error: ${I(A)} cannot be used with ${I(Q)}`;this.error(E,{code:"commander.conflictingOption"})}unknownOption(A){if(this._allowUnknownOption)return;let Q="";if(A.startsWith("--")&&this._showSuggestionAfterError){let I=[],E=this;do{let D=E.createHelp().visibleOptions(E).filter(($)=>$.long).map(($)=>$.long);I=I.concat(D),E=E.parent}while(E&&!E._enablePositionalOptions);Q=_0A(A,I)}let B=`error: unknown option '${A}'${Q}`;this.error(B,{code:"commander.unknownOption"})}_excessArguments(A){if(this._allowExcessArguments)return;let Q=this.registeredArguments.length,B=Q===1?"":"s",E=`error: too many arguments${this.parent?` for '${this.name()}'`:""}. Expected ${Q} argument${B} but got ${A.length}.`;this.error(E,{code:"commander.excessArguments"})}unknownCommand(){let A=this.args[0],Q="";if(this._showSuggestionAfterError){let I=[];this.createHelp().visibleCommands(this).forEach((E)=>{if(I.push(E.name()),E.alias())I.push(E.alias())}),Q=_0A(A,I)}let B=`error: unknown command '${A}'${Q}`;this.error(B,{code:"commander.unknownCommand"})}version(A,Q,B){if(A===void 0)return this._version;this._version=A,Q=Q||"-V, --version",B=B||"output the version number";let I=this.createOption(Q,B);return this._versionOptionName=I.attributeName(),this._registerOption(I),this.on("option:"+I.name(),()=>{this._outputConfiguration.writeOut(`${A}
|
|
92
92
|
`),this._exit(0,"commander.version",A)}),this}description(A,Q){if(A===void 0&&Q===void 0)return this._description;if(this._description=A,Q)this._argsDescription=Q;return this}summary(A){if(A===void 0)return this._summary;return this._summary=A,this}alias(A){if(A===void 0)return this._aliases[0];let Q=this;if(this.commands.length!==0&&this.commands[this.commands.length-1]._executableHandler)Q=this.commands[this.commands.length-1];if(A===Q._name)throw Error("Command alias can't be the same as its name");let B=this.parent?._findCommand(A);if(B){let I=[B.name()].concat(B.aliases()).join("|");throw Error(`cannot add alias '${A}' to command '${this.name()}' as already have command '${I}'`)}return Q._aliases.push(A),this}aliases(A){if(A===void 0)return this._aliases;return A.forEach((Q)=>this.alias(Q)),this}usage(A){if(A===void 0){if(this._usage)return this._usage;let Q=this.registeredArguments.map((B)=>{return xfA(B)});return[].concat(this.options.length||this._helpOption!==null?"[options]":[],this.commands.length?"[command]":[],this.registeredArguments.length?Q:[]).join(" ")}return this._usage=A,this}name(A){if(A===void 0)return this._name;return this._name=A,this}helpGroup(A){if(A===void 0)return this._helpGroupHeading??"";return this._helpGroupHeading=A,this}commandsGroup(A){if(A===void 0)return this._defaultCommandGroup??"";return this._defaultCommandGroup=A,this}optionsGroup(A){if(A===void 0)return this._defaultOptionGroup??"";return this._defaultOptionGroup=A,this}_initOptionGroup(A){if(this._defaultOptionGroup&&!A.helpGroupHeading)A.helpGroup(this._defaultOptionGroup)}_initCommandGroup(A){if(this._defaultCommandGroup&&!A.helpGroup())A.helpGroup(this._defaultCommandGroup)}nameFromFilename(A){return this._name=JJ.basename(A,JJ.extname(A)),this}executableDir(A){if(A===void 0)return this._executableDir;return this._executableDir=A,this}helpInformation(A){let Q=this.createHelp(),B=this._getOutputContext(A);Q.prepareContext({error:B.error,helpWidth:B.helpWidth,outputHasColors:B.hasColors});let I=Q.formatHelp(this,Q);if(B.hasColors)return I;return this._outputConfiguration.stripColor(I)}_getOutputContext(A){A=A||{};let Q=!!A.error,B,I,E;if(Q)B=($)=>this._outputConfiguration.writeErr($),I=this._outputConfiguration.getErrHasColors(),E=this._outputConfiguration.getErrHelpWidth();else B=($)=>this._outputConfiguration.writeOut($),I=this._outputConfiguration.getOutHasColors(),E=this._outputConfiguration.getOutHelpWidth();return{error:Q,write:($)=>{if(!I)$=this._outputConfiguration.stripColor($);return B($)},hasColors:I,helpWidth:E}}outputHelp(A){let Q;if(typeof A==="function")Q=A,A=void 0;let B=this._getOutputContext(A),I={error:B.error,write:B.write,command:this};this._getCommandAndAncestors().reverse().forEach((D)=>D.emit("beforeAllHelp",I)),this.emit("beforeHelp",I);let E=this.helpInformation({error:B.error});if(Q){if(E=Q(E),typeof E!=="string"&&!Buffer.isBuffer(E))throw Error("outputHelp callback must return a string or a Buffer")}if(B.write(E),this._getHelpOption()?.long)this.emit(this._getHelpOption().long);this.emit("afterHelp",I),this._getCommandAndAncestors().forEach((D)=>D.emit("afterAllHelp",I))}helpOption(A,Q){if(typeof A==="boolean"){if(A){if(this._helpOption===null)this._helpOption=void 0;if(this._defaultOptionGroup)this._initOptionGroup(this._getHelpOption())}else this._helpOption=null;return this}if(this._helpOption=this.createOption(A??"-h, --help",Q??"display help for command"),A||Q)this._initOptionGroup(this._helpOption);return this}_getHelpOption(){if(this._helpOption===void 0)this.helpOption(void 0,void 0);return this._helpOption}addHelpOption(A){return this._helpOption=A,this._initOptionGroup(A),this}help(A){this.outputHelp(A);let Q=Number(a0.exitCode??0);if(Q===0&&A&&typeof A!=="function"&&A.error)Q=1;this._exit(Q,"commander.help","(outputHelp)")}addHelpText(A,Q){let B=["beforeAll","before","after","afterAll"];if(!B.includes(A))throw Error(`Unexpected value for position to addHelpText.
|
|
93
93
|
Expecting one of '${B.join("', '")}'`);let I=`${A}Help`;return this.on(I,(E)=>{let D;if(typeof Q==="function")D=Q({error:E.error,command:E.command});else D=Q;if(D)E.write(`${D}
|
|
94
|
-
`)}),this}_outputHelpIfRequested(A){let Q=this._getHelpOption();if(Q&&A.find((I)=>Q.is(I)))this.outputHelp(),this._exit(0,"commander.helpDisplayed","(outputHelp)")}}function k0A(A){return A.map((Q)=>{if(!Q.startsWith("--inspect"))return Q;let B,I="127.0.0.1",E="9229",D;if((D=Q.match(/^(--inspect(-brk)?)$/))!==null)B=D[1];else if((D=Q.match(/^(--inspect(-brk|-port)?)=([^:]+)$/))!==null)if(B=D[1],/^\d+$/.test(D[3]))E=D[3];else I=D[3];else if((D=Q.match(/^(--inspect(-brk|-port)?)=([^:]+):(\d+)$/))!==null)B=D[1],I=D[3],E=D[4];if(B&&E!=="0")return`${B}=${I}:${parseInt(E)+1}`;return Q})}function fg(){if(a0.env.NO_COLOR||a0.env.FORCE_COLOR==="0"||a0.env.FORCE_COLOR==="false")return!1;if(a0.env.FORCE_COLOR||a0.env.CLICOLOR_FORCE!==void 0)return!0;return}ffA.Command=hg;ffA.useColor=fg});var y0A=v((lfA)=>{var{Argument:x0A}=W2(),{Command:ug}=v0A(),{CommanderError:mfA,InvalidArgumentError:g0A}=oW(),{Help:cfA}=xg(),{Option:b0A}=gg();lfA.program=new ug;lfA.createCommand=(A)=>new ug(A);lfA.createOption=(A,Q)=>new b0A(A,Q);lfA.createArgument=(A,Q)=>new x0A(A,Q);lfA.Command=ug;lfA.Option=b0A;lfA.Argument=x0A;lfA.Help=cfA;lfA.CommanderError=mfA;lfA.InvalidArgumentError=g0A;lfA.InvalidOptionArgumentError=g0A});var fE;var YJ=_A(()=>{fE={name:"@capgo/cli",type:"module",version:"7.114.0",description:"A CLI to upload to capgo servers",author:"Martin martin@capgo.app",license:"Apache 2.0",homepage:"https://github.com/Cap-go/capgo/tree/main/cli#readme",repository:{type:"git",url:"git+https://github.com/Cap-go/capgo.git",directory:"cli"},bugs:{url:"https://github.com/Cap-go/capgo/issues"},keywords:["appflow alternative","ionic","capacitor","auto update","live update","capgo","cli","upload","capgo-cli","sdk","tanstack-intent"],exports:{".":{import:"./dist/index.js",require:"./dist/index.js"},"./sdk":{types:"./dist/src/sdk.d.ts",import:"./dist/src/sdk.js"}},main:"dist/index.js",types:"dist/src/index.d.ts",bin:{capgo:"dist/index.js"},files:["!skills/_artifacts","dist","skills"],engines:{npm:">=8.0.0",node:">=20.0.0"},scripts:{build:"tsc && bun build.mjs",dev:"NODE_ENV=development ncc build","no-debug":"node dist/index.js","dev-build":"SUPA_DB=development ncc build",pack:"pkg",types:"bunx --bun supabase gen types typescript --project-id=xvwzpoazmxkqosrdewyv > src/types/supabase.types.ts",typecheck:"tsgo --project tsconfig.tsgo.json --noEmit",lint:"bun run lint:ox","lint:ox":"oxlint --config ../.oxlintrc.json src","lint:fix":"oxlint --config ../.oxlintrc.json --fix src","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:android-service-account-validation":"bun test/test-android-service-account-validation.mjs","test:build-zip-filter":"bun test/test-build-zip-filter.mjs","test:checksum":"bun test/test-checksum-algorithm.mjs","test:build-needed":"bun test/test-build-needed.mjs","test:ci-prompts":"bun test/test-ci-prompts.mjs","test:ci-secrets":"bun test/test-ci-secrets.mjs","test:android-onboarding-progress":"bun test/test-android-onboarding-progress.mjs","test:onboarding-telemetry":"bun test/test-onboarding-telemetry.mjs","test:v2-event-migration":"bun test/test-v2-event-migration.mjs","test:analytics":"bun test/test-analytics.mjs","test:analytics-error-category":"bun test/test-analytics-error-category.mjs","test:analytics-org-resolver":"bun test/test-analytics-org-resolver.mjs","test:mcp-analytics":"bun test/test-mcp-analytics.mjs","test:app-created-source":"bun test/test-app-created-source.mjs","test:doctor-analytics":"bun test/test-doctor-analytics.mjs","test:posthog-exception":"bun test/test-posthog-exception.mjs","test:onboarding-recovery":"bun test/test-onboarding-recovery.mjs","test:onboarding-progress":"bun test/test-onboarding-progress.mjs","test:onboarding-run-targets":"bun test/test-onboarding-run-targets.mjs","test:run-device-command":"bun test/test-run-device-command.mjs","test:init-app-conflict":"bun test/test-init-app-conflict.mjs","test:init-guardrails":"bun test/test-init-guardrails.mjs","test:prompt-preferences":"bun test/test-prompt-preferences.mjs","test:esm-sdk":"node test/test-sdk-esm.mjs","test:mcp":"node test/test-mcp.mjs","test:version-detection":"node test/test-get-installed-version.mjs","test:version-detection:setup":"./test/fixtures/setup-test-projects.sh","test:platform-paths":"bun test/test-platform-paths.mjs","test:payload-split":"bun test/test-payload-split.mjs","test:macos-signing":"bun test/test-macos-signing.mjs","test:apple-api-import-helpers":"bun test/test-apple-api-import-helpers.mjs","test:manifest-path-encoding":"bun test/test-manifest-path-encoding.mjs",test:"bun run build && bun run test:version-detection:setup && 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:android-service-account-validation && bun run test:build-zip-filter && bun run test:checksum && bun run test:build-needed && bun run test:ci-prompts && bun run test:ci-secrets && bun run test:android-onboarding-progress && bun run test:onboarding-telemetry && bun run test:v2-event-migration && bun run test:analytics && bun run test:analytics-error-category && bun run test:analytics-org-resolver && bun run test:mcp-analytics && bun run test:app-created-source && bun run test:doctor-analytics && bun run test:posthog-exception && bun run test:build-platform-selection && bun run test:onboarding-recovery && bun run test:onboarding-progress && bun run test:onboarding-run-targets && bun run test:run-device-command && bun run test:init-app-conflict && bun run test:init-guardrails && bun run test:prompt-preferences && bun run test:esm-sdk && bun run test:mcp && bun run test:version-detection && bun run test:platform-paths && bun run test:payload-split && bun run test:manifest-path-encoding && bun run test:macos-signing && bun run test:apple-api-import-helpers && bun run test:ai-log-capture && bun run test:ai-analyze-flow && bun run test:ai-render-markdown","test:build-platform-selection":"bun test/test-build-platform-selection.mjs","test:ai-log-capture":"bun test/test-ai-log-capture.mjs","test:ai-analyze-flow":"bun test/test-ai-analyze-flow.mjs","test:ai-render-markdown":"bun test/test-ai-render-markdown.mjs"},dependencies:{"@inkjs/ui":"^2.0.0",ink:"^7.0.4","ink-spinner":"^5.0.0",jsonwebtoken:"^9.0.3","node-forge":"^1.4.0",qrcode:"^1.5.4",react:"^19.2.6"},devDependencies:{"@antfu/eslint-config":"^9.0.0","@bradenmacdonald/s3-lite-client":"npm:@jsr/bradenmacdonald__s3-lite-client@0.9.6","@capacitor/cli":"^8.3.4","@capgo/find-package-manager":"^0.0.18","@clack/prompts":"^1.4.0","@modelcontextprotocol/sdk":"^1.29.0","@sauber/table":"npm:@jsr/sauber__table","@std/semver":"npm:@jsr/std__semver@1.0.8","@supabase/supabase-js":"^2.106.2","@tanstack/intent":"^0.0.41","@types/adm-zip":"^0.5.8","@types/jsonwebtoken":"^9.0.10","@types/node":"^25.9.1","@types/node-forge":"^1.3.14","@types/prettyjson":"^0.0.33","@types/qrcode":"^1.5.6","@types/react":"^19.2.15","@types/tmp":"^0.2.6","@types/ws":"^8.18.1","@typescript/native-preview":"7.0.0-dev.20260526.1","@vercel/ncc":"^0.38.4","adm-zip":"^0.5.17","ci-info":"^4.4.0",commander:"^14.0.3",eslint:"^10.4.0","git-format-staged":"4.0.1",husky:"^9.1.7","is-wsl":"^3.1.1",micromatch:"^4.0.8",open:"^11.0.0",oxlint:"^1.67.0",partysocket:"^1.1.19",prettyjson:"^1.2.5",tmp:"^0.2.6","tus-js-client":"^4.3.1",typescript:"^6.0.3",ws:"^8.21.0",zod:"^4.4.3"}}});var h0A=v((nfQ,EhA)=>{EhA.exports=[{name:"Agola CI",constant:"AGOLA",env:"AGOLA_GIT_REF",pr:"AGOLA_PULL_REQUEST_ID"},{name:"Alpic",constant:"ALPIC",env:"ALPIC_HOST"},{name:"Appcircle",constant:"APPCIRCLE",env:"AC_APPCIRCLE",pr:{env:"AC_GIT_PR",ne:"false"}},{name:"AppVeyor",constant:"APPVEYOR",env:"APPVEYOR",pr:"APPVEYOR_PULL_REQUEST_NUMBER"},{name:"AWS CodeBuild",constant:"CODEBUILD",env:"CODEBUILD_BUILD_ARN",pr:{env:"CODEBUILD_WEBHOOK_EVENT",any:["PULL_REQUEST_CREATED","PULL_REQUEST_UPDATED","PULL_REQUEST_REOPENED"]}},{name:"Azure Pipelines",constant:"AZURE_PIPELINES",env:"TF_BUILD",pr:{BUILD_REASON:"PullRequest"}},{name:"Bamboo",constant:"BAMBOO",env:"bamboo_planKey"},{name:"Bitbucket Pipelines",constant:"BITBUCKET",env:"BITBUCKET_COMMIT",pr:"BITBUCKET_PR_ID"},{name:"Bitrise",constant:"BITRISE",env:"BITRISE_IO",pr:"BITRISE_PULL_REQUEST"},{name:"Buddy",constant:"BUDDY",env:"BUDDY_WORKSPACE_ID",pr:"BUDDY_EXECUTION_PULL_REQUEST_ID"},{name:"Buildkite",constant:"BUILDKITE",env:"BUILDKITE",pr:{env:"BUILDKITE_PULL_REQUEST",ne:"false"}},{name:"CircleCI",constant:"CIRCLE",env:"CIRCLECI",pr:"CIRCLE_PULL_REQUEST"},{name:"Cirrus CI",constant:"CIRRUS",env:"CIRRUS_CI",pr:"CIRRUS_PR"},{name:"Cloudflare Pages",constant:"CLOUDFLARE_PAGES",env:"CF_PAGES"},{name:"Cloudflare Workers",constant:"CLOUDFLARE_WORKERS",env:"WORKERS_CI"},{name:"Codefresh",constant:"CODEFRESH",env:"CF_BUILD_ID",pr:{any:["CF_PULL_REQUEST_NUMBER","CF_PULL_REQUEST_ID"]}},{name:"Codemagic",constant:"CODEMAGIC",env:"CM_BUILD_ID",pr:"CM_PULL_REQUEST"},{name:"Codeship",constant:"CODESHIP",env:{CI_NAME:"codeship"}},{name:"Drone",constant:"DRONE",env:"DRONE",pr:{DRONE_BUILD_EVENT:"pull_request"}},{name:"dsari",constant:"DSARI",env:"DSARI"},{name:"Earthly",constant:"EARTHLY",env:"EARTHLY_CI"},{name:"Expo Application Services",constant:"EAS",env:"EAS_BUILD"},{name:"Gerrit",constant:"GERRIT",env:"GERRIT_PROJECT"},{name:"Gitea Actions",constant:"GITEA_ACTIONS",env:"GITEA_ACTIONS"},{name:"GitHub Actions",constant:"GITHUB_ACTIONS",env:"GITHUB_ACTIONS",pr:{GITHUB_EVENT_NAME:"pull_request"}},{name:"GitLab CI",constant:"GITLAB",env:"GITLAB_CI",pr:"CI_MERGE_REQUEST_ID"},{name:"GoCD",constant:"GOCD",env:"GO_PIPELINE_LABEL"},{name:"Google Cloud Build",constant:"GOOGLE_CLOUD_BUILD",env:"BUILDER_OUTPUT"},{name:"Harness CI",constant:"HARNESS",env:"HARNESS_BUILD_ID"},{name:"Heroku",constant:"HEROKU",env:{env:"NODE",includes:"/app/.heroku/node/bin/node"}},{name:"Hudson",constant:"HUDSON",env:"HUDSON_URL"},{name:"Jenkins",constant:"JENKINS",env:["JENKINS_URL","BUILD_ID"],pr:{any:["ghprbPullId","CHANGE_ID"]}},{name:"LayerCI",constant:"LAYERCI",env:"LAYERCI",pr:"LAYERCI_PULL_REQUEST"},{name:"Magnum CI",constant:"MAGNUM",env:"MAGNUM"},{name:"Netlify CI",constant:"NETLIFY",env:"NETLIFY",pr:{env:"PULL_REQUEST",ne:"false"}},{name:"Nevercode",constant:"NEVERCODE",env:"NEVERCODE",pr:{env:"NEVERCODE_PULL_REQUEST",ne:"false"}},{name:"Prow",constant:"PROW",env:"PROW_JOB_ID"},{name:"ReleaseHub",constant:"RELEASEHUB",env:"RELEASE_BUILD_ID"},{name:"Render",constant:"RENDER",env:"RENDER",pr:{IS_PULL_REQUEST:"true"}},{name:"Sail CI",constant:"SAIL",env:"SAILCI",pr:"SAIL_PULL_REQUEST_NUMBER"},{name:"Screwdriver",constant:"SCREWDRIVER",env:"SCREWDRIVER",pr:{env:"SD_PULL_REQUEST",ne:"false"}},{name:"Semaphore",constant:"SEMAPHORE",env:"SEMAPHORE",pr:"PULL_REQUEST_NUMBER"},{name:"Sourcehut",constant:"SOURCEHUT",env:{CI_NAME:"sourcehut"}},{name:"Strider CD",constant:"STRIDER",env:"STRIDER"},{name:"TaskCluster",constant:"TASKCLUSTER",env:["TASK_ID","RUN_ID"]},{name:"TeamCity",constant:"TEAMCITY",env:"TEAMCITY_VERSION"},{name:"Travis CI",constant:"TRAVIS",env:"TRAVIS",pr:{env:"TRAVIS_PULL_REQUEST",ne:"false"}},{name:"Vela",constant:"VELA",env:"VELA",pr:{VELA_PULL_REQUEST:"1"}},{name:"Vercel",constant:"VERCEL",env:{any:["NOW_BUILDER","VERCEL"]},pr:"VERCEL_GIT_PULL_REQUEST_ID"},{name:"Visual Studio App Center",constant:"APPCENTER",env:"APPCENTER_BUILD_ID"},{name:"Woodpecker",constant:"WOODPECKER",env:{CI:"woodpecker"},pr:{CI_BUILD_EVENT:"pull_request"}},{name:"Xcode Cloud",constant:"XCODE_CLOUD",env:"CI_XCODE_PROJECT",pr:"CI_PULL_REQUEST_NUMBER"},{name:"Xcode Server",constant:"XCODE_SERVER",env:"XCS"}]});var dg=v((cg)=>{var u0A=h0A(),tE=process.env;Object.defineProperty(cg,"_vendors",{value:u0A.map(function(A){return A.constant})});cg.name=null;cg.isPR=null;cg.id=null;if(tE.CI!=="false")u0A.forEach(function(A){let B=(Array.isArray(A.env)?A.env:[A.env]).every(function(I){return m0A(I)});if(cg[A.constant]=B,!B)return;cg.name=A.name,cg.isPR=DhA(A),cg.id=A.constant});cg.isCI=!!(tE.CI!=="false"&&(tE.BUILD_ID||tE.BUILD_NUMBER||tE.CI||tE.CI_APP_ID||tE.CI_BUILD_ID||tE.CI_BUILD_NUMBER||tE.CI_NAME||tE.CONTINUOUS_INTEGRATION||tE.RUN_ID||cg.name||!1));function m0A(A){if(typeof A==="string")return!!tE[A];if("env"in A)return tE[A.env]&&tE[A.env].includes(A.includes);if("any"in A)return A.any.some(function(Q){return!!tE[Q]});return Object.keys(A).every(function(Q){return tE[Q]===A[Q]})}function DhA(A){switch(typeof A.pr){case"string":return!!tE[A.pr];case"object":if("env"in A.pr)if("any"in A.pr)return A.pr.any.some(function(Q){return tE[A.pr.env]===Q});else return A.pr.env in tE&&tE[A.pr.env]!==A.pr.ne;else if("any"in A.pr)return A.pr.any.some(function(Q){return!!tE[Q]});else return m0A(A.pr);default:return null}}});import{homedir as d0A,platform as GhA,release as JhA}from"node:os";import{arch as YhA,cwd as p0A,env as h5,version as UhA}from"node:process";function aW(A){return A==="1"||A?.toLowerCase()==="true"||A?.toLowerCase()==="yes"}function FhA(){if(aW(h5.CAPGO_DISABLE_TELEMETRY)||aW(h5.CAPGO_DISABLE_POSTHOG))return;return h5.CAPGO_CLI_POSTHOG_API_KEY?.trim()||h5.POSTHOG_API_KEY?.trim()||XhA}function WhA(A){let Q=A.replace(/\/+$/,"");if(Q.endsWith("/i/v0/e"))return`${Q}/`;let B=Q.replace(/\/capture$/,"/");return new URL("i/v0/e/",B.endsWith("/")?B:`${B}/`).toString()}function KhA(A){if(A instanceof Error)return{cause:A.cause,message:A.message,name:A.name||"Error",stack:A.stack};if(typeof A==="string")return{message:A,name:"Error",stack:void 0};try{return{message:JSON.stringify(A)??String(A),name:"Error",stack:void 0}}catch{return{message:String(A),name:"Error",stack:void 0}}}function qhA(A){let Q=A,B=p0A(),I=d0A();if(B)Q=Q.replaceAll(B,"<cwd>");if(I)Q=Q.replaceAll(I,"~");return Q}function ZhA(A){let Q=A,B=p0A(),I=d0A();if(B)Q=Q.replaceAll(B,"<cwd>");if(I)Q=Q.replaceAll(I,"~");return Q.replace(/<cwd>\/[^\s"',)]+/g,"<cwd>/<path>").replace(/~\/[^\s"',)]+/g,"~/<path>").replace(/[\w.%+-]+@[\w.-]+\.[A-Z]{2,}/gi,"<email>").replace(/(https?:\/\/)([^/\s:@]+):([^/\s@]+)@/gi,"$1<redacted>@").replace(/\b[a-z][\w-]*(?:\.[\w-]+){2,}\b/gi,"<app_id>").replace(/\b[a-z]:\\[^\s"',)]+/gi,"<path>").replace(/(^|[\s"'(])\/[^\s"',)]+/g,"$1<path>").replace(/(--(?:token|api[-_]?key|key|password|secret|private[-_]?key|jwt|session|auth)(?:=|\s+))("[^"]+"|'[^']+'|\S+)/gi,"$1<redacted>").replace(/\b((?:token|api[-_]?key|password|secret|authorization)\s*[:=]\s*)[^\s,;]+/gi,"$1<redacted>")}function MhA(A,Q){let B=A?.split(`
|
|
94
|
+
`)}),this}_outputHelpIfRequested(A){let Q=this._getHelpOption();if(Q&&A.find((I)=>Q.is(I)))this.outputHelp(),this._exit(0,"commander.helpDisplayed","(outputHelp)")}}function k0A(A){return A.map((Q)=>{if(!Q.startsWith("--inspect"))return Q;let B,I="127.0.0.1",E="9229",D;if((D=Q.match(/^(--inspect(-brk)?)$/))!==null)B=D[1];else if((D=Q.match(/^(--inspect(-brk|-port)?)=([^:]+)$/))!==null)if(B=D[1],/^\d+$/.test(D[3]))E=D[3];else I=D[3];else if((D=Q.match(/^(--inspect(-brk|-port)?)=([^:]+):(\d+)$/))!==null)B=D[1],I=D[3],E=D[4];if(B&&E!=="0")return`${B}=${I}:${parseInt(E)+1}`;return Q})}function fg(){if(a0.env.NO_COLOR||a0.env.FORCE_COLOR==="0"||a0.env.FORCE_COLOR==="false")return!1;if(a0.env.FORCE_COLOR||a0.env.CLICOLOR_FORCE!==void 0)return!0;return}ffA.Command=hg;ffA.useColor=fg});var y0A=v((lfA)=>{var{Argument:x0A}=W2(),{Command:ug}=v0A(),{CommanderError:mfA,InvalidArgumentError:g0A}=oW(),{Help:cfA}=xg(),{Option:b0A}=gg();lfA.program=new ug;lfA.createCommand=(A)=>new ug(A);lfA.createOption=(A,Q)=>new b0A(A,Q);lfA.createArgument=(A,Q)=>new x0A(A,Q);lfA.Command=ug;lfA.Option=b0A;lfA.Argument=x0A;lfA.Help=cfA;lfA.CommanderError=mfA;lfA.InvalidArgumentError=g0A;lfA.InvalidOptionArgumentError=g0A});var fE;var YJ=_A(()=>{fE={name:"@capgo/cli",type:"module",version:"7.114.1",description:"A CLI to upload to capgo servers",author:"Martin martin@capgo.app",license:"Apache 2.0",homepage:"https://github.com/Cap-go/capgo/tree/main/cli#readme",repository:{type:"git",url:"git+https://github.com/Cap-go/capgo.git",directory:"cli"},bugs:{url:"https://github.com/Cap-go/capgo/issues"},keywords:["appflow alternative","ionic","capacitor","auto update","live update","capgo","cli","upload","capgo-cli","sdk","tanstack-intent"],exports:{".":{import:"./dist/index.js",require:"./dist/index.js"},"./sdk":{types:"./dist/src/sdk.d.ts",import:"./dist/src/sdk.js"}},main:"dist/index.js",types:"dist/src/index.d.ts",bin:{capgo:"dist/index.js"},files:["!skills/_artifacts","dist","skills"],engines:{npm:">=8.0.0",node:">=20.0.0"},scripts:{build:"tsc && bun build.mjs",dev:"NODE_ENV=development ncc build","no-debug":"node dist/index.js","dev-build":"SUPA_DB=development ncc build",pack:"pkg",types:"bunx --bun supabase gen types typescript --project-id=xvwzpoazmxkqosrdewyv > src/types/supabase.types.ts",typecheck:"tsgo --project tsconfig.tsgo.json --noEmit",lint:"bun run lint:ox","lint:ox":"oxlint --config ../.oxlintrc.json src","lint:fix":"oxlint --config ../.oxlintrc.json --fix src","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:android-service-account-validation":"bun test/test-android-service-account-validation.mjs","test:build-zip-filter":"bun test/test-build-zip-filter.mjs","test:checksum":"bun test/test-checksum-algorithm.mjs","test:build-needed":"bun test/test-build-needed.mjs","test:ci-prompts":"bun test/test-ci-prompts.mjs","test:ci-secrets":"bun test/test-ci-secrets.mjs","test:android-onboarding-progress":"bun test/test-android-onboarding-progress.mjs","test:onboarding-telemetry":"bun test/test-onboarding-telemetry.mjs","test:v2-event-migration":"bun test/test-v2-event-migration.mjs","test:analytics":"bun test/test-analytics.mjs","test:analytics-error-category":"bun test/test-analytics-error-category.mjs","test:analytics-org-resolver":"bun test/test-analytics-org-resolver.mjs","test:mcp-analytics":"bun test/test-mcp-analytics.mjs","test:app-created-source":"bun test/test-app-created-source.mjs","test:doctor-analytics":"bun test/test-doctor-analytics.mjs","test:posthog-exception":"bun test/test-posthog-exception.mjs","test:onboarding-recovery":"bun test/test-onboarding-recovery.mjs","test:onboarding-progress":"bun test/test-onboarding-progress.mjs","test:onboarding-run-targets":"bun test/test-onboarding-run-targets.mjs","test:run-device-command":"bun test/test-run-device-command.mjs","test:init-app-conflict":"bun test/test-init-app-conflict.mjs","test:init-guardrails":"bun test/test-init-guardrails.mjs","test:prompt-preferences":"bun test/test-prompt-preferences.mjs","test:esm-sdk":"node test/test-sdk-esm.mjs","test:mcp":"node test/test-mcp.mjs","test:version-detection":"node test/test-get-installed-version.mjs","test:version-detection:setup":"./test/fixtures/setup-test-projects.sh","test:platform-paths":"bun test/test-platform-paths.mjs","test:payload-split":"bun test/test-payload-split.mjs","test:macos-signing":"bun test/test-macos-signing.mjs","test:apple-api-import-helpers":"bun test/test-apple-api-import-helpers.mjs","test:manifest-path-encoding":"bun test/test-manifest-path-encoding.mjs",test:"bun run build && bun run test:version-detection:setup && 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:android-service-account-validation && bun run test:build-zip-filter && bun run test:checksum && bun run test:build-needed && bun run test:ci-prompts && bun run test:ci-secrets && bun run test:android-onboarding-progress && bun run test:onboarding-telemetry && bun run test:v2-event-migration && bun run test:analytics && bun run test:analytics-error-category && bun run test:analytics-org-resolver && bun run test:mcp-analytics && bun run test:app-created-source && bun run test:doctor-analytics && bun run test:posthog-exception && bun run test:build-platform-selection && bun run test:onboarding-recovery && bun run test:onboarding-progress && bun run test:onboarding-run-targets && bun run test:run-device-command && bun run test:init-app-conflict && bun run test:init-guardrails && bun run test:prompt-preferences && bun run test:esm-sdk && bun run test:mcp && bun run test:version-detection && bun run test:platform-paths && bun run test:payload-split && bun run test:manifest-path-encoding && bun run test:macos-signing && bun run test:apple-api-import-helpers && bun run test:ai-log-capture && bun run test:ai-analyze-flow && bun run test:ai-render-markdown","test:build-platform-selection":"bun test/test-build-platform-selection.mjs","test:ai-log-capture":"bun test/test-ai-log-capture.mjs","test:ai-analyze-flow":"bun test/test-ai-analyze-flow.mjs","test:ai-render-markdown":"bun test/test-ai-render-markdown.mjs"},dependencies:{"@inkjs/ui":"^2.0.0",ink:"^7.0.4","ink-spinner":"^5.0.0",jsonwebtoken:"^9.0.3","node-forge":"^1.4.0",qrcode:"^1.5.4",react:"^19.2.6"},devDependencies:{"@antfu/eslint-config":"^9.0.0","@bradenmacdonald/s3-lite-client":"npm:@jsr/bradenmacdonald__s3-lite-client@0.9.6","@capacitor/cli":"^8.3.4","@capgo/find-package-manager":"^0.0.18","@clack/prompts":"^1.4.0","@modelcontextprotocol/sdk":"^1.29.0","@sauber/table":"npm:@jsr/sauber__table","@std/semver":"npm:@jsr/std__semver@1.0.8","@supabase/supabase-js":"^2.106.2","@tanstack/intent":"^0.0.41","@types/adm-zip":"^0.5.8","@types/jsonwebtoken":"^9.0.10","@types/node":"^25.9.1","@types/node-forge":"^1.3.14","@types/prettyjson":"^0.0.33","@types/qrcode":"^1.5.6","@types/react":"^19.2.15","@types/tmp":"^0.2.6","@types/ws":"^8.18.1","@typescript/native-preview":"7.0.0-dev.20260526.1","@vercel/ncc":"^0.38.4","adm-zip":"^0.5.17","ci-info":"^4.4.0",commander:"^14.0.3",eslint:"^10.4.0","git-format-staged":"4.0.1",husky:"^9.1.7","is-wsl":"^3.1.1",micromatch:"^4.0.8",open:"^11.0.0",oxlint:"^1.67.0",partysocket:"^1.1.19",prettyjson:"^1.2.5",tmp:"^0.2.6","tus-js-client":"^4.3.1",typescript:"^6.0.3",ws:"^8.21.0",zod:"^4.4.3"}}});var h0A=v((nfQ,EhA)=>{EhA.exports=[{name:"Agola CI",constant:"AGOLA",env:"AGOLA_GIT_REF",pr:"AGOLA_PULL_REQUEST_ID"},{name:"Alpic",constant:"ALPIC",env:"ALPIC_HOST"},{name:"Appcircle",constant:"APPCIRCLE",env:"AC_APPCIRCLE",pr:{env:"AC_GIT_PR",ne:"false"}},{name:"AppVeyor",constant:"APPVEYOR",env:"APPVEYOR",pr:"APPVEYOR_PULL_REQUEST_NUMBER"},{name:"AWS CodeBuild",constant:"CODEBUILD",env:"CODEBUILD_BUILD_ARN",pr:{env:"CODEBUILD_WEBHOOK_EVENT",any:["PULL_REQUEST_CREATED","PULL_REQUEST_UPDATED","PULL_REQUEST_REOPENED"]}},{name:"Azure Pipelines",constant:"AZURE_PIPELINES",env:"TF_BUILD",pr:{BUILD_REASON:"PullRequest"}},{name:"Bamboo",constant:"BAMBOO",env:"bamboo_planKey"},{name:"Bitbucket Pipelines",constant:"BITBUCKET",env:"BITBUCKET_COMMIT",pr:"BITBUCKET_PR_ID"},{name:"Bitrise",constant:"BITRISE",env:"BITRISE_IO",pr:"BITRISE_PULL_REQUEST"},{name:"Buddy",constant:"BUDDY",env:"BUDDY_WORKSPACE_ID",pr:"BUDDY_EXECUTION_PULL_REQUEST_ID"},{name:"Buildkite",constant:"BUILDKITE",env:"BUILDKITE",pr:{env:"BUILDKITE_PULL_REQUEST",ne:"false"}},{name:"CircleCI",constant:"CIRCLE",env:"CIRCLECI",pr:"CIRCLE_PULL_REQUEST"},{name:"Cirrus CI",constant:"CIRRUS",env:"CIRRUS_CI",pr:"CIRRUS_PR"},{name:"Cloudflare Pages",constant:"CLOUDFLARE_PAGES",env:"CF_PAGES"},{name:"Cloudflare Workers",constant:"CLOUDFLARE_WORKERS",env:"WORKERS_CI"},{name:"Codefresh",constant:"CODEFRESH",env:"CF_BUILD_ID",pr:{any:["CF_PULL_REQUEST_NUMBER","CF_PULL_REQUEST_ID"]}},{name:"Codemagic",constant:"CODEMAGIC",env:"CM_BUILD_ID",pr:"CM_PULL_REQUEST"},{name:"Codeship",constant:"CODESHIP",env:{CI_NAME:"codeship"}},{name:"Drone",constant:"DRONE",env:"DRONE",pr:{DRONE_BUILD_EVENT:"pull_request"}},{name:"dsari",constant:"DSARI",env:"DSARI"},{name:"Earthly",constant:"EARTHLY",env:"EARTHLY_CI"},{name:"Expo Application Services",constant:"EAS",env:"EAS_BUILD"},{name:"Gerrit",constant:"GERRIT",env:"GERRIT_PROJECT"},{name:"Gitea Actions",constant:"GITEA_ACTIONS",env:"GITEA_ACTIONS"},{name:"GitHub Actions",constant:"GITHUB_ACTIONS",env:"GITHUB_ACTIONS",pr:{GITHUB_EVENT_NAME:"pull_request"}},{name:"GitLab CI",constant:"GITLAB",env:"GITLAB_CI",pr:"CI_MERGE_REQUEST_ID"},{name:"GoCD",constant:"GOCD",env:"GO_PIPELINE_LABEL"},{name:"Google Cloud Build",constant:"GOOGLE_CLOUD_BUILD",env:"BUILDER_OUTPUT"},{name:"Harness CI",constant:"HARNESS",env:"HARNESS_BUILD_ID"},{name:"Heroku",constant:"HEROKU",env:{env:"NODE",includes:"/app/.heroku/node/bin/node"}},{name:"Hudson",constant:"HUDSON",env:"HUDSON_URL"},{name:"Jenkins",constant:"JENKINS",env:["JENKINS_URL","BUILD_ID"],pr:{any:["ghprbPullId","CHANGE_ID"]}},{name:"LayerCI",constant:"LAYERCI",env:"LAYERCI",pr:"LAYERCI_PULL_REQUEST"},{name:"Magnum CI",constant:"MAGNUM",env:"MAGNUM"},{name:"Netlify CI",constant:"NETLIFY",env:"NETLIFY",pr:{env:"PULL_REQUEST",ne:"false"}},{name:"Nevercode",constant:"NEVERCODE",env:"NEVERCODE",pr:{env:"NEVERCODE_PULL_REQUEST",ne:"false"}},{name:"Prow",constant:"PROW",env:"PROW_JOB_ID"},{name:"ReleaseHub",constant:"RELEASEHUB",env:"RELEASE_BUILD_ID"},{name:"Render",constant:"RENDER",env:"RENDER",pr:{IS_PULL_REQUEST:"true"}},{name:"Sail CI",constant:"SAIL",env:"SAILCI",pr:"SAIL_PULL_REQUEST_NUMBER"},{name:"Screwdriver",constant:"SCREWDRIVER",env:"SCREWDRIVER",pr:{env:"SD_PULL_REQUEST",ne:"false"}},{name:"Semaphore",constant:"SEMAPHORE",env:"SEMAPHORE",pr:"PULL_REQUEST_NUMBER"},{name:"Sourcehut",constant:"SOURCEHUT",env:{CI_NAME:"sourcehut"}},{name:"Strider CD",constant:"STRIDER",env:"STRIDER"},{name:"TaskCluster",constant:"TASKCLUSTER",env:["TASK_ID","RUN_ID"]},{name:"TeamCity",constant:"TEAMCITY",env:"TEAMCITY_VERSION"},{name:"Travis CI",constant:"TRAVIS",env:"TRAVIS",pr:{env:"TRAVIS_PULL_REQUEST",ne:"false"}},{name:"Vela",constant:"VELA",env:"VELA",pr:{VELA_PULL_REQUEST:"1"}},{name:"Vercel",constant:"VERCEL",env:{any:["NOW_BUILDER","VERCEL"]},pr:"VERCEL_GIT_PULL_REQUEST_ID"},{name:"Visual Studio App Center",constant:"APPCENTER",env:"APPCENTER_BUILD_ID"},{name:"Woodpecker",constant:"WOODPECKER",env:{CI:"woodpecker"},pr:{CI_BUILD_EVENT:"pull_request"}},{name:"Xcode Cloud",constant:"XCODE_CLOUD",env:"CI_XCODE_PROJECT",pr:"CI_PULL_REQUEST_NUMBER"},{name:"Xcode Server",constant:"XCODE_SERVER",env:"XCS"}]});var dg=v((cg)=>{var u0A=h0A(),tE=process.env;Object.defineProperty(cg,"_vendors",{value:u0A.map(function(A){return A.constant})});cg.name=null;cg.isPR=null;cg.id=null;if(tE.CI!=="false")u0A.forEach(function(A){let B=(Array.isArray(A.env)?A.env:[A.env]).every(function(I){return m0A(I)});if(cg[A.constant]=B,!B)return;cg.name=A.name,cg.isPR=DhA(A),cg.id=A.constant});cg.isCI=!!(tE.CI!=="false"&&(tE.BUILD_ID||tE.BUILD_NUMBER||tE.CI||tE.CI_APP_ID||tE.CI_BUILD_ID||tE.CI_BUILD_NUMBER||tE.CI_NAME||tE.CONTINUOUS_INTEGRATION||tE.RUN_ID||cg.name||!1));function m0A(A){if(typeof A==="string")return!!tE[A];if("env"in A)return tE[A.env]&&tE[A.env].includes(A.includes);if("any"in A)return A.any.some(function(Q){return!!tE[Q]});return Object.keys(A).every(function(Q){return tE[Q]===A[Q]})}function DhA(A){switch(typeof A.pr){case"string":return!!tE[A.pr];case"object":if("env"in A.pr)if("any"in A.pr)return A.pr.any.some(function(Q){return tE[A.pr.env]===Q});else return A.pr.env in tE&&tE[A.pr.env]!==A.pr.ne;else if("any"in A.pr)return A.pr.any.some(function(Q){return!!tE[Q]});else return m0A(A.pr);default:return null}}});import{homedir as d0A,platform as GhA,release as JhA}from"node:os";import{arch as YhA,cwd as p0A,env as h5,version as UhA}from"node:process";function aW(A){return A==="1"||A?.toLowerCase()==="true"||A?.toLowerCase()==="yes"}function FhA(){if(aW(h5.CAPGO_DISABLE_TELEMETRY)||aW(h5.CAPGO_DISABLE_POSTHOG))return;return h5.CAPGO_CLI_POSTHOG_API_KEY?.trim()||h5.POSTHOG_API_KEY?.trim()||XhA}function WhA(A){let Q=A.replace(/\/+$/,"");if(Q.endsWith("/i/v0/e"))return`${Q}/`;let B=Q.replace(/\/capture$/,"/");return new URL("i/v0/e/",B.endsWith("/")?B:`${B}/`).toString()}function KhA(A){if(A instanceof Error)return{cause:A.cause,message:A.message,name:A.name||"Error",stack:A.stack};if(typeof A==="string")return{message:A,name:"Error",stack:void 0};try{return{message:JSON.stringify(A)??String(A),name:"Error",stack:void 0}}catch{return{message:String(A),name:"Error",stack:void 0}}}function qhA(A){let Q=A,B=p0A(),I=d0A();if(B)Q=Q.replaceAll(B,"<cwd>");if(I)Q=Q.replaceAll(I,"~");return Q}function ZhA(A){let Q=A,B=p0A(),I=d0A();if(B)Q=Q.replaceAll(B,"<cwd>");if(I)Q=Q.replaceAll(I,"~");return Q.replace(/<cwd>\/[^\s"',)]+/g,"<cwd>/<path>").replace(/~\/[^\s"',)]+/g,"~/<path>").replace(/[\w.%+-]+@[\w.-]+\.[A-Z]{2,}/gi,"<email>").replace(/(https?:\/\/)([^/\s:@]+):([^/\s@]+)@/gi,"$1<redacted>@").replace(/\b[a-z][\w-]*(?:\.[\w-]+){2,}\b/gi,"<app_id>").replace(/\b[a-z]:\\[^\s"',)]+/gi,"<path>").replace(/(^|[\s"'(])\/[^\s"',)]+/g,"$1<path>").replace(/(--(?:token|api[-_]?key|key|password|secret|private[-_]?key|jwt|session|auth)(?:=|\s+))("[^"]+"|'[^']+'|\S+)/gi,"$1<redacted>").replace(/\b((?:token|api[-_]?key|password|secret|authorization)\s*[:=]\s*)[^\s,;]+/gi,"$1<redacted>")}function MhA(A,Q){let B=A?.split(`
|
|
95
95
|
`).slice(1).map((I)=>{let E=I.trim(),D=E.startsWith("at ")?E.slice(3):E,$=Q,G=D,Y=D.lastIndexOf(" (");if(Y!==-1&&D.endsWith(")"))$=D.slice(0,Y).trim()||Q,G=D.slice(Y+2,-1);else{let F=D.lastIndexOf(" "),W=F===-1?"":D.slice(F+1);if(/:\d+:\d+$/.test(W))$=D.slice(0,F).trim()||Q,G=W}let H=G.lastIndexOf(":"),X=H===-1?-1:G.lastIndexOf(":",H-1);if(H===-1||X===-1)return{function:Q,platform:"custom",lang:"javascript"};return{function:$,filename:qhA(G.slice(0,X)),lineno:Number.parseInt(G.slice(X+1,H),10),colno:Number.parseInt(G.slice(H+1),10),platform:"custom",lang:"javascript"}}).filter(Boolean);return B&&B.length>0?B:[{function:Q,platform:"custom",lang:"javascript"}]}function NhA(A){if(!A||typeof A!=="object"||!("code"in A))return;let{code:Q}=A;return typeof Q==="string"?Q:void 0}function n0A(A){return!NhA(A)?.startsWith("commander.")}function pg(A){let Q=[],B=A;while(B?.parent){let I=B.name();if(I)Q.push(I);B=B.parent}return Q.reverse().join(" ")||"unknown"}async function ng(A){let Q=FhA();if(!Q)return!1;let B=h5.CAPGO_CLI_POSTHOG_API_HOST?.trim()||h5.POSTHOG_API_HOST?.trim()||HhA,I;try{I=WhA(B)}catch{return!1}let E=KhA(A.error),D=ZhA(E.message),$=`cli:${fE.version}:${A.functionName}`,G=MhA(E.stack,A.functionName),Y=G[0],H=[$,A.kind,E.name||"Error",Y?.function||A.functionName,Y&&"filename"in Y?Y.filename:"unknown",String(A.status??1)].join(":"),X={token:Q,event:"$exception",properties:{distinct_id:$,$exception_list:[{type:E.name||"Error",value:D,mechanism:{handled:!0,synthetic:!1},stacktrace:{type:"raw",frames:G}}],$exception_fingerprint:H,architecture:YhA,cli_version:fE.version,error_kind:A.kind,function_name:A.functionName,is_ci:Boolean(h5.CI),node_version:UhA,os_platform:GhA(),os_release:JhA(),runtime:"cli",status:A.status},timestamp:new Date().toISOString()};try{let F=new AbortController,W=setTimeout(()=>F.abort(),ChA);try{return(await fetch(I,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(X),signal:F.signal})).ok}finally{clearTimeout(W)}}catch{return!1}}var HhA="https://eu.i.posthog.com/i/v0/e/",XhA="phc_NXDyDajQaTQVwb25DEhIVZfxVUn4R0Y348Z7vWYHZUi",ChA=1500;var ig=_A(()=>{YJ()});var M2=v((i0A)=>{Object.defineProperty(i0A,"__esModule",{value:!0});i0A.isNXMonorepo=i0A.isMonorepo=i0A.findPackageRelativePathInMonorepo=i0A.findPackagePath=i0A.findNXMonorepoRoot=i0A.findMonorepoRoot=void 0;var sW=xA("node:fs"),j9=xA("node:path");function Z2(A){let Q=(0,j9.join)(A,"package.json"),B=(0,j9.join)(A,"pnpm-workspace.yaml");if((0,sW.existsSync)(B)||(0,sW.existsSync)(Q)&&JSON.parse((0,sW.readFileSync)(Q,"utf-8")).workspaces)return A;let I=(0,j9.dirname)(A);if(I===A)throw Error("Monorepo root not found");return Z2(I)}i0A.findMonorepoRoot=Z2;function rg(A){let Q=(0,j9.join)(A,"nx.json");if((0,sW.existsSync)(Q))return A;let B=(0,j9.dirname)(A);if(B===A)throw Error("Monorepo root not found");return rg(B)}i0A.findNXMonorepoRoot=rg;function og(A,Q,B){let I=(0,j9.join)(Q,"node_modules",A);if((0,sW.existsSync)(I))return I;if(Q===B)return null;let E=(0,j9.dirname)(Q);return og(A,E,B)}i0A.findPackagePath=og;function zhA(A,Q){let B=Z2(Q),I=og(A,Q,B);if(I)return(0,j9.relative)(Q,I);return null}i0A.findPackageRelativePathInMonorepo=zhA;function whA(A){try{return Z2(A),!0}catch(Q){return!1}}i0A.isMonorepo=whA;function LhA(A){try{return rg(A),!0}catch(Q){return!1}}i0A.isNXMonorepo=LhA});import{existsSync as l4}from"fs";var tW=(A=".",Q="unknown")=>{let B=`${A}/bun.lockb`,I=`${A}/bun.lock`,E=`${A}/pnpm-lock.yaml`,D=`${A}/shrinkwrap.yaml`,$=`${A}/yarn.lock`,G=`${A}/package-lock.json`,Y=`${A}/npm-shrinkwrap.json`;if(l4(B)||l4(I))return"bun";if(l4(E)||l4(D))return"pnpm";if(l4($))return"yarn";if(l4(G)||l4(Y))return"npm";return Q},N2=(A=tW(),Q=!1)=>{switch(A){case"bun":return Q?"bun install":"install";case"pnpm":return Q?"pnpm install":"install";case"yarn":return Q?"yarn install":"install";case"npm":return Q?"npm install":"install";case"unknown":return Q?"unknown unknown":"unknown";default:return Q?"npm install":"install"}},o0A=(A=".",Q="npx")=>{let B=`${A}/bun.lockb`,I=`${A}/bun.lock`,E=`${A}/pnpm-lock.yaml`,D=`${A}/shrinkwrap.yaml`,$=`${A}/yarn.lock`,G=`${A}/package-lock.json`,Y=`${A}/npm-shrinkwrap.json`;if(l4(B)||l4(I))return"bunx";if(l4(E)||l4(D))return"pnpm exec";if(l4($))return"yarn dlx";if(l4(G)||l4(Y))return"npx";return Q};var a0A=()=>{};function z2(A,Q){if(isNaN(A)||isNaN(Q))throw Error("Cannot compare against non-numbers");return A===Q?0:A<Q?-1:1}function e0A(A=[],Q=[]){if(A.length&&!Q.length)return-1;if(!A.length&&Q.length)return 1;return 0}function w2(A=[],Q=[]){let B=Math.max(A.length,Q.length);for(let I=0;I<B;I++){let E=A[I],D=Q[I];if(E===void 0&&D===void 0)return 0;if(D===void 0)return 1;if(E===void 0)return-1;if(typeof E==="string"&&typeof D==="number")return 1;if(typeof E==="number"&&typeof D==="string")return-1;if(E<D)return-1;if(E>D)return 1}return 0}function sg(A){return typeof A==="number"&&!Number.isNaN(A)&&(!Number.isFinite(A)||0<=A&&A<=Number.MAX_SAFE_INTEGER)}function d4(A){return A.split(".").filter(Boolean).map((Q)=>{if(khA.test(Q)){let B=Number(Q);if(sg(B))return B}return Q})}function d6(A){return A.split(".").filter(Boolean)}function O2(A,Q){let B=Number(A);if(!sg(B))throw TypeError(Q);return B}function UJ(A){return Number.isNaN(A.major)&&Number.isNaN(A.minor)&&Number.isNaN(A.patch)&&(A.prerelease===void 0||A.prerelease.length===0)&&(A.build===void 0||A.build.length===0)}var kX="0|[1-9]\\d*",jhA="\\d*[a-zA-Z-][a-zA-Z0-9-]*",PhA,s0A,AIA,t0A="[0-9A-Za-z-]+",QIA,BIA,IIA,EIA="(?:<|>)?=?",_hA="x|X|\\*",ag,L2,DIA,$IA,tg=256,khA;var OD=_A(()=>{PhA=`(?<major>${kX})\\.(?<minor>${kX})\\.(?<patch>${kX})`,s0A=`(?:${kX}|${jhA})`,AIA=`(?:-(?<prerelease>${s0A}(?:\\.${s0A})*))`,QIA=`(?:\\+(?<buildmetadata>${t0A}(?:\\.${t0A})*))`,BIA=`v?${PhA}${AIA}?${QIA}?`,IIA=new RegExp(`^${BIA}$`),ag=`${kX}|${_hA}`,L2=`[v=\\s]*(?<major>${ag})(?:\\.(?<minor>${ag})(?:\\.(?<patch>${ag})${AIA}?${QIA}?)?)?`,DIA=new RegExp(`^(?<operator>~>?|\\^|${EIA})\\s*${L2}$`),$IA=new RegExp(`^(?<operator>${EIA})\\s*(${BIA})$|^$`);khA=new RegExp(`^${kX}$`)});function X4(A,Q){if(A===Q)return 0;return z2(A.major,Q.major)||z2(A.minor,Q.minor)||z2(A.patch,Q.patch)||e0A(A.prerelease,Q.prerelease)||w2(A.prerelease,Q.prerelease)}var sD=_A(()=>{OD()});function GIA(A,Q){let B=A.prerelease?.length||Q.prerelease?.length;if(A.major!==Q.major)return B?"premajor":"major";if(A.minor!==Q.minor)return B?"preminor":"minor";if(A.patch!==Q.patch)return B?"prepatch":"patch";if(w2(A.prerelease,Q.prerelease)!==0)return"prerelease"}var JIA=_A(()=>{OD()});function eg(A){return A.toFixed(0)}function U8(A){let Q=eg(A.major),B=eg(A.minor),I=eg(A.patch),E=A.prerelease?.join(".")??"",D=A.build?.join(".")??"";return[[`${Q}.${B}.${I}`,E].filter((Y)=>Y).join("-"),D].filter((Y)=>Y).join("+")}function vhA(A,Q){if(UJ(Q))return!0;let B=X4(A,Q);switch(Q.operator){case"=":case void 0:return B===0;case"!=":return B!==0;case">":return B>0;case"<":return B<0;case">=":return B>=0;case"<=":return B<=0}}function R2(A,Q){for(let B of Q)if(!vhA(A,B))return!1;if(!A.prerelease?.length)return!0;for(let B of Q){if(UJ(B))continue;if(!B.prerelease?.length)continue;let{major:I,minor:E,patch:D}=B;if(A.major===I&&A.minor===E&&A.patch===D)return!0}return!1}var V2=_A(()=>{OD();sD()});function eW(A,Q){return Q.some((B)=>R2(A,B))}var AK=_A(()=>{V2()});function xhA(A=[]){let Q=[...A],B=Q.length;while(B>=0){let I=Q[B];if(typeof I==="number"){Q[B]=I+1;break}B-=1}if(B===-1)Q.push(0);return Q}function QK(A=[],Q){let B=xhA(A);if(!Q)return B;let I=d4(Q);if(I.every((E)=>typeof E==="string")){if(I.every((E,D)=>E===B[D])&&typeof B[I.length]==="number")return B;I=[...I,0]}return I}function P9(A,Q,B={}){let I=B.build!==void 0?d6(B.build):A.build??[];switch(Q){case"premajor":return{major:A.major+1,minor:0,patch:0,prerelease:QK(A.prerelease,B.prerelease),build:I};case"preminor":return{major:A.major,minor:A.minor+1,patch:0,prerelease:QK(A.prerelease,B.prerelease),build:I};case"prepatch":return{major:A.major,minor:A.minor,patch:A.patch+1,prerelease:QK(A.prerelease,B.prerelease),build:I};case"prerelease":{let D=(A.prerelease??[]).length===0?A.patch+1:A.patch;return{major:A.major,minor:A.minor,patch:D,prerelease:QK(A.prerelease,B.prerelease),build:I}}case"major":return{major:(A.prerelease??[]).length===0||A.minor!==0||A.patch!==0?A.major+1:A.major,minor:0,patch:0,prerelease:[],build:I};case"minor":{let D=(A.prerelease??[]).length===0||A.patch!==0?A.minor+1:A.minor;return{major:A.major,minor:D,patch:0,prerelease:[],build:I}}case"patch":{let D=(A.prerelease??[]).length===0?A.patch+1:A.patch;return{major:A.major,minor:A.minor,patch:D,prerelease:[],build:I}}case"pre":return{major:A.major,minor:A.minor,patch:A.patch,prerelease:QK(A.prerelease,B.prerelease),build:I};default:throw TypeError(`Cannot increment version: invalid argument ${Q}`)}}var YIA=_A(()=>{OD()});var T2,vX;var BK=_A(()=>{T2={major:Number.NaN,minor:Number.NaN,patch:Number.NaN,prerelease:[],build:[]},vX={operator:void 0,...T2}});var Ab=_A(()=>{BK();OD()});function Qb(A,Q){return X4(A,Q)>0}var Bb=_A(()=>{sD()});var UIA=_A(()=>{AK();Bb()});function RD(A,Q){return X4(A,Q)<0}var Ib=_A(()=>{sD()});var HIA=_A(()=>{AK();Ib()});function ghA(A){let B=A.match($IA)?.groups;if(!B)return null;let{operator:I}=B;return{operator:I||void 0,...T2}}function uI(A){return!A||A.toLowerCase()==="x"||A==="*"}function bhA(A){if(uI(A.major))return;if(uI(A.minor))return{operator:">=",major:+A.major,minor:0,patch:0,prerelease:[],build:[]};if(uI(A.patch))return{operator:">=",major:+A.major,minor:+A.minor,patch:0,prerelease:[],build:[]};return{operator:">=",major:+A.major,minor:+A.minor,patch:+A.patch,prerelease:A.prerelease?d4(A.prerelease):[],build:[]}}function yhA(A){if(uI(A.major))return;if(uI(A.minor))return{operator:"<",major:+A.major+1,minor:0,patch:0,prerelease:[],build:[]};if(uI(A.patch))return{operator:"<",major:+A.major,minor:+A.minor+1,patch:0,prerelease:[],build:[]};if(A.prerelease)return{operator:"<=",major:+A.major,minor:+A.minor,patch:+A.patch,prerelease:d4(A.prerelease),build:[]};return{operator:"<=",major:+A.major,minor:+A.minor,patch:+A.patch,prerelease:[],build:[]}}function fhA(A){let Q=A.match(new RegExp(`^${L2}`)),B=Q?.groups;if(!B)return null;let I=Q[0].length,E=A.slice(I).match(/^\s+-\s+/);if(!E)return null;let D=E[0].length,G=A.slice(I+D).match(new RegExp(`^${L2}\\s*$`))?.groups,Y=bhA(B),H=yhA(G);return[Y,H].filter(Boolean)}function hhA(A){let Q=uI(A.major),B=uI(A.minor),I=uI(A.patch),E=+A.major,D=+A.minor,$=+A.patch;if(Q)return[vX];if(B)return[{operator:">=",major:E,minor:0,patch:0},{operator:"<",major:E+1,minor:0,patch:0}];if(I){if(E===0)return[{operator:">=",major:E,minor:D,patch:0},{operator:"<",major:E,minor:D+1,patch:0}];return[{operator:">=",major:E,minor:D,patch:0},{operator:"<",major:E+1,minor:0,patch:0}]}let G=d4(A.prerelease??"");if(E===0){if(D===0)return[{operator:">=",major:E,minor:D,patch:$,prerelease:G},{operator:"<",major:E,minor:D,patch:$+1}];return[{operator:">=",major:E,minor:D,patch:$,prerelease:G},{operator:"<",major:E,minor:D+1,patch:0}]}return[{operator:">=",major:E,minor:D,patch:$,prerelease:G},{operator:"<",major:E+1,minor:0,patch:0}]}function uhA(A){let Q=uI(A.major),B=uI(A.minor),I=uI(A.patch),E=+A.major,D=+A.minor,$=+A.patch;if(Q)return[vX];if(B)return[{operator:">=",major:E,minor:0,patch:0},{operator:"<",major:E+1,minor:0,patch:0}];if(I)return[{operator:">=",major:E,minor:D,patch:0},{operator:"<",major:E,minor:D+1,patch:0}];let G=d4(A.prerelease??"");return[{operator:">=",major:E,minor:D,patch:$,prerelease:G},{operator:"<",major:E,minor:D+1,patch:0}]}function mhA(A){let Q=uI(A.major),B=uI(A.minor),I=uI(A.patch),E=+A.major,D=+A.minor,$=+A.patch;if(Q)return[{operator:"<",major:0,minor:0,patch:0}];if(B){if(I)return[{operator:"<",major:E,minor:0,patch:0}];return[{operator:"<",major:E,minor:0,patch:0}]}if(I)return[{operator:"<",major:E,minor:D,patch:0}];let G=d4(A.prerelease??""),Y=d6(A.build??"");return[{operator:"<",major:E,minor:D,patch:$,prerelease:G,build:Y}]}function chA(A){let Q=uI(A.minor),B=uI(A.patch),I=+A.major,E=+A.minor,D=+A.patch;if(Q)return[{operator:"<",major:I+1,minor:0,patch:0}];if(B)return[{operator:"<",major:I,minor:E+1,patch:0}];let $=d4(A.prerelease??""),G=d6(A.build??"");return[{operator:"<=",major:I,minor:E,patch:D,prerelease:$,build:G}]}function lhA(A){let Q=uI(A.major),B=uI(A.minor),I=uI(A.patch),E=+A.major,D=+A.minor,$=+A.patch;if(Q)return[{operator:"<",major:0,minor:0,patch:0}];if(B)return[{operator:">=",major:E+1,minor:0,patch:0}];if(I)return[{operator:">=",major:E,minor:D+1,patch:0}];let G=d4(A.prerelease??""),Y=d6(A.build??"");return[{operator:">",major:E,minor:D,patch:$,prerelease:G,build:Y}]}function dhA(A){let Q=uI(A.major),B=uI(A.minor),I=uI(A.patch),E=+A.major,D=+A.minor,$=+A.patch;if(Q)return[vX];if(B)return[{operator:">=",major:E,minor:0,patch:0}];if(I)return[{operator:">=",major:E,minor:D,patch:0}];let G=d4(A.prerelease??""),Y=d6(A.build??"");return[{operator:">=",major:E,minor:D,patch:$,prerelease:G,build:Y}]}function phA(A){let Q=uI(A.major),B=uI(A.minor),I=uI(A.patch),E=+A.major,D=+A.minor,$=+A.patch;if(Q)return[vX];if(B)return[{operator:">=",major:E,minor:0,patch:0},{operator:"<",major:E+1,minor:0,patch:0}];if(I)return[{operator:">=",major:E,minor:D,patch:0},{operator:"<",major:E,minor:D+1,patch:0}];let G=d4(A.prerelease??""),Y=d6(A.build??"");return[{operator:A.operator==="="?"=":void 0,major:E,minor:D,patch:$,prerelease:G,build:Y}]}function nhA(A){let Q=A.match(DIA)?.groups;if(!Q)return ghA(A);switch(Q.operator){case"^":return hhA(Q);case"~":case"~>":return uhA(Q);case"<":return mhA(Q);case"<=":return chA(Q);case">":return lhA(Q);case">=":return dhA(Q);default:return phA(Q)}}function ihA(A){return A.split(/\s+/).flatMap(nhA)}function S2(A){let Q=A.replaceAll(/(?<=[<>=~^])(\s+)/g,"").split(/\s*\|\|\s*/).map((B)=>fhA(B)||ihA(B));if(Q.some((B)=>B.includes(null)))throw TypeError(`Cannot parse version range: range "${A}" is invalid`);return Q}var Eb=_A(()=>{OD();BK()});function hB(A){if(typeof A!=="string")throw TypeError(`Cannot parse version as version must be a string: received ${typeof A}`);if(A.length>tg)throw TypeError(`Cannot parse version as version length is too long: length is ${A.length}, max length is ${tg}`);A=A.trim();let Q=A.match(IIA)?.groups;if(!Q)throw TypeError(`Cannot parse version: ${A}`);let B=O2(Q.major,`Cannot parse version ${A}: invalid major version`),I=O2(Q.minor,`Cannot parse version ${A}: invalid minor version`),E=O2(Q.patch,`Cannot parse version ${A}: invalid patch version`),D=Q.prerelease?d4(Q.prerelease):[],$=Q.buildmetadata?d6(Q.buildmetadata):[];return{major:B,minor:I,patch:E,prerelease:D,build:$}}var j2=_A(()=>{OD();OD()});function XIA(A,Q){let B=A.operator,I=Q.operator;if(B===void 0){if(UJ(A))return!0;return eW(A,[[Q]])}if(I===void 0){if(UJ(Q))return!0;return eW(Q,[[A]])}let E=X4(A,Q);return(B===">="||B===">")&&(I===">="||I===">")||(B==="<="||B==="<")&&(I==="<="||I==="<")||E===0&&((B===">="||B==="<=")&&(I===">="||I==="<="))||E===-1&&(B===">="||B===">")&&(I==="<="||I==="<")||E===1&&(B==="<="||B==="<")&&(I===">="||I===">")}function rhA(A){return A.every((Q)=>{return Q.some((B)=>ohA(B))})}function ohA(A){for(let Q=0;Q<A.length-1;Q++){let B=A[Q];for(let I of A.slice(Q+1))if(!XIA(B,I))return!1}return!0}function CIA(A,Q){return rhA([A,Q])&&A.some((B)=>{return Q.some((I)=>{return B.every((E)=>{return I.every((D)=>XIA(E,D))})})})}var FIA=_A(()=>{OD();sD();AK()});var WIA=_A(()=>{Eb()});var KIA=_A(()=>{BK();BK();Ab()});function IK(A){try{return hB(A),!0}catch{return!1}}var qIA=_A(()=>{j2()});var ZIA=_A(()=>{j2()});var MIA=_A(()=>{OD()});var NIA=_A(()=>{sD()});var zIA=_A(()=>{sD()});var wIA=_A(()=>{V2();OD();sD()});function LIA(A,Q){return X4(A,Q)>=0}var OIA=_A(()=>{sD()});var RIA=_A(()=>{V2();OD();sD()});var VIA=_A(()=>{sD()});var c$=_A(()=>{sD();JIA();AK();YIA();Ab();UIA();HIA();Eb();j2();FIA();WIA();KIA();qIA();ZIA();MIA();NIA();zIA();Bb();wIA();OIA();Ib();RIA();VIA()});var p4=v((cuQ,k2)=>{var TIA,SIA,jIA,PIA,_IA,kIA,vIA,xIA,gIA,bIA,yIA,fIA,hIA,P2,Db,uIA,mIA,cIA,xX,lIA,dIA,pIA,nIA,iIA,rIA,oIA,aIA,sIA,_2,tIA,eIA,AEA;(function(A){var Q=typeof global==="object"?global:typeof self==="object"?self:typeof this==="object"?this:{};if(typeof define==="function"&&define.amd)define("tslib",["exports"],function(I){A(B(Q,B(I)))});else if(typeof k2==="object"&&typeof cuQ==="object")A(B(Q,B(cuQ)));else A(B(Q));function B(I,E){if(I!==Q)if(typeof Object.create==="function")Object.defineProperty(I,"__esModule",{value:!0});else I.__esModule=!0;return function(D,$){return I[D]=E?E(D,$):$}}})(function(A){var Q=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(D,$){D.__proto__=$}||function(D,$){for(var G in $)if(Object.prototype.hasOwnProperty.call($,G))D[G]=$[G]};TIA=function(D,$){if(typeof $!=="function"&&$!==null)throw TypeError("Class extends value "+String($)+" is not a constructor or null");Q(D,$);function G(){this.constructor=D}D.prototype=$===null?Object.create($):(G.prototype=$.prototype,new G)},SIA=Object.assign||function(D){for(var $,G=1,Y=arguments.length;G<Y;G++){$=arguments[G];for(var H in $)if(Object.prototype.hasOwnProperty.call($,H))D[H]=$[H]}return D},jIA=function(D,$){var G={};for(var Y in D)if(Object.prototype.hasOwnProperty.call(D,Y)&&$.indexOf(Y)<0)G[Y]=D[Y];if(D!=null&&typeof Object.getOwnPropertySymbols==="function"){for(var H=0,Y=Object.getOwnPropertySymbols(D);H<Y.length;H++)if($.indexOf(Y[H])<0&&Object.prototype.propertyIsEnumerable.call(D,Y[H]))G[Y[H]]=D[Y[H]]}return G},PIA=function(D,$,G,Y){var H=arguments.length,X=H<3?$:Y===null?Y=Object.getOwnPropertyDescriptor($,G):Y,F;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")X=Reflect.decorate(D,$,G,Y);else for(var W=D.length-1;W>=0;W--)if(F=D[W])X=(H<3?F(X):H>3?F($,G,X):F($,G))||X;return H>3&&X&&Object.defineProperty($,G,X),X},_IA=function(D,$){return function(G,Y){$(G,Y,D)}},kIA=function(D,$,G,Y,H,X){function F(l){if(l!==void 0&&typeof l!=="function")throw TypeError("Function expected");return l}var W=Y.kind,q=W==="getter"?"get":W==="setter"?"set":"value",Z=!$&&D?Y.static?D:D.prototype:null,N=$||(Z?Object.getOwnPropertyDescriptor(Z,Y.name):{}),w,O=!1;for(var T=G.length-1;T>=0;T--){var R={};for(var S in Y)R[S]=S==="access"?{}:Y[S];for(var S in Y.access)R.access[S]=Y.access[S];R.addInitializer=function(l){if(O)throw TypeError("Cannot add initializers after decoration has completed");X.push(F(l||null))};var k=(0,G[T])(W==="accessor"?{get:N.get,set:N.set}:N[q],R);if(W==="accessor"){if(k===void 0)continue;if(k===null||typeof k!=="object")throw TypeError("Object expected");if(w=F(k.get))N.get=w;if(w=F(k.set))N.set=w;if(w=F(k.init))H.unshift(w)}else if(w=F(k))if(W==="field")H.unshift(w);else N[q]=w}if(Z)Object.defineProperty(Z,Y.name,N);O=!0},vIA=function(D,$,G){var Y=arguments.length>2;for(var H=0;H<$.length;H++)G=Y?$[H].call(D,G):$[H].call(D);return Y?G:void 0},xIA=function(D){return typeof D==="symbol"?D:"".concat(D)},gIA=function(D,$,G){if(typeof $==="symbol")$=$.description?"[".concat($.description,"]"):"";return Object.defineProperty(D,"name",{configurable:!0,value:G?"".concat(G," ",$):$})},bIA=function(D,$){if(typeof Reflect==="object"&&typeof Reflect.metadata==="function")return Reflect.metadata(D,$)},yIA=function(D,$,G,Y){function H(X){return X instanceof G?X:new G(function(F){F(X)})}return new(G||(G=Promise))(function(X,F){function W(N){try{Z(Y.next(N))}catch(w){F(w)}}function q(N){try{Z(Y.throw(N))}catch(w){F(w)}}function Z(N){N.done?X(N.value):H(N.value).then(W,q)}Z((Y=Y.apply(D,$||[])).next())})},fIA=function(D,$){var G={label:0,sent:function(){if(X[0]&1)throw X[1];return X[1]},trys:[],ops:[]},Y,H,X,F=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return F.next=W(0),F.throw=W(1),F.return=W(2),typeof Symbol==="function"&&(F[Symbol.iterator]=function(){return this}),F;function W(Z){return function(N){return q([Z,N])}}function q(Z){if(Y)throw TypeError("Generator is already executing.");while(F&&(F=0,Z[0]&&(G=0)),G)try{if(Y=1,H&&(X=Z[0]&2?H.return:Z[0]?H.throw||((X=H.return)&&X.call(H),0):H.next)&&!(X=X.call(H,Z[1])).done)return X;if(H=0,X)Z=[Z[0]&2,X.value];switch(Z[0]){case 0:case 1:X=Z;break;case 4:return G.label++,{value:Z[1],done:!1};case 5:G.label++,H=Z[1],Z=[0];continue;case 7:Z=G.ops.pop(),G.trys.pop();continue;default:if((X=G.trys,!(X=X.length>0&&X[X.length-1]))&&(Z[0]===6||Z[0]===2)){G=0;continue}if(Z[0]===3&&(!X||Z[1]>X[0]&&Z[1]<X[3])){G.label=Z[1];break}if(Z[0]===6&&G.label<X[1]){G.label=X[1],X=Z;break}if(X&&G.label<X[2]){G.label=X[2],G.ops.push(Z);break}if(X[2])G.ops.pop();G.trys.pop();continue}Z=$.call(D,G)}catch(N){Z=[6,N],H=0}finally{Y=X=0}if(Z[0]&5)throw Z[1];return{value:Z[0]?Z[1]:void 0,done:!0}}},hIA=function(D,$){for(var G in D)if(G!=="default"&&!Object.prototype.hasOwnProperty.call($,G))_2($,D,G)},_2=Object.create?function(D,$,G,Y){if(Y===void 0)Y=G;var H=Object.getOwnPropertyDescriptor($,G);if(!H||("get"in H?!$.__esModule:H.writable||H.configurable))H={enumerable:!0,get:function(){return $[G]}};Object.defineProperty(D,Y,H)}:function(D,$,G,Y){if(Y===void 0)Y=G;D[Y]=$[G]},P2=function(D){var $=typeof Symbol==="function"&&Symbol.iterator,G=$&&D[$],Y=0;if(G)return G.call(D);if(D&&typeof D.length==="number")return{next:function(){if(D&&Y>=D.length)D=void 0;return{value:D&&D[Y++],done:!D}}};throw TypeError($?"Object is not iterable.":"Symbol.iterator is not defined.")},Db=function(D,$){var G=typeof Symbol==="function"&&D[Symbol.iterator];if(!G)return D;var Y=G.call(D),H,X=[],F;try{while(($===void 0||$-- >0)&&!(H=Y.next()).done)X.push(H.value)}catch(W){F={error:W}}finally{try{if(H&&!H.done&&(G=Y.return))G.call(Y)}finally{if(F)throw F.error}}return X},uIA=function(){for(var D=[],$=0;$<arguments.length;$++)D=D.concat(Db(arguments[$]));return D},mIA=function(){for(var D=0,$=0,G=arguments.length;$<G;$++)D+=arguments[$].length;for(var Y=Array(D),H=0,$=0;$<G;$++)for(var X=arguments[$],F=0,W=X.length;F<W;F++,H++)Y[H]=X[F];return Y},cIA=function(D,$,G){if(G||arguments.length===2){for(var Y=0,H=$.length,X;Y<H;Y++)if(X||!(Y in $)){if(!X)X=Array.prototype.slice.call($,0,Y);X[Y]=$[Y]}}return D.concat(X||Array.prototype.slice.call($))},xX=function(D){return this instanceof xX?(this.v=D,this):new xX(D)},lIA=function(D,$,G){if(!Symbol.asyncIterator)throw TypeError("Symbol.asyncIterator is not defined.");var Y=G.apply(D,$||[]),H,X=[];return H=Object.create((typeof AsyncIterator==="function"?AsyncIterator:Object).prototype),W("next"),W("throw"),W("return",F),H[Symbol.asyncIterator]=function(){return this},H;function F(T){return function(R){return Promise.resolve(R).then(T,w)}}function W(T,R){if(Y[T]){if(H[T]=function(S){return new Promise(function(k,l){X.push([T,S,k,l])>1||q(T,S)})},R)H[T]=R(H[T])}}function q(T,R){try{Z(Y[T](R))}catch(S){O(X[0][3],S)}}function Z(T){T.value instanceof xX?Promise.resolve(T.value.v).then(N,w):O(X[0][2],T)}function N(T){q("next",T)}function w(T){q("throw",T)}function O(T,R){if(T(R),X.shift(),X.length)q(X[0][0],X[0][1])}},dIA=function(D){var $,G;return $={},Y("next"),Y("throw",function(H){throw H}),Y("return"),$[Symbol.iterator]=function(){return this},$;function Y(H,X){$[H]=D[H]?function(F){return(G=!G)?{value:xX(D[H](F)),done:!1}:X?X(F):F}:X}},pIA=function(D){if(!Symbol.asyncIterator)throw TypeError("Symbol.asyncIterator is not defined.");var $=D[Symbol.asyncIterator],G;return $?$.call(D):(D=typeof P2==="function"?P2(D):D[Symbol.iterator](),G={},Y("next"),Y("throw"),Y("return"),G[Symbol.asyncIterator]=function(){return this},G);function Y(X){G[X]=D[X]&&function(F){return new Promise(function(W,q){F=D[X](F),H(W,q,F.done,F.value)})}}function H(X,F,W,q){Promise.resolve(q).then(function(Z){X({value:Z,done:W})},F)}},nIA=function(D,$){if(Object.defineProperty)Object.defineProperty(D,"raw",{value:$});else D.raw=$;return D};var B=Object.create?function(D,$){Object.defineProperty(D,"default",{enumerable:!0,value:$})}:function(D,$){D.default=$},I=function(D){return I=Object.getOwnPropertyNames||function($){var G=[];for(var Y in $)if(Object.prototype.hasOwnProperty.call($,Y))G[G.length]=Y;return G},I(D)};iIA=function(D){if(D&&D.__esModule)return D;var $={};if(D!=null){for(var G=I(D),Y=0;Y<G.length;Y++)if(G[Y]!=="default")_2($,D,G[Y])}return B($,D),$},rIA=function(D){return D&&D.__esModule?D:{default:D}},oIA=function(D,$,G,Y){if(G==="a"&&!Y)throw TypeError("Private accessor was defined without a getter");if(typeof $==="function"?D!==$||!Y:!$.has(D))throw TypeError("Cannot read private member from an object whose class did not declare it");return G==="m"?Y:G==="a"?Y.call(D):Y?Y.value:$.get(D)},aIA=function(D,$,G,Y,H){if(Y==="m")throw TypeError("Private method is not writable");if(Y==="a"&&!H)throw TypeError("Private accessor was defined without a setter");if(typeof $==="function"?D!==$||!H:!$.has(D))throw TypeError("Cannot write private member to an object whose class did not declare it");return Y==="a"?H.call(D,G):H?H.value=G:$.set(D,G),G},sIA=function(D,$){if($===null||typeof $!=="object"&&typeof $!=="function")throw TypeError("Cannot use 'in' operator on non-object");return typeof D==="function"?$===D:D.has($)},tIA=function(D,$,G){if($!==null&&$!==void 0){if(typeof $!=="object"&&typeof $!=="function")throw TypeError("Object expected.");var Y,H;if(G){if(!Symbol.asyncDispose)throw TypeError("Symbol.asyncDispose is not defined.");Y=$[Symbol.asyncDispose]}if(Y===void 0){if(!Symbol.dispose)throw TypeError("Symbol.dispose is not defined.");if(Y=$[Symbol.dispose],G)H=Y}if(typeof Y!=="function")throw TypeError("Object not disposable.");if(H)Y=function(){try{H.call(this)}catch(X){return Promise.reject(X)}};D.stack.push({value:$,dispose:Y,async:G})}else if(G)D.stack.push({async:!0});return $};var E=typeof SuppressedError==="function"?SuppressedError:function(D,$,G){var Y=Error(G);return Y.name="SuppressedError",Y.error=D,Y.suppressed=$,Y};eIA=function(D){function $(X){D.error=D.hasError?new E(X,D.error,"An error was suppressed during disposal."):X,D.hasError=!0}var G,Y=0;function H(){while(G=D.stack.pop())try{if(!G.async&&Y===1)return Y=0,D.stack.push(G),Promise.resolve().then(H);if(G.dispose){var X=G.dispose.call(G.value);if(G.async)return Y|=2,Promise.resolve(X).then(H,function(F){return $(F),H()})}else Y|=1}catch(F){$(F)}if(Y===1)return D.hasError?Promise.reject(D.error):Promise.resolve();if(D.hasError)throw D.error}return H()},AEA=function(D,$){if(typeof D==="string"&&/^\.\.?\//.test(D))return D.replace(/\.(tsx)$|((?:\.d)?)((?:\.[^./]+?)?)\.([cm]?)ts$/i,function(G,Y,H,X,F){return Y?$?".jsx":".js":H&&(!X||!F)?G:H+X+"."+F.toLowerCase()+"js"});return D},A("__extends",TIA),A("__assign",SIA),A("__rest",jIA),A("__decorate",PIA),A("__param",_IA),A("__esDecorate",kIA),A("__runInitializers",vIA),A("__propKey",xIA),A("__setFunctionName",gIA),A("__metadata",bIA),A("__awaiter",yIA),A("__generator",fIA),A("__exportStar",hIA),A("__createBinding",_2),A("__values",P2),A("__read",Db),A("__spread",uIA),A("__spreadArrays",mIA),A("__spreadArray",cIA),A("__await",xX),A("__asyncGenerator",lIA),A("__asyncDelegator",dIA),A("__asyncValues",pIA),A("__makeTemplateObject",nIA),A("__importStar",iIA),A("__importDefault",rIA),A("__classPrivateFieldGet",oIA),A("__classPrivateFieldSet",aIA),A("__classPrivateFieldIn",sIA),A("__addDisposableResource",tIA),A("__disposeResources",eIA),A("__rewriteRelativeImportExtension",AEA)})});var IEA=v((QEA)=>{Object.defineProperty(QEA,"__esModule",{value:!0});QEA.resolveFetch=void 0;var ahA=(A)=>{if(A)return(...Q)=>A(...Q);return(...Q)=>fetch(...Q)};QEA.resolveFetch=ahA});var $b=v((JEA)=>{Object.defineProperty(JEA,"__esModule",{value:!0});JEA.FunctionRegion=JEA.FunctionsHttpError=JEA.FunctionsRelayError=JEA.FunctionsFetchError=JEA.FunctionsError=void 0;class EK extends Error{constructor(A,Q="FunctionsError",B){super(A);this.name=Q,this.context=B}toJSON(){return{name:this.name,message:this.message,context:this.context}}}JEA.FunctionsError=EK;class DEA extends EK{constructor(A){super("Failed to send a request to the Edge Function","FunctionsFetchError",A)}}JEA.FunctionsFetchError=DEA;class $EA extends EK{constructor(A){super("Relay Error invoking the Edge Function","FunctionsRelayError",A)}}JEA.FunctionsRelayError=$EA;class GEA extends EK{constructor(A){super("Edge Function returned a non-2xx status code","FunctionsHttpError",A)}}JEA.FunctionsHttpError=GEA;var EEA;(function(A){A.Any="any",A.ApNortheast1="ap-northeast-1",A.ApNortheast2="ap-northeast-2",A.ApSouth1="ap-south-1",A.ApSoutheast1="ap-southeast-1",A.ApSoutheast2="ap-southeast-2",A.CaCentral1="ca-central-1",A.EuCentral1="eu-central-1",A.EuWest1="eu-west-1",A.EuWest2="eu-west-2",A.EuWest3="eu-west-3",A.SaEast1="sa-east-1",A.UsEast1="us-east-1",A.UsWest1="us-west-1",A.UsWest2="us-west-2"})(EEA||(JEA.FunctionRegion=EEA={}))});var CEA=v((HEA)=>{Object.defineProperty(HEA,"__esModule",{value:!0});HEA.FunctionsClient=void 0;var QuA=p4(),BuA=IEA(),gX=$b();class UEA{constructor(A,{headers:Q={},customFetch:B,region:I=gX.FunctionRegion.Any}={}){this.url=A,this.headers=Q,this.region=I,this.fetch=(0,BuA.resolveFetch)(B)}setAuth(A){this.headers.Authorization=`Bearer ${A}`}invoke(A){return QuA.__awaiter(this,arguments,void 0,function*(Q,B={}){var I;let E,D;try{let{headers:$,method:G,body:Y,signal:H,timeout:X}=B,F={},{region:W}=B;if(!W)W=this.region;let q=new URL(`${this.url}/${Q}`);if(W&&W!=="any")F["x-region"]=W,q.searchParams.set("forceFunctionRegion",W);let Z;if(Y&&($&&!Object.prototype.hasOwnProperty.call($,"Content-Type")||!$))if(typeof Blob<"u"&&Y instanceof Blob||Y instanceof ArrayBuffer)F["Content-Type"]="application/octet-stream",Z=Y;else if(typeof Y==="string")F["Content-Type"]="text/plain",Z=Y;else if(typeof FormData<"u"&&Y instanceof FormData)Z=Y;else F["Content-Type"]="application/json",Z=JSON.stringify(Y);else if(Y&&typeof Y!=="string"&&!(typeof Blob<"u"&&Y instanceof Blob)&&!(Y instanceof ArrayBuffer)&&!(typeof FormData<"u"&&Y instanceof FormData))Z=JSON.stringify(Y);else Z=Y;let N=H;if(X)if(D=new AbortController,E=setTimeout(()=>D.abort(),X),H)N=D.signal,H.addEventListener("abort",()=>D.abort());else N=D.signal;let w=yield this.fetch(q.toString(),{method:G||"POST",headers:Object.assign(Object.assign(Object.assign({},F),this.headers),$),body:Z,signal:N}).catch((S)=>{throw new gX.FunctionsFetchError(S)}),O=w.headers.get("x-relay-error");if(O&&O==="true")throw new gX.FunctionsRelayError(w);if(!w.ok)throw new gX.FunctionsHttpError(w);let T=((I=w.headers.get("Content-Type"))!==null&&I!==void 0?I:"text/plain").split(";")[0].trim(),R;if(T==="application/json")R=yield w.json();else if(T==="application/octet-stream"||T==="application/pdf")R=yield w.blob();else if(T==="text/event-stream")R=w;else if(T==="multipart/form-data")R=yield w.formData();else R=yield w.text();return{data:R,error:null,response:w}}catch($){return{data:null,error:$,response:$ instanceof gX.FunctionsHttpError||$ instanceof gX.FunctionsRelayError?$.context:void 0}}finally{if(E)clearTimeout(E)}})}}HEA.FunctionsClient=UEA});var FEA=v((_9)=>{Object.defineProperty(_9,"__esModule",{value:!0});_9.FunctionRegion=_9.FunctionsRelayError=_9.FunctionsHttpError=_9.FunctionsFetchError=_9.FunctionsError=_9.FunctionsClient=void 0;var IuA=CEA();Object.defineProperty(_9,"FunctionsClient",{enumerable:!0,get:function(){return IuA.FunctionsClient}});var DK=$b();Object.defineProperty(_9,"FunctionsError",{enumerable:!0,get:function(){return DK.FunctionsError}});Object.defineProperty(_9,"FunctionsFetchError",{enumerable:!0,get:function(){return DK.FunctionsFetchError}});Object.defineProperty(_9,"FunctionsHttpError",{enumerable:!0,get:function(){return DK.FunctionsHttpError}});Object.defineProperty(_9,"FunctionsRelayError",{enumerable:!0,get:function(){return DK.FunctionsRelayError}});Object.defineProperty(_9,"FunctionRegion",{enumerable:!0,get:function(){return DK.FunctionRegion}})});function KEA(A,Q){return new Promise((B)=>{if(Q===null||Q===void 0?void 0:Q.aborted){B();return}let I=setTimeout(()=>{Q===null||Q===void 0||Q.removeEventListener("abort",E),B()},A);function E(){clearTimeout(I),B()}Q===null||Q===void 0||Q.addEventListener("abort",E)})}function $uA(A,Q,B,I){if(!I||B>=3)return!1;if(!MEA.includes(A))return!1;if(!DuA.includes(Q))return!1;return!0}function $K(A){return $K=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(Q){return typeof Q}:function(Q){return Q&&typeof Symbol=="function"&&Q.constructor===Symbol&&Q!==Symbol.prototype?"symbol":typeof Q},$K(A)}function UuA(A,Q){if($K(A)!="object"||!A)return A;var B=A[Symbol.toPrimitive];if(B!==void 0){var I=B.call(A,Q||"default");if($K(I)!="object")return I;throw TypeError("@@toPrimitive must return a primitive value.")}return(Q==="string"?String:Number)(A)}function HuA(A){var Q=UuA(A,"string");return $K(Q)=="symbol"?Q:Q+""}function XuA(A,Q,B){return(Q=HuA(Q))in A?Object.defineProperty(A,Q,{value:B,enumerable:!0,configurable:!0,writable:!0}):A[Q]=B,A}function ZEA(A,Q){var B=Object.keys(A);if(Object.getOwnPropertySymbols){var I=Object.getOwnPropertySymbols(A);Q&&(I=I.filter(function(E){return Object.getOwnPropertyDescriptor(A,E).enumerable})),B.push.apply(B,I)}return B}function v2(A){for(var Q=1;Q<arguments.length;Q++){var B=arguments[Q]!=null?arguments[Q]:{};Q%2?ZEA(Object(B),!0).forEach(function(I){XuA(A,I,B[I])}):Object.getOwnPropertyDescriptors?Object.defineProperties(A,Object.getOwnPropertyDescriptors(B)):ZEA(Object(B)).forEach(function(I){Object.defineProperty(A,I,Object.getOwnPropertyDescriptor(B,I))})}return A}var WEA=(A)=>Math.min(1000*2**A,30000),DuA,MEA,NEA,GuA=class{constructor(A){var Q,B,I,E,D;if(this.shouldThrowOnError=!1,this.retryEnabled=!0,this.method=A.method,this.url=A.url,this.headers=new Headers(A.headers),this.schema=A.schema,this.body=A.body,this.shouldThrowOnError=(Q=A.shouldThrowOnError)!==null&&Q!==void 0?Q:!1,this.signal=A.signal,this.isMaybeSingle=(B=A.isMaybeSingle)!==null&&B!==void 0?B:!1,this.shouldStripNulls=(I=A.shouldStripNulls)!==null&&I!==void 0?I:!1,this.urlLengthLimit=(E=A.urlLengthLimit)!==null&&E!==void 0?E:8000,this.retryEnabled=(D=A.retry)!==null&&D!==void 0?D:!0,A.fetch)this.fetch=A.fetch;else this.fetch=fetch}throwOnError(){return this.shouldThrowOnError=!0,this}stripNulls(){if(this.headers.get("Accept")==="text/csv")throw Error("stripNulls() cannot be used with csv()");return this.shouldStripNulls=!0,this}setHeader(A,Q){return this.headers=new Headers(this.headers),this.headers.set(A,Q),this}retry(A){return this.retryEnabled=A,this}then(A,Q){var B=this;if(this.schema===void 0);else if(["GET","HEAD"].includes(this.method))this.headers.set("Accept-Profile",this.schema);else this.headers.set("Content-Profile",this.schema);if(this.method!=="GET"&&this.method!=="HEAD")this.headers.set("Content-Type","application/json");if(this.shouldStripNulls){let $=this.headers.get("Accept");if($==="application/vnd.pgrst.object+json")this.headers.set("Accept","application/vnd.pgrst.object+json;nulls=stripped");else if(!$||$==="application/json")this.headers.set("Accept","application/vnd.pgrst.array+json;nulls=stripped")}let I=this.fetch,D=(async()=>{let $=0;while(!0){let H=new Headers(B.headers);if($>0)H.set("X-Retry-Count",String($));let X;try{X=await I(B.url.toString(),{method:B.method,headers:H,body:JSON.stringify(B.body,(F,W)=>typeof W==="bigint"?W.toString():W),signal:B.signal})}catch(F){if((F===null||F===void 0?void 0:F.name)==="AbortError"||(F===null||F===void 0?void 0:F.code)==="ABORT_ERR")throw F;if(!MEA.includes(B.method))throw F;if(B.retryEnabled&&$<3){let W=WEA($);$++,await KEA(W,B.signal);continue}throw F}if($uA(B.method,X.status,$,B.retryEnabled)){var G,Y;let F=(G=(Y=X.headers)===null||Y===void 0?void 0:Y.get("Retry-After"))!==null&&G!==void 0?G:null,W=F!==null?Math.max(0,parseInt(F,10)||0)*1000:WEA($);await X.text(),$++,await KEA(W,B.signal);continue}return await B.processResponse(X)}})();if(!this.shouldThrowOnError)D=D.catch(($)=>{var G;let Y="",H="",X="",F=$===null||$===void 0?void 0:$.cause;if(F){var W,q,Z,N;let T=(W=F===null||F===void 0?void 0:F.message)!==null&&W!==void 0?W:"",R=(q=F===null||F===void 0?void 0:F.code)!==null&&q!==void 0?q:"";if(Y=`${(Z=$===null||$===void 0?void 0:$.name)!==null&&Z!==void 0?Z:"FetchError"}: ${$===null||$===void 0?void 0:$.message}`,Y+=`
|
|
96
96
|
|
|
97
97
|
Caused by: ${(N=F===null||F===void 0?void 0:F.name)!==null&&N!==void 0?N:"Error"}: ${T}`,R)Y+=` (${R})`;if(F===null||F===void 0?void 0:F.stack)Y+=`
|
|
@@ -720,7 +720,7 @@ ${B}
|
|
|
720
720
|
`;G.addFile("capacitor.config.json",WMA.from(F,"utf-8"))}await gXQ(Q,G.toBuffer())}var Q7Q=new Set(["CAPGO_IOS_SCHEME","CAPGO_IOS_TARGET","CAPGO_IOS_DISTRIBUTION","BUILD_OUTPUT_UPLOAD_ENABLED","BUILD_OUTPUT_RETENTION_SECONDS","SKIP_BUILD_NUMBER_BUMP","CAPGO_IOS_SOURCE_DIR","CAPGO_IOS_APP_DIR","CAPGO_IOS_PROJECT_DIR","IOS_PROJECT_DIR","CAPGO_ANDROID_SOURCE_DIR","CAPGO_ANDROID_APP_DIR","CAPGO_ANDROID_PROJECT_DIR","ANDROID_PROJECT_DIR","CAPGO_ANDROID_FLAVOR"]);function B7Q(A,Q,B,I){let E={platform:Q,buildMode:B,cliVersion:I,iosScheme:A.CAPGO_IOS_SCHEME,iosTarget:A.CAPGO_IOS_TARGET,iosDistribution:A.CAPGO_IOS_DISTRIBUTION,iosSourceDir:A.CAPGO_IOS_SOURCE_DIR,iosAppDir:A.CAPGO_IOS_APP_DIR,iosProjectDir:A.CAPGO_IOS_PROJECT_DIR,androidSourceDir:A.CAPGO_ANDROID_SOURCE_DIR,androidAppDir:A.CAPGO_ANDROID_APP_DIR,androidProjectDir:A.CAPGO_ANDROID_PROJECT_DIR,androidFlavor:A.CAPGO_ANDROID_FLAVOR,outputUploadEnabled:A.BUILD_OUTPUT_UPLOAD_ENABLED==="true",outputRetentionSeconds:A.BUILD_OUTPUT_RETENTION_SECONDS?Number.parseInt(A.BUILD_OUTPUT_RETENTION_SECONDS,10)||LJ:LJ,skipBuildNumberBump:A.SKIP_BUILD_NUMBER_BUMP==="true"},D={};for(let[$,G]of Object.entries(A))if(!Q7Q.has($)&&G!==void 0)D[$]=G;return{buildOptions:E,buildCredentials:D}}async function UH(A,Q,B=!1,I){let E=Date.now(),D=Q.verbose??!1,$=I||uXQ(B),G=null,Y=Q.outputRecord?{...$,customMsg:async(H,X)=>{if(H==="qr_download_link"&&typeof X.url==="string")G=X.url;await $.customMsg(H,X)}}:$;try{Q.apikey=Q.apikey||vQ(B);let H=Tn(Q.path||Sn()),X=await mXQ(H,()=>rQ());if(A=A||X?.config?.appId,!A)throw Error("Missing argument, you need to provide a appId, or be in a capacitor project");let F=await hXQ(Q.platform,{silent:B}),W=Q.supaHost||"https://api.capgo.app",q=await eQ(Q.apikey,Q.supaHost,Q.supaAnon);await KZ(q,Q.apikey,"app.build_native",{appId:A},{message:`Insufficient permissions to request a native build for app ${A}`,silent:B});let Z=await mI(q,A);if(Y.info(`Requesting native build for ${A}`),Y.info(`Platform: ${F}`),Y.info(`Project: ${H}`),Y.info(`
|
|
721
721
|
\uD83D\uDD12 Security: Credentials are never stored on Capgo servers`),Y.info(" They are used only during build and deleted after"),Y.info(` Build outputs can optionally be uploaded for time-limited download links
|
|
722
722
|
`),D)Y.info(`API host: ${W}`);let N={};if(Q.buildCertificateBase64)N.BUILD_CERTIFICATE_BASE64=Q.buildCertificateBase64;if(Q.p12Password)N.P12_PASSWORD=Q.p12Password;if(Q.appleKeyId)N.APPLE_KEY_ID=Q.appleKeyId;if(Q.appleIssuerId)N.APPLE_ISSUER_ID=Q.appleIssuerId;if(Q.appleKeyContent)N.APPLE_KEY_CONTENT=Q.appleKeyContent;if(Q.appStoreConnectTeamId)N.APP_STORE_CONNECT_TEAM_ID=Q.appStoreConnectTeamId;if(Q.iosScheme)N.CAPGO_IOS_SCHEME=Q.iosScheme;if(Q.iosTarget)N.CAPGO_IOS_TARGET=Q.iosTarget;if(Q.iosDistribution)N.CAPGO_IOS_DISTRIBUTION=Q.iosDistribution;if(Q.iosProvisioningProfile&&Q.iosProvisioningProfile.length>0){let P=zT(Q.iosProvisioningProfile,Tn(Q.path||Sn()));N.CAPGO_IOS_PROVISIONING_MAP=JSON.stringify(P)}if(Q.iosProvisioningMap)N.CAPGO_IOS_PROVISIONING_MAP=Q.iosProvisioningMap;if(Q.androidKeystoreFile)N.ANDROID_KEYSTORE_FILE=Q.androidKeystoreFile;if(Q.keystoreKeyAlias)N.KEYSTORE_KEY_ALIAS=Q.keystoreKeyAlias;let w=!!Q.keystoreKeyPassword,O=!!Q.keystoreStorePassword;if(w&&!O)N.KEYSTORE_KEY_PASSWORD=Q.keystoreKeyPassword,N.KEYSTORE_STORE_PASSWORD=Q.keystoreKeyPassword;else if(!w&&O)N.KEYSTORE_KEY_PASSWORD=Q.keystoreStorePassword,N.KEYSTORE_STORE_PASSWORD=Q.keystoreStorePassword;else if(w&&O)N.KEYSTORE_KEY_PASSWORD=Q.keystoreKeyPassword,N.KEYSTORE_STORE_PASSWORD=Q.keystoreStorePassword;if(typeof Q.androidFlavor==="string"){let P=Q.androidFlavor.trim();if(P)N.CAPGO_ANDROID_FLAVOR=P}if(Q.playConfigJson)N.PLAY_CONFIG_JSON=Q.playConfigJson;if(Q.inAppUpdatePriority!==void 0)N.PLAY_STORE_IN_APP_UPDATE_PRIORITY=String(_C(Q.inAppUpdatePriority));if(Q.outputUpload!==void 0)N.BUILD_OUTPUT_UPLOAD_ENABLED=EG(Q.outputUpload)?"true":"false";if(Q.outputRetention)N.BUILD_OUTPUT_RETENTION_SECONDS=String(PC(Q.outputRetention));if(Q.skipBuildNumberBump!==void 0)N.SKIP_BUILD_NUMBER_BUMP=EG(Q.skipBuildNumberBump)?"true":"false";let T=await dXA(A,F,Object.keys(N).length>0?N:void 0);if(Q.playstoreUpload===!1&&T)delete T.PLAY_CONFIG_JSON,Y.info("ℹ️ --no-playstore-upload specified, Play Store upload disabled for this build");let R=J6(X?.config,F);if(T&&R)if(F==="ios")T.CAPGO_IOS_SOURCE_DIR=R,T.CAPGO_IOS_APP_DIR=R,T.CAPGO_IOS_PROJECT_DIR=R,T.IOS_PROJECT_DIR=R;else T.CAPGO_ANDROID_SOURCE_DIR=R,T.CAPGO_ANDROID_APP_DIR=R,T.CAPGO_ANDROID_PROJECT_DIR=R,T.ANDROID_PROJECT_DIR=R;if(!T)throw Y.error("❌ No credentials found for this app and platform"),Y.error(""),Y.error("You must provide credentials via:"),Y.error(" 1. CLI arguments (--apple-key-id, --p12-password, etc.)"),Y.error(" 2. Environment variables (APPLE_KEY_ID, P12_PASSWORD, etc.)"),Y.error(" 3. Saved credentials file:"),Y.error(` npx @capgo/cli build credentials save --appId ${A} --platform ${F}`),Y.error(""),Y.error("Documentation:"),Y.error(" https://capgo.app/docs/cli/cloud-build/credentials/"),Error("No credentials found. Please provide credentials before building.");let S=[];if(F==="ios"){let P=T.CAPGO_IOS_DISTRIBUTION,x=["app_store","ad_hoc"];if(P&&!x.includes(P))S.push(`Invalid CAPGO_IOS_DISTRIBUTION value: '${P}'. Must be one of: ${x.join(", ")}`);let DA=P&&x.includes(P)?P:"app_store";if(!P)Y.info("ℹ️ --ios-distribution not specified, defaulting to app_store");if(T.CAPGO_IOS_DISTRIBUTION=DA,!T.BUILD_CERTIFICATE_BASE64)S.push("BUILD_CERTIFICATE_BASE64 (or --build-certificate-base64)");if(!T.P12_PASSWORD)Y.warn("⚠️ P12_PASSWORD not provided - assuming certificate has no password"),Y.warn(" If your certificate requires a password, provide it with --p12-password");if(!!(T.BUILD_PROVISION_PROFILE_BASE64||T.APPLE_PROFILE_NAME)&&!T.CAPGO_IOS_PROVISIONING_MAP)throw Y.error("❌ Legacy provisioning profile format detected. Run:"),Y.error(" npx @capgo/cli build credentials migrate --platform ios"),Y.error(""),Y.error(" This will convert your existing provisioning profile to the new multi-target format."),Error("Legacy provisioning profile format detected. Run: npx @capgo/cli build credentials migrate --platform ios");if(!T.CAPGO_IOS_PROVISIONING_MAP)S.push('CAPGO_IOS_PROVISIONING_MAP (use --ios-provisioning-profile or save via "build credentials save")');if(DA==="app_store"){let BA=!!T.APPLE_KEY_ID,zA=!!T.APPLE_ISSUER_ID,GA=!!T.APPLE_KEY_CONTENT,OA=BA||zA||GA;if(!(BA&&zA&&GA))if(OA){let PA=[];if(!BA)PA.push("APPLE_KEY_ID (or --apple-key-id)");if(!zA)PA.push("APPLE_ISSUER_ID (or --apple-issuer-id)");if(!GA)PA.push("APPLE_KEY_CONTENT (or --apple-key-content)");S.push(`Incomplete App Store Connect API key - missing: ${PA.join(", ")}`)}else if(T.BUILD_OUTPUT_UPLOAD_ENABLED!=="true")S.push("APPLE_KEY_ID/APPLE_ISSUER_ID/APPLE_KEY_CONTENT or BUILD_OUTPUT_UPLOAD_ENABLED=true (or --output-upload) (build has no output destination - enable either TestFlight upload or Capgo download link)");else if(T.SKIP_BUILD_NUMBER_BUMP!=="true")S.push("APPLE_KEY_ID/APPLE_ISSUER_ID/APPLE_KEY_CONTENT or --skip-build-number-bump (App Store Connect API key not provided - build numbers cannot be auto-incremented without it)");else Y.warn("⚠️ App Store Connect API key not provided - build will succeed but cannot auto-upload to TestFlight")}else if(DA==="ad_hoc")Y.info("\uD83D\uDCE6 Ad-hoc distribution mode: App Store Connect API key not required"),Y.info(" Build number will use timestamp-based fallback");if(!T.APP_STORE_CONNECT_TEAM_ID)S.push("APP_STORE_CONNECT_TEAM_ID (or --app-store-connect-team-id)")}else if(F==="android"){if(!T.ANDROID_KEYSTORE_FILE)S.push("ANDROID_KEYSTORE_FILE (or --android-keystore-file)");if(!T.KEYSTORE_KEY_ALIAS)S.push("KEYSTORE_KEY_ALIAS (or --keystore-key-alias)");if(!T.KEYSTORE_KEY_PASSWORD&&!T.KEYSTORE_STORE_PASSWORD)S.push("KEYSTORE_KEY_PASSWORD or KEYSTORE_STORE_PASSWORD (at least one password required)");if(!T.PLAY_CONFIG_JSON)if(T.BUILD_OUTPUT_UPLOAD_ENABLED!=="true")S.push("PLAY_CONFIG_JSON or BUILD_OUTPUT_UPLOAD_ENABLED=true (build has no output destination - enable either Play Store upload or Capgo download link)");else Y.warn("⚠️ PLAY_CONFIG_JSON not provided - build will succeed but cannot auto-upload to Play Store")}if(S.length>0){Y.error(`❌ Missing required credentials for ${F}:`),Y.error("");for(let P of S)Y.error(` • ${P}`);throw Y.error(""),Y.error("Provide credentials via:"),Y.error(` 1. CLI arguments: npx @capgo/cli build request --platform ${F} ${F==="ios"?'--apple-key-id "..." --apple-issuer-id "..." --apple-key-content "..."':'--android-keystore-file "..." --keystore-key-alias "..."'}`),Y.error(` 2. Environment variables: ${F==="ios"?'export APPLE_KEY_ID="..." APPLE_ISSUER_ID="..." APPLE_KEY_CONTENT="..."':'export ANDROID_KEYSTORE_FILE="..." KEYSTORE_KEY_ALIAS="..."'}`),Y.error(` 3. Saved credentials: npx @capgo/cli build credentials save --platform ${F} ...`),Y.error(""),Y.error("Documentation:"),Y.error(` https://capgo.app/docs/cli/cloud-build/${F}/`),Error(`Missing required credentials for ${F}: ${S.join(", ")}`)}if(!Q.buildMode)Y.info("ℹ️ --build-mode not specified, defaulting to release");if(!T.BUILD_OUTPUT_UPLOAD_ENABLED)Y.info("ℹ️ --output-upload not specified, defaulting to false (no Capgo download link)");if(!T.BUILD_OUTPUT_RETENTION_SECONDS)Y.info(`ℹ️ --output-retention not specified, defaulting to ${LJ}s (1 hour)`);if(!T.SKIP_BUILD_NUMBER_BUMP)Y.info("ℹ️ --skip-build-number-bump not specified, build number will be auto-incremented (default)");let{buildOptions:k,buildCredentials:l}=B7Q(T,F,Q.buildMode||"release",fE.version),s={app_id:A,platform:F,build_mode:Q.buildMode||"release",build_options:k,build_credentials:l};if(Y.info("✓ Using credentials (merged from CLI args, env vars, and saved file)"),D){let P=Object.keys(l);Y.info(`Credentials provided: ${P.join(", ")}`),Y.info(`Build options: platform=${k.platform}, mode=${k.buildMode}, cliVersion=${k.cliVersion}`)}Y.info("Requesting build from Capgo...");let e=3,c=await cXQ(`${W}/build/request`,{method:"POST",headers:{"Content-Type":"application/json",authorization:Q.apikey},body:JSON.stringify(s)},e,Y);if(!c.ok){let P=await c.text();throw Error(`Failed to request build: ${c.status} - ${P}`)}let $A=await c.json();if(Y.success(`Build job created: ${$A.job_id}`),Y.info(`Status: ${$A.status}`),D)Y.info(`Upload URL: ${$A.upload_url}`),Y.info(`Upload expires: ${$A.upload_expires_at}`);let a=IMA()||Q.aiAnalytics===!0,HA=null,LA=!1;if(a&&$A.job_id)HA=$A.job_id,await EMA($A.job_id),$MA($A.job_id,()=>LA);let TA={...Y,buildLog:(P)=>{if(Y.buildLog(P),a&&HA)DMA(HA,P)}};await $B(Q.apikey,{channel:"native-builder",event:"Build requested",icon:"\uD83C\uDFD7️",org_id:Z,tracking_version:2,tags:{"app-id":A,platform:F},notify:!1}).catch();let r=QD(bXQ(),`capgo-build-${Date.now()}`);await kXQ(r,{recursive:!0});let j=QD(r,`${KMA(H)}.zip`);try{Y.info(`Zipping ${F} project from ${H}...`),await A7Q(H,j,F,X?.config,{nodeModules:Q.nodeModules});let P=await xXQ(j),x=(P.size/1024/1024).toFixed(2);if(Y.success(`Created zip: ${j} (${x} MB)`),Y.info("Uploading to builder..."),D)Y.info(`Upload endpoint: ${$A.upload_url}`),Y.info(`File size: ${x} MB`),Y.info(`Job ID: ${$A.job_id}`);let DA=PXQ(j);Y.uploadProgress(0);let o=Date.now(),BA=Q.buildMode||"release";Gj({apikey:Q.apikey,appId:A,orgId:Z,platform:F,buildMode:BA,jobId:$A.job_id,sizeBytes:P.size,phase:"started"}),await new Promise((ZQ,XQ)=>{let OQ=new Uj.Upload(DA,{endpoint:$A.upload_url,chunkSize:5242880,metadata:{filename:KMA(j),filetype:"application/zip"},headers:{authorization:Q.apikey},onBeforeRequest(CB){if(D){Y.info(`[TUS] ${CB.getMethod()} ${CB.getURL()}`);let qB=CB.getHeader("authorization");Y.info(`[TUS] Authorization header present: ${!!qB}`)}},onAfterResponse(CB,qB){if(D){Y.info(`[TUS] Response status: ${qB.getStatus()}`);let MQ=qB.getHeader("upload-offset"),SI=qB.getHeader("tus-resumable");Y.info(`[TUS] Upload-Offset: ${MQ}, Tus-Resumable: ${SI}`)}},async onError(CB){if(await Gj({apikey:Q.apikey,appId:A,orgId:Z,platform:F,buildMode:BA,jobId:$A.job_id,sizeBytes:P.size,phase:"failed",durationSeconds:(Date.now()-o)/1000,error:CB}),Y.error(`Upload error: ${CB.message}`),CB instanceof Uj.DetailedError){let qB=CB.originalResponse?.getBody(),MQ=CB.originalResponse?.getStatus(),SI=CB.originalRequest?.getURL();if(D)Y.error(`[TUS] Request URL: ${SI}`),Y.error(`[TUS] Response status: ${MQ}`),Y.error(`[TUS] Response body: ${qB}`);let B0=(()=>{try{let mB=JSON.parse(qB||'{"error": "unknown error"}');return mB.status||mB.error||mB.message||"unknown error"}catch{return qB||CB.message}})();XQ(Error(`TUS upload failed: ${B0}`))}else XQ(Error(`TUS upload failed: ${CB.message||CB.toString()}`))},onProgress(CB,qB){let MQ=Number.parseFloat((CB/qB*100).toFixed(2));Y.uploadProgress(MQ)},onSuccess(){if(Gj({apikey:Q.apikey,appId:A,orgId:Z,platform:F,buildMode:BA,jobId:$A.job_id,sizeBytes:P.size,phase:"succeeded",durationSeconds:(Date.now()-o)/1000}),Y.uploadProgress(100),D)Y.success("TUS upload completed successfully");ZQ()}});if(D)Y.info("[TUS] Starting upload...");OQ.start()}),Y.info("Starting build job...");let zA=await fetch(`${W}/build/start/${$A.job_id}`,{method:"POST",headers:{"Content-Type":"application/json",authorization:Q.apikey},body:JSON.stringify({app_id:A})});if(!zA.ok){let ZQ=await zA.text();throw Error(`Failed to start build: ${zA.status} - ${ZQ}`)}let GA=await zA.json();Y.success("Build started!"),Y.info("Streaming build logs...");let OA=new AbortController,sA=!1,PA=async()=>{if(sA)return;sA=!0;let ZQ=new AbortController,XQ=setTimeout(()=>ZQ.abort(),4000);try{await fetch(`${W}/build/cancel/${$A.job_id}`,{method:"POST",headers:{"Content-Type":"application/json",authorization:Q.apikey},body:JSON.stringify({app_id:A}),signal:ZQ.signal})}catch{}finally{clearTimeout(XQ)}},aA=async()=>{try{if(sA)_D.exit(1);Y.warn("Canceling build... (press Ctrl+C again to force quit)"),await PA(),OA.abort()}catch{}};_D.on("SIGINT",aA);let UQ,RA=!1,QQ=async()=>{try{let ZQ=await fetch(`${W}/build/status?job_id=${encodeURIComponent($A.job_id)}&app_id=${encodeURIComponent(A)}&platform=${F}`,{headers:{authorization:Q.apikey}});if(!ZQ.ok)return null;let XQ=await ZQ.json(),OQ=XQ.status?.toLowerCase?.()??"";if(RA)Y.info(`Build status: ${OQ||XQ.status}`);if(Yj.has(OQ))return OQ;return null}catch{return null}},dA=null;try{dA=await nXQ(B,D,GA.logs_url,GA.logs_token,QQ,OA.signal,()=>{RA=!0},B&&!I&&!Q.outputRecord?void 0:TA)}finally{_D.removeListener("SIGINT",aA)}if(dA){if(UQ=dA,Yj.has(dA))await QQ().catch(()=>{})}else UQ=await iXQ(W,$A.job_id,A,F,Q.apikey,B,RA,OA.signal,Y);if(UQ==="succeeded")Y.success("Build completed successfully!");else if(UQ==="failed")Y.error("Build failed");else Y.warn(`Build finished with status: ${UQ}`);if(Q.outputRecord&&UQ==="succeeded")try{let ZQ=await FMA(Q.outputRecord,{jobId:$A.job_id,appId:A,platform:F,buildMode:Q.buildMode??"release",status:UQ,outputUrl:G},(XQ)=>Y.warn(XQ));if(Y.success(`Build output record written to ${Q.outputRecord}`),!ZQ.outputUrl)Y.info("ℹ️ Record contains no download URL — pass --output-upload to publish one.");if(ZQ.qrCodePngPath)Y.info(`ℹ️ QR code PNG written to ${ZQ.qrCodePngPath}`)}catch(ZQ){Y.warn(`Failed to write build output record to ${Q.outputRecord}: ${ZQ instanceof Error?ZQ.message:String(ZQ)}`)}if(UQ==="failed"&&a&&HA){let ZQ=JMA({isTTY:_D.stdout.isTTY===!0,aiAnalyticsFlag:Q.aiAnalytics===!0}),XQ="⚠ AI can make mistakes. Always verify the diagnosis against the full log before applying the suggested fix.",OQ=(B0)=>{if(B0==="ok")return"success";if(B0==="already_analyzed")return"already_analyzed";if(B0==="too_big")return"too_big";return"error"},CB=async(B0,mB)=>{await $j({apikey:Q.apikey,orgId:Z,appId:A,platform:F,jobId:HA,choice:B0,triggeredBy:mB});let y1=`${_D.env.CAPGO_AI_LOG_BASE_DIR||"/tmp/capgo-builds"}/${HA}.log`,xE="";try{let{readFile:TB}=await import("node:fs/promises");xE=await TB(y1,"utf8")}catch(TB){let JI=TB instanceof Error?TB.message:String(TB);_D.stderr.write(`AI analysis skipped: could not read captured log at ${y1}: ${JI}
|
|
723
|
-
`);return}let K1=_D.stdout.isTTY===!0,e0=K1?_D.stdout:_D.stderr,zQ=K1?fI():null;zQ?.start("Analyzing build log with Capgo AI
|
|
723
|
+
`);return}let K1=_D.stdout.isTTY===!0,e0=K1?_D.stdout:_D.stderr,zQ=K1?fI():null;zQ?.start("Analyzing build log with Capgo AI");let aQ;try{aQ=await UMA({apiHost:W,apikey:Q.apikey,jobId:HA,appId:A,logs:xE})}finally{zQ?.stop("Capgo AI finished")}let HB=OQ(aQ.kind);if(await XMA({apikey:Q.apikey,orgId:Z,appId:A,platform:F,jobId:HA,result:HB,errorStatus:aQ.kind==="error"?aQ.status:void 0}),aQ.kind==="ok")e0.write(`
|
|
724
724
|
--- AI analysis ---
|
|
725
725
|
${HMA(aQ.analysis,K1)}
|
|
726
726
|
|
|
@@ -736,7 +736,7 @@ Saved prompt to ${B0}
|
|
|
736
736
|
Point your local AI (Claude, Codex, aider, etc.) at this file.
|
|
737
737
|
${"⚠ AI can make mistakes. Always verify the diagnosis against the full log before applying the suggested fix."}
|
|
738
738
|
`)},MQ=async()=>{await $j({apikey:Q.apikey,orgId:Z,appId:A,platform:F,jobId:HA,choice:"skip",triggeredBy:ZQ==="auto_upload"||ZQ==="skip"?"ci_flag":"menu"})};async function SI(){if(await On(HA)){_D.stdout.write(`Log too big for AI analysis (>10 MB). Offering local AI instead.
|
|
739
|
-
`),await qB();return}let B0=await w1({message:"Choose AI analysis",options:[{value:"capgo",label:"Capgo AI
|
|
739
|
+
`),await qB();return}let B0=await w1({message:"Choose AI analysis",options:[{value:"capgo",label:"Capgo AI"},{value:"local",label:"Local AI (write prompt to file)"},{value:"skip",label:"Skip"}]});if(B0==="capgo")await CB("capgo_ai","menu");else if(B0==="local")await qB();else await MQ()}try{if(ZQ==="skip")await MQ();else if(ZQ==="auto_upload")if(await On(HA))_D.stderr.write(`Log too big for AI analysis (>10 MB), skipping
|
|
740
740
|
`),await MQ();else await CB("auto_upload","ci_flag");else if(ZQ==="ask_then_menu"){let B0=await yI({message:"Build failed. Run AI analysis?"});if(!B0||typeof B0==="symbol")await MQ();else await SI()}else await SI()}catch(B0){_D.stderr.write(`AI analysis flow errored: ${B0 instanceof Error?B0.message:String(B0)}
|
|
741
741
|
`)}}let PQ=((Date.now()-E)/1000).toFixed(2);return await $B(Q.apikey,{channel:"native-builder",event:UQ==="succeeded"?"Build succeeded":"Build failed",icon:UQ==="succeeded"?"✅":"❌",org_id:Z,tracking_version:2,tags:{"app-id":A,platform:F,status:UQ||"unknown",time:PQ},notify:!1}).catch(),{success:UQ==="succeeded",jobId:$A.job_id,uploadUrl:$A.upload_url,status:UQ||GA.status||$A.status}}finally{await vXQ(r,{recursive:!0,force:!0})}}catch(H){let X=H instanceof Error?H.message:String(H);return Y.error(X),{success:!1,error:X}}}async function wMA(A,Q){if(!(await UH(A,Q,!1)).success)yXQ(1)}import{Buffer as vM}from"node:buffer";import{spawn as I7Q,spawnSync as E7Q}from"node:child_process";var LMA=100,D7Q=20,$7Q=new Set(["P12_PASSWORD","APPLE_KEY_CONTENT","BUILD_CERTIFICATE_BASE64","BUILD_PROVISION_PROFILE_BASE64","CAPGO_IOS_PROVISIONING_MAP","CAPGO_IOS_PROVISIONING_MAP_BASE64","KEYSTORE_KEY_PASSWORD","KEYSTORE_STORE_PASSWORD","ANDROID_KEYSTORE_FILE","PLAY_CONFIG_JSON","CAPGO_TOKEN"]),OMA={provider:"github",label:"GitHub Actions repository secrets",cli:"gh"},RMA={provider:"gitlab",label:"GitLab CI/CD variables",cli:"glab"};function G7Q(A,Q,B={}){let I=E7Q(A,Q,{encoding:"utf8",input:B.input,stdio:["pipe","pipe","pipe"],windowsHide:!0});return{status:I.status,stdout:I.stdout||"",stderr:I.stderr||"",error:I.error}}function Pn(A,Q,B={}){return new Promise((I)=>{let E=I7Q(A,Q,{stdio:["pipe","pipe","pipe"],windowsHide:!0}),D=[],$=[];if(E.stdout.on("data",(G)=>D.push(G)),E.stderr.on("data",(G)=>$.push(G)),E.on("error",(G)=>{I({status:null,stdout:vM.concat(D).toString("utf8"),stderr:vM.concat($).toString("utf8"),error:G})}),E.on("close",(G)=>{I({status:G,stdout:vM.concat(D).toString("utf8"),stderr:vM.concat($).toString("utf8")})}),B.input)E.stdin.write(B.input);E.stdin.end()})}function Hj(A,Q){let B=[],I=!1,E=A.CAPGO_IOS_PROVISIONING_MAP;for(let[$,G]of Object.entries(A)){if(typeof G!=="string"||G.length===0)continue;if($==="CAPGO_IOS_PROVISIONING_MAP")continue;if($==="CAPGO_IOS_PROVISIONING_MAP_BASE64")I=!0;B.push({key:$,value:G,masked:$7Q.has($)})}if(E&&!I)B.push({key:"CAPGO_IOS_PROVISIONING_MAP_BASE64",value:vM.from(E,"utf8").toString("base64"),masked:!0});let D=Q?.trim();if(D)B.push({key:"CAPGO_TOKEN",value:D,masked:!0});return B}function Xj(A=G7Q){let Q=J7Q(A),B=[],I=[],E=[];if(Q.size===0)return E.push("No GitHub or GitLab git remote detected."),{targets:B,setup:I,notes:E};if(Q.has("github")){let D=VMA("gh",A);if(D.ready)B.push(OMA);else I.push(TMA(OMA,D))}if(Q.has("gitlab")){let D=VMA("glab",A);if(D.ready)B.push(RMA);else I.push(TMA(RMA,D))}return{targets:B,setup:I,notes:E}}function KG(A){return A?.label||"your git hosting platform"}async function Cj(A,Q=Pn){if(A.provider==="github"){let I=await Q("gh",["repo","view","--json","nameWithOwner","-q",".nameWithOwner"]);if(I.status===0){let E=I.stdout.trim();return E.length>0?E:null}return null}let B=await Q("glab",["repo","view","-F","json"]);if(B.status===0)try{let I=JSON.parse(B.stdout);return I.path_with_namespace??I.name??null}catch{return null}return null}async function Fj(A,Q,B=Pn){let I=A.provider==="github"?await H7Q(B):await X7Q(B),E=new Set(I);return Q.filter((D)=>E.has(D))}async function Wj(A,Q,B=[],I=Pn,E){let D=new Set(B),$=Q.length,G=0;for(let Y of Q){if(G+=1,E?.(G,$,Y.key),A.provider==="github"){await SMA(A.cli,["secret","set",Y.key],I,Y.value);continue}let X=["variable",D.has(Y.key)?"update":"set",Y.key,"--raw"];if(Y.masked)X.push("--masked");await SMA(A.cli,X,I,Y.value)}}function J7Q(A){let Q=A("git",["remote","-v"]),B=new Set;if(Q.status!==0)return B;for(let I of Q.stdout.split(/\r?\n/)){let E=I.trim().split(/\s+/)[1]||I.trim(),D=Y7Q(E);if(!D)continue;if(D.includes("github"))B.add("github");if(D.includes("gitlab"))B.add("gitlab")}return B}function Y7Q(A){if(!A)return null;try{let I=new URL(A).hostname.toLowerCase();if(I)return I}catch{}let Q=A.match(/^ssh:\/\/(?:[^@]+@)?([^/:]+)/i);if(Q?.[1])return Q[1].toLowerCase();let B=A.match(/^(?:[^@]+@)?([^:]+):/);if(B?.[1])return B[1].toLowerCase();return null}function VMA(A,Q){if(Q(A,["--version"]).status!==0)return{ready:!1,reason:`${A} is not installed`,kind:"not-installed"};if(Q(A,["auth","status"]).status!==0)return{ready:!1,reason:`${A} is not authenticated`,kind:"not-authenticated"};return{ready:!0,reason:""}}function TMA(A,Q){let B=Q.kind||"not-authenticated";if(A.provider==="github")return{target:A,reason:B,message:B==="not-installed"?"GitHub CLI is needed to upload GitHub Actions secrets.":"GitHub CLI is installed but not logged in.",commands:B==="not-installed"?["Install GitHub CLI: https://cli.github.com/","gh auth login"]:["gh auth login"]};return{target:A,reason:B,message:B==="not-installed"?"GitLab CLI is needed to upload GitLab CI/CD variables.":"GitLab CLI is installed but not logged in.",commands:B==="not-installed"?["Install GitLab CLI: https://gitlab.com/gitlab-org/cli#installation","glab auth login"]:["glab auth login"]}}function U7Q(A){if(Array.isArray(A))return A;if(A&&typeof A==="object"){let Q=A;if(Array.isArray(Q.variables))return Q.variables;if(Array.isArray(Q.data))return Q.data}return[]}async function SMA(A,Q,B,I){let E=await B(A,Q,{input:I});if(E.status!==0)throw Error(_n(A,Q.slice(0,3),E))}async function H7Q(A){let Q=await A("gh",["secret","list","--json","name"]);if(Q.status!==0)throw Error(_n("gh",["secret","list"],Q));let B=jMA(Q.stdout,"gh secret list");if(!Array.isArray(B))return[];return B.map((I)=>typeof I?.name==="string"?I.name:null).filter((I)=>!!I)}async function X7Q(A){let Q=new Set;for(let B=1;B<=D7Q;B+=1){let I=await A("glab",["variable","list","--output","json","--per-page",String(LMA),"--page",String(B)]);if(I.status!==0)throw Error(_n("glab",["variable","list"],I));let E=jMA(I.stdout,"glab variable list"),D=U7Q(E);for(let $ of D)if(typeof $.key==="string")Q.add($.key);else if(typeof $.name==="string")Q.add($.name);if(D.length<LMA)break}return[...Q]}function jMA(A,Q){try{return JSON.parse(A||"[]")}catch{throw Error(`${Q} returned invalid JSON`)}}function _n(A,Q,B){let I=[B.stderr,B.stdout,B.error?.message].filter(Boolean).join(`
|
|
742
742
|
`).trim(),E=[A,...Q].join(" ");return I?`${E} failed: ${I}`:`${E} failed`}vU();import vn from"node:crypto";import{createServer as C7Q}from"node:http";var _MA=["openid","https://www.googleapis.com/auth/userinfo.email","https://www.googleapis.com/auth/androidpublisher"],F7Q="https://accounts.google.com/o/oauth2/v2/auth",W7Q="https://oauth2.googleapis.com/token",K7Q="https://openidconnect.googleapis.com/v1/userinfo",q7Q="https://oauth2.googleapis.com/revoke",Z7Q=300000,kn="127.0.0.1",PMA="/callback";function xn(A){return A.toString("base64").replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}function M7Q(){let A=xn(vn.randomBytes(32)),Q=xn(vn.createHash("sha256").update(A).digest());return{verifier:A,challenge:Q,method:"S256"}}function N7Q(){return xn(vn.randomBytes(16))}function z7Q(A){let Q=new URLSearchParams({client_id:A.clientId,redirect_uri:A.redirectUri,response_type:"code",scope:A.scopes.join(" "),access_type:"offline",prompt:"consent",include_granted_scopes:"true",state:A.state,code_challenge:A.codeChallenge,code_challenge_method:"S256"});if(A.extra)for(let[B,I]of Object.entries(A.extra))Q.set(B,I);return`${F7Q}?${Q.toString()}`}function w7Q(A,Q=Date.now()){return{accessToken:A.access_token,refreshToken:A.refresh_token,expiresAt:Q+A.expires_in*1000,idToken:A.id_token,scope:A.scope,tokenType:A.token_type}}async function kMA(A){let Q=await fetch(W7Q,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:A.toString()}),B=await Q.text();if(!Q.ok){let E=B;try{let D=JSON.parse(B);if(D.error_description||D.error)E=`${D.error??""}${D.error&&D.error_description?": ":""}${D.error_description??""}`}catch{}throw Error(`Google token exchange failed (${Q.status}): ${E}`)}let I;try{I=JSON.parse(B)}catch{throw Error(`Google token endpoint returned non-JSON response: ${B.slice(0,200)}`)}return w7Q(I)}async function L7Q(A){let Q=new URLSearchParams({grant_type:"authorization_code",client_id:A.config.clientId,code:A.code,code_verifier:A.codeVerifier,redirect_uri:A.redirectUri});if(A.config.clientSecret)Q.set("client_secret",A.config.clientSecret);return kMA(Q)}async function vMA(A,Q){let B=new URLSearchParams({grant_type:"refresh_token",client_id:A.clientId,refresh_token:Q});if(A.clientSecret)B.set("client_secret",A.clientSecret);let I=await kMA(B);return{...I,refreshToken:I.refreshToken??Q}}async function xMA(A){let Q=await fetch(K7Q,{headers:{Authorization:`Bearer ${A}`}});if(!Q.ok){let I=await Q.text().catch(()=>"");throw Error(`userinfo failed (${Q.status}): ${I.slice(0,200)}`)}let B=await Q.json();return{sub:B.sub,email:B.email,emailVerified:!!B.email_verified,name:B.name,picture:B.picture}}async function gMA(A){let Q=await fetch(q7Q,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:new URLSearchParams({token:A}).toString()});if(!Q.ok&&Q.status!==400){let B=await Q.text().catch(()=>"");throw Error(`revoke failed (${Q.status}): ${B.slice(0,200)}`)}}function bMA(A){return A.replace(/[&<>"']/g,(Q)=>({"&":"&","<":"<",">":">",'"':""","'":"'"})[Q])}function O7Q(){return`<!doctype html><html><head><meta charset="utf-8"><title>Capgo — signed in</title>
|
package/dist/package.json
CHANGED
package/dist/src/sdk.js
CHANGED
|
@@ -124,7 +124,7 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
124
124
|
`)}),$.__defineSetter__("stack",function(X){return[X].concat($.stack).join(`
|
|
125
125
|
|
|
126
126
|
`)}),$}});var Lv=E((Qa0,Vv)=>{var V4=l("constants"),Yq0=process.cwd,RQ=null,Qq0=process.env.GRACEFUL_FS_PLATFORM||process.platform;process.cwd=function(){if(!RQ)RQ=Yq0.call(process);return RQ};try{process.cwd()}catch(D){}if(typeof process.chdir==="function"){if(jQ=process.chdir,process.chdir=function(D){RQ=null,jQ.call(process,D)},Object.setPrototypeOf)Object.setPrototypeOf(process.chdir,jQ)}var jQ;Vv.exports=Fq0;function Fq0(D){if(V4.hasOwnProperty("O_SYMLINK")&&process.version.match(/^v0\.6\.[0-2]|^v0\.5\./))$(D);if(!D.lutimes)X(D);if(D.chown=Q(D.chown),D.fchown=Q(D.fchown),D.lchown=Q(D.lchown),D.chmod=J(D.chmod),D.fchmod=J(D.fchmod),D.lchmod=J(D.lchmod),D.chownSync=F(D.chownSync),D.fchownSync=F(D.fchownSync),D.lchownSync=F(D.lchownSync),D.chmodSync=Y(D.chmodSync),D.fchmodSync=Y(D.fchmodSync),D.lchmodSync=Y(D.lchmodSync),D.stat=U(D.stat),D.fstat=U(D.fstat),D.lstat=U(D.lstat),D.statSync=Z(D.statSync),D.fstatSync=Z(D.fstatSync),D.lstatSync=Z(D.lstatSync),D.chmod&&!D.lchmod)D.lchmod=function(G,w,q){if(q)process.nextTick(q)},D.lchmodSync=function(){};if(D.chown&&!D.lchown)D.lchown=function(G,w,q,W){if(W)process.nextTick(W)},D.lchownSync=function(){};if(Qq0==="win32")D.rename=typeof D.rename!=="function"?D.rename:function(G){function w(q,W,H){var B=Date.now(),L=0;G(q,W,function M(I){if(I&&(I.code==="EACCES"||I.code==="EPERM"||I.code==="EBUSY")&&Date.now()-B<60000){if(setTimeout(function(){D.stat(W,function(K,N){if(K&&K.code==="ENOENT")G(q,W,M);else H(I)})},L),L<100)L+=10;return}if(H)H(I)})}if(Object.setPrototypeOf)Object.setPrototypeOf(w,G);return w}(D.rename);D.read=typeof D.read!=="function"?D.read:function(G){function w(q,W,H,B,L,M){var I;if(M&&typeof M==="function"){var K=0;I=function(N,z,R){if(N&&N.code==="EAGAIN"&&K<10)return K++,G.call(D,q,W,H,B,L,I);M.apply(this,arguments)}}return G.call(D,q,W,H,B,L,I)}if(Object.setPrototypeOf)Object.setPrototypeOf(w,G);return w}(D.read),D.readSync=typeof D.readSync!=="function"?D.readSync:function(G){return function(w,q,W,H,B){var L=0;while(!0)try{return G.call(D,w,q,W,H,B)}catch(M){if(M.code==="EAGAIN"&&L<10){L++;continue}throw M}}}(D.readSync);function $(G){G.lchmod=function(w,q,W){G.open(w,V4.O_WRONLY|V4.O_SYMLINK,q,function(H,B){if(H){if(W)W(H);return}G.fchmod(B,q,function(L){G.close(B,function(M){if(W)W(L||M)})})})},G.lchmodSync=function(w,q){var W=G.openSync(w,V4.O_WRONLY|V4.O_SYMLINK,q),H=!0,B;try{B=G.fchmodSync(W,q),H=!1}finally{if(H)try{G.closeSync(W)}catch(L){}else G.closeSync(W)}return B}}function X(G){if(V4.hasOwnProperty("O_SYMLINK")&&G.futimes)G.lutimes=function(w,q,W,H){G.open(w,V4.O_SYMLINK,function(B,L){if(B){if(H)H(B);return}G.futimes(L,q,W,function(M){G.close(L,function(I){if(H)H(M||I)})})})},G.lutimesSync=function(w,q,W){var H=G.openSync(w,V4.O_SYMLINK),B,L=!0;try{B=G.futimesSync(H,q,W),L=!1}finally{if(L)try{G.closeSync(H)}catch(M){}else G.closeSync(H)}return B};else if(G.futimes)G.lutimes=function(w,q,W,H){if(H)process.nextTick(H)},G.lutimesSync=function(){}}function J(G){if(!G)return G;return function(w,q,W){return G.call(D,w,q,function(H){if(O(H))H=null;if(W)W.apply(this,arguments)})}}function Y(G){if(!G)return G;return function(w,q){try{return G.call(D,w,q)}catch(W){if(!O(W))throw W}}}function Q(G){if(!G)return G;return function(w,q,W,H){return G.call(D,w,q,W,function(B){if(O(B))B=null;if(H)H.apply(this,arguments)})}}function F(G){if(!G)return G;return function(w,q,W){try{return G.call(D,w,q,W)}catch(H){if(!O(H))throw H}}}function U(G){if(!G)return G;return function(w,q,W){if(typeof q==="function")W=q,q=null;function H(B,L){if(L){if(L.uid<0)L.uid+=4294967296;if(L.gid<0)L.gid+=4294967296}if(W)W.apply(this,arguments)}return q?G.call(D,w,q,H):G.call(D,w,H)}}function Z(G){if(!G)return G;return function(w,q){var W=q?G.call(D,w,q):G.call(D,w);if(W){if(W.uid<0)W.uid+=4294967296;if(W.gid<0)W.gid+=4294967296}return W}}function O(G){if(!G)return!0;if(G.code==="ENOSYS")return!0;var w=!process.getuid||process.getuid()!==0;if(w){if(G.code==="EINVAL"||G.code==="EPERM")return!0}return!1}}});var Av=E((Fa0,Iv)=>{var Mv=l("stream").Stream;Iv.exports=Uq0;function Uq0(D){return{ReadStream:$,WriteStream:X};function $(J,Y){if(!(this instanceof $))return new $(J,Y);Mv.call(this);var Q=this;this.path=J,this.fd=null,this.readable=!0,this.paused=!1,this.flags="r",this.mode=438,this.bufferSize=65536,Y=Y||{};var F=Object.keys(Y);for(var U=0,Z=F.length;U<Z;U++){var O=F[U];this[O]=Y[O]}if(this.encoding)this.setEncoding(this.encoding);if(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 Error("start must be <= end");this.pos=this.start}if(this.fd!==null){process.nextTick(function(){Q._read()});return}D.open(this.path,this.flags,this.mode,function(G,w){if(G){Q.emit("error",G),Q.readable=!1;return}Q.fd=w,Q.emit("open",w),Q._read()})}function X(J,Y){if(!(this instanceof X))return new X(J,Y);Mv.call(this),this.path=J,this.fd=null,this.writable=!0,this.flags="w",this.encoding="binary",this.mode=438,this.bytesWritten=0,Y=Y||{};var Q=Object.keys(Y);for(var F=0,U=Q.length;F<U;F++){var Z=Q[F];this[Z]=Y[Z]}if(this.start!==void 0){if(typeof this.start!=="number")throw TypeError("start must be a Number");if(this.start<0)throw Error("start must be >= zero");this.pos=this.start}if(this.busy=!1,this._queue=[],this.fd===null)this._open=D.open,this._queue.push([this._open,this.path,this.flags,this.mode,void 0]),this.flush()}}});var Rv=E((Ua0,Ev)=>{Ev.exports=Oq0;var Zq0=Object.getPrototypeOf||function(D){return D.__proto__};function Oq0(D){if(D===null||typeof D!=="object")return D;if(D instanceof Object)var $={__proto__:Zq0(D)};else var $=Object.create(null);return Object.getOwnPropertyNames(D).forEach(function(X){Object.defineProperty($,X,Object.getOwnPropertyDescriptor(D,X))}),$}});var bD=E((Za0,oq)=>{var PD=l("fs"),Gq0=Lv(),wq0=Av(),qq0=Rv(),TQ=l("util"),Q1,SQ;if(typeof Symbol==="function"&&typeof Symbol.for==="function")Q1=Symbol.for("graceful-fs.queue"),SQ=Symbol.for("graceful-fs.previous");else Q1="___graceful-fs.queue",SQ="___graceful-fs.previous";function Wq0(){}function Tv(D,$){Object.defineProperty(D,Q1,{get:function(){return $}})}var b8=Wq0;if(TQ.debuglog)b8=TQ.debuglog("gfs4");else if(/\bgfs4\b/i.test(process.env.NODE_DEBUG||""))b8=function(){var D=TQ.format.apply(TQ,arguments);D="GFS4: "+D.split(/\n/).join(`
|
|
127
|
-
GFS4: `),console.error(D)};if(!PD[Q1]){if(pq=global[Q1]||[],Tv(PD,pq),PD.close=function(D){function $(X,J){return D.call(PD,X,function(Y){if(!Y)jv();if(typeof J==="function")J.apply(this,arguments)})}return Object.defineProperty($,SQ,{value:D}),$}(PD.close),PD.closeSync=function(D){function $(X){D.apply(PD,arguments),jv()}return Object.defineProperty($,SQ,{value:D}),$}(PD.closeSync),/\bgfs4\b/i.test(process.env.NODE_DEBUG||""))process.on("exit",function(){b8(PD[Q1]),l("assert").equal(PD[Q1].length,0)})}var pq;if(!global[Q1])Tv(global,PD[Q1]);oq.exports=rq(qq0(PD));if(process.env.TEST_GRACEFUL_FS_GLOBAL_PATCH&&!PD.__patched)oq.exports=rq(PD),PD.__patched=!0;function rq(D){Gq0(D),D.gracefulify=rq,D.createReadStream=z,D.createWriteStream=R;var $=D.readFile;D.readFile=X;function X(A,u,P){if(typeof u==="function")P=u,u=null;return h(A,u,P);function h(c,r,f,j){return $(c,r,function(S){if(S&&(S.code==="EMFILE"||S.code==="ENFILE"))C5([h,[c,r,f],S,j||Date.now(),Date.now()]);else if(typeof f==="function")f.apply(this,arguments)})}}var J=D.writeFile;D.writeFile=Y;function Y(A,u,P,h){if(typeof P==="function")h=P,P=null;return c(A,u,P,h);function c(r,f,j,S,x){return J(r,f,j,function(k){if(k&&(k.code==="EMFILE"||k.code==="ENFILE"))C5([c,[r,f,j,S],k,x||Date.now(),Date.now()]);else if(typeof S==="function")S.apply(this,arguments)})}}var Q=D.appendFile;if(Q)D.appendFile=F;function F(A,u,P,h){if(typeof P==="function")h=P,P=null;return c(A,u,P,h);function c(r,f,j,S,x){return Q(r,f,j,function(k){if(k&&(k.code==="EMFILE"||k.code==="ENFILE"))C5([c,[r,f,j,S],k,x||Date.now(),Date.now()]);else if(typeof S==="function")S.apply(this,arguments)})}}var U=D.copyFile;if(U)D.copyFile=Z;function Z(A,u,P,h){if(typeof P==="function")h=P,P=0;return c(A,u,P,h);function c(r,f,j,S,x){return U(r,f,j,function(k){if(k&&(k.code==="EMFILE"||k.code==="ENFILE"))C5([c,[r,f,j,S],k,x||Date.now(),Date.now()]);else if(typeof S==="function")S.apply(this,arguments)})}}var O=D.readdir;D.readdir=w;var G=/^v[0-5]\./;function w(A,u,P){if(typeof u==="function")P=u,u=null;var h=G.test(process.version)?function(f,j,S,x){return O(f,c(f,j,S,x))}:function(f,j,S,x){return O(f,j,c(f,j,S,x))};return h(A,u,P);function c(r,f,j,S){return function(x,k){if(x&&(x.code==="EMFILE"||x.code==="ENFILE"))C5([h,[r,f,j],x,S||Date.now(),Date.now()]);else{if(k&&k.sort)k.sort();if(typeof j==="function")j.call(this,x,k)}}}}if(process.version.substr(0,4)==="v0.8"){var q=wq0(D);M=q.ReadStream,K=q.WriteStream}var W=D.ReadStream;if(W)M.prototype=Object.create(W.prototype),M.prototype.open=I;var H=D.WriteStream;if(H)K.prototype=Object.create(H.prototype),K.prototype.open=N;Object.defineProperty(D,"ReadStream",{get:function(){return M},set:function(A){M=A},enumerable:!0,configurable:!0}),Object.defineProperty(D,"WriteStream",{get:function(){return K},set:function(A){K=A},enumerable:!0,configurable:!0});var B=M;Object.defineProperty(D,"FileReadStream",{get:function(){return B},set:function(A){B=A},enumerable:!0,configurable:!0});var L=K;Object.defineProperty(D,"FileWriteStream",{get:function(){return L},set:function(A){L=A},enumerable:!0,configurable:!0});function M(A,u){if(this instanceof M)return W.apply(this,arguments),this;else return M.apply(Object.create(M.prototype),arguments)}function I(){var A=this;_(A.path,A.flags,A.mode,function(u,P){if(u){if(A.autoClose)A.destroy();A.emit("error",u)}else A.fd=P,A.emit("open",P),A.read()})}function K(A,u){if(this instanceof K)return H.apply(this,arguments),this;else return K.apply(Object.create(K.prototype),arguments)}function N(){var A=this;_(A.path,A.flags,A.mode,function(u,P){if(u)A.destroy(),A.emit("error",u);else A.fd=P,A.emit("open",P)})}function z(A,u){return new D.ReadStream(A,u)}function R(A,u){return new D.WriteStream(A,u)}var v=D.open;D.open=_;function _(A,u,P,h){if(typeof P==="function")h=P,P=null;return c(A,u,P,h);function c(r,f,j,S,x){return v(r,f,j,function(k,g){if(k&&(k.code==="EMFILE"||k.code==="ENFILE"))C5([c,[r,f,j,S],k,x||Date.now(),Date.now()]);else if(typeof S==="function")S.apply(this,arguments)})}}return D}function C5(D){b8("ENQUEUE",D[0].name,D[1]),PD[Q1].push(D),tq()}var CQ;function jv(){var D=Date.now();for(var $=0;$<PD[Q1].length;++$)if(PD[Q1][$].length>2)PD[Q1][$][3]=D,PD[Q1][$][4]=D;tq()}function tq(){if(clearTimeout(CQ),CQ=void 0,PD[Q1].length===0)return;var D=PD[Q1].shift(),$=D[0],X=D[1],J=D[2],Y=D[3],Q=D[4];if(Y===void 0)b8("RETRY",$.name,X),$.apply(null,X);else if(Date.now()-Y>=60000){b8("TIMEOUT",$.name,X);var F=X.pop();if(typeof F==="function")F.call(null,J)}else{var U=Date.now()-Q,Z=Math.max(Q-Y,1),O=Math.min(Z*1.2,100);if(U>=O)b8("RETRY",$.name,X),$.apply(null,X.concat([Y]));else PD[Q1].push(D)}if(CQ===void 0)CQ=setTimeout(tq,0)}});var Sv=E((Oa0,Cv)=>{function V$(D,$){if(typeof $==="boolean")$={forever:$};if(this._originalTimeouts=JSON.parse(JSON.stringify(D)),this._timeouts=D,this._options=$||{},this._maxRetryTime=$&&$.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)}Cv.exports=V$;V$.prototype.reset=function(){this._attempts=1,this._timeouts=this._originalTimeouts};V$.prototype.stop=function(){if(this._timeout)clearTimeout(this._timeout);this._timeouts=[],this._cachedTimeouts=null};V$.prototype.retry=function(D){if(this._timeout)clearTimeout(this._timeout);if(!D)return!1;var $=new Date().getTime();if(D&&$-this._operationStart>=this._maxRetryTime)return this._errors.unshift(Error("RetryOperation timeout occurred")),!1;this._errors.push(D);var X=this._timeouts.shift();if(X===void 0)if(this._cachedTimeouts)this._errors.splice(this._errors.length-1,this._errors.length),this._timeouts=this._cachedTimeouts.slice(0),X=this._timeouts.shift();else return!1;var J=this,Y=setTimeout(function(){if(J._attempts++,J._operationTimeoutCb){if(J._timeout=setTimeout(function(){J._operationTimeoutCb(J._attempts)},J._operationTimeout),J._options.unref)J._timeout.unref()}J._fn(J._attempts)},X);if(this._options.unref)Y.unref();return!0};V$.prototype.attempt=function(D,$){if(this._fn=D,$){if($.timeout)this._operationTimeout=$.timeout;if($.cb)this._operationTimeoutCb=$.cb}var X=this;if(this._operationTimeoutCb)this._timeout=setTimeout(function(){X._operationTimeoutCb()},X._operationTimeout);this._operationStart=new Date().getTime(),this._fn(this._attempts)};V$.prototype.try=function(D){console.log("Using RetryOperation.try() is deprecated"),this.attempt(D)};V$.prototype.start=function(D){console.log("Using RetryOperation.start() is deprecated"),this.attempt(D)};V$.prototype.start=V$.prototype.try;V$.prototype.errors=function(){return this._errors};V$.prototype.attempts=function(){return this._attempts};V$.prototype.mainError=function(){if(this._errors.length===0)return null;var D={},$=null,X=0;for(var J=0;J<this._errors.length;J++){var Y=this._errors[J],Q=Y.message,F=(D[Q]||0)+1;if(D[Q]=F,F>=X)$=Y,X=F}return $}});var uv=E((Bq0)=>{var Hq0=Sv();Bq0.operation=function(D){var $=Bq0.timeouts(D);return new Hq0($,{forever:D&&D.forever,unref:D&&D.unref,maxRetryTime:D&&D.maxRetryTime})};Bq0.timeouts=function(D){if(D instanceof Array)return[].concat(D);var $={retries:10,factor:2,minTimeout:1000,maxTimeout:1/0,randomize:!1};for(var X in D)$[X]=D[X];if($.minTimeout>$.maxTimeout)throw Error("minTimeout is greater than maxTimeout");var J=[];for(var Y=0;Y<$.retries;Y++)J.push(this.createTimeout(Y,$));if(D&&D.forever&&!J.length)J.push(this.createTimeout(Y,$));return J.sort(function(Q,F){return Q-F}),J};Bq0.createTimeout=function(D,$){var X=$.randomize?Math.random()+1:1,J=Math.round(X*$.minTimeout*Math.pow($.factor,D));return J=Math.min(J,$.maxTimeout),J};Bq0.wrap=function(D,$,X){if($ instanceof Array)X=$,$=null;if(!X){X=[];for(var J in D)if(typeof D[J]==="function")X.push(J)}for(var Y=0;Y<X.length;Y++){var Q=X[Y],F=D[Q];D[Q]=function(Z){var O=Bq0.operation($),G=Array.prototype.slice.call(arguments,1),w=G.pop();G.push(function(q){if(O.retry(q))return;if(q)arguments[0]=O.mainError();w.apply(this,arguments)}),O.attempt(function(){Z.apply(D,G)})}.bind(D,F),D[Q].options=$}}});var xv=E((wa0,PQ)=>{PQ.exports=["SIGABRT","SIGALRM","SIGHUP","SIGINT","SIGTERM"];if(process.platform!=="win32")PQ.exports.push("SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");if(process.platform==="linux")PQ.exports.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT","SIGUNUSED")});var vQ=E((qa0,P5)=>{var ED=global.process,h8=function(D){return D&&typeof D==="object"&&typeof D.removeListener==="function"&&typeof D.emit==="function"&&typeof D.reallyExit==="function"&&typeof D.listeners==="function"&&typeof D.kill==="function"&&typeof D.pid==="number"&&typeof D.on==="function"};if(!h8(ED))P5.exports=function(){return function(){}};else{if(aq=l("assert"),g8=xv(),sq=/^win/i.test(ED.platform),S5=l("events"),typeof S5!=="function")S5=S5.EventEmitter;if(ED.__signal_exit_emitter__)aD=ED.__signal_exit_emitter__;else aD=ED.__signal_exit_emitter__=new S5,aD.count=0,aD.emitted={};if(!aD.infinite)aD.setMaxListeners(1/0),aD.infinite=!0;P5.exports=function(D,$){if(!h8(global.process))return function(){};if(aq.equal(typeof D,"function","a callback must be provided for exit handler"),m8===!1)uQ();var X="exit";if($&&$.alwaysLast)X="afterexit";var J=function(){if(aD.removeListener(X,D),aD.listeners("exit").length===0&&aD.listeners("afterexit").length===0)M2()};return aD.on(X,D),J},M2=function(){if(!m8||!h8(global.process))return;m8=!1,g8.forEach(function($){try{ED.removeListener($,I2[$])}catch(X){}}),ED.emit=A2,ED.reallyExit=xQ,aD.count-=1},P5.exports.unload=M2,L4=function($,X,J){if(aD.emitted[$])return;aD.emitted[$]=!0,aD.emit($,X,J)},I2={},g8.forEach(function(D){I2[D]=function(){if(!h8(global.process))return;var X=ED.listeners(D);if(X.length===aD.count){if(M2(),L4("exit",null,D),L4("afterexit",null,D),sq&&D==="SIGHUP")D="SIGINT";ED.kill(ED.pid,D)}}}),P5.exports.signals=function(){return g8},m8=!1,uQ=function(){if(m8||!h8(global.process))return;m8=!0,aD.count+=1,g8=g8.filter(function($){try{return ED.on($,I2[$]),!0}catch(X){return!1}}),ED.emit=DW,ED.reallyExit=eq},P5.exports.load=uQ,xQ=ED.reallyExit,eq=function($){if(!h8(global.process))return;ED.exitCode=$||0,L4("exit",ED.exitCode,null),L4("afterexit",ED.exitCode,null),xQ.call(ED,ED.exitCode)},A2=ED.emit,DW=function($,X){if($==="exit"&&h8(global.process)){if(X!==void 0)ED.exitCode=X;var J=A2.apply(this,arguments);return L4("exit",ED.exitCode,null),L4("afterexit",ED.exitCode,null),J}else return A2.apply(this,arguments)}}var aq,g8,sq,S5,aD,M2,L4,I2,m8,uQ,xQ,eq,A2,DW});var _v=E((Mq0,$W)=>{var vv=Symbol();function Vq0(D,$,X){let J=$[vv];if(J)return $.stat(D,(Q,F)=>{if(Q)return X(Q);X(null,F.mtime,J)});let Y=new Date(Math.ceil(Date.now()/1000)*1000+5);$.utimes(D,Y,Y,(Q)=>{if(Q)return X(Q);$.stat(D,(F,U)=>{if(F)return X(F);let Z=U.mtime.getTime()%1000===0?"s":"ms";Object.defineProperty($,vv,{value:Z}),X(null,U.mtime,Z)})})}function Lq0(D){let $=Date.now();if(D==="s")$=Math.ceil($/1000)*1000;return new Date($)}Mq0.probe=Vq0;Mq0.getMtime=Lq0});var hv=E((Pq0,R2)=>{var Eq0=l("path"),YW=bD(),Rq0=uv(),jq0=vQ(),fv=_v(),f6={};function E2(D,$){return $.lockfilePath||`${D}.lock`}function QW(D,$,X){if(!$.realpath)return X(null,Eq0.resolve(D));$.fs.realpath(D,X)}function JW(D,$,X){let J=E2(D,$);$.fs.mkdir(J,(Y)=>{if(!Y)return fv.probe(J,$.fs,(Q,F,U)=>{if(Q)return $.fs.rmdir(J,()=>{}),X(Q);X(null,F,U)});if(Y.code!=="EEXIST")return X(Y);if($.stale<=0)return X(Object.assign(Error("Lock file is already being held"),{code:"ELOCKED",file:D}));$.fs.stat(J,(Q,F)=>{if(Q){if(Q.code==="ENOENT")return JW(D,{...$,stale:0},X);return X(Q)}if(!kv(F,$))return X(Object.assign(Error("Lock file is already being held"),{code:"ELOCKED",file:D}));yv(D,$,(U)=>{if(U)return X(U);JW(D,{...$,stale:0},X)})})})}function kv(D,$){return D.mtime.getTime()<Date.now()-$.stale}function yv(D,$,X){$.fs.rmdir(E2(D,$),(J)=>{if(J&&J.code!=="ENOENT")return X(J);X()})}function _Q(D,$){let X=f6[D];if(X.updateTimeout)return;if(X.updateDelay=X.updateDelay||$.update,X.updateTimeout=setTimeout(()=>{X.updateTimeout=null,$.fs.stat(X.lockfilePath,(J,Y)=>{let Q=X.lastUpdate+$.stale<Date.now();if(J){if(J.code==="ENOENT"||Q)return XW(D,X,Object.assign(J,{code:"ECOMPROMISED"}));return X.updateDelay=1000,_Q(D,$)}if(X.mtime.getTime()!==Y.mtime.getTime())return XW(D,X,Object.assign(Error("Unable to update lock within the stale threshold"),{code:"ECOMPROMISED"}));let U=fv.getMtime(X.mtimePrecision);$.fs.utimes(X.lockfilePath,U,U,(Z)=>{let O=X.lastUpdate+$.stale<Date.now();if(X.released)return;if(Z){if(Z.code==="ENOENT"||O)return XW(D,X,Object.assign(Z,{code:"ECOMPROMISED"}));return X.updateDelay=1000,_Q(D,$)}X.mtime=U,X.lastUpdate=Date.now(),X.updateDelay=null,_Q(D,$)})})},X.updateDelay),X.updateTimeout.unref)X.updateTimeout.unref()}function XW(D,$,X){if($.released=!0,$.updateTimeout)clearTimeout($.updateTimeout);if(f6[D]===$)delete f6[D];$.options.onCompromised(X)}function Tq0(D,$,X){$={stale:1e4,update:null,realpath:!0,retries:0,fs:YW,onCompromised:(J)=>{throw J},...$},$.retries=$.retries||0,$.retries=typeof $.retries==="number"?{retries:$.retries}:$.retries,$.stale=Math.max($.stale||0,2000),$.update=$.update==null?$.stale/2:$.update||0,$.update=Math.max(Math.min($.update,$.stale/2),1000),QW(D,$,(J,Y)=>{if(J)return X(J);let Q=Rq0.operation($.retries);Q.attempt(()=>{JW(Y,$,(F,U,Z)=>{if(Q.retry(F))return;if(F)return X(Q.mainError());let O=f6[Y]={lockfilePath:E2(Y,$),mtime:U,mtimePrecision:Z,options:$,lastUpdate:Date.now()};_Q(Y,$),X(null,(G)=>{if(O.released)return G&&G(Object.assign(Error("Lock is already released"),{code:"ERELEASED"}));bv(Y,{...$,realpath:!1},G)})})})})}function bv(D,$,X){$={fs:YW,realpath:!0,...$},QW(D,$,(J,Y)=>{if(J)return X(J);let Q=f6[Y];if(!Q)return X(Object.assign(Error("Lock is not acquired/owned by you"),{code:"ENOTACQUIRED"}));Q.updateTimeout&&clearTimeout(Q.updateTimeout),Q.released=!0,delete f6[Y],yv(Y,$,X)})}function Cq0(D,$,X){$={stale:1e4,realpath:!0,fs:YW,...$},$.stale=Math.max($.stale||0,2000),QW(D,$,(J,Y)=>{if(J)return X(J);$.fs.stat(E2(Y,$),(Q,F)=>{if(Q)return Q.code==="ENOENT"?X(null,!1):X(Q);return X(null,!kv(F,$))})})}function Sq0(){return f6}jq0(()=>{for(let D in f6){let $=f6[D].options;try{$.fs.rmdirSync(E2(D,$))}catch(X){}}});Pq0.lock=Tq0;Pq0.unlock=bv;Pq0.check=Cq0;Pq0.getLocks=Sq0});var mv=E((Wa0,gv)=>{var fq0=bD();function kq0(D){let $=["mkdir","realpath","stat","rmdir","utimes"],X={...D};return $.forEach((J)=>{X[J]=(...Y)=>{let Q=Y.pop(),F;try{F=D[`${J}Sync`](...Y)}catch(U){return Q(U)}Q(null,F)}}),X}function yq0(D){return(...$)=>new Promise((X,J)=>{$.push((Y,Q)=>{if(Y)J(Y);else X(Q)}),D(...$)})}function bq0(D){return(...$)=>{let X,J;if($.push((Y,Q)=>{X=Y,J=Q}),D(...$),X)throw X;return J}}function hq0(D){if(D={...D},D.fs=kq0(D.fs||fq0),typeof D.retries==="number"&&D.retries>0||D.retries&&typeof D.retries.retries==="number"&&D.retries.retries>0)throw Object.assign(Error("Cannot use retries with the sync api"),{code:"ESYNC"});return D}gv.exports={toPromise:yq0,toSync:bq0,toSyncOptions:hq0}});var dv=E((Ha0,M4)=>{var u5=hv(),{toPromise:fQ,toSync:kQ,toSyncOptions:FW}=mv();async function cv(D,$){let X=await fQ(u5.lock)(D,$);return fQ(X)}function gq0(D,$){let X=kQ(u5.lock)(D,FW($));return kQ(X)}function mq0(D,$){return fQ(u5.unlock)(D,$)}function cq0(D,$){return kQ(u5.unlock)(D,FW($))}function dq0(D,$){return fQ(u5.check)(D,$)}function nq0(D,$){return kQ(u5.check)(D,FW($))}M4.exports=cv;M4.exports.lock=cv;M4.exports.unlock=mq0;M4.exports.lockSync=gq0;M4.exports.unlockSync=cq0;M4.exports.check=dq0;M4.exports.checkSync=nq0});var ov=E((rv)=>{Object.defineProperty(rv,"__esModule",{value:!0});rv.canStoreURLs=rv.FileUrlStorage=void 0;var nv=l("fs"),lq0=pq0(zv()),lv=iq0(dv());function pv(D){if(typeof WeakMap!="function")return null;var $=new WeakMap,X=new WeakMap;return(pv=function(J){return J?X:$})(D)}function iq0(D,$){if(!$&&D&&D.__esModule)return D;if(D===null||typeof D!="object"&&typeof D!="function")return{default:D};var X=pv($);if(X&&X.has(D))return X.get(D);var J={__proto__:null},Y=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var Q in D)if(Q!=="default"&&{}.hasOwnProperty.call(D,Q)){var F=Y?Object.getOwnPropertyDescriptor(D,Q):null;F&&(F.get||F.set)?Object.defineProperty(J,Q,F):J[Q]=D[Q]}return J.default=D,X&&X.set(D,J),J}function pq0(D){return D&&D.__esModule?D:{default:D}}function j2(D){return j2=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function($){return typeof $}:function($){return $&&typeof Symbol=="function"&&$.constructor===Symbol&&$!==Symbol.prototype?"symbol":typeof $},j2(D)}function rq0(D,$){if(!(D instanceof $))throw TypeError("Cannot call a class as a function")}function iv(D,$){for(var X=0;X<$.length;X++){var J=$[X];if(J.enumerable=J.enumerable||!1,J.configurable=!0,"value"in J)J.writable=!0;Object.defineProperty(D,oq0(J.key),J)}}function tq0(D,$,X){if($)iv(D.prototype,$);if(X)iv(D,X);return Object.defineProperty(D,"prototype",{writable:!1}),D}function oq0(D){var $=aq0(D,"string");return j2($)=="symbol"?$:$+""}function aq0(D,$){if(j2(D)!="object"||!D)return D;var X=D[Symbol.toPrimitive];if(X!==void 0){var J=X.call(D,$||"default");if(j2(J)!="object")return J;throw TypeError("@@toPrimitive must return a primitive value.")}return($==="string"?String:Number)(D)}var Ba0=rv.canStoreURLs=!0,Ka0=rv.FileUrlStorage=function(){function D($){rq0(this,D),this.path=$}return tq0(D,[{key:"findAllUploads",value:function(){var X=this;return new Promise(function(J,Y){X._getItems("tus::",function(Q,F){if(Q)Y(Q);else J(F)})})}},{key:"findUploadsByFingerprint",value:function(X){var J=this;return new Promise(function(Y,Q){J._getItems("tus::".concat(X),function(F,U){if(F)Q(F);else Y(U)})})}},{key:"removeUpload",value:function(X){var J=this;return new Promise(function(Y,Q){J._removeItem(X,function(F){if(F)Q(F);else Y()})})}},{key:"addUpload",value:function(X,J){var Y=this,Q=Math.round(Math.random()*1000000000000),F="tus::".concat(X,"::").concat(Q);return new Promise(function(U,Z){Y._setItem(F,J,function(O){if(O)Z(O);else U(F)})})}},{key:"_setItem",value:function(X,J,Y){var Q=this;lv.lock(this.path,this._lockfileOptions()).then(function(F){Y=Q._releaseAndCb(F,Y),Q._getData(function(U,Z){if(U){Y(U);return}Z[X]=J,Q._writeData(Z,function(O){return Y(O)})})}).catch(Y)}},{key:"_getItems",value:function(X,J){this._getData(function(Y,Q){if(Y){J(Y);return}var F=Object.keys(Q).filter(function(U){return U.startsWith(X)}).map(function(U){var Z=Q[U];return Z.urlStorageKey=U,Z});J(null,F)})}},{key:"_removeItem",value:function(X,J){var Y=this;lv.lock(this.path,this._lockfileOptions()).then(function(Q){J=Y._releaseAndCb(Q,J),Y._getData(function(F,U){if(F){J(F);return}delete U[X],Y._writeData(U,function(Z){return J(Z)})})}).catch(J)}},{key:"_lockfileOptions",value:function(){return{realpath:!1,retries:{retries:5,minTimeout:20}}}},{key:"_releaseAndCb",value:function(X,J){return function(Y){if(Y){X().then(function(){return J(Y)}).catch(function(Q){return J((0,lq0.default)([Y,Q]))});return}X().then(J).catch(J)}}},{key:"_writeData",value:function(X,J){var Y={encoding:"utf8",mode:432,flag:"w"};(0,nv.writeFile)(this.path,JSON.stringify(X),Y,function(Q){return J(Q)})}},{key:"_getData",value:function(X){(0,nv.readFile)(this.path,"utf8",function(J,Y){if(J){if(J.code==="ENOENT")X(null,{});else X(J);return}try{Y=!Y.trim().length?{}:JSON.parse(Y)}catch(Q){X(Q);return}X(null,Y)})}}])}()});var bQ=E((I4)=>{Object.defineProperty(I4,"__esModule",{value:!0});Object.defineProperty(I4,"DefaultHttpStack",{enumerable:!0,get:function(){return D_.default}});Object.defineProperty(I4,"DetailedError",{enumerable:!0,get:function(){return eq0.default}});Object.defineProperty(I4,"FileUrlStorage",{enumerable:!0,get:function(){return $_.FileUrlStorage}});Object.defineProperty(I4,"StreamSource",{enumerable:!0,get:function(){return YW0.default}});I4.Upload=void 0;Object.defineProperty(I4,"canStoreURLs",{enumerable:!0,get:function(){return $_.canStoreURLs}});I4.defaultOptions=void 0;Object.defineProperty(I4,"enableDebugLog",{enumerable:!0,get:function(){return DW0.enableDebugLog}});I4.isSupported=void 0;var eq0=c8(Fq()),DW0=Uq(),$W0=c8(dP()),UW=c8(Iu()),XW0=c8(cu()),JW0=c8(pu()),D_=c8(Ox()),YW0=c8(zq()),$_=ov();function c8(D){return D&&D.__esModule?D:{default:D}}function v5(D){return v5=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function($){return typeof $}:function($){return $&&typeof Symbol=="function"&&$.constructor===Symbol&&$!==Symbol.prototype?"symbol":typeof $},v5(D)}function QW0(D,$){if(!(D instanceof $))throw TypeError("Cannot call a class as a function")}function av(D,$){for(var X=0;X<$.length;X++){var J=$[X];if(J.enumerable=J.enumerable||!1,J.configurable=!0,"value"in J)J.writable=!0;Object.defineProperty(D,J_(J.key),J)}}function FW0(D,$,X){if($)av(D.prototype,$);if(X)av(D,X);return Object.defineProperty(D,"prototype",{writable:!1}),D}function UW0(D,$,X){return $=yQ($),ZW0(D,X_()?Reflect.construct($,X||[],yQ(D).constructor):$.apply(D,X))}function ZW0(D,$){if($&&(v5($)==="object"||typeof $==="function"))return $;else if($!==void 0)throw TypeError("Derived constructors may only return object or undefined");return OW0(D)}function OW0(D){if(D===void 0)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return D}function X_(){try{var D=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch($){}return(X_=function(){return!!D})()}function yQ(D){return yQ=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(X){return X.__proto__||Object.getPrototypeOf(X)},yQ(D)}function GW0(D,$){if(typeof $!=="function"&&$!==null)throw TypeError("Super expression must either be null or a function");if(D.prototype=Object.create($&&$.prototype,{constructor:{value:D,writable:!0,configurable:!0}}),Object.defineProperty(D,"prototype",{writable:!1}),$)ZW(D,$)}function ZW(D,$){return ZW=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(J,Y){return J.__proto__=Y,J},ZW(D,$)}function sv(D,$){var X=Object.keys(D);if(Object.getOwnPropertySymbols){var J=Object.getOwnPropertySymbols(D);$&&(J=J.filter(function(Y){return Object.getOwnPropertyDescriptor(D,Y).enumerable})),X.push.apply(X,J)}return X}function x5(D){for(var $=1;$<arguments.length;$++){var X=arguments[$]!=null?arguments[$]:{};$%2?sv(Object(X),!0).forEach(function(J){wW0(D,J,X[J])}):Object.getOwnPropertyDescriptors?Object.defineProperties(D,Object.getOwnPropertyDescriptors(X)):sv(Object(X)).forEach(function(J){Object.defineProperty(D,J,Object.getOwnPropertyDescriptor(X,J))})}return D}function wW0(D,$,X){if($=J_($),$ in D)Object.defineProperty(D,$,{value:X,enumerable:!0,configurable:!0,writable:!0});else D[$]=X;return D}function J_(D){var $=qW0(D,"string");return v5($)=="symbol"?$:$+""}function qW0(D,$){if(v5(D)!="object"||!D)return D;var X=D[Symbol.toPrimitive];if(X!==void 0){var J=X.call(D,$||"default");if(v5(J)!="object")return J;throw TypeError("@@toPrimitive must return a primitive value.")}return($==="string"?String:Number)(D)}var ev=I4.defaultOptions=x5(x5({},UW.default.defaultOptions),{},{httpStack:new D_.default,fileReader:new XW0.default,urlStorage:new $W0.default,fingerprint:JW0.default}),za0=I4.Upload=function(D){function $(){var X=arguments.length>0&&arguments[0]!==void 0?arguments[0]:null,J=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return QW0(this,$),J=x5(x5({},ev),J),UW0(this,$,[X,J])}return GW0($,D),FW0($,null,[{key:"terminate",value:function(J){var Y=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return Y=x5(x5({},ev),Y),UW.default.terminate(J,Y)}}])}(UW.default),Va0=I4.isSupported=!0});var l1;var d8=p(()=>{l1={name:"@capgo/cli",type:"module",version:"7.114.0",description:"A CLI to upload to capgo servers",author:"Martin martin@capgo.app",license:"Apache 2.0",homepage:"https://github.com/Cap-go/capgo/tree/main/cli#readme",repository:{type:"git",url:"git+https://github.com/Cap-go/capgo.git",directory:"cli"},bugs:{url:"https://github.com/Cap-go/capgo/issues"},keywords:["appflow alternative","ionic","capacitor","auto update","live update","capgo","cli","upload","capgo-cli","sdk","tanstack-intent"],exports:{".":{import:"./dist/index.js",require:"./dist/index.js"},"./sdk":{types:"./dist/src/sdk.d.ts",import:"./dist/src/sdk.js"}},main:"dist/index.js",types:"dist/src/index.d.ts",bin:{capgo:"dist/index.js"},files:["!skills/_artifacts","dist","skills"],engines:{npm:">=8.0.0",node:">=20.0.0"},scripts:{build:"tsc && bun build.mjs",dev:"NODE_ENV=development ncc build","no-debug":"node dist/index.js","dev-build":"SUPA_DB=development ncc build",pack:"pkg",types:"bunx --bun supabase gen types typescript --project-id=xvwzpoazmxkqosrdewyv > src/types/supabase.types.ts",typecheck:"tsgo --project tsconfig.tsgo.json --noEmit",lint:"bun run lint:ox","lint:ox":"oxlint --config ../.oxlintrc.json src","lint:fix":"oxlint --config ../.oxlintrc.json --fix src","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:android-service-account-validation":"bun test/test-android-service-account-validation.mjs","test:build-zip-filter":"bun test/test-build-zip-filter.mjs","test:checksum":"bun test/test-checksum-algorithm.mjs","test:build-needed":"bun test/test-build-needed.mjs","test:ci-prompts":"bun test/test-ci-prompts.mjs","test:ci-secrets":"bun test/test-ci-secrets.mjs","test:android-onboarding-progress":"bun test/test-android-onboarding-progress.mjs","test:onboarding-telemetry":"bun test/test-onboarding-telemetry.mjs","test:v2-event-migration":"bun test/test-v2-event-migration.mjs","test:analytics":"bun test/test-analytics.mjs","test:analytics-error-category":"bun test/test-analytics-error-category.mjs","test:analytics-org-resolver":"bun test/test-analytics-org-resolver.mjs","test:mcp-analytics":"bun test/test-mcp-analytics.mjs","test:app-created-source":"bun test/test-app-created-source.mjs","test:doctor-analytics":"bun test/test-doctor-analytics.mjs","test:posthog-exception":"bun test/test-posthog-exception.mjs","test:onboarding-recovery":"bun test/test-onboarding-recovery.mjs","test:onboarding-progress":"bun test/test-onboarding-progress.mjs","test:onboarding-run-targets":"bun test/test-onboarding-run-targets.mjs","test:run-device-command":"bun test/test-run-device-command.mjs","test:init-app-conflict":"bun test/test-init-app-conflict.mjs","test:init-guardrails":"bun test/test-init-guardrails.mjs","test:prompt-preferences":"bun test/test-prompt-preferences.mjs","test:esm-sdk":"node test/test-sdk-esm.mjs","test:mcp":"node test/test-mcp.mjs","test:version-detection":"node test/test-get-installed-version.mjs","test:version-detection:setup":"./test/fixtures/setup-test-projects.sh","test:platform-paths":"bun test/test-platform-paths.mjs","test:payload-split":"bun test/test-payload-split.mjs","test:macos-signing":"bun test/test-macos-signing.mjs","test:apple-api-import-helpers":"bun test/test-apple-api-import-helpers.mjs","test:manifest-path-encoding":"bun test/test-manifest-path-encoding.mjs",test:"bun run build && bun run test:version-detection:setup && 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:android-service-account-validation && bun run test:build-zip-filter && bun run test:checksum && bun run test:build-needed && bun run test:ci-prompts && bun run test:ci-secrets && bun run test:android-onboarding-progress && bun run test:onboarding-telemetry && bun run test:v2-event-migration && bun run test:analytics && bun run test:analytics-error-category && bun run test:analytics-org-resolver && bun run test:mcp-analytics && bun run test:app-created-source && bun run test:doctor-analytics && bun run test:posthog-exception && bun run test:build-platform-selection && bun run test:onboarding-recovery && bun run test:onboarding-progress && bun run test:onboarding-run-targets && bun run test:run-device-command && bun run test:init-app-conflict && bun run test:init-guardrails && bun run test:prompt-preferences && bun run test:esm-sdk && bun run test:mcp && bun run test:version-detection && bun run test:platform-paths && bun run test:payload-split && bun run test:manifest-path-encoding && bun run test:macos-signing && bun run test:apple-api-import-helpers && bun run test:ai-log-capture && bun run test:ai-analyze-flow && bun run test:ai-render-markdown","test:build-platform-selection":"bun test/test-build-platform-selection.mjs","test:ai-log-capture":"bun test/test-ai-log-capture.mjs","test:ai-analyze-flow":"bun test/test-ai-analyze-flow.mjs","test:ai-render-markdown":"bun test/test-ai-render-markdown.mjs"},dependencies:{"@inkjs/ui":"^2.0.0",ink:"^7.0.4","ink-spinner":"^5.0.0",jsonwebtoken:"^9.0.3","node-forge":"^1.4.0",qrcode:"^1.5.4",react:"^19.2.6"},devDependencies:{"@antfu/eslint-config":"^9.0.0","@bradenmacdonald/s3-lite-client":"npm:@jsr/bradenmacdonald__s3-lite-client@0.9.6","@capacitor/cli":"^8.3.4","@capgo/find-package-manager":"^0.0.18","@clack/prompts":"^1.4.0","@modelcontextprotocol/sdk":"^1.29.0","@sauber/table":"npm:@jsr/sauber__table","@std/semver":"npm:@jsr/std__semver@1.0.8","@supabase/supabase-js":"^2.106.2","@tanstack/intent":"^0.0.41","@types/adm-zip":"^0.5.8","@types/jsonwebtoken":"^9.0.10","@types/node":"^25.9.1","@types/node-forge":"^1.3.14","@types/prettyjson":"^0.0.33","@types/qrcode":"^1.5.6","@types/react":"^19.2.15","@types/tmp":"^0.2.6","@types/ws":"^8.18.1","@typescript/native-preview":"7.0.0-dev.20260526.1","@vercel/ncc":"^0.38.4","adm-zip":"^0.5.17","ci-info":"^4.4.0",commander:"^14.0.3",eslint:"^10.4.0","git-format-staged":"4.0.1",husky:"^9.1.7","is-wsl":"^3.1.1",micromatch:"^4.0.8",open:"^11.0.0",oxlint:"^1.67.0",partysocket:"^1.1.19",prettyjson:"^1.2.5",tmp:"^0.2.6","tus-js-client":"^4.3.1",typescript:"^6.0.3",ws:"^8.21.0",zod:"^4.4.3"}}});async function hQ(D){try{let X=`https://registry.npmjs.org/${encodeURIComponent(D.toLowerCase())}`,J=await fetch(X,{headers:{accept:"application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"}});if(!J.ok)return null;return(await J.json())["dist-tags"]?.latest||null}catch{return null}}async function HW0(){let D=await hQ("@capgo/cli")??"",$=D?.split(".")[0]??"";return{currentVersion:l1.version,latestVersion:D,isOutdated:!!D&&D!==l1.version,majorVersion:$}}async function qD(){let{isOutdated:D,currentVersion:$,latestVersion:X,majorVersion:J}=await HW0();if(D)V.warning(`\uD83D\uDEA8 You are using @capgo/cli@${$} it's not the latest version.
|
|
127
|
+
GFS4: `),console.error(D)};if(!PD[Q1]){if(pq=global[Q1]||[],Tv(PD,pq),PD.close=function(D){function $(X,J){return D.call(PD,X,function(Y){if(!Y)jv();if(typeof J==="function")J.apply(this,arguments)})}return Object.defineProperty($,SQ,{value:D}),$}(PD.close),PD.closeSync=function(D){function $(X){D.apply(PD,arguments),jv()}return Object.defineProperty($,SQ,{value:D}),$}(PD.closeSync),/\bgfs4\b/i.test(process.env.NODE_DEBUG||""))process.on("exit",function(){b8(PD[Q1]),l("assert").equal(PD[Q1].length,0)})}var pq;if(!global[Q1])Tv(global,PD[Q1]);oq.exports=rq(qq0(PD));if(process.env.TEST_GRACEFUL_FS_GLOBAL_PATCH&&!PD.__patched)oq.exports=rq(PD),PD.__patched=!0;function rq(D){Gq0(D),D.gracefulify=rq,D.createReadStream=z,D.createWriteStream=R;var $=D.readFile;D.readFile=X;function X(A,u,P){if(typeof u==="function")P=u,u=null;return h(A,u,P);function h(c,r,f,j){return $(c,r,function(S){if(S&&(S.code==="EMFILE"||S.code==="ENFILE"))C5([h,[c,r,f],S,j||Date.now(),Date.now()]);else if(typeof f==="function")f.apply(this,arguments)})}}var J=D.writeFile;D.writeFile=Y;function Y(A,u,P,h){if(typeof P==="function")h=P,P=null;return c(A,u,P,h);function c(r,f,j,S,x){return J(r,f,j,function(k){if(k&&(k.code==="EMFILE"||k.code==="ENFILE"))C5([c,[r,f,j,S],k,x||Date.now(),Date.now()]);else if(typeof S==="function")S.apply(this,arguments)})}}var Q=D.appendFile;if(Q)D.appendFile=F;function F(A,u,P,h){if(typeof P==="function")h=P,P=null;return c(A,u,P,h);function c(r,f,j,S,x){return Q(r,f,j,function(k){if(k&&(k.code==="EMFILE"||k.code==="ENFILE"))C5([c,[r,f,j,S],k,x||Date.now(),Date.now()]);else if(typeof S==="function")S.apply(this,arguments)})}}var U=D.copyFile;if(U)D.copyFile=Z;function Z(A,u,P,h){if(typeof P==="function")h=P,P=0;return c(A,u,P,h);function c(r,f,j,S,x){return U(r,f,j,function(k){if(k&&(k.code==="EMFILE"||k.code==="ENFILE"))C5([c,[r,f,j,S],k,x||Date.now(),Date.now()]);else if(typeof S==="function")S.apply(this,arguments)})}}var O=D.readdir;D.readdir=w;var G=/^v[0-5]\./;function w(A,u,P){if(typeof u==="function")P=u,u=null;var h=G.test(process.version)?function(f,j,S,x){return O(f,c(f,j,S,x))}:function(f,j,S,x){return O(f,j,c(f,j,S,x))};return h(A,u,P);function c(r,f,j,S){return function(x,k){if(x&&(x.code==="EMFILE"||x.code==="ENFILE"))C5([h,[r,f,j],x,S||Date.now(),Date.now()]);else{if(k&&k.sort)k.sort();if(typeof j==="function")j.call(this,x,k)}}}}if(process.version.substr(0,4)==="v0.8"){var q=wq0(D);M=q.ReadStream,K=q.WriteStream}var W=D.ReadStream;if(W)M.prototype=Object.create(W.prototype),M.prototype.open=I;var H=D.WriteStream;if(H)K.prototype=Object.create(H.prototype),K.prototype.open=N;Object.defineProperty(D,"ReadStream",{get:function(){return M},set:function(A){M=A},enumerable:!0,configurable:!0}),Object.defineProperty(D,"WriteStream",{get:function(){return K},set:function(A){K=A},enumerable:!0,configurable:!0});var B=M;Object.defineProperty(D,"FileReadStream",{get:function(){return B},set:function(A){B=A},enumerable:!0,configurable:!0});var L=K;Object.defineProperty(D,"FileWriteStream",{get:function(){return L},set:function(A){L=A},enumerable:!0,configurable:!0});function M(A,u){if(this instanceof M)return W.apply(this,arguments),this;else return M.apply(Object.create(M.prototype),arguments)}function I(){var A=this;_(A.path,A.flags,A.mode,function(u,P){if(u){if(A.autoClose)A.destroy();A.emit("error",u)}else A.fd=P,A.emit("open",P),A.read()})}function K(A,u){if(this instanceof K)return H.apply(this,arguments),this;else return K.apply(Object.create(K.prototype),arguments)}function N(){var A=this;_(A.path,A.flags,A.mode,function(u,P){if(u)A.destroy(),A.emit("error",u);else A.fd=P,A.emit("open",P)})}function z(A,u){return new D.ReadStream(A,u)}function R(A,u){return new D.WriteStream(A,u)}var v=D.open;D.open=_;function _(A,u,P,h){if(typeof P==="function")h=P,P=null;return c(A,u,P,h);function c(r,f,j,S,x){return v(r,f,j,function(k,g){if(k&&(k.code==="EMFILE"||k.code==="ENFILE"))C5([c,[r,f,j,S],k,x||Date.now(),Date.now()]);else if(typeof S==="function")S.apply(this,arguments)})}}return D}function C5(D){b8("ENQUEUE",D[0].name,D[1]),PD[Q1].push(D),tq()}var CQ;function jv(){var D=Date.now();for(var $=0;$<PD[Q1].length;++$)if(PD[Q1][$].length>2)PD[Q1][$][3]=D,PD[Q1][$][4]=D;tq()}function tq(){if(clearTimeout(CQ),CQ=void 0,PD[Q1].length===0)return;var D=PD[Q1].shift(),$=D[0],X=D[1],J=D[2],Y=D[3],Q=D[4];if(Y===void 0)b8("RETRY",$.name,X),$.apply(null,X);else if(Date.now()-Y>=60000){b8("TIMEOUT",$.name,X);var F=X.pop();if(typeof F==="function")F.call(null,J)}else{var U=Date.now()-Q,Z=Math.max(Q-Y,1),O=Math.min(Z*1.2,100);if(U>=O)b8("RETRY",$.name,X),$.apply(null,X.concat([Y]));else PD[Q1].push(D)}if(CQ===void 0)CQ=setTimeout(tq,0)}});var Sv=E((Oa0,Cv)=>{function V$(D,$){if(typeof $==="boolean")$={forever:$};if(this._originalTimeouts=JSON.parse(JSON.stringify(D)),this._timeouts=D,this._options=$||{},this._maxRetryTime=$&&$.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)}Cv.exports=V$;V$.prototype.reset=function(){this._attempts=1,this._timeouts=this._originalTimeouts};V$.prototype.stop=function(){if(this._timeout)clearTimeout(this._timeout);this._timeouts=[],this._cachedTimeouts=null};V$.prototype.retry=function(D){if(this._timeout)clearTimeout(this._timeout);if(!D)return!1;var $=new Date().getTime();if(D&&$-this._operationStart>=this._maxRetryTime)return this._errors.unshift(Error("RetryOperation timeout occurred")),!1;this._errors.push(D);var X=this._timeouts.shift();if(X===void 0)if(this._cachedTimeouts)this._errors.splice(this._errors.length-1,this._errors.length),this._timeouts=this._cachedTimeouts.slice(0),X=this._timeouts.shift();else return!1;var J=this,Y=setTimeout(function(){if(J._attempts++,J._operationTimeoutCb){if(J._timeout=setTimeout(function(){J._operationTimeoutCb(J._attempts)},J._operationTimeout),J._options.unref)J._timeout.unref()}J._fn(J._attempts)},X);if(this._options.unref)Y.unref();return!0};V$.prototype.attempt=function(D,$){if(this._fn=D,$){if($.timeout)this._operationTimeout=$.timeout;if($.cb)this._operationTimeoutCb=$.cb}var X=this;if(this._operationTimeoutCb)this._timeout=setTimeout(function(){X._operationTimeoutCb()},X._operationTimeout);this._operationStart=new Date().getTime(),this._fn(this._attempts)};V$.prototype.try=function(D){console.log("Using RetryOperation.try() is deprecated"),this.attempt(D)};V$.prototype.start=function(D){console.log("Using RetryOperation.start() is deprecated"),this.attempt(D)};V$.prototype.start=V$.prototype.try;V$.prototype.errors=function(){return this._errors};V$.prototype.attempts=function(){return this._attempts};V$.prototype.mainError=function(){if(this._errors.length===0)return null;var D={},$=null,X=0;for(var J=0;J<this._errors.length;J++){var Y=this._errors[J],Q=Y.message,F=(D[Q]||0)+1;if(D[Q]=F,F>=X)$=Y,X=F}return $}});var uv=E((Bq0)=>{var Hq0=Sv();Bq0.operation=function(D){var $=Bq0.timeouts(D);return new Hq0($,{forever:D&&D.forever,unref:D&&D.unref,maxRetryTime:D&&D.maxRetryTime})};Bq0.timeouts=function(D){if(D instanceof Array)return[].concat(D);var $={retries:10,factor:2,minTimeout:1000,maxTimeout:1/0,randomize:!1};for(var X in D)$[X]=D[X];if($.minTimeout>$.maxTimeout)throw Error("minTimeout is greater than maxTimeout");var J=[];for(var Y=0;Y<$.retries;Y++)J.push(this.createTimeout(Y,$));if(D&&D.forever&&!J.length)J.push(this.createTimeout(Y,$));return J.sort(function(Q,F){return Q-F}),J};Bq0.createTimeout=function(D,$){var X=$.randomize?Math.random()+1:1,J=Math.round(X*$.minTimeout*Math.pow($.factor,D));return J=Math.min(J,$.maxTimeout),J};Bq0.wrap=function(D,$,X){if($ instanceof Array)X=$,$=null;if(!X){X=[];for(var J in D)if(typeof D[J]==="function")X.push(J)}for(var Y=0;Y<X.length;Y++){var Q=X[Y],F=D[Q];D[Q]=function(Z){var O=Bq0.operation($),G=Array.prototype.slice.call(arguments,1),w=G.pop();G.push(function(q){if(O.retry(q))return;if(q)arguments[0]=O.mainError();w.apply(this,arguments)}),O.attempt(function(){Z.apply(D,G)})}.bind(D,F),D[Q].options=$}}});var xv=E((wa0,PQ)=>{PQ.exports=["SIGABRT","SIGALRM","SIGHUP","SIGINT","SIGTERM"];if(process.platform!=="win32")PQ.exports.push("SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");if(process.platform==="linux")PQ.exports.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT","SIGUNUSED")});var vQ=E((qa0,P5)=>{var ED=global.process,h8=function(D){return D&&typeof D==="object"&&typeof D.removeListener==="function"&&typeof D.emit==="function"&&typeof D.reallyExit==="function"&&typeof D.listeners==="function"&&typeof D.kill==="function"&&typeof D.pid==="number"&&typeof D.on==="function"};if(!h8(ED))P5.exports=function(){return function(){}};else{if(aq=l("assert"),g8=xv(),sq=/^win/i.test(ED.platform),S5=l("events"),typeof S5!=="function")S5=S5.EventEmitter;if(ED.__signal_exit_emitter__)aD=ED.__signal_exit_emitter__;else aD=ED.__signal_exit_emitter__=new S5,aD.count=0,aD.emitted={};if(!aD.infinite)aD.setMaxListeners(1/0),aD.infinite=!0;P5.exports=function(D,$){if(!h8(global.process))return function(){};if(aq.equal(typeof D,"function","a callback must be provided for exit handler"),m8===!1)uQ();var X="exit";if($&&$.alwaysLast)X="afterexit";var J=function(){if(aD.removeListener(X,D),aD.listeners("exit").length===0&&aD.listeners("afterexit").length===0)M2()};return aD.on(X,D),J},M2=function(){if(!m8||!h8(global.process))return;m8=!1,g8.forEach(function($){try{ED.removeListener($,I2[$])}catch(X){}}),ED.emit=A2,ED.reallyExit=xQ,aD.count-=1},P5.exports.unload=M2,L4=function($,X,J){if(aD.emitted[$])return;aD.emitted[$]=!0,aD.emit($,X,J)},I2={},g8.forEach(function(D){I2[D]=function(){if(!h8(global.process))return;var X=ED.listeners(D);if(X.length===aD.count){if(M2(),L4("exit",null,D),L4("afterexit",null,D),sq&&D==="SIGHUP")D="SIGINT";ED.kill(ED.pid,D)}}}),P5.exports.signals=function(){return g8},m8=!1,uQ=function(){if(m8||!h8(global.process))return;m8=!0,aD.count+=1,g8=g8.filter(function($){try{return ED.on($,I2[$]),!0}catch(X){return!1}}),ED.emit=DW,ED.reallyExit=eq},P5.exports.load=uQ,xQ=ED.reallyExit,eq=function($){if(!h8(global.process))return;ED.exitCode=$||0,L4("exit",ED.exitCode,null),L4("afterexit",ED.exitCode,null),xQ.call(ED,ED.exitCode)},A2=ED.emit,DW=function($,X){if($==="exit"&&h8(global.process)){if(X!==void 0)ED.exitCode=X;var J=A2.apply(this,arguments);return L4("exit",ED.exitCode,null),L4("afterexit",ED.exitCode,null),J}else return A2.apply(this,arguments)}}var aq,g8,sq,S5,aD,M2,L4,I2,m8,uQ,xQ,eq,A2,DW});var _v=E((Mq0,$W)=>{var vv=Symbol();function Vq0(D,$,X){let J=$[vv];if(J)return $.stat(D,(Q,F)=>{if(Q)return X(Q);X(null,F.mtime,J)});let Y=new Date(Math.ceil(Date.now()/1000)*1000+5);$.utimes(D,Y,Y,(Q)=>{if(Q)return X(Q);$.stat(D,(F,U)=>{if(F)return X(F);let Z=U.mtime.getTime()%1000===0?"s":"ms";Object.defineProperty($,vv,{value:Z}),X(null,U.mtime,Z)})})}function Lq0(D){let $=Date.now();if(D==="s")$=Math.ceil($/1000)*1000;return new Date($)}Mq0.probe=Vq0;Mq0.getMtime=Lq0});var hv=E((Pq0,R2)=>{var Eq0=l("path"),YW=bD(),Rq0=uv(),jq0=vQ(),fv=_v(),f6={};function E2(D,$){return $.lockfilePath||`${D}.lock`}function QW(D,$,X){if(!$.realpath)return X(null,Eq0.resolve(D));$.fs.realpath(D,X)}function JW(D,$,X){let J=E2(D,$);$.fs.mkdir(J,(Y)=>{if(!Y)return fv.probe(J,$.fs,(Q,F,U)=>{if(Q)return $.fs.rmdir(J,()=>{}),X(Q);X(null,F,U)});if(Y.code!=="EEXIST")return X(Y);if($.stale<=0)return X(Object.assign(Error("Lock file is already being held"),{code:"ELOCKED",file:D}));$.fs.stat(J,(Q,F)=>{if(Q){if(Q.code==="ENOENT")return JW(D,{...$,stale:0},X);return X(Q)}if(!kv(F,$))return X(Object.assign(Error("Lock file is already being held"),{code:"ELOCKED",file:D}));yv(D,$,(U)=>{if(U)return X(U);JW(D,{...$,stale:0},X)})})})}function kv(D,$){return D.mtime.getTime()<Date.now()-$.stale}function yv(D,$,X){$.fs.rmdir(E2(D,$),(J)=>{if(J&&J.code!=="ENOENT")return X(J);X()})}function _Q(D,$){let X=f6[D];if(X.updateTimeout)return;if(X.updateDelay=X.updateDelay||$.update,X.updateTimeout=setTimeout(()=>{X.updateTimeout=null,$.fs.stat(X.lockfilePath,(J,Y)=>{let Q=X.lastUpdate+$.stale<Date.now();if(J){if(J.code==="ENOENT"||Q)return XW(D,X,Object.assign(J,{code:"ECOMPROMISED"}));return X.updateDelay=1000,_Q(D,$)}if(X.mtime.getTime()!==Y.mtime.getTime())return XW(D,X,Object.assign(Error("Unable to update lock within the stale threshold"),{code:"ECOMPROMISED"}));let U=fv.getMtime(X.mtimePrecision);$.fs.utimes(X.lockfilePath,U,U,(Z)=>{let O=X.lastUpdate+$.stale<Date.now();if(X.released)return;if(Z){if(Z.code==="ENOENT"||O)return XW(D,X,Object.assign(Z,{code:"ECOMPROMISED"}));return X.updateDelay=1000,_Q(D,$)}X.mtime=U,X.lastUpdate=Date.now(),X.updateDelay=null,_Q(D,$)})})},X.updateDelay),X.updateTimeout.unref)X.updateTimeout.unref()}function XW(D,$,X){if($.released=!0,$.updateTimeout)clearTimeout($.updateTimeout);if(f6[D]===$)delete f6[D];$.options.onCompromised(X)}function Tq0(D,$,X){$={stale:1e4,update:null,realpath:!0,retries:0,fs:YW,onCompromised:(J)=>{throw J},...$},$.retries=$.retries||0,$.retries=typeof $.retries==="number"?{retries:$.retries}:$.retries,$.stale=Math.max($.stale||0,2000),$.update=$.update==null?$.stale/2:$.update||0,$.update=Math.max(Math.min($.update,$.stale/2),1000),QW(D,$,(J,Y)=>{if(J)return X(J);let Q=Rq0.operation($.retries);Q.attempt(()=>{JW(Y,$,(F,U,Z)=>{if(Q.retry(F))return;if(F)return X(Q.mainError());let O=f6[Y]={lockfilePath:E2(Y,$),mtime:U,mtimePrecision:Z,options:$,lastUpdate:Date.now()};_Q(Y,$),X(null,(G)=>{if(O.released)return G&&G(Object.assign(Error("Lock is already released"),{code:"ERELEASED"}));bv(Y,{...$,realpath:!1},G)})})})})}function bv(D,$,X){$={fs:YW,realpath:!0,...$},QW(D,$,(J,Y)=>{if(J)return X(J);let Q=f6[Y];if(!Q)return X(Object.assign(Error("Lock is not acquired/owned by you"),{code:"ENOTACQUIRED"}));Q.updateTimeout&&clearTimeout(Q.updateTimeout),Q.released=!0,delete f6[Y],yv(Y,$,X)})}function Cq0(D,$,X){$={stale:1e4,realpath:!0,fs:YW,...$},$.stale=Math.max($.stale||0,2000),QW(D,$,(J,Y)=>{if(J)return X(J);$.fs.stat(E2(Y,$),(Q,F)=>{if(Q)return Q.code==="ENOENT"?X(null,!1):X(Q);return X(null,!kv(F,$))})})}function Sq0(){return f6}jq0(()=>{for(let D in f6){let $=f6[D].options;try{$.fs.rmdirSync(E2(D,$))}catch(X){}}});Pq0.lock=Tq0;Pq0.unlock=bv;Pq0.check=Cq0;Pq0.getLocks=Sq0});var mv=E((Wa0,gv)=>{var fq0=bD();function kq0(D){let $=["mkdir","realpath","stat","rmdir","utimes"],X={...D};return $.forEach((J)=>{X[J]=(...Y)=>{let Q=Y.pop(),F;try{F=D[`${J}Sync`](...Y)}catch(U){return Q(U)}Q(null,F)}}),X}function yq0(D){return(...$)=>new Promise((X,J)=>{$.push((Y,Q)=>{if(Y)J(Y);else X(Q)}),D(...$)})}function bq0(D){return(...$)=>{let X,J;if($.push((Y,Q)=>{X=Y,J=Q}),D(...$),X)throw X;return J}}function hq0(D){if(D={...D},D.fs=kq0(D.fs||fq0),typeof D.retries==="number"&&D.retries>0||D.retries&&typeof D.retries.retries==="number"&&D.retries.retries>0)throw Object.assign(Error("Cannot use retries with the sync api"),{code:"ESYNC"});return D}gv.exports={toPromise:yq0,toSync:bq0,toSyncOptions:hq0}});var dv=E((Ha0,M4)=>{var u5=hv(),{toPromise:fQ,toSync:kQ,toSyncOptions:FW}=mv();async function cv(D,$){let X=await fQ(u5.lock)(D,$);return fQ(X)}function gq0(D,$){let X=kQ(u5.lock)(D,FW($));return kQ(X)}function mq0(D,$){return fQ(u5.unlock)(D,$)}function cq0(D,$){return kQ(u5.unlock)(D,FW($))}function dq0(D,$){return fQ(u5.check)(D,$)}function nq0(D,$){return kQ(u5.check)(D,FW($))}M4.exports=cv;M4.exports.lock=cv;M4.exports.unlock=mq0;M4.exports.lockSync=gq0;M4.exports.unlockSync=cq0;M4.exports.check=dq0;M4.exports.checkSync=nq0});var ov=E((rv)=>{Object.defineProperty(rv,"__esModule",{value:!0});rv.canStoreURLs=rv.FileUrlStorage=void 0;var nv=l("fs"),lq0=pq0(zv()),lv=iq0(dv());function pv(D){if(typeof WeakMap!="function")return null;var $=new WeakMap,X=new WeakMap;return(pv=function(J){return J?X:$})(D)}function iq0(D,$){if(!$&&D&&D.__esModule)return D;if(D===null||typeof D!="object"&&typeof D!="function")return{default:D};var X=pv($);if(X&&X.has(D))return X.get(D);var J={__proto__:null},Y=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var Q in D)if(Q!=="default"&&{}.hasOwnProperty.call(D,Q)){var F=Y?Object.getOwnPropertyDescriptor(D,Q):null;F&&(F.get||F.set)?Object.defineProperty(J,Q,F):J[Q]=D[Q]}return J.default=D,X&&X.set(D,J),J}function pq0(D){return D&&D.__esModule?D:{default:D}}function j2(D){return j2=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function($){return typeof $}:function($){return $&&typeof Symbol=="function"&&$.constructor===Symbol&&$!==Symbol.prototype?"symbol":typeof $},j2(D)}function rq0(D,$){if(!(D instanceof $))throw TypeError("Cannot call a class as a function")}function iv(D,$){for(var X=0;X<$.length;X++){var J=$[X];if(J.enumerable=J.enumerable||!1,J.configurable=!0,"value"in J)J.writable=!0;Object.defineProperty(D,oq0(J.key),J)}}function tq0(D,$,X){if($)iv(D.prototype,$);if(X)iv(D,X);return Object.defineProperty(D,"prototype",{writable:!1}),D}function oq0(D){var $=aq0(D,"string");return j2($)=="symbol"?$:$+""}function aq0(D,$){if(j2(D)!="object"||!D)return D;var X=D[Symbol.toPrimitive];if(X!==void 0){var J=X.call(D,$||"default");if(j2(J)!="object")return J;throw TypeError("@@toPrimitive must return a primitive value.")}return($==="string"?String:Number)(D)}var Ba0=rv.canStoreURLs=!0,Ka0=rv.FileUrlStorage=function(){function D($){rq0(this,D),this.path=$}return tq0(D,[{key:"findAllUploads",value:function(){var X=this;return new Promise(function(J,Y){X._getItems("tus::",function(Q,F){if(Q)Y(Q);else J(F)})})}},{key:"findUploadsByFingerprint",value:function(X){var J=this;return new Promise(function(Y,Q){J._getItems("tus::".concat(X),function(F,U){if(F)Q(F);else Y(U)})})}},{key:"removeUpload",value:function(X){var J=this;return new Promise(function(Y,Q){J._removeItem(X,function(F){if(F)Q(F);else Y()})})}},{key:"addUpload",value:function(X,J){var Y=this,Q=Math.round(Math.random()*1000000000000),F="tus::".concat(X,"::").concat(Q);return new Promise(function(U,Z){Y._setItem(F,J,function(O){if(O)Z(O);else U(F)})})}},{key:"_setItem",value:function(X,J,Y){var Q=this;lv.lock(this.path,this._lockfileOptions()).then(function(F){Y=Q._releaseAndCb(F,Y),Q._getData(function(U,Z){if(U){Y(U);return}Z[X]=J,Q._writeData(Z,function(O){return Y(O)})})}).catch(Y)}},{key:"_getItems",value:function(X,J){this._getData(function(Y,Q){if(Y){J(Y);return}var F=Object.keys(Q).filter(function(U){return U.startsWith(X)}).map(function(U){var Z=Q[U];return Z.urlStorageKey=U,Z});J(null,F)})}},{key:"_removeItem",value:function(X,J){var Y=this;lv.lock(this.path,this._lockfileOptions()).then(function(Q){J=Y._releaseAndCb(Q,J),Y._getData(function(F,U){if(F){J(F);return}delete U[X],Y._writeData(U,function(Z){return J(Z)})})}).catch(J)}},{key:"_lockfileOptions",value:function(){return{realpath:!1,retries:{retries:5,minTimeout:20}}}},{key:"_releaseAndCb",value:function(X,J){return function(Y){if(Y){X().then(function(){return J(Y)}).catch(function(Q){return J((0,lq0.default)([Y,Q]))});return}X().then(J).catch(J)}}},{key:"_writeData",value:function(X,J){var Y={encoding:"utf8",mode:432,flag:"w"};(0,nv.writeFile)(this.path,JSON.stringify(X),Y,function(Q){return J(Q)})}},{key:"_getData",value:function(X){(0,nv.readFile)(this.path,"utf8",function(J,Y){if(J){if(J.code==="ENOENT")X(null,{});else X(J);return}try{Y=!Y.trim().length?{}:JSON.parse(Y)}catch(Q){X(Q);return}X(null,Y)})}}])}()});var bQ=E((I4)=>{Object.defineProperty(I4,"__esModule",{value:!0});Object.defineProperty(I4,"DefaultHttpStack",{enumerable:!0,get:function(){return D_.default}});Object.defineProperty(I4,"DetailedError",{enumerable:!0,get:function(){return eq0.default}});Object.defineProperty(I4,"FileUrlStorage",{enumerable:!0,get:function(){return $_.FileUrlStorage}});Object.defineProperty(I4,"StreamSource",{enumerable:!0,get:function(){return YW0.default}});I4.Upload=void 0;Object.defineProperty(I4,"canStoreURLs",{enumerable:!0,get:function(){return $_.canStoreURLs}});I4.defaultOptions=void 0;Object.defineProperty(I4,"enableDebugLog",{enumerable:!0,get:function(){return DW0.enableDebugLog}});I4.isSupported=void 0;var eq0=c8(Fq()),DW0=Uq(),$W0=c8(dP()),UW=c8(Iu()),XW0=c8(cu()),JW0=c8(pu()),D_=c8(Ox()),YW0=c8(zq()),$_=ov();function c8(D){return D&&D.__esModule?D:{default:D}}function v5(D){return v5=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function($){return typeof $}:function($){return $&&typeof Symbol=="function"&&$.constructor===Symbol&&$!==Symbol.prototype?"symbol":typeof $},v5(D)}function QW0(D,$){if(!(D instanceof $))throw TypeError("Cannot call a class as a function")}function av(D,$){for(var X=0;X<$.length;X++){var J=$[X];if(J.enumerable=J.enumerable||!1,J.configurable=!0,"value"in J)J.writable=!0;Object.defineProperty(D,J_(J.key),J)}}function FW0(D,$,X){if($)av(D.prototype,$);if(X)av(D,X);return Object.defineProperty(D,"prototype",{writable:!1}),D}function UW0(D,$,X){return $=yQ($),ZW0(D,X_()?Reflect.construct($,X||[],yQ(D).constructor):$.apply(D,X))}function ZW0(D,$){if($&&(v5($)==="object"||typeof $==="function"))return $;else if($!==void 0)throw TypeError("Derived constructors may only return object or undefined");return OW0(D)}function OW0(D){if(D===void 0)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return D}function X_(){try{var D=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch($){}return(X_=function(){return!!D})()}function yQ(D){return yQ=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(X){return X.__proto__||Object.getPrototypeOf(X)},yQ(D)}function GW0(D,$){if(typeof $!=="function"&&$!==null)throw TypeError("Super expression must either be null or a function");if(D.prototype=Object.create($&&$.prototype,{constructor:{value:D,writable:!0,configurable:!0}}),Object.defineProperty(D,"prototype",{writable:!1}),$)ZW(D,$)}function ZW(D,$){return ZW=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(J,Y){return J.__proto__=Y,J},ZW(D,$)}function sv(D,$){var X=Object.keys(D);if(Object.getOwnPropertySymbols){var J=Object.getOwnPropertySymbols(D);$&&(J=J.filter(function(Y){return Object.getOwnPropertyDescriptor(D,Y).enumerable})),X.push.apply(X,J)}return X}function x5(D){for(var $=1;$<arguments.length;$++){var X=arguments[$]!=null?arguments[$]:{};$%2?sv(Object(X),!0).forEach(function(J){wW0(D,J,X[J])}):Object.getOwnPropertyDescriptors?Object.defineProperties(D,Object.getOwnPropertyDescriptors(X)):sv(Object(X)).forEach(function(J){Object.defineProperty(D,J,Object.getOwnPropertyDescriptor(X,J))})}return D}function wW0(D,$,X){if($=J_($),$ in D)Object.defineProperty(D,$,{value:X,enumerable:!0,configurable:!0,writable:!0});else D[$]=X;return D}function J_(D){var $=qW0(D,"string");return v5($)=="symbol"?$:$+""}function qW0(D,$){if(v5(D)!="object"||!D)return D;var X=D[Symbol.toPrimitive];if(X!==void 0){var J=X.call(D,$||"default");if(v5(J)!="object")return J;throw TypeError("@@toPrimitive must return a primitive value.")}return($==="string"?String:Number)(D)}var ev=I4.defaultOptions=x5(x5({},UW.default.defaultOptions),{},{httpStack:new D_.default,fileReader:new XW0.default,urlStorage:new $W0.default,fingerprint:JW0.default}),za0=I4.Upload=function(D){function $(){var X=arguments.length>0&&arguments[0]!==void 0?arguments[0]:null,J=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return QW0(this,$),J=x5(x5({},ev),J),UW0(this,$,[X,J])}return GW0($,D),FW0($,null,[{key:"terminate",value:function(J){var Y=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return Y=x5(x5({},ev),Y),UW.default.terminate(J,Y)}}])}(UW.default),Va0=I4.isSupported=!0});var l1;var d8=p(()=>{l1={name:"@capgo/cli",type:"module",version:"7.114.1",description:"A CLI to upload to capgo servers",author:"Martin martin@capgo.app",license:"Apache 2.0",homepage:"https://github.com/Cap-go/capgo/tree/main/cli#readme",repository:{type:"git",url:"git+https://github.com/Cap-go/capgo.git",directory:"cli"},bugs:{url:"https://github.com/Cap-go/capgo/issues"},keywords:["appflow alternative","ionic","capacitor","auto update","live update","capgo","cli","upload","capgo-cli","sdk","tanstack-intent"],exports:{".":{import:"./dist/index.js",require:"./dist/index.js"},"./sdk":{types:"./dist/src/sdk.d.ts",import:"./dist/src/sdk.js"}},main:"dist/index.js",types:"dist/src/index.d.ts",bin:{capgo:"dist/index.js"},files:["!skills/_artifacts","dist","skills"],engines:{npm:">=8.0.0",node:">=20.0.0"},scripts:{build:"tsc && bun build.mjs",dev:"NODE_ENV=development ncc build","no-debug":"node dist/index.js","dev-build":"SUPA_DB=development ncc build",pack:"pkg",types:"bunx --bun supabase gen types typescript --project-id=xvwzpoazmxkqosrdewyv > src/types/supabase.types.ts",typecheck:"tsgo --project tsconfig.tsgo.json --noEmit",lint:"bun run lint:ox","lint:ox":"oxlint --config ../.oxlintrc.json src","lint:fix":"oxlint --config ../.oxlintrc.json --fix src","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:android-service-account-validation":"bun test/test-android-service-account-validation.mjs","test:build-zip-filter":"bun test/test-build-zip-filter.mjs","test:checksum":"bun test/test-checksum-algorithm.mjs","test:build-needed":"bun test/test-build-needed.mjs","test:ci-prompts":"bun test/test-ci-prompts.mjs","test:ci-secrets":"bun test/test-ci-secrets.mjs","test:android-onboarding-progress":"bun test/test-android-onboarding-progress.mjs","test:onboarding-telemetry":"bun test/test-onboarding-telemetry.mjs","test:v2-event-migration":"bun test/test-v2-event-migration.mjs","test:analytics":"bun test/test-analytics.mjs","test:analytics-error-category":"bun test/test-analytics-error-category.mjs","test:analytics-org-resolver":"bun test/test-analytics-org-resolver.mjs","test:mcp-analytics":"bun test/test-mcp-analytics.mjs","test:app-created-source":"bun test/test-app-created-source.mjs","test:doctor-analytics":"bun test/test-doctor-analytics.mjs","test:posthog-exception":"bun test/test-posthog-exception.mjs","test:onboarding-recovery":"bun test/test-onboarding-recovery.mjs","test:onboarding-progress":"bun test/test-onboarding-progress.mjs","test:onboarding-run-targets":"bun test/test-onboarding-run-targets.mjs","test:run-device-command":"bun test/test-run-device-command.mjs","test:init-app-conflict":"bun test/test-init-app-conflict.mjs","test:init-guardrails":"bun test/test-init-guardrails.mjs","test:prompt-preferences":"bun test/test-prompt-preferences.mjs","test:esm-sdk":"node test/test-sdk-esm.mjs","test:mcp":"node test/test-mcp.mjs","test:version-detection":"node test/test-get-installed-version.mjs","test:version-detection:setup":"./test/fixtures/setup-test-projects.sh","test:platform-paths":"bun test/test-platform-paths.mjs","test:payload-split":"bun test/test-payload-split.mjs","test:macos-signing":"bun test/test-macos-signing.mjs","test:apple-api-import-helpers":"bun test/test-apple-api-import-helpers.mjs","test:manifest-path-encoding":"bun test/test-manifest-path-encoding.mjs",test:"bun run build && bun run test:version-detection:setup && 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:android-service-account-validation && bun run test:build-zip-filter && bun run test:checksum && bun run test:build-needed && bun run test:ci-prompts && bun run test:ci-secrets && bun run test:android-onboarding-progress && bun run test:onboarding-telemetry && bun run test:v2-event-migration && bun run test:analytics && bun run test:analytics-error-category && bun run test:analytics-org-resolver && bun run test:mcp-analytics && bun run test:app-created-source && bun run test:doctor-analytics && bun run test:posthog-exception && bun run test:build-platform-selection && bun run test:onboarding-recovery && bun run test:onboarding-progress && bun run test:onboarding-run-targets && bun run test:run-device-command && bun run test:init-app-conflict && bun run test:init-guardrails && bun run test:prompt-preferences && bun run test:esm-sdk && bun run test:mcp && bun run test:version-detection && bun run test:platform-paths && bun run test:payload-split && bun run test:manifest-path-encoding && bun run test:macos-signing && bun run test:apple-api-import-helpers && bun run test:ai-log-capture && bun run test:ai-analyze-flow && bun run test:ai-render-markdown","test:build-platform-selection":"bun test/test-build-platform-selection.mjs","test:ai-log-capture":"bun test/test-ai-log-capture.mjs","test:ai-analyze-flow":"bun test/test-ai-analyze-flow.mjs","test:ai-render-markdown":"bun test/test-ai-render-markdown.mjs"},dependencies:{"@inkjs/ui":"^2.0.0",ink:"^7.0.4","ink-spinner":"^5.0.0",jsonwebtoken:"^9.0.3","node-forge":"^1.4.0",qrcode:"^1.5.4",react:"^19.2.6"},devDependencies:{"@antfu/eslint-config":"^9.0.0","@bradenmacdonald/s3-lite-client":"npm:@jsr/bradenmacdonald__s3-lite-client@0.9.6","@capacitor/cli":"^8.3.4","@capgo/find-package-manager":"^0.0.18","@clack/prompts":"^1.4.0","@modelcontextprotocol/sdk":"^1.29.0","@sauber/table":"npm:@jsr/sauber__table","@std/semver":"npm:@jsr/std__semver@1.0.8","@supabase/supabase-js":"^2.106.2","@tanstack/intent":"^0.0.41","@types/adm-zip":"^0.5.8","@types/jsonwebtoken":"^9.0.10","@types/node":"^25.9.1","@types/node-forge":"^1.3.14","@types/prettyjson":"^0.0.33","@types/qrcode":"^1.5.6","@types/react":"^19.2.15","@types/tmp":"^0.2.6","@types/ws":"^8.18.1","@typescript/native-preview":"7.0.0-dev.20260526.1","@vercel/ncc":"^0.38.4","adm-zip":"^0.5.17","ci-info":"^4.4.0",commander:"^14.0.3",eslint:"^10.4.0","git-format-staged":"4.0.1",husky:"^9.1.7","is-wsl":"^3.1.1",micromatch:"^4.0.8",open:"^11.0.0",oxlint:"^1.67.0",partysocket:"^1.1.19",prettyjson:"^1.2.5",tmp:"^0.2.6","tus-js-client":"^4.3.1",typescript:"^6.0.3",ws:"^8.21.0",zod:"^4.4.3"}}});async function hQ(D){try{let X=`https://registry.npmjs.org/${encodeURIComponent(D.toLowerCase())}`,J=await fetch(X,{headers:{accept:"application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"}});if(!J.ok)return null;return(await J.json())["dist-tags"]?.latest||null}catch{return null}}async function HW0(){let D=await hQ("@capgo/cli")??"",$=D?.split(".")[0]??"";return{currentVersion:l1.version,latestVersion:D,isOutdated:!!D&&D!==l1.version,majorVersion:$}}async function qD(){let{isOutdated:D,currentVersion:$,latestVersion:X,majorVersion:J}=await HW0();if(D)V.warning(`\uD83D\uDEA8 You are using @capgo/cli@${$} it's not the latest version.
|
|
128
128
|
Please use @capgo/cli@${X}" or @capgo/cli@${J} to keep up to date with the latest features and bug fixes.`)}var A1=p(()=>{k0();d8()});async function U_(D,$,X,J,Y,Q="✅"){await I0(X,{channel:D,event:J,icon:Q,org_id:$,tracking_version:2,...Y?{tags:{"app-id":Y}}:{},notify:!1})}var Z_=p(()=>{k0();T6();A1();v0()});import{Buffer as O_}from"node:buffer";import{createHash as BW0}from"node:crypto";function NW0(D){let $=4294967295;for(let X=0;X<D.length;X++){let J=D[X];$=KW0[($^J)&255]^$>>>8}return $=$^4294967295,($>>>0).toString(16).padStart(8,"0")}async function A4(D,$="sha256"){let X=O_.isBuffer(D)?D:O_.from(D);if($==="crc32")return NW0(X);let J=BW0($);return J.update(X),J.digest("hex")}var KW0;var T2=p(()=>{KW0=(()=>{let D=[];for(let $=0;$<256;$++){let X=$;for(let J=0;J<8;J++)X=X&1?3988292384^X>>>1:X>>>1;D[$]=X}return D})()});var w_=E((fa0,G_)=>{var _5=1000,f5=_5*60,k5=f5*60,n8=k5*24,zW0=n8*7,VW0=n8*365.25;G_.exports=function(D,$){$=$||{};var X=typeof D;if(X==="string"&&D.length>0)return LW0(D);else if(X==="number"&&isFinite(D))return $.long?IW0(D):MW0(D);throw Error("val is not a non-empty string or a valid number. val="+JSON.stringify(D))};function LW0(D){if(D=String(D),D.length>100)return;var $=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(D);if(!$)return;var X=parseFloat($[1]),J=($[2]||"ms").toLowerCase();switch(J){case"years":case"year":case"yrs":case"yr":case"y":return X*VW0;case"weeks":case"week":case"w":return X*zW0;case"days":case"day":case"d":return X*n8;case"hours":case"hour":case"hrs":case"hr":case"h":return X*k5;case"minutes":case"minute":case"mins":case"min":case"m":return X*f5;case"seconds":case"second":case"secs":case"sec":case"s":return X*_5;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return X;default:return}}function MW0(D){var $=Math.abs(D);if($>=n8)return Math.round(D/n8)+"d";if($>=k5)return Math.round(D/k5)+"h";if($>=f5)return Math.round(D/f5)+"m";if($>=_5)return Math.round(D/_5)+"s";return D+"ms"}function IW0(D){var $=Math.abs(D);if($>=n8)return gQ(D,$,n8,"day");if($>=k5)return gQ(D,$,k5,"hour");if($>=f5)return gQ(D,$,f5,"minute");if($>=_5)return gQ(D,$,_5,"second");return D+" ms"}function gQ(D,$,X,J){var Y=$>=X*1.5;return Math.round(D/X)+" "+J+(Y?"s":"")}});var OW=E((ka0,q_)=>{function AW0(D){X.debug=X,X.default=X,X.coerce=Z,X.disable=F,X.enable=Y,X.enabled=U,X.humanize=w_(),X.destroy=O,Object.keys(D).forEach((G)=>{X[G]=D[G]}),X.names=[],X.skips=[],X.formatters={};function $(G){let w=0;for(let q=0;q<G.length;q++)w=(w<<5)-w+G.charCodeAt(q),w|=0;return X.colors[Math.abs(w)%X.colors.length]}X.selectColor=$;function X(G){let w,q=null,W,H;function B(...L){if(!B.enabled)return;let M=B,I=Number(new Date),K=I-(w||I);if(M.diff=K,M.prev=w,M.curr=I,w=I,L[0]=X.coerce(L[0]),typeof L[0]!=="string")L.unshift("%O");let N=0;L[0]=L[0].replace(/%([a-zA-Z%])/g,(R,v)=>{if(R==="%%")return"%";N++;let _=X.formatters[v];if(typeof _==="function"){let A=L[N];R=_.call(M,A),L.splice(N,1),N--}return R}),X.formatArgs.call(M,L),(M.log||X.log).apply(M,L)}if(B.namespace=G,B.useColors=X.useColors(),B.color=X.selectColor(G),B.extend=J,B.destroy=X.destroy,Object.defineProperty(B,"enabled",{enumerable:!0,configurable:!1,get:()=>{if(q!==null)return q;if(W!==X.namespaces)W=X.namespaces,H=X.enabled(G);return H},set:(L)=>{q=L}}),typeof X.init==="function")X.init(B);return B}function J(G,w){let q=X(this.namespace+(typeof w>"u"?":":w)+G);return q.log=this.log,q}function Y(G){X.save(G),X.namespaces=G,X.names=[],X.skips=[];let w=(typeof G==="string"?G:"").trim().replace(/\s+/g,",").split(",").filter(Boolean);for(let q of w)if(q[0]==="-")X.skips.push(q.slice(1));else X.names.push(q)}function Q(G,w){let q=0,W=0,H=-1,B=0;while(q<G.length)if(W<w.length&&(w[W]===G[q]||w[W]==="*"))if(w[W]==="*")H=W,B=q,W++;else q++,W++;else if(H!==-1)W=H+1,B++,q=B;else return!1;while(W<w.length&&w[W]==="*")W++;return W===w.length}function F(){let G=[...X.names,...X.skips.map((w)=>"-"+w)].join(",");return X.enable(""),G}function U(G){for(let w of X.skips)if(Q(G,w))return!1;for(let w of X.names)if(Q(G,w))return!0;return!1}function Z(G){if(G instanceof Error)return G.stack||G.message;return G}function O(){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 X.enable(X.load()),X}q_.exports=AW0});var H_=E((W_,mQ)=>{W_.formatArgs=RW0;W_.save=jW0;W_.load=TW0;W_.useColors=EW0;W_.storage=CW0();W_.destroy=(()=>{let D=!1;return()=>{if(!D)D=!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`.")}})();W_.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 EW0(){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 D;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&&(D=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(D[1],10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function RW0(D){if(D[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+D[0]+(this.useColors?"%c ":" ")+"+"+mQ.exports.humanize(this.diff),!this.useColors)return;let $="color: "+this.color;D.splice(1,0,$,"color: inherit");let X=0,J=0;D[0].replace(/%[a-zA-Z%]/g,(Y)=>{if(Y==="%%")return;if(X++,Y==="%c")J=X}),D.splice(J,0,$)}W_.log=console.debug||console.log||(()=>{});function jW0(D){try{if(D)W_.storage.setItem("debug",D);else W_.storage.removeItem("debug")}catch($){}}function TW0(){let D;try{D=W_.storage.getItem("debug")||W_.storage.getItem("DEBUG")}catch($){}if(!D&&typeof process<"u"&&"env"in process)D=process.env.DEBUG;return D}function CW0(){try{return localStorage}catch(D){}}mQ.exports=OW()(W_);var{formatters:SW0}=mQ.exports;SW0.j=function(D){try{return JSON.stringify(D)}catch($){return"[UnexpectedJSONParseError]: "+$.message}}});var K_=E((ba0,B_)=>{B_.exports=(D,$=process.argv)=>{let X=D.startsWith("-")?"":D.length===1?"-":"--",J=$.indexOf(X+D),Y=$.indexOf("--");return J!==-1&&(Y===-1||J<Y)}});var V_=E((ha0,z_)=>{var yW0=l("os"),N_=l("tty"),L$=K_(),{env:D1}=process,E4;if(L$("no-color")||L$("no-colors")||L$("color=false")||L$("color=never"))E4=0;else if(L$("color")||L$("colors")||L$("color=true")||L$("color=always"))E4=1;if("FORCE_COLOR"in D1)if(D1.FORCE_COLOR==="true")E4=1;else if(D1.FORCE_COLOR==="false")E4=0;else E4=D1.FORCE_COLOR.length===0?1:Math.min(parseInt(D1.FORCE_COLOR,10),3);function GW(D){if(D===0)return!1;return{level:D,hasBasic:!0,has256:D>=2,has16m:D>=3}}function wW(D,$){if(E4===0)return 0;if(L$("color=16m")||L$("color=full")||L$("color=truecolor"))return 3;if(L$("color=256"))return 2;if(D&&!$&&E4===void 0)return 0;let X=E4||0;if(D1.TERM==="dumb")return X;if(process.platform==="win32"){let J=yW0.release().split(".");if(Number(J[0])>=10&&Number(J[2])>=10586)return Number(J[2])>=14931?3:2;return 1}if("CI"in D1){if(["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE"].some((J)=>(J in D1))||D1.CI_NAME==="codeship")return 1;return X}if("TEAMCITY_VERSION"in D1)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(D1.TEAMCITY_VERSION)?1:0;if(D1.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in D1){let J=parseInt((D1.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(D1.TERM_PROGRAM){case"iTerm.app":return J>=3?3:2;case"Apple_Terminal":return 2}}if(/-256(color)?$/i.test(D1.TERM))return 2;if(/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(D1.TERM))return 1;if("COLORTERM"in D1)return 1;return X}function bW0(D){let $=wW(D,D&&D.isTTY);return GW($)}z_.exports={supportsColor:bW0,stdout:GW(wW(!0,N_.isatty(1))),stderr:GW(wW(!0,N_.isatty(2)))}});var A_=E((M_,dQ)=>{var hW0=l("tty"),cQ=l("util");M_.init=iW0;M_.log=dW0;M_.formatArgs=mW0;M_.save=nW0;M_.load=lW0;M_.useColors=gW0;M_.destroy=cQ.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");M_.colors=[6,2,3,4,5,1];try{let D=V_();if(D&&(D.stderr||D).level>=2)M_.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(D){}M_.inspectOpts=Object.keys(process.env).filter((D)=>{return/^debug_/i.test(D)}).reduce((D,$)=>{let X=$.substring(6).toLowerCase().replace(/_([a-z])/g,(Y,Q)=>{return Q.toUpperCase()}),J=process.env[$];if(/^(yes|on|true|enabled)$/i.test(J))J=!0;else if(/^(no|off|false|disabled)$/i.test(J))J=!1;else if(J==="null")J=null;else J=Number(J);return D[X]=J,D},{});function gW0(){return"colors"in M_.inspectOpts?Boolean(M_.inspectOpts.colors):hW0.isatty(process.stderr.fd)}function mW0(D){let{namespace:$,useColors:X}=this;if(X){let J=this.color,Y="\x1B[3"+(J<8?J:"8;5;"+J),Q=` ${Y};1m${$} \x1B[0m`;D[0]=Q+D[0].split(`
|
|
129
129
|
`).join(`
|
|
130
130
|
`+Q),D.push(Y+"m+"+dQ.exports.humanize(this.diff)+"\x1B[0m")}else D[0]=cW0()+$+" "+D[0]}function cW0(){if(M_.inspectOpts.hideDate)return"";return new Date().toISOString()+" "}function dW0(...D){return process.stderr.write(cQ.formatWithOptions(M_.inspectOpts,...D)+`
|
|
@@ -553,7 +553,7 @@ ${X}
|
|
|
553
553
|
`;U.addFile("capacitor.config.json",v60.from(w,"utf-8"))}await Im0($,U.toBuffer())}var mm0=new Set(["CAPGO_IOS_SCHEME","CAPGO_IOS_TARGET","CAPGO_IOS_DISTRIBUTION","BUILD_OUTPUT_UPLOAD_ENABLED","BUILD_OUTPUT_RETENTION_SECONDS","SKIP_BUILD_NUMBER_BUMP","CAPGO_IOS_SOURCE_DIR","CAPGO_IOS_APP_DIR","CAPGO_IOS_PROJECT_DIR","IOS_PROJECT_DIR","CAPGO_ANDROID_SOURCE_DIR","CAPGO_ANDROID_APP_DIR","CAPGO_ANDROID_PROJECT_DIR","ANDROID_PROJECT_DIR","CAPGO_ANDROID_FLAVOR"]);function cm0(D,$,X,J){let Y={platform:$,buildMode:X,cliVersion:J,iosScheme:D.CAPGO_IOS_SCHEME,iosTarget:D.CAPGO_IOS_TARGET,iosDistribution:D.CAPGO_IOS_DISTRIBUTION,iosSourceDir:D.CAPGO_IOS_SOURCE_DIR,iosAppDir:D.CAPGO_IOS_APP_DIR,iosProjectDir:D.CAPGO_IOS_PROJECT_DIR,androidSourceDir:D.CAPGO_ANDROID_SOURCE_DIR,androidAppDir:D.CAPGO_ANDROID_APP_DIR,androidProjectDir:D.CAPGO_ANDROID_PROJECT_DIR,androidFlavor:D.CAPGO_ANDROID_FLAVOR,outputUploadEnabled:D.BUILD_OUTPUT_UPLOAD_ENABLED==="true",outputRetentionSeconds:D.BUILD_OUTPUT_RETENTION_SECONDS?Number.parseInt(D.BUILD_OUTPUT_RETENTION_SECONDS,10)||T9:T9,skipBuildNumberBump:D.SKIP_BUILD_NUMBER_BUMP==="true"},Q={};for(let[F,U]of Object.entries(D))if(!mm0.has(F)&&U!==void 0)Q[F]=U;return{buildOptions:Y,buildCredentials:Q}}async function g60(D,$,X=!1,J){let Y=Date.now(),Q=$.verbose??!1,F=J||jm0(X),U=null,Z=$.outputRecord?{...F,customMsg:async(O,G)=>{if(O==="qr_download_link"&&typeof G.url==="string")U=G.url;await F.customMsg(O,G)}}:F;try{$.apikey=$.apikey||B0(X);let O=rA($.path||tA()),G=await Tm0(O,()=>R0());if(D=D||G?.config?.appId,!D)throw Error("Missing argument, you need to provide a appId, or be in a capacitor project");let w=await Rm0($.platform,{silent:X}),q=$.supaHost||"https://api.capgo.app",W=await T0($.apikey,$.supaHost,$.supaAnon);await VJ(W,$.apikey,"app.build_native",{appId:D},{message:`Insufficient permissions to request a native build for app ${D}`,silent:X});let H=await pD(W,D);if(Z.info(`Requesting native build for ${D}`),Z.info(`Platform: ${w}`),Z.info(`Project: ${O}`),Z.info(`
|
|
554
554
|
\uD83D\uDD12 Security: Credentials are never stored on Capgo servers`),Z.info(" They are used only during build and deleted after"),Z.info(` Build outputs can optionally be uploaded for time-limited download links
|
|
555
555
|
`),Q)Z.info(`API host: ${q}`);let B={};if($.buildCertificateBase64)B.BUILD_CERTIFICATE_BASE64=$.buildCertificateBase64;if($.p12Password)B.P12_PASSWORD=$.p12Password;if($.appleKeyId)B.APPLE_KEY_ID=$.appleKeyId;if($.appleIssuerId)B.APPLE_ISSUER_ID=$.appleIssuerId;if($.appleKeyContent)B.APPLE_KEY_CONTENT=$.appleKeyContent;if($.appStoreConnectTeamId)B.APP_STORE_CONNECT_TEAM_ID=$.appStoreConnectTeamId;if($.iosScheme)B.CAPGO_IOS_SCHEME=$.iosScheme;if($.iosTarget)B.CAPGO_IOS_TARGET=$.iosTarget;if($.iosDistribution)B.CAPGO_IOS_DISTRIBUTION=$.iosDistribution;if($.iosProvisioningProfile&&$.iosProvisioningProfile.length>0){let S=M10($.iosProvisioningProfile,rA($.path||tA()));B.CAPGO_IOS_PROVISIONING_MAP=JSON.stringify(S)}if($.iosProvisioningMap)B.CAPGO_IOS_PROVISIONING_MAP=$.iosProvisioningMap;if($.androidKeystoreFile)B.ANDROID_KEYSTORE_FILE=$.androidKeystoreFile;if($.keystoreKeyAlias)B.KEYSTORE_KEY_ALIAS=$.keystoreKeyAlias;let L=!!$.keystoreKeyPassword,M=!!$.keystoreStorePassword;if(L&&!M)B.KEYSTORE_KEY_PASSWORD=$.keystoreKeyPassword,B.KEYSTORE_STORE_PASSWORD=$.keystoreKeyPassword;else if(!L&&M)B.KEYSTORE_KEY_PASSWORD=$.keystoreStorePassword,B.KEYSTORE_STORE_PASSWORD=$.keystoreStorePassword;else if(L&&M)B.KEYSTORE_KEY_PASSWORD=$.keystoreKeyPassword,B.KEYSTORE_STORE_PASSWORD=$.keystoreStorePassword;if(typeof $.androidFlavor==="string"){let S=$.androidFlavor.trim();if(S)B.CAPGO_ANDROID_FLAVOR=S}if($.playConfigJson)B.PLAY_CONFIG_JSON=$.playConfigJson;if($.inAppUpdatePriority!==void 0)B.PLAY_STORE_IN_APP_UPDATE_PRIORITY=String(oO($.inAppUpdatePriority));if($.outputUpload!==void 0)B.BUILD_OUTPUT_UPLOAD_ENABLED=Q3($.outputUpload)?"true":"false";if($.outputRetention)B.BUILD_OUTPUT_RETENTION_SECONDS=String(tO($.outputRetention));if($.skipBuildNumberBump!==void 0)B.SKIP_BUILD_NUMBER_BUMP=Q3($.skipBuildNumberBump)?"true":"false";let I=await q10(D,w,Object.keys(B).length>0?B:void 0);if($.playstoreUpload===!1&&I)delete I.PLAY_CONFIG_JSON,Z.info("ℹ️ --no-playstore-upload specified, Play Store upload disabled for this build");let K=hJ(G?.config,w);if(I&&K)if(w==="ios")I.CAPGO_IOS_SOURCE_DIR=K,I.CAPGO_IOS_APP_DIR=K,I.CAPGO_IOS_PROJECT_DIR=K,I.IOS_PROJECT_DIR=K;else I.CAPGO_ANDROID_SOURCE_DIR=K,I.CAPGO_ANDROID_APP_DIR=K,I.CAPGO_ANDROID_PROJECT_DIR=K,I.ANDROID_PROJECT_DIR=K;if(!I)throw Z.error("❌ No credentials found for this app and platform"),Z.error(""),Z.error("You must provide credentials via:"),Z.error(" 1. CLI arguments (--apple-key-id, --p12-password, etc.)"),Z.error(" 2. Environment variables (APPLE_KEY_ID, P12_PASSWORD, etc.)"),Z.error(" 3. Saved credentials file:"),Z.error(` npx @capgo/cli build credentials save --appId ${D} --platform ${w}`),Z.error(""),Z.error("Documentation:"),Z.error(" https://capgo.app/docs/cli/cloud-build/credentials/"),Error("No credentials found. Please provide credentials before building.");let N=[];if(w==="ios"){let S=I.CAPGO_IOS_DISTRIBUTION,x=["app_store","ad_hoc"];if(S&&!x.includes(S))N.push(`Invalid CAPGO_IOS_DISTRIBUTION value: '${S}'. Must be one of: ${x.join(", ")}`);let k=S&&x.includes(S)?S:"app_store";if(!S)Z.info("ℹ️ --ios-distribution not specified, defaulting to app_store");if(I.CAPGO_IOS_DISTRIBUTION=k,!I.BUILD_CERTIFICATE_BASE64)N.push("BUILD_CERTIFICATE_BASE64 (or --build-certificate-base64)");if(!I.P12_PASSWORD)Z.warn("⚠️ P12_PASSWORD not provided - assuming certificate has no password"),Z.warn(" If your certificate requires a password, provide it with --p12-password");if(!!(I.BUILD_PROVISION_PROFILE_BASE64||I.APPLE_PROFILE_NAME)&&!I.CAPGO_IOS_PROVISIONING_MAP)throw Z.error("❌ Legacy provisioning profile format detected. Run:"),Z.error(" npx @capgo/cli build credentials migrate --platform ios"),Z.error(""),Z.error(" This will convert your existing provisioning profile to the new multi-target format."),Error("Legacy provisioning profile format detected. Run: npx @capgo/cli build credentials migrate --platform ios");if(!I.CAPGO_IOS_PROVISIONING_MAP)N.push('CAPGO_IOS_PROVISIONING_MAP (use --ios-provisioning-profile or save via "build credentials save")');if(k==="app_store"){let y=!!I.APPLE_KEY_ID,o=!!I.APPLE_ISSUER_ID,d=!!I.APPLE_KEY_CONTENT,t=y||o||d;if(!(y&&o&&d))if(t){let X0=[];if(!y)X0.push("APPLE_KEY_ID (or --apple-key-id)");if(!o)X0.push("APPLE_ISSUER_ID (or --apple-issuer-id)");if(!d)X0.push("APPLE_KEY_CONTENT (or --apple-key-content)");N.push(`Incomplete App Store Connect API key - missing: ${X0.join(", ")}`)}else if(I.BUILD_OUTPUT_UPLOAD_ENABLED!=="true")N.push("APPLE_KEY_ID/APPLE_ISSUER_ID/APPLE_KEY_CONTENT or BUILD_OUTPUT_UPLOAD_ENABLED=true (or --output-upload) (build has no output destination - enable either TestFlight upload or Capgo download link)");else if(I.SKIP_BUILD_NUMBER_BUMP!=="true")N.push("APPLE_KEY_ID/APPLE_ISSUER_ID/APPLE_KEY_CONTENT or --skip-build-number-bump (App Store Connect API key not provided - build numbers cannot be auto-incremented without it)");else Z.warn("⚠️ App Store Connect API key not provided - build will succeed but cannot auto-upload to TestFlight")}else if(k==="ad_hoc")Z.info("\uD83D\uDCE6 Ad-hoc distribution mode: App Store Connect API key not required"),Z.info(" Build number will use timestamp-based fallback");if(!I.APP_STORE_CONNECT_TEAM_ID)N.push("APP_STORE_CONNECT_TEAM_ID (or --app-store-connect-team-id)")}else if(w==="android"){if(!I.ANDROID_KEYSTORE_FILE)N.push("ANDROID_KEYSTORE_FILE (or --android-keystore-file)");if(!I.KEYSTORE_KEY_ALIAS)N.push("KEYSTORE_KEY_ALIAS (or --keystore-key-alias)");if(!I.KEYSTORE_KEY_PASSWORD&&!I.KEYSTORE_STORE_PASSWORD)N.push("KEYSTORE_KEY_PASSWORD or KEYSTORE_STORE_PASSWORD (at least one password required)");if(!I.PLAY_CONFIG_JSON)if(I.BUILD_OUTPUT_UPLOAD_ENABLED!=="true")N.push("PLAY_CONFIG_JSON or BUILD_OUTPUT_UPLOAD_ENABLED=true (build has no output destination - enable either Play Store upload or Capgo download link)");else Z.warn("⚠️ PLAY_CONFIG_JSON not provided - build will succeed but cannot auto-upload to Play Store")}if(N.length>0){Z.error(`❌ Missing required credentials for ${w}:`),Z.error("");for(let S of N)Z.error(` • ${S}`);throw Z.error(""),Z.error("Provide credentials via:"),Z.error(` 1. CLI arguments: npx @capgo/cli build request --platform ${w} ${w==="ios"?'--apple-key-id "..." --apple-issuer-id "..." --apple-key-content "..."':'--android-keystore-file "..." --keystore-key-alias "..."'}`),Z.error(` 2. Environment variables: ${w==="ios"?'export APPLE_KEY_ID="..." APPLE_ISSUER_ID="..." APPLE_KEY_CONTENT="..."':'export ANDROID_KEYSTORE_FILE="..." KEYSTORE_KEY_ALIAS="..."'}`),Z.error(` 3. Saved credentials: npx @capgo/cli build credentials save --platform ${w} ...`),Z.error(""),Z.error("Documentation:"),Z.error(` https://capgo.app/docs/cli/cloud-build/${w}/`),Error(`Missing required credentials for ${w}: ${N.join(", ")}`)}if(!$.buildMode)Z.info("ℹ️ --build-mode not specified, defaulting to release");if(!I.BUILD_OUTPUT_UPLOAD_ENABLED)Z.info("ℹ️ --output-upload not specified, defaulting to false (no Capgo download link)");if(!I.BUILD_OUTPUT_RETENTION_SECONDS)Z.info(`ℹ️ --output-retention not specified, defaulting to ${T9}s (1 hour)`);if(!I.SKIP_BUILD_NUMBER_BUMP)Z.info("ℹ️ --skip-build-number-bump not specified, build number will be auto-incremented (default)");let{buildOptions:z,buildCredentials:R}=cm0(I,w,$.buildMode||"release",l1.version),v={app_id:D,platform:w,build_mode:$.buildMode||"release",build_options:z,build_credentials:R};if(Z.info("✓ Using credentials (merged from CLI args, env vars, and saved file)"),Q){let S=Object.keys(R);Z.info(`Credentials provided: ${S.join(", ")}`),Z.info(`Build options: platform=${z.platform}, mode=${z.buildMode}, cliVersion=${z.cliVersion}`)}Z.info("Requesting build from Capgo...");let _=3,A=await Cm0(`${q}/build/request`,{method:"POST",headers:{"Content-Type":"application/json",authorization:$.apikey},body:JSON.stringify(v)},_,Z);if(!A.ok){let S=await A.text();throw Error(`Failed to request build: ${A.status} - ${S}`)}let u=await A.json();if(Z.success(`Build job created: ${u.job_id}`),Z.info(`Status: ${u.status}`),Q)Z.info(`Upload URL: ${u.upload_url}`),Z.info(`Upload expires: ${u.upload_expires_at}`);let P=eD0()||$.aiAnalytics===!0,h=null,c=!1;if(P&&u.job_id)h=u.job_id,await D10(u.job_id),X10(u.job_id,()=>c);let r={...Z,buildLog:(S)=>{if(Z.buildLog(S),P&&h)$10(h,S)}};await I0($.apikey,{channel:"native-builder",event:"Build requested",icon:"\uD83C\uDFD7️",org_id:H,tracking_version:2,tags:{"app-id":D,platform:w},notify:!1}).catch();let f=$$(Am0(),`capgo-build-${Date.now()}`);await Vm0(f,{recursive:!0});let j=$$(f,`${_60(O)}.zip`);try{Z.info(`Zipping ${w} project from ${O}...`),await gm0(O,j,w,G?.config,{nodeModules:$.nodeModules});let S=await Mm0(j),x=(S.size/1024/1024).toFixed(2);if(Z.success(`Created zip: ${j} (${x} MB)`),Z.info("Uploading to builder..."),Q)Z.info(`Upload endpoint: ${u.upload_url}`),Z.info(`File size: ${x} MB`),Z.info(`Job ID: ${u.job_id}`);let k=Nm0(j);Z.uploadProgress(0);let g=Date.now(),y=$.buildMode||"release";FG({apikey:$.apikey,appId:D,orgId:H,platform:w,buildMode:y,jobId:u.job_id,sizeBytes:S.size,phase:"started"}),await new Promise((m,b)=>{let H0=new OG.Upload(k,{endpoint:u.upload_url,chunkSize:5242880,metadata:{filename:_60(j),filetype:"application/zip"},headers:{authorization:$.apikey},onBeforeRequest(A0){if(Q){Z.info(`[TUS] ${A0.getMethod()} ${A0.getURL()}`);let S0=A0.getHeader("authorization");Z.info(`[TUS] Authorization header present: ${!!S0}`)}},onAfterResponse(A0,S0){if(Q){Z.info(`[TUS] Response status: ${S0.getStatus()}`);let ND=S0.getHeader("upload-offset"),mD=S0.getHeader("tus-resumable");Z.info(`[TUS] Upload-Offset: ${ND}, Tus-Resumable: ${mD}`)}},async onError(A0){if(await FG({apikey:$.apikey,appId:D,orgId:H,platform:w,buildMode:y,jobId:u.job_id,sizeBytes:S.size,phase:"failed",durationSeconds:(Date.now()-g)/1000,error:A0}),Z.error(`Upload error: ${A0.message}`),A0 instanceof OG.DetailedError){let S0=A0.originalResponse?.getBody(),ND=A0.originalResponse?.getStatus(),mD=A0.originalRequest?.getURL();if(Q)Z.error(`[TUS] Request URL: ${mD}`),Z.error(`[TUS] Response status: ${ND}`),Z.error(`[TUS] Response body: ${S0}`);let a0=(()=>{try{let RD=JSON.parse(S0||'{"error": "unknown error"}');return RD.status||RD.error||RD.message||"unknown error"}catch{return S0||A0.message}})();b(Error(`TUS upload failed: ${a0}`))}else b(Error(`TUS upload failed: ${A0.message||A0.toString()}`))},onProgress(A0,S0){let ND=Number.parseFloat((A0/S0*100).toFixed(2));Z.uploadProgress(ND)},onSuccess(){if(FG({apikey:$.apikey,appId:D,orgId:H,platform:w,buildMode:y,jobId:u.job_id,sizeBytes:S.size,phase:"succeeded",durationSeconds:(Date.now()-g)/1000}),Z.uploadProgress(100),Q)Z.success("TUS upload completed successfully");m()}});if(Q)Z.info("[TUS] Starting upload...");H0.start()}),Z.info("Starting build job...");let o=await fetch(`${q}/build/start/${u.job_id}`,{method:"POST",headers:{"Content-Type":"application/json",authorization:$.apikey},body:JSON.stringify({app_id:D})});if(!o.ok){let m=await o.text();throw Error(`Failed to start build: ${o.status} - ${m}`)}let d=await o.json();Z.success("Build started!"),Z.info("Streaming build logs...");let t=new AbortController,W0=!1,X0=async()=>{if(W0)return;W0=!0;let m=new AbortController,b=setTimeout(()=>m.abort(),4000);try{await fetch(`${q}/build/cancel/${u.job_id}`,{method:"POST",headers:{"Content-Type":"application/json",authorization:$.apikey},body:JSON.stringify({app_id:D}),signal:m.signal})}catch{}finally{clearTimeout(b)}},K0=async()=>{try{if(W0)q$.exit(1);Z.warn("Canceling build... (press Ctrl+C again to force quit)"),await X0(),t.abort()}catch{}};q$.on("SIGINT",K0);let j0,a=!1,f0=async()=>{try{let m=await fetch(`${q}/build/status?job_id=${encodeURIComponent(u.job_id)}&app_id=${encodeURIComponent(D)}&platform=${w}`,{headers:{authorization:$.apikey}});if(!m.ok)return null;let b=await m.json(),H0=b.status?.toLowerCase?.()??"";if(a)Z.info(`Build status: ${H0||b.status}`);if(ZG.has(H0))return H0;return null}catch{return null}},C=null;try{C=await xm0(X,Q,d.logs_url,d.logs_token,f0,t.signal,()=>{a=!0},X&&!J&&!$.outputRecord?void 0:r)}finally{q$.removeListener("SIGINT",K0)}if(C){if(j0=C,ZG.has(C))await f0().catch(()=>{})}else j0=await vm0(q,u.job_id,D,w,$.apikey,X,a,t.signal,Z);if(j0==="succeeded")Z.success("Build completed successfully!");else if(j0==="failed")Z.error("Build failed");else Z.warn(`Build finished with status: ${j0}`);if($.outputRecord&&j0==="succeeded")try{let m=await u60($.outputRecord,{jobId:u.job_id,appId:D,platform:w,buildMode:$.buildMode??"release",status:j0,outputUrl:U},(b)=>Z.warn(b));if(Z.success(`Build output record written to ${$.outputRecord}`),!m.outputUrl)Z.info("ℹ️ Record contains no download URL — pass --output-upload to publish one.");if(m.qrCodePngPath)Z.info(`ℹ️ QR code PNG written to ${m.qrCodePngPath}`)}catch(m){Z.warn(`Failed to write build output record to ${$.outputRecord}: ${m instanceof Error?m.message:String(m)}`)}if(j0==="failed"&&P&&h){let m=Y10({isTTY:q$.stdout.isTTY===!0,aiAnalyticsFlag:$.aiAnalytics===!0}),b="⚠ AI can make mistakes. Always verify the diagnosis against the full log before applying the suggested fix.",H0=(a0)=>{if(a0==="ok")return"success";if(a0==="already_analyzed")return"already_analyzed";if(a0==="too_big")return"too_big";return"error"},A0=async(a0,RD)=>{await pO({apikey:$.apikey,orgId:H,appId:D,platform:w,jobId:h,choice:a0,triggeredBy:RD});let H$=`${q$.env.CAPGO_AI_LOG_BASE_DIR||"/tmp/capgo-builds"}/${h}.log`,eJ="";try{let{readFile:I3}=await import("node:fs/promises");eJ=await I3(H$,"utf8")}catch(I3){let E90=I3 instanceof Error?I3.message:String(I3);q$.stderr.write(`AI analysis skipped: could not read captured log at ${H$}: ${E90}
|
|
556
|
-
`);return}let h9=q$.stdout.isTTY===!0,U4=h9?q$.stdout:q$.stderr,M3=h9?jD():null;M3?.start("Analyzing build log with Capgo AI
|
|
556
|
+
`);return}let h9=q$.stdout.isTTY===!0,U4=h9?q$.stdout:q$.stderr,M3=h9?jD():null;M3?.start("Analyzing build log with Capgo AI");let B$;try{B$=await F10({apiHost:q,apikey:$.apikey,jobId:h,appId:D,logs:eJ})}finally{M3?.stop("Capgo AI finished")}let A90=H0(B$.kind);if(await Z10({apikey:$.apikey,orgId:H,appId:D,platform:w,jobId:h,result:A90,errorStatus:B$.kind==="error"?B$.status:void 0}),B$.kind==="ok")U4.write(`
|
|
557
557
|
--- AI analysis ---
|
|
558
558
|
${U10(B$.analysis,h9)}
|
|
559
559
|
|
|
@@ -569,7 +569,7 @@ Saved prompt to ${a0}
|
|
|
569
569
|
Point your local AI (Claude, Codex, aider, etc.) at this file.
|
|
570
570
|
${"⚠ AI can make mistakes. Always verify the diagnosis against the full log before applying the suggested fix."}
|
|
571
571
|
`)},ND=async()=>{await pO({apikey:$.apikey,orgId:H,appId:D,platform:w,jobId:h,choice:"skip",triggeredBy:m==="auto_upload"||m==="skip"?"ci_flag":"menu"})};async function mD(){if(await nI(h)){q$.stdout.write(`Log too big for AI analysis (>10 MB). Offering local AI instead.
|
|
572
|
-
`),await S0();return}let a0=await g1({message:"Choose AI analysis",options:[{value:"capgo",label:"Capgo AI
|
|
572
|
+
`),await S0();return}let a0=await g1({message:"Choose AI analysis",options:[{value:"capgo",label:"Capgo AI"},{value:"local",label:"Local AI (write prompt to file)"},{value:"skip",label:"Skip"}]});if(a0==="capgo")await A0("capgo_ai","menu");else if(a0==="local")await S0();else await ND()}try{if(m==="skip")await ND();else if(m==="auto_upload")if(await nI(h))q$.stderr.write(`Log too big for AI analysis (>10 MB), skipping
|
|
573
573
|
`),await ND();else await A0("auto_upload","ci_flag");else if(m==="ask_then_menu"){let a0=await xD({message:"Build failed. Run AI analysis?"});if(!a0||typeof a0==="symbol")await ND();else await mD()}else await mD()}catch(a0){q$.stderr.write(`AI analysis flow errored: ${a0 instanceof Error?a0.message:String(a0)}
|
|
574
574
|
`)}}let T=((Date.now()-Y)/1000).toFixed(2);return await I0($.apikey,{channel:"native-builder",event:j0==="succeeded"?"Build succeeded":"Build failed",icon:j0==="succeeded"?"✅":"❌",org_id:H,tracking_version:2,tags:{"app-id":D,platform:w,status:j0||"unknown",time:T},notify:!1}).catch(),{success:j0==="succeeded",jobId:u.job_id,uploadUrl:u.upload_url,status:j0||d.status||u.status}}finally{await Lm0(f,{recursive:!0,force:!0})}}catch(O){let G=O instanceof Error?O.message:String(O);return Z.error(G),{success:!1,error:G}}}k0();S6();y1();A1();v0();async function dm0(D,$,X,J){for await(let Y of D){if(!J)V.warn(`Removing ${Y.name} created on ${p7(Y.created_at)}`);await PO($,X,Y.name)}}function nm0(D,$,X){let J=[];for(let Y of D??[]){let Q=QD(Y.name);if(Qw(Q,$)&&H8(Q,X))J.push(Y)}return J}async function m60(D,$,X=!1){if(!X)L0("Cleanup versions in Capgo");await qD(),$.apikey=$.apikey||B0();let{bundle:J,keep:Y=4}=$,Q=$.force||!1,F=$.ignoreChannel||!1,U=await R0();if(D=d0(D,U?.config),!$.apikey){if(!X)V.error("Missing API key, you need to provide an API key to delete your app");throw Error("Missing API key")}if(!D){if(!X)V.error("Missing argument, you need to provide a appid, or be in a capacitor project");throw Error("Missing appId")}let Z=await T0($.apikey,$.supaHost,$.supaAnon);if(await sD(Z,D,X),await t0(Z,$.apikey),await gD(Z,$.apikey,D,3,X,!0),!X)V.info("Querying all available versions in Capgo");let O=await uO(Z,D),G=await I00(Z,D);if(!X)V.info(`Total active versions in Capgo: ${O?.length??0}`);if(!O?.length){if(!X)V.error("No versions found, aborting cleanup");throw Error("No versions found")}if(J){let W=QD(J),H=u3(W,"major");if(!X)V.info(`Querying available versions in Capgo between ${x$(W)} and ${x$(H)}`);if(O=nm0(O,W,H),!X)V.info(`Active versions in Capgo between ${x$(W)} and ${x$(H)}: ${O?.length??0}`)}let w=[],q=0;for(let W of O){let H=G.find((B)=>B===W.id);if(q<Y||H&&!F)W.keep=H?"✅ (Linked to channel)":"✅",q+=1;else W.keep="❌",w.push(W)}if(!w.length){if(!X)V.warn("Nothing to be removed, aborting removal...");return{removed:0,kept:q}}if(!X)M00(O);if(!Q)if(!X){let W=await xD({message:"Do you want to continue removing the versions specified?"});if(g0(W)||!W)throw V.warn("Not confirmed, aborting removal..."),Error("Cleanup cancelled by user")}else throw Error("Cleanup requires force=true in SDK mode to prevent accidental deletions");if(!X)V.success("You have confirmed removal, removing versions now");if(await dm0(w,Z,D,X),OD({channel:"bundle",event:"Bundles Cleaned",icon:"\uD83E\uDDF9",tags:{kept_count:q,deleted_count:w.length}}),!X)M0("Done ✅");return{removed:w.length,kept:q}}k0();T6();y1();v0();async function c60(D,$,X=!1){if(!X)L0("Check compatibility");let J={...$,apikey:$.apikey||B0()},Y=D?void 0:await R0(),Q=d0(D,Y?.config),F=J.channel;if(!F){if(!X)V.error("Missing argument, you need to provide a channel");throw Error("Missing channel")}if(!J.apikey){if(!X)V.error("Missing API key, you need to provide an API key to access Capgo Cloud metadata");throw Error("Missing API key")}if(!Q){if(!X)V.error("Missing argument, you need to provide an appId, or be in a capacitor project");throw Error("Missing appId")}let U=await T0(J.apikey,J.supaHost,J.supaAnon);await sD(U,Q,X),await gD(U,J.apikey,Q,1,X,!0);let Z=await SO(U,Q,F,J.packageJson,J.nodeModules),O=Z.finalCompatibility.some((G)=>!e6(G));if(OD({channel:"bundle",event:"Bundle Compatibility Checked",icon:"\uD83E\uDDEA",tags:{result:O?"incompatible":"compatible",missing_deps_count:Z.finalCompatibility.filter((G)=>!e6(G)).length}}),!X){let G=new vD;G.headers=["Package","Local","Remote","Status","Details"],G.theme=vD.roundTheme,G.rows=[];let w=J.text?"OK":"✅",q=J.text?"FAIL":"❌";for(let W of Z.finalCompatibility){let{name:H,localVersion:B,remoteVersion:L}=W,M=L9(W),I=M.compatible?w:q;G.rows.push([H,B||"-",L||"-",I,M.message])}if(V.success("Compatibility Check Results"),V.info(G.toString()),O){let W=Z.finalCompatibility.filter((H)=>!e6(H)).length;V.warn(`
|
|
575
575
|
${W} package(s) are incompatible with channel "${F}"`),V.warn("An app store update may be required for these changes to take effect.")}else V.success(`
|