#5 added signup screen
This commit is contained in:
parent
5bc0e51f8d
commit
c6e53ff45c
1 changed files with 54 additions and 0 deletions
|
@ -0,0 +1,54 @@
|
|||
package be.ugent.sel.studeez.screens.sign_up
|
||||
|
||||
import androidx.compose.foundation.layout.Arrangement
|
||||
import androidx.compose.foundation.layout.Column
|
||||
import androidx.compose.foundation.layout.fillMaxHeight
|
||||
import androidx.compose.foundation.layout.fillMaxWidth
|
||||
import androidx.compose.foundation.rememberScrollState
|
||||
import androidx.compose.foundation.verticalScroll
|
||||
import androidx.compose.runtime.Composable
|
||||
import androidx.compose.runtime.getValue
|
||||
import androidx.compose.ui.Alignment
|
||||
import androidx.compose.ui.Modifier
|
||||
import androidx.hilt.navigation.compose.hiltViewModel
|
||||
import be.ugent.sel.studeez.common.composable.*
|
||||
import be.ugent.sel.studeez.common.ext.basicButton
|
||||
import be.ugent.sel.studeez.common.ext.fieldModifier
|
||||
import be.ugent.sel.studeez.common.ext.textButton
|
||||
import be.ugent.sel.studeez.resources
|
||||
import be.ugent.sel.studeez.R.string as AppText
|
||||
|
||||
@Composable
|
||||
fun SignUpScreen(
|
||||
openAndPopUp: (String, String) -> Unit,
|
||||
modifier: Modifier = Modifier,
|
||||
viewModel: SignUpViewModel = hiltViewModel()
|
||||
) {
|
||||
val uiState by viewModel.uiState
|
||||
val fieldModifier = Modifier.fieldModifier()
|
||||
|
||||
SecondaryScreenToolbar(title = resources().getString(AppText.create_account)) {
|
||||
Column(
|
||||
modifier = modifier
|
||||
.fillMaxWidth()
|
||||
.fillMaxHeight()
|
||||
.verticalScroll(rememberScrollState()),
|
||||
verticalArrangement = Arrangement.Center,
|
||||
horizontalAlignment = Alignment.CenterHorizontally
|
||||
) {
|
||||
EmailField(uiState.email, viewModel::onEmailChange, fieldModifier)
|
||||
PasswordField(uiState.password, viewModel::onPasswordChange, fieldModifier)
|
||||
RepeatPasswordField(uiState.repeatPassword, viewModel::onRepeatPasswordChange, fieldModifier)
|
||||
|
||||
BasicButton(AppText.create_account, Modifier.basicButton()) {
|
||||
viewModel.onSignUpClick(openAndPopUp)
|
||||
}
|
||||
|
||||
BasicTextButton(AppText.already_user, Modifier.textButton()) {
|
||||
viewModel.onLoginScreenClick(openAndPopUp)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
Reference in a new issue