moved add_table to be feature based
This commit is contained in:
@@ -1,6 +1,4 @@
|
||||
// src/components/admin.rs
|
||||
pub mod add_table;
|
||||
pub mod add_logic;
|
||||
|
||||
pub use add_table::*;
|
||||
pub use add_logic::*;
|
||||
|
||||
@@ -23,7 +23,7 @@ use crate::buffer::state::BufferState;
|
||||
use crate::modes::handlers::event::EventOutcome;
|
||||
use crate::pages::register;
|
||||
use crate::pages::login;
|
||||
use crate::tui::functions::common::add_table::handle_delete_selected_columns;
|
||||
use crate::pages::admin_panel::add_table::logic::handle_delete_selected_columns;
|
||||
use crate::pages::routing::{Router, Page};
|
||||
use anyhow::Result;
|
||||
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
// src/functions/modes/navigation.rs
|
||||
|
||||
pub mod add_table_nav;
|
||||
pub mod add_logic_nav;
|
||||
|
||||
@@ -5,9 +5,9 @@ use crate::buffer::{AppView, BufferState, switch_buffer, toggle_buffer_list};
|
||||
use crate::sidebar::toggle_sidebar;
|
||||
use crate::search::event::handle_search_palette_event;
|
||||
use crate::functions::modes::navigation::add_logic_nav;
|
||||
use crate::functions::modes::navigation::add_logic_nav::SaveLogicResultSender;
|
||||
use crate::functions::modes::navigation::add_table_nav::SaveTableResultSender;
|
||||
use crate::functions::modes::navigation::add_table_nav;
|
||||
use crate::functions::add_logic_nav::SaveLogicResultSender;
|
||||
use crate::pages::admin_panel::add_table::nav::SaveTableResultSender;
|
||||
use crate::pages::admin_panel::add_table::nav;
|
||||
use crate::pages::register::suggestions::RoleSuggestionsProvider;
|
||||
use crate::pages::admin::main::logic::handle_admin_navigation;
|
||||
use crate::pages::admin::admin::tui::handle_admin_selection;
|
||||
@@ -517,7 +517,7 @@ impl EventHandler {
|
||||
Page::AddTable(state) => {
|
||||
if state.handle_movement(ma) {
|
||||
// Keep UI focus consistent with inputs vs. outer elements
|
||||
use crate::state::pages::add_table::AddTableFocus;
|
||||
use crate::pages::admin_panel::add_table::state::AddTableFocus;
|
||||
let is_canvas_input = matches!(
|
||||
state.current_focus,
|
||||
AddTableFocus::InputTableName
|
||||
@@ -581,7 +581,7 @@ impl EventHandler {
|
||||
if let Page::AddTable(add_table_state) = &mut router.current {
|
||||
let client_clone = self.grpc_client.clone();
|
||||
let sender_clone = self.save_table_result_sender.clone();
|
||||
if add_table_nav::handle_add_table_navigation(
|
||||
if nav::handle_add_table_navigation(
|
||||
key_event,
|
||||
config,
|
||||
app_state,
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
// src/pages/admin/admin/state.rs
|
||||
use ratatui::widgets::ListState;
|
||||
use crate::state::pages::add_table::AddTableState;
|
||||
use crate::pages::admin_panel::add_table::state::AddTableState;
|
||||
use crate::state::pages::add_logic::AddLogicState;
|
||||
use crate::movement::{move_focus, MovementAction};
|
||||
use crate::state::app::state::AppState;
|
||||
|
||||
@@ -3,7 +3,7 @@ use crate::pages::admin::{AdminFocus, AdminState};
|
||||
use crate::state::app::state::AppState;
|
||||
use crate::config::binds::config::Config;
|
||||
use crate::buffer::state::{BufferState, AppView};
|
||||
use crate::state::pages::add_table::{AddTableState, LinkDefinition};
|
||||
use crate::pages::admin_panel::add_table::state::{AddTableState, LinkDefinition};
|
||||
use ratatui::widgets::ListState;
|
||||
use crate::state::pages::add_logic::{AddLogicState, AddLogicFocus}; // Added AddLogicFocus import
|
||||
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
// src/tui/functions/common/add_table.rs
|
||||
use crate::state::pages::add_table::{
|
||||
AddTableFocus, AddTableState, ColumnDefinition, IndexDefinition,
|
||||
};
|
||||
// src/pages/admin_panel/add_table/logic.rs
|
||||
use crate::pages::admin_panel::add_table::state;
|
||||
use crate::pages::admin_panel::add_table::state::{AddTableState, AddTableFocus, IndexDefinition, ColumnDefinition};
|
||||
use crate::services::GrpcClient;
|
||||
use anyhow::{anyhow, Result};
|
||||
use common::proto::komp_ac::table_definition::{
|
||||
6
client/src/pages/admin_panel/add_table/mod.rs
Normal file
6
client/src/pages/admin_panel/add_table/mod.rs
Normal file
@@ -0,0 +1,6 @@
|
||||
// src/pages/admin_panel/add_table/mod.rs
|
||||
|
||||
pub mod ui;
|
||||
pub mod nav;
|
||||
pub mod state;
|
||||
pub mod logic;
|
||||
@@ -1,12 +1,13 @@
|
||||
// src/functions/modes/navigation/add_table_nav.rs
|
||||
// src/pages/admin_panel/add_table/nav.rs
|
||||
|
||||
use crate::config::binds::config::Config;
|
||||
use crate::state::{
|
||||
app::state::AppState,
|
||||
pages::add_table::{AddTableFocus, AddTableState},
|
||||
};
|
||||
use crate::pages::admin_panel::add_table::state::{AddTableFocus, AddTableState};
|
||||
use crossterm::event::{KeyEvent};
|
||||
use ratatui::widgets::TableState;
|
||||
use crate::tui::functions::common::add_table::{handle_add_column_action, handle_save_table_action};
|
||||
use crate::pages::admin_panel::add_table::logic::{handle_add_column_action, handle_save_table_action};
|
||||
use crate::ui::handlers::context::DialogPurpose;
|
||||
use crate::services::GrpcClient;
|
||||
use tokio::sync::mpsc;
|
||||
@@ -1,4 +1,4 @@
|
||||
// src/state/pages/add_table.rs
|
||||
// src/pages/admin_panel/add_table/state.rs
|
||||
|
||||
use canvas::{DataProvider, AppMode};
|
||||
use ratatui::widgets::TableState;
|
||||
@@ -1,7 +1,7 @@
|
||||
// src/components/admin/add_table.rs
|
||||
// src/pages/admin_panel/add_table/ui.rs
|
||||
use crate::config::colors::themes::Theme;
|
||||
use crate::state::app::state::AppState;
|
||||
use crate::state::pages::add_table::{AddTableFocus, AddTableState};
|
||||
use crate::pages::admin_panel::add_table::state::{AddTableFocus, AddTableState};
|
||||
use canvas::{render_canvas, FormEditor};
|
||||
use ratatui::{
|
||||
layout::{Alignment, Constraint, Direction, Layout, Rect},
|
||||
3
client/src/pages/admin_panel/mod.rs
Normal file
3
client/src/pages/admin_panel/mod.rs
Normal file
@@ -0,0 +1,3 @@
|
||||
// src/pages/admin_panel/mod.rs
|
||||
|
||||
pub mod add_table;
|
||||
@@ -6,3 +6,4 @@ pub mod login;
|
||||
pub mod register;
|
||||
pub mod forms;
|
||||
pub mod admin;
|
||||
pub mod admin_panel;
|
||||
|
||||
@@ -2,8 +2,8 @@
|
||||
use crate::state::pages::{
|
||||
auth::AuthState,
|
||||
add_logic::AddLogicState,
|
||||
add_table::AddTableState,
|
||||
};
|
||||
use crate::pages::admin_panel::add_table::state::AddTableState;
|
||||
use crate::pages::admin::AdminState;
|
||||
use crate::pages::forms::FormState;
|
||||
use crate::pages::login::LoginFormState;
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
// src/state/pages.rs
|
||||
|
||||
pub mod auth;
|
||||
pub mod add_table;
|
||||
pub mod add_logic;
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
// src/tui/functions/common.rs
|
||||
|
||||
pub mod logout;
|
||||
pub mod add_table;
|
||||
|
||||
@@ -2,9 +2,9 @@
|
||||
|
||||
use crate::components::{
|
||||
admin::add_logic::render_add_logic,
|
||||
admin::render_add_table,
|
||||
render_background,
|
||||
};
|
||||
use crate::pages::admin_panel::add_table::ui::render_add_table;
|
||||
use crate::pages::login::render_login;
|
||||
use crate::pages::register::render_register;
|
||||
use crate::pages::intro::render_intro;
|
||||
|
||||
Reference in New Issue
Block a user