IGPAPI
    Preparing search index...

    Variable AccountRecoverySearchScreenConst

    AccountRecoverySearchScreen: ScreenDefinition<
        "AccountRecoverySearch",
        "screen",
        { aac: string; ticket?: string & Brand<"RecoveryActionTicket"> },
        {
            aac: string;
            searchScreenType: string;
            searchTicket: string & Brand<"SearchTicket">;
            textInputId: string;
            waterfallId: string;
        },
        {
            aac: string;
            searchScreenType: string;
            searchTicket: string & Brand<"SearchTicket">;
            textInputId: string;
            waterfallId: string;
        },
        | BloksHttpError
        | InvalidSkipOrdinalsError
        | AccountRecoveryBloksIssuedParamsMissingError
        | ScreenEnterNavigationError
        | AccountRecoveryTicketUnknownError,
        | MobileDevice
        | MobileApplication
        | BloksHttp
        | MobileNavigation
        | AccountRecoveryTickets,
        {
            findAccount: (
                self: ScreenHandle,
                state: {
                    aac: string;
                    searchScreenType: string;
                    searchTicket: string & Brand<"SearchTicket">;
                    textInputId: string;
                    waterfallId: string;
                },
            ) => ScreenEdgeBound<
                ScreenEdgeShape<
                    ScreenDefinition<
                        "AccountRecoveryAuthenticationConfirmation",
                        "screen",
                        { identifier: string; ticket: string & Brand<"SearchTicket"> },
                        { ticket: string & Brand<"CodeEntryTicket"> },
                        { ticket: string & Brand<"CodeEntryTicket"> },

                            | BloksHttpError
                            | InvalidSkipOrdinalsError
                            | AccountRecoveryBloksIssuedParamsMissingError
                            | RecoverySearchClientInputParamsOrderError
                            | ScreenEnterNavigationError
                            | AccountRecoveryTicketUnknownError,
                        | MobileDevice
                        | MobileApplication
                        | BloksHttp
                        | MobileNavigation
                        | AccountRecoveryTickets,
                        {
                            logInWithCode: (
                                self: ScreenHandle,
                                state: { ticket: string & Brand<(...)> },
                            ) => (
                                ...args: [code: string],
                            ) => Effect<
                                AccountRecoveryFirstScreen,
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...)
                                | (...),
                                (...) | (...) | (...) | (...) | (...) | (...) | (...) | (...),
                            >;
                        },
                        Record<never, never>,
                        never,
                    >,
                    readonly [string],
                >,
                (
                    ...args: readonly [string],
                ) => Effect<
                    AssembledHandle<
                        "AccountRecoveryAuthenticationConfirmation",
                        "screen",
                        { ticket: string & Brand<"CodeEntryTicket"> },
                        {
                            logInWithCode: (
                                self: ScreenHandle,
                                state: { ticket: (...) & (...) },
                            ) => (...args: [code: ...]) => Effect<(...), (...), (...)>;
                        },
                        Record<never, never>,
                        ScreenHandle,
                        "required",
                    >,

                        | BloksHttpError
                        | InvalidSkipOrdinalsError
                        | AccountRecoveryBloksIssuedParamsMissingError
                        | RecoverySearchClientInputParamsOrderError
                        | ScreenDataError
                        | ScreenEnterNavigationError
                        | ScreenEnterConcurrentError
                        | AccountRecoveryTicketUnknownError
                        | ScreenNotOnTopError
                        | ScreenEdgeInputError,
                >,
            >;
        },
        Record<never, never>,
        never,
    > = ...

    com.bloks.www.caa.ar.search, the "Find your account" search screen of the Android account recovery ("Forgot password" on the login home), as the 448 recovery recording shows it. It is reached by the login home's recoverPassword() edge, a button source; a pre-session screen never enters the navigation chain. Its enter is the recorded pair: the prefill (search.prefill.async) echoes the login home's issued action — read from its opaque ticket — and its answer pushes this screen in the CDS container; then the screen fetch reads the action it offers. The screen's navigate follows once the content is shown and is the one writer of the plain-screen transition.

    The screen shows the email/username field (text_input_id and its mode from the answer) and chains the login home's aac and waterfall id. Its action findAccount(identifier) is the edge to AccountRecoveryAuthenticationConfirmation: the typed identifier and the opaque ticket of this screen's issued search state become that screen's input, and the search.async submission — with the Android platform overlay androidRecoverySearchClientInputParams — belongs to that screen's enter.

    Account recovery search