Moved pending username to new global state
Some checks failed
Build Crate / build (push) Failing after 1m45s
Some checks failed
Build Crate / build (push) Failing after 1m45s
This commit is contained in:
@@ -60,10 +60,10 @@ fn forgot_password_form_capsule<G: Html>(
|
||||
) -> View<G> {
|
||||
// If there's a tentative username, set it
|
||||
let global_state = Reactor::<G>::from_cx(cx).get_global_state::<AppStateRx>(cx);
|
||||
if let Some(username) = (*global_state.auth.username.get()).clone() {
|
||||
state.username.set(username);
|
||||
global_state.auth.username.set(None);
|
||||
}
|
||||
state
|
||||
.username
|
||||
.set((*global_state.auth.pending_username.get()).clone());
|
||||
global_state.auth.pending_username.set(String::new());
|
||||
|
||||
let close_modal = move |_event: Event| {
|
||||
#[cfg(client)]
|
||||
|
||||
@@ -60,10 +60,10 @@ fn login_form_capsule<G: Html>(
|
||||
) -> View<G> {
|
||||
// If there's a tentative username, set it
|
||||
let global_state = Reactor::<G>::from_cx(cx).get_global_state::<AppStateRx>(cx);
|
||||
if let Some(username) = (*global_state.auth.username.get()).clone() {
|
||||
state.username.set(username);
|
||||
global_state.auth.username.set(None);
|
||||
}
|
||||
state
|
||||
.username
|
||||
.set((*global_state.auth.pending_username.get()).clone());
|
||||
global_state.auth.pending_username.set(String::new());
|
||||
|
||||
let close_modal = move |_event: Event| {
|
||||
#[cfg(client)]
|
||||
@@ -85,8 +85,8 @@ fn login_form_capsule<G: Html>(
|
||||
// Update tentative username
|
||||
global_state
|
||||
.auth
|
||||
.username
|
||||
.set(Some((*state.username.get()).clone()));
|
||||
.pending_username
|
||||
.set((*state.username.get()).clone());
|
||||
|
||||
// Open new modal
|
||||
global_state
|
||||
|
||||
@@ -109,8 +109,8 @@ fn register_form_capsule<G: Html>(
|
||||
// Update tentative username
|
||||
global_state
|
||||
.auth
|
||||
.username
|
||||
.set(Some((*state.username.get()).clone()));
|
||||
.pending_username
|
||||
.set((*state.username.get()).clone());
|
||||
|
||||
// Open login modal
|
||||
global_state.modals_open.login.set(OpenState::Open);
|
||||
|
||||
@@ -21,6 +21,7 @@ pub struct AppState {
|
||||
#[rx(alias = "AuthDataRx")]
|
||||
pub struct AuthData {
|
||||
pub state: LoginState,
|
||||
pub pending_username: String,
|
||||
pub username: Option<String>,
|
||||
pub remember_me: Option<bool>,
|
||||
pub auth_info: Option<WebAuthInfo>,
|
||||
@@ -89,6 +90,7 @@ pub async fn get_build_state() -> AppState {
|
||||
AppState {
|
||||
auth: AuthData {
|
||||
state: LoginState::Unknown,
|
||||
pending_username: String::new(),
|
||||
username: None,
|
||||
remember_me: None,
|
||||
auth_info: None,
|
||||
|
||||
Reference in New Issue
Block a user