@auth0/auth0-acul-js - v1.0.0
    Preparing search index...

    Class ResetPasswordMfaWebAuthnPlatformChallenge

    ResetPasswordMfaWebAuthnPlatformChallenge

    Hierarchy

    • BaseContext
      • ResetPasswordMfaWebAuthnPlatformChallenge

    Implements

    Index

    Constructors

    Properties

    screenIdentifier: string = ScreenIds.RESET_PASSWORD_MFA_WEBAUTHN_PLATFORM_CHALLENGE

    static

    Methods - Language

    • Utility Feature

      Changes the language/locale for the current authentication flow.

      This method triggers a language change by submitting the new locale preference to the server with the 'change-language' action. The language change will cause the current screen to re-render with the new locale.

      Parameters

      • options: Screens.LanguageChangeOptions

        Language change options including the target language code

        Options for changing the language/locale during the authentication flow

        • [key: string]: string | number | boolean | undefined

          Additional custom fields to be submitted along with the language change. Custom fields should be prefixed with 'ulp-'.

        • language: string

          Short language name (locale code) to be set (e.g., 'en', 'fr', 'es').

        • Optionalpersist?: "session"

          Defines persistence scope for the language preference. Currently only 'session' is supported.

          'session'
          

      Returns Promise<void>

      A promise that resolves when the form submission is complete

      import LoginId from "@auth0/auth0-acul-js/login-id";

      const loginManager = new LoginId();

      // Change language to French
      await loginManager.changeLanguage({
      language: 'fr',
      persist: 'session'
      });
      import LoginPassword from "@auth0/auth0-acul-js/login-password";

      const loginPasswordManager = new LoginPassword();

      // Change language to Spanish with additional custom data
      await loginPasswordManager.changeLanguage({
      language: 'es',
      persist: 'session',
      'ulp-custom-field': 'custom-value'
      });
      • This method is available on all screen instances that extend BaseContext
      • The language must be one of the enabled locales configured in your Auth0 tenant
      • The screen will automatically re-render with the new language after submission
      • Custom fields can be included and will be accessible in the Post Login Trigger

    Methods - Other

    • Initiates the WebAuthn platform authenticator challenge by calling navigator.credentials.get() using the challenge options provided in screen.publicKey. If successful, it submits the resulting credential assertion to Auth0 with action: "default".

      Parameters

      Returns Promise<void>

      A promise that resolves when the verification attempt is submitted. A successful operation typically results in a redirect.

      Throws an error if screen.publicKey is missing, if navigator.credentials.get() fails (e.g., user cancellation NotAllowedError), or if the form submission to Auth0 fails. If navigator.credentials.get() fails with a DOMException, it's recommended to catch that error and call reportBrowserError.

      // Assuming 'sdk' is an instance of ResetPasswordMfaWebAuthnPlatformChallenge
      try {
      await sdk.continueWithPasskey({
      rememberDevice: true // if user checked the box and sdk.screen.data?.showRememberDevice is true
      });
      // On success, Auth0 handles redirection.
      } catch (error) {
      console.error("Platform authenticator verification failed:", error);
      // If it's a WebAuthn API error (DOMException), report it
      if (error instanceof DOMException && error.name && error.message) { // DOMException check
      await sdk.reportBrowserError({ error: { name: error.name, message: error.message } });
      }
      // Check sdk.transaction.errors for server-side validation messages if the page reloads.
      }
    • Reports a browser-side error that occurred during the navigator.credentials.get() API call. This is used to inform Auth0 about issues like user cancellation (NotAllowedError), timeout, or other WebAuthn API specific errors. It submits the error details with action: "showError::{errorDetailsJsonString}".

      Parameters

      Returns Promise<void>

      A promise that resolves when the error report is successfully submitted.

      If the form submission fails (e.g., network error, invalid state).

      // In your UI component, in the catch block of navigator.credentials.get():
      // } catch (webAuthnError) {
      // if (webAuthnError instanceof DOMException) {
      // await sdk.reportBrowserError({
      // error: { name: webAuthnError.name, message: webAuthnError.message }
      // });
      // } else {
      // // Handle other types of errors
      // }
      // }