> ## Documentation Index
> Fetch the complete documentation index at: https://translations.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# MfaEmailChallenge

> Décrit toutes les propriétés et méthodes disponibles pour personnaliser l’écran `mfa-email-challenge` dans Universal Login.

La classe MfaEmailChallenge implémente la fonctionnalité de l’écran `mfa-email-challenge`. Cet écran s’affiche lorsqu’un utilisateur doit vérifier son courriel dans le cadre de la MFA.

<Frame>
  <img style={{maxHeight:"400px"}} src="https://mintcdn.com/translations/Dcx0M11uuptU53TX/docs/images/cdy7uua7fh8z/2MOpok82dGPfHvpb8hy1Yc/fda2d95621af85e0ea6ff73d51d815ad/Screenshot_2025-02-20_at_13.11.50.png?fit=max&auto=format&n=Dcx0M11uuptU53TX&q=85&s=ff7cd85e90d5a2a672e6eb0e3f3e7506" alt="ACUL MFA Vérification du courriel" width="448" height="628" data-path="docs/images/cdy7uua7fh8z/2MOpok82dGPfHvpb8hy1Yc/fda2d95621af85e0ea6ff73d51d815ad/Screenshot_2025-02-20_at_13.11.50.png" />
</Frame>

<div id="constructors">
  ## Constructeurs
</div>

Créez une instance du gestionnaire d’écran du défi MFA par courriel :

```typescript Example theme={null}
import MfaEmailChallenge from '@auth0/auth0-acul-js/mfa-email-challenge';

const mfaEmailChallenge = new MfaEmailChallenge();
await mfaEmailChallenge.continue({
  code: '123456',
  rememberDevice: true
});
```

<div id="properties">
  ## Propriétés
</div>

<ParamField body="branding" type={<span><a href="/fr-CA/docs/libraries/acul/js-sdk/Screens/interfaces/BrandingMembers">BrandingMembers</a></span>}>
  Fournit la configuration liée à l’image de marque, comme le thème et les paramètres.
</ParamField>

<ParamField body="client" type={<span><a href="/fr-CA/docs/libraries/acul/js-sdk/Screens/interfaces/ClientMembers">ClientMembers</a></span>}>
  Fournit la configuration de l’application, comme `id`, `name` et `logoUrl`, pour l’écran `mfa-email-challenge`.
</ParamField>

<ParamField body="organization" type={<span><a href="/fr-CA/docs/libraries/acul/js-sdk/Screens/interfaces/OrganizationMembers">OrganizationMembers</a></span>}>
  Fournit des renseignements sur l’Organisation de l’utilisateur, comme `id` et `name`.
</ParamField>

<ParamField body="prompt" type={<span><a href="/fr-CA/docs/libraries/acul/js-sdk/Screens/interfaces/PromptMembers">PromptMembers</a></span>}>
  Contient des données sur l’invite en cours dans le flux d’authentification.
</ParamField>

<ParamField body="screen" type={<span><a href="/fr-CA/docs/libraries/acul/js-sdk/Screens/interfaces/ScreenMembersOnMfaEmailChallenge">ScreenMembersOnMfaEmailChallenge</a></span>}>
  Contient des détails propres à l’écran `mfa-email-challenge`, y compris sa configuration et son contexte.
</ParamField>

<ParamField body="tenant" type={<span><a href="/fr-CA/docs/libraries/acul/js-sdk/Screens/interfaces/TenantMembers">TenantMembers</a></span>}>
  Contient des données liées au locataire, comme `id` et les métadonnées associées.
</ParamField>

<ParamField body="transaction" type={<span><a href="/fr-CA/docs/libraries/acul/js-sdk/Screens/interfaces/TransactionMembers">TransactionMembers</a></span>}>
  Fournit des données propres à la transaction pour l’écran `mfa-email-challenge`, comme les identifiants actifs et les états du flux.
</ParamField>

<ParamField body="untrustedData" type={<span><a href="/fr-CA/docs/libraries/acul/js-sdk/Screens/interfaces/UntrustedDataMembersOnMfaEmailChallenge">UntrustedDataMembersOnMfaEmailChallenge</a></span>}>
  Gère les données non fiables transmises au SDK, comme les saisies de l’utilisateur lors du défi MFA par courriel.
</ParamField>

<ParamField body="user" type={<span><a href="/fr-CA/docs/libraries/acul/js-sdk/Screens/interfaces/UserMembers">UserMembers</a></span>}>
  Détails sur l’utilisateur actif, y compris `username`, `email` et `roles`.
</ParamField>

<div id="methods">
  ## Méthodes
</div>

<ParamField body="changeLanguage" type="Promise<void>">
  Cette méthode modifie la langue d’affichage de la page Universal Login.

  ```typescript Example theme={null}
  import MfaEmailChallenge from '@auth0/auth0-acul-js/mfa-email-challenge';
  const mfaEmailChallenge = new MfaEmailChallenge();
  mfaEmailChallenge.changeLanguage({
    language: 'fr',
  });
  ```

  **Paramètres de la méthode**

  <Expandable title="Paramètres">
    <ParamField body="options">
      [LanguageChangeOptions](/fr-CA/docs/libraries/acul/js-sdk/Screens/interfaces/LanguageChangeOptions).
    </ParamField>

    <ParamField body="language" type="string" required>
      Le code de langue de la langue souhaitée (par exemple, `'en'`, `'fr'`, `'es'`).
    </ParamField>

    <ParamField body="persist?" type="&#x22;session&#x22;">
      Lorsqu’elle est définie sur `'session'`, la langue sélectionnée est conservée pendant toute la durée de la session.
    </ParamField>
  </Expandable>
</ParamField>

<ParamField body="continue" type="Promise<void>">
  Cette méthode poursuit le défi par courriel à l’aide du code fourni.

  ```typescript Example theme={null}
  import MfaEmailChallenge from '@auth0/auth0-acul-js/mfa-email-challenge';

  const mfaEmailChallenge = new MfaEmailChallenge();
  await mfaEmailChallenge.continue({
    code: '123456',
    rememberDevice: true
  });
  ```

  **Paramètres de la méthode**

  <Expandable title="Paramètres">
    <ParamField body="options">
      [ContinuePayloadOptions](/fr-CA/docs/libraries/acul/js-sdk/Screens/interfaces/ContinuePayloadOptions).
    </ParamField>

    <ParamField body="code" type="string" required>
      Le code saisi par l’utilisateur.
    </ParamField>

    <ParamField body="rememberDevice?" type="boolean">
      Indique s’il faut mémoriser l’appareil.
    </ParamField>
  </Expandable>
</ParamField>

<ParamField body="getErrors" type={<span><a href="/fr-CA/docs/libraries/acul/js-sdk/Screens/interfaces/Error">Error</a>[]</span>}>
  Cette méthode récupère le tableau des erreurs de transaction à partir du contexte, ou un tableau vide s’il n’y en a aucune.
</ParamField>

<ParamField body="pickEmail" type="Promise<void>">
  Cette méthode soumet l’action permettant de sélectionner une autre configuration de courriel, si elle est disponible.

  ```typescript Example theme={null}
  import MfaEmailChallenge from '@auth0/auth0-acul-js/mfa-email-challenge';

  const mfaEmailChallenge = new MfaEmailChallenge();
  await mfaEmailChallenge.pickEmail();
  ```
</ParamField>

<ParamField body="resendCode" type="Promise<void>">
  Cette méthode renvoie le code par courriel.

  ```typescript Example theme={null}
  import MfaEmailChallenge from '@auth0/auth0-acul-js/mfa-email-challenge';
  const mfaEmailChallenge = new MfaEmailChallenge();
  await mfaEmailChallenge.resendCode();
  ```
</ParamField>

<ParamField body="resendManager" type={<span><a href="/fr-CA/docs/libraries/acul/js-sdk/Screens/interfaces/ResendControl">ResendControl</a></span>}>
  Cette méthode fournit la fonctionnalité de renvoi avec gestion du délai d’attente pour cet écran.

  ```typescript Example theme={null}
  import MfaEmailChallenge from '@auth0/auth0-acul-js/mfa-email-challenge';

  const mfaEmailChallenge = new MfaEmailChallenge();
  const { startResend } = mfaEmailChallenge.resendManager({
    timeoutSeconds: 15,
    onStatusChange: (remainingSeconds, isDisabled) => {
      console.log(`Resend available in ${remainingSeconds}s, disabled: ${isDisabled}`);
    },
    onTimeout: () => {
      console.log('Resend is now available');
    }
  });

  // Appelez startResend lorsque l’utilisateur clique sur le bouton de renvoi
  startResend();
  ```

  **Paramètres de la méthode**

  <Expandable title="Paramètres">
    <ParamField body="options">
      [StartResendOptions](/fr-CA/docs/libraries/acul/js-sdk/Screens/interfaces/StartResendOptions).
    </ParamField>

    <ParamField body="timeoutSeconds?" type="number">
      La durée d’attente, en secondes, avant que l’utilisateur puisse renvoyer le code.
    </ParamField>

    <ParamField body="onStatusChange?" type={<span><a href="/fr-CA/docs/libraries/acul/js-sdk/Screens/type-aliases/OnStatusChangeCallback">OnStatusChangeCallback</a></span>}>
      Fonction de rappel invoquée chaque fois que l’état du renvoi change; elle retourne le nombre de secondes restantes et indique si la fonctionnalité de renvoi est actuellement désactivée.
    </ParamField>

    <ParamField body="onTimeout?" type="() => void">
      Fonction de rappel invoquée lorsque le délai d’attente expire et que le renvoi redevient disponible.
    </ParamField>
  </Expandable>
</ParamField>

<ParamField body="tryAnotherMethod" type="Promise<void>">
  Cette méthode permet à l’utilisateur d’essayer une autre méthode de MFA.

  ```typescript Example theme={null}
  import MfaEmailChallenge from '@auth0/auth0-acul-js/mfa-email-challenge';

  const mfaEmailChallenge = new MfaEmailChallenge();
  await mfaEmailChallenge.tryAnotherMethod();
  ```
</ParamField>
