use crate::*;
#[derive(Clone, Copy, Data, New)]
pub struct UsePropsDemo {
#[get(pub, type(copy))]
#[set(pub)]
pub parent_message: Signal<String>,
#[get(pub, type(copy))]
#[set(pub)]
pub child_response: Signal<String>,
}
#[derive(Clone, Copy, Data, New)]
pub struct UseTwoWayDemo {
#[get(pub, type(copy))]
#[set(pub)]
pub shared_text: Signal<String>,
#[get(pub, type(copy))]
#[set(pub)]
pub shared_count: Signal<i32>,
}
#[derive(Clone, Copy, Data, New)]
pub struct UseCrossComponentDemo {
#[get(pub, type(copy))]
#[set(pub)]
pub celsius: Signal<f64>,
#[get(pub, type(copy))]
#[set(pub)]
pub fahrenheit: Signal<f64>,
#[get(pub, type(copy))]
#[set(pub)]
pub red: Signal<i32>,
#[get(pub, type(copy))]
#[set(pub)]
pub green: Signal<i32>,
#[get(pub, type(copy))]
#[set(pub)]
pub blue: Signal<i32>,
#[get(pub, type(copy))]
#[set(pub)]
pub hex_color: Signal<String>,
}
#[derive(Clone, Copy, Data, New)]
pub struct UseTypedPropsDemo {
#[get(pub, type(copy))]
#[set(pub)]
pub disabled: Signal<bool>,
#[get(pub, type(copy))]
#[set(pub)]
pub max_count: Signal<i32>,
#[get(pub, type(copy))]
#[set(pub)]
pub current_count: Signal<i32>,
}
#[derive(Clone, Copy, Data, New)]
pub struct UseCustomCallbackDemo {
#[get(pub, type(copy))]
#[set(pub)]
pub text_value: Signal<String>,
#[get(pub, type(copy))]
#[set(pub)]
pub last_event: Signal<String>,
}