mirror of
https://github.com/adoyle0/leptos-use.git
synced 2025-02-02 10:54:15 -05:00
work to port to leptos 0.7
This commit is contained in:
parent
41c27c4d97
commit
5f3f60ca6b
175 changed files with 575 additions and 527 deletions
12
Cargo.toml
12
Cargo.toml
|
@ -20,16 +20,16 @@ cfg-if = "1"
|
||||||
cookie = { version = "0.18", features = ["percent-encode"] }
|
cookie = { version = "0.18", features = ["percent-encode"] }
|
||||||
default-struct-builder = "0.5"
|
default-struct-builder = "0.5"
|
||||||
futures-util = "0.3"
|
futures-util = "0.3"
|
||||||
gloo-timers = { version = "0.3.0", features = ["futures"] }
|
gloo-timers = { version = "0.3", features = ["futures"] }
|
||||||
gloo-utils = { version = "0.2.0" }
|
gloo-utils = { version = "0.2" }
|
||||||
http1 = { version = "1", optional = true, package = "http" }
|
http1 = { version = "1", optional = true, package = "http" }
|
||||||
http0_2 = { version = "0.2", optional = true, package = "http" }
|
http0_2 = { version = "0.2", optional = true, package = "http" }
|
||||||
js-sys = "0.3"
|
js-sys = "0.3"
|
||||||
lazy_static = "1"
|
lazy_static = "1"
|
||||||
leptos = "0.6"
|
leptos = "0.7.0-preview2"
|
||||||
leptos_axum = { version = "0.6", optional = true }
|
leptos_axum = { version = "0.7.0-preview2", optional = true }
|
||||||
leptos_actix = { version = "0.6", optional = true }
|
leptos_actix = { version = "0.6", optional = true }
|
||||||
leptos-spin = { version = "0.1", optional = true }
|
leptos-spin = { version = "0.2", optional = true }
|
||||||
num = { version = "0.4", optional = true }
|
num = { version = "0.4", optional = true }
|
||||||
paste = "1"
|
paste = "1"
|
||||||
prost = { version = "0.12", optional = true }
|
prost = { version = "0.12", optional = true }
|
||||||
|
@ -133,7 +133,7 @@ features = [
|
||||||
|
|
||||||
[dev-dependencies]
|
[dev-dependencies]
|
||||||
getrandom = { version = "0.2", features = ["js"] }
|
getrandom = { version = "0.2", features = ["js"] }
|
||||||
leptos_meta = "0.6"
|
leptos_meta = "0.7.0-preview2"
|
||||||
rand = "0.8"
|
rand = "0.8"
|
||||||
|
|
||||||
[features]
|
[features]
|
||||||
|
|
|
@ -20,7 +20,6 @@
|
||||||
<br/>
|
<br/>
|
||||||
<br/>
|
<br/>
|
||||||
|
|
||||||
|
|
||||||
## Usage
|
## Usage
|
||||||
|
|
||||||
[![Docs](https://docs.rs/leptos-use/badge.svg)](https://docs.rs/leptos-use/)
|
[![Docs](https://docs.rs/leptos-use/badge.svg)](https://docs.rs/leptos-use/)
|
||||||
|
@ -29,7 +28,7 @@
|
||||||
[![Discord](https://img.shields.io/discord/1031524867910148188?color=%237289DA&label=discord)](https://discord.com/channels/1031524867910148188/1121154537709895783)
|
[![Discord](https://img.shields.io/discord/1031524867910148188?color=%237289DA&label=discord)](https://discord.com/channels/1031524867910148188/1121154537709895783)
|
||||||
|
|
||||||
```rust
|
```rust
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::{use_mouse, UseMouseReturn};
|
use leptos_use::{use_mouse, UseMouseReturn};
|
||||||
|
|
||||||
#[component]
|
#[component]
|
||||||
|
@ -82,7 +81,8 @@ python3 post_build.py use_storage
|
||||||
|
|
||||||
### New Function Template
|
### New Function Template
|
||||||
|
|
||||||
To scaffold a new function quickly you can run `template/createfn.sh`. It requires that [`ffizer`](https://ffizer.github.io/) and Python 3 is installed.
|
To scaffold a new function quickly you can run `template/createfn.sh`. It requires
|
||||||
|
that [`ffizer`](https://ffizer.github.io/) and Python 3 is installed.
|
||||||
This will create the function file in the src directory, scaffold an example directory and an entry in the book.
|
This will create the function file in the src directory, scaffold an example directory and an entry in the book.
|
||||||
|
|
||||||
## Leptos compatibility
|
## Leptos compatibility
|
||||||
|
|
|
@ -35,14 +35,16 @@ pub fn some_directive(el: HtmlElement<AnyElement>) {
|
||||||
Signal of Strings: `Signal<String>`, `ReadSignal<String>`, `RwSignal<String>`, `Memo<String>`; also works with `&str`:
|
Signal of Strings: `Signal<String>`, `ReadSignal<String>`, `RwSignal<String>`, `Memo<String>`; also works with `&str`:
|
||||||
|
|
||||||
```rust
|
```rust
|
||||||
let (str_signal, set_str_signal) = create_signal("div > p.some-class".to_string());
|
let (str_signal, set_str_signal) = signal("div > p.some-class".to_string());
|
||||||
use_element_size(str_signal);
|
use_element_size(str_signal);
|
||||||
```
|
```
|
||||||
|
|
||||||
Signals of Elements: `Signal<web_sys::Element>`, `ReadSignal<web_sys::Element>`, `RwSignal<web_sys::Element>`, `Memo<web_sys::Element>`; also works with `Option<web_sys::Element>`:
|
Signals of
|
||||||
|
Elements: `Signal<web_sys::Element>`, `ReadSignal<web_sys::Element>`, `RwSignal<web_sys::Element>`, `Memo<web_sys::Element>`;
|
||||||
|
also works with `Option<web_sys::Element>`:
|
||||||
|
|
||||||
```rust
|
```rust
|
||||||
let (el_signal, set_el_signal) = create_signal(document().query_selector("div > p.some-class").unwrap());
|
let (el_signal, set_el_signal) = signal(document().query_selector("div > p.some-class").unwrap());
|
||||||
use_element_size(el_signal);
|
use_element_size(el_signal);
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
|
@ -15,7 +15,7 @@ cargo add leptos-use
|
||||||
Simply import the functions you need from `leptos-use`
|
Simply import the functions you need from `leptos-use`
|
||||||
|
|
||||||
```rust,noplayground
|
```rust,noplayground
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::{use_mouse, UseMouseReturn};
|
use leptos_use::{use_mouse, UseMouseReturn};
|
||||||
|
|
||||||
#[component]
|
#[component]
|
||||||
|
|
|
@ -66,7 +66,7 @@ a new-type-wrapped `Option<web_sys::Window>` or `Option<web_sys::Document>` resp
|
||||||
used safely on the server. The following code works on both the client and the server:
|
used safely on the server. The following code works on both the client and the server:
|
||||||
|
|
||||||
```rust
|
```rust
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos::ev::keyup;
|
use leptos::ev::keyup;
|
||||||
use leptos_use::{use_event_listener, use_window};
|
use leptos_use::{use_event_listener, use_window};
|
||||||
|
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
use leptos::html::Div;
|
use leptos::html::Div;
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::demo_or_body;
|
use leptos_use::docs::demo_or_body;
|
||||||
use leptos_use::on_click_outside;
|
use leptos_use::on_click_outside;
|
||||||
|
|
||||||
#[component]
|
#[component]
|
||||||
fn Demo() -> impl IntoView {
|
fn Demo() -> impl IntoView {
|
||||||
let (show_modal, set_show_modal) = create_signal(false);
|
let (show_modal, set_show_modal) = signal(false);
|
||||||
let modal_ref = create_node_ref::<Div>();
|
let modal_ref = create_node_ref::<Div>();
|
||||||
|
|
||||||
let _ = on_click_outside(modal_ref, move |_| set_show_modal.set(false));
|
let _ = on_click_outside(modal_ref, move |_| set_show_modal.set(false));
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::{demo_or_body, Note};
|
use leptos_use::docs::{demo_or_body, Note};
|
||||||
use leptos_use::signal_debounced;
|
use leptos_use::signal_debounced;
|
||||||
|
|
||||||
#[component]
|
#[component]
|
||||||
fn Demo() -> impl IntoView {
|
fn Demo() -> impl IntoView {
|
||||||
let (input, set_input) = create_signal("".to_string());
|
let (input, set_input) = signal("".to_string());
|
||||||
let debounced: Signal<String> = signal_debounced(input, 1000.0);
|
let debounced: Signal<String> = signal_debounced(input, 1000.0);
|
||||||
|
|
||||||
view! {
|
view! {
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::{demo_or_body, Note};
|
use leptos_use::docs::{demo_or_body, Note};
|
||||||
use leptos_use::signal_throttled;
|
use leptos_use::signal_throttled;
|
||||||
|
|
||||||
#[component]
|
#[component]
|
||||||
fn Demo() -> impl IntoView {
|
fn Demo() -> impl IntoView {
|
||||||
let (input, set_input) = create_signal("".to_string());
|
let (input, set_input) = signal("".to_string());
|
||||||
let throttled: Signal<String> = signal_throttled(input, 1000.0);
|
let throttled: Signal<String> = signal_throttled(input, 1000.0);
|
||||||
|
|
||||||
view! {
|
view! {
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
use crate::error_template::{AppError, ErrorTemplate};
|
use crate::error_template::{AppError, ErrorTemplate};
|
||||||
use leptos::ev::{keypress, KeyboardEvent};
|
use leptos::ev::{keypress, KeyboardEvent};
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_meta::*;
|
use leptos_meta::*;
|
||||||
use leptos_router::*;
|
use leptos_router::*;
|
||||||
use leptos_use::storage::use_local_storage;
|
use leptos_use::storage::use_local_storage;
|
||||||
|
@ -49,14 +49,14 @@ fn HomePage() -> impl IntoView {
|
||||||
|
|
||||||
let zh_count = nf.format::<i32>(count);
|
let zh_count = nf.format::<i32>(count);
|
||||||
|
|
||||||
let (key, set_key) = create_signal("".to_string());
|
let (key, set_key) = signal("".to_string());
|
||||||
|
|
||||||
// window() doesn't work on the server so we provide use_window()
|
// window() doesn't work on the server so we provide use_window()
|
||||||
let _ = use_event_listener(use_window(), keypress, move |evt: KeyboardEvent| {
|
let _ = use_event_listener(use_window(), keypress, move |evt: KeyboardEvent| {
|
||||||
set_key(evt.key())
|
set_key(evt.key())
|
||||||
});
|
});
|
||||||
|
|
||||||
let (debounce_value, set_debounce_value) = create_signal("not called");
|
let (debounce_value, set_debounce_value) = signal("not called");
|
||||||
|
|
||||||
let debounced_fn = use_debounce_fn(
|
let debounced_fn = use_debounce_fn(
|
||||||
move || {
|
move || {
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
use cfg_if::cfg_if;
|
use cfg_if::cfg_if;
|
||||||
use http::status::StatusCode;
|
use http::status::StatusCode;
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use thiserror::Error;
|
use thiserror::Error;
|
||||||
|
|
||||||
#[cfg(feature = "ssr")]
|
#[cfg(feature = "ssr")]
|
||||||
|
|
|
@ -10,7 +10,7 @@ cfg_if! { if #[cfg(feature = "ssr")] {
|
||||||
use axum::response::Response as AxumResponse;
|
use axum::response::Response as AxumResponse;
|
||||||
use tower::ServiceExt;
|
use tower::ServiceExt;
|
||||||
use tower_http::services::ServeDir;
|
use tower_http::services::ServeDir;
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use crate::app::App;
|
use crate::app::App;
|
||||||
|
|
||||||
pub async fn file_and_error_handler(uri: Uri, State(options): State<LeptosOptions>, req: Request<Body>) -> AxumResponse {
|
pub async fn file_and_error_handler(uri: Uri, State(options): State<LeptosOptions>, req: Request<Body>) -> AxumResponse {
|
||||||
|
|
|
@ -4,7 +4,7 @@ pub mod error_template;
|
||||||
pub mod fileserv;
|
pub mod fileserv;
|
||||||
|
|
||||||
cfg_if! { if #[cfg(feature = "hydrate")] {
|
cfg_if! { if #[cfg(feature = "hydrate")] {
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use wasm_bindgen::prelude::wasm_bindgen;
|
use wasm_bindgen::prelude::wasm_bindgen;
|
||||||
use crate::app::*;
|
use crate::app::*;
|
||||||
|
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
async fn main() {
|
async fn main() {
|
||||||
use axum::{routing::post, Router};
|
use axum::{routing::post, Router};
|
||||||
use leptos::logging::log;
|
use leptos::logging::log;
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_axum::{generate_route_list, LeptosRoutes};
|
use leptos_axum::{generate_route_list, LeptosRoutes};
|
||||||
use leptos_use_ssr::app::*;
|
use leptos_use_ssr::app::*;
|
||||||
use leptos_use_ssr::fileserv::file_and_error_handler;
|
use leptos_use_ssr::fileserv::file_and_error_handler;
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::demo_or_body;
|
use leptos_use::docs::demo_or_body;
|
||||||
use leptos_use::sync_signal;
|
use leptos_use::sync_signal;
|
||||||
|
|
||||||
#[component]
|
#[component]
|
||||||
fn Demo() -> impl IntoView {
|
fn Demo() -> impl IntoView {
|
||||||
let (a, set_a) = create_signal(String::new());
|
let (a, set_a) = signal(String::new());
|
||||||
let (b, set_b) = create_signal(String::new());
|
let (b, set_b) = signal(String::new());
|
||||||
|
|
||||||
let _ = sync_signal((a, set_a), (b, set_b));
|
let _ = sync_signal((a, set_a), (b, set_b));
|
||||||
|
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::demo_or_body;
|
use leptos_use::docs::demo_or_body;
|
||||||
use leptos_use::math::use_abs;
|
use leptos_use::math::use_abs;
|
||||||
|
|
||||||
#[component]
|
#[component]
|
||||||
fn Demo() -> impl IntoView {
|
fn Demo() -> impl IntoView {
|
||||||
let (value, set_value) = create_signal(-32.25);
|
let (value, set_value) = signal(-32.25);
|
||||||
|
|
||||||
let result: Signal<f64> = use_abs(value);
|
let result: Signal<f64> = use_abs(value);
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::{demo_or_body, Note};
|
use leptos_use::docs::{demo_or_body, Note};
|
||||||
use leptos_use::use_active_element;
|
use leptos_use::use_active_element;
|
||||||
|
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::{demo_or_body, BooleanDisplay};
|
use leptos_use::docs::{demo_or_body, BooleanDisplay};
|
||||||
use leptos_use::math::use_and;
|
use leptos_use::math::use_and;
|
||||||
|
|
||||||
#[component]
|
#[component]
|
||||||
fn Demo() -> impl IntoView {
|
fn Demo() -> impl IntoView {
|
||||||
let (a, set_a) = create_signal(false);
|
let (a, set_a) = signal(false);
|
||||||
let (b, set_b) = create_signal(false);
|
let (b, set_b) = signal(false);
|
||||||
|
|
||||||
let a_and_b = use_and(a, b);
|
let a_and_b = use_and(a, b);
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::{demo_or_body, BooleanDisplay};
|
use leptos_use::docs::{demo_or_body, BooleanDisplay};
|
||||||
use leptos_use::{breakpoints_tailwind, use_breakpoints, BreakpointsTailwind};
|
use leptos_use::{breakpoints_tailwind, use_breakpoints, BreakpointsTailwind};
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::demo_or_body;
|
use leptos_use::docs::demo_or_body;
|
||||||
use leptos_use::utils::FromToStringCodec;
|
use leptos_use::utils::FromToStringCodec;
|
||||||
use leptos_use::{use_broadcast_channel, UseBroadcastChannelReturn};
|
use leptos_use::{use_broadcast_channel, UseBroadcastChannelReturn};
|
||||||
|
@ -13,7 +13,7 @@ fn Demo() -> impl IntoView {
|
||||||
..
|
..
|
||||||
} = use_broadcast_channel::<String, FromToStringCodec>("leptos-use-demo-channel");
|
} = use_broadcast_channel::<String, FromToStringCodec>("leptos-use-demo-channel");
|
||||||
|
|
||||||
let (input_value, set_input_value) = create_signal(String::new());
|
let (input_value, set_input_value) = signal(String::new());
|
||||||
|
|
||||||
view! {
|
view! {
|
||||||
<p>Please open this page in at least two tabs</p>
|
<p>Please open this page in at least two tabs</p>
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::demo_or_body;
|
use leptos_use::docs::demo_or_body;
|
||||||
use leptos_use::math::use_ceil;
|
use leptos_use::math::use_ceil;
|
||||||
|
|
||||||
#[component]
|
#[component]
|
||||||
fn Demo() -> impl IntoView {
|
fn Demo() -> impl IntoView {
|
||||||
let (value, set_value) = create_signal(4.15);
|
let (value, set_value) = signal(4.15);
|
||||||
|
|
||||||
let result: Signal<f64> = use_ceil(value);
|
let result: Signal<f64> = use_ceil(value);
|
||||||
|
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::{demo_or_body, Note};
|
use leptos_use::docs::{demo_or_body, Note};
|
||||||
use leptos_use::{use_clipboard, use_permission, UseClipboardReturn};
|
use leptos_use::{use_clipboard, use_permission, UseClipboardReturn};
|
||||||
|
|
||||||
#[component]
|
#[component]
|
||||||
fn Demo() -> impl IntoView {
|
fn Demo() -> impl IntoView {
|
||||||
let (input, set_input) = create_signal("".to_owned());
|
let (input, set_input) = signal("".to_owned());
|
||||||
|
|
||||||
let UseClipboardReturn {
|
let UseClipboardReturn {
|
||||||
is_supported,
|
is_supported,
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
use leptos::html::html;
|
use leptos::html::html;
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::{demo_or_body, Note};
|
use leptos_use::docs::{demo_or_body, Note};
|
||||||
use leptos_use::{
|
use leptos_use::{
|
||||||
use_color_mode_with_options, use_cycle_list_with_options, ColorMode, UseColorModeOptions,
|
use_color_mode_with_options, use_cycle_list_with_options, ColorMode, UseColorModeOptions,
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::demo_or_body;
|
use leptos_use::docs::demo_or_body;
|
||||||
use leptos_use::use_cookie;
|
use leptos_use::use_cookie;
|
||||||
use leptos_use::utils::FromToStringCodec;
|
use leptos_use::utils::FromToStringCodec;
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
use leptos::html::Div;
|
use leptos::html::Div;
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::demo_or_body;
|
use leptos_use::docs::demo_or_body;
|
||||||
use leptos_use::{use_css_var_with_options, UseCssVarOptions};
|
use leptos_use::{use_css_var_with_options, UseCssVarOptions};
|
||||||
|
|
||||||
|
@ -17,7 +17,7 @@ fn Demo() -> impl IntoView {
|
||||||
};
|
};
|
||||||
|
|
||||||
let elv = create_node_ref::<Div>();
|
let elv = create_node_ref::<Div>();
|
||||||
let (key, set_key) = create_signal("--color".to_string());
|
let (key, set_key) = signal("--color".to_string());
|
||||||
let (color_val, _) = use_css_var_with_options(key, UseCssVarOptions::default().target(elv));
|
let (color_val, _) = use_css_var_with_options(key, UseCssVarOptions::default().target(elv));
|
||||||
let change_var = move |_| {
|
let change_var = move |_| {
|
||||||
if key.get() == "--color" {
|
if key.get() == "--color" {
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::demo_or_body;
|
use leptos_use::docs::demo_or_body;
|
||||||
use leptos_use::{use_cycle_list, UseCycleListReturn};
|
use leptos_use::{use_cycle_list, UseCycleListReturn};
|
||||||
|
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::{demo_or_body, Note};
|
use leptos_use::docs::{demo_or_body, Note};
|
||||||
use leptos_use::{use_debounce_fn_with_options, DebounceOptions};
|
use leptos_use::{use_debounce_fn_with_options, DebounceOptions};
|
||||||
|
|
||||||
#[component]
|
#[component]
|
||||||
fn Demo() -> impl IntoView {
|
fn Demo() -> impl IntoView {
|
||||||
let (click_count, set_click_count) = create_signal(0);
|
let (click_count, set_click_count) = signal(0);
|
||||||
let (debounced_count, set_debounced_count) = create_signal(0);
|
let (debounced_count, set_debounced_count) = signal(0);
|
||||||
|
|
||||||
let debounced_fn = use_debounce_fn_with_options(
|
let debounced_fn = use_debounce_fn_with_options(
|
||||||
move || set_debounced_count.set(debounced_count.get_untracked() + 1),
|
move || set_debounced_count.set(debounced_count.get_untracked() + 1),
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::demo_or_body;
|
use leptos_use::docs::demo_or_body;
|
||||||
use leptos_use::use_device_orientation;
|
use leptos_use::use_device_orientation;
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::demo_or_body;
|
use leptos_use::docs::demo_or_body;
|
||||||
use leptos_use::use_device_pixel_ratio;
|
use leptos_use::use_device_pixel_ratio;
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::demo_or_body;
|
use leptos_use::docs::demo_or_body;
|
||||||
use leptos_use::{use_display_media, UseDisplayMediaReturn};
|
use leptos_use::{use_display_media, UseDisplayMediaReturn};
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::demo_or_body;
|
use leptos_use::docs::demo_or_body;
|
||||||
use leptos_use::use_document_visibility;
|
use leptos_use::use_document_visibility;
|
||||||
use std::time::Duration;
|
use std::time::Duration;
|
||||||
|
@ -6,7 +6,7 @@ use std::time::Duration;
|
||||||
#[component]
|
#[component]
|
||||||
fn Demo() -> impl IntoView {
|
fn Demo() -> impl IntoView {
|
||||||
let start_message = "💡 Minimize the page or switch tab then return";
|
let start_message = "💡 Minimize the page or switch tab then return";
|
||||||
let (message, set_message) = create_signal(start_message);
|
let (message, set_message) = signal(start_message);
|
||||||
let visibility = use_document_visibility();
|
let visibility = use_document_visibility();
|
||||||
|
|
||||||
let _ = watch(
|
let _ = watch(
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
use leptos::html::Div;
|
use leptos::html::Div;
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::core::Position;
|
use leptos_use::core::Position;
|
||||||
use leptos_use::docs::demo_or_body;
|
use leptos_use::docs::demo_or_body;
|
||||||
use leptos_use::{use_draggable_with_options, use_window, UseDraggableOptions, UseDraggableReturn};
|
use leptos_use::{use_draggable_with_options, use_window, UseDraggableOptions, UseDraggableReturn};
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
use leptos::html::Div;
|
use leptos::html::Div;
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::{demo_or_body, BooleanDisplay};
|
use leptos_use::docs::{demo_or_body, BooleanDisplay};
|
||||||
use leptos_use::{use_drop_zone_with_options, UseDropZoneOptions, UseDropZoneReturn};
|
use leptos_use::{use_drop_zone_with_options, UseDropZoneOptions, UseDropZoneReturn};
|
||||||
|
|
||||||
#[component]
|
#[component]
|
||||||
fn Demo() -> impl IntoView {
|
fn Demo() -> impl IntoView {
|
||||||
let (dropped, set_dropped) = create_signal(false);
|
let (dropped, set_dropped) = signal(false);
|
||||||
|
|
||||||
let drop_zone_el = create_node_ref::<Div>();
|
let drop_zone_el = create_node_ref::<Div>();
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
use leptos::html::Textarea;
|
use leptos::html::Textarea;
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::{demo_or_body, Note};
|
use leptos_use::docs::{demo_or_body, Note};
|
||||||
use leptos_use::{use_element_bounding, UseElementBoundingReturn};
|
use leptos_use::{use_element_bounding, UseElementBoundingReturn};
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
use leptos::html::Button;
|
use leptos::html::Button;
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::demo_or_body;
|
use leptos_use::docs::demo_or_body;
|
||||||
use leptos_use::{use_element_hover_with_options, UseElementHoverOptions};
|
use leptos_use::{use_element_hover_with_options, UseElementHoverOptions};
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
use leptos::html::Textarea;
|
use leptos::html::Textarea;
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::{demo_or_body, Note};
|
use leptos_use::docs::{demo_or_body, Note};
|
||||||
use leptos_use::{use_element_size, UseElementSizeReturn};
|
use leptos_use::{use_element_size, UseElementSizeReturn};
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
use leptos::html::Div;
|
use leptos::html::Div;
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::{demo_or_body, BooleanDisplay, Note};
|
use leptos_use::docs::{demo_or_body, BooleanDisplay, Note};
|
||||||
use leptos_use::use_element_visibility;
|
use leptos_use::use_element_visibility;
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
use leptos::ev::{click, keydown};
|
use leptos::ev::{click, keydown};
|
||||||
use leptos::html::A;
|
use leptos::html::A;
|
||||||
use leptos::logging::log;
|
use leptos::logging::log;
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::{use_event_listener, use_window};
|
use leptos_use::{use_event_listener, use_window};
|
||||||
|
|
||||||
#[component]
|
#[component]
|
||||||
|
@ -21,7 +21,7 @@ fn Demo() -> impl IntoView {
|
||||||
evt.prevent_default();
|
evt.prevent_default();
|
||||||
});
|
});
|
||||||
|
|
||||||
let (cond, set_cond) = create_signal(true);
|
let (cond, set_cond) = signal(true);
|
||||||
|
|
||||||
view! {
|
view! {
|
||||||
<p>"Check in the dev tools console"</p>
|
<p>"Check in the dev tools console"</p>
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::demo_or_body;
|
use leptos_use::docs::demo_or_body;
|
||||||
use leptos_use::{use_favicon_with_options, UseFaviconOptions};
|
use leptos_use::{use_favicon_with_options, UseFaviconOptions};
|
||||||
|
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::demo_or_body;
|
use leptos_use::docs::demo_or_body;
|
||||||
use leptos_use::math::use_floor;
|
use leptos_use::math::use_floor;
|
||||||
|
|
||||||
#[component]
|
#[component]
|
||||||
fn Demo() -> impl IntoView {
|
fn Demo() -> impl IntoView {
|
||||||
let (value, set_value) = create_signal(5.95);
|
let (value, set_value) = signal(5.95);
|
||||||
|
|
||||||
let result: Signal<f64> = use_floor(value);
|
let result: Signal<f64> = use_floor(value);
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::demo_or_body;
|
use leptos_use::docs::demo_or_body;
|
||||||
use leptos_use::{use_geolocation, UseGeolocationReturn};
|
use leptos_use::{use_geolocation, UseGeolocationReturn};
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::{demo_or_body, BooleanDisplay, Note};
|
use leptos_use::docs::{demo_or_body, BooleanDisplay, Note};
|
||||||
use leptos_use::{use_idle, use_timestamp_with_options, UseIdleReturn, UseTimestampOptions};
|
use leptos_use::{use_idle, use_timestamp_with_options, UseIdleReturn, UseTimestampOptions};
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
use leptos::html::Div;
|
use leptos::html::Div;
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::demo_or_body;
|
use leptos_use::docs::demo_or_body;
|
||||||
use leptos_use::{use_infinite_scroll_with_options, UseInfiniteScrollOptions};
|
use leptos_use::{use_infinite_scroll_with_options, UseInfiniteScrollOptions};
|
||||||
|
|
||||||
|
@ -7,7 +7,7 @@ use leptos_use::{use_infinite_scroll_with_options, UseInfiniteScrollOptions};
|
||||||
fn Demo() -> impl IntoView {
|
fn Demo() -> impl IntoView {
|
||||||
let el = create_node_ref::<Div>();
|
let el = create_node_ref::<Div>();
|
||||||
|
|
||||||
let (data, set_data) = create_signal(vec![1, 2, 3, 4, 5, 6]);
|
let (data, set_data) = signal(vec![1, 2, 3, 4, 5, 6]);
|
||||||
|
|
||||||
let _ = use_infinite_scroll_with_options(
|
let _ = use_infinite_scroll_with_options(
|
||||||
el,
|
el,
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
use leptos::html::Div;
|
use leptos::html::Div;
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::{demo_or_body, BooleanDisplay};
|
use leptos_use::docs::{demo_or_body, BooleanDisplay};
|
||||||
use leptos_use::{
|
use leptos_use::{
|
||||||
use_intersection_observer_with_options, UseIntersectionObserverOptions,
|
use_intersection_observer_with_options, UseIntersectionObserverOptions,
|
||||||
|
@ -10,7 +10,7 @@ use leptos_use::{
|
||||||
fn Demo() -> impl IntoView {
|
fn Demo() -> impl IntoView {
|
||||||
let root = create_node_ref::<Div>();
|
let root = create_node_ref::<Div>();
|
||||||
let target = create_node_ref::<Div>();
|
let target = create_node_ref::<Div>();
|
||||||
let (is_visible, set_visible) = create_signal(false);
|
let (is_visible, set_visible) = signal(false);
|
||||||
|
|
||||||
let UseIntersectionObserverReturn {
|
let UseIntersectionObserverReturn {
|
||||||
is_active,
|
is_active,
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::demo_or_body;
|
use leptos_use::docs::demo_or_body;
|
||||||
use leptos_use::{use_interval, UseIntervalReturn};
|
use leptos_use::{use_interval, UseIntervalReturn};
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::demo_or_body;
|
use leptos_use::docs::demo_or_body;
|
||||||
use leptos_use::use_interval_fn;
|
use leptos_use::use_interval_fn;
|
||||||
use leptos_use::utils::Pausable;
|
use leptos_use::utils::Pausable;
|
||||||
|
@ -18,9 +18,9 @@ fn Demo() -> impl IntoView {
|
||||||
"Привет",
|
"Привет",
|
||||||
];
|
];
|
||||||
|
|
||||||
let (word, set_word) = create_signal(greetings[0]);
|
let (word, set_word) = signal(greetings[0]);
|
||||||
let (interval, set_interval) = create_signal(500_u64);
|
let (interval, set_interval) = signal(500_u64);
|
||||||
let (index, set_index) = create_signal(0);
|
let (index, set_index) = signal(0);
|
||||||
|
|
||||||
let Pausable {
|
let Pausable {
|
||||||
pause,
|
pause,
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::demo_or_body;
|
use leptos_use::docs::demo_or_body;
|
||||||
use leptos_use::{use_intl_number_format, NumberStyle, UseIntlNumberFormatOptions};
|
use leptos_use::{use_intl_number_format, NumberStyle, UseIntlNumberFormatOptions};
|
||||||
|
|
||||||
#[component]
|
#[component]
|
||||||
fn Demo() -> impl IntoView {
|
fn Demo() -> impl IntoView {
|
||||||
let (number, set_number) = create_signal(123456.78);
|
let (number, set_number) = signal(123456.78);
|
||||||
|
|
||||||
let de_nf = use_intl_number_format(
|
let de_nf = use_intl_number_format(
|
||||||
UseIntlNumberFormatOptions::default()
|
UseIntlNumberFormatOptions::default()
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::{demo_or_body, BooleanDisplay};
|
use leptos_use::docs::{demo_or_body, BooleanDisplay};
|
||||||
use leptos_use::use_media_query;
|
use leptos_use::use_media_query;
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
use leptos::html::Div;
|
use leptos::html::Div;
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::{demo_or_body, Note};
|
use leptos_use::docs::{demo_or_body, Note};
|
||||||
use leptos_use::{
|
use leptos_use::{
|
||||||
use_mouse, use_mouse_with_options, UseMouseCoordType, UseMouseEventExtractor, UseMouseOptions,
|
use_mouse, use_mouse_with_options, UseMouseCoordType, UseMouseEventExtractor, UseMouseOptions,
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
use leptos::html::Div;
|
use leptos::html::Div;
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::demo_or_body;
|
use leptos_use::docs::demo_or_body;
|
||||||
use leptos_use::{use_mouse_in_element, UseMouseInElementReturn};
|
use leptos_use::{use_mouse_in_element, UseMouseInElementReturn};
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
use leptos::html::Div;
|
use leptos::html::Div;
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::demo_or_body;
|
use leptos_use::docs::demo_or_body;
|
||||||
use leptos_use::{use_mutation_observer_with_options, UseMutationObserverOptions};
|
use leptos_use::{use_mutation_observer_with_options, UseMutationObserverOptions};
|
||||||
use std::time::Duration;
|
use std::time::Duration;
|
||||||
|
@ -7,9 +7,9 @@ use std::time::Duration;
|
||||||
#[component]
|
#[component]
|
||||||
fn Demo() -> impl IntoView {
|
fn Demo() -> impl IntoView {
|
||||||
let el = create_node_ref::<Div>();
|
let el = create_node_ref::<Div>();
|
||||||
let (messages, set_messages) = create_signal(vec![]);
|
let (messages, set_messages) = signal(vec![]);
|
||||||
let (class_name, set_class_name) = create_signal(String::new());
|
let (class_name, set_class_name) = signal(String::new());
|
||||||
let (style, set_style) = create_signal(String::new());
|
let (style, set_style) = signal(String::new());
|
||||||
|
|
||||||
use_mutation_observer_with_options(
|
use_mutation_observer_with_options(
|
||||||
el,
|
el,
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::{demo_or_body, BooleanDisplay};
|
use leptos_use::docs::{demo_or_body, BooleanDisplay};
|
||||||
use leptos_use::math::use_not;
|
use leptos_use::math::use_not;
|
||||||
|
|
||||||
#[component]
|
#[component]
|
||||||
fn Demo() -> impl IntoView {
|
fn Demo() -> impl IntoView {
|
||||||
let (a, set_a) = create_signal(false);
|
let (a, set_a) = signal(false);
|
||||||
let not_a = use_not(a);
|
let not_a = use_not(a);
|
||||||
|
|
||||||
view! {
|
view! {
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::{demo_or_body, BooleanDisplay};
|
use leptos_use::docs::{demo_or_body, BooleanDisplay};
|
||||||
use leptos_use::math::use_or;
|
use leptos_use::math::use_or;
|
||||||
|
|
||||||
#[component]
|
#[component]
|
||||||
fn Demo() -> impl IntoView {
|
fn Demo() -> impl IntoView {
|
||||||
let (a, set_a) = create_signal(false);
|
let (a, set_a) = signal(false);
|
||||||
let (b, set_b) = create_signal(false);
|
let (b, set_b) = signal(false);
|
||||||
|
|
||||||
let a_or_b = use_or(a, b);
|
let a_or_b = use_or(a, b);
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::demo_or_body;
|
use leptos_use::docs::demo_or_body;
|
||||||
use leptos_use::use_permission;
|
use leptos_use::use_permission;
|
||||||
|
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::demo_or_body;
|
use leptos_use::docs::demo_or_body;
|
||||||
use leptos_use::{use_raf_fn, utils::Pausable};
|
use leptos_use::{use_raf_fn, utils::Pausable};
|
||||||
|
|
||||||
#[component]
|
#[component]
|
||||||
fn Demo() -> impl IntoView {
|
fn Demo() -> impl IntoView {
|
||||||
let (count, set_count) = create_signal(0);
|
let (count, set_count) = signal(0);
|
||||||
|
|
||||||
let Pausable {
|
let Pausable {
|
||||||
pause,
|
pause,
|
||||||
|
|
|
@ -1,12 +1,12 @@
|
||||||
use leptos::html::Textarea;
|
use leptos::html::Textarea;
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::{demo_or_body, Note};
|
use leptos_use::docs::{demo_or_body, Note};
|
||||||
use leptos_use::use_resize_observer;
|
use leptos_use::use_resize_observer;
|
||||||
|
|
||||||
#[component]
|
#[component]
|
||||||
fn Demo() -> impl IntoView {
|
fn Demo() -> impl IntoView {
|
||||||
let el = create_node_ref::<Textarea>();
|
let el = create_node_ref::<Textarea>();
|
||||||
let (text, set_text) = create_signal("".to_string());
|
let (text, set_text) = signal("".to_string());
|
||||||
|
|
||||||
use_resize_observer(el, move |entries, _| {
|
use_resize_observer(el, move |entries, _| {
|
||||||
let rect = entries[0].content_rect();
|
let rect = entries[0].content_rect();
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::demo_or_body;
|
use leptos_use::docs::demo_or_body;
|
||||||
use leptos_use::math::use_round;
|
use leptos_use::math::use_round;
|
||||||
|
|
||||||
#[component]
|
#[component]
|
||||||
fn Demo() -> impl IntoView {
|
fn Demo() -> impl IntoView {
|
||||||
let (value, set_value) = create_signal(5.95);
|
let (value, set_value) = signal(5.95);
|
||||||
|
|
||||||
let result: Signal<f64> = use_round(value);
|
let result: Signal<f64> = use_round(value);
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
use leptos::html::Div;
|
use leptos::html::Div;
|
||||||
use leptos::logging::log;
|
use leptos::logging::log;
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::{demo_or_body, BooleanDisplay};
|
use leptos_use::docs::{demo_or_body, BooleanDisplay};
|
||||||
use leptos_use::{use_scroll_with_options, ScrollBehavior, UseScrollOptions, UseScrollReturn};
|
use leptos_use::{use_scroll_with_options, ScrollBehavior, UseScrollOptions, UseScrollReturn};
|
||||||
|
|
||||||
|
@ -9,7 +9,7 @@ use web_sys::Event;
|
||||||
#[component]
|
#[component]
|
||||||
fn Demo() -> impl IntoView {
|
fn Demo() -> impl IntoView {
|
||||||
let el = create_node_ref::<Div>();
|
let el = create_node_ref::<Div>();
|
||||||
let (smooth, set_smooth) = create_signal(false);
|
let (smooth, set_smooth) = signal(false);
|
||||||
let behavior = Signal::derive(move || {
|
let behavior = Signal::derive(move || {
|
||||||
if smooth.get() {
|
if smooth.get() {
|
||||||
ScrollBehavior::Smooth
|
ScrollBehavior::Smooth
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::{demo_or_body, BooleanDisplay};
|
use leptos_use::docs::{demo_or_body, BooleanDisplay};
|
||||||
use leptos_use::{use_document, use_service_worker, UseServiceWorkerReturn};
|
use leptos_use::{use_document, use_service_worker, UseServiceWorkerReturn};
|
||||||
use web_sys::HtmlMetaElement;
|
use web_sys::HtmlMetaElement;
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::demo_or_body;
|
use leptos_use::docs::demo_or_body;
|
||||||
use leptos_use::use_sorted;
|
use leptos_use::use_sorted;
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::{demo_or_body, Note};
|
use leptos_use::docs::{demo_or_body, Note};
|
||||||
use leptos_use::storage::use_local_storage;
|
use leptos_use::storage::use_local_storage;
|
||||||
use leptos_use::utils::JsonCodec;
|
use leptos_use::utils::JsonCodec;
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::{demo_or_body, Note};
|
use leptos_use::docs::{demo_or_body, Note};
|
||||||
use leptos_use::use_throttle_fn;
|
use leptos_use::use_throttle_fn;
|
||||||
|
|
||||||
#[component]
|
#[component]
|
||||||
fn Demo() -> impl IntoView {
|
fn Demo() -> impl IntoView {
|
||||||
let (click_count, set_click_count) = create_signal(0);
|
let (click_count, set_click_count) = signal(0);
|
||||||
let (throttled_count, set_throttled_count) = create_signal(0);
|
let (throttled_count, set_throttled_count) = signal(0);
|
||||||
|
|
||||||
let throttled_fn = use_throttle_fn(
|
let throttled_fn = use_throttle_fn(
|
||||||
move || set_throttled_count.set(throttled_count.get_untracked() + 1),
|
move || set_throttled_count.set(throttled_count.get_untracked() + 1),
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::demo_or_body;
|
use leptos_use::docs::demo_or_body;
|
||||||
use leptos_use::{use_timeout_fn, UseTimeoutFnReturn};
|
use leptos_use::{use_timeout_fn, UseTimeoutFnReturn};
|
||||||
|
|
||||||
|
@ -6,7 +6,7 @@ use leptos_use::{use_timeout_fn, UseTimeoutFnReturn};
|
||||||
fn Demo() -> impl IntoView {
|
fn Demo() -> impl IntoView {
|
||||||
const DEFAULT_TEXT: &str = "Please wait for 3 seconds";
|
const DEFAULT_TEXT: &str = "Please wait for 3 seconds";
|
||||||
|
|
||||||
let (text, set_text) = create_signal(DEFAULT_TEXT.to_string());
|
let (text, set_text) = signal(DEFAULT_TEXT.to_string());
|
||||||
let UseTimeoutFnReturn {
|
let UseTimeoutFnReturn {
|
||||||
start, is_pending, ..
|
start, is_pending, ..
|
||||||
} = use_timeout_fn(
|
} = use_timeout_fn(
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::demo_or_body;
|
use leptos_use::docs::demo_or_body;
|
||||||
use leptos_use::use_timestamp;
|
use leptos_use::use_timestamp;
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::{demo_or_body, BooleanDisplay};
|
use leptos_use::docs::{demo_or_body, BooleanDisplay};
|
||||||
use leptos_use::{
|
use leptos_use::{
|
||||||
use_web_notification_with_options, NotificationDirection, ShowOptions,
|
use_web_notification_with_options, NotificationDirection, ShowOptions,
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::demo_or_body;
|
use leptos_use::docs::demo_or_body;
|
||||||
use leptos_use::{
|
use leptos_use::{
|
||||||
core::ConnectionReadyState, use_websocket, use_websocket_with_options, UseWebSocketOptions,
|
core::ConnectionReadyState, use_websocket, use_websocket_with_options, UseWebSocketOptions,
|
||||||
|
@ -9,7 +9,7 @@ use web_sys::{CloseEvent, Event};
|
||||||
|
|
||||||
#[component]
|
#[component]
|
||||||
fn Demo() -> impl IntoView {
|
fn Demo() -> impl IntoView {
|
||||||
let (history, set_history) = create_signal(vec![]);
|
let (history, set_history) = signal(vec![]);
|
||||||
|
|
||||||
fn update_history(&history: &WriteSignal<Vec<String>>, message: String) {
|
fn update_history(&history: &WriteSignal<Vec<String>>, message: String) {
|
||||||
let _ = &history.update(|history: &mut Vec<_>| history.push(message));
|
let _ = &history.update(|history: &mut Vec<_>| history.push(message));
|
||||||
|
@ -68,7 +68,7 @@ fn Demo() -> impl IntoView {
|
||||||
// use_websocket_with_options
|
// use_websocket_with_options
|
||||||
// ----------------------------
|
// ----------------------------
|
||||||
|
|
||||||
let (history2, set_history2) = create_signal(vec![]);
|
let (history2, set_history2) = signal(vec![]);
|
||||||
|
|
||||||
let on_open_callback = move |e: Event| {
|
let on_open_callback = move |e: Event| {
|
||||||
set_history2.update(|history: &mut Vec<_>| {
|
set_history2.update(|history: &mut Vec<_>| {
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
|
|
||||||
#[component]
|
#[component]
|
||||||
pub fn LogDisplay(#[prop(into)] log: Signal<Vec<String>>) -> impl IntoView {
|
pub fn LogDisplay(#[prop(into)] log: Signal<Vec<String>>) -> impl IntoView {
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::core::ConnectionReadyState;
|
use leptos_use::core::ConnectionReadyState;
|
||||||
use leptos_use::docs::demo_or_body;
|
use leptos_use::docs::demo_or_body;
|
||||||
use leptos_use::{use_webtransport_with_options, UseWebTransportOptions};
|
use leptos_use::{use_webtransport_with_options, UseWebTransportOptions};
|
||||||
|
@ -13,7 +13,7 @@ use stream_send::*;
|
||||||
|
|
||||||
#[component]
|
#[component]
|
||||||
fn Demo() -> impl IntoView {
|
fn Demo() -> impl IntoView {
|
||||||
let (datagrams_log, set_datagrams_log) = create_signal(vec![]);
|
let (datagrams_log, set_datagrams_log) = signal(vec![]);
|
||||||
|
|
||||||
let id = store_value(0);
|
let id = store_value(0);
|
||||||
|
|
||||||
|
@ -28,7 +28,7 @@ fn Demo() -> impl IntoView {
|
||||||
}),
|
}),
|
||||||
);
|
);
|
||||||
|
|
||||||
let (text, set_text) = create_signal("".to_string());
|
let (text, set_text) = signal("".to_string());
|
||||||
|
|
||||||
let on_send_datagrams = {
|
let on_send_datagrams = {
|
||||||
let transport = transport.clone();
|
let transport = transport.clone();
|
||||||
|
@ -56,7 +56,7 @@ fn Demo() -> impl IntoView {
|
||||||
false,
|
false,
|
||||||
);
|
);
|
||||||
|
|
||||||
let (bidir_streams, set_bidir_streams) = create_signal(vec![]);
|
let (bidir_streams, set_bidir_streams) = signal(vec![]);
|
||||||
|
|
||||||
let on_open_bidir_stream = {
|
let on_open_bidir_stream = {
|
||||||
let transport = transport.clone();
|
let transport = transport.clone();
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
use crate::{LogDisplay, StreamSend};
|
use crate::{LogDisplay, StreamSend};
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::core::ConnectionReadyState;
|
use leptos_use::core::ConnectionReadyState;
|
||||||
use leptos_use::BidirStream;
|
use leptos_use::BidirStream;
|
||||||
|
|
||||||
|
@ -8,7 +8,7 @@ pub fn StreamBidir(
|
||||||
#[prop(into)] ready_state: Signal<ConnectionReadyState>,
|
#[prop(into)] ready_state: Signal<ConnectionReadyState>,
|
||||||
stream: BidirStream,
|
stream: BidirStream,
|
||||||
) -> impl IntoView {
|
) -> impl IntoView {
|
||||||
let (log, set_log) = create_signal(vec![]);
|
let (log, set_log) = signal(vec![]);
|
||||||
|
|
||||||
let on_send = move |msg| {
|
let on_send = move |msg| {
|
||||||
set_log.update(|log| log.push(format!("Sent: '{}'", msg)));
|
set_log.update(|log| log.push(format!("Sent: '{}'", msg)));
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::core::ConnectionReadyState;
|
use leptos_use::core::ConnectionReadyState;
|
||||||
use leptos_use::SendableStream;
|
use leptos_use::SendableStream;
|
||||||
|
|
||||||
|
@ -12,7 +12,7 @@ where
|
||||||
S: SendableStream + 'static,
|
S: SendableStream + 'static,
|
||||||
F: Fn(String) + 'static,
|
F: Fn(String) + 'static,
|
||||||
{
|
{
|
||||||
let (text, set_text) = create_signal("".to_string());
|
let (text, set_text) = signal("".to_string());
|
||||||
|
|
||||||
let on_send = {
|
let on_send = {
|
||||||
move |_| {
|
move |_| {
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
|
|
||||||
#[component]
|
#[component]
|
||||||
pub fn LogDisplay(#[prop(into)] log: Signal<Vec<String>>) -> impl IntoView {
|
pub fn LogDisplay(#[prop(into)] log: Signal<Vec<String>>) -> impl IntoView {
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::core::ConnectionReadyState;
|
use leptos_use::core::ConnectionReadyState;
|
||||||
use leptos_use::docs::demo_or_body;
|
use leptos_use::docs::demo_or_body;
|
||||||
use leptos_use::{use_webtransport_with_options, UseWebTransportOptions};
|
use leptos_use::{use_webtransport_with_options, UseWebTransportOptions};
|
||||||
|
@ -13,8 +13,8 @@ use stream_send::*;
|
||||||
|
|
||||||
#[component]
|
#[component]
|
||||||
fn Demo() -> impl IntoView {
|
fn Demo() -> impl IntoView {
|
||||||
let (datagrams_log, set_datagrams_log) = create_signal(vec![]);
|
let (datagrams_log, set_datagrams_log) = signal(vec![]);
|
||||||
let (bidir_streams, set_bidir_streams) = create_signal(vec![]);
|
let (bidir_streams, set_bidir_streams) = signal(vec![]);
|
||||||
|
|
||||||
let id = store_value(0);
|
let id = store_value(0);
|
||||||
|
|
||||||
|
@ -37,7 +37,7 @@ fn Demo() -> impl IntoView {
|
||||||
}),
|
}),
|
||||||
);
|
);
|
||||||
|
|
||||||
let (text, set_text) = create_signal("".to_string());
|
let (text, set_text) = signal("".to_string());
|
||||||
|
|
||||||
let on_send_datagrams = {
|
let on_send_datagrams = {
|
||||||
let transport = transport.clone();
|
let transport = transport.clone();
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
use crate::{LogDisplay, StreamSend};
|
use crate::{LogDisplay, StreamSend};
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::core::ConnectionReadyState;
|
use leptos_use::core::ConnectionReadyState;
|
||||||
use leptos_use::{BidirStream, CloseableStream, StreamState};
|
use leptos_use::{BidirStream, CloseableStream, StreamState};
|
||||||
|
|
||||||
|
@ -9,7 +9,7 @@ pub fn StreamBidir(
|
||||||
stream: BidirStream,
|
stream: BidirStream,
|
||||||
opened_by: &'static str,
|
opened_by: &'static str,
|
||||||
) -> impl IntoView {
|
) -> impl IntoView {
|
||||||
let (log, set_log) = create_signal(vec![]);
|
let (log, set_log) = signal(vec![]);
|
||||||
|
|
||||||
let on_send = move |msg| {
|
let on_send = move |msg| {
|
||||||
set_log.update(|log| log.push(format!("Sent: '{}'", msg)));
|
set_log.update(|log| log.push(format!("Sent: '{}'", msg)));
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::core::ConnectionReadyState;
|
use leptos_use::core::ConnectionReadyState;
|
||||||
use leptos_use::{SendableStream, StreamState};
|
use leptos_use::{SendableStream, StreamState};
|
||||||
|
|
||||||
|
@ -13,7 +13,7 @@ where
|
||||||
S: SendableStream + 'static,
|
S: SendableStream + 'static,
|
||||||
F: Fn(String) + 'static,
|
F: Fn(String) + 'static,
|
||||||
{
|
{
|
||||||
let (text, set_text) = create_signal("".to_string());
|
let (text, set_text) = signal("".to_string());
|
||||||
|
|
||||||
let on_send = {
|
let on_send = {
|
||||||
move |_| {
|
move |_| {
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::demo_or_body;
|
use leptos_use::docs::demo_or_body;
|
||||||
use leptos_use::use_window_focus;
|
use leptos_use::use_window_focus;
|
||||||
|
|
||||||
|
@ -6,7 +6,7 @@ use leptos_use::use_window_focus;
|
||||||
fn Demo() -> impl IntoView {
|
fn Demo() -> impl IntoView {
|
||||||
let start_message = "💡 Click somewhere outside of the document to unfocus.";
|
let start_message = "💡 Click somewhere outside of the document to unfocus.";
|
||||||
|
|
||||||
let (message, set_message) = create_signal(start_message);
|
let (message, set_message) = signal(start_message);
|
||||||
|
|
||||||
let focused = use_window_focus();
|
let focused = use_window_focus();
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::{demo_or_body, Note};
|
use leptos_use::docs::{demo_or_body, Note};
|
||||||
use leptos_use::use_window_scroll;
|
use leptos_use::use_window_scroll;
|
||||||
|
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::{demo_or_body, Note};
|
use leptos_use::docs::{demo_or_body, Note};
|
||||||
use leptos_use::{watch_debounced_with_options, WatchDebouncedOptions};
|
use leptos_use::{watch_debounced_with_options, WatchDebouncedOptions};
|
||||||
|
|
||||||
#[component]
|
#[component]
|
||||||
fn Demo() -> impl IntoView {
|
fn Demo() -> impl IntoView {
|
||||||
let (input, set_input) = create_signal("".to_string());
|
let (input, set_input) = signal("".to_string());
|
||||||
let (updated, set_updated) = create_signal(0);
|
let (updated, set_updated) = signal(0);
|
||||||
|
|
||||||
let _ = watch_debounced_with_options(
|
let _ = watch_debounced_with_options(
|
||||||
move || input.get(),
|
move || input.get(),
|
||||||
|
|
|
@ -1,13 +1,13 @@
|
||||||
use leptos::html::Input;
|
use leptos::html::Input;
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::{demo_or_body, Note};
|
use leptos_use::docs::{demo_or_body, Note};
|
||||||
use leptos_use::{watch_pausable, WatchPausableReturn};
|
use leptos_use::{watch_pausable, WatchPausableReturn};
|
||||||
|
|
||||||
#[component]
|
#[component]
|
||||||
fn Demo() -> impl IntoView {
|
fn Demo() -> impl IntoView {
|
||||||
let input = create_node_ref::<Input>();
|
let input = create_node_ref::<Input>();
|
||||||
let (log, set_log) = create_signal("".to_string());
|
let (log, set_log) = signal("".to_string());
|
||||||
let (source, set_source) = create_signal("".to_string());
|
let (source, set_source) = signal("".to_string());
|
||||||
|
|
||||||
let WatchPausableReturn {
|
let WatchPausableReturn {
|
||||||
pause,
|
pause,
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use leptos_use::docs::{demo_or_body, Note};
|
use leptos_use::docs::{demo_or_body, Note};
|
||||||
use leptos_use::watch_throttled;
|
use leptos_use::watch_throttled;
|
||||||
|
|
||||||
#[component]
|
#[component]
|
||||||
fn Demo() -> impl IntoView {
|
fn Demo() -> impl IntoView {
|
||||||
let (input, set_input) = create_signal("".to_string());
|
let (input, set_input) = signal("".to_string());
|
||||||
let (updated, set_updated) = create_signal(0);
|
let (updated, set_updated) = signal(0);
|
||||||
|
|
||||||
let _ = watch_throttled(
|
let _ = watch_throttled(
|
||||||
move || input.get(),
|
move || input.get(),
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
use crate::{UseDocument, UseWindow};
|
use crate::{UseDocument, UseWindow};
|
||||||
use cfg_if::cfg_if;
|
use cfg_if::cfg_if;
|
||||||
use leptos::html::ElementDescriptor;
|
use leptos::html::HtmlElement;
|
||||||
use leptos::*;
|
use leptos::prelude::wrappers::read::Signal;
|
||||||
|
use leptos::prelude::*;
|
||||||
use std::marker::PhantomData;
|
use std::marker::PhantomData;
|
||||||
use std::ops::Deref;
|
use std::ops::Deref;
|
||||||
|
|
||||||
|
|
|
@ -2,7 +2,8 @@ use crate::core::ElementMaybeSignal;
|
||||||
use crate::{UseDocument, UseWindow};
|
use crate::{UseDocument, UseWindow};
|
||||||
use cfg_if::cfg_if;
|
use cfg_if::cfg_if;
|
||||||
use leptos::html::ElementDescriptor;
|
use leptos::html::ElementDescriptor;
|
||||||
use leptos::*;
|
use leptos::prelude::wrappers::read::Signal;
|
||||||
|
use leptos::prelude::*;
|
||||||
use std::marker::PhantomData;
|
use std::marker::PhantomData;
|
||||||
use std::ops::Deref;
|
use std::ops::Deref;
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
use std::fmt::Debug;
|
use std::fmt::Debug;
|
||||||
|
|
||||||
pub enum MaybeRwSignal<T>
|
pub enum MaybeRwSignal<T>
|
||||||
|
@ -91,7 +91,7 @@ impl<T: Clone> MaybeRwSignal<T> {
|
||||||
pub fn into_signal(self) -> (Signal<T>, WriteSignal<T>) {
|
pub fn into_signal(self) -> (Signal<T>, WriteSignal<T>) {
|
||||||
match self {
|
match self {
|
||||||
Self::DynamicRead(s) => {
|
Self::DynamicRead(s) => {
|
||||||
let (r, w) = create_signal(s.get_untracked());
|
let (r, w) = signal(s.get_untracked());
|
||||||
|
|
||||||
create_effect(move |_| {
|
create_effect(move |_| {
|
||||||
w.update(move |w| {
|
w.update(move |w| {
|
||||||
|
@ -103,7 +103,7 @@ impl<T: Clone> MaybeRwSignal<T> {
|
||||||
}
|
}
|
||||||
Self::DynamicRw(r, w) => (r, w),
|
Self::DynamicRw(r, w) => (r, w),
|
||||||
Self::Static(v) => {
|
Self::Static(v) => {
|
||||||
let (r, w) = create_signal(v.clone());
|
let (r, w) = signal(v.clone());
|
||||||
(Signal::from(r), w)
|
(Signal::from(r), w)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
use leptos::window;
|
use leptos::prelude::*;
|
||||||
use wasm_bindgen::JsValue;
|
use wasm_bindgen::JsValue;
|
||||||
|
|
||||||
/// Local or session storage or a custom store that is a `web_sys::Storage`.
|
/// Local or session storage or a custom store that is a `web_sys::Storage`.
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
use leptos::window;
|
use leptos::prelude::*;
|
||||||
|
|
||||||
#[cfg_attr(feature = "ssr", allow(dead_code))]
|
#[cfg_attr(feature = "ssr", allow(dead_code))]
|
||||||
fn get() -> web_sys::Url {
|
fn get() -> web_sys::Url {
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
|
|
||||||
pub enum UseRwSignal<T: 'static> {
|
pub enum UseRwSignal<T: 'static> {
|
||||||
Separate(Signal<T>, WriteSignal<T>),
|
Separate(Signal<T>, WriteSignal<T>),
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
|
|
||||||
#[component]
|
#[component]
|
||||||
pub fn BooleanDisplay(
|
pub fn BooleanDisplay(
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
use leptos::document;
|
use leptos::prelude::*;
|
||||||
use wasm_bindgen::JsCast;
|
use wasm_bindgen::JsCast;
|
||||||
|
|
||||||
pub fn demo_or_body() -> web_sys::HtmlElement {
|
pub fn demo_or_body() -> web_sys::HtmlElement {
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
|
|
||||||
#[component]
|
#[component]
|
||||||
pub fn Note(#[prop(optional, into)] class: String, children: Children) -> impl IntoView {
|
pub fn Note(#[prop(optional, into)] class: String, children: Children) -> impl IntoView {
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
use crate::utils::use_derive_signal;
|
use crate::utils::use_derive_signal;
|
||||||
use leptos::*;
|
use leptos::prelude::wrappers::read::Signal;
|
||||||
|
use leptos::prelude::*;
|
||||||
|
|
||||||
use_derive_signal!(
|
use_derive_signal!(
|
||||||
/// Reactive `Result::is_err()`.
|
/// Reactive `Result::is_err()`.
|
||||||
|
@ -7,12 +8,12 @@ use_derive_signal!(
|
||||||
/// ## Usage
|
/// ## Usage
|
||||||
///
|
///
|
||||||
/// ```
|
/// ```
|
||||||
/// # use leptos::*;
|
/// # use leptos::prelude::*;
|
||||||
/// # use leptos_use::is_err;
|
/// # use leptos_use::is_err;
|
||||||
/// #
|
/// #
|
||||||
/// # #[component]
|
/// # #[component]
|
||||||
/// # fn Demo() -> impl IntoView {
|
/// # fn Demo() -> impl IntoView {
|
||||||
/// let (example, set_example) = create_signal(
|
/// let (example, set_example) = signal(
|
||||||
/// if js_sys::Math::random() < 0.5 { Ok("Example") } else { Err(()) }
|
/// if js_sys::Math::random() < 0.5 { Ok("Example") } else { Err(()) }
|
||||||
/// );
|
/// );
|
||||||
///
|
///
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
use crate::utils::use_derive_signal;
|
use crate::utils::use_derive_signal;
|
||||||
use leptos::*;
|
use leptos::prelude::wrappers::read::Signal;
|
||||||
|
use leptos::prelude::*;
|
||||||
|
|
||||||
use_derive_signal!(
|
use_derive_signal!(
|
||||||
/// Reactive `Option::is_none()`.
|
/// Reactive `Option::is_none()`.
|
||||||
|
@ -7,12 +8,12 @@ use_derive_signal!(
|
||||||
/// ## Usage
|
/// ## Usage
|
||||||
///
|
///
|
||||||
/// ```
|
/// ```
|
||||||
/// # use leptos::*;
|
/// # use leptos::prelude::*;
|
||||||
/// # use leptos_use::is_none;
|
/// # use leptos_use::is_none;
|
||||||
/// #
|
/// #
|
||||||
/// # #[component]
|
/// # #[component]
|
||||||
/// # fn Demo() -> impl IntoView {
|
/// # fn Demo() -> impl IntoView {
|
||||||
/// let (example, set_example) = create_signal(
|
/// let (example, set_example) = signal(
|
||||||
/// if js_sys::Math::random() < 0.5 { Some("Example") } else { None }
|
/// if js_sys::Math::random() < 0.5 { Some("Example") } else { None }
|
||||||
/// );
|
/// );
|
||||||
///
|
///
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
use crate::utils::use_derive_signal;
|
use crate::utils::use_derive_signal;
|
||||||
use leptos::*;
|
use leptos::prelude::*;
|
||||||
|
|
||||||
use_derive_signal!(
|
use_derive_signal!(
|
||||||
/// Reactive `Result::is_ok()`.
|
/// Reactive `Result::is_ok()`.
|
||||||
|
@ -7,12 +7,12 @@ use_derive_signal!(
|
||||||
/// ## Usage
|
/// ## Usage
|
||||||
///
|
///
|
||||||
/// ```
|
/// ```
|
||||||
/// # use leptos::*;
|
/// # use leptos::prelude::*;
|
||||||
/// # use leptos_use::is_ok;
|
/// # use leptos_use::is_ok;
|
||||||
/// #
|
/// #
|
||||||
/// # #[component]
|
/// # #[component]
|
||||||
/// # fn Demo() -> impl IntoView {
|
/// # fn Demo() -> impl IntoView {
|
||||||
/// let (example, set_example) = create_signal(
|
/// let (example, set_example) = signal(
|
||||||
/// if js_sys::Math::random() < 0.5 { Ok("Example") } else { Err(()) }
|
/// if js_sys::Math::random() < 0.5 { Ok("Example") } else { Err(()) }
|
||||||
/// );
|
/// );
|
||||||
///
|
///
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
use crate::utils::use_derive_signal;
|
use crate::utils::use_derive_signal;
|
||||||
use leptos::*;
|
use leptos::prelude::wrappers::read::Signal;
|
||||||
|
use leptos::prelude::*;
|
||||||
|
|
||||||
use_derive_signal!(
|
use_derive_signal!(
|
||||||
/// Reactive `Option::is_some()`.
|
/// Reactive `Option::is_some()`.
|
||||||
|
@ -7,12 +8,12 @@ use_derive_signal!(
|
||||||
/// ## Usage
|
/// ## Usage
|
||||||
///
|
///
|
||||||
/// ```
|
/// ```
|
||||||
/// # use leptos::*;
|
/// # use leptos::prelude::*;
|
||||||
/// # use leptos_use::is_some;
|
/// # use leptos_use::is_some;
|
||||||
/// #
|
/// #
|
||||||
/// # #[component]
|
/// # #[component]
|
||||||
/// # fn Demo() -> impl IntoView {
|
/// # fn Demo() -> impl IntoView {
|
||||||
/// let (example, set_example) = create_signal(
|
/// let (example, set_example) = signal(
|
||||||
/// if js_sys::Math::random() < 0.5 { Some("Example") } else { None }
|
/// if js_sys::Math::random() < 0.5 { Some("Example") } else { None }
|
||||||
/// );
|
/// );
|
||||||
///
|
///
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
use crate::math::shared::use_simple_math;
|
use crate::math::shared::use_simple_math;
|
||||||
use leptos::*;
|
use leptos::prelude::wrappers::read::Signal;
|
||||||
|
use leptos::prelude::*;
|
||||||
use num::Float;
|
use num::Float;
|
||||||
use paste::paste;
|
use paste::paste;
|
||||||
|
|
||||||
|
@ -13,12 +14,12 @@ use_simple_math!(
|
||||||
/// ## Usage
|
/// ## Usage
|
||||||
///
|
///
|
||||||
/// ```
|
/// ```
|
||||||
/// # use leptos::*;
|
/// # use leptos::prelude::*;
|
||||||
/// # use leptos_use::math::use_abs;
|
/// # use leptos_use::math::use_abs;
|
||||||
/// #
|
/// #
|
||||||
/// # #[component]
|
/// # #[component]
|
||||||
/// # fn Demo() -> impl IntoView {
|
/// # fn Demo() -> impl IntoView {
|
||||||
/// let (value, set_value) = create_signal(-32.25);
|
/// let (value, set_value) = signal(-32.25);
|
||||||
/// let result: Signal<f64> = use_abs(value); // 32.25
|
/// let result: Signal<f64> = use_abs(value); // 32.25
|
||||||
/// #
|
/// #
|
||||||
/// # assert_eq!(result.get(), 32.25);
|
/// # assert_eq!(result.get(), 32.25);
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
use crate::math::shared::use_binary_logic;
|
use crate::math::shared::use_binary_logic;
|
||||||
use leptos::*;
|
use leptos::prelude::wrappers::read::Signal;
|
||||||
|
use leptos::prelude::*;
|
||||||
use paste::paste;
|
use paste::paste;
|
||||||
|
|
||||||
use_binary_logic!(
|
use_binary_logic!(
|
||||||
|
@ -12,13 +13,13 @@ use_binary_logic!(
|
||||||
/// ## Usage
|
/// ## Usage
|
||||||
///
|
///
|
||||||
/// ```
|
/// ```
|
||||||
/// # use leptos::*;
|
/// # use leptos::prelude::*;
|
||||||
/// # use leptos_use::math::use_and;
|
/// # use leptos_use::math::use_and;
|
||||||
/// #
|
/// #
|
||||||
/// # #[component]
|
/// # #[component]
|
||||||
/// # fn Demo() -> impl IntoView {
|
/// # fn Demo() -> impl IntoView {
|
||||||
/// let (a, set_a) = create_signal(true);
|
/// let (a, set_a) = signal(true);
|
||||||
/// let (b, set_b) = create_signal(false);
|
/// let (b, set_b) = signal(false);
|
||||||
///
|
///
|
||||||
/// let a_and_b = use_and(a, b);
|
/// let a_and_b = use_and(a, b);
|
||||||
/// #
|
/// #
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
use crate::math::shared::use_simple_math;
|
use crate::math::shared::use_simple_math;
|
||||||
use leptos::*;
|
use leptos::prelude::wrappers::read::Signal;
|
||||||
|
use leptos::prelude::*;
|
||||||
use num::Float;
|
use num::Float;
|
||||||
use paste::paste;
|
use paste::paste;
|
||||||
|
|
||||||
|
@ -13,12 +14,12 @@ use_simple_math!(
|
||||||
/// ## Usage
|
/// ## Usage
|
||||||
///
|
///
|
||||||
/// ```
|
/// ```
|
||||||
/// # use leptos::*;
|
/// # use leptos::prelude::*;
|
||||||
/// # use leptos_use::math::use_ceil;
|
/// # use leptos_use::math::use_ceil;
|
||||||
/// #
|
/// #
|
||||||
/// # #[component]
|
/// # #[component]
|
||||||
/// # fn Demo() -> impl IntoView {
|
/// # fn Demo() -> impl IntoView {
|
||||||
/// let (value, set_value) = create_signal(44.15);
|
/// let (value, set_value) = signal(44.15);
|
||||||
/// let result: Signal<f64> = use_ceil(value); // 45
|
/// let result: Signal<f64> = use_ceil(value); // 45
|
||||||
/// #
|
/// #
|
||||||
/// # assert_eq!(result.get(), 45.0);
|
/// # assert_eq!(result.get(), 45.0);
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
use crate::math::shared::use_simple_math;
|
use crate::math::shared::use_simple_math;
|
||||||
use leptos::*;
|
use leptos::prelude::wrappers::read::Signal;
|
||||||
|
use leptos::prelude::*;
|
||||||
use num::Float;
|
use num::Float;
|
||||||
use paste::paste;
|
use paste::paste;
|
||||||
|
|
||||||
|
@ -13,12 +14,12 @@ use_simple_math!(
|
||||||
/// ## Usage
|
/// ## Usage
|
||||||
///
|
///
|
||||||
/// ```
|
/// ```
|
||||||
/// # use leptos::*;
|
/// # use leptos::prelude::*;
|
||||||
/// # use leptos_use::math::use_floor;
|
/// # use leptos_use::math::use_floor;
|
||||||
/// #
|
/// #
|
||||||
/// # #[component]
|
/// # #[component]
|
||||||
/// # fn Demo() -> impl IntoView {
|
/// # fn Demo() -> impl IntoView {
|
||||||
/// let (value, set_value) = create_signal(45.95);
|
/// let (value, set_value) = signal(45.95);
|
||||||
/// let result: Signal<f64> = use_floor(value); // 45
|
/// let result: Signal<f64> = use_floor(value); // 45
|
||||||
/// #
|
/// #
|
||||||
/// # assert_eq!(result.get(), 45.0);
|
/// # assert_eq!(result.get(), 45.0);
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
use crate::math::shared::use_partial_cmp;
|
use crate::math::shared::use_partial_cmp;
|
||||||
use leptos::*;
|
use leptos::prelude::wrappers::read::Signal;
|
||||||
|
use leptos::prelude::*;
|
||||||
use std::cmp::Ordering;
|
use std::cmp::Ordering;
|
||||||
|
|
||||||
use_partial_cmp!(
|
use_partial_cmp!(
|
||||||
|
@ -14,12 +15,12 @@ use_partial_cmp!(
|
||||||
/// ## Usage
|
/// ## Usage
|
||||||
///
|
///
|
||||||
/// ```
|
/// ```
|
||||||
/// # use leptos::*;
|
/// # use leptos::prelude::*;
|
||||||
/// # use leptos_use::math::use_max;
|
/// # use leptos_use::math::use_max;
|
||||||
/// #
|
/// #
|
||||||
/// # #[component]
|
/// # #[component]
|
||||||
/// # fn Demo() -> impl IntoView {
|
/// # fn Demo() -> impl IntoView {
|
||||||
/// let (values, set_values) = create_signal(vec![1.0, 2.0, 3.0, f32::NAN, 4.0, 5.0]);
|
/// let (values, set_values) = signal(vec![1.0, 2.0, 3.0, f32::NAN, 4.0, 5.0]);
|
||||||
/// let result = use_max::<Vec<f32>, _, _>(values); // Some(5.0)
|
/// let result = use_max::<Vec<f32>, _, _>(values); // Some(5.0)
|
||||||
/// #
|
/// #
|
||||||
/// # assert_eq!(result.get(), Some(5.0));
|
/// # assert_eq!(result.get(), Some(5.0));
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
use crate::math::shared::use_partial_cmp;
|
use crate::math::shared::use_partial_cmp;
|
||||||
use leptos::*;
|
use leptos::prelude::wrappers::read::Signal;
|
||||||
|
use leptos::prelude::*;
|
||||||
use std::cmp::Ordering;
|
use std::cmp::Ordering;
|
||||||
|
|
||||||
use_partial_cmp!(
|
use_partial_cmp!(
|
||||||
|
@ -14,12 +15,12 @@ use_partial_cmp!(
|
||||||
/// ## Usage
|
/// ## Usage
|
||||||
///
|
///
|
||||||
/// ```
|
/// ```
|
||||||
/// # use leptos::*;
|
/// # use leptos::prelude::*;
|
||||||
/// # use leptos_use::math::use_min;
|
/// # use leptos_use::math::use_min;
|
||||||
/// #
|
/// #
|
||||||
/// # #[component]
|
/// # #[component]
|
||||||
/// # fn Demo() -> impl IntoView {
|
/// # fn Demo() -> impl IntoView {
|
||||||
/// let (values, set_values) = create_signal(vec![1.0, 2.0, 3.0, f32::NAN, 4.0, 5.0]);
|
/// let (values, set_values) = signal(vec![1.0, 2.0, 3.0, f32::NAN, 4.0, 5.0]);
|
||||||
/// let result = use_min::<Vec<f32>, _, _>(values); // Some(1.0)
|
/// let result = use_min::<Vec<f32>, _, _>(values); // Some(1.0)
|
||||||
/// #
|
/// #
|
||||||
/// # assert_eq!(result.get(), Some(1.0));
|
/// # assert_eq!(result.get(), Some(1.0));
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
use leptos::*;
|
use leptos::prelude::wrappers::read::Signal;
|
||||||
|
use leptos::prelude::*;
|
||||||
|
|
||||||
/// Reactive `NOT` condition.
|
/// Reactive `NOT` condition.
|
||||||
///
|
///
|
||||||
|
@ -9,12 +10,12 @@ use leptos::*;
|
||||||
/// ## Usage
|
/// ## Usage
|
||||||
///
|
///
|
||||||
/// ```
|
/// ```
|
||||||
/// # use leptos::*;
|
/// # use leptos::prelude::*;
|
||||||
/// # use leptos_use::math::use_not;
|
/// # use leptos_use::math::use_not;
|
||||||
/// #
|
/// #
|
||||||
/// # #[component]
|
/// # #[component]
|
||||||
/// # fn Demo() -> impl IntoView {
|
/// # fn Demo() -> impl IntoView {
|
||||||
/// let (a, set_a) = create_signal(true);
|
/// let (a, set_a) = signal(true);
|
||||||
///
|
///
|
||||||
/// let not_a = use_not(a);
|
/// let not_a = use_not(a);
|
||||||
/// #
|
/// #
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
use crate::math::shared::use_binary_logic;
|
use crate::math::shared::use_binary_logic;
|
||||||
use leptos::*;
|
use leptos::prelude::wrappers::read::Signal;
|
||||||
|
use leptos::prelude::*;
|
||||||
use paste::paste;
|
use paste::paste;
|
||||||
|
|
||||||
use_binary_logic!(
|
use_binary_logic!(
|
||||||
|
@ -12,13 +13,13 @@ use_binary_logic!(
|
||||||
/// ## Usage
|
/// ## Usage
|
||||||
///
|
///
|
||||||
/// ```
|
/// ```
|
||||||
/// # use leptos::*;
|
/// # use leptos::prelude::*;
|
||||||
/// # use leptos_use::math::use_or;
|
/// # use leptos_use::math::use_or;
|
||||||
/// #
|
/// #
|
||||||
/// # #[component]
|
/// # #[component]
|
||||||
/// # fn Demo() -> impl IntoView {
|
/// # fn Demo() -> impl IntoView {
|
||||||
/// let (a, set_a) = create_signal(true);
|
/// let (a, set_a) = signal(true);
|
||||||
/// let (b, set_b) = create_signal(false);
|
/// let (b, set_b) = signal(false);
|
||||||
///
|
///
|
||||||
/// let a_or_b = use_or(a, b);
|
/// let a_or_b = use_or(a, b);
|
||||||
/// #
|
/// #
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
use crate::math::shared::use_simple_math;
|
use crate::math::shared::use_simple_math;
|
||||||
use leptos::*;
|
use leptos::prelude::wrappers::read::Signal;
|
||||||
|
use leptos::prelude::*;
|
||||||
use num::Float;
|
use num::Float;
|
||||||
use paste::paste;
|
use paste::paste;
|
||||||
|
|
||||||
|
@ -13,12 +14,12 @@ use_simple_math!(
|
||||||
/// ## Usage
|
/// ## Usage
|
||||||
///
|
///
|
||||||
/// ```
|
/// ```
|
||||||
/// # use leptos::*;
|
/// # use leptos::prelude::*;
|
||||||
/// # use leptos_use::math::use_round;
|
/// # use leptos_use::math::use_round;
|
||||||
/// #
|
/// #
|
||||||
/// # #[component]
|
/// # #[component]
|
||||||
/// # fn Demo() -> impl IntoView {
|
/// # fn Demo() -> impl IntoView {
|
||||||
/// let (value, set_value) = create_signal(45.95);
|
/// let (value, set_value) = signal(45.95);
|
||||||
/// let result: Signal<f64> = use_round(value); // 46
|
/// let result: Signal<f64> = use_round(value); // 46
|
||||||
/// #
|
/// #
|
||||||
/// # assert_eq!(result.get(), 46.0);
|
/// # assert_eq!(result.get(), 46.0);
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Reference in a new issue