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

# Registro

> Describe todas las propiedades y los métodos disponibles para personalizar la pantalla `signup` de Universal Login.

La clase Signup implementa la funcionalidad de la pantalla `signup`. Esta pantalla recopila el identificador y la contraseña del usuario. Según la configuración de tu inquilino, este identificador puede ser un correo electrónico, un número de teléfono o un nombre de usuario.

<Frame>
  <img style={{maxHeight:"400px"}} src="https://mintcdn.com/translations/MV7tE-x71x8RWRES/docs/images/cdy7uua7fh8z/5IrmDuvj5xma8DmkIMJ7ol/42363cde670f86561666c9e930f76883/Screenshot_2025-02-05_at_15.43.23.png?fit=max&auto=format&n=MV7tE-x71x8RWRES&q=85&s=cdad5eb11eeaf2a973012a2ee746743b" alt="Imagen de la pantalla de registro de ACUL" width="374" height="736" data-path="docs/images/cdy7uua7fh8z/5IrmDuvj5xma8DmkIMJ7ol/42363cde670f86561666c9e930f76883/Screenshot_2025-02-05_at_15.43.23.png" />
</Frame>

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

Cree una instancia del administrador de la pantalla de registro:

```typescript Example theme={null}
import Signup from '@auth0/auth0-acul-js/signup';
const signupManager = new Signup();
signupManager.signup({
  email: 'test@example.com',
  password: 'P@$wOrd123!',
});
```

<div id="properties">
  ## Propiedades
</div>

<ParamField body="branding" type={<span><a href="/es/docs/libraries/acul/js-sdk/Screens/interfaces/BrandingMembers">BrandingMembers</a></span>}>
  Proporciona configuraciones relacionadas con la marca, como el tema y sus ajustes.
</ParamField>

<ParamField body="client" type={<span><a href="/es/docs/libraries/acul/js-sdk/Screens/interfaces/ClientMembers">ClientMembers</a></span>}>
  Proporciona configuraciones relacionadas con el cliente, como `id`, `name` y `logoUrl`, para la pantalla `signup`.
</ParamField>

<ParamField body="organization" type={<span><a href="/es/docs/libraries/acul/js-sdk/Screens/interfaces/OrganizationMembers">OrganizationMembers</a></span>}>
  Proporciona información sobre la Organización del usuario, como `id` y `name`.
</ParamField>

<ParamField body="prompt" type={<span><a href="/es/docs/libraries/acul/js-sdk/Screens/interfaces/PromptMembers">PromptMembers</a></span>}>
  Contiene datos sobre la pantalla actual del flujo de autenticación.
</ParamField>

<ParamField body="screen" type={<span><a href="/es/docs/libraries/acul/js-sdk/Screens/interfaces/ScreenMembersOnSignup">ScreenMembersOnSignup</a></span>}>
  Contiene detalles específicos de la pantalla `signup`, incluida su configuración y contexto.
</ParamField>

<ParamField body="tenant" type={<span><a href="/es/docs/libraries/acul/js-sdk/Screens/interfaces/TenantMembers">TenantMembers</a></span>}>
  Contiene datos relacionados con el inquilino, como `id` y sus metadatos asociados.
</ParamField>

<ParamField body="transaction" type={<span><a href="/es/docs/libraries/acul/js-sdk/Screens/interfaces/TransactionMembersOnSignup">TransactionMembersOnSignup</a></span>}>
  Proporciona datos específicos de la transacción, como identificadores activos y estados del flujo.
</ParamField>

<ParamField body="untrustedData" type={<span><a href="/es/docs/libraries/acul/js-sdk/Screens/interfaces/UntrustedDataMembers">UntrustedDataMembers</a></span>}>
  Gestiona datos no confiables que se pasan al SDK, como la entrada del usuario durante el inicio de sesión.
</ParamField>

<ParamField body="user" type={<span><a href="/es/docs/libraries/acul/js-sdk/Screens/interfaces/UserMembers">UserMembers</a></span>}>
  Detalles del usuario activo, incluidos `username`, `email` y `roles`.
</ParamField>

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

<ParamField body="changeLanguage" type="Promise<void>">
  Este método cambia el idioma de visualización de la página de Universal Login.

  ```typescript Example theme={null}
  import Signup from '@auth0/auth0-acul-js/signup';
  const signupManager = new Signup();
  signupManager.changeLanguage({
    language: 'fr',
  });
  ```

  **Parámetros del método**

  <Expandable title="Parámetros">
    <ParamField body="options">
      [LanguageChangeOptions](/es/docs/libraries/acul/js-sdk/Screens/interfaces/LanguageChangeOptions).
    </ParamField>

    <ParamField body="language" type="string" required>
      El código de configuración regional del idioma deseado (por ejemplo, `'en'`, `'fr'`, `'es'`).
    </ParamField>

    <ParamField body="persist?" type="&#x22;session&#x22;">
      Cuando se establece en `'session'`, el idioma seleccionado se mantiene durante la sesión.
    </ParamField>

    <ParamField body="[`key`: `string`]" type="&#x22;string&#x22; | &#x22;number&#x22; | &#x22;boolean&#x22; | &#x22;undefined&#x22;">
      Campos personalizados adicionales con el prefijo `ulp-` (por ejemplo, `'ulp-custom-field'`).
    </ParamField>
  </Expandable>
</ParamField>

<ParamField body="federatedSignup" type="Promise<void>">
  Este método gestiona el envío del formulario de registro social. Es similar al método [signup](#signup), pero se utiliza para registros sociales.

  ```typescript Example theme={null}
  import Signup from '@auth0/auth0-acul-js/signup';
  const signupManager = new Signup();
  signupManager.federatedSignup({
    connection: 'google-oauth2',
  });
  ```

  **Parámetros del método**

  <Expandable title="Parámetros">
    <ParamField body="options">
      [FederatedSignupPayloadOptions](/es/docs/libraries/acul/js-sdk/Screens/interfaces/FederatedSignupPayloadOptions).
    </ParamField>

    <ParamField body="connection" type="string" required>
      El nombre de la conexión social que se debe usar.
    </ParamField>
  </Expandable>
</ParamField>

<ParamField body="getErrors" type={<span><a href="/es/docs/libraries/acul/js-sdk/Screens/interfaces/Error">Error</a>[]</span>}>
  Este método recupera la lista de errores de la transacción desde el contexto, o una lista vacía si no hay ninguno. Devuelve una lista de objetos de error del contexto de la transacción.
</ParamField>

<ParamField body="getSignupIdentifiers" type={<span><a href="/es/docs/libraries/acul/js-sdk/Screens/interfaces/Identifier">Identifier</a>[] | null</span>}>
  Este método devuelve la lista de identificadores habilitados para el formulario de registro y marca cada uno como obligatorio u opcional según la configuración de la transacción. Devuelve una lista de objetos identificadores (por ejemplo, correo electrónico, teléfono, username).

  ```typescript Example theme={null}
  import Signup from '@auth0/auth0-acul-js/signup';
  const signupManager = new Signup();
  const identifiers = signupManager.getSignupIdentifiers();
  // [{ type: 'email', required: true }, { type: 'username', required: false }]
  ```
</ParamField>

<ParamField body="pickCountryCode" type="Promise<void>">
  Este método redirige al usuario a la lista de selección de códigos de país, donde puede actualizar el prefijo del país de su número de teléfono.

  ```typescript Example theme={null}
  import Signup from '@auth0/auth0-acul-js/signup';
  const signupManager = new Signup();
  signupManager.pickCountryCode();
  ```
</ParamField>

<ParamField body="signup" type="Promise<void>">
  Este método gestiona el envío del formulario de registro.

  ```typescript Example theme={null}
  import Signup from '@auth0/auth0-acul-js/signup';
  const signupManager = new Signup();
  signupManager.signup({
    email: 'test@example.com',
    password: 'P@$wOrd123!',
  });
  ```

  **Parámetros del método**

  <Expandable title="Parámetros">
    <ParamField body="options">
      [SignupPayloadOptions](/es/docs/libraries/acul/js-sdk/Screens/interfaces/SignupPayloadOptions).
    </ParamField>

    <ParamField body="email?" type="string">
      El correo electrónico del usuario.
    </ParamField>

    <ParamField body="username?" type="string">
      El identificador del usuario.
    </ParamField>

    <ParamField body="phoneNumber?" type="string">
      El número de teléfono del usuario.
    </ParamField>

    <ParamField body="password?" type="string">
      La contraseña del usuario.
    </ParamField>

    <ParamField body="captcha?" type="string">
      El code o la respuesta del captcha del proveedor de CAPTCHA. Esta propiedad es obligatoria si su inquilino de Auth0 tiene [Bot Detection](/es/docs/secure/attack-protection/bot-detection) habilitado.
    </ParamField>

    <ParamField body="[`key`: `string`]" type="&#x22;string&#x22; | &#x22;number&#x22; | &#x22;boolean&#x22; | &#x22;undefined&#x22;">
      Campos personalizados adicionales con el prefijo `ulp-` (por ejemplo, `'ulp-custom-field'`).
    </ParamField>
  </Expandable>
</ParamField>

<ParamField body="validatePassword" type={<span><a href="/es/docs/libraries/acul/js-sdk/Screens/interfaces/PasswordValidationResult">PasswordValidationResult</a></span>}>
  Este método devuelve un objeto de tipo [PasswordValidationResult](/es/docs/libraries/acul/js-sdk/Screens/interfaces/PasswordValidationResult) que indica si la contraseña es válida y por qué.

  ```typescript Example theme={null}
  import Signup from '@auth0/auth0-acul-js/signup';
  const signupManager = new Signup();
  const result = signupManager.validatePassword('P@$wOrd123!');
  ```

  **Parámetros del método**

  <Expandable title="Parámetros">
    <ParamField body="password" type="string" required>
      La contraseña del usuario.
    </ParamField>
  </Expandable>
</ParamField>

<ParamField body="validateUsername" type={<span><a href="/es/docs/libraries/acul/js-sdk/Screens/interfaces/UsernameValidationResult">UsernameValidationResult</a></span>}>
  Este método valida un nombre de usuario determinado con la política actual de nombres de usuario definida en el contexto de la transacción. Devuelve un objeto que indica si el nombre de usuario es válido y por qué.

  ```typescript Example theme={null}
  import Signup from '@auth0/auth0-acul-js/signup';
  const signupManager = new Signup();
  const result = signupManager.validateUsername('myusername');
  // resultado => { valid: true, errors: [] }
  ```

  **Parámetros del método**

  <Expandable title="Parámetros">
    <ParamField body="username" type="string" required>
      La cadena de nombre de usuario que se va a validar.
    </ParamField>
  </Expandable>
</ParamField>
