Package-level declarations

The RegisterScreen is a key component of the account module. It is responsible for handling user registration in the Spezi Framework. This screen provides an interface for users to create a new account by entering their email, password, and other required information.

Usage

To use the Account module in your project, add the following dependency to your build.gradle file:

dependencies {
implementation(":core:account")`
}

The Account module currently provides a Firebase implementation for user authentication. Other authentication mechanism can be provided by implementing the SignInHandler interface. It is also planned to support additional authentication providers in the future and also allow custom user input fields for registration.

In the current state of the module, the user can navigate between the LoginScreen and RegisterScreen using the navigation component and providing the AccountNavigationEvent.

Types

Link copied to clipboard
sealed interface Action
Link copied to clipboard
data class FieldState(val value: String = "", val error: String? = null)
Link copied to clipboard
data class RegisterUiState(val email: FieldState = FieldState(), val password: FieldState = FieldState(), val isFormValid: Boolean = false, val isPasswordVisible: Boolean = false, val isRegisterButtonEnabled: Boolean = false)
Link copied to clipboard
Link copied to clipboard

Functions

Link copied to clipboard
fun DatePickerDialog(onDateSelected: (LocalDate) -> Unit, onDismiss: () -> Unit)
Link copied to clipboard
fun RegisterScreen(uiState: RegisterUiState, onAction: (Action) -> Unit)
fun RegisterScreen(email: String, password: String)