Move the history provider into the context (#3048)

* move history providers into a separate crate

* start moving route providers into the renderers

* clean up intoroutable

* remove into routable

* fix router tests

* Provide history providers in each renderer

* implement nested routers

* move the lens out of the history crate

* re-export dioxus history trait in the prelude

* also re-export the history function

* fix history doctests

* some light cleanups

---------

Co-authored-by: Jonathan Kelley <jkelleyrtp@gmail.com>
This commit is contained in:
Evan AlmloffandJonathan Kelley authored and GitHub committed 2024-10-31 12:44:04 -07:00
1 parent e5a1a62644
commit 281087469a
48 files changed
+875 -1419

No files matched your search

+2 -1
View File
@@ -14,6 +14,7 @@ rust-version = "1.79.0"
dioxus-core = { workspace = true }
dioxus-html = { workspace = true, optional = true }
dioxus-document = { workspace = true, optional = true }
dioxus-history = { workspace = true, optional = true }
dioxus-core-macro = { workspace = true, optional = true }
dioxus-config-macro = { workspace = true, optional = true }
dioxus-hooks = { workspace = true, optional = true }
@@ -27,7 +28,7 @@ dioxus = { workspace = true }
default = ["macro", "html", "signals", "hooks"]
signals = ["dep:dioxus-signals"]
macro = ["dep:dioxus-core-macro", "dep:dioxus-rsx", "dep:dioxus-config-macro"]
html = ["dep:dioxus-html", "dep:dioxus-document"]
html = ["dep:dioxus-html", "dep:dioxus-document", "dep:dioxus-history"]
hooks = ["dep:dioxus-hooks"]
[package.metadata.docs.rs]
+7
View File
@@ -19,6 +19,9 @@ pub use dioxus_html as html;
#[cfg(feature = "html")]
pub use dioxus_document as document;
#[cfg(feature = "html")]
pub use dioxus_history as history;
#[cfg(feature = "macro")]
pub use dioxus_rsx as rsx;
@@ -26,6 +29,10 @@ pub use dioxus_rsx as rsx;
pub use dioxus_core_macro as core_macro;
pub mod prelude {
#[cfg(feature = "html")]
#[cfg_attr(docsrs, doc(cfg(feature = "html")))]
pub use dioxus_history::{history, History};
#[cfg(feature = "hooks")]
pub use crate::hooks::*;