we successfully compiled and wen from auth state to login state and auth state

This commit is contained in:
filipriec
2025-04-13 17:47:00 +02:00
parent 1dd5f685a6
commit 3d0a9f2082
14 changed files with 120 additions and 114 deletions

View File

@@ -14,6 +14,7 @@ use ratatui::layout::{Constraint, Direction, Layout};
use ratatui::Frame;
use crate::state::pages::form::FormState;
use crate::state::pages::auth::AuthState;
use crate::state::pages::auth::LoginState;
use crate::state::pages::auth::RegisterState;
use crate::state::state::AppState;
@@ -21,6 +22,7 @@ pub fn render_ui(
f: &mut Frame,
form_state: &mut FormState,
auth_state: &mut AuthState,
login_state: &LoginState,
register_state: &RegisterState,
theme: &Theme,
is_edit_mode: bool,
@@ -60,9 +62,9 @@ pub fn render_ui(
f,
main_content_area,
theme,
auth_state,
login_state,
app_state,
auth_state.current_field < 2
login_state.current_field < 2
);
} else if app_state.ui.show_admin {
// Create temporary AdminPanelState for rendering

View File

@@ -8,8 +8,9 @@ use crate::modes::handlers::mode_manager::{AppMode, ModeManager};
use crate::services::grpc_client::GrpcClient;
use crate::services::ui_service::UiService;
use crate::state::canvas_state::CanvasState;
use crate::state::pages::auth::AuthState;
use crate::state::pages::form::FormState;
use crate::state::pages::auth::AuthState;
use crate::state::pages::auth::LoginState;
use crate::state::pages::auth::RegisterState;
use crate::state::state::AppState;
// Import SaveOutcome
@@ -25,6 +26,7 @@ pub async fn run_ui() -> Result<(), Box<dyn std::error::Error>> {
let theme = Theme::from_str(&config.colors.theme);
let mut auth_state = AuthState::default();
let mut register_state = RegisterState::default();
let mut login_state = LoginState::default();
// Initialize app_state first
let mut app_state = AppState::new()?;
@@ -55,6 +57,7 @@ pub async fn run_ui() -> Result<(), Box<dyn std::error::Error>> {
f,
&mut form_state,
&mut auth_state,
&login_state,
&register_state,
&theme,
is_edit_mode,
@@ -108,14 +111,15 @@ pub async fn run_ui() -> Result<(), Box<dyn std::error::Error>> {
.handle_event(
event,
&config,
&mut terminal, // Pass terminal mutably
&mut terminal,
&mut grpc_client,
&mut command_handler,
&mut form_state,
&mut auth_state,
&mut login_state,
&mut register_state,
&mut app_state,
total_count, // Pass the count *before* potential save
total_count,
&mut current_position,
)
.await;
@@ -255,14 +259,13 @@ pub async fn run_ui() -> Result<(), Box<dyn std::error::Error>> {
}
} else if app_state.ui.show_login {
if !event_handler.is_edit_mode {
let current_input = auth_state.get_current_input();
let current_input = login_state.get_current_input();
let max_cursor_pos = if !current_input.is_empty() {
current_input.len() - 1
} else {
0
};
auth_state.current_cursor_pos =
event_handler.ideal_cursor_column.min(max_cursor_pos);
login_state.current_cursor_pos = event_handler.ideal_cursor_column.min(max_cursor_pos);
}
}