> ## 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.

# MfaPushEnrollmentQr

> Universal Loginの`mfa-push-enrollment-qr`画面をカスタマイズするために使用できる、すべてのプロパティとメソッドについて説明します。

MfaPushEnrollmentQr クラスは、`mfa-push-enrollment-qr`画面の機能を実装したクラスです。

<Frame>
  <img style={{maxHeight:"400px"}} src="https://mintcdn.com/translations/BYo6dwnOKaLLmP5T/docs/images/ja-jp/cdy7uua7fh8z/13d9Riyyn389IFhaV2NxAC/792409a4ac81fdd75ead60451742ccde/Screenshot_2025-02-20_at_22.44.09.png?fit=max&auto=format&n=BYo6dwnOKaLLmP5T&q=85&s=6b5b6fb65481ed982b10882d106e4e1f" alt="ACUL MFAプッシュ登録 QR" width="438" height="610" data-path="docs/images/ja-jp/cdy7uua7fh8z/13d9Riyyn389IFhaV2NxAC/792409a4ac81fdd75ead60451742ccde/Screenshot_2025-02-20_at_22.44.09.png" />
</Frame>

<div id="constructors">
  ## コンストラクター
</div>

MFAプッシュ登録QR画面マネージャーのインスタンスを作成します：

```typescript Example theme={null}
import MfaPushEnrollmentQr from '@auth0/auth0-acul-js/mfa-push-enrollment-qr';

const mfaPushEnrollmentQr = new MfaPushEnrollmentQr();
await mfaPushEnrollmentQr.pickAuthenticator();
```

<div id="properties">
  ## プロパティ
</div>

<ParamField body="branding" type={<span><a href="/docs/ja-jp/libraries/acul/js-sdk/Screens/interfaces/BrandingMembers">BrandingMembers</a></span>}>
  ブランディングテーマや設定など、ブランディングに関する設定を提供します。
</ParamField>

<ParamField body="client" type={<span><a href="/docs/ja-jp/libraries/acul/js-sdk/Screens/interfaces/ClientMembers">ClientMembers</a></span>}>
  `mfa-push-enrollment-qr` 画面向けに、`id`、`name`、`logoUrl` などのクライアント関連設定を提供します。
</ParamField>

<ParamField body="organization" type={<span><a href="/docs/ja-jp/libraries/acul/js-sdk/Screens/interfaces/OrganizationMembers">OrganizationMembers</a></span>}>
  ユーザーの組織に関する情報 (`id` や `name` など) を提供します。
</ParamField>

<ParamField body="prompt" type={<span><a href="/docs/ja-jp/libraries/acul/js-sdk/Screens/interfaces/PromptMembers">PromptMembers</a></span>}>
  認証フロー内の現在の prompt に関するデータを含みます。
</ParamField>

<ParamField body="screen" type={<span><a href="/docs/ja-jp/libraries/acul/js-sdk/Screens/interfaces/ScreenMembersOnMfaPushEnrollmentQr">ScreenMembersOnMfaPushEnrollmentQr</a></span>}>
  設定やコンテキストを含む、`mfa-push-enrollment-qr` 画面固有の詳細を含みます。
</ParamField>

<ParamField body="tenant" type={<span><a href="/docs/ja-jp/libraries/acul/js-sdk/Screens/interfaces/TenantMembers">TenantMembers</a></span>}>
  `id` や関連するメタデータなど、テナントに関するデータを含みます。
</ParamField>

<ParamField body="transaction" type={<span><a href="/docs/ja-jp/libraries/acul/js-sdk/Screens/interfaces/TransactionMembers">TransactionMembers</a></span>}>
  アクティブな識別子やフローの状態など、`mfa-push-enrollment-qr` 画面におけるトランザクション固有のデータを提供します。
</ParamField>

<ParamField body="untrustedData" type={<span><a href="/docs/ja-jp/libraries/acul/js-sdk/Screens/interfaces/UntrustedDataMembers">UntrustedDataMembers</a></span>}>
  MFAプッシュ登録中のユーザー入力など、SDK に渡される信頼できないデータを扱います。
</ParamField>

<ParamField body="user" type={<span><a href="/docs/ja-jp/libraries/acul/js-sdk/Screens/interfaces/UserMembers">UserMembers</a></span>}>
  `username`、`email`、`roles` など、現在のユーザーの詳細です。
</ParamField>

<div id="methods">
  ## メソッド
</div>

<ParamField body="changeLanguage" type="Promise<void>">
  このメソッドは、Universal Login ページの表示言語を変更します。

  ```typescript Example theme={null}
  import MfaPushEnrollmentQr from '@auth0/auth0-acul-js/mfa-push-enrollment-qr';
  const mfaPushEnrollmentQr = new MfaPushEnrollmentQr();
  mfaPushEnrollmentQr.changeLanguage({
    language: 'fr',
  });
  ```

  **メソッドのパラメーター**

  <Expandable title="パラメーター">
    <ParamField body="options">
      [LanguageChangeOptions](/docs/ja-jp/libraries/acul/js-sdk/Screens/interfaces/LanguageChangeOptions)。
    </ParamField>

    <ParamField body="language" type="string" required>
      使用する言語のロケールコードです (例: `'en'`、`'fr'`、`'es'`) 。
    </ParamField>

    <ParamField body="persist?" type="&#x22;session&#x22;">
      `'session'` に設定すると、選択した言語がセッション中は保持されます。
    </ParamField>
  </Expandable>
</ParamField>

<ParamField body="continue" type="Promise<void>">
  このメソッドは、プッシュ通知の登録処理を続行します。

  ```typescript Example theme={null}
  import MfaPushEnrollmentQr from '@auth0/auth0-acul-js/mfa-push-enrollment-qr';

  const mfaPushEnrollmentQr = new MfaPushEnrollmentQr();
  await mfaPushEnrollmentQr.continue();
  ```

  **メソッドのパラメーター**

  <Expandable title="パラメーター">
    <ParamField body="options">
      [MfaPushEnrollmentQrWithRememberOptions](/docs/ja-jp/libraries/acul/js-sdk/Screens/interfaces/MfaPushEnrollmentQrWithRememberOptions)。
    </ParamField>

    <ParamField body="rememberDevice?" type="boolean">
      デバイスを記憶するかどうかを示します。
    </ParamField>
  </Expandable>
</ParamField>

<ParamField body="getErrors" type={<span><a href="/docs/ja-jp/libraries/acul/js-sdk/Screens/interfaces/Error">Error</a>[]</span>}>
  このメソッドは、コンテキストから トランザクション エラーの配列を取得します。エラーがない場合は空の配列を返します。
</ParamField>

<ParamField body="pickAuthenticator" type="Promise<void>">
  このメソッドは、認証器選択画面に移動します。

  ```typescript Example theme={null}
  import MfaPushEnrollmentQr from '@auth0/auth0-acul-js/mfa-push-enrollment-qr';

  const mfaPushEnrollmentQr = new MfaPushEnrollmentQr();
  await mfaPushEnrollmentQr.pickAuthenticator();
  ```
</ParamField>

<ParamField body="pollingManager" type={<span><a href="/docs/ja-jp/libraries/acul/js-sdk/Screens/interfaces/MfaPushPollingControl">MfaPushPollingControl</a></span>}>
  このメソッドは、MFA プッシュ登録のポーリングを開始し、管理します。

  登録が承認されるかエラーが発生するまで、指定した間隔で MFA プッシュ登録エンドポイントを繰り返し確認するポーリングセッションを作成します。承認条件が満たされると、指定された [onCompleted](/docs/ja-jp/libraries/acul/js-sdk/Screens/type-aliases/MfaPollingOptions#oncompleted) コールバックが呼び出され、ポーリングは自動的に停止します。

  返される [MfaPushPollingControl](/docs/ja-jp/libraries/acul/js-sdk/Screens/interfaces/MfaPushPollingControl) を使用すると、ポーリング処理の開始、停止、status の確認をいつでも行えます。

  以下を公開する [MfaPushPollingControl](/docs/ja-jp/libraries/acul/js-sdk/Screens/interfaces/MfaPushPollingControl) インスタンスを返します:

  * `startPolling()` — ポーリングを開始または再開します。
  * `stopPolling()` — ポーリングを直ちに停止します。
  * `isRunning()` — ポーリングが現在アクティブかどうかを示します。

  ```typescript Example theme={null}
  import MfaPushEnrollmentQr from '@auth0/auth0-acul-js/mfa-push-enrollment-qr';

  const mfaPushEnrollmentQr = new MfaPushEnrollmentQr();

  // プッシュ登録が承認されるまで 5 秒ごとにポーリングを開始
  const control = mfaPushEnrollmentQr.pollingManager({
    intervalMs: 5000,
    onCompleted: () => mfaPushEnrollmentQr.continue(),
    onError: (error) => console.error('ポーリングエラー:', error),
  });

  // 後で必要に応じてポーリングを停止
  control.stopPolling();
  ```

  **備考**

  * HTTP 429 (rate limit) 応答は内部で処理されます。ポーリングは再試行の前に、rate limit がリセットされるまで自動的に待機します。
  * `startPolling()` は複数回呼び出しても安全です。すでに実行中の場合は効果がありません。

  **メソッドパラメータ**

  <Expandable title="パラメータ">
    <ParamField body="options">
      [MfaPollingOptions](/docs/ja-jp/libraries/acul/js-sdk/Screens/type-aliases/MfaPollingOptions)。
    </ParamField>

    <ParamField body="intervalMs?" type="number">
      連続するポーリングリクエストの間隔をミリ秒単位で指定する省略可能な値です。省略した場合は、SDK の内部デフォルト間隔が使用されます (通常は 5000 ms) 。
    </ParamField>

    <ParamField body="onCompleted()?" type="() => void">
      MFA プッシュ登録が正常に承認されてポーリングが完了したときに実行される、省略可能なコールバックです。呼び出されるのは 1 回だけで、その後ポーリングは自動的に停止します。
    </ParamField>

    <ParamField body="onError()?" type="(error) => void">
      ポーリング中にエラーが発生した場合に呼び出される省略可能なコールバックです。`status` (HTTP ステータスコード) と `responseText` (生のレスポンス本文) を含む `ULError` オブジェクトを受け取ります。
    </ParamField>
  </Expandable>
</ParamField>
