use leptos::prelude::*;
use canonrs_core::NavigationState;
#[component]
pub fn NavigationProvider(
children: Children,
) -> impl IntoView {
let state = RwSignal::new(NavigationState::new());
provide_context(state);
view! {
{children()}
}
}
pub fn use_navigation_state() -> RwSignal<NavigationState> {
use_context::<RwSignal<NavigationState>>()
.expect("NavigationProvider not found in component tree")
}