[package]
name = "fedimint-api-client"
version = { workspace = true }
authors = ["The Fedimint Developers"]
edition = "2021"
description = "fedimint-api-client provides common code used by client."
license = "MIT"
readme = "../README.md"
repository = "https://github.com/fedimint/fedimint"
[package.metadata.cargo-udeps.ignore]
development = ["tokio-test"]
[features]
default = ["tor"]
tor = [
"dep:strum",
"dep:curve25519-dalek",
"arti-client/tokio",
"arti-client/rustls",
"arti-client/onion-service-client",
]
[lib]
name = "fedimint_api_client"
path = "src/lib.rs"
[dependencies]
anyhow = { workspace = true }
async-trait = { workspace = true }
base64 = { workspace = true }
bitcoin = { workspace = true }
fedimint-core = { workspace = true }
fedimint-logging = { workspace = true }
futures = { workspace = true }
itertools = { workspace = true }
jsonrpsee-core = { version = "0.24.7" }
lru = "0.12.5"
serde = { workspace = true }
serde_json = { workspace = true }
thiserror = { workspace = true }
tokio = { workspace = true }
tracing = { workspace = true }
[target.'cfg(not(target_family = "wasm"))'.dependencies]
jsonrpsee-ws-client = { version = "0.24.7", features = [
"tls",
], default-features = false }
tokio-rustls = { version = "0.26.0", default-features = false, features = [
"logging",
"tls12",
"ring",
] }
webpki-roots = { version = "0.26.6" }
rustls-pki-types = { version = "1.10.0" }
arti-client = { version = "0.20.0", default-features = false, package = "fedimint-arti-client", optional = true }
strum = { workspace = true, optional = true }
curve25519-dalek = { version = ">=4.1.3", optional = true }
[target.'cfg(target_family = "wasm")'.dependencies]
jsonrpsee-wasm-client = "0.24.7"