StaticscreenUtility FeatureLanguage change options including the target language code
Options for changing the language/locale during the authentication flow
Additional custom fields to be submitted along with the language change. Custom fields should be prefixed with 'ulp-'.
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.
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 methods handles allows signup via different social identifiers. Eg: Google, Facebook etc.
import SignupPassword from "@auth0/auth0-acul-js/signup-id";
const signupIdManager = new SignupPassword();
const { transaction } = signupIdManager;
//get social connections
const socialConnection = transaction.alternateConnections; //eg: "google-oauth2"
const signupParams = {
connection : socialConnection[0].name, // "google-oauth2"
};
signupIdManager.federatedSignup(signupParams);
This methods handles signup-password related screen configuration. It allows to proceed with registering signup password along with signup identifiers passed in previous screen
import SignupPassword from "@auth0/auth0-acul-js/signup-password";
const signupPasswordManager = new SignupPassword();
const { transaction, screen } = signupPasswordManager;
//get mandatory & optional identifiers required for signup-password screen to proceed
const mandatoryIdentifier = transaction.getRequiredIdentifiers(); //eg: email
const optionalIdentifiers = transaction.getOptionalIdentifiers() //eg: phone
//get signup data submitted on previous screen from previous screen
const data = transaction.screen.getScreenData(); //eg: email, phone
const signupParams = {
email : data.email,
password: "******"
};
signupPasswordManager.signup(signupParams);
This method handles switching between different database connections. It allows users to switch to a different connection during the signup process.
import SignupPassword from "@auth0/auth0-acul-js/signup-password";
const signupPasswordManager = new SignupPassword();
// Function to handle connection switching
const handleSwitchConnection = (connectionName: string) => {
signupPasswordManager.switchConnection({ connection: connectionName });
};
// Switch to different connection strategies
handleSwitchConnection('email'); // Switch to email-based authentication
handleSwitchConnection('sms'); // Switch to SMS-based authentication
Utility FeatureValidates a password string against the current transaction's password policy.
This method retrieves the password policy from the current transaction context
and delegates the actual validation to coreValidatePassword.
It returns an array of validation results, each containing:
code: the identifier of the password rule,policy: a user-friendly description of the rule,isValid: boolean indicating if the password passed that rule.The password string to validate.
import SignupPassword from "@auth0/auth0-acul-js/signup-password";
const signupPasswordManager = new SignupPassword();
const validationResults = signupPasswordManager.validatePassword('MyP@ssw0rd!');
console.log(validationResults);
// [
// { code: 'password-policy-length-at-least', policy: 'At least 12 characters', isValid: false },
// { code: 'password-policy-lower-case', policy: 'Lowercase letters (a-z)', isValid: true },
// ...
// ]
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.