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

> Lock tiene muchas opciones de configuración que te permiten cambiar el comportamiento, la apariencia y la conectividad del widget Lock; este recurso te ofrece información detallada sobre esas opciones.

# Opciones de configuración de Lock

export const AuthCodeBlock = ({filename, icon, language, highlight, children}) => {
  const [displayText, setDisplayText] = useState(children);
  const [copyText, setCopyText] = useState(children);
  const wrapperRef = React.useRef(null);
  useEffect(() => {
    let unsubscribe = null;
    function init() {
      if (!window.autorun || !window.rootStore) {
        return;
      }
      unsubscribe = window.autorun(() => {
        let processedChildrenForDisplay = children;
        let processedChildrenForCopy = children;
        for (const [key, value] of window.rootStore.variableStore.values.entries()) {
          const escapedKey = key.replaceAll(/[.*+?^${}()|[\]\\]/g, (String.raw)`\$&`);
          let displayValue = value;
          if (key === "{yourClientSecret}" && value !== "{yourClientSecret}") {
            displayValue = value.substring(0, 3) + "*****ENMASCARADO*****";
          }
          processedChildrenForDisplay = processedChildrenForDisplay.replaceAll(new RegExp(escapedKey, "g"), displayValue);
          processedChildrenForCopy = processedChildrenForCopy.replaceAll(new RegExp(escapedKey, "g"), value);
        }
        setDisplayText(processedChildrenForDisplay);
        setCopyText(processedChildrenForCopy);
      });
    }
    if (window.rootStore) {
      init();
    } else {
      window.addEventListener("adu:storeReady", init);
    }
    return () => {
      window.removeEventListener("adu:storeReady", init);
      unsubscribe?.();
    };
  }, [children]);
  useEffect(() => {
    if (!wrapperRef.current) return;
    const originalWriteText = navigator.clipboard.writeText.bind(navigator.clipboard);
    let isOverriding = false;
    const handleClick = e => {
      const button = e.target.closest('[data-testid="copy-code-button"]');
      if (!button || !wrapperRef.current.contains(button)) return;
      isOverriding = true;
      navigator.clipboard.writeText = text => {
        if (isOverriding) {
          isOverriding = false;
          navigator.clipboard.writeText = originalWriteText;
          return originalWriteText(copyText);
        }
        return originalWriteText(text);
      };
      setTimeout(() => {
        if (isOverriding) {
          isOverriding = false;
          navigator.clipboard.writeText = originalWriteText;
        }
      }, 100);
    };
    const wrapper = wrapperRef.current;
    wrapper.addEventListener('click', handleClick, true);
    return () => {
      wrapper.removeEventListener('click', handleClick, true);
      if (navigator.clipboard.writeText !== originalWriteText) {
        navigator.clipboard.writeText = originalWriteText;
      }
    };
  }, [copyText]);
  return <div ref={wrapperRef}>
      <CodeBlock filename={filename} icon={icon} language={language} lines highlight={highlight}>
        {displayText}
      </CodeBlock>
    </div>;
};

Lock se puede configurar mediante el parámetro `options` que se envía al constructor. Estas opciones pueden modificar la forma en que se comporta el widget Lock, cómo gestiona las conexiones, los campos adicionales de registro que necesita para su proyecto, el idioma y los textos, los colores y las imágenes del widget, entre muchas otras cosas. Consulte el índice a continuación si sabe lo que está buscando o explore las opciones para obtener más información.

<div id="ui">
  ## Interfaz de usuario
</div>

| Opción                                                                 | Descripción                                                                                                                                                       |
| ---------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [allowAutocomplete](#allowautocomplete-boolean-)                       | Habilita o deshabilita el autocompletado en los campos de correo electrónico o username                                                                           |
| [allowPasswordAutocomplete](#allowpasswordautocomplete-boolean-)       | Habilita o deshabilita el autocompletado en el campo de contraseña                                                                                                |
| [allowShowPassword](#allowshowpassword-boolean-)                       | Especifica si el usuario puede optar por mostrar la contraseña mientras la escribe                                                                                |
| [allowedConnections](#allowedconnections-array-)                       | Lista de conexiones disponibles para realizar la autenticación                                                                                                    |
| [autoclose](#autoclose-boolean-)                                       | Especifica si Lock se cierra después de iniciar sesión                                                                                                            |
| [autofocus](#autofocus-boolean-)                                       | Especifica si el foco se establece en el primer campo de entrada                                                                                                  |
| [avatar](#avatar-object-)                                              | Especifica si deben mostrarse un avatar y un username en el encabezado de Lock una vez que se haya introducido un correo electrónico o username, y cómo obtenerlo |
| [closable](#closable-boolean-)                                         | Determina si Lock puede cerrarse                                                                                                                                  |
| [container](#container-string-)                                        | El elemento HTML en el que se renderizará Lock. Esto hace que Lock aparezca integrado en la página en lugar de en una ventana modal                               |
| [flashMessage](#flashmessage-object-)                                  | Muestra un mensaje flash de `error` o `success` cuando se muestra Lock                                                                                            |
| [language](#language-string-)                                          | Especifica el idioma del widget                                                                                                                                   |
| [languageDictionary](#languagedictionary-object-)                      | Personaliza el texto usado para los elementos del widget (como etiquetas y marcadores de posición)                                                                |
| [popupOptions](#popupoptions-object-)                                  | Personaliza la ubicación de la ventana emergente en la pantalla                                                                                                   |
| [rememberLastLogin](#rememberlastlogin-boolean-)                       | Indica si se debe mostrar una pantalla que te permita iniciar sesión rápidamente con la cuenta que usaste la última vez                                           |
| [scrollGlobalMessagesIntoView](#scrollglobalmessagesintoview-boolean-) | Especifica si se debe desplazar un globalMessage hasta el área visible del usuario                                                                                |

<div id="theme">
  ## Tema
</div>

Las opciones del tema se agrupan en la propiedad `theme` del objeto `options`.

| Opción                                               | Descripción                                                  |
| ---------------------------------------------------- | ------------------------------------------------------------ |
| [authButtons](#authbuttons-object-)                  | Personaliza la apariencia de botones de conexión específicos |
| [labeledSubmitButton](#labeledsubmitbutton-boolean-) | Indica si el botón de envío tiene texto o no                 |
| [logo](#logo-string-)                                | Logotipo que se debe usar                                    |
| [primaryColor](#primarycolor-string-)                | Color del botón principal del widget                         |

<div id="authentication">
  ## Autenticación
</div>

Las opciones de autenticación se agrupan en la propiedad `auth` del objeto `options`.

| Opción                                        | Descripción                                                                                                                                                                                                                                                                             |
| --------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [audience](#audience-string-)                 | La API que consumirá tu <Tooltip tip="Token de acceso: Credencial de autorización, en forma de cadena opaca o JWT, que se utiliza para acceder a una API." cta="Ver glosario" href="/es/docs/glossary?term=Access+Token">Token de acceso</Tooltip>                                      |
| [autoParseHash](#autoparsehash-boolean-)      | Indica si se debe analizar automáticamente el hash y continuar                                                                                                                                                                                                                          |
| [connectionScopes](#connectionscopes-object-) | Especifica los <Tooltip tip="scope: Mecanismo que determina qué acciones pueden realizar las aplicaciones en nombre de un usuario con información creada previamente en un recurso en línea." cta="Ver glosario" href="/es/docs/glossary?term=scopes">alcances</Tooltip> de la conexión |
| [params](#params-object-)                     | Opción para enviar parámetros al iniciar sesión                                                                                                                                                                                                                                         |
| [redirect](#redirect-boolean-)                | Indica si se debe usar el modo de redirección                                                                                                                                                                                                                                           |
| [redirectUrl](#redirecturl-string-)           | La URL a la que redirigir después de la autenticación                                                                                                                                                                                                                                   |
| [responseMode](#responsemode-string-)         | Opción para enviar la respuesta mediante POST                                                                                                                                                                                                                                           |
| [responseType](#responsetype-string-)         | Respuesta como código o token                                                                                                                                                                                                                                                           |
| [sso](#sso-boolean-)                          | Determina si el inicio de sesión único (SSO) está habilitado en Lock                                                                                                                                                                                                                    |

<div id="database">
  ## Base de datos
</div>

| Opción                                                          | Descripción                                                                                |
| --------------------------------------------------------------- | ------------------------------------------------------------------------------------------ |
| [additionalSignUpFields](#additionalsignupfields-array-)        | Campos adicionales recopilados durante el registro                                         |
| [allowLogin](#allowlogin-boolean-)                              | Si se permite o no iniciar sesión en el widget                                             |
| [allowForgotPassword](#allowforgotpassword-boolean-)            | Si se permite o no la opción de contraseña olvidada en el widget                           |
| [allowSignUp](#allowsignup-boolean-)                            | Si se permite o no registrarse en el widget                                                |
| [defaultDatabaseConnection](#defaultdatabaseconnection-string-) | Conexión de base de datos que se muestra de forma predeterminada                           |
| [initialScreen](#initialscreen-string-)                         | Qué pantalla se mostrará al abrir el widget                                                |
| [loginAfterSignUp](#loginaftersignup-boolean-)                  | Si se inicia sesión automáticamente después del registro                                   |
| [forgotPasswordLink](#forgotpasswordlink-string-)               | Enlace a una página personalizada de contraseña olvidada                                   |
| [showTerms](#showterms-boolean-)                                | Especifica si deben mostrarse los términos de registro                                     |
| [mustAcceptTerms](#mustacceptterms-boolean-)                    | Si es obligatorio aceptar los términos (casilla de verificación)                           |
| [prefill](#prefill-object-)                                     | Valores precargados para los campos de correo electrónico/username                         |
| [signUpLink](#signuplink-string-)                               | Establece una URL personalizada que se abrirá al hacer clic en "registrarse"               |
| [usernameStyle](#usernamestyle-string-)                         | Limita el campo username para aceptar solo valores de "username" o solo valores de "email" |

<div id="enterprise">
  ## Empresarial
</div>

| Opción                                                              | Descripción                                          |
| ------------------------------------------------------------------- | ---------------------------------------------------- |
| [defaultEnterpriseConnection](#defaultenterpriseconnection-string-) | Especifica una conexión si hay más de una disponible |

<div id="passwordless">
  ## Sin contraseña
</div>

| Opción                                            | Descripción                                                                                                                                                                                                                                            |
| ------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| [passwordlessMethod](#passwordlessmethod-string-) | Al usar `Auth0LockPasswordless` con una conexión de correo electrónico, puede usar esta opción para elegir si enviar un [code](/es/docs/authenticate/passwordless) o un [enlace mágico](/es/docs/authenticate/passwordless) para autenticar al usuario |

<div id="other">
  ### Otros
</div>

| Opción                                                | Descripción                                                                                          |
| ----------------------------------------------------- | ---------------------------------------------------------------------------------------------------- |
| [configurationBaseUrl](#configurationbaseurl-string-) | Anula la URL base de tu aplicación                                                                   |
| [languageBaseUrl](#languagebaseurl-string-)           | Anula la URL base de tu archivo de idioma                                                            |
| [hashCleanup](#hashcleanup-boolean-)                  | Anula la eliminación predeterminada del hash de la URL                                               |
| [connectionResolver](#connectionresolver-function-)   | Función de devolución de llamada opcional para elegir una conexión según la información del username |

***

<div id="ui-options">
  ## Opciones de la interfaz de usuario
</div>

### allowAutocomplete {Boolean}

Indica si los campos de correo electrónico o username permitirán el autocompletado (`<input autocomplete />`). El valor predeterminado es `false`.

`allowAutocomplete: true`

### allowPasswordAutocomplete {Boolean}

Determina si el campo de contraseña permitirá el autocompletado (`<input autocomplete />`). El valor predeterminado es `false`.

Establece `allowPasswordAutocomplete` en `true` para admitir gestores de contraseñas y evitar otros casos de comportamiento no deseado.

`allowPasswordAutocomplete: true`

### allowShowPassword {Boolean}

Esta opción determina si se agrega o no una casilla de verificación en la interfaz de usuario que, al seleccionarla, permite al usuario mostrar su contraseña mientras la escribe. De forma predeterminada, esta opción es `false`.

`allowShowPassword: true`

Lock con `allowShowPassword` establecido en `true` y activado para mostrar la contraseña:

<Frame>
  <img src="https://mintcdn.com/translations/6GE5Z24GDCZehiJ9/docs/images/cdy7uua7fh8z/6G8LJaNjaMl5zUrwGi5UJQ/44dc951b70077b0ec6bc04d2f0413b12/lock-allowshowpassword.png?fit=max&auto=format&n=6GE5Z24GDCZehiJ9&q=85&s=135b5d9dd218a02d5dadc2a2df7c6181" alt="Opción de Lock: Permitir mostrar la contraseña" width="2070" height="1978" data-path="docs/images/cdy7uua7fh8z/6G8LJaNjaMl5zUrwGi5UJQ/44dc951b70077b0ec6bc04d2f0413b12/lock-allowshowpassword.png" />
</Frame>

### allowedConnections {Array}

Array de conexiones que se usarán para las acciones `signin|signup|reset`. De forma predeterminada, se usan todas las conexiones habilitadas.

`allowedConnections: ['Username-Password-Authentication']`

`allowedConnections: ['twitter', 'facebook', 'linkedin']`

`allowedConnections: ['qraftlabs.com']`

Ejemplos de `allowedConnections`:

<Frame>
  <img src="https://mintcdn.com/translations/eVsQcTnbClN-oB7d/docs/images/cdy7uua7fh8z/1mllPDLFCCETwQ9MeGEf3W/763728971302656618ef3bd131ab83b1/lock-allowedconnections-database.png?fit=max&auto=format&n=eVsQcTnbClN-oB7d&q=85&s=28e9b9aacbbe08e3939d78e1e186daf5" alt="Opción de Lock: Conexiones permitidas - Base de datos" width="2070" height="1978" data-path="docs/images/cdy7uua7fh8z/1mllPDLFCCETwQ9MeGEf3W/763728971302656618ef3bd131ab83b1/lock-allowedconnections-database.png" />
</Frame>

<Frame>
  <img src="https://mintcdn.com/translations/c0RQ9V0YAcT0-8l5/docs/images/cdy7uua7fh8z/7uYN4ebrLLM8bjx1fee8j0/1e716cca3e1bae990063e9226dfe9ac2/lock-allowedconnections-social.png?fit=max&auto=format&n=c0RQ9V0YAcT0-8l5&q=85&s=cdc2e3a763eafe20f95936c2b3b7b7c5" alt="Opción de Lock: Conexiones permitidas - Social" width="2070" height="1978" data-path="docs/images/cdy7uua7fh8z/7uYN4ebrLLM8bjx1fee8j0/1e716cca3e1bae990063e9226dfe9ac2/lock-allowedconnections-social.png" />
</Frame>

### autoclose {Boolean}

Determina si Lock se cerrará automáticamente después de iniciar sesión correctamente. El valor predeterminado es false. Si Lock no es `closable`, no se cerrará aunque esta opción esté configurada como true.

`autoclose: true`

### autofocus {Boolean}

Si es `true`, el foco se sitúa en el primer campo del widget. El valor predeterminado es `false` cuando se renderiza en un dispositivo móvil o si se proporciona la opción `container`; en todos los demás casos, el valor predeterminado es `true`.

`autofocus: false`

### avatar {Object}

De forma predeterminada, se usa Gravatar para obtener el avatar y el nombre para mostrar del usuario, pero puedes obtenerlos con la opción `avatar` desde cualquier origen.

```js lines theme={null}
var options = {
  avatar: {
    url: function(email, cb) {
      // Obtiene la URL del avatar para el correo electrónico ingresado por el usuario, Lock
      // precargará la imagen antes de mostrarla.
      // Ten en cuenta que en caso de error debes llamar a cb con el error en
      // el primer argumento en lugar de `null`.
      var url = obtainAvatarUrl(email);
      cb(null, url);
    },
    displayName: function(email, cb) {
      // Obtiene el nombre para mostrar del correo electrónico ingresado por el usuario.
      // Ten en cuenta que en caso de error debes llamar a cb con el error en
      // el primer argumento en lugar de `null`.
      var displayName = obtainDisplayName(email);
      cb(null, displayName);
    }
  }
};
```

O, si no quieres mostrar ningún avatar, simplemente pasa `null`.

`avatar: null`

Comportamiento predeterminado con Gravatar:

<Frame>
  <img src="https://mintcdn.com/translations/6GE5Z24GDCZehiJ9/docs/images/cdy7uua7fh8z/69Nz0QoQifPWpfBZwX15J0/204aad93cde406f0ed3771ce38766f56/lock-avatar.png?fit=max&auto=format&n=6GE5Z24GDCZehiJ9&q=85&s=9b4978850a31edf65e76a79f9b4b9ca9" alt="Opción de Lock: avatar" width="2070" height="1978" data-path="docs/images/cdy7uua7fh8z/69Nz0QoQifPWpfBZwX15J0/204aad93cde406f0ed3771ce38766f56/lock-avatar.png" />
</Frame>

### closable {Boolean}

Determina si Lock puede cerrarse o no. Cuando se proporciona la opción `container`, su valor siempre es `false`; de lo contrario, el valor predeterminado es `true`.

`closable: false`

<Frame>
  <img src="https://mintcdn.com/translations/Dcx0M11uuptU53TX/docs/images/cdy7uua7fh8z/2qwXtPQev1nlpyOQauXKBO/f967e1157972ecbf5b030b3be3600f2e/lock-closable.png?fit=max&auto=format&n=Dcx0M11uuptU53TX&q=85&s=3a0620edd47667427831699c2e1844f8" alt="Opción de Lock: Closable" width="2070" height="1978" data-path="docs/images/cdy7uua7fh8z/2qwXtPQev1nlpyOQauXKBO/f967e1157972ecbf5b030b3be3600f2e/lock-closable.png" />
</Frame>

### container {String}

El `id` del elemento HTML donde se mostrará el widget.

Esto hace que el widget aparezca integrado en tu `div` en lugar de en una ventana modal.

```html lines theme={null}
<div id="hiw-login-container"></div>

<script>
  var options = {
    container: 'hiw-login-container'
  };

  // inicializar
  var lock = new Auth0Lock('xxxxxx', '<account>.auth0.com', options);

  // renderizar
  lock.show();
</script>
```

<Frame>
  <img src="https://mintcdn.com/translations/MV7tE-x71x8RWRES/docs/images/cdy7uua7fh8z/5L4S47Yfset2DR9pjcqVrX/1c4d1928cf75acf40129ffd01394bf33/lock-container.png?fit=max&auto=format&n=MV7tE-x71x8RWRES&q=85&s=07b39e581ebe285a055bd63467f41043" alt="Opción de Lock: Contenedor" width="2070" height="1978" data-path="docs/images/cdy7uua7fh8z/5L4S47Yfset2DR9pjcqVrX/1c4d1928cf75acf40129ffd01394bf33/lock-container.png" />
</Frame>

### flashMessage {Object}

Muestra un mensaje flash de `error` o `success` cuando se muestra Lock. Este objeto tiene las siguientes propiedades:

* type \{String}: El tipo de mensaje; los tipos admitidos son `error`, `info` y `success`
* text \{String}: El texto que se mostrará.

```js lines theme={null}
var options = {
  flashMessage: {
    type: 'success',
    text: 'Welcome!'
  }
};
```

### language {String}

Especifica el idioma del widget. El valor predeterminado es "en". Consulta el [directorio de internacionalización](https://github.com/auth0/lock/blob/master/src/i18n/) para obtener una lista actualizada de los idiomas disponibles.

`language: 'es'`

<Frame>
  <img src="https://mintcdn.com/translations/3nS3prIggmJG9TUI/docs/images/cdy7uua7fh8z/3u3lytCUBDbcKmXFV34OUv/5cf5d7e1af9593a3b094f32815a4da11/lock-language.png?fit=max&auto=format&n=3nS3prIggmJG9TUI&q=85&s=3016e0e1ba213c6a5042bad08d7d78c6" alt="Opción de Lock: idioma" width="2070" height="1978" data-path="docs/images/cdy7uua7fh8z/3u3lytCUBDbcKmXFV34OUv/5cf5d7e1af9593a3b094f32815a4da11/lock-language.png" />
</Frame>

### languageDictionary {Object}

Permite personalizar cada texto que se muestra en Lock. El valor predeterminado es {"{}"}. Consulta la [especificación del diccionario de idioma](https://github.com/auth0/lock/blob/master/src/i18n/en.js) en inglés para ver la lista completa de valores de `languageDictionary` que se pueden modificar con este objeto.

```js lines theme={null}
var options = {
  languageDictionary: {
    emailInputPlaceholder: "something@youremail.com",
    title: "Log me in"
  },
};
```

<Frame>
  <img src="https://mintcdn.com/translations/MV7tE-x71x8RWRES/docs/images/cdy7uua7fh8z/5203ofwtagtIKGT4HnIPmk/8ad9cdd151a2cdb18b8a42ee47dbf679/lock-languagedictionary.png?fit=max&auto=format&n=MV7tE-x71x8RWRES&q=85&s=eaa20ab21bb6298ccb98069ad3ff280e" alt="Opción de Lock: diccionario de idioma" width="2070" height="1978" data-path="docs/images/cdy7uua7fh8z/5203ofwtagtIKGT4HnIPmk/8ad9cdd151a2cdb18b8a42ee47dbf679/lock-languagedictionary.png" />
</Frame>

Además, consulta la página [Personalización de los mensajes de error](/es/docs/customize/login-pages/classic-login/customize-lock-error-messages) o la página [Internacionalización](/es/docs/customize/internationalization-and-localization/lock-internationalization) para obtener más información sobre el uso de la opción `languageDictionary`.

### popupOptions {Object}

Permite personalizar la ubicación de la ventana emergente en la pantalla. Se acepta cualquier opción de posición y tamaño permitida por `window.open`. El valor predeterminado es {"{}"}.

Opciones para las características de `window.open`. Esto solo se aplica si `redirect` se establece en `false`.

```js lines theme={null}
var options = {
  auth: {
      redirect: false
  },
  popupOptions: { width: 300, height: 400, left: 200, top: 300 }
};
```

### rememberLastLogin {Boolean}

Determina si se muestra una pantalla que permite iniciar sesión rápidamente con la cuenta que se usó la última vez.
Solicita datos de <Tooltip tip="Single Sign-On (SSO): servicio que, después de que un usuario inicia sesión en una aplicación, inicia sesión automáticamente en otras aplicaciones." cta="Ver glosario" href="/es/docs/glossary?term=Single+Sign-on">inicio de sesión único</Tooltip> (SSO) y habilita el mensaje **La última vez iniciaste sesión con**. El valor predeterminado es `true`. Esta información proviene de la sesión de Auth0 del usuario, por lo que esta funcionalidad estará disponible mientras dure su sesión de Auth0 (que es configurable).

`rememberLastLogin: false`

Los inquilinos nuevos [tienen Seamless SSO habilitado automáticamente](/es/docs/get-started/tenant-settings/enable-sso-for-legacy-tenants). Con esta opción habilitada, `rememberLastLogin` deja de ser relevante porque, si hay una sesión activa, la página de <Tooltip tip="Universal Login: tu aplicación redirige a Universal Login, alojado en el Servidor de autorización de Auth0, para verificar la identidad de un usuario." cta="Ver glosario" href="/es/docs/glossary?term=Universal+Login">Universal Login</Tooltip> no se mostrará en absoluto. Se recomienda encarecidamente usar Seamless SSO porque proporciona una experiencia de autenticación fluida: los usuarios inician sesión una vez y no tendrán que volver a introducir sus credenciales al navegar entre las aplicaciones que has creado o las de terceros. Si el usuario no ha iniciado sesión, se lo redirigirá a la pantalla de inicio de sesión, como es de esperar. Además, el mensaje **La última vez iniciaste sesión con** no estará disponible en las siguientes circunstancias:

* Usaste Lock en una [página de inicio de sesión alojada](/es/docs/authenticate/login/auth0-universal-login) con la sesión establecida mediante [autenticación sin contraseña](/es/docs/libraries/lock/lock-configuration#passwordlessmethod-string-).
* Usaste Lock en un [escenario de inicio de sesión integrado](/es/docs/authenticate/login/universal-vs-embedded-login) en el que se usa `responseType: code` (lo que indica el [flujo de código de autorización](/es/docs/get-started/authentication-and-authorization-flow/authorization-code-flow), que se usa para aplicaciones web regulares).

### scrollGlobalMessagesIntoView {Boolean}

Determina si `globalMessage` debe desplazarse hasta quedar visible para el usuario. El valor predeterminado es `true`.

`scrollGlobalMessagesIntoView: false`

<div id="theme-options">
  ## Opciones de tema
</div>

Las opciones de tema se agrupan en la propiedad `theme` del objeto `options`.

```js lines theme={null}
var options = {
  theme: {
    labeledSubmitButton: false,
    logo: "https://example.com/assets/logo.png",
    primaryColor: "green",
    authButtons: {
      connectionName: {
        displayName: "...",
        primaryColor: "...",
        foregroundColor: "...",
        icon: "https://.../logo.png"
      }
    }
  }
};
```

### authButtons {Object}

Permite personalizar los botones de Lock con conexiones OAuth2 personalizadas. Cada conexión personalizada cuyo botón quiera personalizar debe incluirse por nombre, cada una con su propio conjunto de parámetros. Los parámetros que se pueden personalizar se enumeran a continuación:

* **displayName** \{String}: El nombre que se mostrará en lugar del nombre de la conexión al crear el título del botón, por ejemplo, `LOGIN WITH MYCONNECTION` para el inicio de sesión).
* **primaryColor** \{String}: El color de fondo del botón. El valor predeterminado es `#eb5424`.
* **foregroundColor** \{String}: El color del texto del botón. El valor predeterminado es `#FFFFFF`.
* **icon** \{String}: La URL del icono de esta conexión. Por ejemplo: `http://site.com/logo.png`.

```js lines theme={null}
var options = {
  theme: {
    authButtons: {
      "testConnection": {
        displayName: "Test Conn",
        primaryColor: "#b7b7b7",
        foregroundColor: "#000000",
        icon: "http://example.com/icon.png"
      },
      "testConnection2": {
        primaryColor: "#000000",
        foregroundColor: "#ffffff",
      }
    }
  }
};
```

### labeledSubmitButton {Boolean}

Esta opción indica si el botón de envío debe llevar una etiqueta y su valor predeterminado es `true`. Si se establece en `false`, se mostrará un icono en su lugar.

```js lines theme={null}
var options = {
  theme: {
    labeledSubmitButton: false
  }
};
```

<Frame>
  <img src="https://mintcdn.com/translations/MV7tE-x71x8RWRES/docs/images/cdy7uua7fh8z/5PNCvsbYa98pKZwWHVPS9S/39cb5ac63818ec5558c451b1e37f735f/lock-theme-labeledsubmitbutton.png?fit=max&auto=format&n=MV7tE-x71x8RWRES&q=85&s=f32504b05390f9d4fac08c28c38208d7" alt="Opción de Lock: Botón de envío con etiqueta" width="2070" height="1978" data-path="docs/images/cdy7uua7fh8z/5PNCvsbYa98pKZwWHVPS9S/39cb5ac63818ec5558c451b1e37f735f/lock-theme-labeledsubmitbutton.png" />
</Frame>

Si la etiqueta está establecida en true, que es el valor predeterminado, el texto de la etiqueta se puede personalizar mediante la opción [languageDictionary](#languagedictionary-object-).

### logo {String}

El valor de `logo` es la URL de una imagen que se colocará en el encabezado de Lock y, de forma predeterminada, usa el logotipo de Auth0. Se recomienda una altura máxima de `58px` para ofrecer una mejor experiencia de usuario.

```js lines theme={null}
var options = {
  theme: {
    logo: 'https://example.com/logo.png'
  }
};
```

<Frame>
  <img src="https://mintcdn.com/translations/mMSz-RNYLuOm2GmQ/docs/images/cdy7uua7fh8z/FdOAKKy71rTbFjIlZEL8D/2eef96008095d85388daaa461707901d/lock-theme-logo.png?fit=max&auto=format&n=mMSz-RNYLuOm2GmQ&q=85&s=893afa574173351c9dd2553ae6b3e50a" alt="Personalización de la interfaz de usuario de Lock - Logotipo" width="2070" height="1978" data-path="docs/images/cdy7uua7fh8z/FdOAKKy71rTbFjIlZEL8D/2eef96008095d85388daaa461707901d/lock-theme-logo.png" />
</Frame>

### primaryColor {String}

La propiedad `primaryColor` define el color principal de Lock; todos los colores usados en el widget se calculan a partir de él. Esta opción resulta útil al proporcionar un `logo` personalizado, para garantizar que todos los colores combinen bien con la paleta del `logo`. El valor predeterminado es `#ea5323`.

```js lines theme={null}
var options = {
  theme: {
    logo: 'https://example.com/logo.png',
    primaryColor: '#31324F'
  }
};
```

<Frame>
  <img src="https://mintcdn.com/translations/eVsQcTnbClN-oB7d/docs/images/cdy7uua7fh8z/1qQjeTmXJyIziv400VPaOn/48dd3cb8a72a6e88b2634b4b8a8bed63/lock-theme-primarycolor.png?fit=max&auto=format&n=eVsQcTnbClN-oB7d&q=85&s=80813e2e359f17629e426cfe972af428" alt="Personalización de la interfaz de usuario de Lock: color principal" width="2070" height="1978" data-path="docs/images/cdy7uua7fh8z/1qQjeTmXJyIziv400VPaOn/48dd3cb8a72a6e88b2634b4b8a8bed63/lock-theme-primarycolor.png" />
</Frame>

<div id="authentication-options">
  ## Opciones de autenticación
</div>

Las opciones de autenticación se agrupan en la propiedad `auth` del objeto `options`.

El scope predeterminado que utiliza Lock es `openid profile email`.

```js lines theme={null}
var options = {
  auth: {
   params: {
    param1: "value1",
    scope: "openid profile email"
   },
   autoParseHash: true,
   redirect: true,
   redirectUrl: "some url",
   responseMode: "form_post",
   responseType: "token",
   sso: true,
   connectionScopes: {
    connectionName: [ 'scope1', 'scope2' ]
   }
  }
};
```

### audience {String}

La opción `audience` indica la API que consumirá el <Tooltip tip="Token de acceso: credencial de autorización, en forma de una cadena opaca o un JWT, que se utiliza para acceder a una API." cta="Ver glosario" href="/es/docs/glossary?term=Access+Token">Token de acceso</Tooltip> que se recibe después de la autenticación.

export const codeExample = `var options = {
  auth: {
    audience: 'https://{yourDomain}/userinfo',
  }
}`;

<AuthCodeBlock children={codeExample} language="js" />

### autoParseHash {Boolean}

Cuando `autoParseHash` se configura como `true`, Lock analizará la cadena `window.location.hash` al instanciarse. Si se configura como `false`, tendrás que reanudar manualmente la autenticación mediante el método [resumeAuth](/es/docs/libraries/lock/lock-api-reference).

```js lines theme={null}
var options = {
  auth: {
    autoParseHash: false
  }
};
```

### connectionScopes {Object}

Esta opción permite establecer los alcances que se enviarán a la conexión oauth2/social para la autenticación.

```js lines theme={null}
var options = {
  auth: {
    connectionScopes: {
      'facebook': ['scope1', 'scope2']
    }
  }
};
```

Puede obtenerse del proveedor correspondiente una lista de alcances específicos para sus conexiones sociales. Por ejemplo, la documentación de [Facebook for Developers](https://developers.facebook.com/docs/facebook-login/permissions/) incluye una lista de permisos individuales que se pueden solicitar para su conexión.

### params {Object}

Puede enviar parámetros al iniciar sesión agregándolos al objeto de opciones. En el siguiente ejemplo, se agrega un parámetro `state` con el valor `foo` y también un parámetro `scope` (que incluye el scope y, a continuación, los atributos solicitados).

```js lines theme={null}
var options = {
  auth: {
    params: {
      state: 'foo',
      scope: 'openid email user_metadata app_metadata picture'
    }
  }
};
```

Para obtener más información sobre los parámetros compatibles, consulta [Lock Authentication Parameters](/es/docs/libraries/lock/lock-authentication-parameters).

### redirect {Boolean}

El valor predeterminado es `true`. Cuando se establece en `true`, se utiliza el modo de redirección. Si se establece en `false`, se usa el [modo emergente](/es/docs/libraries/lock/lock-authentication-modes).

```js lines theme={null}
var options = {
  auth: {
    redirect: false
  }
};
```

### redirectUrl {String}

La URL a la que Auth0 redirigirá tras la autenticación. El valor predeterminado es la cadena vacía "" (sin URL de redirección).

```js lines theme={null}
var options = {
  auth: {
    redirectUrl: 'http://testurl.com'
  }
};
```

Cuando se proporciona `redirectUrl` (es decir, se establece con un valor no vacío), la opción `responseType` tomará `code` como valor predeterminado si no se configura manualmente.

### responseMode {String}

Debe establecerse en `"form_post"` si quiere que el code o el token se transmitan mediante una solicitud HTTP POST a `redirectUrl`, en lugar de incluirse en los componentes de consulta o fragmento de la URL.

De lo contrario, esta opción debe omitirse; de forma predeterminada, se omite.

```js lines theme={null}
var options = {
  auth: {
    responseMode: 'form_post'
  }
};
```

### responseType {String}

El valor de `responseType` debe establecerse como "token" para las aplicaciones de una sola página y como "code" en caso contrario. El valor predeterminado es "code" cuando se proporciona redirectUrl y, en caso contrario, "token".

```js lines theme={null}
var options = {
  auth: {
    responseType: 'token'
  }
};
```

Cuando `responseType` se establece en `code`, Lock nunca mostrará el mensaje **La última vez que iniciaste sesión con**, y siempre pedirá al usuario que introduzca sus credenciales.

## sso {Boolean}

El valor predeterminado es `true`. Cuando se establece en `true`, habilita el [inicio de sesión único (SSO)](/es/docs/authenticate/single-sign-on) en Lock.

```js lines theme={null}
var options = {
  auth: {
    sso: false
  }
};
```

<div id="database-options">
  ## Opciones de la base de datos
</div>

### additionalSignUpFields {Array}

Se pueden añadir campos de entrada adicionales a la pantalla de registro con la opción `additionalSignUpFields`. Cada opción que se añada de esta forma se incorporará al `user_metadata` del usuario. Para obtener más información, consulte [Cómo funcionan los metadatos en los perfiles de usuario](/es/docs/manage-users/user-accounts/metadata). Cada campo debe tener un `name` y un `placeholder`, y también puede proporcionarse una URL para `icon`. Además, puede indicarse un valor inicial con la opción `prefill`, que puede ser una cadena con el valor o una función que lo obtenga. Las demás opciones dependen del tipo de campo, que se define mediante la opción `type` y cuyo valor predeterminado es "text".

<Card title="Opción additionalSignUpFields pensada para usarse solo con el registro en base de datos">
  Los `additionalSignUpFields` están pensados para usarse solo con registros en base de datos. Si también tiene registros sociales, puede solicitar la información adicional después de que los usuarios se registren (consulte esta [página sobre registro personalizado](/es/docs/libraries/custom-signup) para obtener más detalles). Puede usar la clave de i18n `databaseAlternativeSignupInstructions` para mostrar estas instrucciones.
</Card>

Los nuevos campos se muestran debajo de los campos de entrada habituales del registro, en el orden en que se proporcionan.

<div id="text-fields">
  #### Campos de texto
</div>

Los campos de texto son el tipo predeterminado de campo adicional para el registro. Tenga en cuenta que también puede proporcionarse una función `validator`.

```js lines theme={null}
var options = {
  additionalSignUpFields: [{
    name: "address",
    placeholder: "enter your address",
    // Las siguientes propiedades son opcionales
    icon: "https://example.com/assests/address_icon.png",
    prefill: "street 123",
    validator: function(address) {
      return {
         valid: address.length >= 10,
         hint: "Must have 10 or more chars" // opcional
      };
    }
  },
  {
    name: "full_name",
    placeholder: "Enter your full name"
  }]
}
```

Si no especifica un `validator`, el campo de texto será **obligatorio**. Si quiere que el campo de texto sea opcional, use un validador que siempre devuelva `true`, de esta forma:

```js lines theme={null}
var options = {
  additionalSignUpFields: [{
    name: "favorite_color",
    placeholder: "Enter your favorite color (optional)",
    validator: function() { 
      return true;
    }
  }]
}
```

Si desea guardar el valor del atributo en la raíz de su perfil, use `storage: 'root'`. Solo algunos valores pueden almacenarse de esta forma. La lista de atributos que pueden añadirse a la raíz de su perfil está [aquí](https://auth0.com/docs/api/management/v2#!/Users/patch_users_by_id). De forma predeterminada, cada campo de registro adicional se almacena dentro del objeto user\_metadata.

```js lines theme={null}
var options = {
  additionalSignUpFields: [{
    name: "name",
    storage: "root"
  }]
};
```

<Frame>
  <img src="https://mintcdn.com/translations/Dcx0M11uuptU53TX/docs/images/cdy7uua7fh8z/2KPDGZb3caq57caJ90w53k/e092bdb4a4d93589aa006f796ff20fca/lock-additionalsignupfields.png?fit=max&auto=format&n=Dcx0M11uuptU53TX&q=85&s=9561a129706338d29cd1edb29d026d2a" alt="Opción de Lock: Campos de registro adicionales" width="2070" height="1978" data-path="docs/images/cdy7uua7fh8z/2KPDGZb3caq57caJ90w53k/e092bdb4a4d93589aa006f796ff20fca/lock-additionalsignupfields.png" />
</Frame>

<div id="select-field">
  #### Campo de selección
</div>

El campo de registro `type: "select"` le permitirá usar elementos de selección para que el usuario pueda elegir un valor.

```js lines theme={null}
var options = {
  additionalSignUpFields: [{
    type: "select",
    name: "location",
    placeholder: "choose your location",
    options: [
      {value: "us", label: "United States"},
      {value: "fr", label: "France"},
      {value: "ar", label: "Argentina"}
    ],
    // Las siguientes propiedades son opcionales
    icon: "https://example.com/assests/location_icon.png",
    prefill: "us"
  }]
}
```

Los elementos del array `options` de los campos `select` deben ajustarse al siguiente formato:
`{label: “cadena no vacía”, value: “cadena no vacía”}`, y debe definirse al menos una opción.

Los valores de `options` y `prefill` pueden proporcionarse mediante una función:

```js lines theme={null}
var options = {
  additionalSignUpFields: [{
    type: "select",
    name: "location",
    placeholder: "choose your location",
    options: function(cb) {
      // obtener opciones, en caso de error llama a cb con el error en el
      // primer argumento en lugar de null
      cb(null, options);
    },
    icon: "https://example.com/assests/location_icon.png",
    prefill: function(cb) {
      // obtener prefill, en caso de error llama a cb con el error en el
      // primer argumento en lugar de null
      cb(null, prefill);
    }
  }]
}
```

<div id="checkbox-field">
  #### Campo de casilla de verificación
</div>

El tercer tipo de campo de registro personalizado es `type: "checkbox"`. El valor de `prefill` puede determinar el valor predeterminado de la casilla de verificación (`true` o `false`) y es obligatorio.

```js lines theme={null}
var options = {
  additionalSignUpFields: [{
    type: "checkbox",
    name: "newsletter",
    prefill: "true",
    placeholder: "I hereby agree that I want to receive marketing emails from your company"
  }]
}
```

<div id="hidden-field">
  #### Campo oculto
</div>

El campo de registro `type: "hidden"` te permite usar un campo oculto con un valor fijo.

```js lines theme={null}
var options = {
  additionalSignUpFields: [{
    type: "hidden",
    name: "signup_code",
    value: "abc123"
  }]
}
```

En algunos casos de uso, se pueden aprovechar los datos de `additionalSignUpFields` en las plantillas de correo electrónico; por ejemplo, una opción de preferencia de idioma, cuyo valor podría usarse luego para establecer el idioma de las comunicaciones por correo electrónico generadas a partir de plantillas.

### allowLogin {Boolean}

Cuando se establece en `false`, el widget no mostrará la pantalla de inicio de sesión. Esto resulta útil si desea usar el widget solo para registros (las pestañas de inicio de sesión y registro en la pantalla de registro estarán ocultas) o para restablecer contraseñas (el botón de retroceso en la pantalla de contraseña olvidada estará oculto). En estos casos, también puede ser necesario especificar las opciones `initialScreen`, `allowForgotPassword` y `allowSignUp`. El valor predeterminado es `true`.

`allowLogin: false`

<Frame>
  <img src="https://mintcdn.com/translations/6GE5Z24GDCZehiJ9/docs/images/cdy7uua7fh8z/6gI4aSLHXLzhcHiR9aWMET/d05c2a08a3895278b01150ecf894cb5f/lock-allowlogin.png?fit=max&auto=format&n=6GE5Z24GDCZehiJ9&q=85&s=77270007c6a6e5cc0c4204b4c1c2d7da" alt="Opción de Lock: Permitir inicio de sesión" width="2070" height="1978" data-path="docs/images/cdy7uua7fh8z/6gI4aSLHXLzhcHiR9aWMET/d05c2a08a3895278b01150ecf894cb5f/lock-allowlogin.png" />
</Frame>

### allowForgotPassword {Boolean}

Cuando se establece en `false`, `allowForgotPassword` oculta el enlace "¿No recuerdas tu contraseña?" en la pantalla de inicio de sesión, lo que hace que la pantalla de recuperación de contraseña sea inaccesible. El valor predeterminado es `true`. Si usas una conexión de base de datos con una base de datos personalizada que no tiene un script para cambiar la contraseña, la pantalla de recuperación de contraseña no estará disponible.

`allowForgotPassword: false`

<Frame>
  <img src="https://mintcdn.com/translations/eVsQcTnbClN-oB7d/docs/images/cdy7uua7fh8z/1L6wJS3UnWK1VGKYMFhAB9/2ddcf2d462255e78a8b78958c2503809/lock-allowforgotpassword.png?fit=max&auto=format&n=eVsQcTnbClN-oB7d&q=85&s=abce0ba19791d22cb0db9be9a0e1fec3" alt="Opción de Lock: Permitir recuperar contraseña" width="2070" height="1978" data-path="docs/images/cdy7uua7fh8z/1L6wJS3UnWK1VGKYMFhAB9/2ddcf2d462255e78a8b78958c2503809/lock-allowforgotpassword.png" />
</Frame>

### allowSignUp {Boolean}

Cuando se establece en `false`, oculta las pestañas de inicio de sesión y registro en la pantalla de inicio de sesión, lo que hace que no se pueda acceder a la pantalla de registro. El valor predeterminado es `true`. Ten en cuenta que, si la conexión de base de datos tiene los registros deshabilitados o estás usando una base de datos personalizada que no tiene un script de creación, la pantalla de registro no estará disponible.

Ten en cuenta también que esta opción **solo** controla la apariencia del lado del cliente y no impide por completo que visitantes anónimos decididos creen cuentas nuevas. Si quieres evitar por completo que nuevos usuarios se registren, debes usar la opción **Disable Sign Ups** en el Dashboard, en la configuración de la conexión.

`allowSignUp: false`

<Frame>
  <img src="https://mintcdn.com/translations/Dcx0M11uuptU53TX/docs/images/cdy7uua7fh8z/2BNlYe99EFlRmIlhoLZiEB/f280d865cb16fa5fecda952271cb18bf/lock-allowsignup.png?fit=max&auto=format&n=Dcx0M11uuptU53TX&q=85&s=01568ae3eb1d69874c6bea838edf25ea" alt="Opción de Lock: Permitir registro" width="2070" height="1978" data-path="docs/images/cdy7uua7fh8z/2BNlYe99EFlRmIlhoLZiEB/f280d865cb16fa5fecda952271cb18bf/lock-allowsignup.png" />
</Frame>

### defaultDatabaseConnection {String}

Especifica qué conexión de base de datos se utilizará cuando haya más de una disponible.

`defaultDatabaseConnection: 'test-database'`

### initialScreen {String}

El nombre de la pantalla que se mostrará al abrir el widget. Los valores válidos son `login`, `signUp` y `forgotPassword`. Si no se especifica esta opción, el widget usará de forma predeterminada la primera pantalla disponible de esa lista.

`initialScreen: 'forgotPassword'`

### loginAfterSignUp {Boolean}

Determina si el usuario iniciará sesión automáticamente después de registrarse correctamente. El valor predeterminado es `true`.

`loginAfterSignUp: false`

### forgotPasswordLink {String}

Establece la URL de una página que permite al usuario restablecer su contraseña. Cuando se establece con una cadena no vacía, se redirigirá al usuario a la URL proporcionada al hacer clic en el enlace "¿No recuerdas tu contraseña?" en la pantalla de inicio de sesión.

`forgotPasswordLink: 'https://yoursite.com/reset-password'`

### showTerms {Boolean}

Si se establece en `true`, muestra la cadena `languageDictionary.signUpTerms`. El valor predeterminado es `true`.

`showTerms: false`

### mustAcceptTerms {Boolean}

Cuando se establece en `true`, muestra una casilla de verificación junto a los términos y condiciones, que deben aceptarse antes de registrarse. Los términos y condiciones se pueden especificar mediante la opción `languageDictionary`. Esta opción solo surte efecto para los usuarios que se registran con conexiones de base de datos. El valor predeterminado es `false`.

`mustAcceptTerms: true`

### prefill {Object}

Permite establecer el valor inicial de los campos de correo electrónico y/o username. Si se omite, no se proporcionará ningún valor inicial.

```js lines theme={null}
var options = {
  prefill: {
    email: "someone@auth0.com",
    username: "someone",
    phoneNumber: "+1234567890"
  }
};
```

### signUpLink {String}

Establece la URL a la que se enviará la solicitud al hacer clic en el botón de registro. Cuando se establece como una cadena no vacía, esta opción fuerza `allowSignUp` a `true`.

`signUpLink: 'https://yoursite.com/signup'`

### usernameStyle {String}

Determina qué se usará para identificar al usuario en una conexión de base de datos que tenga activada la marca `requires_username` (si no está activada, se ignorará la opción `usernameStyle`). Los valores posibles son `"username"` y `"email"`. De forma predeterminada, se permiten tanto `username` como `email`; al establecer esta opción, se limitarán los inicios de sesión para que usen uno u otro.

`usernameStyle: 'username'`

<div id="enterprise-options">
  ## Opciones empresariales
</div>

### defaultEnterpriseConnection {String}

Especifica la conexión empresarial que permite iniciar sesión con un username y una contraseña, y que se utilizará cuando haya más de una disponible o cuando exista una conexión de base de datos. Si se proporciona `defaultDatabaseConnection`, se utilizará la conexión de base de datos y se ignorará esta opción.

`defaultEnterpriseConnection: 'test-database'`

### defaultADUsernameFromEmailPrefix {Boolean}

Obtiene el username provisional de AD a partir del prefijo del correo electrónico. El valor predeterminado es `true`.

`defaultADUsernameFromEmailPrefix: false`

<div id="passwordless-options">
  ## Opciones de inicio de sesión sin contraseña
</div>

### passwordlessMethod {String}

Al usar `Auth0LockPasswordless` con una conexión de correo electrónico, puede usar esta opción para elegir entre enviar un [code](/es/docs/authenticate/passwordless) o un [magic link](/es/docs/authenticate/passwordless) para autenticar al usuario. Los valores disponibles para las conexiones de correo electrónico son `code` y `link`. El valor predeterminado es `code`. Las conexiones <Tooltip tip="Sin contraseña: forma de autenticación que no depende de una contraseña como primer factor." cta="Ver glosario" href="/es/docs/glossary?term=passwordless">sin contraseña</Tooltip> por SMS siempre usarán `code`.

`passwordlessMethod: code`

<div id="other-options">
  ## Otras opciones
</div>

### configurationBaseUrl {String}

Anula la URL base de configuración de la aplicación. De forma predeterminada, usa el dominio proporcionado. Esta opción solo es necesaria si tu caso de uso específico requiere que la aplicación no use el comportamiento predeterminado.

`configurationBaseUrl: "https://www.example.com"`

### languageBaseUrl {String}

Anula la URL base del idioma para las traducciones proporcionadas por Auth0. De forma predeterminada, esta opción usa la URL de CDN de Auth0 `https://cdn.auth0.com`, ya que es donde se almacenan todas las traducciones proporcionadas. Si especifica otro valor, puede usar otra fuente para las traducciones de idioma, si es necesario.

`languageBaseUrl: "https://www.example.com"`

### hashCleanup {Boolean}

Cuando la opción `hashCleanup` está habilitada, elimina la parte de hash de la URL de devolución de llamada después de la autenticación del usuario. El valor predeterminado es `true`.

`hashCleanup: false`

### connectionResolver {Function}

Cuando se utiliza, proporciona un punto de extensión que permite elegir qué conexión usar según la información de `username`.

Recibe `username`, `context` y `callback` como parámetros. El callback espera un objeto como este: `{type: 'database', name: 'connection name'}`. **Esto solo funciona con conexiones de base de datos.** Ten en cuenta que esta función se ejecutará en el evento `onSubmit` del formulario, así que procura que sea simple y rápida.

Esta funcionalidad está en beta. Si encuentras un error, abre un [issue](https://github.com/auth0/lock/issues/new) en GitHub.

### leeway {Integer}

La opción `leeway` puede establecerse como un entero (un valor en segundos) para tener en cuenta la desincronización del reloj en el vencimiento del <Tooltip tip="ID Token: Credencial destinada al propio cliente, en lugar de acceder a un recurso." cta="Ver glosario" href="/es/docs/glossary?term=ID+Token">ID Token</Tooltip>. Normalmente, el valor no supera uno o dos minutos.

`leeway: 30`
