mirror of
https://github.com/DioxusLabs/dioxus
synced 2024-12-05 02:19:17 +00:00
475 lines
14 KiB
TOML
475 lines
14 KiB
TOML
[workspace]
|
|
resolver = "2"
|
|
members = [
|
|
"packages/dioxus",
|
|
"packages/dioxus-lib",
|
|
"packages/core",
|
|
"packages/core-types",
|
|
"packages/cli",
|
|
"packages/cli-opt",
|
|
"packages/core-types",
|
|
"packages/core-macro",
|
|
"packages/config-macro",
|
|
"packages/router-macro",
|
|
"packages/extension",
|
|
"packages/router",
|
|
"packages/html",
|
|
"packages/html-internal-macro",
|
|
"packages/hooks",
|
|
"packages/web",
|
|
"packages/ssr",
|
|
"packages/desktop",
|
|
"packages/mobile",
|
|
"packages/interpreter",
|
|
"packages/liveview",
|
|
"packages/autofmt",
|
|
"packages/check",
|
|
"packages/cli-config",
|
|
"packages/cli",
|
|
"packages/config-macro",
|
|
"packages/core-macro",
|
|
"packages/core-types",
|
|
"packages/core",
|
|
"packages/desktop",
|
|
"packages/devtools-types",
|
|
"packages/devtools",
|
|
"packages/dioxus-lib",
|
|
"packages/dioxus",
|
|
"packages/document",
|
|
"packages/extension",
|
|
"packages/fullstack",
|
|
"packages/generational-box",
|
|
"packages/history",
|
|
"packages/hooks",
|
|
"packages/html-internal-macro",
|
|
"packages/html",
|
|
"packages/interpreter",
|
|
"packages/lazy-js-bundle",
|
|
"packages/liveview",
|
|
"packages/mobile",
|
|
"packages/router-macro",
|
|
"packages/router",
|
|
"packages/rsx-hotreload",
|
|
"packages/rsx-rosetta",
|
|
"packages/rsx",
|
|
"packages/server-macro",
|
|
"packages/signals",
|
|
"packages/ssr",
|
|
"packages/lazy-js-bundle",
|
|
"packages/cli-config",
|
|
"packages/devtools",
|
|
"packages/devtools-types",
|
|
"packages/isrg",
|
|
"packages/rsx-hotreload",
|
|
"packages/const-serialize",
|
|
"packages/const-serialize-macro",
|
|
"packages/dx-wire-format",
|
|
|
|
# Playwright tests
|
|
"packages/playwright-tests/liveview",
|
|
"packages/playwright-tests/web",
|
|
"packages/playwright-tests/fullstack",
|
|
"packages/playwright-tests/suspense-carousel",
|
|
"packages/playwright-tests/nested-suspense",
|
|
|
|
# manganis
|
|
"packages/manganis/manganis",
|
|
"packages/manganis/manganis-core",
|
|
"packages/manganis/manganis-macro",
|
|
|
|
# Full project examples
|
|
"example-projects/fullstack-hackernews",
|
|
"example-projects/ecommerce-site",
|
|
"example-projects/wifi-scanner",
|
|
"example-projects/file-explorer",
|
|
|
|
# Simple examples that require a crate
|
|
"examples/tailwind",
|
|
"examples/pwa",
|
|
"examples/fullstack-hello-world",
|
|
"examples/fullstack-router",
|
|
"examples/fullstack-streaming",
|
|
"examples/fullstack-desktop",
|
|
"examples/fullstack-auth",
|
|
|
|
# Playwright tests
|
|
"packages/playwright-tests/liveview",
|
|
"packages/playwright-tests/web",
|
|
"packages/playwright-tests/fullstack",
|
|
"packages/playwright-tests/suspense-carousel",
|
|
"packages/playwright-tests/nested-suspense",
|
|
]
|
|
|
|
[workspace.package]
|
|
version = "0.6.0-rc.0"
|
|
|
|
# dependencies that are shared across packages
|
|
[workspace.dependencies]
|
|
dioxus = { path = "packages/dioxus", version = "0.6.0-rc.0" }
|
|
dioxus-lib = { path = "packages/dioxus-lib", version = "0.6.0-rc.0" }
|
|
dioxus-core = { path = "packages/core", version = "0.6.0-rc.0" }
|
|
dioxus-core-types = { path = "packages/core-types", version = "0.6.0-rc.0" }
|
|
dioxus-core-macro = { path = "packages/core-macro", version = "0.6.0-rc.0" }
|
|
dioxus-config-macro = { path = "packages/config-macro", version = "0.6.0-rc.0" }
|
|
dioxus-router = { path = "packages/router", version = "0.6.0-rc.0" }
|
|
dioxus-router-macro = { path = "packages/router-macro", version = "0.6.0-rc.0" }
|
|
dioxus-document = { path = "packages/document", version = "0.6.0-rc.0", default-features = false }
|
|
dioxus-history = { path = "packages/history", version = "0.6.0-rc.0", default-features = false }
|
|
dioxus-html = { path = "packages/html", version = "0.6.0-rc.0", default-features = false }
|
|
dioxus-html-internal-macro = { path = "packages/html-internal-macro", version = "0.6.0-rc.0" }
|
|
dioxus-hooks = { path = "packages/hooks", version = "0.6.0-rc.0" }
|
|
dioxus-web = { path = "packages/web", version = "0.6.0-rc.0", default-features = false }
|
|
dioxus-isrg = { path = "packages/isrg", version = "0.6.0-rc.0" }
|
|
dioxus-ssr = { path = "packages/ssr", version = "0.6.0-rc.0", default-features = false }
|
|
dioxus-desktop = { path = "packages/desktop", version = "0.6.0-rc.0", default-features = false }
|
|
dioxus-mobile = { path = "packages/mobile", version = "0.6.0-rc.0" }
|
|
dioxus-interpreter-js = { path = "packages/interpreter", version = "0.6.0-rc.0" }
|
|
dioxus-liveview = { path = "packages/liveview", version = "0.6.0-rc.0" }
|
|
dioxus-autofmt = { path = "packages/autofmt", version = "0.6.0-rc.0" }
|
|
dioxus-check = { path = "packages/check", version = "0.6.0-rc.0" }
|
|
dioxus-rsx = { path = "packages/rsx", version = "0.6.0-rc.0" }
|
|
dioxus-rsx-hotreload = { path = "packages/rsx-hotreload", version = "0.6.0-rc.0" }
|
|
dioxus-rsx-rosetta = { path = "packages/rsx-rosetta", version = "0.6.0-rc.0" }
|
|
dioxus-signals = { path = "packages/signals", version = "0.6.0-rc.0" }
|
|
dioxus-cli-config = { path = "packages/cli-config", version = "0.6.0-rc.0" }
|
|
dioxus-cli-opt = { path = "packages/cli-opt", version = "0.6.0-rc.0" }
|
|
dioxus-devtools = { path = "packages/devtools", version = "0.6.0-rc.0" }
|
|
dioxus-devtools-types = { path = "packages/devtools-types", version = "0.6.0-rc.0" }
|
|
dioxus-fullstack = { path = "packages/fullstack", version = "0.6.0-rc.0" }
|
|
dioxus_server_macro = { path = "packages/server-macro", version = "0.6.0-rc.0", default-features = false }
|
|
dioxus-dx-wire-format = { path = "packages/dx-wire-format", version = "0.6.0-rc.0" }
|
|
|
|
const-serialize = { path = "packages/const-serialize", version = "0.6.0-rc.0" }
|
|
const-serialize-macro = { path = "packages/const-serialize-macro", version = "0.6.0-rc.0" }
|
|
generational-box = { path = "packages/generational-box", version = "0.6.0-rc.0" }
|
|
lazy-js-bundle = { path = "packages/lazy-js-bundle", version = "0.6.0-rc.0" }
|
|
|
|
manganis = { path = "packages/manganis/manganis", version = "0.6.0-rc.0" }
|
|
manganis-core = { path = "packages/manganis/manganis-core", version = "0.6.0-rc.0" }
|
|
manganis-macro = { path = "packages/manganis/manganis-macro", version = "0.6.0-rc.0" }
|
|
|
|
warnings = { version = "0.2.1" }
|
|
|
|
|
|
# a fork of pretty please for tests - let's get off of this if we can!
|
|
prettier-please = { version = "0.3.0", features = ["verbatim"]}
|
|
clap = { version = "4.5.7" }
|
|
askama_escape = "0.10.3"
|
|
tracing = "0.1.37"
|
|
tracing-futures = "0.2.5"
|
|
toml = "0.8"
|
|
tokio = "1.40"
|
|
slab = "0.4.2"
|
|
slotmap = { version = "1.0.7", features = ["serde"] }
|
|
futures-channel = "0.3.21"
|
|
futures-util = { version = "0.3", default-features = false }
|
|
rustc-hash = "1.1.0"
|
|
wasm-bindgen = "0.2.95"
|
|
wasm-bindgen-cli-support = "0.2.95"
|
|
wasm-bindgen-shared = "0.2.95"
|
|
wasm-bindgen-futures = "0.4.42"
|
|
html_parser = "0.7.0"
|
|
thiserror = "1.0.40"
|
|
prettyplease = { version = "0.2.20", features = ["verbatim"] }
|
|
const_format = "0.2.32"
|
|
cargo_toml = { version = "0.20.3" }
|
|
tauri-utils = { version = "=2.0.2" }
|
|
tauri-bundler = { version = "=2.0.4" }
|
|
lru = "0.12.2"
|
|
async-trait = "0.1.77"
|
|
axum = "0.7.0"
|
|
axum-server = { version = "0.7.1", default-features = false }
|
|
tower = "0.4.13"
|
|
http = "1.0.0"
|
|
notify = { version = "6.1.1" }
|
|
tower-http = "0.5.2"
|
|
hyper = "1.0.0"
|
|
hyper-rustls = { version= "0.27.2", default-features = false , features=["native-tokio","http1","http2","tls12","logging","ring"]}
|
|
rustls = { version="0.23.12", default-features=false, features =["logging","std","tls12","ring"] }
|
|
serde_json = "1.0.61"
|
|
serde = "1.0.61"
|
|
syn = "2.0"
|
|
quote = "1.0"
|
|
proc-macro2 = "1.0"
|
|
axum_session = "0.12.1"
|
|
axum_session_auth = "0.12.1"
|
|
axum-extra = "0.9.2"
|
|
reqwest = "0.12.5"
|
|
owo-colors = "4.0.0"
|
|
ciborium = "0.2.1"
|
|
base64 = "0.22.1"
|
|
once_cell = "1.17.1"
|
|
uuid = "1.9.1"
|
|
convert_case = "0.6.0"
|
|
tokio-tungstenite = { version = "0.23.1" }
|
|
gloo-timers = "0.3.0"
|
|
fluent-uri = { version = "0.2.0", features = ["serde"] }
|
|
internment = { version = "0.7.0" }
|
|
proc-macro2-diagnostics = { version = "0.10", default-features = false }
|
|
env_logger = "0.11.0"
|
|
tracing-subscriber = "0.3.17"
|
|
chrono = { version = "0.4.34" }
|
|
gloo = { version = "0.8.0" }
|
|
gloo-utils = { version = "0.1.6" }
|
|
rustversion = "1.0.17"
|
|
rand = "0.8.5"
|
|
longest-increasing-subsequence = "0.1.0"
|
|
trybuild = "1.0"
|
|
js-sys = "0.3.56"
|
|
web-sys = { version = "0.3.56", default-features = false }
|
|
dirs = "5.0.1"
|
|
cargo-config2 = "0.1.26"
|
|
criterion = { version = "0.5" }
|
|
walrus = "0.23.1"
|
|
cargo_metadata = "0.18.1"
|
|
|
|
# desktop
|
|
wry = { version = "0.45.0", default-features = false }
|
|
tao = { version = "=0.30.0", features = ["rwh_05"] }
|
|
webbrowser = "1.0.1"
|
|
infer = "0.16.0"
|
|
dunce = "1.0.2"
|
|
urlencoding = "2.1.2"
|
|
global-hotkey = "0.6.0"
|
|
rfd = { version = "0.14", default-features = false }
|
|
muda = "0.14.0"
|
|
cocoa = "0.26"
|
|
core-foundation = "0.10.0"
|
|
objc = { version = "0.2.7", features = ["exception"] }
|
|
objc_id = "0.1.1"
|
|
tray-icon = "0.19"
|
|
|
|
# disable debug symbols in dev builds - shouldn't matter for downstream crates but makes our binaries (examples, cli, etc) build faster
|
|
[profile.dev]
|
|
debug = 0
|
|
|
|
# our release profile should be fast to compile and fast to run
|
|
# when we ship our CI builds, we turn on LTO which improves perf leftover by turning on incremental
|
|
[profile.release]
|
|
incremental = true
|
|
debug = 0
|
|
|
|
[profile.release-max-opt]
|
|
inherits = "release"
|
|
lto = true
|
|
codegen-units = 1
|
|
|
|
# Disable debug assertions to check the released path of core and other packages, but build without optimizations to keep build times quick
|
|
[profile.release-unoptimized]
|
|
inherits = "dev"
|
|
debug-assertions = false
|
|
incremental = true
|
|
|
|
# This is a "virtual package"
|
|
# It is not meant to be published, but is used so "cargo run --example XYZ" works properly
|
|
[package]
|
|
name = "dioxus-examples"
|
|
authors = ["Jonathan Kelley"]
|
|
edition = "2021"
|
|
description = "Top level crate for the Dioxus repository"
|
|
license = "MIT OR Apache-2.0"
|
|
repository = "https://github.com/DioxusLabs/dioxus/"
|
|
homepage = "https://dioxuslabs.com"
|
|
documentation = "https://dioxuslabs.com"
|
|
keywords = ["dom", "ui", "gui", "react", "wasm"]
|
|
rust-version = "1.79.0"
|
|
publish = false
|
|
version = "0.6.0-rc.0"
|
|
|
|
[dependencies]
|
|
reqwest = { workspace = true, features = ["json"], optional = true }
|
|
ciborium = { workspace = true, optional = true }
|
|
base64 = { workspace = true, optional = true }
|
|
http-range = { version = "0.1.5", optional = true }
|
|
wgpu = { version = "0.19", optional = true }
|
|
ouroboros = { version = "*", optional = true }
|
|
|
|
[dev-dependencies]
|
|
dioxus = { workspace = true, features = ["router"] }
|
|
dioxus-ssr = { workspace = true }
|
|
futures-util = "0.3.21"
|
|
separator = "0.4.1"
|
|
serde = { version = "1.0.136", features = ["derive"] }
|
|
serde_json = "1.0.79"
|
|
rand = { version = "0.8.4", features = ["small_rng"] }
|
|
form_urlencoded = "1.2.0"
|
|
async-std = "1.12.0"
|
|
web-time = "1.1.0"
|
|
|
|
[target.'cfg(target_arch = "wasm32")'.dev-dependencies]
|
|
getrandom = { version = "0.2.12", features = ["js"] }
|
|
tokio = { version = "1.40", default-features = false, features = [
|
|
"sync",
|
|
"macros",
|
|
"io-util",
|
|
"rt",
|
|
"time"
|
|
] }
|
|
|
|
[target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies]
|
|
tokio = { version = "1.40", features = ["full"] }
|
|
|
|
# force vendored openssl on android
|
|
[target.'cfg(target_os = "android")'.dev-dependencies]
|
|
openssl = { version = "0.10", features = ["vendored"] }
|
|
|
|
# To make most examples faster to compile, we split out assets and http-related stuff
|
|
# This trims off like 270 dependencies, leading to a significant speedup in compilation time
|
|
[features]
|
|
default = ["desktop"]
|
|
desktop = ["dioxus/desktop"]
|
|
liveview = ["dioxus/liveview"]
|
|
fullstack = ["dioxus/fullstack"]
|
|
server = ["dioxus/server"]
|
|
mobile = ["dioxus/mobile"]
|
|
web = ["dioxus/web"]
|
|
http = ["dep:reqwest", "dep:http-range"]
|
|
gpu = ["dep:ouroboros", "dep:wgpu"]
|
|
|
|
[[example]]
|
|
name = "login_form"
|
|
required-features = ["http"]
|
|
doc-scrape-examples = true
|
|
|
|
[[example]]
|
|
name = "dog_app"
|
|
required-features = ["http"]
|
|
doc-scrape-examples = true
|
|
|
|
[[example]]
|
|
name = "video_stream"
|
|
required-features = ["http", "desktop"]
|
|
doc-scrape-examples = true
|
|
|
|
[[example]]
|
|
name = "suspense"
|
|
required-features = ["http", "desktop"]
|
|
doc-scrape-examples = true
|
|
|
|
[[example]]
|
|
name = "weather_app"
|
|
required-features = ["http"]
|
|
doc-scrape-examples = true
|
|
|
|
[[example]]
|
|
name = "image_generator_openai"
|
|
required-features = ["http"]
|
|
doc-scrape-examples = true
|
|
|
|
[[example]]
|
|
name = "hash_fragment_state"
|
|
required-features = ["ciborium", "base64"]
|
|
doc-scrape-examples = true
|
|
|
|
[[example]]
|
|
name = "backgrounded_futures"
|
|
required-features = ["desktop"]
|
|
doc-scrape-examples = true
|
|
|
|
[[example]]
|
|
name = "calculator_mutable"
|
|
required-features = ["desktop"]
|
|
doc-scrape-examples = true
|
|
|
|
[[example]]
|
|
name = "calculator"
|
|
required-features = ["desktop"]
|
|
doc-scrape-examples = true
|
|
|
|
[[example]]
|
|
name = "clock"
|
|
doc-scrape-examples = true
|
|
|
|
[[example]]
|
|
name = "crm"
|
|
required-features = ["desktop"]
|
|
doc-scrape-examples = true
|
|
|
|
[[example]]
|
|
name = "custom_html"
|
|
required-features = ["desktop"]
|
|
doc-scrape-examples = true
|
|
|
|
[[example]]
|
|
name = "custom_menu"
|
|
required-features = ["desktop"]
|
|
doc-scrape-examples = true
|
|
|
|
[[example]]
|
|
name = "dynamic_asset"
|
|
required-features = ["desktop"]
|
|
doc-scrape-examples = true
|
|
|
|
[[example]]
|
|
name = "errors"
|
|
required-features = ["desktop"]
|
|
doc-scrape-examples = true
|
|
|
|
[[example]]
|
|
name = "future"
|
|
doc-scrape-examples = true
|
|
|
|
[[example]]
|
|
name = "hydration"
|
|
required-features = ["desktop"]
|
|
doc-scrape-examples = true
|
|
|
|
[[example]]
|
|
name = "multiwindow"
|
|
required-features = ["desktop"]
|
|
doc-scrape-examples = true
|
|
|
|
[[example]]
|
|
name = "overlay"
|
|
required-features = ["desktop"]
|
|
doc-scrape-examples = true
|
|
|
|
[[example]]
|
|
name = "popup"
|
|
required-features = ["desktop"]
|
|
doc-scrape-examples = true
|
|
|
|
[[example]]
|
|
name = "read_size"
|
|
required-features = ["desktop"]
|
|
doc-scrape-examples = true
|
|
|
|
[[example]]
|
|
name = "shortcut"
|
|
required-features = ["desktop"]
|
|
doc-scrape-examples = true
|
|
|
|
[[example]]
|
|
name = "streams"
|
|
doc-scrape-examples = true
|
|
|
|
[[example]]
|
|
name = "visible"
|
|
doc-scrape-examples = true
|
|
|
|
[[example]]
|
|
name = "window_event"
|
|
required-features = ["desktop"]
|
|
doc-scrape-examples = true
|
|
|
|
[[example]]
|
|
name = "window_focus"
|
|
required-features = ["desktop"]
|
|
doc-scrape-examples = true
|
|
|
|
[[example]]
|
|
name = "window_zoom"
|
|
required-features = ["desktop"]
|
|
doc-scrape-examples = true
|
|
|
|
[[example]]
|
|
name = "wgpu"
|
|
required-features = ["desktop", "gpu"]
|
|
|
|
[[example]]
|
|
name = "control_focus"
|
|
doc-scrape-examples = true
|
|
|
|
[[example]]
|
|
name = "eval"
|
|
doc-scrape-examples = true
|