[package]
name = "ethers-wasm"
version = "0.1.0"
edition = "2018"
rust-version = "1.62"
authors = ["Matthias Seitz <matthias.seitz@outlook.de>"]
license = "MIT OR Apache-2.0"
readme = "README.md"
documentation = "https://docs.rs/ethers"
repository = "https://github.com/gakonst/ethers-rs"
homepage = "https://docs.rs/ethers"
description = "How to use ethers in the browser with WASM."

[lib]
crate-type = ["cdylib", "rlib"]

[features]
default = ["console_error_panic_hook"]

[dependencies]
ethers = { path = "../..", version = "1.0.0", features = ["abigen", "legacy", "ws"] }

wasm-bindgen-futures = "0.4.33"
wasm-bindgen = { version = "0.2.83", features = ["serde-serialize"] }

serde = { version = "1.0.144", features = ["derive"] }
serde_json = "1.0.85"
serde-wasm-bindgen = "0.4.5"

# The `console_error_panic_hook` crate provides better debugging of panics by
# logging them with `console.error`. This is great for development, but requires
# all the `std::fmt` and `std::panicking` infrastructure, so isn't great for
# code size when deploying.
console_error_panic_hook = { version = "0.1.6", optional = true }

# `wee_alloc` is a tiny allocator for wasm that is only ~1K in code size
# compared to the default allocator's ~10K. It is slower than the default
# allocator, however.
#
# Unfortunately, `wee_alloc` requires nightly Rust when targeting wasm for now.
wee_alloc = { version = "0.4.5", optional = true }

web-sys = { version = "0.3.60", features = ["console"] }

hex = "0.4.3"

[dev-dependencies]
wasm-bindgen-test = "0.3.33"
