Merge branch 'main' into feat/dashboard-button

# Conflicts:
#	src/components/mod.rs
This commit is contained in:
meraghon committed 2025-12-05 08:08:23 -05:00
commit 1191694531
5 files changed
+39 -18

No files matched your search

+8 -2
View File
@@ -1,4 +1,5 @@
use crate::common::ValueType;
use crate::components::utils::create_unique_id;
use leptos::prelude::*;
use std::collections::HashMap;
@@ -7,10 +8,13 @@ pub fn Checkbox(
#[prop()] checked: Signal<bool>,
#[prop(into)] on_change: Callback<(), ()>,
#[prop(into)] value: String,
#[prop(into)] name: String,
#[prop(default = RwSignal::new(false))] disabled: RwSignal<bool>,
) -> impl IntoView {
let id = create_unique_id(&name, &value);
view! {
<label for=value class="flex items-center">
<label for=id class="flex items-center">
<input
// Using the "peer" class links this input with the div "peer" at the same level.
// By using the "peer-checked" selector this div can toggle states based on this
@@ -19,7 +23,8 @@ pub fn Checkbox(
relative peer shrink-0
hidden"
type="checkbox"
id=value.clone()
id=id.clone()
name=name.clone()
on:change=move |_| on_change.run(())
prop:checked=checked
disabled=disabled
@@ -109,6 +114,7 @@ pub fn CheckboxList(
on_change=on_change
// The actual selected values are tracked by this element, not by the checkboxes themselves.
value=item.clone()
name=data_member.clone()
disabled=disabled
/>
}