diff --git a/Cargo.toml b/Cargo.toml index e770167ea..b0d9df3f5 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -40,7 +40,7 @@ members = [ exclude = ["benchmarks", "examples"] [workspace.package] -version = "0.7.0-preview" +version = "0.7.0-preview2" rust-version = "1.75" [workspace.dependencies] @@ -49,23 +49,23 @@ any_spawner = { path = "./any_spawner/", version = "0.1" } const_str_slice_concat = { path = "./const_str_slice_concat", version = "0.1" } either_of = { path = "./either_of/", version = "0.1" } hydration_context = { path = "./hydration_context", version = "0.1" } -leptos = { path = "./leptos", version = "0.7.0-preview" } -leptos_config = { path = "./leptos_config", version = "0.7.0-preview" } -leptos_dom = { path = "./leptos_dom", version = "0.7.0-preview" } -leptos_hot_reload = { path = "./leptos_hot_reload", version = "0.7.0-preview" } -leptos_integration_utils = { path = "./integrations/utils", version = "0.7.0-preview" } -leptos_macro = { path = "./leptos_macro", version = "0.7.0-preview" } -leptos_reactive = { path = "./leptos_reactive", version = "0.7.0-preview" } -leptos_router = { path = "./router", version = "0.7.0-preview" } -leptos_server = { path = "./leptos_server", version = "0.7.0-preview" } -leptos_meta = { path = "./meta", version = "0.7.0-preview" } +leptos = { path = "./leptos", version = "0.7.0-preview2" } +leptos_config = { path = "./leptos_config", version = "0.7.0-preview2" } +leptos_dom = { path = "./leptos_dom", version = "0.7.0-preview2" } +leptos_hot_reload = { path = "./leptos_hot_reload", version = "0.7.0-preview2" } +leptos_integration_utils = { path = "./integrations/utils", version = "0.7.0-preview2" } +leptos_macro = { path = "./leptos_macro", version = "0.7.0-preview2" } +leptos_reactive = { path = "./leptos_reactive", version = "0.7.0-preview2" } +leptos_router = { path = "./router", version = "0.7.0-preview2" } +leptos_server = { path = "./leptos_server", version = "0.7.0-preview2" } +leptos_meta = { path = "./meta", version = "0.7.0-preview2" } next_tuple = { path = "./next_tuple", version = "0.1.0-preview" } oco_ref = { path = "./oco", version = "0.2" } or_poisoned = { path = "./or_poisoned", version = "0.1" } reactive_graph = { path = "./reactive_graph", version = "0.1.0-preview" } -server_fn = { path = "./server_fn", version = "0.7.0-preview" } -server_fn_macro = { path = "./server_fn_macro", version = "0.7.0-preview" } -server_fn_macro_default = { path = "./server_fn/server_fn_macro_default", version = "0.7.0-preview" } +server_fn = { path = "./server_fn", version = "0.7.0-preview2" } +server_fn_macro = { path = "./server_fn_macro", version = "0.7.0-preview2" } +server_fn_macro_default = { path = "./server_fn/server_fn_macro_default", version = "0.7.0-preview2" } tachys = { path = "./tachys", version = "0.1.0-preview" } [profile.release] diff --git a/examples/counter/src/lib.rs b/examples/counter/src/lib.rs index 2ac97191a..9136bba9e 100644 --- a/examples/counter/src/lib.rs +++ b/examples/counter/src/lib.rs @@ -1,4 +1,4 @@ -use leptos::{component, create_signal, prelude::*, view, IntoView}; +use leptos::prelude::*; /// A simple counter component. /// @@ -10,7 +10,7 @@ pub fn SimpleCounter( /// The change that should be applied each time the button is clicked. step: i32, ) -> impl IntoView { - let (value, set_value) = create_signal(initial_value); + let (value, set_value) = signal(initial_value); view! {
diff --git a/examples/counter/src/main.rs b/examples/counter/src/main.rs index 20f7a40d9..6cdabd06c 100644 --- a/examples/counter/src/main.rs +++ b/examples/counter/src/main.rs @@ -1,15 +1,10 @@ use counter::SimpleCounter; -use leptos::*; +use leptos::prelude::*; pub fn main() { _ = console_log::init_with_level(log::Level::Debug); console_error_panic_hook::set_once(); mount_to_body(|| { - view! { - - } + view! { } }) } diff --git a/examples/counters/src/lib.rs b/examples/counters/src/lib.rs index 08f1dc1e1..be1fc8d26 100644 --- a/examples/counters/src/lib.rs +++ b/examples/counters/src/lib.rs @@ -1,14 +1,5 @@ -use leptos::{ - component, - prelude::*, - reactive_graph::{ - owner::{provide_context, use_context}, - signal::{ - create_signal, ArcRwSignal, ReadSignal, RwSignal, WriteSignal, - }, - }, - view, For, IntoView, -}; +use leptos::prelude::signal::*; +use leptos::prelude::*; const MANY_COUNTERS: usize = 1000; @@ -49,26 +40,17 @@ pub fn Counters() -> impl IntoView { view! {
- - - + + +

"Total: " - {move || - counters.get() - .iter() - .map(|(_, count)| count.get()) - .sum::() - .to_string() - } - " from " - {move || counters.get().len().to_string()} + + {move || { + counters.get().iter().map(|(_, count)| count.get()).sum::().to_string() + }} + + " from " {move || counters.get().len().to_string()} " counters."

    @@ -76,11 +58,10 @@ pub fn Counters() -> impl IntoView { each=move || counters.get() key=|counter| counter.0 children=move |(id, value)| { - view! { - - } + view! { } } /> +
} @@ -94,13 +75,20 @@ fn Counter(id: usize, value: ArcRwSignal) -> impl IntoView { view! {
  • - ().unwrap_or_default()) } + on:input:target=move |ev| { + value.set(ev.target().value().parse::().unwrap_or_default()) + } /> + {value.clone()} - +
  • } } diff --git a/examples/counters/src/main.rs b/examples/counters/src/main.rs index b5ffa7ecf..7bf20cc9d 100644 --- a/examples/counters/src/main.rs +++ b/examples/counters/src/main.rs @@ -1,5 +1,5 @@ use counters::Counters; -use leptos::*; +use leptos::prelude::*; fn main() { _ = console_log::init_with_level(log::Level::Debug); diff --git a/examples/error_boundary/src/lib.rs b/examples/error_boundary/src/lib.rs index 3ac031182..40f4d8824 100644 --- a/examples/error_boundary/src/lib.rs +++ b/examples/error_boundary/src/lib.rs @@ -1,4 +1,4 @@ -use leptos::{component, prelude::*, signal, view, ErrorBoundary, IntoView}; +use leptos::prelude::*; #[component] pub fn App() -> impl IntoView { @@ -40,8 +40,8 @@ pub fn App() -> impl IntoView {

    // because `value` is `Result`, - "You entered " // it will render the `i32` if it is `Ok`, - // and render nothing and trigger the error boundary + // it will render the `i32` if it is `Ok`, + "You entered " // and render nothing and trigger the error boundary // if it is `Err`. It's a signal, so this will dynamically // update when `value` changes {value} diff --git a/examples/error_boundary/src/main.rs b/examples/error_boundary/src/main.rs index 12c51aef9..317459b7b 100644 --- a/examples/error_boundary/src/main.rs +++ b/examples/error_boundary/src/main.rs @@ -1,12 +1,8 @@ use error_boundary::*; -use leptos::*; +use leptos::prelude::*; pub fn main() { _ = console_log::init_with_level(log::Level::Debug); console_error_panic_hook::set_once(); - mount_to_body(|| { - view! { - - } - }) + mount_to_body(App) } diff --git a/examples/fetch/src/lib.rs b/examples/fetch/src/lib.rs index 2b5cc4380..c23243bcc 100644 --- a/examples/fetch/src/lib.rs +++ b/examples/fetch/src/lib.rs @@ -1,12 +1,4 @@ -use leptos::{ - error::Result, - prelude::*, - reactive_graph::{ - computed::AsyncDerived, - signal::{signal, ArcRwSignal}, - }, - suspend, view, ErrorBoundary, Errors, IntoView, Transition, -}; +use leptos::prelude::*; use serde::{Deserialize, Serialize}; use thiserror::Error; @@ -55,8 +47,7 @@ pub fn fetch_example() -> impl IntoView { // 2) we'd need to make sure there was a thread-local spawner set up let cats = AsyncDerived::new_unsync(move || fetch_cats(cat_count.get())); - let fallback = move |errors: &ArcRwSignal| { - let errors = errors.clone(); + let fallback = move |errors: ArcRwSignal| { let error_list = move || { errors.with(|errors| { errors @@ -86,16 +77,27 @@ pub fn fetch_example() -> impl IntoView { set_cat_count.set(val); } /> + "Loading..."

    }> - + diff --git a/examples/fetch/src/main.rs b/examples/fetch/src/main.rs index 475f34cf3..9faac968f 100644 --- a/examples/fetch/src/main.rs +++ b/examples/fetch/src/main.rs @@ -1,5 +1,5 @@ use fetch::fetch_example; -use leptos::*; +use leptos::prelude::*; pub fn main() { use tracing_subscriber::fmt; diff --git a/examples/js-framework-benchmark/src/lib.rs b/examples/js-framework-benchmark/src/lib.rs index a07087d61..bcd4a2430 100644 --- a/examples/js-framework-benchmark/src/lib.rs +++ b/examples/js-framework-benchmark/src/lib.rs @@ -1,4 +1,4 @@ -use leptos::*; +use leptos::prelude::*; use rand::prelude::*; use std::sync::atomic::{AtomicUsize, Ordering}; static ADJECTIVES: &[&str] = &[ @@ -86,13 +86,8 @@ fn Button( text: &'static str, ) -> impl IntoView { view! { -
    -
    @@ -146,19 +141,20 @@ pub fn App() -> impl IntoView { let is_selected = create_selector(move || selected.get()); view! { -
    -

    "Leptos"

    +
    +

    "Leptos"

    +
    -
    @@ -167,7 +163,7 @@ pub fn App() -> impl IntoView { impl IntoView { } } /> + -
    } } diff --git a/examples/parent_child/src/lib.rs b/examples/parent_child/src/lib.rs index 734c9cac9..cf34f5c10 100644 --- a/examples/parent_child/src/lib.rs +++ b/examples/parent_child/src/lib.rs @@ -1,13 +1,4 @@ -use leptos::{ - callback::{Callback, UnsyncCallback}, - component, - prelude::*, - reactive_graph::{ - owner::{provide_context, use_context}, - signal::{signal, WriteSignal}, - }, - view, IntoView, -}; +use leptos::prelude::*; use web_sys::MouseEvent; // This highlights four different ways that child components can communicate @@ -56,7 +47,10 @@ pub fn App() -> impl IntoView { // Button C: use a regular event listener // setting an event listener on a component like this applies it // to each of the top-level elements the component returns - + // + // TODO sorry I need to take another crack at `on:` here! + // + // // Button D gets its setter from context rather than props @@ -70,14 +64,7 @@ pub fn ButtonA( /// Signal that will be toggled when the button is clicked. setter: WriteSignal, ) -> impl IntoView { - view! { - - - } + view! { } } /// Button B receives a closure @@ -89,13 +76,7 @@ pub fn ButtonB( where F: FnMut(MouseEvent) + 'static, { - view! { - - } + view! { } } use leptos::tachys::view::add_attr::AddAnyAttr; @@ -104,11 +85,7 @@ use leptos::tachys::view::add_attr::AddAnyAttr; /// its click. Instead, the parent component adds an event listener. #[component] pub fn ButtonC() -> impl IntoView + AddAnyAttr { - view! { - - } + view! { } } /// Button D is very similar to Button A, but instead of passing the setter as a prop @@ -118,10 +95,8 @@ pub fn ButtonD() -> impl IntoView { let setter = use_context::().unwrap().0; view! { - + } } diff --git a/examples/parent_child/src/main.rs b/examples/parent_child/src/main.rs index 0c7cd5019..6fe204d0a 100644 --- a/examples/parent_child/src/main.rs +++ b/examples/parent_child/src/main.rs @@ -1,8 +1,8 @@ -use leptos::*; +use leptos::prelude::*; use parent_child::*; pub fn main() { _ = console_log::init_with_level(log::Level::Debug); console_error_panic_hook::set_once(); - mount_to_body(|| view! { }) + mount_to_body(App) } diff --git a/examples/router/src/lib.rs b/examples/router/src/lib.rs index ef980aa26..e60315997 100644 --- a/examples/router/src/lib.rs +++ b/examples/router/src/lib.rs @@ -1,20 +1,8 @@ mod api; use crate::api::*; -use leptos::{ - component, - prelude::*, - reactive_graph::{ - computed::AsyncDerived, - effect::Effect, - owner::{provide_context, use_context, Owner}, - signal::ArcRwSignal, - }, - suspend, - tachys::either::Either, - view, IntoView, Params, Suspense, Transition, -}; -use log::{debug, info}; -use routing::{ +use leptos::either::Either; +use leptos::prelude::*; +use leptos_router::{ components::{ParentRoute, Redirect, Route, Router, Routes}, hooks::{use_location, use_navigate, use_params}, link::A, @@ -22,6 +10,7 @@ use routing::{ params::Params, MatchNestedRoutes, NestedRoute, Outlet, ParamSegment, StaticSegment, }; +use log::{debug, info}; #[derive(Copy, Clone, Debug, PartialEq, Eq)] struct ExampleContext(i32); @@ -66,7 +55,7 @@ pub fn RouterExample() -> impl IntoView { #[component] pub fn ContactRoutes() -> impl MatchNestedRoutes + Clone { view! { - + @@ -87,17 +76,23 @@ pub fn ContactList() -> impl IntoView { let location = use_location(); let contacts = AsyncDerived::new(move || get_contacts(location.search.get())); - let contacts = suspend!( + let contacts = move || { + Suspend(async move { // this data doesn't change frequently so we can use .map().collect() instead of a keyed contacts.await .into_iter() .map(|contact| { view! { -
  • {contact.first_name} " " {contact.last_name}
  • +
  • + + {contact.first_name} " " {contact.last_name} + +
  • } }) .collect::>() - ); + }) + }; view! {

    "Contacts"

    @@ -139,16 +134,21 @@ pub fn Contact() -> impl IntoView { ) }); - let contact_display = suspend!(match contact.await { - None => - Either::Left(view! {

    "No contact with this ID was found."

    }), - Some(contact) => Either::Right(view! { -
    -

    {contact.first_name} " " {contact.last_name}

    -

    {contact.address_1}
    {contact.address_2}

    -
    - }), - }); + let contact_display = move || { + Suspend(async move { + match contact.await { + None => Either::Left( + view! {

    "No contact with this ID was found."

    }, + ), + Some(contact) => Either::Right(view! { +
    +

    {contact.first_name} " " {contact.last_name}

    +

    {contact.address_1}
    {contact.address_2}

    +
    + }), + } + }) + }; view! {
    diff --git a/examples/router/src/main.rs b/examples/router/src/main.rs index 58e6a6e6b..4baa5d09b 100644 --- a/examples/router/src/main.rs +++ b/examples/router/src/main.rs @@ -1,16 +1,16 @@ -use leptos::*; +use leptos::prelude::*; use router::*; use tracing_subscriber::fmt; use tracing_subscriber_wasm::MakeConsoleWriter; pub fn main() { /*fmt() - .with_writer( - MakeConsoleWriter::default() - .map_trace_level_to(tracing::Level::DEBUG), - ) - .without_time() - .init();*/ + .with_writer( + MakeConsoleWriter::default() + .map_trace_level_to(tracing::Level::DEBUG), + ) + .without_time() + .init();*/ console_error_panic_hook::set_once(); mount_to_body(RouterExample); } diff --git a/examples/ssr_modes_axum/src/main.rs b/examples/ssr_modes_axum/src/main.rs index 03eb827cf..a98a6868e 100644 --- a/examples/ssr_modes_axum/src/main.rs +++ b/examples/ssr_modes_axum/src/main.rs @@ -2,7 +2,8 @@ #[tokio::main] async fn main() { use axum::Router; - use leptos::{logging::log, config::get_configuration, view, HydrationScripts}; + use leptos::prelude::*; + use leptos::logging; use leptos_axum::{generate_route_list, LeptosRoutes}; use ssr_modes_axum::{app::*, fallback::file_and_error_handler}; use leptos_meta::MetaTags; diff --git a/examples/todo_app_sqlite_axum/src/error_template.rs b/examples/todo_app_sqlite_axum/src/error_template.rs index 9dd9f4aa2..d82dcec64 100644 --- a/examples/todo_app_sqlite_axum/src/error_template.rs +++ b/examples/todo_app_sqlite_axum/src/error_template.rs @@ -1,9 +1,5 @@ use crate::errors::TodoAppError; -use leptos::context::use_context; -use leptos::reactive_graph::effect::Effect; -use leptos::signals::RwSignal; -use leptos::{component, server, view, For, IntoView}; -use leptos::{prelude::*, Errors}; +use leptos::prelude::*; #[cfg(feature = "ssr")] use leptos_axum::ResponseOptions; diff --git a/examples/todo_app_sqlite_axum/src/fallback.rs b/examples/todo_app_sqlite_axum/src/fallback.rs index bef4bdec3..c7238f1ca 100644 --- a/examples/todo_app_sqlite_axum/src/fallback.rs +++ b/examples/todo_app_sqlite_axum/src/fallback.rs @@ -5,8 +5,7 @@ use axum::{ http::{Request, Response, StatusCode, Uri}, response::{IntoResponse, Response as AxumResponse}, }; -use leptos::config::LeptosOptions; -use leptos::{view, Errors}; +use leptos::prelude::*; use tower::ServiceExt; use tower_http::services::ServeDir; @@ -25,7 +24,7 @@ pub async fn file_and_error_handler( errors.insert_with_default_key(TodoAppError::NotFound); let handler = leptos_axum::render_app_to_stream( options.to_owned(), - move || view! {}, + move || view! { }, ); handler(req).await.into_response() } diff --git a/examples/todo_app_sqlite_axum/src/lib.rs b/examples/todo_app_sqlite_axum/src/lib.rs index 034ba849a..753c872f7 100644 --- a/examples/todo_app_sqlite_axum/src/lib.rs +++ b/examples/todo_app_sqlite_axum/src/lib.rs @@ -8,7 +8,7 @@ pub mod todo; #[wasm_bindgen::prelude::wasm_bindgen] pub fn hydrate() { use crate::todo::TodoApp; - use tracing_subscriber::fmt; + /* use tracing_subscriber::fmt; use tracing_subscriber_wasm::MakeConsoleWriter; fmt() @@ -22,8 +22,8 @@ pub fn hydrate() { // a runtime error. .without_time() .init(); - _ = console_log::init_with_level(log::Level::Error); + _ = console_log::init_with_level(log::Level::Error);*/ console_error_panic_hook::set_once(); - leptos::hydrate_body(TodoApp); + leptos::mount::hydrate_body(TodoApp); } diff --git a/examples/todo_app_sqlite_axum/src/main.rs b/examples/todo_app_sqlite_axum/src/main.rs index ca05c16da..4fd46b968 100644 --- a/examples/todo_app_sqlite_axum/src/main.rs +++ b/examples/todo_app_sqlite_axum/src/main.rs @@ -7,11 +7,7 @@ use axum::{ routing::get, Router, }; -use leptos::{ - config::{get_configuration, LeptosOptions}, - view, -}; -use leptos::{context::provide_context, HydrationScripts}; +use leptos::prelude::*; use leptos_axum::{generate_route_list, LeptosRoutes}; use todo_app_sqlite_axum::*; diff --git a/examples/todo_app_sqlite_axum/src/todo.rs b/examples/todo_app_sqlite_axum/src/todo.rs index ee88f341a..205a7b801 100644 --- a/examples/todo_app_sqlite_axum/src/todo.rs +++ b/examples/todo_app_sqlite_axum/src/todo.rs @@ -1,13 +1,6 @@ use crate::error_template::ErrorTemplate; -use leptos::context::use_context; -use leptos::reactive_graph::effect::Effect; -use leptos::server::{Resource, ServerAction, ServerMultiAction}; -use leptos::tachys::either::Either; -use leptos::{ - component, server, suspend, view, ActionForm, ErrorBoundary, IntoView, - MultiActionForm, -}; -use leptos::{prelude::*, Suspense, Transition}; +use leptos::either::Either; +use leptos::prelude::*; use serde::{Deserialize, Serialize}; use server_fn::codec::SerdeLite; use server_fn::ServerFnError; diff --git a/examples/todomvc/src/lib.rs b/examples/todomvc/src/lib.rs index 89a517f32..2a8c1a7bd 100644 --- a/examples/todomvc/src/lib.rs +++ b/examples/todomvc/src/lib.rs @@ -1,17 +1,6 @@ -use leptos::{ - leptos_dom::{ - events, - helpers::{location_hash, window, window_event_listener}, - }, - prelude::*, - reactive_graph::{ - effect::Effect, - owner::{provide_context, use_context}, - signal::{RwSignal, WriteSignal}, - }, - tachys::{html::element::Input, reactive_graph::node_ref::NodeRef}, - *, -}; +use leptos::ev; +use leptos::html::Input; +use leptos::prelude::*; use serde::{Deserialize, Serialize}; use uuid::Uuid; use web_sys::KeyboardEvent; @@ -156,7 +145,7 @@ pub fn TodoMVC() -> impl IntoView { // Handle the three filter modes: All, Active, and Completed let (mode, set_mode) = signal(Mode::All); - window_event_listener(events::hashchange, move |_| { + window_event_listener(ev::hashchange, move |_| { let new_mode = location_hash().map(|hash| route(&hash)).unwrap_or_default(); set_mode.set(new_mode); @@ -237,46 +226,57 @@ pub fn TodoMVC() -> impl IntoView { node_ref=input_ref /> -
    - 0)} +
    + 0) on:input=move |_| todos.with(|t| t.toggle_all()) />
      - +
    -
    +
    {move || todos.with(|t| t.remaining().to_string())} - {move || if todos.with(|t| t.remaining()) == 1 { - " item" - } else { - " items" + {move || { + if todos.with(|t| t.remaining()) == 1 { " item" } else { " items" } }} + " left"
    } @@ -312,49 +312,52 @@ pub fn Todo(todo: Todo) -> impl IntoView { }; view! { -
  • +
  • + -
    - {move || editing.get().then(|| view! { - } - }} - /> - }) - } + }) + }} +
  • } } diff --git a/examples/todomvc/src/main.rs b/examples/todomvc/src/main.rs index 641e7449d..877d75600 100644 --- a/examples/todomvc/src/main.rs +++ b/examples/todomvc/src/main.rs @@ -1,7 +1,7 @@ -use leptos::*; +use leptos::prelude::*; pub use todomvc::*; fn main() { _ = console_log::init_with_level(log::Level::Debug); console_error_panic_hook::set_once(); - mount_to_body(|| view! { }) + mount_to_body(TodoMVC) } diff --git a/integrations/axum/src/lib.rs b/integrations/axum/src/lib.rs index 54b860a51..ec92b42d5 100644 --- a/integrations/axum/src/lib.rs +++ b/integrations/axum/src/lib.rs @@ -237,9 +237,9 @@ pub async fn handle_server_fns(req: Request) -> impl IntoResponse { fn init_executor() { #[cfg(feature = "wasm")] - let _ = leptos::Executor::init_wasm_bindgen(); + let _ = any_spawner::Executor::init_wasm_bindgen(); #[cfg(all(not(feature = "wasm"), feature = "default"))] - let _ = leptos::Executor::init_tokio(); + let _ = any_spawner::Executor::init_tokio(); #[cfg(all(not(feature = "wasm"), not(feature = "default")))] { eprintln!( diff --git a/leptos/Cargo.toml b/leptos/Cargo.toml index ed6f09cd5..4c8f61d83 100644 --- a/leptos/Cargo.toml +++ b/leptos/Cargo.toml @@ -15,6 +15,7 @@ any_spawner = { workspace = true, features = ["wasm-bindgen"] } base64 = { version = "0.22", optional = true } cfg-if = "1" hydration_context = { workspace = true } +either_of = { workspace = true } leptos_dom = { workspace = true } leptos_macro = { workspace = true } leptos_reactive = { workspace = true } diff --git a/leptos/src/lib.rs b/leptos/src/lib.rs index 3dd3270ef..1fd994b26 100644 --- a/leptos/src/lib.rs +++ b/leptos/src/lib.rs @@ -161,18 +161,19 @@ pub mod prelude { #[cfg(feature = "nonce")] pub use crate::nonce::*; pub use crate::{ - callback::*, children::*, component::*, context::*, - control_flow::*, error::*, form::*, hydration::*, into_view::*, - suspense::*, + callback::*, children::*, component::*, control_flow::*, error::*, + form::*, hydration::*, into_view::*, mount::*, suspense::*, }; pub use leptos_config::*; - pub use leptos_dom::*; + pub use leptos_dom::{helpers::*, *}; pub use leptos_macro::*; pub use leptos_server::*; pub use oco_ref::*; - pub use reactive_graph::*; - pub use server_fn::*; - pub use tachys; + pub use reactive_graph::{ + computed::*, effect::*, owner::*, signal::*, *, + }; + pub use server_fn::{self, ServerFnError}; + pub use tachys::{self, reactive_graph::node_ref::*}; } pub use export_types::*; } @@ -237,6 +238,7 @@ pub mod mount; pub use leptos_config as config; pub use oco_ref as oco; mod from_form_data; +pub use either_of as either; pub use reactive_graph; /// Provide and access data along the reactive graph, sharing data without directly passing arguments. diff --git a/meta/Cargo.toml b/meta/Cargo.toml index 8aaabd983..86e9034ec 100644 --- a/meta/Cargo.toml +++ b/meta/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "leptos_meta" -version = "0.7.0-preview" +version = "0.7.0-preview2" edition = "2021" authors = ["Greg Johnston"] license = "MIT" diff --git a/router/Cargo.toml b/router/Cargo.toml index 66d558cf5..d55cf73eb 100644 --- a/router/Cargo.toml +++ b/router/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "leptos_router" -version = "0.6.13" +version = "0.7.0-preview2" edition = "2021" authors = ["Greg Johnston", "Ben Wishovich"] license = "MIT" diff --git a/router_old/Cargo.toml b/router_old/Cargo.toml index a55eb7402..05aa51c55 100644 --- a/router_old/Cargo.toml +++ b/router_old/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "leptos_router" -version = "0.7.0-preview" +version = "0.7.0-preview2" edition = "2021" authors = ["Greg Johnston", "Ben Wishovich"] license = "MIT"