Files
dioxus/packages/web/Cargo.toml
T
79a2f023e7 Add the onvisible event handler to Element (#2911)
* Add the `onvisible` event using the IntersectionObserver

* Add a visible example

This example is based on https://codepen.io/ryanfinni/pen/VwZeGxN

* Remove web-sys CustomEvent feature for html package

* update js bindings and hash

* Use dioxus doc instead of lorem ipsum

* Fix clippy warning

* Add get_target method to the event data

* Make `get_time` return an Instant instead of a f64

* fix merge conflicts, compilinga

* remove target

* small nits

* serialzie as time_ms

* fix timing, works on desktop

* remove latent nits, fix hash

* box size clippy

* fix browserlist cargo.lock

---------

Co-authored-by: Evan Almloff <evanalmloff@gmail.com>
Co-authored-by: Jonathan Kelley <jkelleyrtp@gmail.com>
2024-12-02 13:51:27 -08:00

122 lines
3.3 KiB
TOML

[package]
name = "dioxus-web"
version = { workspace = true }
authors = ["Jonathan Kelley"]
edition = "2021"
description = "Web renderer for Dioxus using websys"
license = "MIT OR Apache-2.0"
repository = "https://github.com/DioxusLabs/dioxus/"
homepage = "https://dioxuslabs.com/learn/0.5/getting_started"
keywords = ["dom", "ui", "gui", "react", "wasm"]
[dependencies]
dioxus-core = { workspace = true }
dioxus-core-types = { workspace = true }
dioxus-cli-config = { workspace = true, features = ["web"] }
dioxus-html = { workspace = true }
dioxus-history = { workspace = true }
dioxus-document = { workspace = true }
dioxus-devtools = { workspace = true }
dioxus-signals = { workspace = true }
dioxus-interpreter-js = { workspace = true, features = [
"minimal_bindings",
"webonly",
] }
generational-box = { workspace = true }
js-sys = "0.3.70"
wasm-bindgen = { workspace = true }
wasm-bindgen-futures = "0.4.29"
tracing = { workspace = true }
rustc-hash = { workspace = true }
console_error_panic_hook = { version = "0.1.7", optional = true }
futures-util = { workspace = true, features = [
"std",
"async-await",
"async-await-macro",
] }
futures-channel = { workspace = true }
serde_json = { version = "1.0", optional = true }
serde = { version = "1.0", optional = true }
serde-wasm-bindgen = { version = "0.5.0", optional = true }
ciborium = { workspace = true, optional = true }
async-trait = { version = "0.1.58", optional = true }
[dependencies.web-sys]
version = "0.3.70"
features = [
"AnimationEvent",
"ClipboardEvent",
"CloseEvent",
"Comment",
"CompositionEvent",
"console",
"CustomEvent",
"DataTransfer",
"Document",
"DragEvent",
"FocusEvent",
"History",
"HtmlElement",
"HtmlFormElement",
"HtmlInputElement",
"HtmlSelectElement",
"HtmlTextAreaElement",
"IntersectionObserverEntry",
"InputEvent",
"KeyboardEvent",
"MouseEvent",
"NodeList",
"PointerEvent",
"ResizeObserverEntry",
"ResizeObserverSize",
"ScrollRestoration",
"Text",
"Touch",
"TouchEvent",
"TouchList",
"TransitionEvent",
"WheelEvent",
"Window",
]
[build-dependencies]
lazy-js-bundle = { workspace = true }
[features]
default = ["panic_hook", "mounted", "file_engine", "devtools", "document"]
panic_hook = ["dep:console_error_panic_hook"]
hydrate = ["web-sys/Comment", "ciborium", "dep:serde"]
mounted = [
"web-sys/Element",
"dioxus-html/mounted",
"web-sys/Element",
"web-sys/DomRect",
"web-sys/ScrollIntoViewOptions",
"web-sys/ScrollLogicalPosition",
"web-sys/ScrollBehavior",
"web-sys/HtmlElement",
]
file_engine = [
"dioxus-html/file_engine",
"dep:async-trait",
"web-sys/File",
"web-sys/FileList",
"web-sys/FileReader"
]
devtools = ["web-sys/MessageEvent", "web-sys/WebSocket", "web-sys/Location", "dep:serde_json", "dep:serde", "dioxus-core/serialize"]
document = ["dep:serde-wasm-bindgen", "dep:serde_json", "dep:serde"]
[dev-dependencies]
dioxus = { workspace = true, default-features = true }
wasm-bindgen-test = "0.3.29"
dioxus-ssr = { workspace = true, default-features = false }
gloo-timers = "0.2.3"
gloo-dialogs = "0.1.1"
dioxus-web = { path = ".", features = ["hydrate"] }
tracing-wasm = "0.2.1"
[package.metadata.docs.rs]
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]