diff --git a/Cargo.lock b/Cargo.lock index b24aca20..8fad5542 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1629,18 +1629,6 @@ dependencies = [ "web-sys", ] -[[package]] -name = "gloo-timers" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbb143cf96099802033e0d4f4963b19fd2e0b728bcf076cd9cf7f6634f092994" -dependencies = [ - "futures-channel", - "futures-core", - "js-sys", - "wasm-bindgen", -] - [[package]] name = "gloo-utils" version = "0.2.0" @@ -2385,19 +2373,13 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c6eac17e7d306b4ad67158aba97c1490884ba304add4321069cb63fe0834c3b1" dependencies = [ "cfg-if", - "chrono", - "codee", - "cookie", "default-struct-builder", - "futures-util", - "gloo-timers", "js-sys", "lazy_static", "leptos", "paste", "send_wrapper", "thiserror 2.0.12", - "unic-langid", "wasm-bindgen", "wasm-bindgen-futures", "web-sys", @@ -5285,24 +5267,6 @@ dependencies = [ "web-time", ] -[[package]] -name = "unic-langid" -version = "0.9.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a28ba52c9b05311f4f6e62d5d9d46f094bd6e84cb8df7b3ef952748d752a7d05" -dependencies = [ - "unic-langid-impl", -] - -[[package]] -name = "unic-langid-impl" -version = "0.9.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dce1bf08044d4b7a94028c93786f8566047edc11110595914de93362559bc658" -dependencies = [ - "tinystr", -] - [[package]] name = "unicase" version = "2.8.1" diff --git a/crates/site-app/Cargo.toml b/crates/site-app/Cargo.toml index 5474945d..77b2d6c8 100644 --- a/crates/site-app/Cargo.toml +++ b/crates/site-app/Cargo.toml @@ -21,7 +21,14 @@ tracing.workspace = true gloo-net = { version = "0.6", default-features = false, features = [ "http", "json" ] } leptos-fetch = { version = "0.4", features = [ "devtools" ] } -leptos-use = { version = "0.16" } +leptos-use = { version = "0.16", default-features = false, features = [ + "on_click_outside", + "use_event_listener", + "use_window", + "use_interval_fn", + "use_window_focus", + "use_clipboard", +] } [features] default = [ ] diff --git a/crates/site-app/src/components/icons.rs b/crates/site-app/src/components/icons.rs index c03c7efd..df89accf 100644 --- a/crates/site-app/src/components/icons.rs +++ b/crates/site-app/src/components/icons.rs @@ -11,6 +11,15 @@ pub fn ArchiveBoxHeroIcon() -> impl IntoView { } } +#[component] +pub fn ArrowPathHeroIcon() -> impl IntoView { + view! { + + + + } +} + #[component] pub fn CheckHeroIcon() -> impl IntoView { view! { @@ -102,6 +111,15 @@ pub fn UserHeroIcon() -> impl IntoView { } } +#[component] +pub fn XMarkHeroIcon() -> impl IntoView { + view! { + + + + } +} + mod other { use leptos::prelude::*; diff --git a/crates/site-app/src/components/input_field.rs b/crates/site-app/src/components/input_field.rs index 98aa7241..99aebd04 100644 --- a/crates/site-app/src/components/input_field.rs +++ b/crates/site-app/src/components/input_field.rs @@ -35,20 +35,35 @@ pub fn InputField( const INPUT_WRAPPER_CLASS: &str = "input-field max-w-80"; const INPUT_CLASS: &str = "w-full py-2 focus-visible:outline-none"; const HINT_WRAPPER_CLASS: &str = "flex flex-col"; - const ERROR_HINT_CLASS: &str = "text-critical-11 text-sm"; - const WARN_HINT_CLASS: &str = "text-warn-11 text-sm"; + const ERROR_HINT_CLASS: &str = "animate-fade-down text-critical-11 text-sm"; + const WARN_HINT_CLASS: &str = "animate-fade-down text-warn-11 text-sm"; + + let before_click_callback = move |ce| { + if let Some(callback) = before_click_callback { + callback.run(ce); + } + }; + let after_click_callback = move |ce| { + if let Some(callback) = after_click_callback { + callback.run(ce); + } + }; view! {