From f08fee1246aa123e9b29f4a09fee151d13379b1f Mon Sep 17 00:00:00 2001 From: Lucas Vas Date: Sun, 4 Jan 2026 23:18:02 -0500 Subject: [PATCH] refactor: move all lists into their own module --- src/components/lists/mod.rs | 6 ++++++ src/components/{ => lists/multi}/checkbox.rs | 4 +--- src/components/{ => lists/multi}/chips.rs | 2 +- src/components/lists/multi/mod.rs | 6 ++++++ src/components/{lists.rs => lists/multi/utils.rs} | 0 src/components/lists/single/mod.rs | 5 +++++ src/components/{ => lists/single}/radio.rs | 0 src/components/{ => lists/single}/select.rs | 0 src/components/mod.rs | 9 +++------ 9 files changed, 22 insertions(+), 10 deletions(-) create mode 100644 src/components/lists/mod.rs rename src/components/{ => lists/multi}/checkbox.rs (99%) rename src/components/{ => lists/multi}/chips.rs (99%) create mode 100644 src/components/lists/multi/mod.rs rename src/components/{lists.rs => lists/multi/utils.rs} (100%) create mode 100644 src/components/lists/single/mod.rs rename src/components/{ => lists/single}/radio.rs (100%) rename src/components/{ => lists/single}/select.rs (100%) diff --git a/src/components/lists/mod.rs b/src/components/lists/mod.rs new file mode 100644 index 0000000..3939485 --- /dev/null +++ b/src/components/lists/mod.rs @@ -0,0 +1,6 @@ +mod multi; +mod single; + +pub use { + multi::*, single::* +}; \ No newline at end of file diff --git a/src/components/checkbox.rs b/src/components/lists/multi/checkbox.rs similarity index 99% rename from src/components/checkbox.rs rename to src/components/lists/multi/checkbox.rs index 8602376..cf07dd0 100644 --- a/src/components/checkbox.rs +++ b/src/components/lists/multi/checkbox.rs @@ -2,8 +2,8 @@ use crate::common::ValueType; use crate::components::utils::create_unique_id; use leptos::prelude::*; use std::collections::HashMap; +use super::utils::use_selectable_list; use crate::components::ValidationState; -use crate::components::lists::use_selectable_list; /// # Checkbox Component /// This component should only be used from within a [`CheckboxList`] component. @@ -81,8 +81,6 @@ pub fn Checkbox( } } - - /// # Checkbox List Component /// This component creates a list of checkboxes, each with a specific value. The values are passed /// through a prop rather than manually creating children. diff --git a/src/components/chips.rs b/src/components/lists/multi/chips.rs similarity index 99% rename from src/components/chips.rs rename to src/components/lists/multi/chips.rs index 36098a1..35197ad 100644 --- a/src/components/chips.rs +++ b/src/components/lists/multi/chips.rs @@ -3,7 +3,7 @@ use crate::components::utils::create_unique_id; use leptos::prelude::*; use std::collections::HashMap; use crate::components::ValidationState; -use crate::components::lists::use_selectable_list; +use super::utils::use_selectable_list; /// # Chip Component /// diff --git a/src/components/lists/multi/mod.rs b/src/components/lists/multi/mod.rs new file mode 100644 index 0000000..c3fcbbc --- /dev/null +++ b/src/components/lists/multi/mod.rs @@ -0,0 +1,6 @@ +mod utils; +mod checkbox; +mod chips; + +pub use checkbox::*; +pub use chips::*; \ No newline at end of file diff --git a/src/components/lists.rs b/src/components/lists/multi/utils.rs similarity index 100% rename from src/components/lists.rs rename to src/components/lists/multi/utils.rs diff --git a/src/components/lists/single/mod.rs b/src/components/lists/single/mod.rs new file mode 100644 index 0000000..f54cd68 --- /dev/null +++ b/src/components/lists/single/mod.rs @@ -0,0 +1,5 @@ +pub mod radio; +pub mod select; + +pub use radio::*; +pub use select::*; \ No newline at end of file diff --git a/src/components/radio.rs b/src/components/lists/single/radio.rs similarity index 100% rename from src/components/radio.rs rename to src/components/lists/single/radio.rs diff --git a/src/components/select.rs b/src/components/lists/single/select.rs similarity index 100% rename from src/components/select.rs rename to src/components/lists/single/select.rs diff --git a/src/components/mod.rs b/src/components/mod.rs index b3fbc0c..d9d9084 100644 --- a/src/components/mod.rs +++ b/src/components/mod.rs @@ -1,20 +1,17 @@ mod action_button; mod banner; -mod checkbox; -mod chips; mod dashboard_button; mod loading; mod multi_entry; mod panel; -mod radio; mod row; -mod select; mod text_field; mod utils; mod validated_form; mod lists; pub use self::{ - action_button::*, banner::*, checkbox::*, chips::*, dashboard_button::*, loading::*, - multi_entry::*, panel::*, radio::*, row::*, select::*, text_field::*, validated_form::* + action_button::*, banner::*, dashboard_button::*, lists::*, + loading::*, multi_entry::*, panel::*, row::*, text_field::*, + validated_form::* };