@capgo/cli 8.37.4 → 8.39.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@capgo/cli",
3
3
  "type": "module",
4
- "version": "8.37.4",
4
+ "version": "8.39.0",
5
5
  "description": "A CLI to upload to capgo servers",
6
6
  "author": "Martin martin@capgo.app",
7
7
  "license": "Apache 2.0",
@@ -162,9 +162,10 @@
162
162
  "test:ios-updater-sync-validation": "bun test/test-ios-updater-sync-validation.mjs",
163
163
  "test:ios-verify-app": "bun test/test-ios-verify-app.mjs",
164
164
  "test:ios-marketing-version": "bun test/test-ios-marketing-version.mjs",
165
+ "test:android-version": "bun test/test-android-version.mjs",
165
166
  "test:platform-flow-contract": "bun test/test-platform-flow-contract.mjs",
166
167
  "test:tail-engine-shared": "bun test/test-tail-engine-shared.mjs",
167
- "test": "bun run build && bun run test:helper-dce && bun run test:version-detection:setup && bun run test:bundle && bun run test:functional && bun run test:semver && bun run test:auto-bump-version && bun run test:auto-bump-ai-diff && bun run test:version-edge-cases && bun run test:regex && bun run test:upload && bun run test:fail-on-incompatible && bun run test:native-dependencies && bun run test:package-json-guard && 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:authenticated-command-invocation && bun run test:analytics-error-category && bun run test:analytics-org-resolver && bun run test:supabase-perf && bun run test:preview-qr && bun run test:app-set-options && bun run test:mcp-analytics && bun run test:mcp-instructions && bun run test:mcp-live-update-onboarding && bun run test:mcp-stdout-guard && bun run test:mcp-platform-select && bun run test:mcp-explain-scopes && bun run test:mcp-oauth-reopen && bun run test:mcp-broker-oauth && bun run test:mcp-broker-session && bun run test:mcp-credentials-manage && bun run test:mcp-resume-prompt && bun run test:mcp-build-job && bun run test:mcp-build-tools && 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-monorepo-targeting && bun run test:init-app-conflict && bun run test:wait-log && bun run test:init-guardrails && bun run test:init-replay && bun run test:init-telemetry && bun run test:prompt-preferences && bun run test:esm-sdk && bun run test:mcp && bun run test:mcp-no-key-handshake && bun run test:auth-session && bun run test:version-detection && bun run test:platform-paths && bun run test:project-type-detection && bun run test:payload-split && bun run test:manifest-path-encoding && bun run test:macos-signing && bun run test:asc-key-protocol && bun run test:apple-api-import-helpers && bun run test:apple-api-verify-key && bun run test:bundle-id-detector && bun run test:apple-api-app-list && bun run test:app-verification && bun run test:pbxproj-parser && bun run test:ai-log-capture && bun run test:ai-analyze-flow && bun run test:cicd-failure-help && bun run test:ai-sse-parser && bun run test:ai-render-markdown && bun run test:ai-stream-markdown && bun run test:ai-onboarding-mode && bun run test:ai-fit && bun run test:platform-layout && bun run test:frame-fit && bun run test:onboarding-min-size && bun run test:min-size-gate && bun run test:shell-size-gate && bun run test:build-log-sanitize && bun run test:build-output-viewport && bun run test:diff-viewer-viewport && bun run test:build-complete-exit && bun run test:ai-analyze-stream && bun run test:support-mailto && bun run test:support-redact && bun run test:support-internal-log && bun run test:support-help-menu && bun run test:support-contact && bun run test:support-upload-prompt && bun run test:support-bundle-files && bun run test:self-update && bun run test:update-prompt && bun run test:apple-api-cert-create && bun run test:android-tail-engine && bun run test:android-tail-render && bun run test:android-tail-routing && bun run test:dev-gate-stripped && bun run test:frame-fit-ios-shared && bun run test:ios-confirm-app-id && bun run test:ios-create-new && bun run test:ios-e2e && bun run test:ios-flow-contract && bun run test:ios-import-discovery && bun run test:ios-import-export && bun run test:ios-import-pickers && bun run test:ios-import-recovery && bun run test:ios-recovery && bun run test:ios-resume && bun run test:ios-tail-handoff && bun run test:ios-tui-render && bun run test:p8-error && bun run test:ios-tui-routing && bun run test:ios-updater-sync-validation && bun run test:ios-verify-app && bun run test:ios-marketing-version && bun run test:platform-flow-contract && bun run test:tail-engine-shared && bun run test:prescan && bun run test:android-reporting-api && bun run test:android-app-verification && bun run test:android-rename && bun run test:appflow-auth && bun run test:appflow-api-map && bun run test:appflow-validate && bun run test:appflow-flow && bun run test:appflow-gapfill && bun run test:appflow-engine && bun run test:appflow-tail && bun run test:appflow-fetch && bun run test:appflow-sa-decode && bun run test:app-permission-helper && bun run test:organization-set-api-host && bun run test:trial-warning && bun run test:plan-validation",
168
+ "test": "bun run build && bun run test:helper-dce && bun run test:version-detection:setup && bun run test:bundle && bun run test:functional && bun run test:semver && bun run test:auto-bump-version && bun run test:auto-bump-ai-diff && bun run test:version-edge-cases && bun run test:regex && bun run test:upload && bun run test:fail-on-incompatible && bun run test:native-dependencies && bun run test:package-json-guard && 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:authenticated-command-invocation && bun run test:analytics-error-category && bun run test:analytics-org-resolver && bun run test:supabase-perf && bun run test:preview-qr && bun run test:app-set-options && bun run test:mcp-analytics && bun run test:mcp-instructions && bun run test:mcp-live-update-onboarding && bun run test:mcp-stdout-guard && bun run test:mcp-platform-select && bun run test:mcp-explain-scopes && bun run test:mcp-oauth-reopen && bun run test:mcp-broker-oauth && bun run test:mcp-broker-session && bun run test:mcp-credentials-manage && bun run test:mcp-resume-prompt && bun run test:mcp-build-job && bun run test:mcp-build-tools && 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-monorepo-targeting && bun run test:init-app-conflict && bun run test:wait-log && bun run test:init-guardrails && bun run test:init-replay && bun run test:init-telemetry && bun run test:prompt-preferences && bun run test:esm-sdk && bun run test:mcp && bun run test:mcp-no-key-handshake && bun run test:auth-session && bun run test:version-detection && bun run test:platform-paths && bun run test:project-type-detection && bun run test:payload-split && bun run test:manifest-path-encoding && bun run test:macos-signing && bun run test:asc-key-protocol && bun run test:apple-api-import-helpers && bun run test:apple-api-verify-key && bun run test:bundle-id-detector && bun run test:apple-api-app-list && bun run test:app-verification && bun run test:pbxproj-parser && bun run test:ai-log-capture && bun run test:ai-analyze-flow && bun run test:cicd-failure-help && bun run test:ai-sse-parser && bun run test:ai-render-markdown && bun run test:ai-stream-markdown && bun run test:ai-onboarding-mode && bun run test:ai-fit && bun run test:platform-layout && bun run test:frame-fit && bun run test:onboarding-min-size && bun run test:min-size-gate && bun run test:shell-size-gate && bun run test:build-log-sanitize && bun run test:build-output-viewport && bun run test:diff-viewer-viewport && bun run test:build-complete-exit && bun run test:ai-analyze-stream && bun run test:support-mailto && bun run test:support-redact && bun run test:support-internal-log && bun run test:support-help-menu && bun run test:support-contact && bun run test:support-upload-prompt && bun run test:support-bundle-files && bun run test:self-update && bun run test:update-prompt && bun run test:apple-api-cert-create && bun run test:android-tail-engine && bun run test:android-tail-render && bun run test:android-tail-routing && bun run test:dev-gate-stripped && bun run test:frame-fit-ios-shared && bun run test:ios-confirm-app-id && bun run test:ios-create-new && bun run test:ios-e2e && bun run test:ios-flow-contract && bun run test:ios-import-discovery && bun run test:ios-import-export && bun run test:ios-import-pickers && bun run test:ios-import-recovery && bun run test:ios-recovery && bun run test:ios-resume && bun run test:ios-tail-handoff && bun run test:ios-tui-render && bun run test:p8-error && bun run test:ios-tui-routing && bun run test:ios-updater-sync-validation && bun run test:ios-verify-app && bun run test:ios-marketing-version && bun run test:android-version && bun run test:platform-flow-contract && bun run test:tail-engine-shared && bun run test:prescan && bun run test:android-reporting-api && bun run test:android-app-verification && bun run test:android-rename && bun run test:appflow-auth && bun run test:appflow-api-map && bun run test:appflow-validate && bun run test:appflow-flow && bun run test:appflow-gapfill && bun run test:appflow-engine && bun run test:appflow-tail && bun run test:appflow-fetch && bun run test:appflow-sa-decode && bun run test:app-permission-helper && bun run test:organization-set-api-host && bun run test:trial-warning && bun run test:plan-validation",
168
169
  "test:build-platform-selection": "bun test/test-build-platform-selection.mjs",
169
170
  "test:ai-log-capture": "bun test/test-ai-log-capture.mjs",
170
171
  "test:ai-analyze-flow": "bun test/test-ai-analyze-flow.mjs",
@@ -0,0 +1,12 @@
1
+ export interface SyncAndroidVersionOptions {
2
+ path?: string;
3
+ }
4
+ export interface SyncAndroidVersionResult {
5
+ projectDir: string;
6
+ packageJsonPath: string;
7
+ buildGradlePath: string;
8
+ packageVersion: string;
9
+ replacements: number;
10
+ changed: boolean;
11
+ }
12
+ export declare function syncAndroidVersion(options?: SyncAndroidVersionOptions): SyncAndroidVersionResult;
@@ -0,0 +1,27 @@
1
+ import type { SaveKeyOptions } from '../auth/session';
2
+ interface BrowserLoginOptions extends SaveKeyOptions {
3
+ local: boolean;
4
+ }
5
+ interface BrowserLoginEvent {
6
+ channel: 'user-login';
7
+ event: 'User CLI login';
8
+ tracking_version: 2;
9
+ org_id: string;
10
+ description: string;
11
+ notifyConsole: true;
12
+ notify: false;
13
+ }
14
+ interface BrowserLoginDependencies {
15
+ createSession: () => string;
16
+ openUrl: (url: string) => Promise<unknown>;
17
+ promptForKey: () => Promise<string | undefined>;
18
+ validateKey: (key: string, options: SaveKeyOptions) => Promise<{
19
+ userId: string;
20
+ }>;
21
+ listOrganizationIds: (key: string, options: BrowserLoginOptions) => Promise<string[]>;
22
+ sendEvent: (key: string, payload: BrowserLoginEvent) => Promise<void>;
23
+ writeUrl: (message: string) => void;
24
+ }
25
+ export declare function shouldStartInitBrowserLogin(resolvedKey: string | undefined, interactive: boolean): boolean;
26
+ export declare function loginInitInBrowser(options: BrowserLoginOptions, overrides?: Partial<BrowserLoginDependencies>): Promise<string>;
27
+ export {};
@@ -8,6 +8,7 @@ interface SuperOptions extends Options {
8
8
  local: boolean;
9
9
  mainFile?: string;
10
10
  packageJson?: string;
11
+ silent?: boolean;
11
12
  }
12
13
  interface InitTargetPaths {
13
14
  pathToPackageJson?: string;
@@ -7,6 +7,7 @@ interface ConfirmOptions {
7
7
  }
8
8
  interface TextOptions {
9
9
  message: string;
10
+ mask?: string;
10
11
  placeholder?: string;
11
12
  validate?: (value: string | undefined) => string | undefined;
12
13
  }
@@ -23,6 +23,7 @@ export interface ConfirmPrompt {
23
23
  }
24
24
  export interface TextPrompt {
25
25
  kind: 'text';
26
+ mask?: string;
26
27
  message: string;
27
28
  placeholder?: string;
28
29
  validate?: (value: string | undefined) => string | undefined;
@@ -107,7 +108,7 @@ export declare function pushInitLog(message: string, tone: InitLogTone): void;
107
108
  export declare function clearInitLogs(): void;
108
109
  export declare function setInitSpinner(message?: string): void;
109
110
  export declare function requestInitConfirm(message: string, initialValue?: boolean): Promise<boolean | symbol>;
110
- export declare function requestInitText(message: string, placeholder?: string, validate?: (value: string | undefined) => string | undefined): Promise<string | symbol>;
111
+ export declare function requestInitText(message: string, placeholder?: string, validate?: (value: string | undefined) => string | undefined, mask?: string): Promise<string | symbol>;
111
112
  export declare function requestInitSelect(message: string, options: SelectPromptOption[]): Promise<string | symbol>;
112
113
  export declare function setInitCodeDiff(diff?: InitCodeDiff): void;
113
114
  export declare function setInitEncryptionSummary(summary?: InitEncryptionSummary): void;
@@ -4,6 +4,19 @@ interface Options {
4
4
  supaHost?: string;
5
5
  supaAnon?: string;
6
6
  }
7
+ export type LoginMethod = 'browser' | 'paste';
8
+ type LoginMethodPrompt = (options: {
9
+ message: string;
10
+ options: Array<{
11
+ value: LoginMethod;
12
+ label: string;
13
+ }>;
14
+ }) => Promise<unknown>;
15
+ export declare const LOGIN_METHOD_OPTIONS: Array<{
16
+ value: LoginMethod;
17
+ label: string;
18
+ }>;
19
+ export declare function chooseLoginMethod(prompt?: LoginMethodPrompt): Promise<LoginMethod>;
7
20
  export declare function doLoginExists(): boolean;
8
21
  export declare function loginInternal(apikey: string | undefined, options: Options, silent?: boolean): Promise<string>;
9
22
  export declare function login(apikey: string, options: Options): Promise<void>;
@@ -86,6 +86,7 @@ export declare const buildRequestOptionsSchema: z.ZodObject<{
86
86
  skipBuildNumberBump: z.ZodOptional<z.ZodBoolean>;
87
87
  skipMarketingVersionBump: z.ZodOptional<z.ZodBoolean>;
88
88
  syncIosVersion: z.ZodOptional<z.ZodBoolean>;
89
+ syncAndroidVersion: z.ZodOptional<z.ZodBoolean>;
89
90
  playstoreUpload: z.ZodOptional<z.ZodBoolean>;
90
91
  submitToStoreReview: z.ZodOptional<z.ZodBoolean>;
91
92
  storeReleaseName: z.ZodOptional<z.ZodString>;