@capgo/cli
Version:
A CLI to upload to capgo servers
56 lines (55 loc) • 2.85 kB
TypeScript
import type { FC } from 'react';
import type { OnboardingProgress, OnboardingResult } from '../types.js';
import type { OnboardingBeforeExit } from './exit.js';
interface AppProps {
/**
* Capgo lookup key (progress files, saved credentials, Capgo SaaS build
* API). Resolved by `getAppId()`, which prefers
* `config.plugins.CapacitorUpdater.appId` over `config.appId` so dev-tunnel
* sandboxes can override the Capgo-side identifier without renaming the
* iOS bundle. Do NOT use for Apple-side operations — see
* `iosBundleIdInitial`.
*/
appId: string;
/**
* Default value for the iOS bundle ID used for Apple-side operations
* (cert lookup, profile filtering, ensureBundleId, createProfile, and the
* provisioning_map key). Sourced from `config.appId` directly — what
* `cap sync` writes into project.pbxproj's PRODUCT_BUNDLE_IDENTIFIER.
* When pbxproj's Release id and config.appId disagree, the wizard adopts the
* authoritative Release id (verify-app confirms it remotely). command.ts
* falls back to `appId` if config.appId is missing, so this prop is always a
* valid string.
*/
iosBundleIdInitial: string;
initialProgress: OnboardingProgress | null;
/** Resolved iOS directory from capacitor.config (defaults to 'ios') */
iosDir: string;
/**
* Whether guided ASC-key creation may be offered: macOS + the signed helper
* installed + its Developer-ID signature/team verified (computed once in
* command.ts via probeGuidedHelper). Gates every "create one for me" / "do
* you already have a .p8?" branch — when false (not installed, wrong
* signature, wrong team, or non-macOS) the user goes straight to the manual
* .p8 instructions, exactly as before the helper existed and as on Linux.
*/
guidedHelperUsable: boolean;
/** Optional Capgo API key passed via -a/--apikey flag; takes precedence over saved key */
apikey?: string;
supaHost?: string;
/** Correlation id for this onboarding run; emitted as `journey_id` on every analytics event. */
journeyId: string;
/** Reports the current step to the shell on every transition, so the caller can
* record where the user dropped off for the quit event. */
onStep?: (step: string) => void;
/**
* Reports the wizard outcome to the shell when it reaches build-complete, so
* the caller prints an accurate post-exit message + durable summary instead of
* always claiming success. Never fires on cancel/missing-platform exits.
*/
onResult?: (result: OnboardingResult) => void;
/** Awaited immediately before Ink exits so replay can capture the alt-screen frame. */
onBeforeExit?: OnboardingBeforeExit;
}
declare const OnboardingApp: FC<AppProps>;
export default OnboardingApp;