[package]
name = "burn_p2p_browser"
description = "Browser runtime glue, worker bridge, and portal bindings for burn_p2p."
version.workspace = true
edition.workspace = true
license.workspace = true
repository.workspace = true
rust-version.workspace = true
keywords.workspace = true
categories.workspace = true
readme = "../../README.md"

[dependencies]
burn_p2p.workspace = true
burn_p2p_core.workspace = true
burn_p2p_metrics.workspace = true
burn_p2p_publish.workspace = true
burn_p2p_swarm.workspace = true
burn_p2p_views.workspace = true
base64 = "0.22"
chrono.workspace = true
reqwest = { version = "0.12", default-features = false, features = ["json"] }
semver.workspace = true
serde.workspace = true
serde_json.workspace = true
thiserror.workspace = true

[target.'cfg(target_arch = "wasm32")'.dependencies]
getrandom = { version = "0.2", features = ["js"] }
gloo-timers = { version = "0.3", features = ["futures"] }
js-sys = "0.3"
serde-wasm-bindgen = "0.6"
wasm-bindgen = "0.2"
wasm-bindgen-futures = "0.4"
web-sys = { version = "0.3", features = ["DomException", "Event", "EventTarget", "Headers", "IdbDatabase", "IdbFactory", "IdbObjectStore", "IdbOpenDbRequest", "IdbRequest", "IdbTransaction", "IdbTransactionMode", "IdbVersionChangeEvent", "ReadableStream", "ReadableStreamDefaultReader", "Request", "RequestInit", "Response", "Storage", "Window"] }

[dev-dependencies]
tokio = { version = "1", features = ["net", "rt", "time"] }

[lints]
workspace = true
